追記: @ssh0 さんがもっと掘り下げたバージョンを書くださいました。すばらしい!
Vimでの日本語編集がはかどるキーマッピング - Qiita
そもそも日本語をvimで書くな、という声もありますが、ひらがな・カタカナや漢字との境を「単語の境(wとかを押した時に止まる箇所)」として解釈してくれたりする(設定によるのかも)ので、個人的には十分アリだと思ってます。
ただ、日本語入力をONにしたままコマンドモードのコマンドを実行しようとして ありゃりゃ ってなることがしばしばあるので、簡単な改善策としてこんなキーバインドを設定してみました。
まだ試してませんのでホントに心地いいかはわかりません。あしからず。
"ひらがな・カタカナ・全角アルファベットによるコマンド入力を有効にする
noremap あ a
noremap い i
noremap う u
noremap え e
noremap お o
noremap ア a
noremap イ i
noremap ウ u
noremap エ e
noremap オ o
"" こういうRubyで出した: ('a'..'z').each {|c| puts "noremap #{(c.ord + 65248).chr(Encoding::UTF_8)} #{c}" }
noremap a a
noremap b b
noremap c c
noremap d d
noremap e e
noremap f f
noremap g g
noremap h h
noremap i i
noremap j j
noremap k k
noremap l l
noremap m m
noremap n n
noremap o o
noremap p p
noremap q q
noremap r r
noremap s s
noremap t t
noremap u u
noremap v v
noremap w w
noremap x x
noremap y y
noremap z z
やっぱり、連打しちゃった時のために「っっっh」を「hを4回押した」って解釈してくれたりするようなプラグインを作らないとあんまり役に立たなそう。
気が向いたら作ろう。
追記: 勢い余って作ってみたけど何故かうまく動かないorz