<Esc> : 挿入モードを終えてノーマルモードに戻る Ctrl-[ : <Esc> と同じ。ホームポジションから手を放す必要がなくなる Ctrl-c : 挿入モードを終えてノーマルモードに戻る。ただし短縮入力は展開しない
<Up> : 1行上に移動 <Down> : 1行下に移動 Ctrl-g j : 1行下に移動。カーソルは挿入開始位置と同じ列へ (Ctrl-g Ctrl-j, Ctrl-g <Down>でも可) Ctrl-g k : 1行上にに動。カーソルは挿入開始位置と同じ列へ (Ctrl-g Ctrl-k, Ctrl-g <Up>でも可)
<Right> : 1文字右に移動 <Left> : 1文字左に移動 <Home> : 行頭に移動 Shift-Right : 1単語右に移動 Shift-Left : 1単語左に移動
<BS> : カーソル前の1文字を削除 (Ctrl-hでも可) <Del> : カーソル位置の1文字を削除 Ctrl-w : カーソル前の1単語を削除 Ctrl-u : カーソル行の入力をすべてキャンセル
Ctrl-t : shiftwidth 分インデントを増やす Ctrl-d : shiftwidth 分インデントを減らす 0 Ctrl-d : 現在行のインデントをすべて削除 ^ Ctrl-d : 現在行のインデントをすべて削除(次の行に影響しない)
Shift-Up : 1画面上にスクロール Shift-Down : 1画面下にスクロール Ctrl-x Ctrl-y : 1行上へスクロール Ctrl-x Ctrl-e : 1行下へスクロール
挿入モード中は様々な法で入力中の単語を補完することができます。補完候補が複数ある場合は補完リストが表示され、Ctrl-p
, Ctrl-n
で候補から選択することができます。
Ctrl-p : カーソル位置の単語を前方に検索して補完 Ctrl-n : カーソル位置の単語を後方に検索して補完(タグリストも検索) Ctrl-x Ctrl-p : カーソル位置の単語をファイル内から検索して補完(前方検索優先) Ctrl-x Ctrl-n : カーソル位置の単語をファイル内から検索して補完(後方検索優先) Ctrl-x Ctrl-l : カーソル位置の行にマッチする行をファイル内から検索して補完 Ctrl-x Ctrl-k : カーソル位置の単語を dictionary で指定した辞書ファイルから検索して補完 Ctrl-x Ctrl-] : カーソル位置の単語をタグリストから検索して補完 Ctrl-x Ctrl-f : カーソル位置の単語をファイル一覧から検索して補完 Ctrl-x Ctrl-s : スペリング補完。Ctrl-s の代わりに s を使用することも (未検証) Ctrl-x Ctrl-v : Vim のコマンドラインキーワードから補完 Ctrl-x Ctrl-u : ユーザ定義補完。completefunc で指定したユーザ定義関数を用いて補完 (未検証) Ctrl-x Ctrl-o : オムニ補完。omnifunc で指定したオムニ関数を用いて補完 (未検証) Ctrl-x Ctrl-d : 定義やマクロ(C言語用) (#define) Ctrl-x Ctrl-i : 識別子補完。編集中と外部参照ファイルのキーワード(未検証) Ctrl-x Ctrl-t : 類語補完。thesaurus のキーワード, thesaurus-style (未検証) Ctrl-x Ctrl-z : 補完を中止
Ctrl-p
, Ctrl-n
の補完対象はオプション complete
で変更することもできます。
:set complete=.,w,b,u,t,i (規定値) . : カレントバッファ w : 別ウィンドウのバッファ b : バッファリスト内の未読込バッファ u : バッファリスト内の読込済バッファ U : バッファリスト外のバッファ k : dictionary で指定された辞書ファイル s : thesaurus で指定されたファイル i : カレントファイルとインクルードされるファイル d : カレントファイルとインクルードされるファイルで定義された名前やマクロ t : タグファイル(tags) ] : タグファイル(tags) kspell : 現在有効化されているスペルチェック k{dict} : dictで指定された辞書ファイル。複数指定可 (例:kDict1,kDict2,kDict*) s{tsr} : tsrで指定されたファイル。複数指定可 (例:sFile1,sFile2,sFile*)
Ctrl-vkey : キーに対応する文字を直接入力 (例:Ctrl-v <Esc> はエスケープ文字を挿入) Ctrl-vnum : 数字に対応するASCII文字を入力 (例:Ctrl-v65 は A を挿入) :digraphs(:dig) : ダイグラフ(2字の半角文字)とそれに対応する特殊文字の一覧を表示する Ctrk-kc1c2 : ダイグラフ(2字の半角文字)に対応する特殊文字を挿入する (例:Ctrl-k!= で不等記号(≠)を挿入) c1<BS>c2 : ダイグラフ(2字の半角文字)に対応する特殊文字を挿入する (digraph が on の時有効) :set digraph : <BS> によるダイグラフ入力を可能とする
Ctrl-oCommand : ノーマルモードのコマンドを1回実行して挿入モードに戻る (例:Ctrl-o0 は挿入モードのまま行頭に移動) Ctrl-y : 上の行のカーソル位置の文字を挿入 Ctrl-e : 下の行のカーソル位置の文字を挿入 Ctrl-a : 直前に挿入した文字列を挿入 Ctrl-@ : 直前に挿入した文字列を挿入して挿入モードを終了 Ctrl-rregister : レジスタ register の内容を挿入