fcitx / fcitx5-rime

223 stars 22 forks source link

无法实现从命令行更新rime配置 #54

Closed sci-42ver closed 1 year ago

sci-42ver commented 1 year ago

之前在ubuntu22的环境里用ibus-rime可以自动识别rime用户文件夹里的配置,但是在archlinux里面,根据wiki使用 fcitx5-remote -r 并没有效果(用户文件夹只放了custom没有复制default.yaml)

[archlinux最近配的,有个朋友买的新电脑硬件有点过新,想试试archlinux滚动更新可不可以解决一些问题的]

后来在rime github官方仓库wiki里 得知可以 rime_deployer --build ~/.local/share/fcitx5/rime /usr/share/rime-data ~/.local/share/fcitx5/rime/build, 尽管可以把用户文件夹里的build文件夹以及相应文件更新, 但是 fcitx5-remote -r 貌似并不能识别

变通办法: 使用ui界面的deploy选项或者synchronize选项,可以更新

当前环境

$ pacman -Q librime fcitx5-rime librime-data
librime 1:1.8.5-1
fcitx5-rime 5.0.16-1
librime-data 0.0.0.20220409-1
$ uname -r
6.2.8-arch1-1
wengxt commented 1 year ago

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

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

qdbus 可以替换为其他的 dbus 请求程序例如 busctl 或者 dbus-send

fbewivpjsbsby commented 1 year ago

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

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

qdbus 可以替换为其他的 dbus 请求程序例如 busctl 或者 dbus-send

busctl

busctl call org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1 SetConfig sv fcitx://config/addon/rime/sync s '' --user
busctl call org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1 SetConfig sv fcitx://config/addon/rime/deploy s '' --user

dbus-send

dbus-send --type=method_call --dest=org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1.SetConfig string:fcitx://config/addon/rime/sync variant:string:''
dbus-send --type=method_call --dest=org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1.SetConfig string:fcitx://config/addon/rime/deploy variant:string:''

不过我还是推荐 qdbus 或者 gdbus,不用输入类型,并且 qdbus 非常简单