Pertanyaan Vim bersihkan sorotan pencarian terakhir


Setelah melakukan pencarian di Vim, saya mendapatkan semua kejadian yang disorot. Bagaimana saya bisa menonaktifkan itu? Saya sekarang melakukan pencarian lain untuk omong kosong yang tidak dapat ditemukan.

Adakah cara menonaktifkan sementara sorotan untuk sementara dan kemudian mengaktifkannya kembali saat diperlukan lagi?


1597
2018-03-18 09:00


asal


Jawaban:


Untuk mematikan sorotan sampai pencarian berikutnya:

:noh

Atau matikan sorotan sepenuhnya:

set nohlsearch

Atau, untuk beralih:

set hlsearch!

nnoremap <F3> :set hlsearch!<CR>

1291
2018-03-18 09:02



Dari Dokumentasi VIM

Untuk menghapus pola pencarian yang terakhir digunakan:

:let @/ = ""

Ini tidak akan mengatur pola ke string kosong, karena itu akan cocok dimana mana. Polanya benar-benar bersih, seperti ketika memulai Vim.


641
2018-03-18 09:12



Anda dapat melakukan

:noh

atau :nohlsearch untuk sementara menonaktifkan pencarian sorotan sampai pencarian berikutnya.


558
2018-03-18 14:26



Saya menemukan jawaban ini bertahun-tahun yang lalu di vim.org:

Tambahkan yang berikut ini ke .vimrc Anda:

"This unsets the "last search pattern" register by hitting return
nnoremap <CR> :noh<CR><CR>

Jadi, setelah pencarian Anda, tekan kembali lagi dalam mode perintah, dan sorotan menghilang.


269
2018-03-19 16:22



Dari http://twitter.com/jonbho/status/2194406821

" Clear highlighting on escape in normal mode
nnoremap <esc> :noh<return><esc>
nnoremap <esc>^[ <esc>^[

Baris kedua diperlukan untuk memetakan ke tombol escape karena Vim secara internal menggunakan melarikan diri untuk mewakili kunci khusus.


131
2018-06-24 08:53



Cari urutan karakter yang tidak diinginkan (hancurkan kunci pada baris beranda):

/;alskdjf;

Ini berfungsi dalam vim dan kurang, dan lebih mudah diingat / diketik daripada @ ShaunBouckaert yang secara logis lebih bersih "untuk menghapus pola pencarian yang terakhir digunakan":

:let @/ = ""

Kelemahan potensial adalah bahwa ia menambahkan sampah ke riwayat pencarian Anda.


36
2018-03-17 15:38



Dipetakan kembali ke dalam file .vimrc.local saya, cepat dan kotor tetapi sangat fungsional:

" Clear last search highlighting
map <Space> :noh<cr>

30
2017-10-23 19:48



nnoremap <cr> :noh<CR><CR>:<backspace>

Dengan cara itu saya menyingkirkannya :noh ditampilkan di commandline, ketika memukul memasukkan setelah pencarian.

: seperti mulai memasukkan perintah baru, Menghapus membersihkannya dan menempatkan fokus kembali ke jendela editor.


27
2017-08-09 19:04