LINUX.ORG.RU

Поломалась кодировка после обновления

 ,


0

3

Обновил генту на свою голову! Почему-то в нормальных терминалах кириллица отображается правильно (т.е. виноваты явно не параметры загрузки ядра), а вот в иксовых (xterm и xfce4-terminal), несмотря на явное указание в настройках локали КОИ8-Р, отображаются «крякозябры». Листинг директории с торрентами отображает кириллицу, т.е. вместо кошерной кодировки зачем-то иксовые терминалы решили, что у меня хрюникод по умолчанию! При этом диалоги open/save отображают КОИ8-Р нормально.

Интересно, что это за бред такой? Как вообще такое могло случиться? Неужто поломали что-то в GTK?

☆☆☆☆☆

Ответ на: комментарий от eternal_sorrow

Прошу не лезть со своими тупняками. Я еще не настолько рехнулся, чтобы пользоваться хрюникодом, systemd или прочими хипстерскими поделками!

Eddy_Em ☆☆☆☆☆
() автор топика

КОИ8-Р

Ты наверное на ЛОРе не видишь даже своих облезлых звездочек.

anonymous
()

В гугле меня забанили: вылезают только идиотские статейки вроде «how to set utf8 in linux», а я прошу «gentoo X cyrillic locale broken».

Eddy_Em ☆☆☆☆☆
() автор топика

Используй UTF-8.

Формат UTF-8 был разработан 2 сентября 1992 года Кеном Томпсоном и Робом Пайком

Или они для тебя тоже хипстеры?

Meyer ★★★★★
()
Последнее исправление: Meyer (всего исправлений: 1)
Ответ на: комментарий от Meyer

Никогда в жизни!

Еще не хватало вместо нормальной 8-битной кодировки себе всякое говнище совать.

Да и тем более у меня огромная гора текстовых и латеховских файлов в КОИ8-Р. И многие латеховские пакеты хрюникод не понимают. Да и не нужна эта долбанавщина никому, кроме китайцев и составителей многоязычных книжек!

Eddy_Em ☆☆☆☆☆
() автор топика

уважуха за КОИ8-Р

что касается кракозябр… слишком широкая тема… обсуждалось милион раз, чекать все настройки…

если случилось после обновления - смотреть что обновилось, откатывать/проверять (генту никогда не юзал - откатываться можно?)…

anonymous
()
Ответ на: комментарий от anonymous

Сначала я грешил на GTK, однако, поставил qterminal — та же петрушка.

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

[I] x11-base/xorg-server
     Available versions:  1.20.11(0/1.20.11)^t **9999(0/9999)*l^t {debug dmx doc +elogind ipv6 kdrive minimal selinux suid systemd test +udev unwind wayland xcsecurity xephyr xnest xorg xvfb}
     Installed versions:  1.20.11(0/1.20.11)^t(21:20:42 05/01/21)(ipv6 suid udev xorg xvfb -debug -dmx -doc -elogind -kdrive -minimal -selinux -systemd -test -unwind -wayland -xcsecurity -xephyr -xnest)
     Homepage:            https://www.x.org/wiki/ https://gitlab.freedesktop.org/xorg/xserver/xorg-server
     Description:         X.Org X servers

Вроде бы, никаких подозрительных флагов нет. Блин...

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Сначала я грешил на GTK, однако, поставил qterminal — та же петрушка.

А что на счет rxvt, kitty? Я думаю, проблема в qtermwidget или vte

Meyer ★★★★★
()
Ответ на: комментарий от Meyer

Вот таки XeLaTeX'ом и есть большинство проблем. На вскидку как сделать подчеркивание всего абзаца? Пакеты работающие с pdflatex на xelatex творят лютую дичь.

einhander ★★★★★
()
Ответ на: комментарий от anonymous

При локали KOI8-R lynx показывает ЛОРовские звёзды символами '*'.

saahriktu ★★★★★
()
Ответ на: комментарий от Eddy_Em

многие латеховские пакеты хрюникод не понимают

С pdflatex подавляющее большинство пакетов поддерживают юникод. Даже lslistings, который как везде помечен, как не поддерживающий юникод.

einhander ★★★★★
()
Последнее исправление: einhander (всего исправлений: 1)
Ответ на: комментарий от Meyer

kitty вообще кириллицу не отображает. ХЗ, что за собака здесь порылась! Возможно, в иксах что-то поломали...

