カテゴリ:

Linuxのセミナーを始めたばかりの頃、プログラマーの人が生徒でやってきました。Webサーバの設定にあたり、ここからここまでまとめてコメントを付けてください、外してくださいと言ったら、彼は一瞬でそれを実行したのです。きっとどうにかすれば出来るだろうとは思っていたものの、具体的な方法はまだ知らなかった私はものすごく驚いたのでした…。

このように行をまたいでまとめて処理することを矩形処理、などと言います。では実際にやってみましょう。

このようなテキストがあります。まずすべての行を有効にするために行頭の # を取る例です。

#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

まずカーソルを記の様に開始行におきます。

1_4

ここで Ctrl-v とします。そのまま j で下方向に進むと下記のようにブロックで選択されます。

2

この状態で d を押すと # がまとめて削除できます。

3

次に # を付けてみます。先ほどと同じように Ctrl-v で下記のように選択します。次に I ( i でなく大文字)を押し、そのまま # を入力します。

4

そして Esc を押すと # がまとめて入力されます。

5

ちなみに矩形処理をするにはRed Hat系の場合 vim-enhanced パッケージが必要みたいです。

$ rpm -q vim-enhanced
vim-enhanced-6.3.046-0.40E.7