输入法
输入法
- 输入法(或称输入法编辑器,常缩写为 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。
可用的输入法编辑器列表
下表显示了 Arch 软件仓库和 AUR 中当前可用的各种语言的 IME。
配置
为了使您的桌面环境正确注册已安装的输入法框架并将其分配来处理用户输入,必须相应地配置一组环境变量。
GTK_IM_MODULE=gtk-im-context-simple
和 QT_IM_MODULE=simple
。Fcitx5
有关更多信息,请参阅 Fcitx5#Integration。
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
根据 这个 Fcitx wiki 条目,“在某些情况下,包括 emacs 和 java。Emacs 有一个历史错误,在 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