掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 3582|回复: 10

[使用求助] mdict 1.3 对大型 .mdx的兼容问题,为何同所有其他软件都不一样?

[复制链接]

该用户从未签到

发表于 2017-4-27 21:45:52 | 显示全部楼层 |阅读模式
本帖最后由 skywind3000 于 2017-4-27 22:02 编辑 - H2 X  h5 E9 l$ Y3 Y7 U" E

/ G- {5 p% t" ]: n! H起因是这样的,还是再做我的简明增强,收词量到达 306万了,因为连论坛里神秘的 MdxBuilder 特别版都已经开始崩溃了,我用我自己改0 I0 g# U9 d9 L' {
过bug的 writemdict 生成的 mdx:' f7 O5 r* K+ n
- T% o; U3 X$ _% \
https://www.pdawiki.com/forum/thread-20577-1-1.html
$ l; w( p5 a. V1 G- V" @( J4 t# t$ H. O* m# H. e( z( N/ r, \& o
所有软件都兼容,从欧陆到 mdict 2.0 再到 GoldenDict/BlueDict /edwin 都很正常使用该 .mdx(包括 mdict的手机版)。
) H$ a- j/ [- Q# u) ]
0 @; }9 e; E( m1 Q# O3 \但是,mdict 1.3的网友反馈丢词了,有些词查不出来,比如:duma, general meeting 和 power strip。1 h" ^. a7 p3 |0 @5 S  ]

8 V. O( Y  N' \5 t2 b/ _+ g. M我专门验证了一下 mdict1.3,明明这几个词都有,索引光标就是跳不过去,卡在前面的单词上。
- O# T( o& t+ r3 d5 ^( c- n除此以外,甚至还有如下几个问题:
3 B: @2 L' T7 }  C8 G) z
) A( }3 ^5 i( V' Z' a0 J1. 敲入 a,索引列表不会跳到第一个字母是a的单词,b也不会。4 D  g  k/ ^" j1 @
2. 敲入 c,索引列表可以跳到 c开头的单词,但是是跳到 "committee on excursions  ..." 这个单词,不是 c开头的第一个单词。
8 ^) D# |' e% Z& }; w6 ~3. 敲入 duma,索引列表停在:digital pelvimetry 这个单词上,不会继续往下,明明下面就有 duma。
+ C5 j: a0 g5 R* J" t4 i7 h4 L, H& u8 m$ B% A- M2 i7 V
这几个问题和上面查不出来的单词,在非 mdict 1.3的所有软件里都能查得出来,但是 mdict1.3就是查不出来。writemdict 使用的 mdx头为:
; ^6 ~' J' D  m( s( O  |" {" {6 B( ?0 O1 n
  1. <Dictionary 4 a" ^& x7 B6 J" i5 b) j
  2. GeneratedByEngineVersion="2.0}"  
    ( S- c* J# a. v( R- ^$ G. G" V
  3. RequiredEngineVersion="2.0"
    # T/ ~! H; X0 h& p) N3 h
  4. Encrypted="0"
    ! p+ C, [# p4 b' U, d2 Q
  5. Encoding="UTF-8" 4 F$ [! ]1 e( ^9 m
  6. Format="Html" % N% Y. |: N, L! I7 o, D! F/ i
  7. CreationDate="2017-4-27"
    ; w' `2 U" Y- g1 a! B
  8. Compact="No"
    * D' E4 V% _$ ^9 s: T
  9. Compat="No" ; C7 a* Y/ V9 J) @1 I1 [) V
  10. KeyCaseSensitive="No" + c; }8 K- `3 b* m
  11. StripKey="Yes" 5 ^8 Z5 O: X$ Y+ A2 U  z% q
  12. Description="{description}" + a' ^3 ^! S0 |
  13. Title="{title}" 0 o$ e0 l$ {9 h/ ^' C) r3 G  ?8 |0 z' h
  14. DataSourceFormat="106"
    . O, S9 @6 {+ @& r
  15. StyleSheet="" />
复制代码

+ l. b( [; v0 W1 R9 {& X- [% C9 R
排序也是 Strip 过后排序的,排序结果和 MdxBuilder 一模一样,可惜 mdict1.3里面就是出不来,其他包括 mdict手机版在内的所有软件6 w& N6 i' y. }! W
都没问题。
$ \5 }. g: w! C! ]' U+ o- a! X& P3 G
下载了论坛里面的 MdxBuilder 3.0 特别版,但是现在已经用不了了,特别版都闪退,而且不是必现,同样数据,有时候能生成mdx,有时! T' S/ x2 d( \  V2 N
不能生成 mdx,闪退了。
) `5 e; s. R! {
+ z, `, \1 J. `被迫使用 writemdict,一切都好,就是 mdict1.3,有熟悉 mdx的人知道上面那三个1.3的索引跳转问题,可能出在什么地方么?为何9 C1 w0 Y3 S! H4 K9 f
mdict2 和 mdict手机版就没事?1.3 特殊在哪里?是不是对大文件兼容不太好?
+ O* l0 i! l. D8 t7 w# C% {! q' T) b
不想切分文件的话,有什么办法生成我要的 .mdx?' S9 K2 f0 X# Y7 g% J9 y
  • TA的每日心情
    奋斗
    2018-11-10 00:38
  • 签到天数: 346 天

    [LV.8]以坛为家I

    发表于 2017-4-27 22:01:43 | 显示全部楼层
    这种事儿不必太纠结,应该是mdict1.3软件自身的bug,这货又没开源,真有这方面需求的直接建议客户升级到2.0就是了。

    该用户从未签到

     楼主| 发表于 2017-4-27 23:34:51 | 显示全部楼层
    greatszh 发表于 2017-4-27 22:01+ _4 h1 I) S3 G/ Z- ~, I
    这种事儿不必太纠结,应该是mdict1.3软件自身的bug,这货又没开源,真有这方面需求的直接建议客户升级到2.0 ...

    * b3 v3 U/ w$ N2 u# K$ a难道就这样放弃掉mdict1.3了么?

    该用户从未签到

     楼主| 发表于 2017-4-27 23:35:03 | 显示全部楼层
    greatszh 发表于 2017-4-27 22:01+ N- G9 q; g7 a. r
    这种事儿不必太纠结,应该是mdict1.3软件自身的bug,这货又没开源,真有这方面需求的直接建议客户升级到2.0 ...
    / f; _: z+ r. y! u$ z+ f
    难道就这样放弃掉mdict1.3了么?

    该用户从未签到

    发表于 2017-4-27 23:42:46 | 显示全部楼层
    本帖最后由 大膜法师 于 2017-4-29 00:21 编辑
    7 |7 n0 L5 y3 l5 f
    $ O+ e' t5 ?! S4 x+ E: ]8 L这个问题只能直接向作者反馈,不过由于mdx 3.0已经发布,对于旧版本mdx是否会修复还是个问题
    3 _# ]- F; ^) C9 J5 B  _至于用户方面,直接说升级软件就行了,旧版软件产生的问题不是词库制作者应该关心的。
    ( b! k5 ^/ u7 n; W. y$ A% ?$ K& M
    ( Y! o7 i/ S) J9 `另:py生成出来的mdx数据还是有点差别,标准mdx每个词条的正文部分结尾是0x0D 0x0A 0x00,而py就只有0x00,不过GetDict还是能识别出来(就是速度太慢了),这点要佩服一下yhssdl$ G' S. b4 C& B0 X
    (至于怎么发现的,其实我自己写的mdx解析器碰到楼主用py生成的英汉mdx时就解不出来,所以自己查看了一下文件,问题解决)

    点评

    我靠,这 0d 0a 00 你是怎么发现的?  发表于 2017-4-28 00:28
  • TA的每日心情
    奋斗
    2018-11-10 00:38
  • 签到天数: 346 天

    [LV.8]以坛为家I

    发表于 2017-4-27 23:44:47 | 显示全部楼层
    搞过开发的人都追求完美,不过也应该分清责任,这个bug不是你写的工具造成的,这货也没开源更没对外提供接口,真有啥反馈也是应该给mdict的作者反馈,况且人家已经版本升级了,据您说人家的2.0也没这个问题应该是作者已经发现并且修正过了。没必要纠缠过去,向前看,否则会很累的,没啥别的意思,望作者别误解,我也是一直在关注作者您的作品,很实用。这里说声辛苦了。有不恰当之处望海涵。
  • TA的每日心情
    奋斗
    2018-11-10 00:38
  • 签到天数: 346 天

    [LV.8]以坛为家I

    发表于 2017-4-27 23:48:08 | 显示全部楼层
    可能说句题外话,我现在的情况跟你的有点类似,n年以前搞过开发,现在学外语想折腾折腾python语料库,结果发现自己的xp老爷机上很多工具包都装不了,总纠缠包依赖之间的版本问题折腾的头都大了,最后一了百了的直接咔嚓,装个集成的安装包,世界一下子清净了。就事儿说事儿的,没啥别的意思,望见谅。

    点评

    嗯,那不管了,先忽略掉1.3吧。  发表于 2017-4-28 00:01
  • TA的每日心情
    奋斗
    2020-11-15 11:37
  • 签到天数: 249 天

    [LV.8]以坛为家I

    发表于 2018-10-2 19:53:54 | 显示全部楼层
    这个问题在《简明英汉必应版》里是不是已经解决了?我在MDict1.3也能顺利查到duma, general meeting 和 power strip。

    该用户从未签到

    发表于 2019-1-22 21:39:03 | 显示全部楼层
    This version is outdated, right?
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-26 22:11 , Processed in 0.042096 second(s), 9 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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