Debian 9: Як встановити англійську мову за допомогою німецької мови?


15

Я хочу використовувати англійську мову з налаштуваннями німецької мови .


Зараз моя система працює із наступними налаштуваннями (налаштована під час встановлення в Debian Expert Installer):

  • Мову: English - English (Default)
  • Країна, територія чи область: other -> Europe -> Austria
  • Країна на основі параметрів локальної мови за замовчуванням на: United States - en_US.UTF-8
  • Клавіатура: German

Моє питання зараз:

Як я можу зберегти англійську мову, але переключити поточну локаль ( United States - en_US.UTF-8) на потрібну німецьку мову ( de_DE.UTF-8)?

Під час процедури встановлення це було неможливим, оскільки сталася помилка ("Виявлено невірну комбінацію параметрів мови / мови").


Пов’язане (дублікат?): Unix.stackexchange.com/questions/15291/set-lc-but-not-lc-all
Heinzi

Я просто дивився, як налаштувати англійську мову з голландською мовою (та сама проблема), і перший хіт Google - це цей. Хай живе StackExchange :-)
Тонні

1
Виявив це у "гарячих питаннях до мережі", і тепер я зацікавлений: чого ти намагаєшся досягти? Англійською, але якими словами відрізняються спеціально для німецької мови? На кшталт "Я щойно склав іспит на Абітур" або "Це поїзд з Дойче Бана"?
Фабіан Рьолінг

@Fabian Я підозрюю, що у випадку використання тут є повідомлення англійською мовою, але німецькі формати дати тощо
Стівен Кітт

Відповіді:


16

en_DEне існує як локаль за замовчуванням, тому ви не можете вибрати англійську мову, локалізовану для німецькомовних країн, як локаль під час встановлення. ( Чому варто використовувати локальний файл оновлення замість того, щоб безпосередньо встановлювати LANGUAGE? Описує перевірки, пов'язані з вибором мови.)

Є два підходи, щоб досягти того, що ви хочете.

  1. Перший - створити нову локаль із вашими налаштуваннями; див. Як (легко) мати можливість використовувати новий en _ ** локаль? для деталей.
  2. Інше - налаштувати свої параметри локалітету більш тонко, використовуючи різні LC_змінні ; наприклад:

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

    або, якщо ви хочете, щоб за замовчуванням була німецька мова, окрім повідомлень:

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

    (і скидання будь-яких інших конфліктуючих LC_змінних, зокрема, LC_ALLщо перекриває всі інші параметри). Ви можете перевірити свої настройки за допомогою localeпрограми; див. як працює програма "Локаль"? для деталей.


Оскільки LANG - це лише резервна копія, ваша пропозиція не працює, якщо є інші змінні LC_ *.
лукаво

1
Ну, у цьому вся суть використання LANGтут, але я це уточнив, спасибі.
Стівен Кітт

Дуже дякую за велику допомогу Стівен! Чи потрібно спочатку генерувати німецьку локаль, перш ніж я можу ввести її /etc/default/locale? Я думаю, зараз у мене існує лише американська мова, тому я побоююся de_DE.UTF-8, що в моїй системі ще немає?
Дейв

2
@Dave вам потрібно зробити це доступним, так, запустивши sudo dpkg-reconfigure localesабо встановивши locales-all. Не слід редагувати /etc/default/localeбезпосередньо, а використовувати update-localeзамість цього (див. Перше посилання у відповіді).
Стівен Кітт

@StephenKitt дякую! Чи можете ви дати мені вказівник на те, куди слід додати команди експорту (в archlinux), щоб зробити їх доступними для всіх програм і встановити під час завантаження?
золоте дно
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.