Bernd Walter <ticso(at)cicely12.cicely.de> wrote:
> On Tue, Mar 02, 2004 at 02:27:06PM +1030, Greg 'groggy' Lehey wrote:
> > On Tuesday, 2 March 2004 at 4:45:09 +0100, Bernd Walter wrote:
> > > Hast du LC_CTYPE gesetzt?
> >
> > Nein. Was sollte das sein?
>
> Damit definierst du AFAIK den Zeichensatz deines Terminals.
Ja, man teilt den Programmen damit mit, was für ein
Zeichensatz lokal verwendet werden kann. Default, wenn
nicht gesetzt (oder leer oder ungültig), US-ASCII, und
dann kann man in einem konformen Programm keine Umlaute
eingeben.
> Ich habe hier z.B. LC_CTYPE=de_DE.ISO_8859-1 definiert.
> Der Oliver Fromme meinte letztens ein US 8859-1 - keine Ahnung
> ob und wo das Unterschiede macht - bei mir war das zumindest
> noch nicht auffällig.
Für LC_CTYPE gibt es keinen Unterschied zwischen de_DE.*
und en_US.*. Hier interessiert nur der hintere Teil, also
das *.ISO8859-1 (oder -15), das den verwendbaren Zeichen-
satz festlegt.
Das Locale-System besteht aus mehreren Kategorien, von de-
nen LC_CTYPE nur eine ist. Es gibt z.B. noch LC_TIME, mit
dem die Formatierung von Standard-Zeit/Datumsangaben fest-
gelegt wird. Hier gibt es einen Unterschied zwischen
de_DE.* und en_US.*:
$ LC_TIME=en_US.ISO8859-1 date ; LC_TIME=de_DE.ISO8859-1 date
Tue Mar 2 13:49:58 CET 2004
Di 2 Mär 2004 13:49:58 CET
Solange man nur LC_CTYPE setzt (was ich tue), ist es also
eigentlich wurscht. Aber man hat schon Pferde kotzen ge-
sehen ... ;-)
Details findet man in setlocale(3).
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co KG, Oettingenstr. 2, 80538 München Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. 'Instead of asking why a piece of software is using "1970s technology," start asking why software is ignoring 30 years of accumulated wisdom.' To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Tue 02 Mar 2004 - 14:04:32 CET