Re: Mail-Datei Zeichenkodierung reparieren

From: Marc Santhoff <M.Santhoff(at)web.de>
Date: Mon, 09 Jun 2014 08:07:32 +0200

On Mo, 2014-06-09 at 07:48 +0200, Polytropon wrote:
> On Mon, 09 Jun 2014 07:28:40 +0200, Marc Santhoff wrote:
> > On Mo, 2014-06-09 at 07:04 +0200, Polytropon wrote:
> > > On Mon, 09 Jun 2014 06:32:23 +0200, Marc Santhoff wrote:
> > > > Und viel wichtiger: Da ich das in claws mail nicht ändern kann, möchte
> > > > ich die Dateien nachträglich durch einen Filter schicken, um eine
> > > > menschenlesbares Format, also "wie angezeigt" bekomme. Geht das mit
> > > > FreeBSD-Bordmitteln?
> > >
> > > Grundsätzlich ja, mit "Suchen & Ersetzen", z. B. mit sed. Man
> > > muß nur die auftretenden =-Encodierungen in die gewünschten
> > > Zeichen rückwandeln (z. B. Umlaute).
> > >
> > > Do kannst aber auch folgendes Tool benutzen:
> > >
> > > http://www.fourmilab.ch/webtools/qprint/
> > >
> > > Es läßt sich unter FreeBSD bauen und benutzen.
> >
> > Sehr gut, ist mir am liebsten, weil ...
> >
> > > Aus einem Text wie
> > >
> > > Mir ist übel, äh was löten, dazu Äther,
> > > etwas Öl - ein Übergriff mit Schmeißweg.
> > >
> > > wird dann
> > >
> > > % ./qprint --encode test.txt
> > > Mir ist =FCbel, =E4h was l=F6ten, dazu =C4ther,
> > > etwas =D6l - ein =DCbergriff mit Schmei=DFweg.
> > >
> > > Wie gesagt - hier siehst Du die "üblichen Verdächtigen" und
> > > könntest das auch mit sed lösen:
> > >
> > > % sed 's/=FC/ü/g; s/=E4/ä/g; s/=F6/ö/g; s/=C4/Ä/g; s/=D6/Ö/g; s/=DC/Ü/g; s/=DF/ß/g; s/=$//g' test.txt
> > >
> > > Das ist mit Bordmitteln, sieht aber grausam aus und ist
> > > wahrscheinlich in entscheidenden Punkten unvollständig. :-)
> >
> > ... ich dann nicht das ganze Format auseinandernehmen muß und bei zig
> > E-Mails später mal Fehler finde. Z.B. ein Gleichheitszeichen, wie wird
> > das wohl kodiert? ;)
>
> Das = wird als =3D codiert, was man dem o. g. sed-Aufruf noch
> anfügen könnte. Wenn man vollkommen wahnsinnig wäre. ;-)

Ebent. :)

> Aber es gibt ja noch á, È und andere Zeichen aus ISO-8859-1
> oder -15, die in E-Mails vorkommen können. Das o. g. Programm
> scheint das alles ganz gut zu handhaben.

> > Vielen Dank, damit komme ich zum Ziel. Das "archiver"-Plugin für claws
> > mail möchte leider nicht mit mir spielen.
>
> Ich selbst benutze Sylpheed (der "funktionale Vorgänger" von
> Claws, wenn ich das richtig verstanden habe),

Soll so sein. Ich muß mal gucken, ob Sylpheed nicht besser ist. Claws
ist noch relativ jung und manchmal etwas "eckig". Tatsächlich habe ich
es behalten, als ich verschiedene News-Reader ausprobiert habe, das
gefiel mir am besten und ich benutze es nur für usenet. Pan2 hat damals
irgendwelche Entwicklungswege genommen, die mir keinen Spaß gemacht
hatten.

> wo die Nachrichten
> lokal im MH-Format gespeichert werden. Die Nachrichten beinhalten
> verschiedene Header, wobei
>
> Content-Type: text/plain; charset=ISO-8859-1
> Content-Transfer-Encoding: quoted-printable
>
> der hier relevante sein dürfte. Es kann aber auch
>
> Content-Type: text/plain; charset=US-ASCII
> Content-Transfer-Encoding: 7bit
>
> vorkommen, vermutlich eine Art "automatische Erkennung", die
> greift, wenn keine separat zu codierenden Zeichen (also wirklich
> nur 7-Bit-ASCII-Zeichen - keine Umlaute oder dergleichen) in
> der Nachricht vorkommen. In einem solchen Fall ist wahrscheinlich
> gar keine Konvertierung notwendig.
>
> Ob das Programm aber mit
>
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
>
> umgehen kann, müßte man mal ausprobieren - vermutlich nicht, denn
> in diesem Fall ist es ja kein QP. Also sollte man vor eine Kon-
> vertierung am besten einen grep-Test vorschalten, der die Fälle,
> wo das Programm nicht einzusetzen ist, abfiltert. Aber vermutlich
> gehe ich hier wieder von zu komplizierten Voraussetzungen aus. :-)

Ja, zu kompliziert. Ich will wirklich nur intressante Threads als
lesbaren Text speichern. Mehr als die notwendigsten Informationen aus
dem Header brauche ich nicht und will ich noch rauswerfen. Klar, am
Header stolpert qprint manchmal, wenn dort Kodierungen nicht erkannt
werden oder seltsame Zeichenketten drinstehen, aber das stört mich
erstmal nicht. Claws mail gibt es halt nur so raus, und was anderes zu
schreiben, in Python oder so, bin ich dann doch zu faul. Ich hoffe ja,
daß nach den nächsten Update das Archiver-Plugin funktioniert und kann,
was ich will. ;)

Beispiel:
injection-Info: mx05.eternal-september.org; posting-host="dfa301b718dd7151cdb0fa0fa92237c6";
        logging-data="3490";

Da klemmt's natürlich an den Gleicheitszeichen.

Error: bad equal sign escape "="d" at byte 4351 (0x10FF) of input.
Injection-Info: mx05.eternal-september.org;
posting-hostýfa301b718dd7151cdb0fa0fa92237c6";
Error: bad equal sign escape "="3" at byte 4401 (0x1131) of input.
Error: bad equal sign escape "="a" at byte 4428 (0x114C) of input.
Error: bad equal sign escape "="U" at byte 4475 (0x117B) of input.

Ich brauche aber nur Subject, From, Datum und vielleicht noch Msg-ID.
Wenn die ID kaputt geht kann ich es über das Subject trotzdem ggf.
nochmal raussuchen.

-- 
Marc Santhoff <M.Santhoff(at)web.de>
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 09 Jun 2014 - 08:09:26 CEST

search this site