OS X App aus Xcode in anderer Sprache und Locale starten

From macwrench

Beim Entwickeln lokalisierter OS X Programme mit Xcode muss man zum Verifizieren der lokalisierten Oberfläche das Programm des öfteren auch in anderen Sprachen testen.

Der übliche weg über das Umstellen der Sprache in den Systemeinstellungen oder das Verwenden von Hilfsprogrammen wie Language Switcher ist jedoch recht umständlich.

im Terminal[edit]

Einfacher geht es durch den Start mit folgendem Startparameter:

 -AppleLanguages "(German, English)"

also z.B.:

/Applications/Calendar.app/Contents/MacOS/Calendar -AppleLanguages "(German,English)"

Die Anführungszeichen sind dabei nur notwendig, wenn mehrere Sprachen angegeben werden sollen (für die Reihenfolge von Ersatzsprachen).

Analog dazu lassen sich auch verschieden Locales testen, und zwar mit folgendem Parameter:

-AppleLocale en_GB

Für die Verwendung im Terminal ist zu beachten, dass das Terminal-Kommando open hierzu offenbar nicht verwendet werden kann.

mit Xcode[edit]

-AppleLanguages Startparameter in Xcode
Um das nun direkt von Xcode durchführen zu lassen, sind folgende Schritte notwendig:
  1. "manage schemes..." aufrufen (Schema-Verwaltung)
  2. das jeweilige Schema auswählen
  3. dort unter "Run" in das Tab "Arguments" wechseln
  4. in die Liste "Arguments Passed On Launch" einen Eintrag mit diesem Parameter erstellen (siehe Screenshot rechts)

Für einen einfachen Wechsel zwischen mehreren Sprachen können auch mehrere Schemata erzeugt werden, die dann im Xcode-Hauptfenster direkt ausgewählt werden können.

Neuere Xcode-Versionen erlauben die Konfiguration von Region und Sprache über Auswahlfelder