意外とハマる&情報が錯綜してる ubuntu でのUS配列キーボードでの日本語入力の件です。
一般的にはxmodmapやxcape、fcitxなどを使った設定方法が挙げられているようですが、18.04では割とシンプルな方法で対応できました。以前のubuntuだと結構苦労したんですけどね。(ご参考まで)
前提条件
- ディストリビューションとバージョン:ubuntu 18.04 LTS
- 日本語入力:mozc+ibus
- キーボード:US配列
- やりたい事:右ALTで日本語入力のon/offがしたい
手順
ibus-mozcインストール
まずibusでmozcを使用するためibus-mozcをインストールします。ibusは入力メソッドの一つ、mozcはいわゆる「Google日本語入力」のことです。マルチプラットフォームがサポートされているのでWindowsやMacでも使っている人が多いのではないかと思います。
$ sudo apt install ibus-mozc
関連パッケージ(mozc-data, mozc-server, mozc-utils-gui)が一緒にインストールされます。ちなみに ubuntu-default-ja をインストールしていれば、ibus-mozcも既にインストールされていると思います。(未確認ですが、dependedとなっていたので…)
mozcキー設定変更
文字入力のプロパティ画面を開きます。
mozcキー設定が表示されます。ここでIME有効化/IME無効化に好きなキーを割り当てるのですが、US配列には存在しないキーを割り当てるようにします。
「存在しないキーを割り当ててしまったら日本語変換できないじゃないか〜」
と思われるかもしれませんが大丈夫です。あとでその存在しないキーをUS配列の右ALTに再割当てしてしまおうというアプローチです。
とりあえずサクッと設定できる&本当に使わないキー(自分にとっては)なので、”Henkan”キーに割り当てることにしました。
モード | 入力キー | コマンド |
変換前入力中 | Henkan | IMEを無効化 |
変換中 | Henkan | IMEを無効化 |
直接入力 | Henkan | IMEを有効化 |
入力文字なし | Henkan | IMEを無効化 |
こんな感じに設定する事で、JIS配列キーボードの変換キーでIMEの有効化/無効化ができるようになります。
US配列キーボードの右ALTに変換キー割り当て
最後にUS配列キーボードの右ALTに変換キーを割り当てます。これによって、右ALTを押すことで変換キーが押されたと判断されてIMEのon/offができる仕組みです。このマッピングにはxcapeを使うと簡単でした。
まずはxcapeのインストール。
$ sudo apt install xcape
次に本当に右ALTでIMEのon/offができるかを試します。
$ xcape -d -e 'Alt_R=Henkan_Mode'
(”Henkan”キーなのに、ここでの指定子は”Henkan_Mode”なんですよねぇ)
この状態でxcapeの動作確認モードに入りますので、右ALTを押して正常にIMEがOn/Offされる事を確認します。確認できたらCtrl+Cなどでxcapeを終了します。
xcapeを自動起動設定
上記までの動作はxcapeが起動している間だけ有効です。よってubuntu起動時にxcapeを起動させる必要があります。もちろん複数起動してしまってはトラブルの元ですので(キーイベントが複数発行されてしまうようで、正しくIMEがOn/Offできません)1インスタンスだけ起動するようにします。
最も簡単なのが「自動起動するプログラム」に追加してしまう事でしょうね。
メニューから「自動起動するアプリケーションの設定」を選び、「自動的に起動するプログラムの追加」画面で「追加」ボタンを押し、後は以下の通りに入力し保存します。
名前 | xcape |
コマンド | xcape -e ‘Alt_R=Henkan_Mode’ |
説明 | IME切り替え |
あとはubuntuを再起動したあと、右ALTを押して正しくIMEがOn/Offされれば完了〜!