Im Unicode-Modus erlaubt der EDT die Eingabe von Zeichen, die z.B. im Zeichensatz der Eingabequelle nicht definiert sind, in Form einer Ersatzdarstellung, in der direkt der UTF16
-Code des Zeichens spezifiziert wird. Dazu ist mit der Anweisung @PAR ESCAPE-CHARACTER global oder arbeitsdateispezifisch ein Fluchtsymbol zu vereinbaren, das die Ersatzdarstellung einleitet. Standardmäßig erfolgt keine Ersetzung (ESCAPE-CHARACTER=*NONE
). Mit dem Operanden DATA-REPLACEMENT
der Anweisung @PAR kann der Kontext eingestellt werden, in dem die Ersetzung stattfindet.
Die Ersatzdarstellung wird standardmäßig nur innerhalb von Anweisungen, und dort nur in Literalen ausgewertet (DATA-REPLACEMENT=OFF
). Mit DATA-REPLACEMENT=ON
kann eingestellt werden, dass sie auch in Dateneingaben erfolgt.
Die Ersatzdarstellung hat die Form specUxxxx
, d.h. das Fluchtsymbol wird gefolgt von einem U
oder u
(für Unicode) und genau 4 Hexadezimalziffern, die den Code des Zeichens spezifizieren. Wenn beispielsweise mit @PAR ESCAPE-CHARACTER='%' das Fluchtsymbol %
spezifiziert wurde, kann das griechische Omega in der Form %U03A9
oder auch %u03a9
(Groß- und Kleinschreibung wird nicht unterschieden) eingegeben werden.
Wenn global oder für die aktuelle Arbeitsdatei @PAR ESCAPE-CHARACTER=*NONE vereinbart ist (Voreinstellung), wenn die Ersatzdarstellung formal falsch ist oder dem eingegebenen Code kein gültiges UTF16
Zeichen entspricht, wird die Ersatzdarstellung wie eine normale Zeichenfolge behandelt. Eine Umwandlung der Ersatzdarstellung bei der Dateneingabe im F-Modus erfolgt ebenfalls nicht, wenn die Zeichenfolge der Ersatzdarstellung eine Spaltenposition überschreitet, für die ein Hardware-Tabulator definiert ist.
Wenn zwar ein gültiges UTF16
Zeichen spezifiziert wird, dieses aber nicht in den Ziel-Zeichensatz umcodiert werden kann, wird so verfahren, als ob man das ungültige Zeichen direkt (z.B. über eine entsprechende Tastatur) eingegeben hätte.
Die Interpretation erfolgt unabhängig davon, ob das mittels der Ersatzdarstellung eingegebene Zeichen am Bildschirm darstellbar ist oder nicht. Nicht darstellbare Zeichen werden, wie im vorigen Abschnitt beschrieben, als Schmierzeichen dargestellt.