Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.os.unix.linux.misc > #114693 > unrolled thread

de_DE:utf8 oder de_DE.UTF-8?

Started byMarc Haber <mh+usenetspam1118@zugschl.us>
First post2021-02-08 10:18 +0100
Last post2021-02-14 12:25 +0100
Articles 20 on this page of 36 — 15 participants

Back to article view | Back to de.comp.os.unix.linux.misc


Contents

  de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 10:18 +0100
    Re: de_DE:utf8  oder de_DE.UTF-8? Ulli Horlacher <framstag@rus.uni-stuttgart.de> - 2021-02-08 10:03 +0000
    Re: de_DE:utf8  oder de_DE.UTF-8? Holger Schauer <Holger.Schauer@gmx.de> - 2021-02-08 12:00 +0100
      Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 14:20 +0100
        Re: de_DE:utf8  oder de_DE.UTF-8? Holger Schauer <Holger.Schauer@gmx.de> - 2021-02-08 15:37 +0100
          Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 16:15 +0100
            Re: de_DE:utf8  oder de_DE.UTF-8? Florian Weimer <fw@deneb.enyo.de> - 2021-02-08 18:17 +0100
    Re: de_DE:utf8  oder de_DE.UTF-8? Urs Janßen <urs@niko.tin.org> - 2021-02-08 11:23 +0000
      Re: de_DE:utf8  oder de_DE.UTF-8? Michael Bäuerle <michael.baeuerle@stz-e.de> - 2021-02-08 13:35 +0100
        Re: de_DE:utf8  oder de_DE.UTF-8? Urs Janßen <urs@niko.tin.org> - 2021-02-08 13:05 +0000
          Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 14:24 +0100
            Re: de_DE:utf8  oder de_DE.UTF-8? Michael Bäuerle <michael.baeuerle@stz-e.de> - 2021-02-08 16:32 +0100
            Re: de_DE:utf8  oder de_DE.UTF-8? Marcus Jodorf <trap@killfile.de> - 2021-02-09 01:24 +0100
              Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-09 07:24 +0100
                Re: de_DE:utf8  oder de_DE.UTF-8? Thomas Dorner <de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com> - 2021-02-09 19:49 +0100
                  Re: de_DE:utf8  oder de_DE.UTF-8? Marcus Jodorf <trap@killfile.de> - 2021-02-09 22:38 +0100
                  Re: de_DE:utf8  oder de_DE.UTF-8? Helmut Waitzmann <nn.throttle@xoxy.net> - 2021-02-09 22:37 +0100
                    Re: de_DE:utf8  oder de_DE.UTF-8? Thomas Dorner <de.comp.os.unix.linux.misc.210210.dorner@spamgourmet.com> - 2021-02-10 19:17 +0100
                      Re: de_DE:utf8  oder de_DE.UTF-8? Helmut Waitzmann <nn.throttle@xoxy.net> - 2021-02-10 22:02 +0100
                        Re: de_DE:utf8  oder de_DE.UTF-8? Thomas Dorner <de.comp.os.unix.linux.misc.210211.dorner@spamgourmet.com> - 2021-02-11 16:30 +0100
                          Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-11 20:49 +0100
              Re: de_DE:utf8  oder de_DE.UTF-8? Michael Bäuerle <michael.baeuerle@stz-e.de> - 2021-02-12 10:50 +0100
        Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 14:23 +0100
          Re: de_DE:utf8  oder de_DE.UTF-8? Andreas Kohlbach <ank@spamfence.net> - 2021-02-08 11:49 -0500
            Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 21:35 +0100
              Re: de_DE:utf8 oder de_DE.UTF-8? Claus Reibenstein <creibens@gmail.com> - 2021-02-08 22:09 +0100
                Re: de_DE:utf8 oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-09 07:24 +0100
                  Re: de_DE:utf8 oder de_DE.UTF-8? Başar Alabay <alabay@gmx.net> - 2021-02-09 07:20 +0000
      Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 14:22 +0100
        Re: de_DE:utf8  oder de_DE.UTF-8? Urs Janßen <urs@niko.tin.org> - 2021-02-08 13:56 +0000
          Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 15:28 +0100
            Re: de_DE:utf8  oder de_DE.UTF-8? Urs Janßen <urs@niko.tin.org> - 2021-02-08 15:20 +0000
              Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-08 16:33 +0100
                Re: de_DE:utf8  oder de_DE.UTF-8? Urs Janßen <urs@niko.tin.org> - 2021-02-08 16:22 +0000
    Re: de_DE:utf8  oder de_DE.UTF-8? Bastian Blank <usenet@waldi.eu.org> - 2021-02-13 12:03 +0000
      Re: de_DE:utf8  oder de_DE.UTF-8? Marc Haber <mh+usenetspam1118@zugschl.us> - 2021-02-14 12:25 +0100

