i | カーソル前に文字を挿入 |
a | カーソル後に文字を挿入 |
o | 1行後ろに文字を挿入 |
esc | コマンドモードになる。Control+[でも同じことが出来る。 |
矢印操作 | |
h | ← |
j | ↓ |
k | ↑ |
l | → |
gg | ファイル先頭に移動 |
G | ファイル末尾に移動 |
$ | 行末に移動 |
0または^ | 行頭に移動 |
Ctrl+u | ページアップ(半画面分) |
Ctrl+d | ページダウン(半画面分) |
Ctrl+f | ページ送り(一画面分) |
Ctrl+b | ページ戻り(一画面分) |
w | 次の単語へ移動 |
b | 前の単語へ移動 |
x,dd | 切り取り |
yy | 行をコピー |
v | 選択を開始 |
p | 貼り付け |
/ | 前方検索。次の検索単語を調べる時はn、戻るときはNを押す。 |
? | 後方検索。 |
f | 1行、1文字検索。次に行く時は;、戻るときは,を押す。 |
u | 元に戻す |
Ctrl+r | 元に戻すを戻す |
Ctrl+p | 単語補完(前方検索) |
Ctrl+n | 単語補完(後方検索) |
Ctrl+v | ビジュアルモード(矩形選択とかが可能になる) |
:%s/置換前文字列/置換後文字列/gc | 置換処理 |
:w | 保存 |
:q | 終了 |
:q! | 強制終了 |
:e++enc=文字コード | 文字コード表示を変更 |
set | set オプションでオプション機能を追加する。 set noオプションでオプション機能を減らす。set allで全てのオプションを見れる。 よく使うのが、set number。次点でset autoindent。さらに次点がshiftwidth=4 |
imap | キーマッピングを設定できる。例えばescを押すのが面倒な場合にcontrol+jをesc代わりとして使用する場合はimap <c-j> <esc>を.exrcに追加する。 |
.exrc | vi設定用ファイル。ここにsetを記載すると、設定が保存される。場所としてはホームディレクトリに作ればOK。 |
:new | ウィンドウの縦分割 |
:vs | ウィンドウの横分割 |
^+w | ウィンドウ間の移動。^はCtrlボタン |
:tabnew | 新規タブ作成。gtコマンドでタブ間移動できる |
:r!コマンド | 外部コマンドの実行結果をカーソル位置に挿入 |
:sh | 一時的にシェルに戻る |
:echo expand("%:p") | カレントファイルのフルパスを表示。expand以外にも実は色々な組み込み関数があるので、一度見てみると良いかも。 |
:set binary noeol | 末尾の改行コードを削除する。diff等でNo newline at end of fileが出て困る場合 |
:set list | 改行コードを表示させる。 |