Zypper-Sprache ändern

Zypper-Sprache ändern

Ich habe gerade openSUSE Leap 42.2 installiert. Ich habe Probleme mit den Spracheinstellungen.

Ich möchte, dass der Computer Englisch mit mir spricht, aber ich möchte, dass meine Formate schwedisch sind, daher habe ich die Einstellungen auf eine Mischung aus Schwedisch und Englisch geändert.

In Ubuntu /etc/default/localeergibt die folgende Einstellung normalerweise das gewünschte Ergebnis:

LANG=en_US.UTF-8
LC_CTYPE=sv_SE.UTF-8
LC_NUMERIC=sv_SE.UTF-8
LC_TIME=sv_SE.UTF-8
LC_COLLATE=sv_SE.UTF-8
LC_MONETARY=sv_SE.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=sv_SE.UTF-8
LC_NAME=sv_SE.UTF-8
LC_ADDRESS=sv_SE.UTF-8
LC_TELEPHONE=sv_SE.UTF-8
LC_MEASUREMENT=sv_SE.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=

Dies scheint in openSUSE nicht die richtige Vorgehensweise zu sein.

Stattdessen habe ich in einigen Dateien in meinem Home-Ordner sv_SE in en_US geändert.

~/.config/plasma-locale-settings.sh
~/.config/plasma-localerc
~/.i18n
~/.profile

Nachdem Sie zunächst versucht haben, die Sprache mithilfe von GUI-Tools einzustellen: yast1 yast2

Nun localekommt das, was ich erwarte, und wie die Bilder zeigen, sind die meisten Dialoge auf Englisch, aber Zypper scheint das nicht zu interessieren:

user@computer:~> locale
LANG=en_US.UTF-8
LC_CTYPE=sv_SE.UTF-8
LC_NUMERIC=sv_SE.UTF-8
LC_TIME=sv_SE.UTF-8
LC_COLLATE=sv_SE.UTF-8
LC_MONETARY=sv_SE.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=sv_SE.UTF-8
LC_NAME=sv_SE.UTF-8
LC_ADDRESS=sv_SE.UTF-8
LC_TELEPHONE=sv_SE.UTF-8
LC_MEASUREMENT=sv_SE.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=

user@computer:~> zypper search | head -3
Läser in förrådsdata...
Läser installerade paket...

Wie kann ich Zypper dazu bringen, Englisch mit mir zu sprechen?

en_DKDer Versuch, das Problem durch die Verwendung von anstelle einer Mischung aus en_USund zu umgehen , sv_SEist nicht sehr erfolgreich:

Einstellung en_DK erzeugt diesen Fehler

Auch wenn alle LC_Variablen auf „en_US“ gesetzt sind, besteht das System darauf, Schwedisch zu sprechen. Es muss also noch etwas anderes geben, das die angezeigte Sprache beeinflusst:

user@computer:~> locale | grep sv_SE 
LC_CTYPE=sv_SE.UTF-8
LC_NUMERIC=sv_SE.UTF-8
LC_TIME=sv_SE.UTF-8
LC_COLLATE=sv_SE.UTF-8
LC_MONETARY=sv_SE.UTF-8
LC_PAPER=sv_SE.UTF-8
LC_NAME=sv_SE.UTF-8
LC_ADDRESS=sv_SE.UTF-8
LC_TELEPHONE=sv_SE.UTF-8
LC_MEASUREMENT=sv_SE.UTF-8
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_CTYPE
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_NUMERIC
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_TIME
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_COLLATE
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_MONETARY
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_PAPER
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_NAME
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_ADDRESS
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_TELEPHONE
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref
LC_MEASUREMENT
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> NEXT=`locale | grep sv_SE | awk -F '=' '{ print $1 }' | head -1`; echo $NEXT; export $NEXT=en_US.UTF-8; zypper ref

bash: export: "=en_US.UTF-8": inte en giltig identifierare
Root-behörigheter krävs för att uppdatera systemarkiv.
user@computer:~> locale
LANG=en_US.UTF-8
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=

Durch das Zurücksetzen von allem auf en_US und einen Neustart lernt Zypper Englisch:

user@computer:~> locale
LANG=en_US.UTF-8
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=
user@computer:~> zypper ref
Root privileges are required for refreshing system repositories.

Antwort1

Sie können export LC_ALL=Cvorher ausführen zypper .....

Zum Beispiel:

# export LC_ALL=C
# zypper dup
Warning: You are about to do a distribution upgrade with all enabled
repositories. Make sure these repositories are compatible before you
continue. See 'man zypper' for more information about this command.
Loading repository data...
Reading installed packages...
Computing distribution upgrade...
...
...

Antwort2

Nachdem ich alles wieder auf Englisch zurückgesetzt hatte, konnte ich das gewünschte Verhalten wie folgt erzielen:

Klicken Sie mit der rechten Maustaste auf die Uhr und wählen SieZeitformat einstellen...- AuswählenDetaillierte Einstellungenund Aktivieren von Schwedisch für alle Detaileinstellungen:

Spracheinstellungen

Wenn ich danach das Gebietsschema überprüfe, denke ich, dass es vielleicht LC_CTYPEder Fehler ist. Aber viele LC_Variablen, die ich auf Schwedisch eingestellt hatte, sind jetzt Englisch, also müsste ich noch ein bisschen herumbasteln, um sicherzugehen.

user@computer:~> zypper ref
Root privileges are required for refreshing system repositories.
user@computer:~> locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=sv_SE.UTF-8
LC_TIME=sv_SE.UTF-8
LC_COLLATE=sv_SE.UTF-8
LC_MONETARY=sv_SE.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=sv_SE.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

verwandte Informationen