インプットメソッド
関連記事
目次
インプットメソッド
Wikipedia:Input method (Wikipedia:ja:インプットメソッド) より:
- インプットメソッド(または インプットメソッドエディタ 一般に IME と略される)とは、ユーザーが入力デバイスでネイティブに使用できる文字列(またはマウス操作)を使用して、入力デバイスでネイティブに使用できない文字を生成できるようにするオペレーティングシステムのコンポーネントまたはプログラムである。キーボードのキー数よりも多くの字句を持つ言語では、通常、入力メソッドを使用する必要がある。
もっと簡単に言うと、IME とは、非ラテン文字を入力するために、ラテン文字を使えるようにするアプリケーションのことです。
IME によっては、ラテン文字化 と呼ばれるプロセスによってこれを行います。これは、非ラテン語の音を、最もよく似たラテン語の相当物に音訳することです。例えば、"sake" の日本語表記は sake
で、さけ
とも書き、ローマ字表記では sake と表記されます。IME の役割は、キーボードと入力フィールドの間の仲介役として、私たちが sake と入力すると、キーボードの入力を横取りして、酒 を 酒
またはさけ
(ユーザーが選択)に置き換え、押したキーではなくネイティブ文字を入力してくれるようにすることです。
また、IME にはローマ字を使わないものもあります。最も有名なものの一つである 倉頡輸入法 は、漢字を 康煕部首 に分解し、これらの 康煕部首 を独自の内部 部首 の第二集合にマッチし、最後にこれらの内部 部首 をラテン文字にマッチするようにしているのです。例として、中国語で 酒 を表す単語も 酒
であり、これは 康煕部首 で構成されている 氵
、一
、⼉
、口
および 一
。 倉頡輸入法 は、これらの部首を内部部首 水
、一
、金
、田
と 一
を入力し、これらをラテン文字 emcw
と照合します。つまり、emcw と入力すると、Cangjie はキーボードの入力をインターセプトし、emcw を 酒
に置き換えて、画面にその文字を入力します。
インプットメソッドフレームワーク
ほとんどの IME は、複数の IME を簡単に切り替えられるようにするアプリケーションである インプットメソッドフレームワーク (一般的には IMF と略されます) の一部として動作します。実は、多くの人が知らないうちにラテン文字キーボードの配列 (例えば、英語、スペイン語、ドイツ語など) を切り替えるために毎日使用しているものと同じアプリケーションです。
最も一般的な IMF は IBus (しばしば、GNOME などの GTK ベースの環境で使用されます)、その次に Fcitx5 (ほとんどの場合、KDE などの Qt ベースの環境で使用されます)、あとは Scim、Fcitx、そして Uim です。あまり一般的でないものとしては Gcin、Nimf、Hime があります。[1] さらに、Emacs は、独自の内部 IMF を持っている非常に人気なエディタです。
Wikipedia:List of input methods for Unix platforms も参照してください。
使用可能なインプトメソッドエディターの一覧
次の表は、Arch リポジトリと AUR で現在利用可能なさまざまな言語の IME を示しています。
設定
デスクトップ環境が、インストールされているインプットメソッドフレームワークを利用可能なものとして適切に登録し、ユーザ入力を処理するように割り当てるように設定するには、いくつかの環境変数を設定しなければなりません。
Fcitx5
詳細については、Fcitx5#統合 を参照してください。
Fcitx
fcitx
は fcitx5
に変更しないでください。たとえ、Fcitx5 を使用していたとしてもです。[2]
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