Vim – Bereiche mit Klammern umschließen


Manchmal ist die Denke einfach zu kompliziert. Da wollte ich in vim einen Bereich möglichst effizient mit runden Klammern versehen und habe eine Weile rum gemurgst, bis ich dann die einfache Lösung gefunden habe:

  1. Bereich auswählen mit v und z.B. $ bis zum Zeilenende
  2. dann c drücken
  3. () schreiben
  4. ESC drücken und
  5. ein großes (shift) P drücken

also v$c()<ESC>P

Und alles ist schön umklammert.

Wenn es egal ist den Bereich visuell zu markieren, dann geht es auch ohne das v und das $ (bis Zeilenende) muss nach dem c eingegeben werden. (Danke Rebeka!)

c$()<ESC>P oder gleich C()<ESC>P

Weitere Varianten wären:

  1. Bis zum nächsten Vorkommen z.B. des Buchstabens „m“ cfm()<ESC>P
  2. Vom vorherigem Vorkommen eines „t“ bis zum nächsten Vorkommen eines „m“ Ftcfm()<ESC>P
  3. Wenn mitten im Wort gestartet wird, das natürlich auch umklammert werden soll, als erstes ein b tippen z.B. bC()<ESC>P
  4. Die nächsten 3 Worte c3w()<ESC>P oder eben bc3w()<ESC>P