Просто странно это выглядит: в firefox'овском окне «open» я вижу кириллицу в имени файлов, а вот qtcreator не видит ни кои8, ни utf8!

Мне в принципе все равно: «видно» файлы с кириллическими путями или нет, кириллицу, пробелы и другие запрещенные символы в путях использовать нельзя. Обидно, что отредактировать текстовый файл получается только в нормальной консоли, а в виртуальных терминалах ничего не работает!

Eddy_Em ☆☆☆☆☆
() автор топика
Последнее исправление: Eddy_Em (всего исправлений: 1)
Ответ на: комментарий от einhander

Плевать. Мне не нужна кодировка, где один символ != 1 байт!

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

культи внутри себя хранят строки в утф16, т.е. преобразуют для отображения в любом случае. прочие, скорее всего, делают так же.

хз что там сломалось, ищи разницу до и после обновок.

deep-purple ★★★★★
()
locale
LANG=ru_RU.koi8r
LC_CTYPE="ru_RU.koi8r"
LC_NUMERIC=C
LC_TIME="ru_RU.koi8r"
LC_COLLATE="ru_RU.koi8r"
LC_MONETARY="ru_RU.koi8r"
LC_MESSAGES="ru_RU.koi8r"
LC_PAPER="ru_RU.koi8r"
LC_NAME="ru_RU.koi8r"
LC_ADDRESS="ru_RU.koi8r"
LC_TELEPHONE="ru_RU.koi8r"
LC_MEASUREMENT="ru_RU.koi8r"
LC_IDENTIFICATION="ru_RU.koi8r"
LC_ALL=

Листинг с торрентами:

ls
…
'Зубастики-Квадрология [1986-1992]'
'Зубастики атакуют!_Critters Attack! (2019) BDRip.720p.NNMClub.mkv'
'Все смеШАРики.Без заставок.Мод_artem7711'
'В часы досуга - 1948'

При попытке кириллического ввода тоже черт-те что:

echo "������"
������

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от int13h

А где ж я статьи на русском о локали найду, если кругом одни идиоты?

Везде лежат статьи, как сделать локаль в терминале. А у меня она и так в терминале работает, в иксах поломалась почему-то!

Eddy_Em ☆☆☆☆☆
() автор топика
Последнее исправление: Eddy_Em (всего исправлений: 1)

если иксы виноваты, то даже не знаю, что это может быть... мож в xorg.conf пути были к шрифтам и они затёрлись каким-то макаром. что-то в духе:

xorg.conf
Section "Files"
    FontPath     "/usr/share/fonts/cyrillic/" 
EndSection

проверить ещё .x-файлы типа .xinitrc

xset +fp /usr/share/fonts/local &
xset fp rehash &

или как там у тебя что настроено... все эти вещи перечекать, связанные с иксами

anonymous
()
Ответ на: комментарий от anonymous

Так шрифты-то при чем? Не работает преобразование локали: что бы я ни ставил в настройках xfce4-terminal, все равно он считает, что у меня юникод!

Eddy_Em ☆☆☆☆☆
() автор топика

Посмотрю завтра или послезавтра на работе: если там в результате обновлений ничего не поломалось (т.к. на ноутбуке, как ни странно, все работает, но там stable, а вот дома и на работе unstable), то, похоже, у меня какой-то косяк дома при обновлении произошел. И придется emerge -e world делать…

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от dexpl

Их не существует только в твоем выдуманном мирке. А в реальном мире есть минимум три нормальных кодировки: КОИ8-Р, CP866 и CP1251. Первая даже хуже, т.к. буквы не по алфавиту идут.

Eddy_Em ☆☆☆☆☆
() автор топика

Обновил ядро до 5.10.27. Ничего не изменилось: в консоли кириллица есть, в иксовых эмуляторах терминала — нет!

Eddy_Em ☆☆☆☆☆
() автор топика

Может, как уже сказали выше, проблема таки в шрифтах? Пропусти ошибочный выхлоп с кракозябрами через hexdump - если там действительно юникод, тогда будет копать дальше

Pinkbyte ★★★★★
()
Ответ на: комментарий от Eddy_Em

попробуй gentoo X ЙХПХККХВЕЯЙЮЪ КНЙЮКЭ ЯКНЛЮМЮ

anonymous
()
Ответ на: комментарий от Pinkbyte

Пытаюсь набрать echo "русский" | hexdump:

echo "�������" | hexdump 
0000000 d5d2 d3d3 c9cb 0aca   
Судя по кодам, на входе все же идет КОИ8-Р. Однако, на выходе почему-то юникод.

