Frage Wie fügt man etwas zwischen HTML Tags in Vim ein?


Drücken p Pasten Dinge brüllen die aktuelle Linie, dit Löscht Dinge in HTML-Tags. Wie füge ich etwas in HTML-Tags ein?

    Nor here
<p>I want to paste something here</p>
    Not here

9
2018-02-18 07:58


Ursprung


Antworten:


Das Ergebnis des Pressens P und p hängt davon ab, was Sie in dem ausgewählten Register zu der Zeit haben. Wenn Sie eine oder mehrere ganze Zeilen löschen oder zerren (z. B. mit dd, Y oder Vd Befehle), dann drücken P wird den Inhalt Ihres Registers in die Linie über der aktuellen Linie, während p wird in die Zeile unterhalb des Cursors eingefügt.

Wenn Sie einen Textabschnitt löschen oder zerren, der kleiner als eine Zeile ist (z. B. mit der D, oder yw Befehle), dann P fügt den Inhalt Ihres Registers direkt vor der aktuellen Cursorposition und ein p wird direkt nach dem Cursor eingefügt (d. h. in derselben Zeile).

Wenn es hilft, können Sie die zeilenweise Auswahl als analog betrachten Block HTML-Elemente (wie <div>), und charakteristischer Auswahl als analog zu in der Reihe HTML-Elemente (wie span).

Um deine Frage zu beantworten: Es kommt darauf an. Angenommen, Sie haben einen zeilenweisen Textabschnitt im Register, möchten Sie das Ziel-Tag vor dem Einfügen in zwei Zeilen aufteilen. In Ihrem Beispiel, anstatt zu tun dit Um den Inhalt des Tags zu löschen, tun Sie cit um den gleichen Abschnitt zu löschen und in den Einfügemodus zu wechseln. Schlagen return einmal, um eine neue Zeile einzufügen, dann esc um dann in den normalen Modus zurückzukehren P Einfügen Ihres zeilenweisen Registers über die Linie mit dem schließenden Tag.

Wenn Sie das Tag nicht auf mehrere Zeilen aufteilen möchten, müssen Sie stattdessen sicherstellen, dass Sie eine zeichenweise Auswahl in das Register gezogen haben. Dann könntest du laufen:

"_ditP

"_ Löscht den Text in die schwarzes Loch registrieren Sie, um sicherzustellen, dass es nicht überschreibt, was in Ihrem Standardregister ist. dit löscht den Inhalt des Tags und P fügt den Inhalt Ihres Standardregisters vor der Cursorposition ein.


10
2018-02-18 08:47



Normalerweise mache ich es einfach vitp der den inneren Inhalt des Tags visuell auswählt und dann über das ausgewählte Element kleistert.

Funktioniert bei mir.


11
2018-02-18 10:06



Entfernen Sie den aktuellen Inhalt zwischen den Tags mit dem Befehl

cit

das wird sich in Tags ändern und sobald dieser Inhalt weg ist, kannst du mit einem mittleren Klick einfügen oder wenn du zurückkommst in den Befehlsmodus und benutze deine normale p / etc.


2
2018-02-18 08:47



vitp sollte eine zeilenweise einfügen behandeln.


2
2018-02-18 09:30



Sie können drücken "v"für visuelle, dann gehen Sie dorthin, wo der Cursor ist, und drücken Sie p oder P.


0
2018-02-18 08:04