分享一个可以很方便地维护 Rime 词库的小工具

2024-02-12 01:36:13 +08:00
ns09005264  ns09005264

如果你在使用形码或音形之类的固词码表式的输入方案,也许会碰到想要加词或删词之类的情况。

像我用的星空键道 6 虽然有一个不错的大词库,但是显然公用的大词库还是不能满足所有人的,自己维护一个词库是很有必要的。

然后我便写了一个小工具,可以很方便的维护 Rime 的 dict 文件。

Github

https://github.com/MapoMagpie/rimedm

我没有 Mac 设备,没测试过 Mac 平台,如果有人使用的话,麻烦向我反馈一下是否存在问题。

视频演示: 我们不用很累很麻烦就可以维护词库

特性如下

一键安装

Windows (可能需要 PowerShell 5.1 版本以上,从微软应用商店中下载最新的 PowerShell)

复制以下代码,打开 PowerShell 并粘贴

iwr https://github.com/MapoMagpie/rimedm/raw/main/install.ps1 -useb | iex

Lnux/MacOs

curl -fsSL https://github.com/MapoMagpie/rimedm/raw/main/install.sh | bash -s

手动安装

可以查看 Github 项目 Readme 中的说明。

加词

2181 次点击
所在节点   中州韻  中州韻
11 条回复
chowhong
chowhong
2024-02-13 01:58:08 +08:00
试试看,正好有需要在 win 和 Linux 之间同步。如果能同步安卓就更好了。
tankb52
tankb52
275 天前
可以可以,今天正好手动删除了 1300 多条词汇。
tankb52
tankb52
275 天前
请问有调整词序的功能吗??
ns09005264
ns09005264
275 天前
@tankb52
词序是指重码时的权重值吗,没对这方面做优化,因为我的输入方案不需要考虑词序。
要不你详细描述下需求,比如在碰到重码时,通过什么方式可以快捷的调整权重,
比如按一个组合键来移动调整权重。
tankb52
275 天前
对,就是重码,我的词库很大,习惯空格首词上屏,冒号次选上屏。
所以自己加的词经常需要考虑到和原有词的排序。

举了例子,我原来编码 aaaa 对应有三个词。

我使用 rimedm 加词方法:
1.输入 编码 新词,这时 rimedm 会根据编码筛选列出对应词组。

aaaa 词组 3
aaaa 词组 2
aaaa 词组 1
——
:aaaa 新词


2. 这时我按上下键,高亮词组 2——我是以为我在选择位置。

3. 按回车选择 add

新词 要么加在词组 2 前,要么加在词组 2 后,这我都能理解。


结果打字时,这个词好像默认加到最后,排第 4 了。

输入框:
aaaa
1. 词组 1 2. 词组 2 3. 词组 3 4. 新词。

但在 rimedm 中 输入编码检索时好像又是出现在 3 的位置。

aaaa 词组 3
aaaa 新词
aaaa 词组 2
aaaa 词组 1
——
:aaaa

这就很不直观了,我希望至少是这样:
1. 我输入 :编码 新词,
2. rimedm 根据编码筛选出原有词 1 、2 、3 。
3. 我再按上下键,选择位置 2 高亮,然后回车,选择 add 。

aaaa 词组 3
aaaa 词组 2 →这行高亮
aaaa 词组 1
——
:aaaa 新词

结果:把新词加到词组 2 的前面。
ns09005264
274 天前
@tankb52 新版本 1.0.6 增加了权重相关的功能,可以直接通过一键安装脚本来更新,或者看 README 手动安装。
加词时,如果当前高亮的词组有权重值,则新加的词组的权重值为高亮词组权重-1 ,PS:权重值越高在 rime 里越优先。
然后还可以通过 Ctrl+方向键来快速修改高亮词组的权重,左右是加减,上下是根据相邻项的权重来加减。
然后 Ctrl+H 可以看帮助,再次 Ctrl+H 或 Enter 退出帮助。
有什么问题欢迎反馈。
ns09005264
272 天前
@tankb52 1.0.6 有 bug ,开启了实时同步部署后,在运行时进行了多次修改或删除,最终退出程序时,只会同步最后一次的修改到码表中。建议更新到 1.0.7
tankb52
269 天前
wangyifan
236 天前
为什么添加不上
![screenshot-20240628-095822.png]( https://s2.loli.net/2024/06/28/af17RvAhPZpQXCU.png)
![screenshot-20240628-095830.png]( https://s2.loli.net/2024/06/28/81wNLjXb4hnFKO5.png)
ns09005264
236 天前
@wangyifan

看起来没有找到 Rime 码表文件(xxx.dict.yaml)

你可以在 ~/.config/rimedm/ 目录下找到 rimedm 的配置文件和日志,在配置文件 config.yaml 里看看 dict_paths 项指定的码表文件是什么,然后修改成正确的,一般来说是 方案名.dict.yaml

由于每个人电脑里的环境不同,有时候不能自动找到正确的码表,所以需要在配置文件里指明码表所在的位置。
自动查找码表的逻辑是这样的:在~/.local/share/fcitx5/rime/default.custom.yaml 里找到你正在用的方案名,然后根据方案名拼接 `方案名+.dict.yaml`,就是码表文件了,但是有些方案可能不是这样的规范,比如小鹤的码表大概是 flypy.dict.txt ,这样就找不到了。

简单来说:就是把 ~/.config/rimedm/config.yaml 里的 dict_paths 改成你的码表文件就可以了。

另外我刚刚更新到 1.0.8 ,现在加载不到正确的码表文件会提示并退出。
ns09005264
236 天前
更新到 1.0.8 还是用同样的一键安装命令。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1015378

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX