こんにちは、えびかずきです。
今回はVimの基本的な使い方をまとめてみました。
Vimを使いたいけどよくわからないよって人は参考にしてみてください。
こんな人におすすめ:
・Vimの基本的な使い方を知りたい。
開発環境
macOS Catalina10.15.7
macOSの場合、デフォルトでVimがインストールされています。
ターミナルからすぐに使えます。
Vimの起動と終了
開きたいファイルを引数に指定して、『vim』コマンドを叩くとエディタが起動します。
$ vim test
終了は以下のようにします。
#上書き保存して終了する場合
:wq
#保存せずに終了する場合
:q!
ノーマルモードとインサートモード
vimには『ノーマルモード』と『インサートモード』という、我々が普段に使うエディタにはない概念があります。
vimを起動して最初は『ノーマルモード』になっています。
「i」キー「a」キーで『インサートモード』に切り替わります。
違いは文字を挿入する場所です。
「i」の場合はカーソルの左側へ挿入され、「a」の場合はカーソルの右側に挿入されます。
『ノーマルモード』に戻るには、「esc」キーをたたきます。
実は、『o』でカーソルの一つ下の行へインサート
『O』でカーソルの一つ上の行へインサート
というのもあります。
基本的なコマンド(ノーマルモード)
カーソル移動
「h」「j」「k」「l」キーでそれぞれした表のようにカーソル移動できます。
h | j | k | l |
← | ↓ | ↑ | → |
方向キーでも移動できますが、「h」「j」「k」「l」を使う方が速いし、そこがVimの魅力でもあるのでこちらを使うようにしましょう。
ファイル内移動
ファイル内で大きく移動できます。
gg | ファイルの先頭へ移動 |
G | ファイルの最後へ移動 |
行番号+G | 行番号位置へ移動 |
ちなみに「control+g」でファイルとカーソル行の情報を取得できるので、上記コマンドを使う前に実行すると便利です。
削除
下のコマンドで文字の削除ができます。
ちなみに「d2e」のように数字を挟むと複数単語を削除できます。
x | カーソルの右の文字を削除 |
dw | カーソル位置から空白を含む単語を削除 |
de | カーソル位置から空白を含まない単語を削除 |
d$ | カーソル位置から行末までを削除 |
dd | カーソルのある行を削除 |
補足:
ここで、dは削除コマンド、続くw,e,$,dはモーションを表します。
つまり決められたモーションに対して削除コマンドを実行するという仕組みになっています。
試しにw,e,$,dを単体で実行すると、そのモーション通りの位置までカーソルが動きます。
コピーと貼り付け
y | コピー |
p | バッファに保存されたものを貼り付ける |
例えば「p」で直前にdwなどで削除したものを貼り付けることができます。
やり直し
普段の「command+z」みたいなコマンドのVim版です。
とても便利です。
u | 直前のコマンドを取り消し |
U | 行全体の取り消し |
control+r | 取り消しを取り消す |
置き換え
カーソルの右の一文字を置き換えます。
r | 文字の置き換え |
変更
カーソルの位置から指定したモーション分だけ変更します。
cw | 単語の終わりまで変更 |
c$ | 行末まで変更 |
検索
下記コマンドを押した後、検索したい単語を入力すると検索できます。
同じ検索は「n」で再実行、逆順の場合は「N」。
「control+o」で一つ元に戻れます。「control+i」で一つ前に進みます。
/ | 順方向で検索 |
? | 逆方向で検索 |
% | 対応する括弧を検索 |
検索置換
:s/old/new | その行のカーソル位置から見つかったoldを一つだけnewへ置換 |
:s/old/new/g | その行のoldを全てnewへ置換 |
:# , #s/old/new/g | ファイル内の行範囲を指定して置換 |
:%s/old/new/g | ファイル内全てで置換 |
:%s/old/new/gc | ファイル内で一つ一つ確認しながら全て置換 |
その他
外部操作
!command | 外部コマンドの実行(例:!ls) |
:w ファイル名 | ファイル保存 |
:r ファイル名 | 外部ファイルをカーソル下に取り込む |
v モーション+:w ファイル名とすることで、選択した領域のみを別個でファイル保存することもできます。
help
「F1」キーでヘルプ画面が開きます。その場でコマンドを確認したいときに使ってみましょう。
vimtutorについて
ターミナルで下のようなコマンドを打つと、『vimtutor』が開いて、ここで紹介したような基本的なコマンドを日本語で学習することができます。
1時間くらいに学習できますので是非やってみてください。
$ vimtutor
.vimrcについて
~/.vimrcに設定を書き込むことで、vimをカスタマイズできます。
ここで詳しくは紹介しませんが、下の記事が参考になりました。
参考:
何も考えず~/.vimrcにこれを書くんだ! 〜vim初心者によるvim初心者のためのvim入門〜
まとめ
今回はVimの基本的な使い方について説明しました。
Vimは使い慣れると普通のIDEに戻れないほど強力なツール(らしい)ので、どんどん活用していきましょう。
使えると玄人開発者っぽくてなんかかっこいいですしね。
コメントを書く