輸入法 - Arch Linux 中文维基

跳至內容

# 輸入法

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 Input method，最近一次同步於 2024-02-05，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

相關文章

- 字體#非拉丁文字
- 區域

## 輸入法

提示：如果以下文本在屏幕上顯示為亂碼，請確保系統中安裝了中文或日文字體。有關可用字體的非詳盡列表，請參閱字體#中日韓越文字。
注意：為簡單起見，在以下示例中僅提到了鍵盤，但 IME 實際上可以使用多種輸入源，例如使用滑鼠或 Wacom tablet 繪製字符。

引自 Wikipedia:Input method：

  輸入法（或輸入法編輯器，常縮寫為 IME）是一種作業系統組件或程序，它使用戶能夠通過使用輸入設備上原生的字符序列（或滑鼠操作）來生成其輸入設備上沒有的文字。對於擁有比鍵盤上的按鍵更多的字位的語言來說，使用一種輸入法通常是必要的。

簡單來說，IME 是一個允許我們使用拉丁字符輸入非拉丁字符的應用程式。

一些 IME 通過一種叫做羅馬化的過程來實現這一點，即把非拉丁語的聲音音譯成與之最相近的拉丁語對應物。例如，日語中「清酒」或「米酒」的寫作`酒`，也寫成`さけ`，並被羅馬化為「sake」。IME 的作用是充當鍵盤和輸入欄位之間的中間人，因此，當我們輸入「sake」時，它將攔截鍵盤的輸入，用 `酒` 或 `さけ`（由用戶選擇）替換 「sake」，並為我們輸入本地字符而不是我們按下的鍵。

也有一些 IME 不使用羅馬化。其中最突出的是倉頡，它通過將漢字分解為部首，將這些部首與第二套自己的內部部首相匹配，最後再將這些內部部首與拉丁文字相匹配。舉例來說，中文的`酒`由部首 `氵`、`一`、`⼉`、`口` 和 `一` 組成。倉頡將這些部首與內部部首`水`、`一`、`金`、`田` 和 `一`匹配，然後將這些部首與拉丁字符 `emcw` 匹配。這意味著，當我們輸入「emcw」時，倉頡會攔截鍵盤的輸入，用 `酒` 替換 "emcw"，並在屏幕上輸入該字符。

### 輸入法框架

大多數 IME 是作為輸入法框架（常縮寫為 IMF）的一部分工作的，它是一個允許用戶在不同的 IME 之間輕鬆切換的應用程式。事實上，這正是我們許多人每天在不同的拉丁語鍵盤布局（如英語、西班牙語、德語等）之間切換時不知不覺地使用的應用程式。

最常見的 IMF 是 IBus（通常用於基於 GTK 的環境，如 GNOME），其次是Fcitx5（大多用於基於 Qt 的環境，如 KDE），然後是 Scim 和 Fcitx，最後是 Uim。非常不常見的包括 Gcin、Nimf 和 Hime。[1]此外，Emacs是一個非常流行的文本編輯器，它有自己的內部 IMF。

參見 Wikipedia:List of input methods for Unix platforms。

注意：SCIM 目前缺乏維護，因此不推薦使用。

## 輸入法列表

下表顯示了 Arch 存儲庫和 AUR 中當前可用的各種語言的 IME。

注意：在某些情況下，同一個 IME 存在多個軟體包。這方面的一個很好的例子是Mozc：作為目前最流行的日語 IME，多年來有多個打包者試圖創建一個「完美的」Mozc 包。在下面的表格中，每個 IMF 都包括一個 Mozc 軟體包；但這並不意味著這些是用戶應該考慮安裝的唯一 Mozc 軟體包。
警告：並非所有 IME/IMF 都是最新的；例如，Anthy 不再維護，通常首選 mozc。一些 IME 也相當不受歡迎，並且不提供太多支持。查看相應的 Localization 頁面了解更多信息。

