Debian 9: Jak ustawić język angielski w niemieckich ustawieniach regionalnych?

15

Chcę używać języka angielskiego z niemieckimi ustawieniami regionalnymi .


Obecnie mój system działa z następującą konfiguracją (skonfigurowaną podczas procedury instalacji w Instalatorze Debian Expert):

  • Język: English - English (Default)
  • Kraj, terytorium lub obszar: other -> Europe -> Austria
  • Kraj, na którym mają być oparte domyślne ustawienia regionalne: United States - en_US.UTF-8
  • Klawiatura: German

Moje pytanie brzmi:

Jak mogę zachować język angielski, ale zmienić bieżące ustawienia regionalne ( United States - en_US.UTF-8) na pożądane ustawienia regionalne niemieckie ( de_DE.UTF-8)?

Podczas procedury instalacji nie było to możliwe, ponieważ wystąpił błąd („Wykryto niepoprawną kombinację ustawień języka / ustawień regionalnych”).

Dave
źródło
Właśnie zastanawiałem się, jak skonfigurować angielski z holenderskimi ustawieniami narodowymi (ten sam problem), a pierwszy hit Google to ten. Niech żyje StackExchange :-)
Tonny
1
Znalazłem to w „gorących pytaniach sieciowych”, a teraz jestem zainteresowany: co próbujesz osiągnąć? Angielski, ale z pewnymi słowami innymi dla osób mówiących po niemiecku? Na przykład „Właśnie zdałem egzamin Abitur” lub „To pociąg z Deutsche Bahn”?
Fabian Röling
@Fabian podejrzewam use-case tutaj jest mieć wiadomości po angielsku, ale niemiecki formaty daty itd.
Stephen Kitt

Odpowiedzi:

16

en_DEnie istnieje jako domyślna lokalizacja, dlatego podczas instalacji nie można wybrać języka angielskiego dla krajów niemieckojęzycznych. ( Dlaczego warto używać ustawień regionalnych aktualizacji zamiast bezpośredniego ustawienia JĘZYK? Opisuje kontrole związane z wyborem ustawień regionalnych).

Istnieją dwa podejścia do osiągnięcia tego, czego szukasz.

  1. Jednym z nich jest utworzenie nowego ustawienia narodowego z własnymi ustawieniami; zobacz Jak (łatwo) móc korzystać z nowych ustawień narodowych en _ **? dla szczegółów.
  2. Drugim jest skonfigurowanie ustawień regionalnych w bardziej szczegółowy sposób, przy użyciu różnych LC_zmiennych ; na przykład:

    export LANG=en_US.UTF-8
    export LC_MONETARY=de_DE.UTF-8
    export LC_TIME=de_DE.UTF-8
    

    lub, jeśli chcesz, aby niemiecki był domyślny, z wyjątkiem wiadomości:

    export LANG=de_DE.UTF-8
    export LC_MESSAGES=en_US.UTF-8
    

    (i odznacz wszelkie inne LC_zmienne LC_ALLpowodujące konflikt , w szczególności, które zastępują wszystkie inne ustawienia). Możesz sprawdzić swoje ustawienia za pomocą localeprogramu; zobacz Jak działa program „locale”? dla szczegółów.

Stephen Kitt
źródło
Ponieważ LANG jest tylko rezerwą, twoja propozycja nie działa w przypadku, gdy istnieją inne zmienne LC_ *.
schily
1
Cóż, o to właśnie LANGtu chodzi, ale wyjaśniłem to, dzięki.
Stephen Kitt
Wielkie dzięki za wspaniałą pomoc Stephen! Czy najpierw muszę wygenerować niemieckie ustawienia regionalne, aby móc je wpisać /etc/default/locale? Wydaje mi się, że teraz mam tylko ustawienia lokalne w USA, więc obawiam de_DE.UTF-8się, że nie jest jeszcze dostępny w moim systemie?
Dave
2
@Dave musisz udostępnić, tak, albo poprzez uruchomienie, sudo dpkg-reconfigure localesalbo instalację locales-all. Nie powinieneś edytować /etc/default/localebezpośrednio, ale update-localezamiast tego użyj (patrz pierwszy link w odpowiedzi).
Stephen Kitt
@StephenKitt dzięki! Czy możesz podać mi wskazówkę, gdzie dodać polecenia eksportu do (na archlinux), aby udostępnić je dla wszystkich programów i ustawić podczas uruchamiania?
bonanza