俺のためのお仕事メモ(仮) > エディタviを使ってみる

Unix系OSでは定番エディタのひとつ「 vi 」。
emacsがインストールされていないマシンでも、viは入ってることが多いですよね。
定番エディタというよりも基本エディタといった方がいいのかもしれません。
Unix系OSユーザならviを使えないと困る場面が結構あると思います。
というわけで、今回はviの基本的な操作方法をまとめて見ますた。
覚えておけばきっと役に立つと思います。
emacsと同様、こちらもコマンドで使うタイプのエディタですので、Windowsユーザにとっては慣れるまでは多少使いにくく感じるかも。
まぁ慣れてしまえばどうってことないです(多分w)


【ここで説明する基本的な操作】


※「↓」は改行を表しています。
※「Ctrl+b」と書いてある場合は、"「Ctrl」キーを押しながら「b」キーを押す"という意味です。
※viには「コマンドモード」と「入力モード」の二種類のモードがあり、カーソルを動かしたりファイルを保存したりする操作は「コマンドモード」で、実際にテキストを入力したりする作業は「入力モード」で行います。

ESCキーを押せば、コマンドモード。
コマンドモードで「i」を押せば、入力モードになります。

起動

コマンドプロンプトから

% vi ↓

と入力すればviが起動します。
"hogehoge.txt"というファイルを開きたい場合は、

% vi hogehoge.txt↓

と入力します。
ちなみにhogehoge.txtを「ReadOnly」で開きたいときは、

% vi -r hogehoge.txt↓

と入力します。


終了

viを終了させます。

・終了                コマンドモードで :q と入力し↓
・強制終了             コマンドモードで :q! と入力し↓
・ファイルを保存して終了.    コマンドモードで :wq と入力↓


カーソル操作

基本的にはカーソルキーだけで問題ないはずですが、 万が一カーソルキーに対応していなくても以下の方法でカーソルを操作することができます。

右→      コマンドモードで l 
左←      コマンドモードで h 
上↑      コマンドモードで k 
下↓      コマンドモードで j 
・行頭へ移動      コマンドモードで 0 (ゼロ)
・行末へ移動      コマンドモードで $ 
・文書の先頭へ移動  コマンドモードで 1G 
・文書の末尾へ移動  コマンドモードで G 
・1ページ上へ移動   コマンドモードで Ctrl+b  便利
・1ページ下へ移動   コマンドモードで Ctrl+f  便利
・1文節右へ移動  コマンドモードで w 
・1文節左へ移動  コマンドモードで b 


文字のコピペ(一連の操作) かなり便利。むしろ重要!

これはもっともよく使う操作ではないでしょうか。
「文字の選択」→「切り取り(もしくはコピー)」→「貼り付け」の操作です。
絶対に覚えておこう。

1.まずは、コピー(切り取り)する文字を選択する
 1−1.始点を決める             コマンドモードで mx   
 1−2.カーソルで終点まで移動する   ←↑↓→
 1−3.終点を決めコピーする       コマンドモードで y`x 

※「x」の部分はアルファベットであればなんでもよい。
※「1−3」でコピーを行ったので次の「2」の作業は飛ばしてください。

2.コピー(切り取り)する
 ・コピーする           コマンドモードで y 
 ・行全体をコピーする.     コマンドモードで yy 便利
 ・切り取る.            コマンドモードで x 

3.コピー(切り取り)した文字を貼り付ける
 ・貼り付ける              コマンドモードで p 
 ・カーソル位置にファイルを挿入  コマンドモードで :r ファイル名 と入力し↓便利


文字を削除

文字削除です。
1行まとめて削除とか結構イイかも。

・一文字削除        コマンドモードで x 
・一行削除.         コマンドモードで dd 便利
・カーソル位置から行末まで削除    コマンドモードで D かなり便利
・カーソル位置から行頭まで削除    コマンドモードで d0 (ゼロ) かなり便利
・カーソル位置から単語の末尾まで削除    コマンドモードで dw 便利


検索 かなり便利。

この操作もよく使いますよね。
コピペと同じくらい重要かも。

・下に検索する       コマンドモードで /検索文字 と入力し↓
・上に検索する       コマンドモードで ?検索文字 と入力し↓

※「n」を連打すれば次々に検索してくれます。



置換 かなり便利。

正規表現を使った置換です。
これ使えるとかなり便利ですよね。

・一括置換する       コマンドモードで :%s/検索文字/新しい文字/g と入力し↓

・確認しながら置換する  コマンドモードで :%s/検索文字/新しい文字/gc と入力し↓



Undo

おなじみのUndo(やり直し)ですw

・Undoする       コマンドモードで u 


コマンドの繰り返し ナニゲに便利。

同じコマンドを何回も繰り返すような作業にはコレ。
めっちゃ便利!

・コマンドの繰り返し       コマンドモードで . (ピリオド)


ファイルの保存 重要!

ファイルの保存です。
説明の必要もないと思いますw

・上書き保存        コマンドモードで :w と入力し↓
・名前をつけて保存    コマンドモードで :w ファイル名 と入力し↓


viをいろいろ試してて思ったんですが、、、何気にemacsより使いやすいかも。
Copyright (C) 2004 tanaka akira. All Rights Reserved.