rime / squirrel

【鼠鬚管】Rime for macOS
https://rime.im
GNU General Public License v3.0
4.7k stars 414 forks source link

最近更新到的 v0.9.25 版字序很有问题 #33

Closed hotoo closed 10 years ago

hotoo commented 10 years ago

demo1

demo2

demo3

注:这是用了有一段时间之后,已经影响了候选词顺序,但还没有完全纠正的示例。

还有一些,如 d: 的, s: 是 也是故意重复打了很多遍才提前到第一页第一行的。


p.s. git 仓库里面最新的 v0.9.24.x

lotem commented 10 years ago

只是排序不好,沒有「錯字」、「缺字」等問題對吧? 如果是排序亂了,常見的原因是向用戶詞典導入了大量沒有詞頻的字詞,也有一定機率由於用戶詞典本身的故障引起。以下命令可重建用戶詞典:

killall Squirrel; mv $HOME/Library/Rime/luna_pinyin.userdb.kct $HOME/Library/Rime/luna_pinyin.userdb.kct.bak

但看能否解決。

hotoo commented 10 years ago

执行命令后修复了,感谢:)

请问这是什么原理呢?

执行前相关文件:

执行后:

lotem commented 10 years ago

哦,出現了一個 .old 文件,這是用戶詞典損壞後、自動修復產生的備份。 用戶詞典是用 kyotocabinet 數據庫做的,時不時有人報告詞典損壞的案例(我注意到很多人都是不愛關機的這是個疑點),但其結構複雜我也無從下手分析。我自己遇到過一次同步詞典之後、所有詞頻變成一個大數的情況,表現也是詞序亂了。後來的版本針對這些錯誤做了一些預防性的修復。 升級之前是啥版本還記得嘛,如果不是從很早的版本升級上來,說明數據庫仍不可靠。 還想過自己手工實現一個詞典結構,不用第三方數據庫。但有些畏難,怕自己寫的品質不夠好。

lotem commented 10 years ago

你需要恢復 luna_pinyin.userdb.kct.bak 裏面舊有的詞條嘛? 如果出問題以前同步過,再同步一次就回來了。不然得用工具導出來。

hotoo commented 10 years ago

你需要恢復 luna_pinyin.userdb.kct.bak 裏面舊有的詞條嘛? 如果出問題以前同步過,再同步一次就回來了。不然得用工具導出來。

没太懂,我的词序现在已经恢复正常了,还要恢复什么吗?

lotem commented 10 years ago

但是以前記錄的詞組也都沒了。你不介意這個就好。

hotoo commented 10 years ago

是说从开始出现问题,到现在修复这段时间内新记录的词组么?没关系。