Antworten:
Es ist nfür das nächste und Nfür das vorherige.
Und wenn Sie die umgekehrte Suche mit ?
(zum Beispiel ?cake
) anstelle von verwenden /
, ist es umgekehrt.
Wenn es auf Ihrem System installiert ist, sollten Sie versuchen, den vimtutor
Befehl von Ihrem Terminal aus auszuführen. Dadurch wird ein Tutorial der grundlegenden Vim-Befehle gestartet.
Rob Wells Beratung über *und #ist auch sehr relevant.
n
Wie bei den meisten vim-Operatoren kann eine Nummer vorangestellt werden, um den Befehl zu wiederholen. Wenn Sie eingeben 10n
, wird das 10. Ergebnis (nach dem ersten) angezeigt. Es funktioniert auch für alle Bewegungsoperatoren, die gerne 3j
3 Zeilen nach unten gehen.
Die nützlichste Verknüpfung in Vim, IMHO, ist der *Schlüssel.
Setzen Sie den Cursor auf ein Wort und *drücken Sie die Taste, um zur nächsten Instanz dieses Wortes zu springen.
Der #Schlüssel macht dasselbe, springt jedoch zur vorherigen Instanz des Wortes.
Es ist wirklich eine Zeitersparnis.
n
und führen N
Sie vorwärts und rückwärts durch die *
Spiele, sobald Sie gedrückt haben *
. (Oder Sie können einfach weiter drücken *
, um vorwärts oder #
rückwärts zu gehen, aber die Verwendung dieser verschobenen Tasten ist im Allgemeinen nicht optimal.)
/Func
, lasse mich dazu bringen SomeFunc
und drücke dann '*', um zur nächsten Instanz zu gelangen, SomeFunc
wenn die nächste Instanz von in Func
ist SomeOtherFunc
.
/\<foo\>
es nicht übereinstimmt"className::foo()"
Als ich anfing, musste ich mir eine Demo ansehen .
/
*
ist falsch. Dh eine Datei aa aaa
. Suche /aa
, du musst übereinstimmen. Beim Drücken der ersten Übereinstimmung *
ändert sich der Suchbegriff.
Möglicherweise suchen Sie nach dem nSchlüssel.
Die Eingabe nwird zum nächsten Spiel fortgesetzt .
Wie bereits erwähnt, gibt es verschiedene Möglichkeiten zur Suche:
/pattern
?pattern
* (and g*, which I sometimes use in macros)
# (and g#)
Plus, navigieren prev / next mit Nund n.
Sie können Ihren Suchverlauf auch bearbeiten / abrufen, indem Sie die Suchaufforderung mit aufrufen /
und dann mit C-p
/ wechseln C-n
. Noch nützlicher ist q/
, dass Sie zu einem Fenster gelangen, in dem Sie im Suchverlauf navigieren können.
Ebenfalls zu berücksichtigen ist der alles entscheidende 'hlsearch'
( :hls
zu aktivierende Typ ). Dies erleichtert das Auffinden mehrerer Instanzen Ihres Musters erheblich. Vielleicht möchten Sie Ihre Streichhölzer sogar besonders hell machen mit:
hi Search ctermfg=yellow ctermbg=red guifg=...
Aber dann könnten Sie mit konstanten gelben Übereinstimmungen auf Ihrem gesamten Bildschirm verrückt werden. So werden Sie oft feststellen, dass Sie verwenden :noh
. Dies ist so häufig, dass eine Zuordnung in Ordnung ist:
nmap <leader>z :noh<CR>
Ich erinnere mich leicht an diese, z
da ich ständig getippt habe /zz<CR>
(was ein seltenes Ereignis ist, das schnell zu tippen ist), um meine Hervorhebung zu löschen. Aber das :noh
Mapping ist viel besser.
q/
, sollten Sie auch damit spielen q:
. Beide sind sehr praktisch! (Nicht wirklich mit dieser Frage verbunden.)
Wenn Sie Ctrl+ drücken, Enternachdem Sie etwas wie "/ wordforsearch" gedrückt haben, finden Sie das Wort "wordforsearch" in der aktuellen Zeile. Drücken Sie dann nfür das nächste Spiel. Drücken Sie Nfür das vorherige Spiel.
:help
.:help /
Zeigt Hilfe zur Suche an und die Antwort auf Ihre Frage wird nur ein kleines Stück weiter unten auf der Seite angezeigt.