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

关于用户数据库文件分散与收敛的问题 #135

Closed
shz2050 opened this issue Aug 10, 2017 · 4 comments
Closed

关于用户数据库文件分散与收敛的问题 #135

shz2050 opened this issue Aug 10, 2017 · 4 comments

Comments

@shz2050
Copy link

shz2050 commented Aug 10, 2017

使用rime引擎一段时间了,最近我才发现不同的输入法案它对应的用户数据库是分开的。比如 luna_pinyin.schema所对应的用户数据库是luna_pinyin.userdb,而double_pinyin.schame所对应的用户数据库是double_pinyin.userdb,他们是两个完全分开的数据库。现在我想通过shema中translator@user_dict参数指定数据库名称,来实现多个输入方案的用户数据库收敛(共用一个数据库),从而方便后期维护。

由于牵扯到数据问题,所以想来请教一下不同输入方案共用一个用户数据库会产生什么影响么?

@lotem
Copy link
Member

lotem commented Sep 1, 2017

你確定有 double_pinyin.userdb?什麼版本、方案修改過嘛?
希望你再確認一下,我無法重現這個問題。
雙拼和朙月拼音應該是共用詞典的。這裏雙拼指定用 luna_pinyin 詞典,包括用戶詞典也是共用的。
https://github.com/rime/rime-double-pinyin/blob/master/double_pinyin.schema.yaml#L87
共用詞典的前提是基於同一音系(語言學意義上的)。雙拼與(不帶調的譌)全拼有一一對應的關係,都用來拼寫現代標準漢語,因此可以共用詞典。拼寫的不同雙拼通過定義拼寫運算規則生成不同的棱鏡文件(雙拼→詞典編碼映射表)實現。
https://github.com/rime/rime-double-pinyin/blob/master/double_pinyin.schema.yaml#L53
https://github.com/rime/rime-double-pinyin/blob/master/double_pinyin.schema.yaml#L88

@lotem
Copy link
Member

lotem commented Sep 1, 2017

當前實現中,部署規則要求詞典借用其他方案的,prism 應指定爲與本方案同名。以避免因拼寫的差異影響(覆蓋借用方案生成的棱鏡文件)其他方案。

幾個概念之間的關係:
方案 1:1 棱鏡
方案 N:1 詞典,N>=1
棱鏡 N:1 詞典,N>=1
固態詞典 1:X 用戶詞典,X in {0,1}

@shz2050
Copy link
Author

shz2050 commented Sep 12, 2017

不好意思,是我没弄清楚,当时只是举个例子,实际上是想将两种不同的输入方案的用户数据库合并。
我尝试了将明月拼音和笔画输入的用户数据合并,遇到了问题,也就是您在回复中提到的

共用詞典的前提是基於同一音系(語言學意義上的)。雙拼與(不帶調的譌)全拼有一一對應的關係,都用來拼寫現代標準漢語,因此可以共用詞典。

现在我又将这两种输入法的用户数据库分离开了。

@lotem
Copy link
Member

lotem commented Sep 12, 2017

筆畫、英文、自定義簡寫,都不要混入拼音詞典。否則會擾亂拼音音節切分。

@lotem lotem closed this as completed Sep 12, 2017
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

2 participants