Vimコマンド集

モード切替

操作WindowsMac説明
ノーマルモードへ戻るEscEscどのモードからでも戻る
挿入モード(前)iiカーソル前に挿入
挿入モード(後)aaカーソル後に挿入
挿入モード(行頭)II行頭で挿入
挿入モード(行末)AA行末で挿入
挿入モード(新行下)oo下に新しい行を作成
挿入モード(新行上)OO上に新しい行を作成
ビジュアルモード(文字)vv文字単位で選択
ビジュアルモード(行)VV行単位で選択
ビジュアルブロックCtrl+vCtrl+v矩形選択

カーソル移動

操作WindowsMac説明
左右移動h / lh / l1文字ずつ
上下移動j / kj / k1行ずつ
行頭・行末0 / $0 / $行頭 / 行末
行先頭文字^^空白を飛ばして行頭文字へ
単語先頭ww次の単語先頭
単語末ee単語末
単語頭(逆方向)bb前の単語頭
文単位移動) / () / (次 / 前の文
段落単位移動} / {} / {次 / 前の段落
画面単位移動Ctrl+f / Ctrl+bCtrl+f / Ctrl+b1画面分
半画面移動Ctrl+d / Ctrl+uCtrl+d / Ctrl+u半画面分
ファイル先頭・末尾gg / Ggg / G先頭 / 末尾
指定行ジャンプ:{行番号}:{行番号}例::20

編集・削除・コピー

操作WindowsMac説明
文字削除xxカーソル上
文字削除(左)XXカーソル左
単語削除dwdw単語末まで
単語頭まで削除dbdb単語頭まで
行削除dddd1行削除
複数行削除d5dd5d例:5行削除
範囲削除:10,20d:10,20d行範囲
ファイル全体削除:%d:%dファイル全体の全行削除
行コピーyyyy1行コピー
複数行コピーy5yy5y例:5行コピー
範囲コピー:10,20y:10,20y行範囲
行貼付p / Pp / P下 / 上
元に戻すuuUndo
やり直すCtrl+rCmd+rRedo
繰り返し..直前操作

検索・置換

操作WindowsMac説明
前方検索/文字列/文字列前方検索
逆方向検索?文字列?文字列後方検索
次検索nn同方向
前検索NN逆方向
現在単語検索**カーソル下単語
現在単語逆検索##逆方向
置換全体:%s/旧/新/g:%s/旧/新/gファイル全体
確認付き置換:%s/旧/新/gc:%s/旧/新/gc置換確認
範囲置換:'<,'>s/旧/新/g:'<,'>s/旧/新/g選択範囲
正規表現置換:%s/\vパターン/置換/g:%s/\vパターン/置換/g高度な置換

クリップボード連携

操作WindowsMac説明
システムクリップボードコピー"+y"+y選択範囲コピー
システムクリップボード貼付"+p"+p貼付
レジスタ確認:reg:reg現在のレジスタ一覧
レジスタに保存"a{操作}"a{操作}例:"ayw

ウィンドウ・タブ

操作WindowsMac説明
垂直分割:vsp:vsp画面垂直分割
水平分割:sp:sp水平分割
ウィンドウ移動Ctrl+w h/j/k/lCtrl+w h/j/k/l左/下/上/右
ウィンドウサイズ変更Ctrl+w >/<Ctrl+w >/<幅変更
ウィンドウ最大化Ctrl+w _Ctrl+w _縦最大化
タブ新規:tabnew:tabnew新しいタブ
タブ切替:tabn / :tabp:tabn / :tabp次 / 前
タブ閉じる:tabclose:tabcloseタブ終了

マクロ・高度操作

操作WindowsMac説明
マクロ記録qaqaレジスタaに記録
マクロ停止qq記録終了
マクロ再生@a@a再生
複数回再生:5@a:5@a5回実行
マクロ連鎖@a@b@a@baの後にb実行

タグ・マーク

操作WindowsMac説明
タグジャンプCtrl+]Ctrl+]定義へジャンプ
元位置戻るCtrl+tCtrl+tタグジャンプ元に戻る
マーク設定mamaマークa設定
マークジャンプ`a`aマークaへジャンプ
前のマーク行へ''''前のマーク行

外部コマンド連携

操作WindowsMac説明
現在行を外部コマンド:.!コマンド:.!コマンド現在行置換
ファイル全体外部コマンド:%!コマンド:%!コマンドファイル置換
Vimからシェル呼び出し:!コマンド:!コマンドコマンド実行