Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用import_tables的方式加载的词典不全, 求助. #10

Open
rsyqvthv opened this issue Oct 5, 2021 · 7 comments
Open

使用import_tables的方式加载的词典不全, 求助. #10

rsyqvthv opened this issue Oct 5, 2021 · 7 comments

Comments

@rsyqvthv
Copy link

rsyqvthv commented Oct 5, 2021

aurora是我唯一的输入方法, 用import_tables的方式挂载了一些字典, 但发现这些挂载字典中的词并未加载. 加入了新的字典后进行"重新部署"也是一闪而过, 而不是原先有个时间漏斗, 需要等上一阵那样.

我的输入法选择, aurora极光是我唯一的选择.

【小狼毫】方案選單設定_20211005_201353

这是我的文件目录, 和aurora相关的就这4个:

rime_20211005_201504

aurora_pinyin.custom.yaml 的内容:

patch:
  'translator/dictionary': aurora_pinyin.extended

aurora_pinyin.extended.dict.yaml的内容:

# encoding: utf-8

---
name: aurora_pinyin.extended
version: "2021/09/22"
sort: by_weight
use_preset_vocabulary: true
import_tables:
  - aurora_pinyin
  - english
  - chinese_ancient
  - chinese_address
  - chinese_chengyu
  - chinese_names
  - chinese_proberb
...
# 自定义的词条
^_^	hh	5
T_T	kk	5

至此, aurora_pinyin.extended.dict.yaml 文件似乎是被读取了的, 因为我自定义的两个词条是可以输入的.

但是通过import_tables方式引入的词条则似乎只有english被完全引入了, 而其他的似乎只引用了部分.
我尝试输入一些字典里面的词语, 都是有的有, 有的没有. 这让我很困惑.

rime_20211005_202026

我已经逐个检查过字典, 似乎都符合规范:

  • 所有的字典都是utf-8编码, 我也尝试过使用utf-8 bom, 没有改变.
  • 所有字典开头都会写 # encoding: utf-8
  • 所有字典开始---后的name中, 都会写 name: 文件名, 文件名不包括.dict.yaml部分.

这里是一小段字典的开头部分, 供大家参详:

# Rime dictionary
# encoding: utf-8

---
name: chinese_acient
version: "2021/09/22"
sort: by_weight
use_preset_vocabulary: true
...

阿八哈	 a ba ha	1
阿巴雅	a ba ya	1
阿拔斯一世	a ba si yi shi	1
阿班罗桑曲殿	a ban luo sang qu dian	1
阿般提	a ban ti	1
阿般图	a ban tu	1

无论怎么设置, 只要重新部署都是一闪而过. 当然改变也不会被应用.

我甚至在task manager中关闭了weaselserver.exe, 然后再重新启动该服务,

重启电脑也仍然无济于事.

请有经验的大神点拨一下, 我到底哪里做错了? 怎么才能让rime真正的应用我的全部import_tables的词典呢?

@rsyqvthv rsyqvthv changed the title 无法使用translator/dictionary的方式加入多个词典, 求助. 使用import_tables的方式加载的词典不全, 求助. Oct 5, 2021
@flyingicedragon
Copy link
Contributor

最后给的那个词典开头的“阿八哈”一行好像就有问题。方便分享一下词典文件检查吗?我感觉还是词典的问题。
配置部分我看着没有问题,而且也有词典可以成功加载。

@hosxy
Copy link
Owner

hosxy commented Oct 6, 2021

词库那块,分隔符只能用 tab ,不能用空格。

@rsyqvthv
Copy link
Author

rsyqvthv commented Oct 6, 2021

感谢两位的回复 @hosxy @flyingicedragon

我检查了一下字典文件, 分隔符都是tab. 不知道为什么我拷贝到github中变成了空格.

我将import_tables引入的所有字典文件打包, 点击下面的链接进行下载

https://anonfiles.com/72P1PfL9ua/rime_zip

烦请二位帮我看下. 万分感谢.

@flyingicedragon
Copy link
Contributor

我把几个词库加载到我的里面都没有问题。不过我用的输入法不是 aurora 而是微软双拼,等 hosxy 测试一下吧。

@rsyqvthv
Copy link
Author

rsyqvthv commented Oct 6, 2021

@flyingicedragon 感谢你的回复.

我重置了aurora, 发现了可能是字典的问题:

首先我按照下面的方法重置了一下:

1, 备份我的词频, (用户词典管理 > 导出)
2, 更换输入法为一个非aurora的输入法.
3, 关闭weasalserver
4, 删除data目录中的aurora_pinyin.userdb 文件夹.
5, 到data目录中的build目录里, 将下面aurora相关的文件全部删除

build_20211006_073305

6, 启动weasalserver, 让他重新部署.
7, 切换回aurora.

这时输入法中文输入时只能输入字母, 没有组词了.

排除了一下发现, import_tables词典中, 只有三个词典是可以正常加载的:

  - aurora_pinyin
  - english
  - chinese_address

而另外4个, 写入import_tables后, 重新部署只是一闪而过, 似乎不能正常加载. 但也没有任何错误提示. 目前我已经注释掉了.

#  - chinese_ancient
#  - chinese_chengyu
#  - chinese_names
#  - chinese_proberb

我很仔细的校验了一下, 实在是找不到这几个词典文件出了什么问题. :(

@rsyqvthv
Copy link
Author

rsyqvthv commented Oct 6, 2021

为了排除字典里面的问题, 我尝试将其中的词语尽数删除, 只留下:

# Rime dictionary
# encoding: utf-8

---
name: chinese_chengyu
version: "2021/09/22"
sort: by_weight
use_preset_vocabulary: true
...

真得很烦	eee	1
阿保之功	a bao zhi gong	1
阿保之劳	a bao zhi lao	1
阿鼻地狱	a bi di yu	1
阿鼻叫唤	a bi jiao huan	1

这回倒是加载了, 但是输入eee却不能显示真得很烦.

越来越奇怪了.

@rsyqvthv
Copy link
Author

rsyqvthv commented Oct 6, 2021

终于发现了问题!

首先是我有个一字典里面的name 拼写错误了, 而有趣的是, rime从这个错误的文件开始就停止读取了, 导致后面其他正确的字典也被忽略了.

没想到还和顺序有关.

感谢 @flyingicedragon @hosxy

放在这里供有相似问题的朋友们参考.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants