Verfügbare Zeichensätze und ausgelieferte Code-Tabellen
In openFT sind folgende Zeichensätze fest integriert:
Name des CCS | Bedeutung |
ISO88591 bis ISO8859B | für die ASCII-Tabellen ISO8859-1 bis ISO8859-11 und |
ISO646 | für die internationale 7-Bit ASCII Tabelle |
ISO646DE | für die deutsche 7-Bit ASCII Referenzversion |
EDF041 bis EDF04A, | für die EBCDIC-Tabellen DF04-1 bis DF04-10, DF04-13 und |
EDF03IRV | für die internationale 7-Bit EBCDIC Tabelle |
EDF03DRV | für die deutsche 7-Bit EBCDIC Tabelle |
UTF16 | für Unicode in der UTF-16 Codierung (plattformgemäßer |
UTF8 | für Unicode in der UTF-8 Codierung |
UTFE | für Unicode in der UTF-E Codierung |
UTF16LE | für Unicode in der UTF-16 Codierung (Little Endian) |
UTF16BE | für Unicode in der UTF-16 Codierung (Big Endian) |
UTFEIBM | für Unicode in der von IBM definierten UTF-EBCDIC Codierung |
CP1252 | für den von Microsoft definierten ANSI-Zeichensatz mit Euro |
IBM1047 | für den von IBM definierten OpenExtensions EBCDIC |
CP850 | für den von Microsoft definierten OEM-Zeichensatz |
Zusätzlich werden bei der Installation die Code-Tabellen IBM037, IBM273 und IBM500 in <openFT-Installationsverzeichnis>.OPENFT.SYSCCS abgespeichert. Diese Tabellen hatten früher die Namen FTCP037, FTCP273 und FTCP500.
Code-Tabellen für eigene Zeichensätze erstellen
Beim Umstieg von der openFT Version V9 (oder älter) auf die V12 müssen eigene Code-Tabellen in das neue Format konvertiert werden. Hierbei ist zu beachten, dass die Code-Tabellen in V9 zwischen EBCDIC.DF.04-1 und dem entsprechenden individuellen Code in
beiden Richtungen konvertierten, während in der V12 eine Abbildung des individuellen Codes auf UTF-16 erstellt werden muss, wobei dies einer Abbildung auf ISO8859-1 entspricht (jeweils mit vorgeschaltetem 00-Byte). Neu erstellte Code-Tabellen erlauben jetzt auch Darstellungen von Zeichen, die nicht in ISO8859-1 enthalten sind.
Die Code-Tabellen müssen Sie als Members in <openft qualifier>.<inst>.SYSCCS speichern. Diese PO-Bibliothek ist nach der Installation leer.
Der Member-Name ist der CCS-Name des zugehörigen Zeichensatzes. Ein Assemblieren ist nicht mehr erforderlich.
Aufbau einer Code-Tabelle
Die Textdatei muss folgenden Aufbau besitzen:
Die erste Zeile beginnt mit einem '#'.
Das zweite Zeichen ist immer ein Leerzeichen. Der Rest der Zeile enthält einen Kommentar, der den enthaltenen Code charakterisiert.
Die zweite Zeile enthält einen Buchstaben, der derzeit nur den Wert 'S' annehmen kann. 'S' steht für Single-Byte Code, d.h. ein Zeichen ist immer 1 Byte lang.
Die dritte Zeile enthält drei Zahlen.
Die erste Zahl ist eine vierstellige hexadezimale Zahl. Diese definiert das Ersatzzeichen, das verwendet werden soll, wenn ein Unicode-Zeichen nicht auf den Code abbildbar ist.
Die zweite Zahl ist derzeit immer '0'.
Die dritte Zahl ist eine Dezimalzahl, die die Anzahl der folgenden Codepages definiert, sie hat derzeit immer den Wert '1'.
Die dann folgenden Zeilen legen die Codepages fest und haben folgenden Aufbau:
Die erste dieser Zeilen enthält die Nummer der Codepage als zweistellige hexadezimale Zahl. Derzeit ist nur die Codepage 00 zulässig.
Alle folgenden Zeilen enthalten die Zuordnung von Zeichen zu dem jeweiligen 8-bit Codeplatz. Ein Zeichen wird durch seinen UTF-16 Code als vierstellige
hexadezimale Zahl repräsentiert. Die Werte sind in 16 Zeilen mit jeweils 16 vierstelligen hexadezimalen Zahlen ohne Zwischenraum angeordnet.
Beispiel ISO8859-15 (Westeuropa mit Euro-Zeichen)
# Encoding file: iso8859-15, single-byte S 003F 0 1 00 0000000100020003000400050006000700080009000A000B000C000D000E000F 0010001100120013001400150016001700180019001A001B001C001D001E001F 0020002100220023002400250026002700280029002A002B002C002D002E002F 0030003100320033003400350036003700380039003A003B003C003D003E003F 0040004100420043004400450046004700480049004A004B004C004D004E004F 0050005100520053005400550056005700580059005A005B005C005D005E005F 0060006100620063006400650066006700680069006A006B006C006D006E006F 0070007100720073007400750076007700780079007A007B007C007D007E007F 0080008100820083008400850086008700880089008A008B008C008D008E008F 0090009100920093009400950096009700980099009A009B009C009D009E009F 00A000A100A200A320AC00A5016000A7016100A900AA00AB00AC00AD00AE00AF 00B000B100B200B3017D00B500B600B7017E00B900BA00BB01520153017800BF 00C000C100C200C300C400C500C600C700C800C900CA00CB00CC00CD00CE00CF 00D000D100D200D300D400D500D600D700D800D900DA00DB00DC00DD00DE00DF 00E000E100E200E300E400E500E600E700E800E900EA00EB00EC00ED00EE00EF 00F000F100F200F300F400F500F600F700F800F900FA00FB00FC00FD00FE00FF