Zeichensätze

Was ist ein Zeichensatz?

Alle Zeichen, Ziffern und Sonderzeichen, die wir auf dem Bildschirm oder gedruckt sehen, müssen für die elektronische Verarbeitung in numerische Werte kodiert werden, den sogenannten Zeichensatz.

Anfänglich wurden nur kleine Zeichensätze für eine beschränkte Anzahl von Zeichen entworfen, wie ANSI, ASCII. DOS-, Windows-, Linux- und Macintosh-Computer verwendeten leicht unterschiedliche Zeichensätze, die sich aber hauptsächlich bei sprach-spezifischen Zeichen unterschieden, wie den Umlauten.

Was verlangt der GEDCOM Standard?

Genealogische Daten können Zeichen von allen möglichen Sprachen enthalten.
GEDCOM 5.5 erlaubte nur ANSEL (anderswo völlig ungebräuchlich), ASCII und UNICODE; GEDCOM 5.5.1 zusätzlich UTF-8.
Der IBMPC Zeichensatz ist ausdrücklich verboten, da er nicht eindeutig interpretiert werden kann, wenn man nicht weiß, welche Code Page der Sender benutzte.

Jedoch unterstützen die meisten Genealogie-Programme auch die Zeichensätze für Windows und Mac.

Damit das Programm weiß, wie die Bytes zu interpretieren sind, verlangt GEDCOM das Kennzeichen 1 CHAR <CHARACTER_SET> im Dateikopf.

Was sollten wir benutzen?

Inzwischen ist Unicode der Industrie-Standard für konsistentes Kodieren, Darstellen und Verarbeiten von Text und in den meisten Textprogrammen etabliert. Also sollten wir unsere Dateien in diesem Format speichern.

Wenn wir eine Datei für ein anderes Programm speichern, sollten wir uns vergewissern, dass wir einen Zeichensatz wählen, den das andere Programm versteht.
Daher kann GenJ weiterhin speichern als: ANSEL, ANSI, ASCII, LATIN1, UTF-8, UNICODE. Das wählen wir im 'Speichern unter …' Dialog unter 'Kodierung'.

Wenn GenJ eine Datei öffnet

Beim Öffnen einer Datei versucht GenJ sogar Dateien zu interpretieren, die nicht GEDCOM-konform sind. Wird das Format IBMPC entdeckt, wird ISO-8859-1 (Latin1) angenommen.

Wenn Zeichen nicht richtig dargestellt werden, können wir mit einem normalen Texteditor den Wert des Kennzeichens CHAR im Dateikopf auf einen der obigen Werte verändern und es noch einmal versuchen, mit GenJ zu öffnen.

Wenn GenJ eine Datei speichert

Tatsächlich speichert GenJ eine UNICODE Datei als UTF-16 und markiert dies, wenn gefordert, in der BOM (Byte Order Mark, Byte-Reihenfolge-Markierung). Die BOM zeigt die Byte-Reihenfolge einer als UTF-8, UTF-16 or UTF-32 kodierten Datei. Jedes Programm, das Unicode unterstützt, sollte die Datei lesen können.

Die Anwendung der BOM wird im 'Speichern unter …' Dialog festgelegt (siehe Datei sichern, schließen und Backup). Sie sollte aber nur eingeschaltet werden, wenn der Empfänger sie versteht und benötigt.

de/manual/character_sets.txt · Last modified: 2011/01/03 15:06 by kpschubert
Get GenealogyJ at SourceForge.net. Fast, secure and Free Open Source software downloads Recent changes RSS feed Creative Commons License Driven by DokuWiki