我正在寻找一种使用终端命令更改 fcitx 输入法的方法。我知道我可以使用热键,但为了编写应用程序,我需要使用命令(类似于 ibus 的 ibus engine [name])。我一直在查看 fcitx 文档,但没有找到任何东西。有人知道命令吗?谢谢!
答案1
适当的命令是fcitx-remote -s <imname>
,其中<imname>
当然是fcitx
用于指代输入法的名称。遗憾的是,这些名称也没有记录,但您可以在fcitx
配置文件中找到它们(在我的系统中,它是~/.config/fcitx/profile
),其中列出了所有启用的(也是所有禁用的)输入法。
具体来说,xkb 布局的名称类似于fcitx-keyboard-XYZ
。例如fcitx-keyboard-us
,美国英语 QWERTY 布局,或fcitx-keyboard-de-dvorak
德国 Dvorak 布局。再举一个例子,Mozc 日语 IM 简称为mozc
。
当前输入法(相当于ibus engine
不带参数的)可以从同一文件中的 行获取IMName=<imname>
。但请注意,此变量的范围取决于您是否在窗口之间共享状态,以及 是否fcitx
处于活动状态(运行 的结果fcitx-remote
)。