Page 1 of 2  [1] 2  Next page →


#114693 — de_DE:utf8 oder de_DE.UTF-8?

FromMarc Haber <mh+usenetspam1118@zugschl.us>
Date2021-02-08 10:18 +0100
Subjectde_DE:utf8 oder de_DE.UTF-8?
Message-ID<rvqvl6$qj6$1@news1.tnib.de>
Hallo,

auf meinem Debian-System bekomme ich die folgende Ausgabe:
|[1/6124]mh@drop:~ $ locale -a
|C
|C.UTF-8
|de_DE.utf8
|en_GB.utf8
|en_US.utf8
|POSIX
|[2/6125]mh@drop:~ $ locale
|LANG=de_DE.utf8
|LANGUAGE=en
|LC_CTYPE="de_DE.utf8"
|LC_NUMERIC=de_DE.UTF-8
|LC_TIME=de_DE.UTF-8
|LC_COLLATE=de_DE.UTF-8
|LC_MONETARY=de_DE.UTF-8
|LC_MESSAGES=en_US.utf8
|LC_PAPER="de_DE.utf8"
|LC_NAME="de_DE.utf8"
|LC_ADDRESS="de_DE.utf8"
|LC_TELEPHONE="de_DE.utf8"
|LC_MEASUREMENT=de_DE.UTF-8
|LC_IDENTIFICATION="de_DE.utf8
|LC_ALL=
|[3/6126]mh@drop:~ $

Wenn ich das richtig verstanden habe, gibt locale -a die Locales aus,
die auf dem System generiert sind. Allerdings habe ich in der
Konfiguration des locale-Pakets (dpkg-reconfigure -plow locales)
de_DE.UTF-8, en_GB.UTF-8 und en_US.UTF-8 (mit groß geschriebenem UTF
und mit Bindestrich) ausgewählt.

locale gibt nach meinem Verständnis die lokale Konfiguration aus.
Warum es hier so ein wildes Gemisch aus de_DE.utf8 und de_DE.UTF-8
gibt, muss ich mit meinen .bashrc-Foo Scripten nochmal besprechen.
Eine offensichtliche Fehlfunktion sehe ich hier aber nicht. Natürlich
gibt es das eine oder andere Programm, das LC_MESSAGES und LANGUAGE
ignoriert und trotzdem deutsch mit mir spricht, weil LANG auf de_DE
steht.

Nun habe ich hier ein Tool, debspawn, das eine Warnung wirft, wenn
LANG nicht auf .UTF-8 matcht und sagt, dass das system kein Unicode
könne. Das lässt mich daran zweifeln, ob .utf8 richtig ist.

Ich habe das auf Twitter und im IRC angesprochen, und da haben Leute
mit BSD-Hintergrund gesagt, ich solle nach /usr/share/locale gucken.
Da steht aber gar nichts über UTF8. Auf de_DE matcht nur
/usr/share/locale/de_DE, und in dem Verzeichnis gibt es nur ein
LC_MESSAGES und ein paar .mo Files. Auch in /usr/lib/locale habe ich
nur C.UTF-8 und locale-archive.

Ist auf meinem System (und auf allen anderen meiner Systeme auch,
dieses Verhalten zieht sich auf alle meine Kisten) irgendwas nicht ok?
Wie ist es "richtig" auf einem "modernen" System?

Grüße
Marc
-- 
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber         |   " Questions are the         | Mailadresse im Header
Mannheim, Germany  |     Beginning of Wisdom "     | 
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

[toc] | [next] | [standalone]


#114696

FromUlli Horlacher <framstag@rus.uni-stuttgart.de>
Date2021-02-08 10:03 +0000
Message-ID<rvr29k$gtn$1@news2.informatik.uni-stuttgart.de>
In reply to#114693
Marc Haber <mh+usenetspam1118@zugschl.us> wrote:

> Wie ist es "richtig" auf einem "modernen" System?

Unter Ubuntu 20 habe ich:

root@fossa:~# locale
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME=en_DK.UTF-8
LC_COLLATE=C
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=de_DE
LC_NAME="en_US.UTF-8"
LC_ADDRESS=de_DE
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=de_DE
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

