Problem mit Umlauten (mal wieder)

06/01/2010 - 13:44 von Martin Kißner | Report spam
Hallo zusammen,

ich habe den Umgang mit Umlauten in der Shell (hier Z-Shell, s.u.) immer
noch nicht richtig verstanden.
zsh --version
zsh 4.3.9 (i386-apple-darwin9.6.0)

Aktuelle Problem:
Wildcard- und Tab-Vervollstàndigung funktionieren nicht richtig:

martin% ls -l
total 0
-rw-r--r-- 1 martin staff 0 6 Jan 13:35 Lösung

martin% echo L*
Lösung

martin% echo *ö*
zsh: no matches found: *ö*

Ist das Einstellungssache oder làsst sich das grundsàtzlich nicht
beheben.


Was mir noch aufgefallen ist:
Wenn ich 'echo L' + TAB eingebe, wird vervollstàndigt.
Wenn ich 'echo Lö' + TAB eingebe, wird nicht vervollstàndigt.
Wenn ich allerdings 'echo L' + TAB eingebe, und nach der
Vervollstàndigung bis zum s rückwàrts lösche (es steht jetzt also 'echo
Lö' in der Kommandozeile), und dann die TAB Taste
erneut drücke, dann wird vervollstàndigt.

Das Problem scheint mit den "multibyte" characters zu tun zu haben. Ich
weiß aber nicht, wie sich das lösen làsst und bitte um Hilfe und
Erlàuterung


Danke und Gruß
Martin
 

Lesen sie die antworten

#1 Sven Mascheck
06/01/2010 - 15:39 | Warnen spam
Martin Kißner wrote:

zsh --version
zsh 4.3.9 (i386-apple-darwin9.6.0)

martin% echo L*
Lösung

martin% echo *ö*
zsh: no matches found: *ö*

Ist das Einstellungssache oder làsst sich das grundsàtzlich nicht
beheben.



Um ein wenig vom jeweils speziellen Fall wegzugehen,
also um es grundsàtzlich besser zu verstehen: Hier
kommen leicht mehrere Faktoren ins Spiel:

- was ist überhaupt die konfigurierte "locale"
- ist auch das Ein-/Ausgabegeràt (z.B. Terminalemulator, Fonts)
darauf vorbereitet
- kann auch die Anwendung mit dieser locale umgehen
(davon würde ich bei einer nicht zu alten zsh ausgehen)


Ein besseres Bild bekommt man hier mit

$ locale # momentan konfigurierter Wert
$ locale -a # tatsàchlich verfügbare Werte
$ ls L*|od -a; echo ö|od -a # single- oder multibyte bei Ein/Ausgabe?

http://www.in-ulm.de/~mascheck/locale/

Ähnliche fragen