勉強がてらvimの使い方をまとめてみる
現在、Linuxの勉強をしている。やはり、新しいスキルを手に入れることは楽しい。
ところで、vimはlinuxに内蔵されているエディター。LinuxにはEmacsというエディタもあり、よくどちらの方がよいかということで議論になるらしい。vimの方が簡単そう、かつデフォルトっぽいので、vimを勉強する。
テキストを開くとき、vi,vimどちらのコマンドでも開けるとだが、厳密にはviとvimは違うらしい。vimはviの上位互換コマンドらしく、vimの方が機能が豊富なよう。ただ、大体の環境ではvimの機能が全てviコマンドで使えるのであんまり気にしなくていいのかも。
完全にここのまとめをパクった。
escキー:ノーマルモード
iキー:入力モード
vキー:ビジュアルモード
:キー:コマンドモード
※入力モード、ビジュアルモード、コマンドモードに入るには、
必ずノーマルモードに戻らないといけない。つまり、入力モード→ビュジュアルモードみたいなモードの変換はできない。
ノーマルモード(escキー)
1.移動モード
- ^:行頭へ移動
- $:行末へ移動
- gg:ファイルの先頭行へ移動
- G:ファイルの行末の先頭へ移動
- ctrl + f:次の画面に移動
- ctrl + b:前の画面に移動
- w:次の単語の先頭に移動
- b:前の単語の先頭に移動
- f文字:現在行の中で指定した文字に移動。;で次の単語に移動する。日本語の扱いに注意
2.編集、削除
- x:カーソル上にある単語を削除
- dd:カーソル上にある行をカット(カット後、ペースト可能)
- ndd:カーソル上にある行からn行カット
- w:カーソル上にある単語を削除し、入力モードに変更
- p:コピー、カットした文字をペースト
- yl:カーソル上の一文字をコピー
- nyl:カーソル上の文字からn文字コピー
- yy:カーソル上の行をコピー
- nyy:カーソル上の行からn行コピー
3.検索
- /文字:Enterで文字の検索。nで下方向に検索、Nで上方向に検索
- /Ctrl + p:コピーした文字の貼り付け
4.取り消し
- u:前の操作を取り消す
- ctrl + r:取り消したもの元に戻す
5.保存、終了
- ZZ:保存して終了
ビジュアルモード(vキー)
- 矢印:選択範囲を指定
- y:選択した範囲をコピーして終了
- x:選択した範囲をカットして終了
コマンドモード(:キー)
1.設定
- w:保存
- w ファイル名:ファイル名をつけて保存
- q:終了
- q!:変更を保存せずに終了
- set number:各行に行数を表示
- syntax on:シンタックスハイライトをONにする
- set ignorecase:検索時に大文字、小文字を区別しない
- set noignorecase:検索時に大文字、小文字を区別する
2.置換
- s/変更対象文字列/変更後文字列/:カーソル行の対象文字一箇所のみ置換
- s/変更対象文字列/変更後文字列/g:カーソル行も対象文字を全て置換
- %s/変更対象文字列/変更後文字列/g:ファイル内の対象文字列をすべて置換
- %s/変更対象文字列/変更後文字列/gc:ファイル内の対象文字列をすべて置換(一回ご:とに確認)
次はこっちも勉強しよう。