Damit funktioniert alles, keine Fehlermeldungen.


-- 
Ullrich Horlacher              Server und Virtualisierung
Rechenzentrum TIK         
Universitaet Stuttgart         E-Mail: horlacher@tik.uni-stuttgart.de
Allmandring 30a                Tel:    ++49-711-68565868
70569 Stuttgart (Germany)      WWW:    http://www.tik.uni-stuttgart.de/

[toc] | [prev] | [next] | [standalone]


#114699

FromHolger Schauer <Holger.Schauer@gmx.de>
Date2021-02-08 12:00 +0100
Message-ID<87a6selt8q.fsf@pixie.holgi.priv>
In reply to#114693
On 10022 September 1993, Marc Haber wrote:
[...]
> |[2/6125]mh@drop:~ $ locale
> |LANG=de_DE.utf8
> |LANGUAGE=en
> |LC_CTYPE="de_DE.utf8"
[...]

> Nun habe ich hier ein Tool, debspawn, das eine Warnung wirft, wenn
> LANG nicht auf .UTF-8 matcht und sagt, dass das system kein Unicode
> könne. Das lässt mich daran zweifeln, ob .utf8 richtig ist.

Ich kann Dir das nicht beantworten, aber ich kann Dir zeigen, was ich
hier auf meinem Debian Buster habe:

[pixie->~]locale
LANG=C.UTF-8
LANGUAGE=
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
[usw.ff.]

Das war bis vor kurzem noch DE.UTF-8. Die Umstellung habe ich offenbar
unter Zuhilfenahme von update-locale gemacht (lt. Kommentar in
/etc/default/locale, vermutlich via dpkg-reconfigure locale, aber das
weiß ich nicht mehr sicher), also gehe ich mal aus das `.UTF-8` das ist,
was unter Buster korrekt ist.

HTH,

 Holger
 
-- 
---          http://blog.find-method.de/            ---
"(/ (- (f common-lisp) (f scheme)) (f C)) => float underflow"
                  -- <jrm@rebol.com> in comp.lang.lisp

[toc] | [prev] | [next] | [standalone]


#114703

FromMarc Haber <mh+usenetspam1118@zugschl.us>
Date2021-02-08 14:20 +0100
Message-ID<rvrdqd$o21$1@news1.tnib.de>
In reply to#114699
Holger Schauer <Holger.Schauer@gmx.de> wrote:
>On 10022 September 1993, Marc Haber wrote:
>[...]
>> |[2/6125]mh@drop:~ $ locale
>> |LANG=de_DE.utf8
>> |LANGUAGE=en
>> |LC_CTYPE="de_DE.utf8"
>[...]
>
>> Nun habe ich hier ein Tool, debspawn, das eine Warnung wirft, wenn
>> LANG nicht auf .UTF-8 matcht und sagt, dass das system kein Unicode
>> könne. Das lässt mich daran zweifeln, ob .utf8 richtig ist.
>
>Ich kann Dir das nicht beantworten, aber ich kann Dir zeigen, was ich
>hier auf meinem Debian Buster habe:
>
>[pixie->~]locale
>LANG=C.UTF-8
>LANGUAGE=
>LC_CTYPE="C.UTF-8"
>LC_NUMERIC="C.UTF-8"
>LC_TIME="C.UTF-8"
>LC_COLLATE="C.UTF-8"
>[usw.ff.]
>
>Das war bis vor kurzem noch DE.UTF-8. Die Umstellung habe ich offenbar
>unter Zuhilfenahme von update-locale gemacht (lt. Kommentar in
>/etc/default/locale, vermutlich via dpkg-reconfigure locale, aber das
>weiß ich nicht mehr sicher), also gehe ich mal aus das `.UTF-8` das ist,
>was unter Buster korrekt ist.

Und was sagt locale -a?

Grüße
Marc
-- 
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber         |   " Questions are the         | Mailadresse im Header
Mannheim, Germany  |     Beginning of Wisdom "     | 
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

[toc] | [prev] | [next] | [standalone]


#114710

FromHolger Schauer <Holger.Schauer@gmx.de>
Date2021-02-08 15:37 +0100
Message-ID<871rdqlj5y.fsf@pixie.holgi.priv>
In reply to#114703
On 10022 September 1993, Marc Haber wrote:
[...]
> Und was sagt locale -a?

