Vim

Vim #

Reguläre Ausdrücke in Vim #

Quantoren #

Greedy #

  • * / \{}: 0 oder mehr
  • \+: 1 oder mehr
  • \= / \?: 0 der 1
  • \{n,m}: n bis m
  • \{n}: Genau m
  • \{n,}: Mindestens n
  • \{,m}: Höchstens m

Non-greedy #

  • \{-n,m}: n bis m
  • \{-n}: Genau n
  • \{-n,}: Mindestens n
  • \{-,m}: 0 bis m
  • \{-}: 0 oder mehr

Lookaround-Assertionen #

In Vim sind folgende Lookaround-Assertionen möglich:

  • Lookbehind: (muster)\@<=
  • Negativer Lookbehind: (muster)\@<!
  • Lookahead: (muster)\@=
  • Negativer Lookahead: (muster)\@!

Beispiel Lookbehind: :%s/\(look\)\@<=behind/ahead/g

Ersetzt lookbehind durch lookahead; lockbehind wird nicht ersetzt

Beispiel negativer Lookbehind: :%s/\(look\)\@<!behind/ahead/g

Ersetzt lockbehind durch lockahead; lookbehind wird nicht ersetzt

Beispiel Lookahead: :%s/look\(behind\)\@=/lock/g

Ersetzt lookbehind durch lockbehind; lookahead wird nicht ersetzt

Beispiel negativer Lookahead :%s/look\(behind\)\@!/lock/g

Ersetzt lookahead durch lockahead; lookbehind wird nicht ersetzt

Ressourcen:

Vimdiff #

Befehle:

  • [c: Zur vorherigen Änderungsstelle
  • ]c: Zur nächsten Änderungsstelle
  • do: Ändert den aktuellen Buffer, um die Stelle an diejenige des anderen Buffers anzugleichen. Wenn eine andere Range oder ein anderer Buffer (bei Bufferzahl >2) gewählt werden muss: :[range]diffg[et] [bufspec]
  • dp: Ändert den anderen Buffer, um dessen Stelle an diejenige des aktuellen Buffers anzugleichen. Wenn eine andere Range oder ein anderer Buffer (bei Bufferzahl >2) gewählt werden muss: :[range]diffp[ut] [bufspec]

Vimscript #

Plugins #

Einige nützliche Links:

Weitere Ressourcen #