Vim: umschließendes Wort im Tag

8

Ich möchte ein Wort in Vim mit umschließenden Tags umschließen, zB von word bis 'word' oder von word bis (word) .

    
teggy 24.04.2012, 21:03
quelle

4 Antworten

19

Benutze Tim Popes ​​vim-surround , du kannst verwenden: ysw' , um ein Wort mit "'" zu umschließen, ysw( , um das Wort mit "(" zu umgeben. Wenn Sie das Wort mit einem tatsächlichen Tag wie dem HTML-Tag <code> umgeben wollen, können Sie yswt verwenden und dann Ihr Tag in die Eingabeaufforderung eingeben Möchten Sie vorhandene Surround-Elemente ändern, verwenden Sie csw , geben Sie das zu ersetzende Surround-Element ein und drücken Sie <CR> (enter) und geben Sie das neue umgebende Element ein.

Beachten Sie, dass Sie für die obigen Befehle den Cursor an den Anfang des Wortes setzen müssen, das Sie umgeben möchten.

Von seiner offiziellen Seite:

  

Drücken Sie cs"' (das ist c, s, double quote, einzelnes Zitat) innerhalb

     

"Hallo Welt!"

     

um es zu

zu ändern      

'Hallo Welt!'

     

Drücken Sie nun cs'<q> , um es zu

zu ändern      

Hallo Welt!

     

Um den Kreis zu schließen, drücken Sie cat" , um

zu erhalten      

"Hallo Welt!"

     

Um die Begrenzer vollständig zu entfernen, drücken Sie ds" .

     

Hallo Welt!

     

Drücken Sie nun mit dem Cursor auf "Hello" ysiw] ( iw ist ein Textobjekt).

     

[Hallo] Welt!

     

Lassen Sie uns diese geschweiften Klammern machen und etwas Platz hinzufügen (verwenden Sie "}" anstelle von "{" für kein Leerzeichen): cs]{

     

{Hello} Welt!

     

Umschließen Sie jetzt die gesamte Zeile in Klammern mit yssb oder yes) .

     

({Hallo} Welt!)

     

Zurück zum ursprünglichen Text: ds{ds)

     

Hallo Welt!

     

Betone Hallo: ysiw<em>

     

Hallo Welt!

     

Lassen Sie uns schließlich den visuellen Modus ausprobieren. Drücken Sie ein Kapital V (für den zeilenweisen visuellen Modus)   gefolgt von S<p class="important"> .

           Hallo Welt!    

Für detailliertere Verwendungsinformationen installieren Sie vim-surround und verwenden dann :help surround , um die Dokumente aufzurufen.

    
K Z 24.04.2012, 21:11
quelle
4

Sehen Sie sich Tim Popes surround.vim an.

    
adaszko 24.04.2012 21:07
quelle
4

<c-r> ist sehr praktisch für diese, Sie können den Inhalt eines Registers einfügen, die Zwischenablage, das Wort unter dem Cursor ( <c-r><c-a> ) usw. Zum Beispiel:

%Vor%

Die Zuordnung von space+' zum aktuellen Wort oder der visuellen Auswahl in einfache Anführungszeichen oder space+( zum Umbrechen des aktuellen Wortes oder der visuellen Auswahl in doppelte Anführungszeichen.

Der Inhalt des Mappings bedeutet "Inneres Wort ändern | ausgewählter Text, Zitat einfügen, Wort einfügen, Zitat einfügen, Einfügemodus beenden".

    
Mud 24.04.2012 22:18
quelle
2

Ich verwende dieses Snippet, um ein Makro zum ersten Mal in den Buchstaben M aufzunehmen: qmcw '& lt; c-r & gt;' '& lt; esc & gt; q Dann wiederhole es mit @m

Erklärung, zu Beginn sind 10 Treffer notwendig:

  • qm beginnt mit der Aufnahme des Makros im Buchstaben m
  • cw ändere nur ein Wort und bringe dich in den Einfügemodus
  • 'schreibt das erste Zitat
  • & lt; c-r & gt; "fügen Sie das Wort, das wir gelöscht haben, bei Stufe 2 ein der Einfügemodus
  • 'ist das andere umgebende Zitat
  • & lt; esc & gt; Gehe zurück zum Bearbeiten-Wort
  • q beende das Makro.

Erinnern Sie sich an @m: jetzt benutzen wir nur zwei Schläge um zu umgeben ...

    
brotherol 19.08.2013 22:19
quelle

Tags und Links