| Fcitx5 | Fcitx | IBus | uim | Emacs | Scim | Hime | gcin | Nimf
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
中文
Rime | fcitx5-rime包 | fcitx-rime包 | ibus-rime包 | – | – | – | – | – | 內置
拼音 | fcitx5-chinese-addons包 | 內置 | ibus-pinyin包 | – | – | scim-pinyinAUR | – | – | 內置
注音 | fcitx5-chewing包 | fcitx-chewing包 | ibus-chewing包 | – | – | scim-chewing包 | – | – | 內置
倉頡 簡易 快速 | fcitx5-table-extra包 | fcitx-table-extra包 | ibus-table-chinese包 | – | – | scim-tablesAUR | – | – | –
五筆 | 內置 | 內置 | ibus-table包 | 內置 | – | scim-tablesAUR | – | – | –
Libpinyin | – | fcitx-libpinyin包 | ibus-libpinyin包 | – | – | – | – | – | –
SunPinyin | – | fcitx-sunpinyin包 | ibus-sunpinyin包 | – | – | – | – | – | –
日文
Mozc | fcitx5-mozc-utAUR | fcitx-mozc-utAUR | ibus-mozcAUR | – | emacs-mozcAUR | – | – | – | –
Anthy | fcitx5-anthy包 | fcitx-anthy包 | ibus-anthy包 | 內置 | – | scim-anthyAUR | 內置 | 內置 | 內置
SKK | fcitx5-skk包 | fcitx-skk包 | ibus-skk包 | 內置 | – | – | – | – | –
KKC | fcitx5-kkc包 | fcitx-kkc包 | ibus-kkc包 | – | – | – | – | – | –
韓文
Libhangul | fcitx5-hangul包 | fcitx-hangul包 | ibus-hangul包 | 內置 | – | scim-hangulAUR | – | – | 內置
越南語
UniKey | fcitx5-unikey包 | fcitx-unikey包 | ibus-unikey包 | – | – | – | – | – | –
Bamboo | fcitx5-bamboo包 | – | ibus-bambooAUR | – | – | – | – | – | –
Indic
Avro （孟加拉語） | – | – | ibus-avro-gitAUR | – | – | – | – | – | –
Helakuru（僧伽羅語） | – | – | ibus-helakuruAUR | – | – | – | – | – | –
m17n | fcitx5-m17n包 | fcitx-m17n包 | ibus-m17n包 | – | – | scim-m17nAUR | – | – | –
OpenBangla Keyboard （孟加拉語） | fcitx5-openbangla-gitAUR | – | openbangla-keyboardAUR | – | – | – | – | – | –
Sayura （僧伽羅語） | fcitx5-sayura包 | fcitx-sayura包 | – | – | – | – | – | – | –
Varnam | – | – | libvarnam-ibus-gitAUR | – | – | – | – | – | –

## 配置

為了讓桌面環境正確地將已安裝的輸入法框架註冊為可用並將其用於處理用戶輸入，必須相應地配置一組環境變量。

注意：如果沒有設置這些變量，GTK 和 Qt 都會嘗試讀取系統的區域設置來決定它們應該使用哪種 IMF，但這個過程依賴於猜測，可能非常容易出錯。對於一個正常工作的系統，應該明確地設置這些變量。
提示：如果希望完全禁止桌面環境通過 IMF 處理輸入（在 GNOME 中不推薦，因為其與 IBus 緊密集成），那麼可以不設置這些變量，或者，對於 GTK 和 Qt，可以替換它們的值：`GTK_IM_MODULE=gtk-im-context-simple` 和 `QT_IM_MODULE=simple`。

### Fcitx5

有關詳細信息，請參閱 Fcitx5#集成。

### Fcitx

有關詳細信息，請參閱 Fcitx。

    GTK_IM_MODULE=fcitx
    QT_IM_MODULE=fcitx
    XMODIFIERS=@im=fcitx

### IBus

見 IBus 以獲得更多訊息。

    GTK_IM_MODULE=ibus
    QT_IM_MODULE=ibus
    XMODIFIERS=@im=ibus

### Uim

見 Uim 以獲得更多訊息。

    GTK_IM_MODULE=uim
    QT_IM_MODULE=uim
    XMODIFIERS=@im=uim

### Emacs

本文或本章節的事實準確性存在爭議。

原因： 這需要確認（在 Talk:輸入法 中討論）

根據這個 Fcitx wiki 所述, "（`LC_CTYPE`）僅適用於一些情況下，包括emacs和java。Emacs 有一個積年的Bug，在 en_US.UTF-8 或類似的區域設置下，它將從不使用XIM（雖然emacs作為一個 gtk 程序，它應使用 XIM）。使用 `LC_CTYPE` 去修復它是唯一的解決方法。

### Scim

見Scim獲得更多訊息。

    GTK_IM_MODULE=scim
    QT_IM_MODULE=scim
    XMODIFIERS=@im=scim

### Xim

    GTK_IM_MODULE=xim
    QT_IM_MODULE=xim

## 參見

- Fedora:I18N/InputMethods
- Gentoo:Input methods
- Wikipedia:Input method

分類：​

- 存在語法高亮錯誤的頁面
- 本地化
- 輸入法

隱藏分類：​

- 使用「模板:準確性」標記的頁面或章節

輸入法
新增話題