【macOS】dictionary拼音索引如何实现?

macOS dictionary自带的简体中文词典和成语词典都能实现拼音索引。那如何实现呢?

用的 reading 索引。

d:reading嘛?

是不是这样写?

// 这是汉语
<d:index d:value="一" d:title="一" d:reading="yī"/>
// 这是拼音
<d:index d:value="yī" d:title="一" d:parent="一" d:language="zh-Hans" d:exact="false" />

我刚试了,用不同的方法,还是没有用

d:yomi 这个索引本来是设计给日语词典用的,现在拼音也可以用。

<d:index d:value="工夫" d:title="工夫" d:yomi="くふう"/>
<d:index d:value="一" d:title="一" d:yomi="yī"/>


我刚试了,可以的,但是跟简体中文是有区别的,那个是呈现灰色的

灰色就是 value & title & yomi 之间的组合,你自己尝试下,怎么搭配的我忘记了。

具体细节我记不清了。你可以用 pyglossary 导出一本词典看看。这个工具导出的词头去掉了 yomi 字段,但代码实际读取的索引是完整的,下断点或者打印出来都可以看到。

导出一本词典指的是,mdx转Apple dictionary吗?那个yomi字段是我手动批量填充进去。刚试了几次不同的方法,还是没有呈现灰色出来

用 pyglossary 直接导出苹果词典,看看有什么细节错过了。

我就是这样转换的,处理好xml和plist,然后直接“make”转Apple dictionary

你找一本苹果官方的简体中文字典,导出文本内容,看看他们拼音是怎么配的。

我看了一下,这个是Apple转mdx,标签是这样写的吗?

<py>{拼音}</py>

我刚试了,还原不了,不太懂,求指点

我回家了没有开发环境,没法尝试。直接导出原版的苹果词典看看。或者导出索引来看一下。

index里value等于拼音就搞定吧。

翻了下网盘,发现有备份,涉及阿姨的有两条索引。

{"entry": "", "title": "阿姨", "value": "āyí", "yomi": "āyí", "anchor": ""}
{"entry": "", "title": "", "value": "阿姨", "yomi": "āyí", "anchor": ""}


这个我直接导出就这样,索引表没有拼音

这个不行的,只能输入拼音查询,左侧显示不了拼音

不是,这是我给改的。你去从MacOS整一个词典文件出来。

1 个赞

求导出方法,我研究一下他的格式。