vi
visual editor


viの中でのカーソル移動

コマンド
意味
k
カーソルを上に移動
j
カーソルを下に移動
h
カーソルを左に移動
l
カーソルを右に移動
G
一番最後の行に移動
1G
先頭行に移動
+ or 改行
次の行の先頭に移動
0(ゼロ)
現在の行の先頭に移動
$
現在の行の終わりに移動
%
現在のカーソル位置のかっこと対応するかっこに移動

テキスト入力モードにおける制御キー

コマンド
意味
BS
カーソル位置の直前の文字を無効にしカーソルを無効にした文字の位置に移動
改行
改行文字を入力しカーソルを次行の左端に移動
TAB
タブ文字を入力しカーソルを次のタブ位置に移動
ESC
テキスト入力モードを終了させコマンドモードにする

テキスト入力コマンド

コマンド
意味
i
カーソルの左側にテキストを入力
I
行の先頭にテキストを入力
a
カーソルの右側にテキストを入力
A
行の末尾にテキストを入力
o
カーソルのある行の下に新しい行を挿入
O
カーソルのある行の上に新しい行を挿入

テキストの修正

コマンド
意味
R
カーソル位置以降の文字を上書
cw
カーソル位置からその単語の末尾までを置換
C
カーソル位置から行末までを置換
s
カーソル位置の1文字を置換
S
カーソル位置の行を置換

テキストの削除

コマンド
意味
x
カーソル位置の文字を削除
dd
カーソル位置の行を削除
D
カーソル位置から行末まで削除
dw
カーソル位置からその単語の末尾までを削除
行数dd
カーソル行以降指定した行数分削除

行連結

コマンド
意味
J
カーソル位置の行と次の行を連結

テキストの移動/複写

コマンド
意味
yy
カーソル行をコピー
行数yy
カーソル行以降指定した行数分をコピー
p
削除したりコピーしたテキストを貼り付け

便利なコマンド

コマンド
意味
u
直前の変更(コマンド)を取り消す
.(ピリオド)
直前の変更(コマンド)を繰り返す
/検索文字列
カーソル位置から指定した文字列を検索
?検索文字列
カーソル位置から指定した文字列を前方検索
n
前回の/または?コマンドの繰り返し

N

前回の/または?コマンドの逆転

ファイル操作

コマンド
意味
ZZ
保存して終了
:q!
保存しないで終了
:e!
変更箇所を無視して再編集
:w ファイル名
名前を付けて保存


viの環境

ホームディレクトリの下に .exrc を作っておくと、vi起動時に .exrc に記述した環境が設定されます

●ファイル:.exrc
set number
set autoindent
set showmode
編集画面の左側に行番号を表示
自動インデント機能
編集モードを右下に表示

※自動インデント機能で、字下げされた位置より左にカーソルを移動するには Ctrl + D を押す