牛津现代英汉双解词典(第9版)双解切换 2022-10-18

右边溢出来的问题,感觉把width改成100%,在手机上效果更好:
cod9ec_trans_blank {
position: absolute;
height: 1.2em;
width: 100%;
left: 0;
cursor: pointer;
-webkit-tap-highlight-color: transparent;
}
cod9ec.css (8.1 KB)

1 个赞

非常感谢楼主制作的COD9双解切换版词典,我已经使用了大概一年多。这本词典排版干净、检索高效,在所有母语词典中,它是我最常用也最喜欢的词典,也是我Kindle里的主力词典。特别喜欢它简洁精准的释义,“像一把手术刀,锋利无比”,特别适合在沉浸式阅读过程中随时查阅。

在使用过程中发现两个小问题:一是在手机上右侧会出现溢出的情况;二是全局翻译按钮过多(如图1),可能仅保留一个更好(我看到CSS中有cod9ec_trans + cod9ec_trans这样的代码,应该是想隐藏多余按钮但未生效?)。
我将JS代码中的:

var cod9ec_h1=document.querySelectorAll('hwd, phr pd h');
for (var i=0; i<cod9ec_h1.length; ++i){
    var trans_button=document.createElement('cod9ec_trans');
    trans_button.onclick=cod9ec_translation_button;
    cod9ec_h1[i].appendChild(trans_button);
}

修改为:

var cod9ec_h1 = document.querySelector('hwd');  // 只选第一个 hwd
if (cod9ec_h1) {
    var trans_button = document.createElement('cod9ec_trans');
    trans_button.onclick = cod9ec_translation_button;
    cod9ec_h1.appendChild(trans_button);
}

现在每个词条只保留一个全局翻译按钮,个人感觉更加清爽。我还对按钮样式做了简单美化,最终效果如图2和图3。现将修改后的CSS和JS文件分享出来,仅改动上述两处,其他部分保持原样。已在iOS、macOS、Windows系统的欧路和GoldenDict上测试通过。



去除手机端的边界溢出+仅保留一个翻译按钮并美化按钮.zip (5.2 KB)

3 个赞

COD9-EC.mdx (11.9 MB)
我对词头进行了词形还原(lemmatization)处理,核心原因在于该词典仅支持精确匹配查询,无法识别单词的曲折变化形式 —— 例如输入 flowers 时,无法检索到其原形 flower。这种限制在手动输入查询场景下影响较小,因为用户通常会主动输入单词原形;但对于屏幕取词功能而言,就是个灾难。以如下句子中加粗标注的单词为例,通过欧路词典的取词功能均无法匹配查询结果,因为这些单词均存在曲折变化,这就极大限制了该词典的查询效率:

Raising awareness in career-related topics is a universal and inclusive approach for all trainees, which affords the opportunity to openly explore diverse career options.

我的方法是采用语料库语言学领域权威学者 Laurence Anthony(其开发了多款免费经典语料库工具)提供的 [Someya Lemma List] 词形还原词表(https://www.laurenceanthony.net/resources/wordlists/e_lemma.zip),然后通过 Python 完成格式适配处理后,将其追加至 mdx 词典文件尾部。打包工具选用了论坛分享的 AutoMdxBuilder_v1.5 版本 ,因为此前尝试使用 MdxBuilder 时,总是出现打包后词条顺序错乱的问题,折腾到半夜还是没搞定,最终用这款工具解决了问题(给开发者点赞)。 【v1.6_20240123】AutoMdxBuilder 自动化制作 mdx 词典

现在词头数量显示为12w,对我而言,查词能力大幅提高了(以前每次用欧路取词查询曲折变化形式的单词时,均需手动确认 “是否要查找 xxx”,点多了还是有点烦的)

第一次修改mdx,参考了本论坛很多资料,不一一列出,不足之处,还请各位大佬指教。

6 个赞

感谢无私分享!

1 个赞

感谢哥。有个不情之请,如果没空就不用处理。
就是牛津高阶4秋季版,和cod9一样的问题。都是右边有太多的空白。按照您的方法貌似处理不了。能帮看下吗 。谢谢。

oald4ec.css (15.6 KB)
oald4ec.rar (548 字节)

我其实在修改COD9的时候,牛津高阶4也一起修改了,因为这两本词典都是我经常用的,不过当时没有上传牛津高阶4的修改版,现在上传到原贴里了。

1 个赞

我在前人基础上修订完善这两本词典的初衷,是当时刚开始学HTML+CSS+正则表达式,拿来练手的哈。左支右绌改写的CSS说实话很蹩脚,哈哈。

谢谢你的继续改进和完善。
如果有心长时间维护的话,可以自己开个新帖、继续维护完善这两本老词典,也方便收集大家反馈意见和发布新版本。

1 个赞

已经很好了。谢谢各位大哥。完美伸手党有福了。哈哈。
后续看大哥门完善中英点译来回切换就完美了。

我觉得这两本词典排版简洁明快、高效合理,使用起来很顺手,这一切都得益于您的辛勤付出,在此我深表感激。这两本词典都是我的最爱,所以我仅针对自身使用过程中感觉稍有不便之处,进行一些细微的调整与优化,内心实则战战兢兢,唯恐因自己的改动而破坏了您的作品,哈哈。

以我有限的编程知识储备,大概很难再做出更多重大改动了。不过,倘若在后续使用过程中,我发现了更具价值的优化方向,我也很乐意站在诸位巨人的肩膀上,尽己所能,为词典的进一步完善贡献一份绵薄之力。

2 个赞

不像Kindle,
mdict/欧路/goldendict等软件内置就有直接查询变形词的能力, 所以mdx社区默认不给mdx词典添加变形词列表.

  1. 对于欧路,看看其安装目录下spell是否有en_US.dic/en_US.aff;
  2. 如果是goldendict, 到词典属性设置页面里面选上对应英语的Morphology, 如果不显示, 可以下载这两个文件到content\morphology
    如果需要其他语言的变形词查询,下载对应语种的这两个文件即可.

通过这两个文件可以将英语单词变回其原型(只是这两个文件的功能之一), 基本上属于拼写检查的行业标准了, 是hunspell格式的, 大多数开源闭源的拼写检查都基于hunspell,比如MacOS/Linux/Chrome/Firefox/LibreOffice等等等等.

谢谢您的回答,很受用。我看了下,是有这两个文件的。但是欧路的Hunspell 形态还原比较保守,不会直接跳转,比如在查flowers 的时候,会提示 您是否要查找:flower,而不是直接跳转到flower里,这样子还是挺影响使用的。有没有其他办法让欧路词典把形态还原结果当作等价命中,而不是当作建议呢?(不知道理解对不对)

1 个赞

我现在没有欧路,不清楚欧路的处理。
我一直使用goldedndict,是可以直接跳转的。
如果欧路不能直接跳转,确实是糟糕的设计,浪费了这个很有用的功能,不知是新版本是否有改进。

1 个赞

给Goldendict点赞:+1:t2:

可以分享PDF吗