command movement etc
Mode Change
i カーソル位置の手前から入力モードへ移行  
a カーソル位置の後から入力モードへ移行  
O カーソル位置の上の行に、行を追加し入力モードへ  
o カーソル位置の下の行に、行を追加し入力モードへ  
Esc コマンドモードへ移行  
File
vi FileName ファイル名を指定して、起動 vi -r filename
ファイル修復
:w FileName 名前を付けて保存  
:w ファイルを上書き保存  
:wq ファイルを保存して終了  
:q viを終了  
:q! 保存せずに終了  
:set number 行番号表示  
Cursor
k 上へ移動 5kとすると、5行上へ移動
j 下へ移動 5jとすると、5行下へ移動
h 左へ移動 5hとすると、5文字左へ移動
l(小文字のL) 右へ移動 5lとすると、5文字右へ移動
gg ファイルの先頭行に移動  
10G 10行目へ移動 10は任意の数字
G ファイルの末尾へ移動  
Edit
X カーソルの手前の文字を削除(バッファに記憶) P又はpで張り付け
x カーソル位置の文字を削除(バッファに記憶) P又はpで張り付け
dd カーソル位置の行を削除(バッファに記憶) P又はpで張り付け
P カーソルの手前で張り付け(バッファ内の文字列)  
p カーソルの後で張り付け(バッファ内の文字列)  
u 元に戻す  
yy カーソル行をコピー  
zz 終了(変更されている場合)は保存  
Search/Replace
/検索文字列 下へ検索 n 検索の再実行
?検索文字列 上へ検索 n 検索の再実行
:1,$s/mojiold/mojinew/gc ファイル内の文字を置換え 1=検索開始行、$=検索終了行($は最終行)、
s=置換えoption、
mojiold=検索文字、mojinew=置換え文字、
g=全て置換え(無ければ最初に見付かった文字のみ)
c=置き換える前に確認(無ければ問答無用で置き換え)
:%s/@@@/\\\/g 一括置換 :%s/pattern1/pattern2/g   ( パターン1がパターン2に全て置き換わる)
Editor Customize
set autoindent 改行時に上の行と同じく自動インデントする  
set number 行番号を表示する  
set ruler ルーラー(右下に表示される行・列の番号)を表示する  
set tabstop=数値 タブの大きさを半角スペース数で指定  
set nowrap 折り返し表示しない  
set history=数値 コマンド履歴の保存数  
set backup ファイルを保存する時にバックアップファイルを作成する  
set nobackup バックアップファイルを作成しない  
syntax on | off カラー表示のオンまたはオフ