wie kann ich in einen Befehl im vi in einer Textdatei die dt. Umlaute ü, ö,
ä usw. durch ue, oe, ae usw. ersetzen. Mit dem normalen
%s/<umlaute>/<ersetzungen>/g komme ich da nicht weiter. Mit den Puffern bin
auch nicht weitergekommen ( %s/\([ü]\)\([ö]\)/\1ue\2oe/ ). Irgendwie sitze
auf dem Schlauch !
Ciao
Michael
Du mußt jeden Umlaut einzeln abhandeln.
aus meinem "vimrc.forall":
" Substituting umlauts to their transcription:
map ,,a %s/ä/ae/gc
map ,,o %s/ö/oe/gc
map ,,u %s/ü/ue/gc
map ,,s %s/ß/ss/gc
natuerlich muss man nicht unbedingt ein
mapping verwenden - es geht auch direkt.
und natuerlich in einem skript -
aber das ist eine hausaufgabe! ;-)
hint: "vim -s script"
Sven
--
Sven Guckes guc...@vim.org http://www.math.fu-berlin.de/~guckes/setup/vimrc*
vimrc personal setup file for non-GUI Vim | Sven's commented
vimrc.forall setup file for everyone | setup files:
vimrc.minimal minimal setup file (<1Kb) | guckes.net/setup/
> * Michael Singer <michael...@blb.de>:
> > wie kann ich in einen Befehl im vi in einer Textdatei die dt.
> > Umlaute ü, ö, ä usw. durch ue, oe, ae usw. ersetzen. Mit dem
> > normalen %s/<umlaute>/<ersetzungen>/g komme ich da nicht weiter.
>
> aus meinem "vimrc.forall":
>
> " Substituting umlauts to their transcription:
> map ,,a %s/ä/ae/gc
> map ,,o %s/ö/oe/gc
> map ,,u %s/ü/ue/gc
> map ,,s %s/ß/ss/gc
>
> natuerlich muss man nicht unbedingt ein
> mapping verwenden - es geht auch direkt.
> und natuerlich in einem skript -
> aber das ist eine hausaufgabe! ;-)
>
> hint: "vim -s script"
>
> Sven
>
Hallo Sven,
ich bin zwar kein vi-Neuling dazu arbeite ich schon zu lange mit
UNIX/LINUX aber den map-Befehl habe ich bis heute noch nicht gebraucht.
Testweise habe ich mir "map v %s/ü/ue/g" die Ersetung des "ü" auf die
Taste "v" gelegt. Aber ein Druck auf "v" macht da gar nichts. Wie bringt
man den vi dazu das er die neue Tastendefinition auch ausführt oder habe
bei der Definition schon was verbockt ?
Ciao
Michael
--
This is LINUX land, in silent nights you can hear the Windows machines
rebooting
fingerprint: 037D F157 6B97 AB53 444B 6C8D 8B41 AC0C FFE6 8F3D
Da s ein ex-Kommando ist, muß ein Doppelpunkt an den Anfang und ein
Zeilenende ans Ende (einzugeben mit Ctrl-V Enter).
map v :%s/ü/ue/g^M
> ich bin zwar kein vi-Neuling dazu arbeite ich schon zu lange mit
> UNIX/LINUX aber den map-Befehl habe ich bis heute noch nicht gebraucht.
> Testweise habe ich mir "map v %s/ü/ue/g" die Ersetung des "ü" auf die
> Taste "v" gelegt. Aber ein Druck auf "v" macht da gar nichts.
map v :%s/ü/ue/g<CR>
Äh ... bzw. die Variante von Dietmar mit ^M am Ende, wenn dein Vi-Clone
die Notation mit <CR> nicht versteht.
dank an alle ! Das Problem mit der Tastenbelegung ist jetzt geloest.
Ciao Michael