LANG-Variable in iTerm2 falsch, wo ist der Fehler?

5

Heute ist mir aufgefallen, dass die App beim Öffnen von TortoiseHG auf Niederländisch war (teilweise, wie es scheint, nicht vollständig übersetzt). Als ich mich in meiner Umgebung umsah, fand ich das heraus LANG=nl_NL.UTF-8.

Es ist in der Tat richtig, dass mein Gebietsschema auf NL eingestellt ist (dh Zahlenformate und alle), aber meine Sprache in OS X ist auf Englisch eingestellt und ich würde erwarten, dass meine Apps auch auf Englisch sind. Ein Gebietsschema unterscheidet sich stark von einer Sprache.

Meine Frage lautet nun: Wo melde ich diesen Fehler? Handelt es sich um ein iTerm2-Problem oder muss ich irgendwo anders einen Fehlerbericht einreichen?

Mein Ziel ist es, mein Zahlenformat nach niederländischen Standards (dh 123.456 = 123.000 und 456) und meine Sprache immer noch auf Englisch zu halten. OS X erhält dies, iTerm2 (oder zumindest TortoiseHG, das von iTerm2 gestartet wurde) nicht.

Systemeinstellungen - Sprache Systemeinstellungen - Region

# locale
LANG="nl_NL.UTF-8"
LC_COLLATE="nl_NL.UTF-8"
LC_CTYPE="nl_NL.UTF-8"
LC_MESSAGES="nl_NL.UTF-8"
LC_MONETARY="nl_NL.UTF-8"
LC_NUMERIC="nl_NL.UTF-8"
LC_TIME="nl_NL.UTF-8"
LC_ALL=

Versionen:

  • OS X: 10.8.2
  • iTerm 2: 1.0.0.20120724
  • TurtoiseHG: 2.4
Wolph
quelle
Mit größerer Wahrscheinlichkeit exportieren Sie diesen Wert in Ihre Shell-Anmeldeskripts. Hast du dir .profile etc angesehen?
Gerry
2
Nein, es wird von iTerm2 erledigt (kann in den Einstellungen deaktiviert werden -> Profile -> Terminal -> Gebietsschemavariablen automatisch setzen)
Wolph

Antworten:

7

Das Folgende macht den Trick: Navigieren Sie zu iTerm2 -> Einstellungen -> Profile -> Terminal und deaktivieren Sie die Option "Lokale Variablen automatisch setzen" im Bereich Umgebung.

Anton
quelle
6

Sowohl in iTerm als auch in Terminal hängen die LC_-Variablen standardmäßig von der in den Systemeinstellungen ( defaults read -g AppleLocale) ausgewählten Region ab . Beide haben jedoch Voreinstellungen für die Verwendung des Gebietsschemas C:

  • iTerm: Einstellungen> Profile> Terminal> Ländervariablen automatisch festlegen
  • Terminal: Einstellungen> Einstellungen> Erweitert> Umgebungsvariablen für das Gebietsschema beim Start festlegen

Sie können auch export LANG=CIhr Shell-Profil hinzufügen .

$ defaults read -g AppleLocale
ja_JP
$ locale
LANG="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_CTYPE="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_ALL=
$ dddd
-bash: dddd: コマンドが見つかりません
$ export LANG=C
$ dddd
-bash: dddd: command not found
Lri
quelle
1
Ja, das ist mir aufgefallen. Das scheint jedoch falsch, ein Gebietsschema ist keine Sprache. Nur weil ich möchte, dass meine Zahlen so formatiert werden: 123.456,789für 123.000 ... heißt das nicht, dass ich meine Programme auf Niederländisch haben möchte. Das scheint also irgendwo ein Fehler zu sein.
Wolph
1
@WoLpH Ein Gebietsschema enthält eine Sprache.
Gerry
1
@Gerry: Ich denke, das funktioniert, ich werde es in diesem Fall in iTerm2 als Fehler melden, da die in OSX definierten Einstellungen nicht verwendet werden.
Wolph
1
@Gerry: Meine Region (dh das Zahlenformat) ist auf Niederländisch eingestellt, meine Sprache (die Ihrer Meinung nach das Gebietsschema ist) ist auf Englisch eingestellt. Es scheint, dass es in diesem Fall die falsche Variable verwendet, nicht wahr?
Wolph
1
@ Gerry: Ich habe Screenshots hinzugefügt, um zu verdeutlichen :)
Wolph