Vimはたくさんのコマンドがあって、すべて覚えるのはとても大変です。
そこで今回は、Vimでこれだけ覚えれば、かなり便利に使えるようになるコマンドを一覧にしました。
コマンドを覚えれば覚えるほど、作業スピードはアップします。
しっかり覚えて、入力の速さを極めましょう。
新規作成、保存、終了
まずは新規作成のコマンドです。
control + wn | 新しいウィンドウを開いて新規作成 |
---|
また、Vimでファイルを保存したり閉じたりするには、:w
や:q
、:wq
などを使うことが多いかもしれません。
ウィンドウを閉じてしまう場合、以下のコマンドを使うと、もっとかんたんに行なうことができます。
ただ、ウィンドウを閉じてしまうので、間違えるともう元に戻せません。ご注意ください。
モードの切り替え
つづいて、モードの切り替えコマンドです。
挿入モードに切り替えるときは、Insertのiと覚えてしまいがちですが、意外とaを使った方が、Vimの動き的にしっくりくる気がします。
esc | ノーマルモードに戻る |
---|---|
control + [ | ノーマルモードに戻る(escと同じ) |
a | 挿入モードに切り替え(カーソルの後ろから) |
i | 挿入モードに切り替え(カーソルの前から) |
o | 挿入モードに切り替え(次の行から) |
A | 挿入モードに切り替え(現在の行の最後から) |
I(大文字のi) | 挿入モードに切り替え(現在の行の最初から) |
O(大文字のo) | 挿入モードに切り替え(現在の行から) |
cc | カーソルのある行を削除して、挿入モードに切り替え |
S | カーソルのある行を削除して、挿入モードに切り替え(c cと同じ) |
C | その行の、カーソルの後ろの文字を全て削除して、挿入モードに切り替え |
v | ビジュアルモードに切り替え |
V | ビジュアルモード(行選択)に切り替え |
control + v | ビジュアルモード(矩形選択)に切り替え |
: | コマンドラインモードに切り替え |
/ | コマンドラインモード(検索)に切り替え |
カーソル移動
つづいて、カーソル移動のコマンドです。
マウスを使わない、最強のVimmerを目指すならば、絶対に覚えておきたいコマンドです。
h,j,k,l | カーソル移動 |
---|---|
gg | 最初の行の先頭に、カーソルを移動 |
G | 最後の行の先頭に、カーソルを移動 |
3gg | 3行目に移動(数値は変更可能) |
3G | 3行目に移動(数値は変更可能。3ggと同じ) |
w | 次の単語や記号の先頭に、カーソルを移動 |
b | 前の単語や記号の先頭に、カーソルを移動 |
e | 次の単語や記号の最後に、カーソルを移動 |
ge | 前の単語や記号の最後に、カーソルを移動 |
W | 次の改行やスペースで区切られた部分の先頭に、カーソルを移動 |
B | 前の改行やスペースで区切られた部分の先頭に、カーソルを移動 |
E | 次の改行やスペースで区切られた部分の最後に、カーソルを移動 |
gE | 前の改行やスペースで区切られた部分の最後に、カーソルを移動 |
0(数字のゼロ) | 行頭へカーソルを移動 |
^ | テキストの行頭へカーソルを移動 |
$ | 行末へカーソルを移動 |
% | 対応する括弧へカーソルを移動 |
画面のスクロール
つづいて、画面のスクロールコマンドです。
control + e | 1文字分だけ、画面を下にスクロール |
---|---|
control + y | 1文字分だけ、画面を上にスクロール |
control + d | 画面の半分だけ、画面を下にスクロール |
control + u | 画面の半分だけ、画面を上にスクロール |
control + f | 画面の半分だけ、画面を下にスクロール |
control + b | 画面の半分だけ、画面を上にスクロール |
zz | カーソルが画面の上下中央になる位置にスクロール |
z l | 1文字分だけ、画面を右にスクロール |
zh | 1文字分だけ、画面を左にスクロール |
zL | 画面の半分だけ、画面を右にスクロール |
zH | 画面の半分だけ、画面を左にスクロール |
カット(削除)、コピー(ヤンク)、ペースト
カット(削除)、コピー(ヤンク)、ペーストのコマンドです。
x | カット(削除) |
---|---|
y | 選択範囲をコピー(ヤンク) |
yy | カーソルのある行をコピー(ヤンク) |
p | カーソルの後ろにペースト |
P | カーソルの手前にペースト |
dd | カーソルのある行をカット(削除) |
2dd | カーソルから下に2行カット(削除)(数値は変更可能) |
2yy | カーソルから下に2行コピー(ヤンク)(数値は変更可能) |
D | カーソルから行末までをカット(削除) |
アンドゥ、リドゥ
アンドゥ、リドゥのコマンドです。
u | 元に戻る(アンドゥ) |
---|---|
control + r | 戻った部分をやり直す(リドゥ) |
インデント
インデントに関するコマンドです。
>> | 現在の行のインデントを深くする |
---|---|
<< | 現在の行のインデントを浅くする |
== | 現在の行のインデントを、自動で揃える |
2>> | 現在の行から2行、インデントを深くする(数値は変更可能) |
2<< | 現在の行から2行、インデントを浅くする(数値は変更可能) |
2 = = | 現在の行から2行、インデントを自動で揃える |
検索
つづいて、検索に関するコマンドです。
n | 次を検索 |
---|---|
N | 前を検索 |
* | カーソルの乗った単語を後ろに検索 |
# | カーソルの乗った単語を前に検索 |
ウィンドウの分割
ウィンドウの分割などのコマンドです。
ウィンドウに関するコマンドは、control + wで始まります。windowのwと覚えておきましょう。
control + ws | ウィンドウを上下に分割 |
---|---|
control + wv | ウィンドウを左右に分割 |
control + wc | 現在のウィンドウを閉じる |
control + wo | 現在のウィンドウ以外を閉じる |
control + ww | カーソルを、次のウィンドウへ移動 |
control + wW | カーソルを、前のウィンドウへ移動 |
control + wh | カーソルを、左のウィンドウへ移動 |
control + wj | カーソルを、下のウィンドウへ移動 |
control + wk | カーソルを、上のウィンドウへ移動 |
control + wl | カーソルを、右のウィンドウへ移動 |
control + w= | 全てのウィンドウのサイズを均等にする |
control + w+ | 現在のウィンドウの高さを、1行分高くする |
control + w- | 現在のウィンドウの高さを、1行分低くする |
control + w2+ | 現在のウィンドウの高さを、2行分高くする |
control + w2- | 現在のウィンドウの高さを、2行分低くする |
control + w> | 現在のウィンドウの幅を、1文字分広くする |
control + w< | 現在のウィンドウの幅を、1文字分狭くする |
control + w2> | 現在のウィンドウの幅を、2文字分広くする |
control + w2< | 現在のウィンドウの幅を、2文字分狭くする |
control + wr | ウィンドウの場所を入れ替える(同じ段、列のみ) |
数値
数値にカーソルを合わせ、以下のコマンドを使うと、増やしたり、減らしたりできます。
control + a | 数値を+1(インクリメント) |
---|---|
control + x | 数値を-1(デクリメント) |
補完
補完のコマンドです。
control + n | キーワードの候補を表示。次の候補を選択 |
---|---|
control + p | キーワードの候補を表示。前の候補を選択 |
マーク
カーソルの位置をマークしておくと、あとから一瞬でその場所に移動することができます。
ma | カーソルの位置をaに記録する(aは変更可能) |
---|---|
`a | aに記録したマークの位置に移動(aは変更可能) |
操作の記録(マクロ)
操作を記録しておいて、その操作を何度も繰り返すことができます。
qa | 操作を記録を開始する(aに記録する。aは変更可能) |
---|---|
q | 操作の記録を終了する |
@a | aに記録した操作を実行する(aは変更可能) |
@@ | 直前に実行した操作を繰り返す |
まとめ
今回は、Vimを使う上で、覚えればかなり便利になるコマンドを紹介しました。
Vimはコマンドを覚えれば覚えるほど、便利に使うことができます。
ぜひたくさん覚えて、誰よりも速く、開発を行なえるVimmerを目指しましょう。