0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【脱初心者】最小限の暗記で効率化するVimコマンド集 -移動×操作 によるVimのコマンド体系

Last updated at Posted at 2025-02-16

この記事について

テキストエディタのVimを活用するために、最初に覚えるべきコマンドをまとめました。
Vimはコマンドが多いので苦手という人でも、最小限の暗記で使いこなすことが目標です。

整理の観点は、以下の2つです。

  1. 法則性を理解してから暗記すべきコマンド
    【移動×操作】 という法則で整理しています。
  2. 組み合わせで覚えるべきコマンド
    →「定石」として、操作の流れを紹介しています。

なお、本記事は、【超初心者向け】実務で詰まないためのVim - これだけ覚えればOK! の続編です。

Vimってなに?」、「Vimは全く触ったことがない」という人は、まずは上記記事を読んでみてください。

移動系操作(カーソル移動・スクロール操作)

Vimのコマンドは大量にあるように見えますが、法則性があります。そのため、闇雲な丸暗記はほぼ不要です。

ポイントは、【移動×操作】 という組み合わせで理解することです。丸暗記ではなく、忘れにくい・忘れかけても思い出せる 覚え方をしておくと、学習の負担が軽くなります。

まずは移動の概念から。Vimの移動は、カーソル移動 と、スクロール移動の二種類があります。

移動の種類 覚え方・備考
1文字ずつ h l k j hjklのキーボードを←↓↑→に見立てる
単語単位 b(前の単語) w(次の単語) - - 単語(word)単位で前に、戻るときは、back(b)
行単位(行頭・行末) 0(行頭) $(行末) - - 語呂合わせ「0からはじまり、最後はお金($)」
画面単位(ページスクロール) - - <Ctrl-u>(半ページ上) <Ctrl-d>(半ページ下) スクロールはCtrlを使う。上(up)がu、下(down)がd
ファイル全体(先頭・末尾) - - gg(ファイル先頭) G(ファイル末尾) これはそのまま丸暗記

小さな移動(カーソル・単語・行)から順番に覚えて、大きな移動(画面・ファイル全体)という順番で慣れてきましょう。
これらが使えないと、挿入モード(:i)への切り替え → 「カーソルキーー」で一文字ずつの移動という苦行を毎回の作業で強いられます。

テキストファイルの記述量が多いときほど、大きな移動の必要性が高まります。
スクロールは、コントロールキー:<Ctrl>もセットにする点を忘れないようにしましょう。

操作系コマンド

最低限覚えるべきは、削除コピーペースト変更の4つです。

操作の種類 コマンド 覚え方・備考
削除 (delete) d
コピー (yank) y
ペースト (put) p / P p(カーソルの後ろ)、P(カーソルの前)
変更 (change) c 指定範囲を削除し、挿入モードに入る。削除 (d) + 挿入モード (:i)と同じ

【移動 × 操作】の組み合わせで見えてくる、コマンド操作の広がり

移動と操作の二つを組み合わせることで、複雑な操作も統一的に整理できます。

削除系コマンド

削除の範囲 コマンド 覚え方・備考
単語削除(前方向) dw w(次の単語へ移動)とセット
単語削除(後方向) db b(前の単語へ移動)とセット
行削除 dd d(削除)を2回で「行全体」削除
カーソルから行頭まで削除 d0 0(行頭)まで削除
カーソルから行末まで削除 d$ $(行末)まで削除
カーソル行を含め、先頭まで削除 dgg gg(先頭へ移動)と組み合わせ
カーソル行を含め、末尾まで削除 dG G(末尾へ移動)と組み合わせ

コピー系コマンド

コピーの範囲 コマンド 覚え方・備考
1文字コピー yl y(ヤンク)+ l(右へ移動)で1文字コピー
単語コピー yw y(ヤンク)+ w(次の単語)で単語コピー
行コピー yy y(ヤンク)を2回で「行全体」コピー
カーソルから行頭までコピー y0 0(行頭)までコピー
カーソルから行末までコピー y$ $(行末)までコピー
カーソル行を含め、先頭までコピー ygg gg(先頭へ移動)と組み合わせ
カーソル行を含め、末尾までコピー yG G(末尾へ移動)と組み合わせ

