Возможно, ваша локаль настроена неправильно; наиболее вероятная причина в том, что, хотя имена файлов хранятся в UTF-8, ваш терминал (я полагаю, Konsole) все еще ожидает устаревшую кодировку ISO-8859- *.
Остальное я не знаю, но вот несколько шагов, чтобы убедиться в правильности базовой конфигурации.
Этот скрипт также может помочь.
Отредактируйте /etc/locale.gen
, убедитесь, что вы предпочитаете .UTF-8
(например, en_US.UTF-8
) не комментируется.
(По умолчанию Arch не включает никаких локалей.)
Запустите locale-gen
для генерации локалей, если они еще не были сгенерированы.
(В настоящее время сгенерированные локали перечислены по locale -a
.)
Отредактируйте /etc/locale.conf
и добавьте LANG=en_US.UTF-8
.
(Переменная LOCALE=
в /etc/rc.conf
делает то же самое, но в некотором смысле не рекомендуется в пользу locale.conf.)
Выйдите полностью, затем войдите снова, чтобы обновить переменные среды.
Запустите env | egrep '^(LANG|LC_)' | sort
чтобы увидеть, какие настройки локали находятся в среде вашей оболочки.
Запустите tr \\0 \\n < /proc/$PPID/environ | egrep '^(LANG|LC_)' | sort
чтобы увидеть среду терминала .
Обе команды должны возвращать одинаковый вывод. Если нет, то они оба должны хотя бы иметь ».UTF-8 "в значениях LANG
. (".UTF-8 "и" .utf8 "можно считать идентичными.) Кроме того, ни одна из команд не должна перечислять LC_ALL
.