Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Pseudolokalisierung

Einführung

Bei der Entwicklung eines Spiels beginnt der Lokalisierungsprozess in der Regel, wenn die Entwicklung abgeschlossen ist. Das bedeutet, dass während der Entwicklung keine Übersetzungen zur Verfügung stehen, um zu testen, ob das Projekt richtig internationalisiert ist.

Godot bietet die Pseudolokalisierung an, um zu testen, wie robust das Projekt gegenüber Änderungen der Sprachumgebung ist. Die Pseudolokalisierung simuliert Änderungen, die während der Lokalisierung auftreten können. Auf diese Weise können etwaige Probleme bei der Internationalisierung bereits in einem frühen Stadium der Entwicklung erkannt werden.

Siehe auch

Sie können sehen, wie die Pseudolokalisierung in Aktion funktioniert, indem Sie das Pseudolocalizaton-Demoprojekt verwenden.

Aktivieren und Konfigurieren der Pseudolokalisierung

Das Aktivieren der Pseudolokalisierung und der damit verbundenen Konfigurationen ist so einfach wie das Aktivieren einer Checkbox in den Projekteinstellungen. Diese Einstellungen finden Sie unter Projekt → Projekteinstellungen → Allgemein → Internationalisierung → Pseudolokalisierung, nachdem Sie den Schalter Erweitert im Projekteinstellungsdialog aktiviert haben:

../../_images/pseudolocalization_settings.webp

Die Pseudolokalisierung kann auch zur Laufzeit von einem Skript ein- oder ausgeschaltet werden.

Konfigurationen der Pseudolokalisierung

Die Pseudolokalisierung in Godot kann je nach dem spezifischen Anwendungsfall des Projekts eingerichtet werden. Im Folgenden sind die Property der Pseudolokalisierung aufgeführt, die über die Projekteinstellungen konfiguriert werden können:

  • replace_with_accents: Ersetzt alle Zeichen in der Zeichenkette durch Akzentvarianten. "The quick brown fox jumped over the lazy dog " wird in "Ŧh̀é q́üíćḱ ḅŕôŵή f́ôx́ ǰüm̀ṕéd́ ôṽéŕ ŧh̀é łáźý d́ôǵ " umgewandelt, wenn diese Einstellung aktiviert ist. Dies kann verwendet werden, um unübersetzte Strings zu erkennen, die keine Akzente haben, ist aber auch nützlich, um nach fehlenden Glyphen in der/den vom Projekt verwendeten Schriftart(en) zu suchen.

  • double_vowels: Verdoppelt alle Vokale im String. Dies ist eine gute Annäherung, um die Expansion von Text während der Lokalisierung zu simulieren. Dies kann verwendet werden, um auf Text zu prüfen, der seinen Container überlaufen würde (z. B. Buttons).

  • fake_bidi: Fake-bidirektionaler Text (simuliert Rechts-nach-Links-Text). Dies ist nützlich, um Rechts-nach-Links-Schreibsysteme zu simulieren, um mögliche Layout-Probleme zu überprüfen, die in Sprachen mit Rechts-nach-Links-Schriften auftreten würden.

  • override: Ersetzt alle Zeichen im String durch ein Sternchen (*). Dies ist nützlich, um schnell Text zu finden, der nicht lokalisiert wird.

  • expansion_ratio: Kann in Fällen verwendet werden, in denen die Verdopplung der Vokale keine ausreichende Annäherung darstellt. Diese Einstellung füllt den String mit Unterstrichen (_) auf. Ein Expansionsverhältnis von 0.3 ist für die meisten praktischen Fälle ausreichend; es wird die Länge des Strings um 30% erhöhen.

  • prefix und suffix: Diese Propertys können verwendet werden, um ein Präfix und ein Suffix anzugeben, in die der Text eingebettet werden soll.

  • skip_placeholders: Überspringt Platzhalter für die String-Formatierung wie %s und %f. Dies ist nützlich, um Stellen zu identifizieren, an denen mehr Argumente erforderlich sind, damit der formatierte String korrekt angezeigt wird.

Alle diese Propertys können je nach Anwendungsfall des Projekts nach Bedarf ein- und ausgeschaltet werden.

Konfigurieren der Pseudolokalisierung zur Laufzeit

Die Pseudolokalisierung kann zur Laufzeit mit der Property pseudolocalization_enabled im TranslationServer ein- und ausgeschaltet werden. Wenn jedoch eine Laufzeitkonfiguration der Pseudolokalisierungs-Propertys erforderlich ist, können diese direkt mit ProjectSettings.set_setting(property, value) konfiguriert und dann TranslationServer.reload_pseudolocalization() aufgerufen werden, wodurch die Pseudolokalisierungs-Propertys repariert und die Pseudolokalisierung neu geladen wird. Das folgende Codeschnipsel schaltet die Propertys replace_with_accents und double_vowels ein und ruft dann reload_pseudolocalization() auf, um die Änderungen zu übernehmen:

ProjectSettings.set_setting("internationalization/pseudolocalization/replace_with_accents", true)
ProjectSettings.set_setting("internationalization/pseudolocalization/double_vowels", true)
TranslationServer.reload_pseudolocalization()