はじめに
Vim幼稚園からVim小学校への記事がとても面白かったので、私も備忘録的に残します。
思い出しながら書いているので多少の前後はあるかもしれませんが、レベル感は雑に小刻みにレベルアップすることにして今後も書き足していけたらなと思います。
まだまだ使いこなしてはいませんが、Mac,Ubuntuを普段使いしていてVimを日常的に使用しています(まだVim幼児ぐらい笑)。
使うことになった経緯
Ubuntuを使うことになりました。ドットファイルや/etc/...
を編集する際にターミナルから開けるエディタということで使い始めました。
色々な方がコマンドリストなどを紹介していると思いますが、最初から完璧に覚えるというより必要になるごとに適宜使えるコマンドを増やしていくとよいのかなと思っています。(一気に覚えようとしても無理だと思います)
レベル0
- インサートモード
i
で←↓↑→キー移動 - 何も分からず
Esc
キーから:wq
で保存終了 -
sudo
で開くのを忘れて困った時は:q!
で終了
レベル1
- インサートモードとノーマルモードの存在に気づく
- まだ移動は
h,j,k,l
のみ -
yy
とp
を使える
レベル2
-
i,s,a
を使い分けられる -
u, Ctrl+r
を使える -
.vimrc
をネットから拾ってきて設定 -
gg, G
も移動に組み込める -
/...
で検索、n, Shift+n
で上下移動 -
x
で文字削除 -
dd
で行削除&ヤンク -
:set number
の存在に気づく
レベル3
-
.vimrc
を作成 - ビジュアルモード
v
の存在に気づく -
Visual+y, Visual+d
で一気にヤンク,ヤンク&削除ができる -
:split, :vsplit
からの:open path/to/file
で他のファイルを同時に開ける(Ctrl+wで移動できる) - 移動に
Ctrl+u, Ctrl+d
を使える - tmuxと組み合わせるようになり、キーボードからあまり手を離さなくなる
レベル4
- 行ビジュアルモード
Ctrl+v
の存在に気づく -
:new, :vnew
からの:e .
で他のファイルを開ける - 矩形ビジュアルモード
Shift+v
の存在に気づく -
ggVGy
で文書全体ヤンクを使える -
:s/before/after
で置換できる -
:%s/before/after/g
で文書全体置換できる - vimium, vimium-ffの存在に気づく
レベル5
- 矩形ビジュアルモード
Shift+v
の存在に気づく - コメントアウト、アンコメントアウトのショートカットを作成
- コンパイル、実行のショートカットを作成
- Windowsにもvimをインストール(tmuxが使えず不便、上記ショートカットで対応)
- WindowsでWSLをインストールしてvimを使用(遅いから不便)
- VSCodeでvimキーバインドを使用(:eが使えず不便,Intellisense便利)
レベル6
- macの購入とともにvimの使用頻度上昇
-
Ctrl+p
が使える - この頃から日常生活に支障(他のエディタが使いづらい問題,jk連打してしまう)
-
Visual+y, Visual+d
の有効活用 -
x
でヤンクしないように設定 -
Visual+s
が使える -
%
で対応括弧へ移動 -
f
で該当文字まで移動できることを知っている(が使わない) -
0
で行頭まで移動できることを知っている(が使わない)
レベル7
-
zf, zd, zm, zr
等のfoldingが使える -
Visual+...
で一部だけ置換できることに気づく -
.
が使える -
@:
が使える -
q:
が使える -
/
検索でスッと移動 -
zz, zt
で文書の見え方を変更できる
レベル8
- ターミナルのカーソルを
ブロック→垂直バー
に変更したらi,a,s
を意識できるようになった - 矩形ビジュアルモードで一気に文字を追加できる
-
$
で行末に移動できることを知っている(が使わない) - 矩形ビジュアルモードに
$+A
で末尾に一気に文字追加できる -
Ctrl+a, Ctrl+x
でインクリメント、デクリメントできる
レベル9
- サーバ構築を試し、Vimの素晴らしさに気づく
-
vimdiff
の存在を知る -
diffsplit [filename]
,vertical diffsplit [filename]
を通常のvim上で実行して:dp
でマージできる