Ähnliches wie bei Dir, ich habe aber noch ein paar Legacy-Locales mit
dabei:

C
C.UTF-8
POSIX
de_DE
de_DE.iso88591
de_DE.iso885915@euro
de_DE.utf8
de_DE@euro
deutsch
en_GB.iso885915
en_US.iso885915
en_US.utf8
german

Holger

-- 
---          http://blog.find-method.de/            ---
"(/ (- (f common-lisp) (f scheme)) (f C)) => float underflow"
                  -- <jrm@rebol.com> in comp.lang.lisp

[toc] | [prev] | [next] | [standalone]


#114711

FromMarc Haber <mh+usenetspam1118@zugschl.us>
Date2021-02-08 16:15 +0100
Message-ID<rvrkif$4v5$1@news1.tnib.de>
In reply to#114710
Holger Schauer <Holger.Schauer@gmx.de> wrote:
>On 10022 September 1993, Marc Haber wrote:
>[...]
>> Und was sagt locale -a?
>
>Ähnliches wie bei Dir, ich habe aber noch ein paar Legacy-Locales mit
>dabei:
>
>C
>C.UTF-8
>POSIX
>de_DE
>de_DE.iso88591
>de_DE.iso885915@euro
>de_DE.utf8
>de_DE@euro
>deutsch
>en_GB.iso885915
>en_US.iso885915
>en_US.utf8
>german

Die Legacy-Locales hab ich vor fünf Jahren mal weggetan. Wenn außer
mir niemand mehr nach den letzten UTF-8 Bugs jagt, werden die ja nie
gefixt.

Weiterhin ungeklärt bleibt, wo locale -a das .utf8 herbekommt und ob
es richtig ist und warum es nicht UTF-8 heißt.

Grüße
Marc
-- 
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber         |   " Questions are the         | Mailadresse im Header
Mannheim, Germany  |     Beginning of Wisdom "     | 
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

[toc] | [prev] | [next] | [standalone]


#114718

FromFlorian Weimer <fw@deneb.enyo.de>
Date2021-02-08 18:17 +0100
Message-ID<871rdqcwcy.fsf@mid.deneb.enyo.de>
In reply to#114711
* Marc Haber:

> Weiterhin ungeklärt bleibt, wo locale -a das .utf8 herbekommt und ob
> es richtig ist und warum es nicht UTF-8 heißt.

| The only new thing is the @code{normalized codeset} entry.  This is
| another goodie which is introduced to help reduce the chaos which
| derives from the inability of people to standardize the names of
| character sets.  Instead of @w{ISO-8859-1} one can often see @w{8859-1},
| @w{88591}, @w{iso8859-1}, or @w{iso_8859-1}.  The @code{normalized
| codeset} value is generated from the user-provided character set name by
| applying the following rules:
| 
| @enumerate
| @item
| Remove all characters besides numbers and letters.
| @item
| Fold letters to lowercase.
| @item
| If the same only contains digits prepend the string @code{"iso"}.
| @end enumerate
| 
| @noindent
| So all of the above names will be normalized to @code{iso88591}.  This
| allows the program user much more freedom in choosing the locale name.

Das stammt wohl von der Mitte der 90er, wird aber heute immer noch
verwendet.

C.UTF-8 wird bei Debian offenbar nicht normalisiert. Im Moment kocht
da noch jede Distribution ihr eigenes Süppchen (Upstream-glibc hat
kein C.UTF-8).

[toc] | [prev] | [next] | [standalone]


#114700

FromUrs Janßen <urs@niko.tin.org>
Date2021-02-08 11:23 +0000
Message-ID<rvr6v3$l3u$1@akk3-dmz.akk.uni-karlsruhe.de>
In reply to#114693
In <rvqvl6$qj6$1@news1.tnib.de> on Mon, 08 Feb 2021 10:18:30, Marc Haber wrote:
> 
> Ich habe das auf Twitter und im IRC angesprochen, und da haben Leute
> mit BSD-Hintergrund gesagt, ich solle nach /usr/share/locale gucken.
> Da steht aber gar nichts über UTF8. Auf de_DE matcht nur
> /usr/share/locale/de_DE, und in dem Verzeichnis gibt es nur ein
> LC_MESSAGES und ein paar .mo Files. Auch in /usr/lib/locale habe ich
> nur C.UTF-8 und locale-archive.

/usr/share/i18n/SUPPORTED
/usr/share/X11/locale/locale.alias

