Vimの行ナビゲーション — 0, ^, $, と行ジャンプ

Vimで0、^、$、gg、G、行番号ジャンプを使った行内・行間のナビゲーション。高速な行レベルのカーソル位置決めに必須のコマンド。

Navigation

詳細な説明

行内の移動

Vimは現在の行内の特定の位置にジャンプするための複数の方法を提供します:

キー 位置
0 最初の列(絶対的な行頭)
^ 最初の非空白文字
$ 行末
g_ 最後の非空白文字

行ジャンプ

コマンド アクション
gg ファイルの最初の行に移動
G ファイルの最後の行に移動
{n}G n行目に移動(例:42G で42行目に移動)
:{n} 上と同じ、コマンドラインモードを使用

0 と ^ の違い

0 はインデントに関係なく常に1列目に移動します。^ は最初の非空白文字に移動します。インデントのあるコードでは、先頭の空白をスキップする ^ が通常必要なものです。

オペレーターとの組み合わせ

行ナビゲーションキーはオペレーターと美しく組み合わさります:

  • d$ — カーソルから行末まで削除
  • c^ — カーソルから最初の非空白文字まで変更
  • y0 — カーソルから行頭までヤンク
  • dG — 現在の行からファイル末尾まで削除
  • ygg — 現在の行からファイル先頭までヤンク

これらのオペレーター+モーションの組み合わせがVimの編集を非常に強力にしています。

ユースケース

行の先頭や末尾にすばやくカーソルを移動したり、デバッグや編集時に特定の行番号にジャンプする必要がある場合。

試してみる — Vim Cheat Sheet

フルツールを開く