変更系コマンド

変更の範囲 コマンド 覚え方・備考
単語変更(前方向) cw w(次の単語へ移動)とセット
単語変更(後方向) cb b(前の単語へ移動)とセット
行変更 cc c(変更)を2回で「行全体」変更
カーソルから行頭まで変更 c0 0(行頭)まで変更
カーソルから行末まで変更 c$ $(行末)まで変更
カーソル行を含め、先頭まで変更 cgg gg(先頭へ移動)と組み合わせ
カーソル行を含め、末尾まで変更 cG G(末尾へ移動)と組み合わせ

ポイント・注意点

操作+移動という順番でコマンドを組み合わせましょう。
操作コマンドを組み合わせると、行全体という移動範囲になります。(dd,yyなど。)

流れで覚えたほうがいいコマンド「定石」集

実務のユースケースに即してまとめるなら、以下の感じ。
複雑なコマンドの組み合わせも、【移動×操作】 の概念を頭に入れておけば、丸暗記の苦痛が緩和されます。

操作内容 コマンド 覚え方・備考
同じ単語を何回もコピペ ywP yw(単語コピー)→ P(カーソル前にペースト)で増殖
1行を複製(コピー&ペースト) yyp yy(行コピー)→ p(次の行にペースト)
カット&ペースト(行の移動) ddp / P dd(行削除)→ p(次の行に貼る)or P(前の行に貼る)
ファイルのすべてをコピー ggVGy gg(先頭へ移動)+ V(ビジュアルモード)+ G(末尾へ移動)+ y(コピー)
ファイルのすべてを削除 ggdG gg(先頭へ移動)+ dG(末尾まで削除)

追加で、個別に覚えるべきコマンドも少しだけ

以下も頻出です。
【移動×操作】の法則からは漏れますが、これらは覚えるしかありません。

操作内容 コマンド 覚え方・備考
直前の操作を繰り返す . 直前に行った操作(削除・ペースト・置換など)をもう一度実行。例: yy(行コピー)→ p(ペースト)→ . を押せば、さらに同じ行が複製される。
1文字削除 x x はカーソル位置の1文字を削除(Backspace 的な使い方)。3x で3文字削除も可能。

結局、どうやって慣れていくのがいいか?

洗練されたVimの操作に慣れて、使いこなせるようになるには、時間をかけて繰り返し使ってみて、使い込んでいくことが重要だと思います。

挿入モード(:iへの依存を減らそう)

カーソル移動で、挿入モード(:i)→カーソルキー(↑↓→←)という組み合わせに頼ることをやめましょう。これだと一文字ずつの移動になり、作業が非効率になります。日々の作業で極力コマンドモードを使い、

  • 単語(w)・行頭(0)・行末($)などといった単位で、まとめて移動する
  • ファイルの先頭(gg)・ファイルの末尾(G)・スクロール(<Ctrl-d>)などの、大きな移動を活用する

ことを意識するのがコツです。

自分の作業でよく出てくる「定石」を探そう

順番は気にせず、試したいものから試しましょう。また、本記事で紹介した定石(=コマンドの組み合わせ)は、あくまで一例です。

たとえば、テキストの一括編集や文字の検索置換が必要な場面では、Vimは圧倒的に早くて便利だと思います。

コマンド操作だけでシステマチックに作業が進む快適さを、上記記事では解説しています。

自分の作業を振り返って、繰り返し行っている作業があれば、コマンド操作に落とし込みましょう。 それがあなたにとっての「定石」になります。

まとめ・筆者から一言

本記事では、【移動×操作】 の概念を中心に据えて、Vimコマンドの体系的な整理を試みました。

※Vimの基本操作には検索・置換など、ほかにも大事なテクニックがあると思いますが、本記事からは除外しました。

ほかにも、ややこしい(数が多い)Vimのコマンドの楽な覚え方を知っている人がいたら、コメントください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?