viの基本操作
viの基本操作について
viには、コマンドモードと入力モードがあります。
- コマンドモードから入力モードへ切り替えるには「挿入」系操作を行います。
- 入力モードからコマンドモードへ切り替えるには「ESC」キーを押下します。
キーワード(特殊文字)
viで特別な意味を持つ文字は以下の通りです。
| 指定 | 説明 |
|---|---|
| 0 | 行頭を示す |
| $ | 行末を示す |
| G | 文末を示す |
| w | ワード(一つの単語)を示す |
| % | カレントファイルを示す |
コマンドモードでの操作
カーソル移動
| 指定 | 説明 |
|---|---|
| h | 左に移動 |
| l | 右に移動 |
| j | 下に移動 |
| k | 上に移動 |
| 0 | 行頭に移動 |
| $ | 行末に移動 |
| ^ | 行頭の空白を飛ばした先頭文字列に移動 |
| + | 次行頭の空白を飛ばした先頭文字列に移動 |
| - | 前行頭の空白を飛ばした先頭文字列に移動 |
| w | 次ワード頭に移動 |
| b | 前ワード頭に移動 |
| gg | ファイルの最終行に移動 |
| G | ファイルの最終行に移動 |
| H | 画面内の一番上の行の1文字目に移動する。(home) |
| L | 画面内の一番下の行の1文字目に移動する。(last) |
| M | 画面内の中央部の行の1文字目に移動する。(middle) |
| ( | 文頭(ブロック単位)に移動 |
| ) | 次文頭(ブロック単位)に移動 |
| { | 前段落に移動 |
| } | 次段落に移動 |
| [Ctrl]-[f] | 一画面分フォワード |
| [Ctrl]-[b] | 一画面分バック |
| [Ctrl]-[d] | 半画面分フォワード |
| [Ctrl]-[u] | 半画面分バック |
| [数字]-[G] | <数字>行目に移動 |
| [数字]-[|] | <数字>文字目の文字に移動 |
| z<enter> | 現在のカーソル位置が画面のトップになるようにスクロール |
| zz | 現在のカーソル位置が画面の中央になるようにスクロール |
| % | 対応する括弧へ移動 |
挿入
コマンドモードから入力モードに切り替わります。
| 指定 | 説明 |
|---|---|
| i | カーソル位置の左に挿入 |
| I | カーソル位置の行頭に挿入 |
| a | カーソル位置の右に挿入 |
| A | カーソル位置の行末に挿入 |
| o | カーソル位置の下の行に挿入 |
| O | カーソル位置の上の行に挿入 |
置換と挿入
| 指定 | 説明 |
|---|---|
| s | 1文字を削除して挿入モード |
| S | 現在の行を削除して挿入モード |
| cc | カーソル位置の行を削除して挿入モード |
| c0 | カーソル位置の直前から行頭まで削除して挿入モード |
| c$ | カーソル位置から行末まで削除して挿入モード |
| cw | カーソル位置からワード末まで削除して挿入モード |
| cW | カーソル位置から区切り文字を飛ばしてワード末まで削除して挿入モード |
置換
| 指定 | 説明 |
|---|---|
| R | カーソル位置から文字列を上書きして置換 |
| r | カーソル位置の1文字を1文字に置換 |
コピー
| 指定 | 説明 |
|---|---|
| yl | 一文字をコピー。5文字をコピーする場合にはy5lとなります。 |
| yy | カーソル位置の行をコピー |
| y0 | カーソル位置の直前から行頭までコピー |
| y$ | カーソル位置から行末までコピー |
| yw | 一単語のコピー。カーソル位置から次ワードの直前までコピーします。 |
| yW | カーソル位置から区切り文字を飛ばして次ワードの直前までコピー |
| yG | カーソル位置の行から文末(ファイル末尾)までコピー。ただし、コピー用のメモリバッファを超えると、切り捨てられるので注意が必要です。 |
削除
| 指定 | 説明 |
|---|---|
| x | カーソル位置の一文字を削除 |
| dd | カーソル位置の行を削除 |
| d0 | カーソル位置の直前から行頭まで削除 |
| d$ | カーソル位置から行末まで削除 |
| dG | カーソル位置の行から文末まで削除 |
| dw | カーソル位置から次ワードの直前まで削除 |
| dW | カーソル位置から区切り文字を飛ばして次ワードの直前まで削除 |
ペースト
| 指定 | 説明 |
|---|---|
| p | 挿入行が1行の場合にはカーソル位置の右、複数行の場合にはカーソル位置の下に挿入 |
| P | 挿入行が1行の場合カーソル位置の左に挿入、複行の場合カーソル位置の上に挿入 |
redoとundo
| 指定 | 説明 |
|---|---|
| u | 直前の編集作業の取り消し |
| [Ctrl]-[r] | undoを取り消す |
保存
| 指定 | 説明 |
|---|---|
| q[!] | 閉じる(保存しないで編集を破棄してでも閉じる) |
| :w[!] | 保存(読み込み専用ファイルでも保存する) |
| ZZ | 保存して閉じる |
その他
| 指定 | 説明 |
|---|---|
| J | カーソル位置の行と次行接続 |
| ~ | カーソル位置の英大・英小文字の変換を行う |
| . | 直前の編集作業の繰り返し |
| >> | タブの入力 |
| << | タブの削除 |
| [Ctrl]-[g] | 編集中ファイル名、全体行の行数 現在行の位置を表示 |
関連
- viの基本操作
- viの応用操作
- viの正規表現
- viで複数ファイルの編集
- viの画面分割
- viのFileExplorer
- viのコマンド実行
- viのsetコマンド一覧
- viの文字コードについて
- viの設定ファイル