Kürzlich habe ich von Practical Vim gelernt, wie man Zeilenblöcke kopiert oder verschiebt, ohne den Cursor von der aktuellen Position bewegen zu müssen. Dies erfolgt im Befehlszeilenmodus. z.B
:123,133m. # moves lines from 123 to 133 below the cursor position.
Obwohl es mir gefällt, ist es schwierig, die langen Zeilennummern einzugeben, insbesondere wenn die Datei zu viele Zeilen enthält.
Manchmal sind die zu bewegenden Linien relativ nahe am Cursor (aber ich möchte meinen Cursor nicht bewegen, ruck, komm zurück, wo ich war, einfügen!). Es wäre großartig, wenn ich relative Zahlen verwenden könnte, ähnlich wie im normalen Modus. Es ist wie zu sagen
Verschieben Sie 5 Zeilen, die 10 Zeilen über der aktuellen Zeile liegen, hierher
Kurz gesagt, wie verwende ich relative Zahlen im Befehlszeilenmodus (ähnlich wie im normalen Modus)?
quelle
15k d5j 10j P
.Sie können feste Zahlen in Ihrem Bereich verwenden:
Oder relative Zahlen:
Oder manuelle Markierungen:
Oder automatische Marken:
Oder sucht:
Oder Zeilenverknüpfungen:
Oder eine beliebige Kombination der oben genannten Tricks:
quelle
Sie können die relative Adressierung (z. B.
.-10,.+3
) mit jedem Ex-Befehl verwenden, vgl.:help :range
.Alternativ können Sie sich auch mein LineJuggler-Plugin ansehen . Es bietet mehrere kurze Zuordnungen, um Linien zu verschieben oder zu duplizieren. Alle diese Zuordnungen haben einen relativen Zeilenversatz von
[count]
.quelle