26.03.2020 20:16, Taras Heichenko пишет:
On 26 Mar 2020, at 18:54, Eugene Grosbein <[email protected]> wrote:
26.03.2020 23:43, Taras Heichenko пишет:
Каталоги, названные с использованием кириллических символов показываются
правильно.
Но я не могу их набрать в командой строке. При попытке набрать что-нибудь
кириллицей, выскакивают
:\262\320\321\321\320\320\320
Вообще нажатия клавиш передаются на удаленную машину правильно. В vim текст
кириллицей набирается
без проблем. Т.е. впечатление, что bash'у нужно что-то сказать, чтобы он в
командной строке воспринимал
этот ввод правильно. Но что?
В данном конкретном шелле локаль не выставлена. Так может быть, если вместо
правильной команды su -m
использовать неправильную команду su (без ключа -m). Нужно всегда использовать
su -m или аналогичные
инструменты, которые поднимают привилегии, но оставляют старое окружение - и
шеллом остаётся bash,
и профиль пользователя (с локалью). su без -m меняет шелл и окружение на
рутовые:
шеллом будет tcsh вместо bash и т.п.
Может я чего не так понял, но root к моему письму не имеет никакого отношения.
Я не могу ввести символы,
будучи обычным пользователем. Вот как это выглядит.
Может быть, рут и не имеет отношения - это был просто пример,
каким способом вроде бы установленная локаль может "слететь".
Скриншот показывает, что с одной стороны эмулятор терминала передаёт коды
клавиш верно
и cat их "показывает", потому что ему плевать на локаль. А вот шеллу не
плевать, и скриншот
показывает, что локаль в шелле не соответствует кодировке символов.
Правильно ли я понимаю эту фразу, что локальный клиент терминала передает
символы не в той кодировке,
которую ожидает bash? Но если терминал передает в правильной кодировке (cat
ведь показывает их правильно),
то это значит, что у bash'а выставлена кодировка неправильно.
tasic@academ:~>set | grep LC
LC_ALL=uk_UA.UTF-8
LC_CTYPE=uk_UA.UTF-8
MAILCHECK=60
tasic@academ:~>set | grep LANG
LANG=uk_UA.UTF-8
Чего ему не хватает?
MM_CHARSET=UTF-8
Логинкласс попробуй выставить russian у пользователя и перелогиниться.
Загляни в /etc/login.conf (поиск по слову UTF).
Возможно поможет создать свой логинкласс ukrainian (надеюсь не ошибся с
написанием) аналогичный russian:
#
# Russian Users Accounts. Setup proper environment variables.
#
russian|Russian Users Accounts:\
:charset=UTF-8:\
:lang=ru_RU.UTF-8:\
:tc=default:
_______________________________________________
freebsd mailing list
[email protected]
http://mailman.uafug.org.ua/mailman/listinfo/freebsd