「vi」エディタ操作法

 平成3年に、システム管理やプログラミング実習等の為に作成していたものを、平成8年にテキスト部分だけをHTML化したものです。当時は、PC同好会がWEBページを作成する時も「vi」を利用していましたので、忘備メモとして活用するためでした。

熊本国府高等学校PC教室


 「vi」はパソコンでワープロやエディタなどを利用していた人にとっては、操作方法が違い、戸惑うことも多いかも知れません。しかし、慣れれば結構使い勝手のいいエディタと言えます。UNIXには必ず付属しています。そこで、その操作法と注意点を簡単にまとめておます。


viとは

 viは米国カリフォルニア州立大学バークレー校で開発されたスクリーン(画面)エディタ(入力編集ソフト)で、UNIX上では最もポピュラーなエディタではないでしょうか。
 「vi」(ブイアイと読む)という名前は英語の「visual」からきています。


viの起動法

 vi [ファイル名][RETURNキー]
  (新しいファイルの場合は、ファイル名は後で設定しても可。後述のwコマンドの項参照。)


「コマンドモード」と「入力モード」

 viを操作する(仕事をさせる)「コマンド(命令)モード」と、プログラムなどの文字を入力するための「入力(挿入)モード」からなっています。
 viを起動したときは、「コマンドモード」となっています。
「コマンドモード」から「入力モード」に移行するにはEscキーを押します。「入力モード」から「コマンドモード」に移行するときもEscキーを押します。

起動
  vi




終了
  q!






Esc ====>


<==== Esc
 





 
現在のモード(コマンド・入力)が、
どちらなのかを、注意しましょう!

(入力の場合、画面下の「挿入」の
文字で区別)
 

コマンド

 viのコマンドはいろいろありますが、特に必要だと思われるコマンドを幾つか紹介します。これだけ覚えれば「vi」を不自由なく活用できるのではないでしょうか。

コマンド入力では、大文字と小文字の違いに注意しましょう。(「a」と「A」などです。実行に違いがあります)
コマンドで使う英数文字や記号は半角です。(A、x、/、%、!、スペースなど)

‘力を行なうためのコマンド

a (カーソルの後に文字を追加する)
A (カーソルのある行の末尾に文字を追加する)
i (カーソルの前に文字を挿入する)
I (カーソルのある行の先頭に文字を挿入する)
o (カーソルのある行のすぐ下の行に文字を挿入する・行をあける)
O (カーソルのある行のすぐ上の行に文字を挿入する・行をあける)
覚え方:aA(append、add),iI(insert),oO(open、out)などは?
     
他のコマンドも、自分で色々と関連付けて覚えるのもいいでしょう。
 
本校の画面では、このコマンドが実行されると、画面下に「挿入」と表示されます。Escキーを押すまで続きます。

▲ーソル移動

 矢印キー(それぞれの方向にカーソルを移動する)
h (左に1文字移動する ←)
j (下に1文字移動する ↓)    h  j  k  l
k (上に1文字移動する ↑)   ← ↓ ↑ →
l (右に1文字移動する →)  

 文字移動のキーは覚えにくいですが、指の移動が少なく、慣れてしまったら、すごく便利です!

注意:カーソルは画面上でも未入力の場所には移動しません。

J源を削除するコマンド

x (カーソルのある文字を削除する)
dd(カーソルのある行を削除する)
 (2xや3ddで、2文字とか3行一緒にも可能です)
D (カーソルのある文字から、行の末尾までを削除する)

ず鐔した文字を復元させるコマンド

 xの後
p (削除した文字列をカーソルのある文字の後に復元する)
P (削除した文字列をカーソルのある文字位置に復元する)
 ddの後
p (削除した文字列をカーソルのある行の下の行に復元する)
P (削除した文字列をカーソルのある行の上の行に復元する)

とい鬚Δ泙利用することにより、文字列の移動や複写もできます。単なる複写は次の「yy」コマンドと「p」や「P」コマンドが便利でしょう。
yy (カーソル行をバッファに記憶します)
3yy(カーソル行から3行をバッファに記憶します)

yyコマンドの後、カーソルを複写したい行の1行上の行に移動して、pを押せば、複写されます。yyの代わりにddを使えば移動もできます。

ゲ萍粍榮阿里燭瓩離灰泪鵐

^d (画面を半ページ下げる) down
^u (画面を半ページ上げる) up
^f (次ページを表示する)  forward
^b (前ページを表示する)  backward

「^d」とはCTRLキーを押しながらdを押すことです。(本によっては「CTRL+d」とも書くことがあります)

Ω〆のためのコマンド

/文字列[RETURNキー] (カーソルの位置から末尾方向へ、文字列を検索します)
?文字列[RETURNキー] (カーソルの位置から先頭方向へ、文字列を検索します)
n (検索を続けていきます)
N (逆方向へ検索を行ないます)

置換のためのコマンド

r 1文字      (カーソルの位置の文字が「1文字」に置換します)
s 文字列Esc  (カーソルの位置の文字が文字列に置換します)
cw 文字列Esc (カーソルの位置の「単語」が文字列に置換します)
:%s/検索文字列/変更文字列/g[RETURNキー]
   (全ての行にわたって検索文字列を変更文字列に変換します)

┘灰泪鵐票茲蠑辰靴離灰泪鵐

u (最後に実行したコマンドを取り消し、そのコマンド入力前の状態にします)
U (その行で行なったすべての変更を取り消します)

間違えたときに便利だよ!
画面がメチャクチャになったときなんか!

終了のためのコマンド

:w ファイル名 (そのファイル名で書き込みます。ファイル名を
   省略すれば、起動時のファイル名で書き込みます。)
:wq[RETURNキー] (ファイルを書き込んで終了します)
:q![RETURNキー] (ファイルを書き込まずに終了します)
ZZ (大文字だよ! ファイルを書き込んで終了します)

その他のコマンド

:!unixコマンド[RETURNキー] (vi起動中に、unixコマンドが使えます)
:!lp ファイル名[RETURNキー] (viを終わらず、そのファイルを印刷することもできます)
:W ファイル名[RETURNキー] (現在行の直後にファイルを読み込む)
. (ピリオドだよ! 直前まで実行していたコマンドを繰り返します)
J (大文字だよ! カーソルのある行の末尾に次の行を続ける)

注意:SHIFT+jで、行がくっついてしまうのだ!

<最後に>
 以上、たったこれだけ(全部覚えなくても利用できます)で充分に活用できるところが「vi」の大きな長所とも思われます。しかし、コマンドはここに紹介した以外にもたくさんありますので、コマンドの入力には充分注意してください。
 本ページは本校情報処理のCOBOLプログラミング実習用に、1991年11月作成していたものを、外字や作図部分を削除して、HTML化したもので、誤字・脱字もあるかと思われます。お気づきのところがありましたら、ご連絡をお願い致します。(nari)

 一部、文字化けがあるとのメールをいただき、更新しました。前回の更新時、何らかの操作ミスで文字化けを生じたようです。ご連絡、ありがとうございました。このページを使っていただいていることを嬉しく思います。今後ともよろしくお願いします。(最終更新:2007/03/08)

文責:成田(問い合わせはE-mailで)

学校紹介のページへ  コンピ~ュータのページへ