vimコマンド一覧

概要

Unix/Linuxの標準エディタはviになります。コマンド名はviですが、実質vimが起動されます。vi(vim)はキー入力モードや編集モード等があり、このモードによってキー入力の結果が異なります。一般的なwindowsのエディタと比べるとかなり操作性が異なります。vi(vim)の入力モードやコマンドの一覧を作成しました。

vimモード一覧

vimモード

vimは操作目的によりモードを意識する必要があります。これらのモードを一覧にしました。

モード一覧
モード名 説明
ノーマルモード vi起動後のモード。キーボードからのキー入力は入力文字ではなく、編集用のキーとして処理される。編集用のキーそのものは、画面には表示されず、編集結果が画面に表示される。
コマンドモード :キー押下後、画面下部:が表示され、コマンド入力モードに遷移する。その後、:の後ろに編集コマンド(exエディタのコマンド)を入力し、リターンキー押下後コマンドが実行される。
/キー押下後、画面下部/が表示され、検索モードに遷移する。その後入力された文字は検索文字とされ、リターンキー入力で検索が行われる。
?キーも同様であるが逆方向の検索となる。
ビジュアルモード vキー押下後、カーソル移動を行うことで指定した範囲が選択される。文字列のカットアンドペーストが容易に行える。
インサートモード キーボードから入力した文字がそのまま画面に表示され、かつ入力値として編集結果に反映される。(一般的なエディタと同様の状態)

vimの各モードと遷移コマンド

vimの特定のモードから、別のモードに遷移するときのキー入力をまとめました。

基本はノーマルモードになります。ノーマルモードから別のモードへは簡単に遷移できますが、ノーマルモード以外の状態から別のモードに遷移する場合、いったんノーマルモードを経由する必要があります。

vimの各モードと遷移コマンド
変更前モード 変更後モード キー入力 説明
ノーマルモード コマンドモード :, /, ? :もしくは /もしくは ? のいずれかのキー入力でコマンドモードに遷移する
ビジュアルモード v, V, Ctrl+v (Ctrl+q) vもしくは Vもしくは Ctrl+v (Windowsの場合はCtrl+q) でビジュアルモードに遷移する
インサートモード i, I, a, A, o, O iもしくは Iもしくは aもしくは Aもしくは oもしくは O でインサートモードに遷移する
コマンドモード ノーマルモード ESC ESCキー入力でノーマルモードに遷移する
ビジュアルモード   ノーマルモードに戻る必要があり、直接ビジュアルモードには遷移できない
インサートモード   ノーマルモードに戻る必要があり、直接インサートモードには遷移できない
ビジュアルモード ノーマルモード ESC ESCキー入力でノーマルモードに遷移する
コマンドモード   ノーマルモードに戻る必要があり、直接コマンドモードには遷移できない
インサートモード   ノーマルモードに戻る必要があり、直接インサートモードには遷移できない
インサートモード ノーマルモード ESC ESCキー入力でノーマルモードに遷移する
コマンドモード   ノーマルモードに戻る必要があり、直接コマンドモードにには遷移できない
ビジュアルモード   ノーマルモードに戻る必要があり、直接ビジュアルモードには遷移できない

コマンドモード遷移

ノーマルモードから、コマンドモードへ遷移する場合にキー入力一覧になります。

コマンドモード遷移キー一覧
キー入力 説明
: 最下行に:が表示され、この後ろにコマンド(exコマンド)を入力することができる。
/ 最下行に/が表示され、この後ろに検索コマンドを入力することができる。検索方向はカーソル位置から順方向となる。
? 最下行に/が表示され、この後ろに検索コマンドを入力することができる。検索方向はカーソル位置から逆方向となる。

ビジュアルモード遷移

ノーマルモードから、ビジュアルモードへ遷移する場合にキー入力一覧になります。

ビジュアルモード遷移キー一覧
キー入力 説明
v カーソル移動を行うことで、1文字単位に選択することができる。
V カーソル移動を行うことで、行単位に選択することができる。
Ctrl+v カーソル移動を行うことで、矩形で選択できる。

ビジュアルモード遷移

ノーマルモードから、インサートモードへ遷移する場合にキー入力一覧になります。

