cafegale(LeafCage備忘録)

LeafCage備忘録(はてなダイアリー)と統一しました。

vimのメタキーを何にするか。

vimが公式に用意しているメタキーは2種類あって、
と、だが、
これらはデフォルトではどちらも'\'に設定されており、実質的には1つである。
しかし、'\'というキーはものすごく押しづらい。
ユーザーが設定する、頻繁に使うであろうキーとしては不適切である。

私が見てきた中で、キーを','に変更している人は比較的多い印象がある。ヘルプの中で変更例としてあげられているからだ。私も一時期','にしていた。
(ちなみには、それを利用するプラグインが少ないせいもあってか、あまり使われていないようだ。)

しかし、','は本当にメタキーとして適切なのか?
確かに押しやすくはある。しかしそもそもvimの移動コマンドはhjklだ。
(次の○○、前の○○)というコマンドを定義したいとき、「メタキー+j、メタキー+k」とするのが自然だ。
しかし右手側にメタキーがあると、同手連続になって撃ちづらくはないか。
また、unix体系のコマンドは'n'が次、'p'が前であるが、これを採用すると、',n'',p'になって、特に',p'が打ちづらい。

このことを考えると、メタキーは左手側が相応しい。しかし、左手側のキーで潰すに値するキーがなかなかなくて苦しいところだ。't'を一時期試したが、't'は以外と遠いキーなので、頻繁に使用するに相応しくない。
's'や'c'を潰している人がいた。確かに、削除コマンドに'x'や'd'があるので、それをメインに使っていれば's''c'は不要だ。しかし私はそれらのキーをわりと多く使い、すでに慣れているので、一時期's'をメタキーにしたけれど、長続きはしなかった。

を潰している人もいる。
は左手親指で打つことができ、メタキーとして理想的だ。
私はすでにには'za'(折り畳みの開閉)を登録していた。折り畳みの開閉は、設定すると便利なコマンドなので、子のコマンドは残しておきたかった。
それもできるだけ1動作で動かせるように。
そこでこのコマンドはに引っ越しした。こうして、を左手のメタキーとすることにした。

私は現在、メタキーを3種類使い分けている。
兼自分で定義した、特に連続で使うことが多いコマンド。
'\'を
','を自分で定義した、使用頻度は高いけど連続で使うことは少ない機能。

結局を'\'に持ってきてしまった。だがまぁ弁明させてくれ。
は主にプラグインが定義する機能だが、そういったものは使う場面が限られていることに気付いた。
そこまで使わないのならは僻地でいいし、もしもよく使うと判明したなら、そのときリマップすればいい。
それに、は、大抵のプラグインが使うためにコマンドのバッティングが起きる可能性が高く、信用ができない。

それにプラグインによって勝手にバインドが埋められているせいで、自分でコマンドを作るときにいちいちバッティングしているかどうか調べなければならない。
それを考えるとというのはむしろ僻地に追いやって、覚えているコマンドだけ限定的に使うべきのような気がしてきたからだ。

本当はもっと打ちやすいキーが欲しいが、今のところ、メタキーは、','、'\'に落ち着いている。