IBus
IBus ("Intelligent Input Bus") は様々な言語の文字を入力するためのシステムである、インプットメソッドフレームワークのひとつです。IBus は Fcitx, SCIM, UIM と同等の機能を持っています。
目次
インストール
ibus パッケージをインストールしてください。
さらに、Qt アプリケーションで IBus を有効にするために、ibus-qtAUR ライブラリをインストールしましょう。
統合
少なくとも以下の 環境変数 を設定してください。
/etc/environment
GTK_IM_MODULE=ibus QT_IM_MODULE=ibus XMODIFIERS=@im=ibus
ユーザーログイン時に IBus を起動するには、以下のコマンドで 自動起動 エントリを作成します。
ibus-daemon -drxR
次のログイン時に、IBus はユーザーセッションと一緒に起動します。
設定方法
システムに非ラテン語の言語をサポートするためのヘルプは ロケール を参照してください。
利用可能な非ラテン語フォントの非網羅的なリストについては フォント#ラテン文字 を参照してください。
GNOME
GNOME はデフォルトで IBus を使用しているので、設定 > キーボード > 入力ソース で好きな言語のキーボードレイアウトを追加することができます。
その他のデスクトップ環境
IBus の環境設定ウィンドウを起動するには、以下の方法があります。
- IBus のトレイアイコンを右クリックし、Preferencesを選択します。
- GUI アプリケーションの IBus Preferences を見つけて起動するか、または
- ターミナルでコマンド
ibus-setup
を実行する。
ここで注目すべき点は、次のインプットメソッド (デスクトップ環境が提供するデフォルトのショートカットの代わりに使用したいもの) のキーボードショートカットと、異なるキーボードレイアウトを追加または削除できる インプットメソッド タブ (デスクトップ環境のデフォルトレイアウトマネージャの代わりに実行したいもの) です。
ヒントとテクニック
絵文字入力
IBus は絵文字アイコンの入力をサポートしています。Ctrl+.
または Ctrl+;
と入力すると、入力プロンプトが下線付きの e 文字に変わります。次に、必要な絵文字の記号または名前 (例 :) または face) を入力し、Space
を押してレンダリングします。結果に満足したら、Enter
を押して送信し、絵文字入力モードを終了するか、もう一度 Space
を押してダイアログを開き、目的の絵文字をさらにカスタマイズできます。
詳細については、ibus-emoji(7) を参照してください。
Unicode 入力
IBus は複雑な Unicode 文字の入力をサポートしています。 Ctrl+Shift+u
と入力すると、入力プロンプトが下線付きの u 文字に変わります。次に、必要な Unicode 文字のコードを入力し、Space
または Enter
を押して、レンダリングして送信します。
トレイアイコンの色
デフォルトでは、IBus は濃い青色を使用して、現在アクティブなレイアウトの言語記号を表示します(例:EN)色の値は gsettings schema に保存されているため、変更する場合は次のコマンドを実行できます。
$ gsettings set org.freedesktop.ibus.panel xkb-icon-rgba 'COLOR'
文字列 COLOR は、次のガイドラインに準拠している必要があります。
The RGBA value can be 1. a color name from X11, 2. a hex value in form '#rrggbb' where 'r', 'g' and 'b' are hex digits of the red, green, and blue, 3. a RGB color in form 'rgb(r,g,b)' or 4. a RGBA color in form 'rgba(r,g,b,a)' where 'r', 'g', and 'b' are either integers in the range 0 to 255 or percentage values in the range 0% to 100%, and 'a' is a floating point value in the range 0 to 1 of the alpha.
レイアウトスイッチャーの表示遅延
次の入力方法 ホットキーを押すと、IBus はレイアウトスイッチを示す小さなダイアログを表示します。デフォルトでは、このダイアログはキーを押してから400ミリ秒後に表示されますが、この値はユーザーが変更できます。興味深い選択肢として、ダイアログをすぐに表示するための 0 または負の値(-1 など)があります。ウィンドウをまったく表示せずにレイアウトを切り替える (2つのレイアウトのみを使用し、一方から他方に切り替える場合に便利な場合があります。)
値は gsettings schema に保存されるため、変更する場合は次のコマンドを実行できます。
$ gsettings set org.freedesktop.ibus.general switcher-delay-time 'VALUE'
現在保存されている値を表示するには、次のコマンドを実行します。
$ gsettings get org.freedesktop.ibus.general switcher-delay-time
文字列 'VALUE' は、次のガイドラインに準拠している必要があります。
Set popup delay milliseconds to show IME switcher window. The default is 400. 0 = Show the window immediately. 0 < Delay milliseconds. 0 > Do not show the window and switch prev/next engines.
修飾キーの組み合わせを使用してレイアウトを切り替える
何らかの理由で、IBus 設定 GUI では、修飾キーの組み合わせのサブセット(Alt+Shift_R
など)をレイアウト切り替えホットキーとして使用できません。ただし、IBus はホットキーを文字列として gsettings schema に保存するため、その文字列を直接編集することで、このような組み合わせを引き続き使用できます。
$ gsettings set org.freedesktop.ibus.general.hotkey triggers "['VALUE']"
文字列 'VALUE'
は、IBus が認識できる形式で記述された有効な修飾キーの組み合わせである必要があります。AltShift_R
Pinyin の使用方法
ibus-pinyin を使っている場合
- まず入力したい文字のピンイン (sans tones) を入力してください。
Up
やDown
を繰り返し押して文字を選択します (必要なら次のページに進みます)。Space
を押して文字を使います。PageUp
やPageDown
を使ってページをスクロールでき、1-5 の数字キーを使うことで必要な文字を選択します。- 一度に複数の文字を入力して単語・句を書けます (例: "zhongwen" で "中文" を入力)。ibus-pinyin は頻繁に入力した文字を記憶し、あなたのタイピングプロファイルにあわせてサジェストを作成します。
トラブルシューティング
Plasma 5
Plasma 5 アプリケーションは IBus を使っている場合に Mozc から日本語の (つまり直接入力ではない) 文章を入力できないことがあります。この問題を解決するには ~/.xprofile
に以下を追加してから X ユーザーセッションを再起動してください:
export QT_IM_MODULE=ibus
Kimpanel
IBus のメインインターフェイスは現在 GTK+ でのみ利用可能ですが、Kimpanel はネイティブの Qt/KDE インプットインターフェイスを提供しています。Kimpanel は Plasma 5 に付属していますが、パネルと通信を行うために次のコマンドで IBus を起動する必要があります:
$ ibus-daemon --panel=/usr/lib/kimpanel-ibus-panel
この方法で ibus を起動するメニューエントリを作るには、下のファイルを ~/.local/share/applications/ibus-kimpanel.desktop
に保存してください:
[Desktop Entry] Encoding=UTF-8 Name=IBus (KIMPanel) GenericName=Input Method Framework Comment=Start IBus Input Method Framework Exec=ibus-daemon --panel=/usr/lib/kimpanel-ibus-panel Icon=ibus Terminal=false Type=Application Categories=System;Utility; X-GNOME-Autostart-Phase=Applications X-GNOME-AutoRestart=false X-GNOME-Autostart-Notify=true X-KDE-autostart-after=panel
これで KDE に ibus を自動起動させたり、Kimpanel でインプットメソッドとして ibus を設定することができるようになり、kimpanel からクリックすることで手動で起動できます。どちらにしても、アプリケーションの選択ダイアログでは Utility/Ibus (Kimpanel) を選択してください。
rxvt-unicode
IBus と rxvt-unicode の問題が発生した場合、以下の手順を踏むことで解決できます。.
以下を ~/.Xresources
に追加してください (これは必要ないかもしれません):
URxvt.inputMethod: ibus URxvt.preeditType: OverTheSpot
そして次のコマンドで IBus を起動してください:
$ ibus-daemon --xim
ibus-daemon を自動的に起動させていて (例: ~/.xinitrc
や ~/.xsession
)、--xim
オプションを使わずに ibus-daemon &
を実行している場合は、新しいコマンドをテストするために既に実行中のプロセスを kill してください。
GTK+ アプリケーション
GTK アプリケーションでインプットメソッドを使うと問題がおこることがあります。おそらくそれは gtk.immodules ファイルが見つけられないことが原因です。 問題を修正するには、GTK+2 なら:
export GTK_IM_MODULE_FILE=/etc/gtk-2.0/gtk.immodules
GTK+3 なら:
export GTK_IM_MODULE_FILE=/usr/lib/gtk-3.0/3.0.0/immodules.cache
を $HOME/.bashrc
に追加することで問題を修正できます。
中国語の入力
中国語の入力に問題が起こるときは、ロケールの設定を確認してください。例えば Hong Kong なら、LANG=zh_HK.utf8 を export してください。
GNOME で ibus を起動するには、以下を ~/.profile
に加えて GNOME を再起動してください。
export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULE=ibus ibus-daemon -d -x
このバグに関する詳しい説明は このページ を参照してください。
LibreOffice
IBus がロードされているのに LibreOffice にインプットウィンドウが出ない場合、以下を ~/.bashrc
に追加してください:
export XMODIFIERS=@im=ibus
それから、ibus を --xim -d
で起動する必要があります。例えば、以下を ~/.xinitrc
に追加してください:
ibus-daemon --xim -d
ただしこの修正を適用するにはターミナルから LibreOffice を起動しなくてはなりません。
KDE を使っていて上述の修正がきかない場合、libreoffice-still をインストールして以下の行を ~/.xprofile
に追加してください。ただし LibreOffice が GTK2 モードで起動するようになります:
export OOO_FORCE_DESKTOP="gnome"
後者の修正では LibreOffice をターミナル以外からも起動できます。