Ich verbeuge mich vor euch

Ich hatte ein kleines vim-Problem.
Datei und Ziel sahen folgendermaßen aus:

Ursprung

- Das ist ein Test- datei
Notiz: Blubber
- noch mehr Text
- Blub- ber
Notiz: Foo- Bar

Ziel

- Das ist ein Testdatei
Notiz: Blubber
- noch mehr Text
- Blubber
Notiz: FooBar

Selbst bin ich wie so oft trotz Google und :help nicht darauf gekommen. Aber @kopischke hat mir wie vor kurzem schon mal bei einem Skript aus der Klemme geholfen und auch die vim-use-Mailing-Liste half mir sehr.

Dazu gab es mehrere Lösungen, die alle dasselbe Ziel erreichen:

:%s/.\zs- //g
:% v/^- /s/- //g
:%s/\%>2c- //g
:%s/\v^(.+)\- /\1x/g

Die diversen Leute waren sogar so freundlich auf meine Anfrage hin, mir die Sachen zu erklären. Aber irgend etwas in meinem Gehirn blockiert. Vim, Ex und RegEx kommen mir gerade wie Magie vor und ich glaube, ich weiß jetzt, wie sich Kreationisten fühlen müssen, wenn sie versuchen zu verstehen, was Evolution ist.

Vim, Ex und Regex, ich verbeuge mich vor euch und mögen eure Ninjas meine Priester sein.

Kommentar verfassen