Í vimtutor にあった vim のコマンドをまとめました。正直に告白すると、今まで vim に3度以上も挫折してきました。vim にチャレンジしても、思うように動かず、ビープ音でどんどんストレスが溜まり、結局いつものエディタに戻ってしまうという残念な感じでした。ずっと憧れはあり、そんな時に、なんとなく vimtutor を読みながらコマンドをいじってるとだいぶストレスが減ってきました。基本が大事ですね。いきなり画面を分割したり、カッコつけてもダメでした。vimtutor には、7つのレッスンがあるのですが、そこで使われたコマンドを忘れないためにもここに書いておきます。
Lesson 1
h ←
l →
j ↓
k ↑
:q! 保存せずに終了
x カーソルの下にある文字を一文字削除
i 編集モードに移動
A カーソルの行末に移動して、編集モードに移動
:wq 保存して終了
Lesson 2
dw 一つの単語の削除(単語の後のスペース含む)
dw 一つの単語の削除(単語の後のスペース含まない)
d$ カーソルから行末まで削除
0 行の始まりに移動
#w # (数字)の数だけ、単語単位で移動(単語の始まり)
#e # (数字)の数だけ、単語単位で移動(単語の終わり)
d#w # (数字)の数だけ、削除
dd カーソルの行全て削除
#dd # (数字)の数だけ、カーソルの行全て削除
u 一つ前の変更のやり直し
U その行にした変更のやり直し
Lesson 3
p 前回削除されたテキストをカーソルの後に貼り付け
r + 文字 カーソル下の文字を新しい文字に置換
ce カーソル下の下から単語の終わりまで変更(削除し、編集モードへ)
Lesson 4
CTRL-G ファイル内の現在地やファイルのステータスの表示
G 最後の行に移動
gg 最初の行に移動
/
?
n 検索結果の次のワードへジャンプ
N 逆方向に検索結果のワードへジャンプ
CTRL-O 前の位置にカーソルの移動
CTRL-I 新しい位置にカーソルの移動
% 対応したカッコ (), [], {} へジャンプ
:s/old/new カーソル行のoldをnewに一つだけ変更
:s/old/new/g カーソル行のoldをnewに全て変更
:#,#s/old/new/g #で指定された行ナンバーの間のoldをnewに全て変更
:%s/old/new/g ファイル内の全てのoldをnewに変更
:%s/old/new/gc ファイル内の全てのoldをnewに変更(確認あり)
Lesson 5
:!
:w
v ビジュアルモードに移動
ビジュアルモードでテキストを選択後、: をタイプ
’<,’> が表示されるので、続けて w <filename>
選択されたテキストがfilenameに保存される
:r <filename> カーソルに下から filename の中身が貼り付けられる
:r !ls のようにコマンドの実行結果も貼り付け可能
Lesson 6
o カーソルがいる位置に下に新しい行を追加し、insert モードに移動
O カーソルがいる位置の上に新しい行を追加し、insert モードに移動
e コマンドで次の単語の終わりに移動
a コマンドでカーソルの位値の次の文字から insert モードに移動
R 1つ以上の文字の置換
v をタイプし、ビジュアルモードへ移動
テキストを選択し、 y でコピー、p で貼り付け
:set ic 検索時に大文字小文字の区別を無くす
:set hls is 検索結果がハイライトされる
:nohlsearch ハイライトを消す
Lesson 7
help ヘルプの表示
CTRL-W CTRL-W 他のウィンドウに移動
:e CTRL-D eからはじまるコマンドの一覧表示
これらのコマンドを vimtutor 上で細々打っていると、だいぶストレスが減りました。後は、「こういうことをしたい」と思った時に、ググって知識を増やして行けばだいぶ活用できる気がします。