インサートモード遷移キー一覧
キー入力 説明
i カーソルの前から文字入力できる状態でインサートモードに遷移する
I 行の先頭から文字入力できる状態でインサートモードに遷移する
a カーソルの後ろから文字入力できる状態でインサートモードに遷移する
A 行末から文字入力できる状態でインサートモードに遷移する
o カーソルの下に1行空白行ができ、ここから文字入力できる状態でインサートモードに遷移する
O カーソルの上に1行空白行ができ、ここから文字入力できる状態でインサートモードに遷移する

ノーマルモード

カーソル移動

カーソル移動は、カーソルキーでもできますが、アルファベットキーを使っても可能です。

あわせて、多様なカーソル移動に対応しています。

カーソル移動方法一覧
キー入力 説明
h, hもしくは のキー入力でカーソルを左に移動することができる
もしくは のキー入力でカーソルを右に移動することができる
k kもしくは のキー入力でカーソルを上に移動することができる
もしくは のキー入力でカーソルを下に移動することができる
b bのキー入力でカーソルを前の単語の位置に移動することができる。
w wのキー入力でカーソルを次の単語の位置に移動することができる。
0 のキー入力でカーソルを行の0カラムに移動することができる。
のキー入力でカーソルを行の先頭位置に移動することができる。
$ $のキー入力でカーソルを行の行末に移動することができる。
任意の1文字 任意の1文字のキー入力でカーソルより後ろにある任意の1文字へ移動することができる。ただし、対象の文字がない場合はカーソル移動は行われない。また移動範囲はカーソルがある行に限定される。
Shift+f任意の1文字 Shift+f任意の1文字のキー入力(大文字のF)でカーソルより前にある任意の1文字へ移動することができる。ただし、対象の文字がない場合はカーソル移動は行われない。また移動範囲はカーソルがある行に限定される。
Ctrl+u Ctrl+u のキー入力でカーソルを半画面上に移動することができる
Ctrl+d Ctrl+d のキー入力でカーソルを半画面下に移動することができる
Shift+g Shift+g のキー入力(大文字のG)でカーソルを一番最後の行に移動することができる
数字Shift+G 数字Shift+G のキー入力でカーソルを数値で指定した行に移動することができる
% %のキー入力で対応するかっこの位置へ移動することができる。ただし、カーソル位置がかっこでない場合はカーソル移動は行われない。
zz zzのキー入力でカーソル位置の行が画面中央になるように移動することができる。

行編集

削除や連結等の行編集に使用するキーです。

編集操作一覧
キー入力 説明
Shift+d Shift+dのキー入力(大文字のD)でカーソル行を空行にすることができる。
dd ddのキー入力で、カーソル行を削除することができる。
数値d 数値dのキー入力で、カーソル行を含む数値行を削除することができる。
x xのキー入力で、カーソル位置の1文字を削除し、カーソルを次の文字へ移動することができる。
Shift+x Shift+xのキー入力(大文字のX)でカーソル位置の1文字を削除し、カーソルを前の文字へ移動することができる。
dw dwのキー入力で、カーソル位置から後ろ方向1ワード分削除することができる。wはカーソル移動についても参照のこと。
dl dlのキー入力で、カーソル位置の1文字を削除し、カーソルを次の文字へ移動することができる(xと同じ振る舞いとなる)。lはカーソル移動についても参照のこと。
dh dhのキー入力で、カーソル位置の前1文字を削除することができる。hはカーソル移動についても参照のこと。
dk dのキー入力で、カーソルと上の行の2行を削除することができる。kはカーソル移動についても参照のこと。
dj djのキー入力で、カーソルと下の行の2行を削除することができる。jはカーソル移動についても参照のこと。
db dbのキー入力で、カーソル位置から前方向1ワード分削除することができる。bはカーソル移動についても参照のこと。
p pのキー入力で、カーソル位置に張り付けることができる。
. .のキー入力で、直前の処理を繰り返すことができる。
u uのキー入力で、直前の処理を取り消すことができる。アンドゥ。
Ctrl+r Ctrl+rリドゥ。




 作成:2018/09/30 16:33:49  (作成
 更新:2018/09/30 22:55:47  (更新