Skip to content

在 Crostini 當中使用 Chrome OS 的輸入法

Weizhong Yang a.k.a zonble edited this page Oct 23, 2024 · 3 revisions

在 Chrome OS 上有一套虛擬的 Linux 環境,叫做 Crostini,可以讓用戶在 Chromebook 或是安裝了 Chrome OS Flex 的 PC 上也可以安裝、運行各種 Linux 的應用程式,像是 LibreOffice、GIMP 等等,也可以跑 Android Studio、 Visual Studio Code 等開發工具進行軟體開發工作。可以參見官方的說明:啟用 Chrome OS 上的 Linux

中文用戶大概都離不開輸入中文的需求,在網路上,很容易可以查到,只要裝了像是 fcitx 這類的 Linux 輸入法,就可以在 Crostini 中輸入中文。

不過,Chrome OS 官方過去一陣子也開發了 cros_im,用途是在 Crostini 應用程式中,也可以直接使用 Chrome OS 本身的系統輸入法。之前沒有特定留意相關消息,在 Chrome OS 120 版本後,應該都可以使用,而且使用體驗也比 Linux 的輸入法來得好—像 Fcitx 等輸入法,可能會有 Crostini 下 UI 無法正確出現的問題。

根據 cros_im 本身的說明,在建立好了 Crostini 環境後,首先透過 chrome://flags 連結,打開 Chrome OS 的進階設定,把像是 #crostini-ime-support 、#crostini-qt-ime-support 這些選項都打開,或是指定一些環境變數,包括

GTK_IM_MODULE=cros
QT_IM_MODULE=cros

用滑鼠把輸入法切換成中文,應該就可以打出中文了。如果想要使用 Ctrl + Space 等快速鍵,在 Crostini 中的 Linux 應用程式中切換中英輸入法,則請在終端機底下,輸入以下命令:

setup_conf() {
  mkdir -p "$1"
  echo -e '[Service]\nEnvironment="SOMMELIER_ACCELERATORS=Super_L,<Alt>bracketleft,<Alt>bracketright,<Control>space,<Control><Shift>space"' > "$1"/override.conf
}
setup_conf ~/.config/systemd/user/[email protected]
setup_conf ~/.config/systemd/user/[email protected]
# This will likely kill all running GUI apps
systemctl --user daemon-reload
systemctl --user restart sommelier{,-x}@{0,1}.service
Clone this wiki locally