この記事では、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コマンドの補足情報
- 利用頻度
- 便利さ
- 覚え易さ
関連するVimヘルプ
Vim のヘルプでは下記のように解説されています。
; [count] 回最後の f, t, F, T を繰り返します。cpo-; 参照。
motion – Vim日本語ドキュメント
, [count] 回最後の f, t, F, T を反対方向に繰り返します。cpo-; 参照。
こちらは、Vim上では下記のコマンドでヘルプを確認できます。
:help ; :help ,
ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。
参考になる情報源
このような少ないストロークで移動できるTipsは、こちらの書籍たちが参考になります。
Vim/neovim関連の書籍で、もっとも評判が良くてバイブルと呼んでる人もいる一冊です。Vim/neovimのバージョンに依存しない沢山のTips形式で、その表題通りに「思考のスピードで編集」できるようになるノウハウが詰まっています。その高い評価は Amazon のレビューからも分かる通りです。Vimmer なら必ず一度は読んでおいて間違いありません。
こちらもVim関連の書籍で評価が高い書籍の一冊です。vim-jpで見かける上級Vimmer(Vimサポーターズ)の皆様による、Vimを実践で使ったノウハウからプラグイン関連の情報が詰まっています。日本の Vim界隈を知る上でも是非一読しておきたい一冊です。
Vim/neovim の設定ファイルやプラグインなど、Vim script に関するノウハウがいくつも詰まった一冊です。日本で Vim Script をここまで深く解説している唯一の書籍と言えます。Vim力を伸ばしたいと考えるなら、絶対に避けては通れない書籍でしょう。