Wie ändere ich die Sprachoberfläche in Xfce?

10

Ich habe Debian sid mit Xfce installiert und möchte die in der Benutzeroberfläche verwendete Sprache ändern. Ich möchte die Sprache auf Englisch (USA) einstellen und Französisch ersetzen. Die Änderung muss auf dem gesamten System (GUI und CLI) erfolgen.

Was ich versucht habe:

  1. Gebietsschemas neu konfigurieren

Aber es funktioniert nur für root und nicht für normale Benutzer (mein Menü ist auf Xfce immer noch auf Französisch)

# dpkg-reconfigure locales
# locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

Als normaler Benutzer:

$ dpkg-reconfigure locales
-bash: dpkg-reconfigure : commande introuvable

$ locale
LANG=fr_FR.utf8
LANGUAGE=
LC_CTYPE="fr_FR.utf8"
LC_NUMERIC="fr_FR.utf8"
LC_TIME="fr_FR.utf8"
LC_COLLATE="fr_FR.utf8"
LC_MONETARY="fr_FR.utf8"
LC_MESSAGES="fr_FR.utf8"
LC_PAPER="fr_FR.utf8"
LC_NAME="fr_FR.utf8"
LC_ADDRESS="fr_FR.utf8"
LC_TELEPHONE="fr_FR.utf8"
LC_MEASUREMENT="fr_FR.utf8"
LC_IDENTIFICATION="fr_FR.utf8"
LC_ALL
  1. Erstellen einer Datei .dmrc

Das Erstellen dieser Datei funktioniert nicht (ich habe immer noch das Menü in Xfce auf Französisch)

$ cat ~/.dmrc 
[Desktop]
Session=xfce4
Language=en_US.utf8
Layout=fr
ppr
quelle

Antworten:

4

Sie können die Sprache ändern, indem Sie eine Datei ".i18n" in Ihrem HOME-Verzeichnis generieren. Verwenden Sie dazu entweder einen Texteditor mit folgendem Inhalt:

export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8

... oder führen Sie diesen Befehl einfach in einem Terminal aus, das auch die Datei generiert:

echo "export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8" > $HOME/.i18n

Dann abmelden und anmelden.

markusN
quelle
1
das hat bei mir immer noch nicht funktioniert.
Meetai.com
1
@ Meetai.com Ich auch nicht. Versuchen Sie es mit Ausführen sudo update-locale LC_ALL=en_US.UTF-8 Stellen Sie sicher, dass das ausgewählte Gebietsschema genauso geschrieben ist wie in /etc/locale.gen.
Eyal
-1, da es nicht funktioniert. Eine vollständige Antwort hinzugefügt
Alex
In Ihrer Antwort ändern Sie das System, dies ist keine empfohlene Vorgehensweise
markusN
3

Standard:

  1. sudo dpkg-locales neu konfigurieren

Manuell:

  1. sudo nano /etc/locale.gen (kommentieren Sie das gewünschte aus)
  2. sudo locale-gen
  3. sudo update-locale LC_ALL = en_US.UTF-8
  4. Abmelden und Anmelden

Manueller Weg mit Debian Stretch / XFCE getestet.

Die vollständige Dokumentation zum Ändern von Gebietsschemas in Debian finden Sie im Debian-Wiki .

Alex
quelle
Sieht nach einer schlechten Idee aus, um die Systemdateien zu ändern
markusN
Nein ist es nicht. Das schlägt Debian im Debain-Wiki vor: wiki.debian.org/Locale#Manually
Alex
Nicht alle Leute benutzen Debian :-)
markusN
Lies die Frage ! "Ich habe Debian Sid mit Xfce installiert ...". Bitte entfernen Sie die -1 !!
Alex
1

Das OP gibt nicht an, ob die Systemsprache oder die Benutzersprache geändert werden muss.

Angenommen, es ist die Benutzersprache, die Sie ändern möchten, ist die Antwort von @markusN der richtige Weg: Festlegen von Umgebungsvariablen nur für den Benutzer, der sich anmeldet, wobei das System und andere Benutzer davon nicht betroffen sind.

export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8

Natürlich müssen Sie zuerst das Gebietsschema generieren, auf das Sie sich beziehen.

In meinem Fall (xfce4.12) war diese Lösung nicht ausreichend: Anscheinend wurde das Skript ~/.i18nnicht als Teil der xfce-Startsequenz ausgeführt.

Stellen Sie sicher, dass Sie diese Anweisungen an einem geeigneteren Ort schreiben, damit sie funktionieren. Angenommen, Sie haben sie bereits geschrieben ~/.i18n, können Sie auch diese ~/.config/xfce4/xinitrcDatei schreiben :

#!/bin/sh
if [ -f "$HOME/.i18n" ]; then
    . "$HOME/.i18n"
fi
. /etc/xdg/xfce4/xinitrc

Es funktioniert bei mir unter Debian-10.

Mariotomo
quelle
0

In der Debian-Dokumentation habe ich festgestellt, dass das Standardgebietsschema in definiert /etc/default/localewurde. Wenn Sie also über Root-Zugriff verfügen und nicht nach einer Möglichkeit suchen, ein Gebietsschema pro Benutzer festzulegen , ist dies meiner Meinung nach der einfachste Weg ...

Boumbh
quelle
Nein, dies ist nicht der einfachste Weg und / etc / default / locale sollte nicht von Hand geändert werden.
ppr
@ppr: oder so etwas wie update-locale LANG=en_DK.UTF-8 LANGUAGE=en_DK:enals Superuser ?
Boumbh