echo "�������" | iconv -f koi8-r -t utf8
русский
eddy> 02.05, 18:57 ~
locale
LANG=ru_RU.koi8r
LC_CTYPE="ru_RU.koi8r"
LC_NUMERIC="ru_RU.koi8r"
LC_TIME="ru_RU.koi8r"
LC_COLLATE="ru_RU.koi8r"
LC_MONETARY="ru_RU.koi8r"
LC_MESSAGES="ru_RU.koi8r"
LC_PAPER="ru_RU.koi8r"
LC_NAME="ru_RU.koi8r"
LC_ADDRESS="ru_RU.koi8r"
LC_TELEPHONE="ru_RU.koi8r"
LC_MEASUREMENT="ru_RU.koi8r"
LC_IDENTIFICATION="ru_RU.koi8r"
LC_ALL=ru_RU.koi8r
Eddy_Em ☆☆☆☆☆
() автор топика
Последнее исправление: Eddy_Em (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte
locale-gen 
 * Generating 2 locales (this might take a while) with 4 jobs
 *  (1/2) Generating ru_RU.KOI8-R ...                                                                                                                                                                                             [ ok ]
 *  (2/2) Generating C.UTF-8 ...                                                                                                                                                                                                  [ ok ]
 * Generation complete
 * Adding locales to archive ...  
echo "$TERM"
xterm-256color
Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

вместо нормальной 8-битной всякое говнище

Молния! Астролог Эдик назвал STM32 говном!

По теме: откати хорг, что ты как не гентушник.

anonymous
()
Ответ на: комментарий от anonymous

откати хорг

Поздно уже:

eix xorg-server
[I] x11-base/xorg-server
     ��������� ������:      1.20.11(0/1.20.11)^t **9999(0/9999)*l^t {debug dmx doc +elogind ipv6 kdrive minimal selinux suid systemd test +udev unwind wayland xcsecurity xephyr xnest xorg xvfb}
     ������������� ������:  1.20.11(0/1.20.11)^t(19:08:05 02.05.2021)(suid udev xorg xvfb -debug -dmx -doc -elogind -ipv6 -kdrive -minimal -selinux -systemd -test -unwind -wayland -xcsecurity -xephyr -xnest)
     �������� ��������:     https://www.x.org/wiki/ https://gitlab.freedesktop.org/xorg/xserver/xorg-server
     ��������:              X.Org X servers

Все более ранние версии отправили в Лету.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Поясню суть вопроса: при обновлении glibc у меня уже давно бывает ломается вывод русского текста в запущенном из старого glibc screen, если от него отсоединиться и подсоединиться заново. Некритично, но раздражает, причем чинится установкой другого значения TERM(но ломаются спецклавиши типа «вверх»,«вниз» и т.д., что не удивительно - отдельный тип терминала там придуман не зря).

Может и у тебя подобная петрушка, только жестче(ибо помножено на KOI8-R)

Если TERM переназначить на «xterm» - лучше не становится?

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

при обновлении glibc

glibc у меня тоже вчера обновился. Я уже давно не запускал обновления, поэтому в списке было больше 250 пакетов.

Если TERM переназначить на «xterm» - лучше не становится?

Нет, ничего не меняется.

Eddy_Em ☆☆☆☆☆
() автор топика

Поставил emerge -e world. Авось, через пару суток (на ночь компьютер приходится выключать) все исправится.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Да и не нужна эта долбанавщина никому, кроме китайцев и составителей многоязычных книжек!

А инопланетяне?

По теме - уже во многих программах других нет. Возможно в новых версиях тоже выпилили поддержку других форматов.

shleemypants
()
Ответ на: комментарий от deep-purple

культи внутри себя хранят строки в утф16

Там ещё вроде бы недавно выкинули поддержку старых кодировок. Например открывать текстовые файлы с зоопарком однобитных кодировок Qt больше не умеет.

X512 ★★★★★
()
Ответ на: комментарий от shleemypants

Ты бы дальше внимательно смотрел! У меня -elogind, ну и оно еще на всякий случай (вместе с systemd и прочим непотребством) замаскировано.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от dmtrge

А толку, если оно потом все равно будет поломанное? Если на работе такой проблемы не появилось, нужно будет попробовать откатиться на stable, либо заново генту поставить (но этого не хотелось бы: это ж гемора на три дня минимум, чтобы потом все вернуть, как было).

Eddy_Em ☆☆☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.