- 1. 概要
- 2. マクロで繰り返し入力する
- 3. もっと簡単に
1. 概要
例えば、コンフィグレーションファイルなどで、複数行をコメントアウトするときがあります。
削除するのはこわいのでコメントアウトするわけだ。
わたしには結構こういう場面があるのですよ。
「redmine」の「database.yml」としましょう。
# Line indentation must be 2 spaces (no tabs).
production:
adapter: mysql2
database: redmine
host: localhost
username: root
password: ""
encoding: utf8
development:
adapter: mysql2
database: redmine_development
host: localhost
username: root
password: ""
encoding: utf8
7~21行の先頭に #(シャープ)をつけたいわけです。
i で入力モードにして
# ← ↓ これを、何度も繰り返すので、マクロに記録して一気に入力できんかな・・・と。
vim ならそういう機能がありそうと思ったら、ありました。
本項は「vimで繰り返し入力を自動化 - エイリーの備忘録」を参考にさせていただきました。
2. マクロで繰り返し入力する
前項の状況で 7行目にカーソルを置いて
# Line indentation must be 2 spaces (no tabs).
production:
q で記録開始
a でマクロ名を a に設定(つまりここは何でもいいわけだ)
i
#
←
↓
ESCq で記録終了
これで、マクロが記録されました。
@a でマクロを実行します。
繰り返し回数 @a で回数分マクロを実行します。
3. もっと簡単に
行頭に「#」を入力するだけならば、もっと簡単な方法があるようです。
(参考サイトを掲載しておりましたが、リンク切れになりました)
. で直前の動作を繰り返すそうで。
行頭に「#」を入力するだけであれば。
行頭の位置で i # ESC。
あとは、↓ . を繰り返すだけで、以降の行を次々にコメントアウトできます。
|
|