Vimが使える状態で、以下のコマンドを打つとVimのチュートリアルを利用できます。
$ vimtutor
今回は、VIM Tutorで学んだコマンドをまとめてみました。
モード切り替え
esc |
NORMAL MODE(コマンドを打てる) |
R |
REPLACE MODE(入力した文字で置き換える) |
v |
VISUAL MODE(移動キーで範囲を選択できる) |
i |
カーソルの一つ前の位置からINSERT MODE(文字を入力できる) |
a |
カーソルの一つ後の位置からINSERT MODE |
A |
現在の行の後尾からINSERT MODE |
o |
現在の行の一つ下へ改行しINSERT MODE |
O |
現在の行の一つ上へ改行しINSERT MODE |
ファイル操作など
w |
保存 |
w + 文字列 |
指定した文字列の名前をつけて保存 |
q |
終了 |
w + q |
保存して終了 |
q + ! |
保存せずに終了 |
:r + ファイル名 |
指定したファイルの中身を貼り付ける |
シェルコマンド + ! |
シェルコマンドを実行できる(例. !lsで現在のディレクトリのリストを表示) |
:help + コマンド |
指定したコマンドのヘルプを表示 |
u |
一つ前の状態へ(Undo) |
U |
一つ後の状態へ(Redo) |
移動
h |
左 |
l |
右 |
j |
下 |
k |
上 |
w |
次の単語の先頭 |
e |
次の単語の後尾 |
b |
前の単語の先頭 |
ge |
前の単語の後尾 |
gg |
ファイルの先頭へ移動 |
G |
ファイルの後尾へ移動 |
^ |
行の先頭へ移動 |
$ |
行の後尾へ移動 |
Ctrl + g |
現在のファイルの位置と行の番号を確認 |
数字 + G |
指定した数字の行へ移動 |
% |
(や{などにカーソルを合わせて実行すると、対応する)や}に移動 |
削除とコピペ
x |
文字を削除 |
dd |
行を切り取り |
d + 移動 |
指定した範囲を削除 |
c + 移動 |
指定した範囲を削除してINSERT MODEへ |
y |
選択した範囲をコピー |
p |
前に削除(コピー)したものを貼り付ける |
検索と置き換え
f + 文字 |
次に現れる文字を検索して移動 |
/ |
前方へ文字列を検索 |
? |
後方へ文字列を検索 |
n |
繰り返す |
CTRL + o |
一つ前の位置に戻る |
r + 文字 |
カーソルの位置の文字を1つ置き換え |
:s/old/new |
現在いる行のoldという文字をnewという文字で置き換える(最初に出てきた文字のみ) |
:s/old/new/g |
現在いる行のすべてのoldをnewで置き換える |
:#,#s/old/new/g |
現在いる行のoldのうち、最初の#から2つめの#で指定した範囲のもののみnewで置き換える |
:%s/old/new/g |
現在のファイルのすべてのoldをnewで置き換える |
:%s/old/new/gc |
現在のファイルのすべてのoldをnewで置き換える。その際、一つずつ置き換えるかどうか確認できる。 |
オプションの設定
:set オプション |
オプションをオンにする(例. :set icでignore caseをオン) |
:set noオプション |
オプションをオフにする(例. :set noicでignore caseをオフ) |
ic |
ignore case(検索の際、大文字・小文字を区別しない) |
hls |
hlsearch(検索の際、マッチした文字をハイライトする) |
is |
incsearch(検索の際、文字を打ち込んでる途中でも検索してくれるようにする) |