setlocale: LC_CTYPE: невозможно изменить локаль (UTF-8) [закрыто]

29

Когда я нажимаю вкладку для автозаполнения, я получаю эту ошибку:

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8)

Я пытался запустить это:

locale-gen en_US en_US.UTF-8
dpkg-reconfigure locales
reboot

Но это не помогает. Вы знаете, чего не хватает?

Я использую Ubuntu 13.04.

Znarkus
источник
1
UTF-8 как имя локали выглядит неправильно.
Гюнтберт
1
Исправлено в моем Ubuntu окне, выполнив: apt-get install language-pack-en-base, update-locale LC_ALL = "en_GB.UTF-8", locale-gen (не GB, не US)
PhoebeB
Мой ответ касается Debian, но у меня sudo dpkg-reconfigure locales
возникла

Ответы:

49

Исправлено, добавив эти строки ~/.bash_profileна мой локальный компьютер (OSX).

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
Znarkus
источник
2
На самом деле, установка LANG и LC_ALL не имеет смысла. И вы должны действительно взглянуть на это, /etc/default/localeчтобы решить проблему в масштабе всей системы.
Гуннар Хьялмарссон
1
@GunnarHjalmarsson На сервере это LANG=en_US.UTF-8. Этот файл не существует в OSX.
Знаркус
1
Пропустил, что вы подключаетесь удаленно. Таким образом, очевидно, ваши локальные настройки языка экспортируются на сервер. В любом случае, учитывая, что на сервере используется LANG, установки LANG в ~ / .bash_profile должно быть достаточно. help.ubuntu.com/community/… описывает различные категории локалей .
Гуннар Хьялмарссон
Я столкнулся с той же проблемой (предупреждение о локали tabдля автоматического завершения) на удаленных сессиях от OS X до Ubuntu. Этот ответ сработал и для меня.
Карл
4

У вас могут быть какие-то странные настройки /etc/default/locale. «UTF-8» не является полным названием локали.

Гуннар Хьялмарссон
источник