掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 3521|回复: 10

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

[复制链接]

该用户从未签到

发表于 2017-4-27 21:45:52 | 显示全部楼层 |阅读模式
本帖最后由 skywind3000 于 2017-4-27 22:02 编辑 & o3 [& x: b: N: h: f
& q- i2 R$ X  O# N
起因是这样的,还是再做我的简明增强,收词量到达 306万了,因为连论坛里神秘的 MdxBuilder 特别版都已经开始崩溃了,我用我自己改
& ]- D! ^5 i$ c* ?- `- ~6 w5 O3 j( t过bug的 writemdict 生成的 mdx:, U$ m2 T/ I8 r( p+ [
* T% z1 ~" m; N0 y% J: H3 ~; G
https://www.pdawiki.com/forum/thread-20577-1-1.html( q) J2 a( }# E7 n
& M1 C" @% |" s' ?$ x+ P
所有软件都兼容,从欧陆到 mdict 2.0 再到 GoldenDict/BlueDict /edwin 都很正常使用该 .mdx(包括 mdict的手机版)。
6 ~) k0 b. V: {' t( V1 _) A* g2 v5 ~- O: x5 h1 K
但是,mdict 1.3的网友反馈丢词了,有些词查不出来,比如:duma, general meeting 和 power strip。
8 H, g" i0 e9 n' Y
0 j' I7 [' n& C0 \' v5 J2 ~8 G我专门验证了一下 mdict1.3,明明这几个词都有,索引光标就是跳不过去,卡在前面的单词上。
5 @' _6 y4 [  z1 e, `, l4 l除此以外,甚至还有如下几个问题:8 v5 \/ ?; ?% U2 M' S3 b) t1 L- m

7 `/ [: M- L! ~1. 敲入 a,索引列表不会跳到第一个字母是a的单词,b也不会。! Z5 l, ~* n; m$ U; B7 L: g: L! q$ a
2. 敲入 c,索引列表可以跳到 c开头的单词,但是是跳到 "committee on excursions  ..." 这个单词,不是 c开头的第一个单词。
* X' n2 F7 F! T. i# g& v1 Q3. 敲入 duma,索引列表停在:digital pelvimetry 这个单词上,不会继续往下,明明下面就有 duma。
) Q3 a- R$ J* h6 o
7 t6 `7 _$ }1 ~# M7 t+ o这几个问题和上面查不出来的单词,在非 mdict 1.3的所有软件里都能查得出来,但是 mdict1.3就是查不出来。writemdict 使用的 mdx头为:* O! E7 k% H! Z  K

) J, o) Z8 a9 u; l) x. ~
  1. <Dictionary
    - H' [. i" p1 G2 `9 V& @
  2. GeneratedByEngineVersion="2.0}"  7 _/ {( X. \1 B, X' T. W! Q4 {
  3. RequiredEngineVersion="2.0" * s3 N+ x9 z3 u# ]
  4. Encrypted="0"
    0 z5 d. n" L3 G9 q  e
  5. Encoding="UTF-8" $ F2 c: t& E- J. p/ U/ h. E/ D
  6. Format="Html"
    ) X/ R9 \8 _' K
  7. CreationDate="2017-4-27"
    7 h! a4 Y5 d+ U6 U( a6 k5 n: D
  8. Compact="No"
    & \" o9 k. e: Q1 i# S+ n' O: `% S" X- D1 z
  9. Compat="No" % @( D9 t8 I! F0 ]
  10. KeyCaseSensitive="No" ) I. X: x9 }9 L7 b5 t. O; r
  11. StripKey="Yes" # Z; l4 N, n$ a" Q9 n# W) s
  12. Description="{description}"
    ; c0 Y: ?) o6 @& |! K) y! o
  13. Title="{title}" : j1 Z+ @+ O1 c2 v$ N
  14. DataSourceFormat="106"
    % P2 J# N% v8 c1 j. \1 r8 ?3 b
  15. StyleSheet="" />
复制代码

0 c! A5 u; r* R. o9 V6 ~
3 J3 b% v# ~) K8 c/ W排序也是 Strip 过后排序的,排序结果和 MdxBuilder 一模一样,可惜 mdict1.3里面就是出不来,其他包括 mdict手机版在内的所有软件
3 e2 N( w5 \) }  O' _! Z, j都没问题。! A2 q/ A2 f- s8 X4 W

6 |/ C! e0 K5 ?: `1 D$ K: _( f# O) ]# c4 s下载了论坛里面的 MdxBuilder 3.0 特别版,但是现在已经用不了了,特别版都闪退,而且不是必现,同样数据,有时候能生成mdx,有时
2 M/ X* ~5 W! c% k! v( z& z7 I不能生成 mdx,闪退了。+ k; b! N3 h2 `
, a- g5 R* w' i; L5 Z
被迫使用 writemdict,一切都好,就是 mdict1.3,有熟悉 mdx的人知道上面那三个1.3的索引跳转问题,可能出在什么地方么?为何- s! [% a- o' t8 r7 L
mdict2 和 mdict手机版就没事?1.3 特殊在哪里?是不是对大文件兼容不太好?) Q7 v. F. Q" j- a1 L# U7 ^1 f. c
& m$ i$ ?8 {& p1 U
不想切分文件的话,有什么办法生成我要的 .mdx?
' M, V! a9 B5 z% f1 ^
  • 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:018 ]! v7 e3 Y( `2 G. f
    这种事儿不必太纠结,应该是mdict1.3软件自身的bug,这货又没开源,真有这方面需求的直接建议客户升级到2.0 ...
    1 V7 a, l; ?, a
    难道就这样放弃掉mdict1.3了么?

    该用户从未签到

     楼主| 发表于 2017-4-27 23:35:03 | 显示全部楼层
    greatszh 发表于 2017-4-27 22:01
    # {1 D) O! r: Z3 P) o这种事儿不必太纠结,应该是mdict1.3软件自身的bug,这货又没开源,真有这方面需求的直接建议客户升级到2.0 ...
    7 G$ Q& u6 D1 @' ?) P
    难道就这样放弃掉mdict1.3了么?

    该用户从未签到

    发表于 2017-4-27 23:42:46 | 显示全部楼层
    本帖最后由 大膜法师 于 2017-4-29 00:21 编辑
    9 A7 c9 E9 y) D1 G& [2 t5 Q8 n8 T/ M8 V
    这个问题只能直接向作者反馈,不过由于mdx 3.0已经发布,对于旧版本mdx是否会修复还是个问题
    0 R% J0 ?, q0 D! w( U/ n) `至于用户方面,直接说升级软件就行了,旧版软件产生的问题不是词库制作者应该关心的。
    : `4 U  z' k- l9 B+ }* `$ M, ~. G$ q& n0 U7 v* Z& I  G3 t4 W" ?3 k- a/ |
    另:py生成出来的mdx数据还是有点差别,标准mdx每个词条的正文部分结尾是0x0D 0x0A 0x00,而py就只有0x00,不过GetDict还是能识别出来(就是速度太慢了),这点要佩服一下yhssdl
    2 u4 W  Q9 ^: ]. q" I  @/ ^4 `. z(至于怎么发现的,其实我自己写的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-20 00:58 , Processed in 0.048484 second(s), 11 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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