この記事では、Vim / neovim でプラグインを使わずに「f/F/t/Tでの検索を繰り返す」ためのコマンドについて、ご紹介します。
[解答] ; / ,
同じ行の文字を検索する便利なコマンド f/F/t/T ですが、同じ文字を何度も検索(移動)するなら便利なコマンドがあります。
f/F/t/Tでの検索を繰り返すコマンド
(ノーマルモード)
;

こちらは f/F/t/T での検索を繰り返して、右方向に移動するコマンドです。
一度 f/F/t/Tでの検索した後にしか利用できません。
例えば、右に4文字目の h に移動したいと考えた場合、次のように入力します。
fh ; ; ;
fh を繰り返すより少ないステップで移動することができます。
f/F/t/Tでの検索を反対方向に繰り返すコマンド
(ノーマルモード)
,
こちらは f/F/t/T での検索を繰り返して、左方向に移動するコマンドです。
一度 f/F/t/Tでの検索した後にしか利用できませんし、行き過ぎてしまった時にしか使いません。
例えば、右に5文字目の h に移動して、左に1文字目の h に戻りたいと考えた場合、次のように入力します。
fh ; ; ; ; ,
fh を繰り返すより少ないステップで移動することができますが、慌てん坊のための機能とも言えますね。
解説
f/F/t/Tでの検索を覚えるなら必須のコマンドです。
しかし、よく , は <Leadr> キーにキーマッピングされがちでもあります。
その場合は別のキーにマッピングし直して利用するのが良いでしょうが、どのキーに再マッピングし直すかはキー配列にもよるので、オススメするのが難しい所です。
筆者は、<Leader>キーをSpaceに割り当てているので問題が無いのですが…
このVimコマンドの補足情報
- 利用頻度[star rate=4]
- 便利さ[star rate=4]
- 覚え易さ[star rate=5]
関連するVimヘルプ
Vim のヘルプでは下記のように解説されています。
; [count] 回最後の f, t, F, T を繰り返します。cpo-; 参照。
motion – Vim日本語ドキュメント
, [count] 回最後の f, t, F, T を反対方向に繰り返します。cpo-; 参照。
こちらは、Vim上では下記のコマンドでヘルプを確認できます。
:help ; :help ,
ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。
参考になる情報源
このような少ないストロークで移動できるTipsは、こちらの書籍たちが参考になります。
[temp id=3]