rime / ibus-rime

【中州韻】Rime for Linux/IBus
https://rime.im
GNU General Public License v3.0
730 stars 105 forks source link

是否有命令行可以触发词库sync的方法? #124

Open darcylee opened 3 years ago

darcylee commented 3 years ago

同时使用多个平台,linux,mac,emacs-rime,当前只在emacs-rime里面可以实现定时sync词库的功能(需要自己做定时任务) 但是在ibus-rime、fcitx-rime、squirrel 都没有发现类似的功能,只能手动触发。是否有后台定时触发sync的方法?

Babesun commented 2 years ago

同需要这个功能。。前一天在一台电脑上输入了一些新词,第二天换了电脑才发现没有自动同步,还得重新造词,影响效率

lotem commented 2 years ago

​如果調用外部命令 rime_dict_manager 做同步,需要先讓 ibus-engine-rime進程退出(ibus 命令不詳)並在按鍵重新喚起輸入法之前完成。因此要把輸入法退出和同步操作寫在一條命令裏。 參考 https://github.com/rime/squirrel/issues/421

Babesun commented 1 year ago

cd ~/Library/Rime "/Library/Input Methods/Squirrel.app/Contents/MacOS/Squirrel" --quit "/Library/Input Methods/Squirrel.app/Contents/MacOS/rime_dict_manager" -s

———————— 以上命令可以实现,不过我发现如果是-s命令在执行时的几秒钟正在持续在打字,就会在.userdb目录里出现一个lost目录,影响就是有时候会出现字典损坏。这个有什么办法解决吗? WX20221101-222235@2x

uzvg commented 1 year ago

嗨,如果是ibus的话,经实验,可通过以下命令实现:

# 退出ibus
ibus exit

# 词库合并
cd ~/.config/ibus/rime
rime_dict_manager -s
cd -

# 启动ibus
ibus start
iuxt commented 1 year ago

我自己使用的WSLg中的fcitx5-rime,我是这么同步词库的:

#!/bin/bash
cd ~/.local/share/fcitx5/rime/
rime_dict_manager -s

另外部署脚本:

#!/bin/bash
rime_deployer --build ~/.local/share/fcitx5/rime/ /usr/share/rime-data ~/.local/share/fcitx5/rime/build
c02y commented 1 year ago

我自己使用的WSLg中的fcitx5-rime,我是这么同步词库的:

#!/bin/bash
cd ~/.local/share/fcitx5/rime/
rime_dict_manager -s

我手动执行,没有效果啊,新输入的词不会写入文件

用的是https://github.com/iDvel/rime-ice/


UPDATE: 执行完rime_dict_manager -s还得重启一下fcitx5,否则新词不会写如文件,这和点击一下systray里面的Synchronize不一样


UPDATE2: 一键同步,就是有点长

qdbus org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1.SetConfig fcitx://config/addon/rime/sync ''

一键部署可以用:

qdbus org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1.SetConfig fcitx://config/addon/rime/deploy ''

reference: https://github.com/fcitx/fcitx5-rime/issues/54#issuecomment-1491312366