2013-02-13 6 views
7

Vimの検索をハイライト表示させないようにすることは可能ですが、通常の検索でハイライト表示する方法はありますが、置換などはできません。Vimでは検索をハイライトしますが、置換はしませんか?

:s/^/#/ 

は、ブロック全体をコメントアウトする:

私は頻繁にしてのような何かをするテキストのブロックをハイライト表示されます。しかし、私は画面の左側を上下に走っている醜い黄色のバーを持っており、それをクリアするたびに:nohにしなければならない。

ハイライトを通常の/検索に残したい。これは可能ですか?

+0

これがうまくいくかどうかわかりませんが、 'search'ハイライトグループを通常のテキストのように変更し、 '/'検索キーを何らかの形で ':Match NewSearchGroup/searchterm/。私はまた、より良い方法を聞くのが大好きだ。 – Tim

+1

これはあなたの質問に答えるものではありませんが、テキストブロックをコメントアウトするには、実際に[tComment](https://github.com/tomtom/tcomment_vim)(または同様のコメントプラグイン)を使用する必要があります。あなたはコメントのための動作を使用することができ、XMLを含む何かを簡単にコメントすることができます。 –

+0

多分あなたは正しい方向を指し示すために[この回答](http://stackoverflow.com/a/13636203/778118)を使うことができます... – jahroy

答えて

5

これは完全にあなたの質問に答えるが、私はそれが助けた同じ問題を持つためにはありません:私は簡単に検索や検索と置換

nnoremap <esc> :noh<return><esc> 

(からをした後、強調表示を無効にするには、このコマンドを追加しましたVim clear last search highlighting

+0

あなたは私にそれを打つ...私は「ENTER」キー。 – jahroy

1

マイソリューション:あなたのvimrcファイルでこれを入れ

set nohlsearch 

noremap * :set hlsearch<CR>:nohlsearch<CR>* 
noremap/:set hlsearch<CR>:nohlsearch<CR>/ 
noremap ? :set hlsearch<CR>:nohlsearch<CR>? 

nnoremap <F4> :set invhlsearch<CR> 
inoremap <F4> <ESC>:set invhlsearch<CR>gi 
nnoremap <CR> :set nohlsearch<CR> 

それは何:

  1. 検索では常にハイライトが有効になります。
  2. を入力すると、次の検索までハイライトがオフになりますが、次の代替文字はオフになりません。 を入力してもう一度と入力しても、再びオンにはなりません。
  3. F4を使用して、次の検索までハイライトをオフにしますが、次の代替ではありません。 F4を再度押すと、最後の検索パターンのハイライトが切り替わります---検索ORがあればそれを置換します。

本当によく説明されることはありませんハイライトのいくつかの注意:
'hlsearch'オプションがオンの場合、すべての将来の検索/置換体が"highlight visibility"をオンにします。現在の"highlight visibility"は実際には直接照会または独立して設定することはできませんが、コマンド:nohlsearch(これは:set nohlsearchと同じではありません。

さらに、コマンド:set hlsearchを実行するときは、次の2つの効果があります。オプションを設定し、:nohlsearchを入力した場合、vimを忘れさせます。つまり、'hlsearch'(オンまたはオフのいずれか)を変更すると、現在の"highlight visibility"が論理的に一致するように強制されます。

関連する問題