雑木林

頭の中の整理と忘れないための確認メモ

覚えておきたいキーバインド(vim)

前回に続いて今回はvimのショートカットキーです。 基本的にviでも同様のことができますが、一部vimでないと動かないところがありました。 移動系とビジュアルモード、文字列置換などは使いこなせると早くなりそうです。

基本操作(ノーマルモード)

コマンド 意味
i カーソル位置でインサートモードへ移行
o 一行下に空行を挿入し、空行の先頭でインサートモードへ移行
v ビジュアルモードへ移行
Ctrl + v ビジュアルモードへ移行(矩形選択)
V ビジュアルモードへ移行(行選択)
: コマンドモードへ移行
b カーソル位置より前にある単語の先頭へ移動
ge カーソル位置より前にある単語の末尾へ移動
e カーソル位置より後にある単語の末尾へ移動
w カーソル位置より後にある単語の先頭に移動
h 左に1文字移動(←キー)
j 1行下に移動(↓キー)
k 1行上に移動(↑キー)
l 右に1文字移動(→キー)
gg 先頭行に移動
G 最下行に移動
0 行頭に移動(Homeキー)
$ 行末に移動(Endキー)
dw カーソル位置の単語削除
dd 1行切り取り(先頭に数字を入れるとその行数分切り取り)
gdd カーソル位置から行頭まで切り取り
D カーソル位置から行末まで切り取り
p カーソル位置から後ろに貼り付け
yy 1行コピー(先頭に数字を入れるとその行数分コピー)
yw カーソル位置の単語をコピー
r カーソル位置の文字を置換
<< インデントを1段階削除する
>> インデントを1段階挿入する
/検索文字列 上から下に検索文字列を検索する(nで次を検索、Nで前を検索)
* カーソル位置の単語を検索する
gt タブを移動する(先頭に数字を入れるとその番号のタブに移動)
Ctrl +w , Ctrl +w 次の画面に移動(Ctrl + w,矢印キーでも可能)
u 元に戻す
Ctrl + r 繰り返し
ggVG 全文章選択

インサートモード

コマンド 意味
ESC ノーマルモードに移行(Ctrl + cと同様)
Ctrl + d インデントを1段階削除する
Ctrl + t インデントを1段階挿入する

ビジュアルモード

ビジュアルモード中は選択↓範囲に対してノーマルモードの動作が可能。

コマンド 意味
ESC ノーマルモードに移行(Ctrl + cと同様)
: コマンドモードへ移行(選択範囲に対して実施される)
y 選択範囲のコピー
d 選択範囲の削除
I インサートモードへ移行する(Vim限定)
> 選択範囲にインデントを1段階挿入する
< 選択範囲からインデントを1段階削除する

コマンドモード

コマンド 意味
:e filename filenameを現在の画面に開く
:sp filename 画面を上下に分割してファイルを開く
:vs filename 画面を左右に分割してファイルを開く(Vim限定)
:close 画面を閉じる
:tabnew 新しいタブを作成する
:tabs タブ一覧の表示
:w ファイルを保存する(:wqで保存して終了)
:q vimを終了する(:q!で編集を破棄して終了)
:数字 数字の行数へ移動する
:set autoindent オートインデントを有効にする
:! コマンド コマンドを実行する(shでシェルも実行可能)
:s/before/after/gc 文字列beforeをafterに都度確認して変換(cを無くすと一括変換)
:%s/before/after/gc ファイル中の文字列beforeをafterに都度確認して変換(cを無くすと一括変換)