Re: Kaputte locales?

From: Oliver Fromme <oliver(at)fromme.com>
Date: Mon, 8 May 2017 22:58:50 +0200 (CEST)

Hi Bernd,

Sorry für's ToFu, aber es geht gerade nicht anders ...

Hast Du mal geschaut, ob LC_ALL gesetzt ist? Wenn ja, dann
overridet es LC_CTYPE. Evtl. könnte man auch mal einen Blick
in /etc/login.conf werfen.

Anonsten mal die locale-Dateien unter /usr/share/local/*
vergleichen. Vielleicht gibt es da einen Unterschied.

BTW, welche FreeBSD-Version?

Dass es bei FreeBSD noch den einen oder anderen Stolperstein
bei den Locales gibt, ist mir übrigens auch bekannt.
Ich bastele gerade einen Workaround, weil ls(1) nicht mit
Multibyte-Zeichen in LC_NUMERIC zurechtkommt (ich verwende
inzwischen überall UTF-8).

Übrigens, die bash ignoriert das locale völlig. Wenn ich
das richtig in Erinnerung habe, versucht sie, die LC_*-
Variablen selbst zu parsen und dann irgendwie zu erraten,
was es bedeuten soll. Die Standard-locale-Funktionen
verwendet sie jedenfalls nicht.

Gruß
   Olli

Bernd Walter wrote:
> Ich hoffe das kommt jetzt per cut&paste mit dem Fehler sauber rüber,
> weil mein mutt auf dem betroffenen Rechner läuft
> cicely7 ist kürzlich aktualisiert worden und hat das Problem.
> cicely1 ist etwas älter und funktioniert normal.
>
> [51]cicely1> hexdump -C umlauts
> 00000000 80 20 81 20 82 20 83 20 84 20 85 20 86 20 87 20 |. . . . . . . . |
> 00000010 88 20 89 20 8a 20 8b 20 8c 20 8d 20 8e 20 8f 0a |. . . . . . . ..|
> 00000020 90 20 91 20 92 20 93 20 94 20 95 20 96 20 97 20 |. . . . . . . . |
> 00000030 98 20 99 20 9a 20 9b 20 9c 20 9d 20 9e 20 9f 0a |. . . . . . . ..|
> 00000040 a0 20 a1 20 a2 20 a3 20 a4 20 a5 20 a6 20 a7 20 |  ¡ ¢ £ ¤ ¥ ¦ § |
> 00000050 a8 20 a9 20 aa 20 ab 20 ac 20 ad 20 ae 20 af 0a |¨ © ª « ¬ ­ ® ¯.|
> 00000060 b0 20 b1 20 b2 20 b3 20 b4 20 b5 20 b6 20 b7 20 |° ± ² ³ ´ µ ¶ · |
> 00000070 b8 20 b9 20 ba 20 bb 20 bc 20 bd 20 be 20 bf 0a |¸ ¹ º » ¼ ½ ¾ ¿.|
> 00000080 c0 20 c1 20 c2 20 c3 20 c4 20 c5 20 c6 20 c7 20 |À Á Â Ã Ä Å Æ Ç |
> 00000090 c8 20 c9 20 ca 20 cb 20 cc 20 cd 20 ce 20 cf 0a |È É Ê Ë Ì Í Î Ï.|
> 000000a0 d0 20 d1 20 d2 20 d3 20 d4 20 d5 20 d6 20 d7 20 |Ð Ñ Ò Ó Ô Õ Ö × |
> 000000b0 d8 20 d9 20 da 20 db 20 dc 20 dd 20 de 20 df 0a |Ø Ù Ú Û Ü Ý Þ ß.|
> 000000c0 e0 20 e1 20 e2 20 e3 20 e4 20 e5 20 e6 20 e7 20 |à á â ã ä å æ ç |
> 000000d0 e8 20 e9 20 ea 20 eb 20 ec 20 ed 20 ee 20 ef 0a |è é ê ë ì í î ï.|
> 000000e0 f0 20 f1 20 f2 20 f3 20 f4 20 f5 20 f6 20 f7 20 |ð ñ ò ó ô õ ö ÷ |
> 000000f0 f8 20 f9 20 fa 20 fb 20 fc 20 fd 20 fe 20 ff 0a |ø ù ú û ü ý þ ÿ.|
> 00000100
> [52]cicely1> echo $LC_CTYPE
> de_DE.ISO8859-1
>
> [113]cicely7> hexdump -C umlauts
> 00000000 80 20 81 20 82 20 83 20 84 20 85 20 86 20 87 20 |. . . . . . . . |
> 00000010 88 20 89 20 8a 20 8b 20 8c 20 8d 20 8e 20 8f 0a |. . . . . . . ..|
> 00000020 90 20 91 20 92 20 93 20 94 20 95 20 96 20 97 20 |. . . . . . . . |
> 00000030 98 20 99 20 9a 20 9b 20 9c 20 9d 20 9e 20 9f 0a |. . . . . . . ..|
> 00000040 a0 20 a1 20 a2 20 a3 20 a4 20 a5 20 a6 20 a7 20 |. . . . . . . . |
> 00000050 a8 20 a9 20 aa 20 ab 20 ac 20 ad 20 ae 20 af 0a |. . ª . . . . ..|
> 00000060 b0 20 b1 20 b2 20 b3 20 b4 20 b5 20 b6 20 b7 20 |. . . . . . . . |
> 00000070 b8 20 b9 20 ba 20 bb 20 bc 20 bd 20 be 20 bf 0a |. . º . . . . ..|
> 00000080 c0 20 c1 20 c2 20 c3 20 c4 20 c5 20 c6 20 c7 20 |À Á Â Ã Ä Å Æ Ç |
> 00000090 c8 20 c9 20 ca 20 cb 20 cc 20 cd 20 ce 20 cf 0a |È É Ê Ë Ì Í Î Ï.|
> 000000a0 d0 20 d1 20 d2 20 d3 20 d4 20 d5 20 d6 20 d7 20 |Ð Ñ Ò Ó Ô Õ Ö . |
> 000000b0 d8 20 d9 20 da 20 db 20 dc 20 dd 20 de 20 df 0a |Ø Ù Ú Û Ü Ý Þ ß.|
> 000000c0 e0 20 e1 20 e2 20 e3 20 e4 20 e5 20 e6 20 e7 20 |à á â ã ä å æ ç |
> 000000d0 e8 20 e9 20 ea 20 eb 20 ec 20 ed 20 ee 20 ef 0a |è é ê ë ì í î ï.|
> 000000e0 f0 20 f1 20 f2 20 f3 20 f4 20 f5 20 f6 20 f7 20 |ð ñ ò ó ô õ ö . |
> 000000f0 f8 20 f9 20 fa 20 fb 20 fc 20 fd 20 fe 20 ff 0a |ø ù ú û ü ý þ ÿ.|
> 00000100
> [114]cicely7> echo $LC_CTYPE
> de_DE.ISO8859-1
>
> Das ist jeweils die gleiche Datei mit der gleichen (NFS homedir) tcshrc.
> Wenn ich einen einfachen cat auf die Datei mache werden die fehlenden
> Zeichen auch sauber dargesstellt, d.h. es liegt nicht am xterm, sondern
> irgendwas ist da scheibar mit den locales faul, dass die als non-printable
> behandelt werden.
> Ich bin sogar per ssh vom neuen auf dem alten drauf, d.h. ich benutze
> genau das gleiche xterm.
> Die tcsh verhält sich genauso.
> Wenn ich ein µ auf der Shell vom neuen System eingebe wird das
> nicht angezeigt, auf dem alten System schon.
> Mit de_DE.ISO8859-15 das gleiche Problem.
> Das macht auch nicht jedes Programm, die bash z.B. nimmt die Zeichen
> und stellt die dar, aber die benutzt als GNU-Zeugs wohl nicht die OS-Lib
> dafür.
>

-- 
Oliver Fromme, München   --   FreeBSD + DragonFly BSD
``We are all but compressed light'' - Albert Einstein
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 08 May 2017 - 22:58:53 CEST

search this site