Dr. Alexander Behrens (IALT) – Unterrichtsserver


04-005-1003-R.VL01 Vorlesung "Translatologie B-Sprache" 2. Semester

Internationalisierung (I18N)

  • Der Terminus Internationalisierung bezeichnet die modulare oder universale Gestaltung eines Produkts. Ziel der Internationalisierung ist ...
  • die Reduzierung des Lokalisierungsaufwands, erreicht durch Modularität oder
  • das Überflüssigmachen des Lokalisierungsschritts, erreicht durch Universalität.

InternationalisierungUniversalität, hier: Verzicht auf verbale Elemente

InternationalisierungUniversalität, hier: Einsatz einer lingua franca

Anwendungsfall 1: Hardware

Internationalisierte Hardware, hier: zentrales DisplayUniversalität, hier: zentral verbautes Display für Rechts- wie Linkslenker

Nicht internationalisierte HardwareNicht internationalisierte Hardware, hier: Siebensegmentanzeige (geeignet nur für Latinica)

Vertikale ExpansionVertikale Expansion, verdeutlicht am der Matrix je eines lateinischen und eines chinesischen Zeichens

Anwendungsfall 2: Natürliche Sprache

Auch natürliche Sprache wird internationalisiert. Internationalisierung bedeutet hier insbesondere die Herstellung von Übersetzungsgerechtheit. Beispiele für die Internationalisierung von Texten:

  • terminologische Sauberkeit (Konsistenz und eineindeutige Beziehung zwischen Benennung und Begriff)
  • Vermeidung von Realia
    InternationalisierungUnvollständige Internationalisierung, hier: Verwendung von Realia)
  • Bereitstellung einer Kommentarmöglichkeit für den Übersetzer (betreffend also die Wahl des Mediums, etwa geeignetes Textverarbeitungsformat, Kommentar-Spalte in einer csv-Ressource usw.)
  • Freiheit von ungewollten Assoziationen bei Eigennamen (etwa durch lautliche oder typografische Ähnlichkeit)
    Missglückte InternationalisierungMissglückte Internationalisierung eines Firmennamens, hier: Verwendung einer Lingua franca ohne Berücksichtigung semantischer Assoziationen in dieser
  • Berücksichtigung von Unterschieden in der onomatopoetischen Anmutung und in den artikulatorischen Prägungen
  • Sicherstellung von artikulatorischer Universalität » Euro
  • Verbannung von Sprachregeln aus der Geschäftslogik ( → translation scripting)
    InternationalisierungUnvollständige Internationalisierung, hier: automatisches Einfügen von Leerzeichen bei der Komposition
    InternationalisierungUnvollständige Internationalisierung (hier: Fehlen der Möglichkeit einer Unterdrückung einer Ausgabe, TheBat 7.1.18)

Anwendungsfall 3: Formen

Nicht internationalisiertes IconNicht internationalisiertes Icon für die Bedeutung "weiblich" in einem Adressbuch

Internationalisierter GlobusInternationalisierter Globus

Anwendungsfall 4: Gesten

Nicht internationalisierte GesteMissglückte Internationalisierung, hier: Verbindung einer nicht internationalisierte Geste mit einer Lingua franca

Anwendungsfall 5: Zahlensemantik

Für tetraphobische Kulturen ungeeignete SchaltflächenleisteFür tetraphobische Kulturen ungeeignete Schaltflächenleiste

Anwendungsfall 6: Farbsemantik

Rot als Farbe für Gefahr, Warnung, VerbotRot als "Adrenalin-Farbe"

ReregionalisierungReregionalisierung, hier am Beispiel von Farben (übrigens auch von Formen: Gesichtsschnitt, Mimik)

Anwendungsfall 7: Schallereignisse

Unterdrückung eines Schallereignisses in Windows 10Möglichkeit der Unterdrückung eines Schallereignisses in Windows 10

Anwendungsfall 8: Software

Wollte man früher Software in einem neuen Land verkaufen, so musste eine neue Version dieser Software für dieses Land hergestellt werden. Vertrieb jemand also ein Programm in 20 Ländern, so musste er 20 Programmversionen parallel pflegen. Man stelle sich den Aufwand vor, der nötig wurde, wenn ein solches Programm weiterentwickelt oder um Bugs bereinigt wurde!

Effizienter wurde es, als man begann, Software zu internationalisieren. Hierzu wurde die Software (modellhaft) in Schichten zerschlagen, man könnte auch sagen: modularisiert, dergestalt, dass die verschiedenen an der Softwareproduktion beteiligten Disziplinen wie Grafiker, Entwickler oder Übersetzer an ihr arbeiten konnten, ohne sich gegenseitig ins Gehege zu kommen (generic coding). Für den Übersetzer von besonderem Interesse ist die Unterscheidung der folgenden Schichten:

  1. Logik (Geschäftslogik), enthaltend die Quelldateien des Programms, d. h. das, woran der Entwickler arbeitet.
  2. Daten. Mit dem Wort Daten sind u. a. die uns interessierenden (verbalen) Oberflächeninhalte gemeint, also das, womit wir Übersetzer schwerpunktmäßig arbeiten. Diese Oberflächeninhalte werden in Datenbanken oder in speziellen (textbasierten und / oder kompilierten) Dateien abgelegt, bei ausführbaren Dateien in (vom SDK festgelegten, im Wesentlichen aber sprachenübergreifend konventionalisierten) Objekten1. Als Hyperonym für diese permanenten Datencontainer verwenden wir den Ausdruck Ressourcen bzw. (bei Dateien) von Resource-Dateien. Flache Key-Value-Ressourcen werden umgangssprachlich auch string tables bzw. String-Tabellen genannt. Speziell im Kontext von GNU gettext spricht man auch von Katalogen, KDE von dictionary files (zumindest dann, wenn die po-Dateien vom KDE Framework 5 verwendet werden). Als Übersetzer werden wir i. d. R. mit Dateien arbeiten. Diese Dateien mögen native Ressourcen sein oder "nur" ein Zwischenformat darstellen.

Bei internationalisierter Software findet man den zu übersetzenden Text dank oben erwähnter Trennung nicht mehr irgendwo zwischen Codeschnipseln (hartcodiert), sondern zusammengefasst in der Ressource:

Key-Value-RessourceJavaScript-Ressource (JSON)

nicht internationalisierte SoftwareNicht internationalisierte Software (Behrens 2016:88)

internationalisierte SoftwareInternationalisierte Software (Behrens 2016:88)

Im Internationalisierungsschritt werden die UI2-Strings aus der Quelldatei herausgeschnitten (genauer: durch eineindeutige Schlüssel3 ersetzt) und in die Resource-Datei ausgelagert (externalisiert). Diesen Vorgang nennen wir Externalisierung.


1Microsoft spricht hier von "standard resources"; zu diesen gehören typischerweise Menü, Dialog, Strings, Accelerators, Versionsfenster
2user interface = Benutzeroberfläche
3In obiger JavaScript-Ressource sind das die Zahlen jeweils am Zeilenbeginn.