und dann fluchen wenn man das selbe .rc-file unter linux und z.b.
hp-ux benutzen will.

[toc] | [prev] | [next] | [standalone]


#114701

FromMichael Bäuerle <michael.baeuerle@stz-e.de>
Date2021-02-08 13:35 +0100
Message-ID<AABgITAVBm4AAAMz.A1.flnews@WStation5.stz-e.de>
In reply to#114700
Urs Janßen wrote:
> In <rvqvl6$qj6$1@news1.tnib.de> on Mon, 08 Feb 2021 10:18:30, Marc Haber wrote:
> > 
> > Ich habe das auf Twitter und im IRC angesprochen, und da haben Leute
> > mit BSD-Hintergrund gesagt, ich solle nach /usr/share/locale gucken.
> > Da steht aber gar nichts über UTF8. Auf de_DE matcht nur
> > /usr/share/locale/de_DE, und in dem Verzeichnis gibt es nur ein
> > LC_MESSAGES und ein paar .mo Files. Auch in /usr/lib/locale habe ich
> > nur C.UTF-8 und locale-archive.
> 
> /usr/share/i18n/SUPPORTED
> /usr/share/X11/locale/locale.alias
> 
> und dann fluchen wenn man das selbe .rc-file unter linux und z.b.
> hp-ux benutzen will.

Es ist schade, dass POSIX bzw. SUS das nicht präziser spezifizieren:
<https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/basedefs/V1_chap08.html#tag_08_02>
(Ende von Kapitel 8.2)

