ime_controller.js IME(Input Method Editor)を制御する
今日は「Vimperatorプラグインime_controller.jsをみんなにすすめよう」という話。
日本語環境では当然のように日本語を入力する。日本語は英語とは異なり文字数が非常に多いので、キーと文字とを一対一に対応付けることができない。そこで日本語の入力にはInput Method Editor(以下、IME)を使う。
VimperatorはIMEを考慮していないため、日本語を扱うユーザには違和感のある動作がままある。「くふんを狙え」へのアクセスを例に見ていこう。
まずは:open くふんと入力する。
これで、既定の検索エンジンに設定('defsearch')してあるGoogleから「くふん」を検索する準備ができた。この際、IMEをオンにしたことに注意してほしい。
そして<CR>を入力し検索を行う。
検索結果が表示される。画像からも分かるように「くふんを狙え」は先頭にある。
次はQuick Hintモード*1を使って「くふんを狙え」にアクセスする。fと入力する。
これでHintが表示される。「くふんを狙え」は15番であることが分かる。
次に15と入力する。
落胆である。IMEが邪魔をしてHintの入力として解釈されていないことが分かる。これでは一旦IMEをオフにして、Hintを表示するところからやりなおしである。
IMEを考慮していれば、このような場面では間違いなく自動でIMEを無効にしてくれる。Hintには数字しか表示されない*2のだから、IMEは無効で良いのだ。
そこでime_controller.jsである。
ime_controller.jsはIMEを制御する。つまり必要に応じてIMEを無効にすることができるのだ。これを使えば、Hintやコマンドなどの入力でのIMEにイライラすることもない。
ime_controller.jsは、見た目にこそ大きな変化はないが、使用感において大きな変化をもたらす。使っていないなら、ぜひ使ってみてほしい。
参考
- ime_controller.js: http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/ime_controller.js
- Vimperatorプラグインのime_controller.jsが地味に便利 - retlet.net
あと、あまり関係がない話。この新しい「くふんを狙え(id:krogue)」にアクセスしたい場合は「くふん」ではなく「くふん krogue」で検索しないといけない。今の状況からサイト名をつけるなら「『くふんを狙え』を狙え」になる。繰り返しになるが、本文とはあまり関係がない。
肝心のime_controllerへのリンクを貼り忘れた。「参考」を追記した。
*1:モード名はQuick Hintモードでいいのだろうか。Hit-a-Hintのような機能と私は呼んでいた。
*2:既定動作