2009-08-29 20 views
56

Mam :set hlsearch jako wartość domyślną.Jak pozbyć się wyróżnienia wyszukiwania w Vim

Gdy szukam czegoś, wyróżniane są wyszukiwane hasła. Jednak wiele razy chcę pozbyć się tego najważniejszego, więc robię :set nohlsearch. W ten sposób pozbywam się na razie najciekawszych momentów.

Jednak jeśli wykonam nowe wyszukiwanie, wyszukiwane hasła nie zostaną podświetlone.

chciałbym trafić ESC + ESC pozbyć pasemkami, a następnie ustawić z powrotem :set hlsearch.

Wszelkie sugestie?

+2

możliwe duplikat [vim jasne wyszukiwania podkreślającym ostatni] (http://stackoverflow.com/questions/657447/vim-clear-last-search-highlighting) –

Odpowiedz

92

Wypróbuj polecenie :noh.

vi/vim notes

+0

Jak byś mapy: NOH do ale zachować „s przerysować zachowanie nienaruszone? –

+0

Nie jestem pewien, czy było to częścią zadania, ale jeśli nalegasz, czemu nie dodać ": redraw" do mapowania? –

+10

Dzięki, użyłeś vima przez lata, ale nie byłeś tego świadomy. Zastanawiam się tylko, czy moje palce mogą oduczyć się/lkjlkj? – codeape

1

można wyszukać coś nie w pliku tekstowym. Nic nie zostanie podświetlone w tym przypadku. (Przykład/349i5u9sgh)

+0

To właśnie teraz robię, szukam lepszej alternatywy – Roger

4

Spróbuj:

set hlsearch! 
nnoremap <F12> :set hlsearch!<CR> 

mocno F12 aby usunąć gdy jest to pożądane. Użyj trybu :noh w trybie poleceń, aby usunąć.

36

używam polecenia

/pleasedisablehighlightthanks 

. Lub po prostu

/qewrufhiqwe 

Ale powinieneś być ostrożny, aby nie mieszać tego z następującym poleceniem!

/qewrufhiqew 
+0

Miałoby to taki sam efekt jak '' noh', ale musisz uważać, aby nie trafić czegoś, co można znaleźć ;-) –

+0

To jest technika, z której korzystałem - ale także: noh zwrotów światła (pozostawiając następne wyszukiwanie w trybie zaznaczania), więc jest "lepsza". (Wszystko inne poza tym, kończę z komunikatem o błędzie "Nie znaleziono wzoru: kkk" na dole, który musi być wyczyszczony do. –

+0

Po prostu używam/asdf, jest krótszy :) – g33kz0r

15
:noremap <silent> <c-l> :nohls<cr><c-l> 

To przerysowanie ekranu i usunąć wszelkie warunki wyszukiwania z Control-L, poręczny :) łatwiejszego niż sięgając do klawiszy F.

8

Mam następujących w moim .vimrc:

map <silent> <C-N> :let @/=""<CR> 
+0

Czy ktoś może mi powiedzieć, co dzieje się w tym kodzie? Nie rozumiem tego. – Roger

+1

'@ /' to rejestr zawierający najnowsze wyszukiwane hasło. To polecenie usuwa ten rejestr, co powoduje, że wyróżnienia wyszukiwania znikają. Jest to odpowiednik ': nohls'. – jqno

+1

Mam to samo: pozwól się zmapować do - jest to wygodny zasięg do \ – zen

3

Może własnych potrzeb:

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

Przy odrobinie majsterkowania można uczynić go pracować w trybie wstawiania.

Powiązane problemy