Vi

emacsばっかり使ってるとviの操作忘れそうだから一応簡単なめも。

モード

コマンド 動作
i カーソルの前にテキストを入力
a カーソルの後にテキストを入力
l 行頭の最初の文字にカーソルを移動し、その直前にテキストを入力
A 行末にカーソルを移動し、その直後にテキストを入力
o カレント行の下に空白行を挿入しその行でテキストを入力
O カレント行の上に空白行を挿入しその行でテキストを入力

カーソル移動

コマンド 動作
h 1文字左へ移動 (←)と一緒
l 1文字右へ移動 (→)と一緒
k 1文字上へ移動 (↑)と一緒
j 1文字下へ移動 (↓)と一緒
0 行の先頭に移動
$ 行の末尾に移動
H 画面の一番上の行頭へ移動
L 画面の一番下の行頭へ移動
G ファイルの最終行へ移動
nG ファイルのn行めに移動
:n ファイルのn行めに移動

編集

コマンド 動作
x Delと一緒
X Backspaceと一緒
dd カレント行を削除
dw カーソル位置から次の単語までを削除
yy カレント行をバッファにコピー
p カーソル位置の後にバッファーの内容を貼付ける
P カーソル位置の前にバッファーの内容を貼付ける

検索

コマンド 動作
/<pattern> カーソル位置から後方に向かって指定したpatternを検索
?<pattern> カーソル位置から前方に向かって指定したpatternを検索
n 次を検索
N 次を検索(上方向に)
:noh 候補のハイライト表示を解除
:%s/A/B/ 文字列Aを文字列Bに1つ置換
:%s/A/B/g 文字列Aを文字列Bにすべて置換

終了、保存

コマンド 動作
:q ファイルに保存しないで終了
:q! 編集中の内容を保存しないで終了(確認なし)
:wq (ZZ,:x) 編集中の内容を保存して終了
:w 編集中の内容を上書き保存
:e file 現在開いているファイルを閉じてfileを開く
:e! file 現在開いているファイルを確認なしに閉じて新しくfileを開く
:r <file> fileの内容をカレント行以降に読み込む
:!<command> viを終了しないでシェルコマンドを実行
development_tool/vi.txt · 最終更新: 2009/09/19 05:54 (外部編集)