Как изменить язык интерфейса в Xfce?

10

Я установил Debian sid с Xfce, и я хотел бы изменить язык, используемый в интерфейсе. Я хотел бы установить английский язык (США), заменяя французский. Изменение должно быть во всей системе (GUI и CLI).

Что я пробовал:

  1. Переконфигурирование локалей

Но он работает только для root, а не для обычного пользователя (мое меню все еще на французском языке на Xfce)

# 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=

Как обычный пользователь:

$ 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. Создание файла .dmrc

Создание этого файла не работает (у меня все еще есть меню в Xfce на французском языке)

$ cat ~/.dmrc 
[Desktop]
Session=xfce4
Language=en_US.utf8
Layout=fr
имп
источник

Ответы:

4

Вы можете изменить язык, сгенерировав файл ".i18n" в вашем домашнем каталоге. Для этого используйте текстовый редактор со следующим содержимым:

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

... или просто запустите эту команду в терминале, который также генерирует файл:

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

Затем выйдите и войдите.

markusN
источник
1
это все еще не работает для меня.
Meetai.com
1
@ Meetai.com Я тоже. Попробуйте запустить sudo update-locale LC_ALL=en_US.UTF-8 Убедитесь, что любой выбранный вами регион написан так же, как в /etc/locale.gen.
Eyal
-1, так как не работает. Добавлен полный ответ
Алекс
В своем ответе вы модифицируете систему, это не рекомендуемая практика
markusN
3

Стандарт:

  1. sudo dpkg-переконфигурировать локали

Вручную:

  1. sudo nano /etc/locale.gen (раскомментируйте тот, который вы хотите)
  2. sudo locale-gen
  3. sudo update-locale LC_ALL = en_US.UTF-8
  4. выйти и войти

Протестировано вручную с помощью debian stretch / xfce.

Полную документацию по изменению локалей в Debian можно найти в вики Debian .

Alex
источник
Похоже, плохая идея изменить системные файлы
markusN
Нет это не так. Это то, что Debian предлагает сделать в debain вики: wiki.debian.org/Locale#Manually
Alex
Не все люди используют Debian :-)
markusN
Прочитайте вопрос! Msgstr "Я установил Debian sid с Xfce ...". Пожалуйста, удалите -1 !!
Алекс
1

ОП не указывает, нужно ли им менять язык системы или язык пользователя.

Предполагая, что это пользовательский язык, который вы хотите изменить, ответ @markusN - это путь: установка переменных среды, только для входа пользователя в систему, не затрагивая систему и других пользователей.

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

Очевидно, вам нужно сначала сгенерировать локаль, на которую вы ссылаетесь.

В моем случае (xfce4.12) этого решения было недостаточно: очевидно, сценарий ~/.i18nне выполнялся как часть последовательности запуска xfce.

Убедитесь, что вы пишете эти инструкции где-то более подходящим, и это будет работать. Например, предполагая, что вы уже написали их ~/.i18n, вы могли бы также написать этот ~/.config/xfce4/xinitrcфайл:

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

У меня это работает, на Debian-10.

mariotomo
источник
0

В документации Debian я обнаружил, что локаль по умолчанию была определена в /etc/default/locale, так что если у вас есть root-доступ и вы не ищете способ установить локаль для пользователя, я думаю, что это самый простой способ ...

boumbh
источник
Нет, это не самый простой способ, и / etc / default / locale не следует изменять вручную.
имп
@ppr: или работает update-locale LANG=en_DK.UTF-8 LANGUAGE=en_DK:enкак супер пользователь?
boumbh