ToDo: Kontrolle

Dateien: <Hauptverzeichnis>\*.cnv

Diese Dateien enthalten die Konvertierungstabellen, um die Zeichensätze von News-Artikeln und E-Mails in den lokalen 8-Bit-Windows-Zeichensatz zu konvertieren. Dieses ist insbesondere im Mailfilter und im News-Scorefile erforderlich, wenn vom ASCII-Zeichensatz abweichende Zeichensätze im Header verwendet werden.

Beispiel:

>From: =?iso-8859-1?Q?=E4rger?= dich nicht <irgend.ein@spammer.invalid>

Bei diesem Beispiel ist es wegen der „Quoted-printable“-Kodierung nicht ohne weiteres möglich, auf das Wort „Ärger“ zu filtern. Deshalb muss dieser Header vor dem eigentlichen Filtern dekodiert werden. In den Filtern geschieht dieses mit dem Tilde-Symbol („~“). Damit der Decoder nun die Zeichensätze der Artikel bzw. E-Mails in den lokalen Zeichensatz umsetzen kann, sind Umsetzungstabellen erforderlich. Diese Konvertierungs-Tabellen müssen für den Hamster folgenden Aufbau besitzen:

Dateiname

cs_<ZeichensatzA>_<ZeichensatzL>.cnv

Hierbei ist „<ZeichensatzA>“ der Zeichensatz in den Artikeln bzw. E-Mails und „<ZeichensatzL>“ der lokale Zeichensatz. In Westeuropa ist auf Windows-Systemen der Zeichensatz „windows-1252“ als lokaler Zeichensatz üblich. In den Artikeln bzw. E-Mails sind hauptsächlich die Zeichensätze „ISO-8859-1“, „ISO-8859-15“ und „UTF-8“ (als Unicode-Transferformat) üblich.

Beispiel:

cs_SO-8859-15_WINDOWS-1252.cnv

Diese Datei ist für die Konvertierung des „ISO-8859-15“-Zeichensatzes in den Zeichensatz „windows-1252“ zuständig.

Welcher Zeichensatz als lokaler Zeichensatz verwendet werden soll, kann im Menü „Einstellungen“ → „Grundeinstellungen“ → „Verschiedenes“ ausgewählt bzw. in der Datei „hamster.ini“ im Abschnitt [Setup] mit der Variablen „local.codepage=<Zeichensatz>“ eingestellt werden.

Dateiaufbau

Die Konvertierungstabellen müssen folgender Regel entsprechen:

ZeichenA=ZeichenL

ZeichenA = zu konvertierendes Zeichen im dezimaler Schreibweise

ZeichenL = lokales Zeichen im dezimaler Schreibweise

Wird vom Decoder für ein Zeichen kein Wertepaar gefunden, so wird es unverändert belassen.

Einige Tabellen sind auch leer, da der Ausgangszeichensatz eine Untermenge des Zielzeichensatzes ist.

Beispiel:
cs_ISO-8859-15_WINDOWS-1252.cnv Zeichendarstellung
164=128
166=138 Š
168=154 š
180=142 Ž
184=158 ž
188=140 Œ
189=156 œ
190=159 Ÿ

Diese Tabelle konvertiert den „ISO-8859-15“-Zeichensatz in Artikeln und E-Mails zum „windows-1252“-Zeichensatz.

Hinweis: Zum Testen einer Tabelle eignet sich die „hs2“-Funktion „DecodeMIMEHeaderString“. Mit den „hs2“-Funktionen „UTF8toUCS32“ und „UTF7toUCS16“ kann die UTF-Kodierung einer Zeichenkette entfernt werden.