Hollywood 7.0 führt endlich die volle Unicode-Unterstützung ein. Vor Hollywood 7.0 war das Programm unter Windows, Linux und macOS auf ISO 8859-1 beschränkt sowie auf den Standard-Zeichensatz des Systems auf AmigaOS und kompatiblen Systemen. Hollywood 7.0 kommt jetzt mit voller Unicode-Unterstützung, die mit der UTF-8 Zeichencodierung implementiert wird. Also, ab Hollywood 7.0 sollten alle Ihre Skripte in der UTF-8 Zeichencodierung gespeichert werden, entweder mit oder ohne BOM (Byte Order Mark/Bytereihenfolge-Markierung)).
Alle in Zeichenketten gespeicherten Texte werden nun als UTF-8 gespeichert und alle Befehle in den Zeichenketten- und Textbibliotheken werden nun standardmäßig UTF-8 formatierten Text erwarten. Es ist möglich, Hollywood in Legacy-Modus zu setzen, d.h. Hollywood zu zwingen, ISO 8859-1 oder den Standard-Zeichensatz des Systems auf AmigaOS zu verwenden, indem Sie das Konsolenargument ‘-encoding’ oder sein Gegenstück bei der Präprozessor-Anweisung angeben. Aber das wird nicht empfohlen, da im Legacy-Modus Ihr Skript nicht garantiert einwandfrei mit verschiedenen Sprachen/Lokalisierungen laufen wird.
Alle Zeichenketten- und Textbibliothekbefehle, die mit Zeichen
in Zeichenfolgen arbeiten müssen, akzeptieren einen optionalen
Codierungsparameter, mit dem Sie die Zeichencodierung festlegen
können. Normalerweise ist es nicht notwendig, diesen optionalen
Codierungsparameter zu verwenden, da dringend empfohlen wird,
immer UTF-8 zu verwenden. In manchen Fällen ist es jedoch schwierig
Zeichenketten- und Textoperationen mit UTF-8 zu handhaben.
Dies gilt insbesondere dann, wenn Sie mit rohen Binärdaten
in einer Zeichenkette arbeiten müssen. In diesem Fall können
Sie einfach die Konstante #ENCODING_RAW
an den jeweiligen Befehl
übergeben. Somit wird eingestellt, dass Sie innerhalb der Zeichenfolge
mit rohen Binärdaten statt in UTF-8-Codierung gespeicherten
Zeichen arbeiten möchten. Die Zeichenketten-Befehle führen
auf der übergebenen Zeichenfolge keine Integritätsprüfungen
durch und werden nur mit den in der Zeichenfolge gespeicherten
rohen Binärdaten arbeiten.
Um die Standard-Zeichencodierungen für die Zeichenkette- und Textbibliothek
zu ändern, können Sie den Befehl SetDefaultEncoding() verwenden.
Siehe SetDefaultEncoding für Details. Allerdings ist
dies in der Regel nicht erforderlich und Sie sollten nur #ENCODING_UTF8
als Standard-Codierung verwenden.
Wenn Sie nicht-englische Tastaturzeichen abfragen wollen, müssen
Sie den neuen Ereignis-Handler VanillaKey
mit InstallEventHandler()
verwenden. VanillaKey
unterstützt den kompletten Unicode-Bereich
von Zeichen, während OnKeyDown
und OnKeyUp
nur Steuerzeichen
und Standard-Englisch-Tasten unterstützen. Siehe InstallEventHandler für Details.
Im Zuge des Übergangs zu Unicode in Hollywood 7.0 könnte es einige Kompatibilitätsprobleme mit älteren Skripten geben. Alle potenziellen Fragen werden im Hinweise zur Kompatibilität/API Änderungen besprochen. Siehe API Änderungen für Details.
Beachten Sie, dass die Textwiedergabe von Hollywood derzeit nur traditionellen Text unterstützt, der von links nach rechts auf horizontalen Linien angelegt wird. Es wir derzeit kein Text unterstützt, der von rechts nach links oder vertikal geht.