vimで複数ファイルにまたがる特定のパターンを置換する場合のお作法

grep-edit.el無双

vimの場合だと、、
ファイルが既にバッファに読み込まれているならbufdoでもいいけど、そうでなければ
argsコマンドで対象となるファイルを選び出して、argdoで一気に変換。
これが簡単でよろしい。

で、対象となるファイルの抽出ですが、

例えば、cのソースコードファイルだけを対象にする場合は

:args *.c

フォルダー内も対象とるする場合は

:args **/*.c

対象となるファイルを確認するには

:args

そんでもって変換は

:argdo %s/hoge/fuga/g | update

これで対象ファイルのすべてのhogeをfugaに変換してくれます。

vimを使い始めてかれこれ8年ほどになるが、これのやり方がよく分からんかった。
秀丸を使っていたのはここだけの話。。。

これ以外でいい方法があったら教えてください。

LINEで送る
Bookmark this on Digg
Bookmark this on Delicious
Bookmark this on Google Bookmarks
Pocket


Trackbacks & Pingbacks


Comments

自分もバッファ全部に対する置換のしかたが分からなくて
困っていました。貴重な情報、ありがとうございます。

コメントをどうぞ

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(必須)

(必須)


CAPTCHA