掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 22402|回复: 30

[资料] mdict mdx mdd 格式全公开,及开源代码

[复制链接]
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

    发表于 2013-4-24 14:38:15 | 显示全部楼层 |阅读模式
    本帖最后由 spoony1971 于 2013-4-24 14:56 编辑
    6 c$ X( \4 Y6 C  V/ U" A3 A) K1 b; V8 w% \6 E9 u
    看到楼上提到goldendict支持mdict了,就去看了一下goldendict的源码,最终发现Xiaoqiang Wang对mdx,mdd格式的最终分析及开源python代码:
      h! N( I9 {- m* R' @) V$ G1 qhttps://bitbucket.org/xwang/mdict-analysis
    . ~- j3 ]  X/ ]  k9 ?6 m1 q$ u1 s6 k喜欢C++代码的可查看goldendict源码。(mdictparser.hh/.cc mdx.cc)+ o; t; ~' D; }5 s$ v
    看来一直期待的开源mdx=>stardict转换程序也不远了。
    2 c2 u4 r" y4 _; o9 q* O( W8 m# v5 i3 b* I8 v! j9 Y
    一直以来寻求一款快速小巧可自由组合的字典工具,现在终于如愿以偿了。我用的是sdcv, vim命令行工具,可组合真人发音(sdcv, aplay功能),TTS组合音及全文朗读(mplayer功能),缩放功能(urxvt功能), 多TAB连环查询(vim功能),
    , [7 g3 ^5 l; Y8 N5 j+ A5 L并且基本上可以与所有应用程序相组合。实在是太完美了!$ X' m* g) J- a! T$ C
    & O" q, {9 J$ b7 A* Q) D
    下次抽空上视频。
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

     楼主| 发表于 2013-4-24 14:47:54 | 显示全部楼层
    本帖最后由 spoony1971 于 2013-4-24 14:51 编辑
    $ P. V- o& o% T( \
    / J$ h$ t$ B  l7 U: x& U, E7 T4 p' Q下面是我的简化版命令行shell script
    2 g! @9 {5 P+ e$cat td) v7 j+ J" a$ T4 R1 J
    #!/bin/sh$ r9 X0 t% k, c7 t
    sdcv $1 | w3m -T text/html
    & x# |" x& y7 {2 R4 ]/ \
    , T+ i5 g' n+ F3 q3 C$ e+ M可运行于所有平台,linux, macos, windows 及平板手机平台(需安裝shell)。

    该用户从未签到

    发表于 2013-4-24 16:26:45 | 显示全部楼层
    完全看不懂你说的。。。3 }4 W+ }/ l% M1 N1 t0 @0 f
    我太菜鸟了。。。
    % @' n$ j" C. X不过你很开心就对了
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

     楼主| 发表于 2013-4-24 17:02:13 | 显示全部楼层
    3# chigre 6 q6 x5 {9 A9 M* E
    0 ^( c  b2 Y7 e+ z8 G5 \# J
    上面提到的urxvt是命令行终端,aplay, mplayer是声音播放工具,vim是编辑工具, sdcv是字典软件(相当于mdict)7 j3 ]. d& d5 r) J
    w3m是浏览器。
    8 z" A% n0 a$ p. \把这些程序组合起来使用就变得功能非常强大,几乎没有限制。

    该用户从未签到

    发表于 2013-4-24 19:40:58 | 显示全部楼层
    要是楼主能开发一个MDD提取软件就好了
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

     楼主| 发表于 2013-4-24 20:58:49 | 显示全部楼层
    5# heshunyihugh % P* H( }5 D( B0 l3 H) B

    9 G/ A5 p0 I  l2 d4 e/ G网页 https://bitbucket.org/xwang/mdict-analysis
    7 H1 ~  r5 J4 [! R. Y; G" Y8 X上面提供的工具就可以提取所有的mdx,mdd数据, 命令5 x; k. W# r% l9 `* r* M* C1 o
    $readmdict.py -x oald8.mdx
    8 E5 e$ g' t- `会提取oald8.txt及所有的图像,声音文件。. k2 M) P3 P5 I% D9 r! X

    / y# w- r  z# Y% F/ O( ~3 m* _) p只是上面的方法恐怕会得到很多重复的相同文件,譬如很多汉字发音相同,声音文件应该只有一个,但用上面命令的话每个同音汉字会重复得到一个相同的声音文件。
    ; \% o. O6 K8 b# f8 k6 x; Q- k7 F: v7 R理想的方法是将声音文件转成stardict字典文件(不是资源文件), 譬如sound.dict.dz, 发音就可通过命令 "sdcv word | aplay"完成。如果需要格式转换的话也可通过makedict来做了。

    该用户从未签到

    发表于 2013-4-25 00:22:18 | 显示全部楼层
    linux不懂哈哈
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

     楼主| 发表于 2013-4-25 01:04:22 | 显示全部楼层
    7# chigre
    $ w$ ?0 O: Z, a* Y& L+ ^8 c: z. v
    所有上面提到的工具都是跨平台的,不仅可以在linux,苹果机上用,微软的平台上一样没问题。 平板手机上要先装个shell.

    该用户从未签到

    发表于 2013-4-25 01:07:00 | 显示全部楼层
    8# spoony1971 3 s) U/ `# y. c' e- g6 K6 B

    2 {( N- o1 v: [! D+ r  O% t3 C8 T6 |/ H7 ?2 N
    尽管如此,我还是没有入门,用着Goldendict就很好了。
  • TA的每日心情
    开心
    2020-3-8 09:14
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2013-4-25 15:17:54 | 显示全部楼层
    太高深了,连围观的基础都没有!

    该用户从未签到

    发表于 2013-4-28 10:13:45 | 显示全部楼层
    5# heshunyihugh $ o6 s. I/ E/ O' Q8 I7 J/ \
    8 }: c1 C8 c) |- T! Y2 B
    网页 https://bitbucket.org/xwang/mdict-analysis4 W9 X. w5 Z  x. o$ c
    上面提供的工具就可以提取所有的mdx,mdd数据, 命令" F$ q) L3 i& }: r( F. e7 i, Z' y/ X
    $readmdict.py -x oald8.mdx$ e8 P- `! O. i" l9 z' _/ e
    会提取oald8.txt及所有的图像,声音文件。
    % n( _5 P8 S' \. g2 s
    # Q* F1 G( I6 F只是上面的 ...1 [  S7 T/ f) y( U! M
    spoony1971 发表于 2013-4-24 20:58
    7 l  \& c- U2 A, e' U' t$ w
    chigre刚教了我更傻瓜的办法!

    该用户从未签到

    发表于 2013-5-19 11:58:42 | 显示全部楼层
    windows上怎么用?

    该用户从未签到

    发表于 2013-5-19 12:03:14 | 显示全部楼层
    楼主是写给大神看的。菜鸟也想学点用用,可惜连shell是什么都不知道。脚本怎么运行根本不知道。
    tianxia1 该用户已被删除
    发表于 2013-6-19 09:54:10 | 显示全部楼层
    mark ,,yong deshang

    该用户从未签到

    发表于 2013-8-4 13:27:57 | 显示全部楼层
    {:soso_e179:}向高手学习,但几乎没有基础,还请高手进一步详细解释或者干脆做个解压释放程序,期待中

    该用户从未签到

    发表于 2013-8-4 13:29:03 | 显示全部楼层
    现在缺乏一个MDD加压释放程序。
  • TA的每日心情
    慵懒
    2020-12-11 08:19
  • 签到天数: 104 天

    [LV.6]常住居民II

    发表于 2013-8-4 13:37:19 | 显示全部楼层
    膜拜。
  • TA的每日心情
    衰
    2025-8-19 07:45
  • 签到天数: 1104 天

    [LV.10]以坛为家III

     楼主| 发表于 2013-8-4 20:39:39 | 显示全部楼层
    现在缺乏一个MDD加压释放程序。* F( k0 L: k5 e5 ^2 n
    tjzzw 发表于 2013-8-4 13:29
    # E4 w) E% U  Y  T% W# B" T
    readmdict.py 已经支持mdd转换。而且经测试解压后不会有重复文件出现。

    该用户从未签到

    发表于 2013-8-5 14:46:28 | 显示全部楼层
    18# spoony1971
    . z# |; t/ n* ^. ~* j2 L+ C$ b. Q# e  f0 ]3 H" _& t
    哪里下载readmdict.py,如何使用,shell哪里下载安装,我想学习一下,希望多指教!尽量详细说明一下,不胜感激。

    该用户从未签到

    发表于 2013-8-6 23:50:17 | 显示全部楼层
    readmdict.py 已经支持mdd转换。而且经测试解压后不会有重复文件出现。
    ' k7 _; d+ n* Z( Fspoony1971 发表于 2013-8-4 20:39
    # q9 j+ W7 ]6 \* s) T$ |3 V' [0 X

    - P0 V$ T  d+ b2 k" s9 f5 q2 O老兄,我给您发了站内消息,恭候您的答复。

    该用户从未签到

    发表于 2013-12-26 21:42:09 | 显示全部楼层
    louislaolu 发表于 2013-4-25 15:17 & d+ ?9 w! Z; h8 x2 b/ A
    太高深了,连围观的基础都没有!

    * \5 ]& h& M+ V# }/ w5 G* Z* Q" {确实啊

    该用户从未签到

    发表于 2013-12-26 21:43:06 | 显示全部楼层
    louislaolu 发表于 2013-4-25 15:17 5 }( f. p8 P7 b4 L# @9 y8 T  U
    太高深了,连围观的基础都没有!
    5 V4 G6 I. ^* P7 ^5 k+ O
    确实啊

    该用户从未签到

    发表于 2013-12-29 17:38:03 | 显示全部楼层
    这个很有前途!
    ( s% A5 @" L1 `+ q' @3 R不过我发现目前 Goldendict 还不能正确显示 LDOCE4 等词典的音标+ Z' t. x  g7 O8 U* L7 t. i8 K* }
    另外有没有办法让 Goldendict 使用 Mdict 的语音库?
  • TA的每日心情
    郁闷
    2017-10-30 08:42
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    发表于 2014-2-7 14:06:35 | 显示全部楼层
    膜拜LZ~~实在看不懂~~

    该用户从未签到

    发表于 2014-4-23 19:32:02 | 显示全部楼层
    期待你的视频,有个截图也好
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2026-11-3 06:20 , Processed in 0.022227 second(s), 25 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表