Viコマンド

Viコマンドの使い方

カーソルの移動

w 次の単語の先頭 
b 前の単語の先頭 
0 行頭 
$ 行末

指定行への移動

gg ファイルの先頭
1G ファイルの先頭
nG ファイルのn行目
:n ファイルのn行目
G ファイル末

スクロール

Ctrl + U 逆方向に半画面スクロール
Ctrl + D 順方向に半画面スクロール
Ctrl + B 逆方向に1画面スクロール
Ctrl + F 順方向に1画面スクロール

文字の挿入

i カーソルのある場所に挿入 
a カーソルの後ろに挿入 
I 行頭に挿入 
A 行末に挿入 
o カーソルの下の行に挿入 
O カーソルの上の行に挿入 
p カーソルの後に最新のバッファ内容を挿入 
P カーソルの前に最新のバッファ内容を挿入 

文字の削除

x カーソル上の文字を削除 
X カーソルの前の文字を削除 
dw 単語を削除 
d^ 行頭まで削除 
d$ 行末まで削除 
dd 現在行を削除 
df 指定文字までを削除 
J  改行削除  
dG 先頭までを削除(:1,.d)
d1G 行末までを削除(:.,$d)

コピー&ペースト

y$ 行末までをコピー
y0 行頭までをコピー
yw 単語をコピー
nyl n文字後までをコピー
yy 1行コピー
nyy n行コピー
p 貼り付け

テキストの挿入

:r ファイル名 次の行にファイルを読み込む 
:$r ファイル名 ファイル末尾にファイルを読み込む
:0r ファイル名 ファイル先頭にファイルを読み込む

文字の書換え

r 1文字書き換え 
R [ESC]キーを押すまで書き換え 
cw 単語の書き換え 
c$ 行末まで置き換え
cf 指定文字までを書き換え 
u アンドゥ機能 

大文字・小文字の置換

^ 大文字を小文字/小文字を大文字に置換
n^ n文字の大文字を小文字/小文字を大文字に置換 

文字の置換

:s/文字列/文字列/ 
例)
:s/original/replace/  最初の1つを置換
:s/original/replace/g 全部を置換
:s/original/replace/c 置換を確認
:1,10s/original/replace/ 1行目から10行目まで置換

文字の検索

/ カーソル位置からファイル末尾に向かって検索 
? カーソル位置からファイル先頭に向かって検索 

その他

:w ファイルの保存 
:r ファイルの読み込み 
:e 別ファイルの編集 
:! 指定コマンドの実行 

設定ファイル

個別の設定をしたい場合は、「.exrc」または「.vimrc」に記述する。
両方のファイルが存在すれば「.exrc」が無視される。

set number           行番号を表示する 
set tabstop=4        タブ幅を半角4文字 
set autowrite        ファイル切り替え操作時に自動保存する 
set autoindent       上の行のインデント指定を改行時の下行でも引き継ぐ 
set backup           ファイル保存時にバックファイル(.bak)を作成する 
set backupdir=>~/tmp バックアップファイルを作成する際~/tmp下に保存する 
set backspace=1      改行後に「Backspace」キーを押すと上行末尾に戻る 
set backspace=2      改行後に「Backspace」キーを押すと上行末尾の文字を1文字消す 
set history=10       シェル指定の実行履歴を10つまで保存する 
set list             通常は可視表示になっている「タブ」や「改行」を「 ^I」や「$」で表示する 
set title            ktermなどのウィンドウタイトルに編集中のファイル名を表示させる 
set notitle          ktermなどのウィンドウタイトルに編集中のファイル名を表示させない 
set ruler            ルーラーを表示する 
set nowrap           折り返し表示されない