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を終了しないでシェルコマンドを実行 |