Fcitx小企鵝是一款功能多樣的開源中文輸入法框架,相較於iBus功能更多。現已支援注音、倉頡、嘸蝦米、RIME、行列、粵語、拼音、五筆、日文、韓文、越南文輸入。
目前Fcitx5已在Flathub上架,任何Linux發行版透過Flatpak容器即可安裝,而不用使用系統的套件管理器(如APT/DNF/YUM/Pacman/Zypper/Portage)安裝。
為什麼不用系統套件管理器而要用Flatpak容器安裝呢?本文討論的Fcitx5裝法適合用於以下三種情況:
- 在任一Linux發行版體驗最新版Fcitx5輸入法功能,適用Ubuntu、Debian、Arch Linux、Fedora、openSUSE、Gentoo。
- 在無法修改系統的Immutable Distro上安裝Fcitx5,例如SteamOS、Fedora Silverblue、openSUSE MicroOS、Vanilla OS
- 在沒有提供Fcitx5套件的發行版使用Fcitx5,例如Alpine Linux、CentOS Stream、Slackware、Rocky Linux
測試過的系統#
- Rocky Linux 9.4
- Fedora Silverblue & Fedora Kinoite 42
1. 宿主機安裝輸入法模組#
(在KDE Plasma 6.0 Wayland,或許你不需要做這節步驟也能使用Fcitx5輸入法,只要在系統設定 → 虛擬鍵盤設定為Flatpak Fcitx5即可。)
雖然我們要用Flatpak安裝Fcixt5,但宿主機端依然要安裝輸入法模組相關套件,作為容器與宿主機的「橋樑」才可以喚醒Fcitx5,否則就只能在Flatpak應用程式裡面使用而已,無法在宿主機的GTK與QT程式使用Fcitx5打字。
根據Fcitx5開發者的解釋,Fcix5相容多種輸入法協定,必須在宿主機安裝任一種輸入法模組:xim 或 ibus 或 舊版fcitx4 或 fcitx5
通常,你要在Linux安裝fcitx5,會用系統的套件管理器安裝,例如Ubuntu用APT安裝Fcitx5套件。除了Fcitx5以外,你還會一併裝上Fcitx的GTK與QT模組的套件,才能在這些程式打字。不過有的Linux發行版套件過舊,可能連Fcitx套件都沒有,這個時候就能用ibus替代原本fcitx模組的用途。反過來說,如果Linux發行版已經有提供Fcitx的GTK與QT模組的套件,那麼就沒有用iBus的必要。
如果宿主機沒有fcitx套件#
- 以iBus為例,有些Linux發行版即使套件老到不行,連一個版本的fcitx都沒收,也一定會收ibus套件:
# Ubuntu/Debian
sudo apt install ibus
# Fedora/RHEL/Rocky Linux
sudo dnf install ibus
# Fedora Silverblue
sudo rpm-ostree install ibus
# openSUSE
sudo zypper install ibus
- 編輯
/etc/environment
,設定環境變數,指定系統輸入法框架使用ibus
GTK_IM_MODULE=ibus
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus
SDL_IM_MODULE=ibus
GLFW_IM_MODULE=ibus
如果宿主機有fcitx套件#
如果發行版有收錄Fcitx套件,則至少要安裝GTK與QT前端。
- 安裝Fcitx5套件
# Ubuntu/Debian
sudo apt install fcitx5-frontend-gtk3 fcitx5-frontend-gtk4 fcitx5-frontend-qt5 fcitx5-frontend-qt6
# Fedora/RHEL/Rocky Linux
sudo dnf install fcitx5-gtk3 fcitx5-gtk4 fcitx5-qt fcitx5-qt6
# Fedora Silverblue
sudo rpm-ostree install fcitx5-gtk3 fcitx5-gtk4 fcitx5-qt fcitx5-qt6
# openSUSE
sudo zypper install fcitx5-gtk3 fcitx5-gtk4 fcitx-qt5 fcitx-qt6
- 編輯
/etc/environment
,設定環境變數,指定系統輸入法框架使用fcitx
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus
2. 安裝Flatpak版Fcitx5#
安裝Flatpak,重開機。
從Flathub安裝Fcitx5:
flatpak install --user org.fcitx.Fcitx5
- 然後再以Add-On方式安裝輸入法,例如新酷音。(注意Chewing跟Zhuyin是兩款不同的輸入法)
flatpak install --user org.fcitx.Fcitx5.Addon.Chewing
flatpak install --user org.fcitx.Fcitx5.Addon.ChineseAddons
- 其餘輸入法的名稱請用指令搜尋:
flatpak search org.fcitx.Fcitx5.Addon
。
由於這裡我使用的是Flathub的穩定版頻道,可能輸入法數量較少,這個時候你可以新增Fcitx5的不穩定版套件庫,再重新搜尋。
flatpak remote-add --user --if-not-exists fcitx5-unstable https://flatpak.fcitx-im.org/unstable-repo/fcitx5-unstable.flatpakrepo
- 嘗試執行Fcitx5。
flatpak run org.fcitx.Fcitx5 &
KDE的輸入法面板應該會彈出Fcitx5,點選設定,將新酷音從右邊的面板加入到左邊面板,即可啟用新酷音輸入法。
Fcitx5在X11下應該是開箱即用的,預設為按Ctrl+空白鍵切換輸入法。
Flatpak版Fcitx5的資料儲存位置位於~/.var/app/org.fcitx.Fcitx5/config
關於Wayland應用程式的環境變數設定,請參閱下面的Arch Linux 中文维基。
- 確認可以使用後,設定登入桌面後自動啟動Fcitx5
cp ~/.local/share/flatpak/exports/share/applications/org.fcitx.Fcitx5.desktop \
~/.config/autostart/org.fcitx.Fcitx5.desktop