Wie springe ich in vim zu einem bestimmten Charakter?


162

Wie kann ich in vim zum nächsten Zeichen X springen?

Ich benutze häufig, z. B. dt:oder ct:um alles bis zu einem Doppelpunkt (oder einem anderen Zeichen) zu löschen / zu ändern.

Gibt es eine kurze Tastenkombination, um einfach meine Cursorposition auf dieses Zeichen zu bewegen?



7
Wenn nur die beiden obersten Teilantworten eine gewesen wären - und zusätzlich diese Information enthielten: Die nicht erwähnte Twird nach dem ersten gesuchten Zeichen links springen , und ich kann bestätigen, dass die ;und ,-Wiederholer mit allen f/ F/ t/ funktionieren T.
underscore_d

Antworten:


275

Sie können eingeben f<character>, um den Cursor auf das nächste Zeichen und F<character>auf das vorherige zu setzen.


89
Sie können ;den Vorgang auch ,wiederholen und in die entgegengesetzte Richtung wiederholen.
Rsh

9
Dies scheint für mich nur mit Übereinstimmungen auf derselben Linie zu funktionieren.
Jpaji Rajnish

7
@JpajiRajnish Ja. Verwenden Sie /<character>, um es überall zu finden.
Lars Kotthoff

Es scheint, dass die Verwendung von f <Zeichen> (zusammen mit den Zeichen; und, zum Wiederholen des Befehls) nur in der Zeile funktioniert, in der sich der Cursor befindet. Gibt es eine Möglichkeit, es in der gesamten Datei zum Laufen zu bringen?
Aluthren

Ich würde in diesem Fall die Suche verwenden. siehe Kommentar oben.
Lars Kotthoff

62

tund farbeiten Sie auch ohne Befehl, um zur Verwendung des Doppelpunkts f:und nach rechts vor der Verwendung des Doppelpunkts zu wechselnt:


7

Wenn Sie nach diesem Charakter suchen /, können Sie drücken n, um zum nächsten Vorkommen zu gelangen.


Ich frage mich, wie ich diesen Fund rückgängig machen kann, wenn ich den Charakter gefunden habe. Alle übereinstimmenden Zeichen scheinen im aktuellen Puffer hervorgehoben zu bleiben.
Newswim

1
@ Newswim ,: Nohl
Arkadyt

Sie können auch einfach nach etwas anderem suchen (z. B. nach einer Menge Müll, der nicht übereinstimmt), um die hervorgehobene Suchzeichenfolge zu ändern. Es gibt auch :set invhlsnützliche Funktionen zum Ein- und Ausschalten der Highlights (ich ordne dies einer Verknüpfung zum schnellen Umschalten zu).
FazJaxton

3

Vielleicht suchen Sie nur nach einer reinen Vim-Kombination, aber EasyMotion ist ein Plugin, das einen Versuch wert ist. HTH. :) :)


Ja! EasyMotion ist alles, was Sie brauchen, um dies auf elegante Weise zu vervollständigen.
Lorem Ipsum Dolor
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.