Re: LANG und UTF-8

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Mon, 5 Dec 2005 21:06:14 +0100 (CET)

Rocco Rutte <pdmef(at)cs.tu-berlin.de> wrote:
> * Oliver Fromme [05-12-05 16:36:53 +0100] wrote:
> > Warum sollte man trotz Unicode-Support nicht nach wie vor
> > ISO8859 unterstützen? Das frißt doch kein Brot. 7bit-
> > ASCII-Support hat man sowieso weiterhin.
>
> Es ist nicht sehr teuer, ich weiss, aber mich stört, dass es in der
> Anwendung immer wieder aufs neue gemacht werden muss.

Nö, muß es eigentlich nicht. Es gibt doch bereits Libs,
die das abstrahieren, libiconv hin oder her.

Was man dann natürlich nicht machen darf, ist, selbst wie-
der auf die Strings loszugehen, wie es Hardcore-C-Program-
mierer gewöhnt sind.

> > > > > dann wäre allen geholfen und man könnte
> > > > > endlich mal die ganzen Würgarounds abschaffen (die ganze
> > > > > Spezialbehandlung für Mail zum Beispiel,
>
> > > > Hmm, was für Spezialbehandlung von Mails meinst Du?
>
> > > Alle Kodierungsmechanismen.
>
> > Das wird alles von MIME abgedeckt; dazu braucht's keine
> > Spezialbehandlung.
>
> Der Teil von MIME, der Header-Kodierung vorschreibt ist für mich die
> Spezialbehandlung,

Das ist keine Spezialbehandlung, sondern Standardbehandlung.

> weil er überflüssig wäre, wenn alle die gleiche
> Kodierung benutzen würd

Du kannst aber nicht alle über einen Kamm scheren. Das
ist nicht besser als vorzuschlagen, nur US-ASCII zu ver-
wenden. Es _gibt_ nunmal zig verschiedene Sprachen mit
zig verschiedenen Zeichen, und es gibt keine Kodierung,
die für alle gleichermaßen gut geeignet und effizient ist.

Vor allem die Begründung, daß es für Dich einfacher wäre,
weil Du dann aus Deinem Perl-Programm heraus sed aufrufen
kannst, finde ich äußerst seltsam.

> > > Ich habe zum Beispiel ein Perlskript als Mailfilter im
> > > Einsatz, was Subjecttags entfernt; das geht nicht mit sed(1), weil
> > > kaputte Clients auch ASCII-Worte in das Encoded Word einbauen.
>
> > Wie meinst Du das?
>
> Zum Beispiel:
>
> Subject: =?iso-8859-15?q?Re%3A%20%5Btag%5D%20foo?=
>
> für 'Re: [tag] foo'.

OK, das ist unschön, aber nicht verboten. Theoretisch
könnte natürlich auch im tag ein Umlaut vorkommen. Oder
er könnte aus einem chinesischen Wort bestehen.

Gerade vorhin habe ich eine Mail bekommen, wo eines der
Wörter im Subject als =?unicode-1-1-utf7?q? kodiert war.
Durchaus sinnvoll und effizient für westeuropäische Spra-
chen. Ein Araber, Israeli, Russe oder Japaner würde so
eine Kodierung aber ehr nicht benutzen,w eil es äußerst
ineffizient für ihn wäre.

> Das ganze dann noch in anderen Kodierungen als
> 8859-15 und/oder base64 statt quoted-printable mit und ohne Folding
> (wenn es dumm läuft dann noch an den blödesten Stellen).

Alles schön und gut (und zulässig). Perl hat ein fertiges
MIME-Modul für sowas (wie die meisten anderen Sprachen).
Ein Aufruf, und Du hast alles fertig vorgekaut in einem
String.

> > 3. Du willst nicht ernsthaft 8-bit-Zeichen uncodiert in
> > Mail-Header reintun, nehme ich an. Siehe RFC2822.
>
> Gäbe es nur eine Kodierung, wäre auch 2822 hinfällig.

Blödsinn. Sorry. Du kannst kein Format abschaffen, das
sich in 20 Jahren in Hard- und Software etabliert hat.

> Es gibt zum Beispiel ernsthaft Leute, die Mail gern nur über XML lösen
> wollen.

Es gibt Leute, die _alles_ mit XML lösen wollen. XML wird
überhaupt gerne für Lösungen herangezogen, denen es am zu-
gehörigen Problem mangelt.

Meine Meinung von XML ist nicht besonders hoch.

> > 4. Wenn Du in einem Programm (egal ob Perl oder sonstwas)
> > Emails parsen willst, dann muß Dein Programm auch MIME
> > können. Mit sed(1) allein ist es nicht getan.
>
> Um zum Beispiel die Tags rauszufiltern müsste es reichen, weil man nach
> RfC2047 IIRC nur die notwendigen Sachen kodieren soll und nicht stur
> alles (soll, leider nicht muss).

Also reicht es eben _nicht_.

Außerdem, wie gesagt: Aus Perl heraus sed(1) aufzurufen,
ist eher ungeschickt (unabhängig von der Kodierungssache).
Einen Header per MIME zu dekodieren ist ein Zweizeiler in
Perl (ebenso in Python).

Im Grunde genommen hat es eine Anwendung gar nicht zu
kümmern, ob und wie irgendwelche Worte kodiert sind.
Es wird halt das MIME-Modul aufgerufen und fertig.

Ich sehe da immer noch kein Problem.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix is over-complicated nonsense. And Bjorn Shoestrap's book
a danger to public health. I tried reading it once, I was in
recovery for months."
        -- Cliff Sarginson
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 05 Dec 2005 - 21:07:30 CET

search this site