| [language[_territory][.codeset]

Doppelpunkt vor dem "codeset"-Feld, wie im Subject, passt aber nicht auf
dieses Schema.

[toc] | [prev] | [next] | [standalone]


#114702

FromUrs Janßen <urs@niko.tin.org>
Date2021-02-08 13:05 +0000
Message-ID<rvrcu6$m3u$1@akk3-dmz.akk.uni-karlsruhe.de>
In reply to#114701
Michael Bäuerle wrote:
> Es ist schade, dass POSIX bzw. SUS das nicht präziser spezifizieren:
> <https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/basedefs/V1_chap08.html#tag_08_02>
> (Ende von Kapitel 8.2)
> 
> | [language[_territory][.codeset]

der nachsatz ist das "fiese"

| it refers to an implementation-provided locale, where settings of
| language, territory, and codeset are implementation-defined.

[toc] | [prev] | [next] | [standalone]


#114706

FromMarc Haber <mh+usenetspam1118@zugschl.us>
Date2021-02-08 14:24 +0100
Message-ID<rvre36$o4c$1@news1.tnib.de>
In reply to#114702
Urs Janßen <urs@niko.tin.org> wrote:
>| it refers to an implementation-provided locale, where settings of
>| language, territory, and codeset are implementation-defined.

Es ist also sowohl .utf8 als auch .UTF-8 richtig abhängig davon was
sich die Implementation (hier: die Distribution?) definiert hat? Oder
kann man wenistens davon ausgehen, das das innerhalb von
i686-linux-gnu konsistent ist?

Grüße
Marc
-- 
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber         |   " Questions are the         | Mailadresse im Header
Mannheim, Germany  |     Beginning of Wisdom "     | 
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

[toc] | [prev] | [next] | [standalone]


#114713

FromMichael Bäuerle <michael.baeuerle@stz-e.de>
Date2021-02-08 16:32 +0100
Message-ID<AABgIVmUBnAAAAMz.A1.flnews@WStation5.stz-e.de>
In reply to#114706
Marc Haber wrote:
> Urs Janßen <urs@niko.tin.org> wrote:
> > 
> > | it refers to an implementation-provided locale, where settings of
> > | language, territory, and codeset are implementation-defined.
> 
> Es ist also sowohl .utf8 als auch .UTF-8 richtig abhängig davon was
> sich die Implementation (hier: die Distribution?) definiert hat?

So würde ich das auch interpretieren.

> Oder kann man wenistens davon ausgehen, das das innerhalb von
> i686-linux-gnu konsistent ist?

Es scheint ja nicht einmal bei verschiedenen Debian-Versionen konsistent
zu sein, wenn da auch "de_DE.UTF-8" vorkommt.

Auf Devuan 2.1 sieht das hier so aus:
| 
| $ locale -a | grep de*
| de_DE
| de_DE@euro
| de_DE.iso88591
| de_DE.iso885915@euro
| de_DE.utf8
| deutsch

Ich gehe deswegen mal davon aus, dass Debian früher auch "de_DE.utf8"
verwendet hat.
NetBSD verwendet dagegen "de_DE.UTF-8" und "de_DE.ISO8859-1".

In meinem Newsreader gibt es deswegen gruseligen Code dieser Art:
| 
| if( NULL != strstr(loc_ctype, "8859-1")
|     || NULL != strstr(loc_ctype, "8859_1")
|     || NULL != strstr(loc_ctype, "88591") )

der versucht die verschiedenen Varianten zu erkennen. Und letzteres
passt natürlich auch auf "885915", das ist zum davonlaufen.


BTW: POSIX fordert nicht einmal eine Fehlermeldung:
| 
| If the locale value is not recognized by the implementation, the
| behavior is unspecified.

Es darf also auch still und leise schief gehen.

[toc] | [prev] | [next] | [standalone]


#114730

FromMarcus Jodorf <trap@killfile.de>
Date2021-02-09 01:24 +0100
Message-ID<87eehqt7fd.fsf-bofh@killfile.de>
In reply to#114706
Marc Haber <mh+usenetspam1118@zugschl.us> schrieb:

> Urs Janßen <urs@niko.tin.org> wrote:
>>> it refers to an implementation-provided locale, where settings of
>>> language, territory, and codeset are implementation-defined.
>
> Es ist also sowohl .utf8 als auch .UTF-8 richtig abhängig davon was
> sich die Implementation (hier: die Distribution?) definiert hat? Oder
> kann man wenistens davon ausgehen, das das innerhalb von
> i686-linux-gnu konsistent ist?

Wenn man die locale setzt, gibt man die zu verwendende charmap an.
Das Format ist „LANG=<ll>_<CC>.<charmap><@modifiers>“
Am besten verwendet man bei der charmap den canonical name des Systems.
Bei meinem Debian:

bofh@foobar:~$ LC_ALL=de_DE.UTF-8 locale charmap
UTF-8
bofh@foobar:~$ LC_ALL=de_DE.utf8 locale charmap
UTF-8

Canonical name ist hier offenbar „UTF-8“. Also verwendet man vorzugsweise
das, wenn man LC_*, usw. setzt, weil manchmal Anwendungen nicht mit allen
Aliasen klarkommen. Bei Xlib war das z.b. mal ein notorisches Problem.
„utf8“ ist hier bei mir nur ein Alias.

Noch deutlicher vielleicht hiermit:
bofh@foobar:~$ LC_ALL=de_DE.iso88591 locale charmap
ISO-8859-1
bofh@foobar:~$ LC_ALL=de_DE.iso8859-1 locale charmap
ISO-8859-1
bofh@foobar:~$ LC_ALL=de_DE.iso-8859-1 locale charmap
ISO-8859-1
bofh@foobar:~$ LC_ALL=de_DE.ISO-8859-1 locale charmap
ISO-8859-1


Gruß,

Marcus
⚂⚃

[toc] | [prev] | [next] | [standalone]


#114733

FromMarc Haber <mh+usenetspam1118@zugschl.us>
Date2021-02-09 07:24 +0100
Message-ID<rvt9q6$k6n$1@news1.tnib.de>
In reply to#114730
Marcus Jodorf <trap@killfile.de> wrote:
>Canonical name ist hier offenbar „UTF-8“. Also verwendet man vorzugsweise
>das, wenn man LC_*, usw. setzt, weil manchmal Anwendungen nicht mit allen
>Aliasen klarkommen.

Dieser Fall scheint hier vorzuliegen.

Was ist denn der empfohlene Weg, in einem Skript zu prüfen, ob das zu
setzende locale auf dem lokalen System überhaupt vorhanden ist? Mit
der Ausgabe von locale -a zu vergleichen scheint ja nicht tauglich zu
sein.

Grüße
Marc
-- 
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber         |   " Questions are the         | Mailadresse im Header
Mannheim, Germany  |     Beginning of Wisdom "     | 
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

[toc] | [prev] | [next] | [standalone]


#114751

FromThomas Dorner <de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com>
Date2021-02-09 19:49 +0100
Message-ID<6ea6sdnkiw.fsf@th-dorner.de>
In reply to#114733
Marc Haber <mh+usenetspam1118@zugschl.us> writes:
> Was ist denn der empfohlene Weg, in einem Skript zu prüfen, ob das zu
> setzende locale auf dem lokalen System überhaupt vorhanden ist? Mit
> der Ausgabe von locale -a zu vergleichen scheint ja nicht tauglich zu
> sein.

Vielleicht wie in Marcus Beispiel  einfach ausprobieren?  Anscheinend
fällt ein nicht installierter Zeichensatz auf ein 68er ANSI zurück:

~> LC_ALL=de_DE.ISO-8859-1 locale charmap 2>/dev/null
ANSI_X3.4-1968

(Hier ist nur UTF-8 installiert.)

Das läßt sich abgesehen vom "locale" Aufruf rein mit Shell-Mitteln testen.

Viele Grüße, Thomas
-- 
Adresse gilt nur kurzzeitig!

[toc] | [prev] | [next] | [standalone]


#114758

FromMarcus Jodorf <trap@killfile.de>
Date2021-02-09 22:38 +0100
Message-ID<871rdo53c3.fsf-bofh@killfile.de>
In reply to#114751
Thomas Dorner <de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com>
schrieb:


> Vielleicht wie in Marcus Beispiel  einfach ausprobieren?  Anscheinend
> fällt ein nicht installierter Zeichensatz auf ein 68er ANSI zurück:
>
> ~> LC_ALL=de_DE.ISO-8859-1 locale charmap 2>/dev/null
> ANSI_X3.4-1968
>
> (Hier ist nur UTF-8 installiert.)
>
> Das läßt sich abgesehen vom "locale" Aufruf rein mit Shell-Mitteln
> testen.

Scheint ein vernünftiger Weg zu sein.
Da in der Schönen Neuen Welt[tm] systemd natürlich auch bei den localen
mitmischt, dachte ich, könnte man vielleicht auch über „localectl
list-locales“ gehen. Gibt tatsächlich auch schon einen
systemd-localed.service.
Bald wird wahrscheinlich das gesamte userland einfach durch systemd
ersetzt.

Angeblich soll das laut manpage eine Liste der „available locales“
ausgeben. Gibt auch canonical names aus -- aber zumindest bei mir
erscheinen da aber nur alle UTF-8 Varianten und der Rest wird komplett
unterschlagen. Vielleicht haben ja die systemd Leute alles abseits UTF-8
schon für ungültig erklärt.
Wieder mal so ein komischer systemd Sch***, der es nicht so ganz richtig
macht.


Gruß,

Marcus
⚂⚃

[toc] | [prev] | [next] | [standalone]


#114766

FromHelmut Waitzmann <nn.throttle@xoxy.net>
Date2021-02-09 22:37 +0100
Message-ID<83im70c480.fsf@helmutwaitzmann.news.arcor.de>
In reply to#114751
Thomas Dorner 
<de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com>:
>Marc Haber <mh+usenetspam1118@zugschl.us> writes:

>> Was ist denn der empfohlene Weg, in einem Skript zu prüfen, ob 
>> das zu setzende locale auf dem lokalen System überhaupt vorhanden 
>> ist? Mit der Ausgabe von locale -a zu vergleichen scheint ja 
>> nicht tauglich zu sein.
>
>Vielleicht wie in Marcus Beispiel einfach ausprobieren? Anscheinend 
>fällt ein nicht installierter Zeichensatz auf ein 68er ANSI zurück:
>
>~> LC_ALL=de_DE.ISO-8859-1 locale charmap 2>/dev/null
>ANSI_X3.4-1968
>
>(Hier ist nur UTF-8 installiert.) 
>
>
>Das läßt sich abgesehen vom "locale" Aufruf rein mit Shell-Mitteln 
>testen.

Und der Exit‐Status ist trotzdem 0.  => «locale» ist für einen 
vernünftigen Test ungeeignet.

[toc] | [prev] | [next] | [standalone]


#114774

FromThomas Dorner <de.comp.os.unix.linux.misc.210210.dorner@spamgourmet.com>
Date2021-02-10 19:17 +0100
Message-ID<6ek0rf6b4v.fsf@th-dorner.de>
In reply to#114766
Helmut Waitzmann <nn.throttle@xoxy.net> writes:
> Thomas Dorner
> <de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com>:
>>Marc Haber <mh+usenetspam1118@zugschl.us> writes:
>
>>> Was ist denn der empfohlene Weg, in einem Skript zu prüfen, ob das
>>> zu setzende locale auf dem lokalen System überhaupt vorhanden ist?
>>> Mit der Ausgabe von locale -a zu vergleichen scheint ja nicht
>>> tauglich zu sein.
>>
>> Vielleicht wie in Marcus Beispiel einfach ausprobieren? Anscheinend
>> fällt ein nicht installierter Zeichensatz auf ein 68er ANSI zurück:
>>
>>~> LC_ALL=de_DE.ISO-8859-1 locale charmap 2>/dev/null
>>ANSI_X3.4-1968
>>
>> (Hier ist nur UTF-8 installiert.) 
>>
>>
>> Das läßt sich abgesehen vom "locale" Aufruf rein mit Shell-Mitteln
>> testen.
>
> Und der Exit‐Status ist trotzdem 0.  => «locale» ist für einen
> vernünftigen Test ungeeignet.

Du sollst ja auch nicht den Return-Code, sondern die Ausgabe prüfen,
dann klappt das auch.

Viele Grüße, Thomas
-- 
Adresse gilt nur kurzzeitig!

[toc] | [prev] | [next] | [standalone]


#114779

FromHelmut Waitzmann <nn.throttle@xoxy.net>
Date2021-02-10 22:02 +0100
Message-ID<83tuqjab74.fsf@helmutwaitzmann.news.arcor.de>
In reply to#114774
Thomas Dorner 
<de.comp.os.unix.linux.misc.210210.dorner@spamgourmet.com>:
>Helmut Waitzmann <nn.throttle@xoxy.net> writes:
>> Thomas Dorner 
>> <de.comp.os.unix.linux.misc.210209.dorner@spamgourmet.com>:
>>>Marc Haber <mh+usenetspam1118@zugschl.us> writes:

>>>> Was ist denn der empfohlene Weg, in einem Skript zu prüfen, ob 
>>>> das zu setzende locale auf dem lokalen System überhaupt 
>>>> vorhanden ist? Mit der Ausgabe von locale -a zu vergleichen 
>>>> scheint ja nicht tauglich zu sein.
>>>
>>> Vielleicht wie in Marcus Beispiel einfach ausprobieren? 
>>> Anscheinend fällt ein nicht installierter Zeichensatz auf ein 
>>> 68er ANSI zurück:
>>>
>>>~> LC_ALL=de_DE.ISO-8859-1 locale charmap 2>/dev/null
>>>ANSI_X3.4-1968
>>>
>>> (Hier ist nur UTF-8 installiert.) 
>>>
>>>
>>> Das läßt sich abgesehen vom "locale" Aufruf rein mit 
>>> Shell-Mitteln testen.
>>
>> Und der Exit‐Status ist trotzdem 0.  => «locale» ist für einen 
>> vernünftigen Test ungeeignet.
>
>Du sollst ja auch nicht den Return-Code, sondern die Ausgabe 
>prüfen, dann klappt das auch.

Es ist nirgends garantiert, dass sich «locale» so verhält.  Diese 
Annahme steht also auf ziemlich tönernen Füßen.  Am ehesten versteht 
sich noch – wenn nichts anderes extra erwähnt wird –, dass der 
Exit‐Status Erfolg und Scheitern anzeigt.  Das aber ist ja hier 
gerade nicht der Fall. 

[toc] | [prev] | [next] | [standalone]


#114787

FromThomas Dorner <de.comp.os.unix.linux.misc.210211.dorner@spamgourmet.com>
Date2021-02-11 16:30 +0100
Message-ID<6e35y2d3kg.fsf@th-dorner.de>
In reply to#114779
Helmut Waitzmann <nn.throttle@xoxy.net> writes:
> Es ist nirgends garantiert, dass sich «locale» so verhält.  Diese
> Annahme steht also auf ziemlich tönernen Füßen.  Am ehesten versteht
> sich noch – wenn nichts anderes extra erwähnt wird –, dass der
> Exit‐Status Erfolg und Scheitern anzeigt.  Das aber ist ja hier gerade
> nicht der Fall. 

Irgendeinen Fallback Wert für "charset" muß es geben.  Und sobald die
Ausgabe nicht zum erwarteten Ergebnis paßt (z.B. nicht mit de_DE
anfängt), kann man so gut wie sicher sein, daß der gewünschte
Zeichensatz nicht installiert ist.

Viele Grüße, Thomas
-- 
Adresse gilt nur kurzzeitig!

[toc] | [prev] | [next] | [standalone]


Page 1 of 2  [1] 2  Next page →

Back to top | Article view | de.comp.os.unix.linux.misc


csiph-web