In Vim verbindet der JSchlüssel zwei Zeilen miteinander. Gibt es eine ähnliche integrierte Tastenkombination zum Teilen von Zeilen mit einer neuen Zeile (an der Cursorposition oder ähnlich)?
Was wäre alternativ die robusteste Methode, um eine Tastenkombination zu definieren, um dies zu tun (im normalen Modus, nicht im Einfügemodus)?
Antworten:
Nein, dafür gibt es keinen eingebauten Befehl.
Wenn ich mich auf einem trennen will
<Space>
, tue ich dasr<CR>
.--- BEARBEITEN ---
Der Kommentar von @ keith-nicholas erinnerte mich an diese Frage. FWIW In der Zwischenzeit habe ich mir eine hoffentlich "universelle" Methode ausgedacht:
quelle
r<CR>
ist einfach klug! Vielen Dank!s<CR>
hält Einrückung, wohingegenr<CR>
nicht.a
Enter Escrechts vom Cursor oderi
Enter Esclinks teilen.quelle
Der einfachste Weg, Linien in Vim zu teilen, ist der Befehl im normalen Modus
gq
(geben Sie beide Buchstaben im normalen oder visuellen Modus schnell hintereinander ein):gq
mit einer Bewegung.Teilt beispielsweise
gql
eine Zeile auf die aktuell eingestellte Breite. Sie können festlegen, dass die Breite der Trennlinien von Ihrer aktuellen Einstellung abweichtWobei n = Anzahl der Zeichen, die Sie in einer Zeile haben möchten, z. B. 10, und nach Abschluss wieder auf Ihre normale Breite zurückkehren.
Diese Informationen stammen aus einem Youtube-Video von Kholidfu, das zeigt, wie Linien im normalen Modus mithilfe einer Bewegung verbunden und geteilt werden: Vim Tutorial - Linien verbinden und teilen .
quelle
Sie können Ihre eigene Karte definieren. So definieren Sie z als Befehl:
quelle
Sie können ein Makro aufzeichnen:
Geben Sie im normalen Modus "q +" ein, um die Aufzeichnung zu starten. Drücken Sie "i", das Makro, das Sie aufnehmen möchten. Drücken Sie dann erneut "q", um die Aufnahme zu beenden.
Um das Makro zu verwenden, gehen Sie in den normalen Modus und geben Sie "@ + Buchstabe" ein.
In meinem Fall habe ich das "b" verwendet, um dieses Makro zu verwenden: um den Typ im normalen Modus aufzuzeichnen "qbiq", um den Typ im normalen Modus zu verwenden "@b"
quelle