私は数年間 vim を使用しており、現在の行の上に挿入する、行全体を削除するなどの単純なタスクを実行するのがいかに簡単かが気に入っています。
私が絶対に克服できなかった vim の問題の 1 つは、キーを学習した後でも、マウスの動きと比較して、ナビゲーションにどれだけの思考が必要かということでした。コマンドの前に数字を使用するなどの動きのいくつかは知って%, ^, $, f/F, t/T
いますが、それらを使用するにはより多くの労力が必要であり、ワークフローが混乱するように感じます.
たとえば、この URL の「/many/sections/」を削除する必要があり、カーソルが「really」という単語の途中にある場合:
http://this/is/a/real|ly/long/url/with/many/sections/
マウスを使用すると、削除するセクションをクリックして選択し、削除を押すだけで、考える力は必要ありません。
これを vim で行うと、次のように考えていることに気づきます。まず$
、カーソルを最後に移動します。次に、これらのセクションを削除して、「/」を区切り記号として使用できるようにします。次に、「/」の何個を元に戻したいかをカウントする必要があります。それは 2 であり、逆方向に検索する必要があるためF
、 ではなくf
です。したがって、コマンドは$d2F/
.
または、「m」をカーソルのランドマークとして使用し、そこから最後まで削除することもできますが、使用する文字を探すために URL をスキャンする必要があります。また、別の m がある場合は、;
繰り返し押すか、カウントを開始する必要があります。
これは、キーボードから手を離すのが遅れたとしても、マウスを使用するよりもはるかに難しいようです。これは、単語や行を数えたり、区切り記号を探したりするのに多くの時間を費やしている複数の行を選択する場合に特に当てはまります。
また、マウスを使用すると、選択しようとしているものを正確に特定できるのに対し、f
代わりにまたはその逆を使用したため、コマンドが余分な区切り文字を削除する場合と削除しない場合があります。t