阅读:64回复:2
偶然发现一个特殊情况下全拼与双拼输入相同而输出不一致的现象
拼音码表一样,都是用自带的 pinyin.txt(双拼 copy 了一份改名)
1、双拼下输入 date,候选如下: 图片:2.png ![]() 2、全拼下输入 date,候选如下: 图片:21.png ![]() 可以看到使用双拼时输入 date 编码只显示码表中的 3 个候选(time 编码类似,只有 2 个候选): 图片:31.png ![]() 我个人理解使用双拼时输入 date 编码,候选也应该会显示 da 拼音的字,像全拼那样,可以先选 da 的字,再选 te 的字。 经过我的尝试,双拼下好像是码表的词条中含有变量才会这样,把当前码表中的 date 那一行删掉就“正常”了。不过问题不大,像群友说的,date 和 time 的组合几乎用不到。 |
|
沙发#
发布于:2025-07-09 09:15
以我的理解,拼音由很多组合,有些字母组合在一起可能就是一个字的读音,而形码不一样它很固定且精确,小小之所以小,是因为没有花更多的时间去做一些不必要的判断。比如拼音的准确组合判断,因为拼音以打词和句为主且本身就可能有很多重音字词,如果没有需要的词可以将编码打长一点,这样看date本身不是一个词音,但可能组合成“达特”这样的词出来,这又涉及到“词料库”的相关知识了,所以这里拼音会显示出一些看似没必要的词,这也可能是小小的一种处理逻辑,不用过多苛求。如果你觉得date的编码不需要,可在词库中将其删除掉。
|
|
板凳#
发布于:2025-07-09 22:11
zrjojo:以我的理解,拼音由很多组合,有些字母组合在一起可能就是一个字的读音,而形码不一样它很固定且精确,小小之所以小,是因为没有花更多的时间去做一些不必要的判断。比如拼音的准确组合判断,因为拼音以打词和句为主且本身就可能有很多重音字词,如果没有需要...回到原帖嗯,确实是。 我又试了一下把 date 改成 shjian,即:shijian $yyyy年$mon月$day日 $YYYY0年$MON月$DAY日 农历$RIQI 全拼下输入 shijian,和双拼下输入 uijm 的输出也是不太一样的。到这里突然发现全拼编码 shijian 即拼音 shijian,而双拼编码 uijm 多了一步映射后才是拼音 shijian。 根据实际情况调整使用就好了。 |
|