vi - 使い方

クラウディア 
1. キー操作・コマンド一覧
2. 起動と終了
3. モードについて

1. キー操作・コマンド一覧

 「キー操作・コマンド」の一覧を記載しておきます。  本来はもっと複雑な操作ができますし、それを覚えておくと編集が楽になるのですが、本当の長文を編集するのであれば GUI で行う方が楽でしょうし、vi で編集することが必要になるのはそこまで複雑な操作ではないと思っています。  あえて、わたしが実際に使用しているキー操作・コマンドにとどめる程度にします。
キー操作・コマンド一覧

 カテゴリ  キー操作・コマンド   意味  
編集モードへの移行 i 挿入モードへ移行
a 現在位置の後ろから挿入モードへ移行
A 現在行の末尾から挿入モードへ移行
r 現在位置の1文字分上書き
R 現在位置から上書きモードへ移行
1文字カーソル移動 h 「←」と同値
j 「↓」と同値
k 「↑」と同値
l 「→」と同値
1語カーソル移動 w 1語分後ろへ移動
行内先頭・末尾移動 0 行の先頭へ移動
$ 行の末尾へ移動
行ジャンプ G ファイルの最下行へ移動
nG ファイルの n 行へ移動
検索 /文字列 文字列を検索
// 直前に検索した文字列を再検索
置換 :%s/文字列1/文字列2/ 文字列1を文字列2に1回置換
:%s/文字列1/文字列2/g ファイル内の全文字列1を文字列2に置換
:n,m s/文字列1/文字列2/g nm 行の文字列1を文字列2に置換
削除 x 現在位置の1文字列を削除
D 現在位置から行末までを削除
dd 現在行を削除
dw 単語を削除
ndd 現在行以下 n 行を削除
コピー・ペースト Y 現在行をコピー
nY 現在位置から n 行までをコピー
P コピーまたは削除していたものをペースト
保存・終了 :x 編集した内容を保存して終了
:q! 編集した内容をキャンセルして終了
:w 編集した内容を保存
行編集 Shift+J 行を連結
現在カーソルがある行の末尾に次の行が連結されます

 イタリック表記の nm は数字を示します。
 先頭に [:] がついているものは、[:] キーを押してから入力します。
 先頭に [/] がついているものは、[/] キーを押してから入力します。
 検索・置換で文字列内に [/] が存在する場合は文字列をはさむ [/] の代わりに [:](コロン)、[?](クエスチョンマーク)、[.](ドット)、[=](イコール)などが使えます。

2. 起動と終了

 ログインします。

> vi ファイル名
 で vi エディタが起動します。画面上にファイルの先頭から端末の最終までの行が出ていると思います。初めてのひとはここで何も編集せずに終了するやりかたを・・・。  [:] キーを押します。最下行に

:
 と表示されます。この状態で [q!]、[Enter] を押します。

:q! [Enter] は表示されませんのであしからず
 画面上に表示されたファイル内の文字が消えて、通常のプロンプトに戻るはずです。

3. モードについて

 前項の一覧の動きの中で、最初に現れた画面で iR などのキーを入力して、ファイルの文字を変更する状態やキー入力したものがファイル上には直接反映されない状態など、一連の捜査の状態をモードといいます。  vi では、この「モード」を使い分けながらファイルを編集していきます。  大きく分けて3つのモードがあります。 ・カーソル移動等キーコードがファイルに直接は反映されない コマンドモード ・入力した文字列がファイルに直接反映される 編集モード ・左下に : あるいは / を出して作業をする exモード  編集モードからコマンドモードに戻るとき、ex モードの入力をキャンセルしてコマンドモードに戻るときは ESC キーを入力します。  何かアクションを起こすときは ESC キーを入力するくせをつけておくとミスが少なくなります。