Gibt es einen Befehl zum Kopieren einer vollständigen Funktion? (Nicht durch Auswahl mit der Maus)
Beispiel: 10yy
- & gt; kopiert 10
-Zeilen von der Cursorposition.
Ich kenne die Anzahl der Zeilen einer Funktion nicht, möchte aber die gesamte Funktion kopieren.
Gibt es einen Befehl zum Kopieren der gesamten Funktion?
Das mache ich in JavaScript und PHP:
%Vor%va{
, um den Codeblock visuell auszuwählen, V
, um die Auswahl von zeichenweise nach zeilenweise zu ändern, y
zu jagen Wenn Sie zu tief sind und va{
nur einen Teil Ihrer Funktion auswählt, können Sie mehr a{
ausführen, bis Sie ausgewählt haben, was Sie wollen.
Curly-geschweifte Sprachen (wie Java) können die ]m
-Befehle zum Navigieren zu Funktionen verwenden; Einige Dateitypen definieren auch ]]
dafür. Mit diesem können Sie [mV]My
verwenden (zum Anfang der Funktion gehen, den zeilenweisen visuellen Modus starten, zum Ende der Funktion gehen, yank).
Viele Dateitypen definieren auch das Falten von Funktionen. Damit können Sie zCyyzO
verwenden (schließen Sie alle Falten, ziehen Sie die gesamte Falte unter den Cursor, öffnen Sie die Falte).
Tags und Links vim