2324 Stimmen

Vim löscht die Markierung der letzten Suche

Nachdem ich eine Suche in Vim durchgeführt habe, werden alle Vorkommen hervorgehoben. Wie kann ich das abschalten? Ich suche nun erneut nach etwas Kauderwelsch, das nicht gefunden werden kann.

Gibt es eine Möglichkeit, die Hervorhebung vorübergehend zu deaktivieren und sie bei Bedarf wieder zu aktivieren?

7 Stimmen

:set invhlsearch deaktiviert die Hervorhebung, wenn sie bereits hervorgehoben ist, und aktiviert sie, wenn sie es nicht ist. Sie können es mit Shift-H verbinden.

1 Stimmen

@StewartJohnson Wenn ich das in meinen .vimrc-Dateien mache, scheint es mit :set mouse=a zu interferieren/zu brechen. Irgendeine Idee warum? Dieser Fehler tritt nur in iTerm2 auf

0 Stimmen

Ich habe im Laufe der Jahre so viel Kauderwelsch getippt, um diese Markierung zu löschen (wirklich ineffizient bei Textdateien mit mehreren GB). Die Kauderwelsch-Suche ist im Grunde eine zweite Suche, die Rechenzeit vergeudet. Gute Frage!

27voto

caveman Punkte 1737

Ich kartiere im Allgemeinen :noh auf die Backslash-Taste. Um die Hervorhebung wieder zu aktivieren, drücken Sie einfach n und es wird wieder hervorgehoben.

22voto

arcseldon Punkte 32403

So schalten Sie die Hervorhebung bis zur nächsten Suche aus

:noh

Visual Illustration

22voto

Ich verwende Folgendes (aus vielen verschiedenen Fragen/Antworten extrahiert):

nnoremap <silent> <Esc><Esc> :let @/=""<CR>

Mit "doppelt" Esc Sie entfernen die Hervorhebung, aber sobald Sie erneut suchen, erscheint die Hervorhebung wieder.


Eine andere Alternative:

nnoremap <silent> <Esc><Esc> :noh<CR> :call clearmatches()<CR>

Laut der vim-Dokumentation:

clearmatches()

    Clears all matches previously defined by |matchadd()| and the

    |:match| commands.

0 Stimmen

Ich hatte mit einigen Fehlern in den Top-Lösungen zu kämpfen, um Ihre Zeit zu sparen, indem Sie alle Antworten ausprobieren. Verwenden Sie diese Lösung! Bearbeiten Sie Ihr .vimrc und fügen Sie dort den folgenden Eintrag ein: nnoremap <silent> <Esc><Esc> :let @/=""<CR>

0 Stimmen

Aber das steht doch da. O.o. Vielleicht könntest du die Bewertung erhöhen?

0 Stimmen

Ich unterstütze Ihre Lösung... Es ist die beste IMO... Und ich habe sie auch hochgestuft... :)

18voto

00prometheus Punkte 687

Schalten Sie die Hervorhebung aus, sobald Sie den Cursor bewegen:

Installieren Sie vim-cool . Es wurde entwickelt, um dieses spezielle Problem zu beheben. Es schaltet die Hervorhebung aus, sobald Sie den Cursor bewegen. Seien Sie jedoch gewarnt, es erfordert eine aktuelle Vim-Version!

0 Stimmen

Damit ist das Problem leicht zu lösen. Remapping ist einfach zu viel für mich

0 Stimmen

Endlich müssen keine zusätzlichen Tasten mehr gedrückt werden lol

0 Stimmen

Sollte eine Standardoption sein!

11voto

Deqing Punkte 12880

Wenn Sie eine incsearch.vim-Plugin installiert ist, gibt es eine Einstellung, um die Markierung nach der Suche automatisch zu löschen:

let g:incsearch#auto_nohlsearch = 1

enter image description here

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X