Türkisches i
(en.wikipedia.org)Bei der Internationalisierung von Software ist es besonders knifflig, wenn etwas in fast allen Sprachen funktioniert, aber in einigen wenigen (vielleicht genau einer) nicht. Ein typisches Beispiel sind die zwei Arten von i, die nur im Türkischen und Aserbaidschanischen vorkommen. Im lateinischen Alphabet gibt es normalerweise nur das i als Kleinbuchstaben mit Punkt und das I als Großbuchstaben ohne Punkt, aber in diesen Sprachen bilden die punktlosen Buchstaben ı/I und die punktbehafteten Buchstaben i/İ jeweils eigene Paare. So ist zum Beispiel der erste Buchstabe von „İstanbul“ das punktbehaftete große İ.
In Unicode werden die türkischen und aserbaidschanischen i/I nicht separat kodiert (es sind ja dieselben lateinischen Buchstaben), weshalb in Software, die diese Sprachen nicht berücksichtigt, oft Probleme auftreten; es gab sogar schon Fälle mit tödlichen Folgen. [1] Um sie korrekt zu verarbeiten, muss man eine Unicode-Bibliothek verwenden, die Kulturinformationen (Locale) berücksichtigt. In Sprachen und Umgebungen mit Locale-Verarbeitung wie Java oder C# ist das kein großes Problem, andernfalls braucht man eine separate Bibliothek wie ICU.
[1] https://gizmodo.com/a-cellphones-missing-dot-kills-two-people-puts-thr…
1 Kommentare
Ich erinnere mich noch daran, wie mühsam das damals bei Türkisch war … Die Wörter sind so lang, dass ich wegen der Breite von Labels/Buttons zu kämpfen hatte …