コマンド辞典
InfraQuest の Vim コースで覚えられる 146 個のコマンド。キーや説明で検索できます。
第1章 基礎
| h | 左へ 1 マス | Lv1 はじめの一歩 hjkl |
| j | 下へ 1 マス | Lv1 はじめの一歩 hjkl |
| k | 上へ 1 マス | Lv1 はじめの一歩 hjkl |
| l | 右へ 1 マス | Lv1 はじめの一歩 hjkl |
| x | カーソル位置の文字を削除(右側が詰まる) | Lv2 削除と置き換え x X r |
| X | カーソルの左の文字を削除(左の壁も壊せる) | Lv2 削除と置き換え x X r |
| r{文字} | 1 文字を {文字} に置き換え(? の上で r* で星に) | Lv2 削除と置き換え x X r |
| {数字} | コマンドの前に数字で繰り返し(例: 5l, 3dd) | Lv3 カウントで一気に |
| 0 | 行の先頭へ | Lv4 端から端へワープ |
| ^ | 行の最初の空白でない文字へ | Lv4 端から端へワープ |
| $ | 行の末尾へ | Lv4 端から端へワープ |
| gg | ファイルの先頭行へ({数字}gg でその行へ) | Lv4 端から端へワープ |
| G | ファイルの最終行へ({数字}G でその行へ) | Lv4 端から端へワープ |
| dd | 行を削除 | Lv5 行削除と取り消し dd u ~ |
| u | 元に戻す(アンドゥ) | Lv5 行削除と取り消し dd u ~ |
| Ctrl-r | やり直す(リドゥ) | Lv5 行削除と取り消し dd u ~ |
| ~ | 大文字/小文字を切り替えて右へ | Lv5 行削除と取り消し dd u ~ |
| w | 次の単語の先頭へ | Lv7 単語ジャンプ |
| b | 前の単語の先頭へ | Lv7 単語ジャンプ |
| e | 単語の末尾へ | Lv7 単語ジャンプ |
| W | 次の WORD(空白区切り)の先頭へ | Lv7 単語ジャンプ |
| B | 前の WORD の先頭へ | Lv7 単語ジャンプ |
| E | WORD の末尾へ | Lv7 単語ジャンプ |
| ge | 前の単語の末尾へ | Lv8 後ろ向きに単語末尾へ ge gE |
| gE | 前の WORD の末尾へ | Lv8 後ろ向きに単語末尾へ ge gE |
| i | カーソルの前から挿入モード(Esc で戻る) | Lv9 挿入モード |
| a | カーソルの後ろから挿入モード | Lv9 挿入モード |
| I | 行頭から挿入モード | Lv9 挿入モード |
| A | 行末から挿入モード | Lv9 挿入モード |
| o | 下に新しい行を開いて挿入 | Lv9 挿入モード |
| O | 上に新しい行を開いて挿入 | Lv9 挿入モード |
| f{文字} | 行内で右にある {文字} へジャンプ | Lv11 文字検索ワープ |
| F{文字} | 行内で左にある {文字} へジャンプ | Lv11 文字検索ワープ |
| t{文字} | 行内で右にある {文字} の手前へ | Lv11 文字検索ワープ |
| T{文字} | 行内で左にある {文字} の手前へ | Lv11 文字検索ワープ |
| ; | 直前の f/t/F/T を繰り返す | Lv11 文字検索ワープ |
| , | 直前の f/t/F/T を逆向きに繰り返す | Lv11 文字検索ワープ |
| d{移動} | 移動した範囲を削除(dw, d$, dj, dt) など) | Lv13 オペレータ d |
| D | 行末まで削除(d$ と同じ) | Lv13 オペレータ d |
| } | 次の空行(段落の終わり)へ | Lv15 段落と括弧 } { % |
| { | 前の空行(段落の始まり)へ | Lv15 段落と括弧 } { % |
| % | 対応する括弧 ( ) [ ] { } へ | Lv15 段落と括弧 } { % |
| H | 先頭行へ({数字}H で上から N 行目) | Lv16 上中下へジャンプ H M L |
| M | 中央の行へ | Lv16 上中下へジャンプ H M L |
| L | 最終行へ({数字}L で下から N 行目) | Lv16 上中下へジャンプ H M L |
| + | 次の行の最初の文字へ(Enter も同じ) | Lv17 行ジャンプ + - _ | |
| - | 前の行の最初の文字へ | Lv17 行ジャンプ + - _ | |
| _ | 今の行の最初の文字へ(d_ で行削除) | Lv17 行ジャンプ + - _ | |
| {数字}| | N 列目へ | Lv17 行ジャンプ + - _ | |
| Enter | 次の行の最初の文字へ | Lv17 行ジャンプ + - _ | |
| c{移動} | 範囲を削除して挿入モード(cw, c$ など) | Lv18 オペレータ c |
| cc | 行の中身を消して挿入モード | Lv18 オペレータ c |
| C | 行末まで消して挿入モード | Lv18 オペレータ c |
| s | 1 文字消して挿入モード | Lv18 オペレータ c |
| S | 行を消して挿入モード(cc と同じ) | Lv18 オペレータ c |
| y{移動} | 範囲をコピー(ヤンク) | Lv20 ヤンク & プット |
| yy | 行をコピー | Lv20 ヤンク & プット |
| p | カーソルの後ろ(下の行)に貼り付け | Lv20 ヤンク & プット |
| P | カーソルの前(上の行)に貼り付け | Lv20 ヤンク & プット |
| Y | 行をヤンク(yy と同じ) | Lv21 Y とヤンクの練習 |
| iw | 単語(オペレータの後に。例: ciw, diw) | Lv22 テキストオブジェクト |
| aw | 単語 + 後ろの空白(例: daw) | Lv22 テキストオブジェクト |
| i" | "…" の内側(例: ci") | Lv22 テキストオブジェクト |
| a" | "…" をクォートごと | Lv22 テキストオブジェクト |
| i' | '…' の内側 | Lv22 テキストオブジェクト |
| i( / ib | (…) の内側(例: di() | Lv22 テキストオブジェクト |
| a( / ab | (…) を括弧ごと | Lv22 テキストオブジェクト |
| i{ / iB | {…} の内側 | Lv22 テキストオブジェクト |
| i[ | […] の内側 | Lv22 テキストオブジェクト |
| i< | <…> の内側 | Lv22 テキストオブジェクト |
| iW | WORD(空白区切り) | Lv23 テキストオブジェクト応用 |
| aW | WORD + 空白 | Lv23 テキストオブジェクト応用 |
| a' | '…' をクォートごと | Lv23 テキストオブジェクト応用 |
| i` | `…` の内側 | Lv23 テキストオブジェクト応用 |
| a` | `…` をクォートごと | Lv23 テキストオブジェクト応用 |
| a{ / aB | {…} を括弧ごと | Lv23 テキストオブジェクト応用 |
| a[ | […] を括弧ごと | Lv23 テキストオブジェクト応用 |
| a< | <…> を括弧ごと | Lv23 テキストオブジェクト応用 |
| it | <tag>…</tag> の内側 | Lv24 タグのオブジェクト it at |
| at | タグごと | Lv24 タグのオブジェクト it at |
| ip | 段落(空行で区切られた行のまとまり) | Lv25 段落オブジェクト ip ap |
| ap | 段落 + 後ろの空行 | Lv25 段落オブジェクト ip ap |
| . | 直前の変更を繰り返す(ドット) | Lv26 ドットリピート & 連結 |
| J | 下の行を連結する | Lv26 ドットリピート & 連結 |
| gJ | 空白を入れずに行を連結 | Lv27 空白なしで連結 gJ |
第2章 変換
| g~{移動} | 範囲の大文字小文字を反転 | Lv29 大文字小文字を反転 g~ |
| g~~ | 行の大文字小文字を反転 | Lv29 大文字小文字を反転 g~ |
| gu{移動} | 範囲を小文字に | Lv30 大文字・小文字に揃える gu gU |
| gU{移動} | 範囲を大文字に | Lv30 大文字・小文字に揃える gu gU |
| guu | 行を小文字に | Lv30 大文字・小文字に揃える gu gU |
| gUU | 行を大文字に | Lv30 大文字・小文字に揃える gu gU |
| >{移動} | 範囲の行をインデント | Lv31 インデント > < |
| <{移動} | 範囲の行のインデントを減らす | Lv31 インデント > < |
| >> | 行をインデント(空白 2 つ) | Lv31 インデント > < |
| << | 行のインデントを減らす | Lv31 インデント > < |
| Ctrl-a | カーソル位置か右の数値を +1(カウントで +N) | Lv32 数値の増減 Ctrl-a Ctrl-x |
| Ctrl-x | 数値を -1 | Lv32 数値の増減 Ctrl-a Ctrl-x |
| R | 置換モード(上書き入力。Backspace で元に戻る) | Lv33 置換モード R |
第3章 ビジュアルモード
| v | 文字単位のビジュアルモード(移動で選択、Esc で抜ける) | Lv35 ビジュアルモード v |
| v → d | 選択範囲を削除 | Lv35 ビジュアルモード v |
| v → x | 選択範囲を削除(d と同じ) | Lv35 ビジュアルモード v |
| v → y | 選択範囲をヤンク | Lv35 ビジュアルモード v |
| v → c | 選択範囲を消して挿入 | Lv35 ビジュアルモード v |
| v → s | 選択範囲を消して挿入(c と同じ) | Lv35 ビジュアルモード v |
| v → o | 選択の端を入れ替える | Lv35 ビジュアルモード v |
| V | 行単位のビジュアルモード | Lv36 行ビジュアル V |
| v → D | 選択した行を削除 | Lv36 行ビジュアル V |
| v → X | 選択した行を削除 | Lv36 行ビジュアル V |
| v → Y | 選択した行をヤンク | Lv36 行ビジュアル V |
| v → C | 選択した行を書き直す | Lv36 行ビジュアル V |
| v → S | 選択した行を書き直す | Lv36 行ビジュアル V |
| v → R | 選択した行を書き直す | Lv36 行ビジュアル V |
| v → J | 選択した行を連結 | Lv36 行ビジュアル V |
| v → ~ | 選択範囲の大文字小文字を反転 | Lv37 ビジュアルで大文字小文字 |
| v → u | 選択範囲を小文字に | Lv37 ビジュアルで大文字小文字 |
| v → U | 選択範囲を大文字に | Lv37 ビジュアルで大文字小文字 |
| v → gu | 選択範囲を小文字に | Lv37 ビジュアルで大文字小文字 |
| v → gU | 選択範囲を大文字に | Lv37 ビジュアルで大文字小文字 |
| v → g~ | 選択範囲を反転 | Lv37 ビジュアルで大文字小文字 |
| v → > | 選択した行をインデント | Lv38 ビジュアルでインデント |
| v → < | 選択した行のインデントを減らす | Lv38 ビジュアルでインデント |
| v → r{文字} | 選択範囲をすべて {文字} に | Lv39 ビジュアルで置換と貼り付け |
| v → p | 選択範囲をレジスタの内容で置き換え | Lv39 ビジュアルで置換と貼り付け |
| v → P | 選択範囲をレジスタの内容で置き換え | Lv39 ビジュアルで置換と貼り付け |
| gv | 直前の選択範囲をもう一度選ぶ | Lv40 選択し直し gv |
| Ctrl-v | 矩形(ブロック)ビジュアルモード | Lv42 矩形ビジュアル Ctrl-v |
| Ctrl-v → I | 矩形の左端に一括挿入 | Lv43 矩形で挿入 I A |
| Ctrl-v → A | 矩形の右端に一括追加($A で各行末) | Lv43 矩形で挿入 I A |
| v → Ctrl-a | 選択した各行の数値を +1(カウントで +N) | Lv44 矩形編集と連番 |
| v → Ctrl-x | 選択した各行の数値を -1 | Lv44 矩形編集と連番 |
| v → g Ctrl-a | 選択した行の数値を +1, +2, +3 … の連番に | Lv44 矩形編集と連番 |
| v → g Ctrl-x | 選択した行の数値を -1, -2, -3 … に | Lv44 矩形編集と連番 |
第4章 検索とマーク
| /{パターン}Enter | 前方検索(d/foo のように範囲にも) | Lv46 前方検索 / |
| ?{パターン}Enter | 後方検索 | Lv47 後方検索 ? |
| n | 次の検索結果へ | Lv48 次の候補 n N |
| N | 前の検索結果へ | Lv48 次の候補 n N |
| * | カーソル下の単語を前方検索 | Lv49 単語検索 * # |
| # | カーソル下の単語を後方検索 | Lv49 単語検索 * # |
| gn | 次の検索結果(cgn で置換して . で繰り返し) | Lv51 検索結果を操作 gn |
| m{a-z} | 現在位置にマークを付ける | Lv52 マーク m ` ' |
| `{a-z} | マークの位置へ | Lv52 マーク m ` ' |
| '{a-z} | マークの行へ | Lv52 マーク m ` ' |
第5章 レジスタとマクロ
| "{a-z} | レジスタを指定("ayy "ap、大文字で追記、"0 "_ も) | Lv54 名前付きレジスタ "a |
| q{a-z} | マクロの記録開始(もう一度 q で終了) | Lv58 マクロ q @ |
| @{a-z} | マクロを再生(@@ で直前のマクロ、3@a で 3 回) | Lv58 マクロ q @ |
第6章 Ex コマンド
| : | コマンドライン(:s :g :normal :sort など) | Lv62 コマンドライン : |