はじめに
改めて、Vimを勉強したので、備忘録に書きます。
Vimのモード
ノーマルモード
開いた際のモード
入力モード
小文字のiを入力で入る
下記に-- INSERT --と表示される
エディタと同じで、文字を挿入可能
出る際にはESCキーを入力
→ノーマルモードに入る
コマンドモード
:を入力して、入る
→更にいくつかのコマンドを入力できる
出る際にはESCキーを入力
q エディタの終了
→!をつけると強制終了
w 変更の保存
→名前を付けて保存する場合は、wの後に名前をつける
例) :w test.txt
e 他のファイルを開く
ビジュアルモード
vを入力すると入る
→文字単位での選択ができる
その範囲に対して、処理を行える
Vを入力すると入る
→行列単位での選択ができる
Ctrl + V
→矩形選択ができる
全選択 Vを入力後、Gを入力
出る際にはESCキーを入力
移動系コマンド
ノーマルモードから利用可能
gg 先頭にカーソル移動
G 一番、最後までカーソル移動
Ctrl + f 1画面下に移動する
Ctrl + b 1画面上に移動する
w 単語単位で前に移動
b 単語単位で後ろに移動
^ 行頭に移動
$ 行末に移動
f 指定文字まで移動
→fの後に移動したい文字を入力
例) :fu
→カーソル位置からuの文字が一番最初に出てくる場所へ移動
→また、;を入力すると次の指定文字に移動する
% { に対応した } へ移動する
→{ の箇所の上にカーソルがある際に%を押すと対応した } に移動する
編集系コマンド
ノーマルモードから入れる
カット
xを入力すると文字単位でカット
ddを入力すると行単位でカット
→複数行をカットしたい場合、ddの前に数値を入力
例)4dd
→カーソル位置とカーソル位置から下3行をカット
貼り付け
pを入力すると貼り付け
コピー
yyを入力すると行単位でコピー
検索系コマンド
ノーマルモードから入れる(/を入力する)
n 下方向に検索
N 上方向に検索
*と# 今カーソルがある位置の単語を検索(上/下)
置換コマンド
ノーマルモードから入れる
:s/置換したい単語/置換後の単語/
→1箇所、置換する
:s/置換したい単語/置換後の単語/g
→カーソルのある行の該当箇所、すべてを置換する
取消コマンド
u 元に戻す
→何度でも戻すことが可能
CTRL + r リドゥ(もとに戻した処理の取消)
直前の操作を繰り返す
ノーマルモードで.を入力で直前のコマンドを実行する
インデントを揃える
ノーマルモードから=を入力すると行単位でインデントが揃う
矩形選択後に編集する
ノーマルモードからCtrl + v
↓
選択する
↓
shift + i
↓
編集する