コマンド辞典

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 単語ジャンプ
EWORD の末尾へ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
s1 文字消して挿入モード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 テキストオブジェクト
iWWORD(空白区切り)Lv23 テキストオブジェクト応用
aWWORD + 空白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数値を -1Lv32 数値の増減 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選択した各行の数値を -1Lv44 矩形編集と連番
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 コマンドライン :