← Vim道場

さっきいた場所に戻る

G や検索でファイルの別の場所を見に行ったあと、元いた行に戻るのに苦労した経験はないでしょうか。Vimはジャンプした場所を覚えていて、Ctrl-o で順に引き返せます。

第5章 整えて探すレッスン 26 / 33

何が「ジャンプ」に数えられるか

記録されるのは G gg / ? n N % H M L ' ` のように「遠くへ飛ぶ」コマンドだけです。jw のような1歩ずつの移動は記録されないので、履歴が細切れになりません。

本物のVimでは :jumps で履歴の一覧を確認できます。ファイルをまたいでも記録されるので、別のファイルへ定義を見に行ってから Ctrl-o で元のファイルの元の行に戻る、という使い方ができます。

似ているが別物の記録

Ctrl-o が「移動の履歴」なのに対し、g; は「変更した場所の履歴」をさかのぼります。また ``(バッククォート2つ)は、直前にジャンプした位置との間を行き来します。見に行って戻るだけなら `` のほうが速いこともあります。

このレッスンで扱うキー

キー動き
Ctrl-oさっきいた場所へ戻る
Ctrl-i戻る前の場所へ進む

関連記事

レッスン一覧へ戻るキーの逆引き一覧検定を受ける