fcitx-remote command

觀看 help

執行

$ fcitx-remote -h

顯示

Usage: fcitx-remote [OPTION]
        -c              inactivate input method
        -o              activate input method
        -r              reload fcitx config
        -t,-T           switch Active/Inactive
        -e              Ask fcitx to exit
        -a              print fcitx's dbus address
        -m <imname>     print corresponding addon name for im
        -s <imname>     switch to the input method uniquely identified by <imname>
        [no option]     display fcitx state, 0 for close, 1 for inactive, 2 for acitve
        -h              display this help and exit

觀看 manpage

執行

$ man fcitx-remote

會看到說明

查詢 fcitx-remote 放在那個位置

執行

$ whereis fcitx-remote

顯示

fcitx-remote: /usr/bin/fcitx-remote /usr/share/man/man1/fcitx-remote.1.gz

查詢 fcitx-remote 屬於那個套件

執行

$ dpkg -S /usr/bin/fcitx-remote

顯示

fcitx-bin: /usr/bin/fcitx-remote

表示「/usr/bin/fcitx-remote」是屬於「fcitx-bin」這個套件。

使用範例

切換輸入法

重複執行,可以切換輸入法。

$ fcitx-remote -t

註:

這個指令,基本上就是跟「fcitx dbus session service」溝通,

所以也可以參考「D-Bus使用筆記」這邊紀錄的相關範例。

程式碼則可以參考「fcitx/src/module/dbus/dbusremote.c」。

若是透過「Python PyGObject (PyGI)」的方式,則是可以參考「Python 學習筆記」這邊紀錄的「相關範例」。

程式碼則可以參考「demo-toggle

偵測fcitx是否已經執行

執行

$ fcitx-remote

顯示數字

1

接著執行

$ echo $?

顯示

0

搭配「man fcitx-remote」來看

[no option]
       display fcitx state, 0 for close, 1 for inactive, 2 for active

另外搭配另一個指令「fcitx-autostart」的內容來看

觀看內容

$ cat /usr/bin/fcitx-autostart

顯示

#!/bin/sh

# sleep for a little while to avoid duplicate startup
sleep 2

# Test whether fcitx is running correctly with dbus...
fcitx-remote > /dev/null 2>&1

if [ $? = "1" ]; then
    echo "Fcitx seems is not running"
    fcitx
else
    echo "Fcitx is running correctly."
fi

fcitx service 若沒有執行

執行

$ fcitx-remote

顯示

Not get reply

接著執行

$ echo $?

顯示

1