はじめに
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でマージできる