40378


Vimで置換処理をする時に正規表現などを使ってるとちゃんと書けてるか自信がない時がよくあります。  
そういう時に置換対象がどれか画面上に表示されてる分だけハイライト表示をしてくれる機能が欲しかったのですが、探し方が悪かったようで見つかりませんでした。

たとえば `:%s/foo/bar/gc`とした時に一つ目の`foo`が反転でハイライト表示されてる時に、  
同時に他の画面内にある`foo`全てがハイライト表示するようにしたいです。

どうすればそのような動作に設定できるでしょうか？


CC BY-SA 3.0
2017-12-19T07:38:34.020
40377
2017-12-19T08:35:23.450
2017-12-19T08:00:49.577
19110
3271
question
vim
Vimで置換前に置換対象を一括で表示する方法。


検索結果ハイライトする前提で、検索してから置換。

`/foo`

でfooがハイライトされてる状態で、

`:%s//bar/gc`

ってするとハイライトされてるヤツらを確認しながらbarに変えれます。

検索結果のハイライトは、`~/.vimrc`に`set hlsearch`を追加してください。

* * *

つか、検索ハイライト設定した後に

`:%s/foo/bar/gc`

ってするだけで所望の動きになりますね...


CC BY-SA 3.0
2017-12-19T08:01:23.097
40378
2017-12-19T08:01:23.097
2383
40377
answer


Vim 8.0.1238 から、`'incsearch'` オプションと `'hlsearch'`
オプションがオンになっていた場合は全ての候補をハイライトするようになりました。  
Vim のバージョンを上げてみてください。


CC BY-SA 3.0
2017-12-19T08:35:23.450
40379
2017-12-19T08:35:23.450
2541
40377
answer