Никаких польских знаков в терминале

Никаких польских знаков в терминале

Я изменил свой .bashrcфайл, так что эта $LANGпеременная всегда устанавливается в , en_USкогда я запускаю новую оболочку. Это потому, что у меня есть программа для создания графиков, которая принимает знак как десятичный разделитель на основе языка.

Если $LANGустановлено значение pl_PLthen, то вместо точки у меня стоит запятая.

Все было хорошо, но после того, как я сделал автоматическое обновление своей системы, оказалось, что я не могу вводить польские знаки в терминале.

Например, это юникод для буквы «ó»: U+00D3, но я вижу «C3», когда набираю «ó» в терминале.

Теперь, когда я переключаюсь на другой аккаунт, проблема исчезает.

Я проверил содержимое

/var/lib/locales/supported.d/local

Там говорится:

pl_PL.UTF-8 UTF-8
en_US.UTF-8 UTF-8

Я тоже бегаю

dpkg-reconfigure locale 

Это не приносит никакой пользы.

Что делать, если я не хочу переключаться на другой аккаунт?

решение1

Каким-то образом мне удалось решить проблему. Я записал export LANG=en_USв .bashrcфайл. И теперь я использую

экспорт LC_NUMERIC=C

чтобы получить точку как десятичный разделитель. После того, как я перезапустил систему, я получил свои польские знаки обратно.

решение2

В Debian есть ошибка. Посмотрите: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=818065#85 Ты должен сделать:

rm /etc/console-setup/cached_* 

Эти файлы можно воссоздать

setupcon --save-only

Это внесет изменения в:

/etc/console-setup/cached_setup_keyboard.sh
-loadkeys '/tmp/tmpkbd.iDWdSi' > '/dev/null'
+loadkeys '/etc/console-setup/cached_UTF-8_del.kmap.gz' > '/dev/null'.

Да, они еще не исправили это.

Связанный контент