vim カーソル位置から行の終わりまでヤンク

"D"と"C"はカーソル位置から行の終わりまでを範囲としますが、"Y"は行全体が範囲となります。ヤンクにはカーソル位置から行の終わりまでを範囲とする操作がないのと、"yy"と動作が重複するので、"Y"のマッピングを変更します。

# カーソル位置から行の終わりまでヤンク
nnoremap Y y$

ヘルプによると、Vi互換のために敢えて"yy"と同じ挙動となっており、マッピングのサンプルも載っています。サンプルではmapを使用していますが、本稿ではnnoremapを使用しています。mapが有効なのは、ノーマル、ビジュアル、選択、オペレータ待機時で、nnoremapが有効なのは、ノーマル時、と有効となるモードの範囲が異なります。vimはモードにより性質が異なるので、何らかのキーマップを設定する場合は基本的にモードを限定して設定することをお勧めします。その上で使っているうちに、別モードでも操作を統一できるなと思ったなら、マッピング定義を広げていけばいいと思います。

ユーザーカスタマイズする場合、その操作範囲を自分に必要な範囲内にできるだけ留める、ということを基本にすると想定外の問題が起こることが少なくなるでしょう。

この記事が気に入ったらサポートをしてみませんか?