LINUX.ORG.RU

Вопрос слаководам


0

0

Вот недавно запустил cfdisk (до этого вообще его не запускал, только при установке). И увидел следующую картину:

http://i.piccy.kiev.ua/i2/7b/32/e2c86349f34856586ac90fd8a93e.png

Такое происходит как в чистой консоли, так и в любом эмуляторе терминала начиная от xterm и кончая konsole.

LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE=C
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

$ cat /etc/slackware-version
Slackware 12.1.0


Ни с одним консольным приложением таких проблем не возникает. Слаку апгрейдил несколько раз до курента, и сейчас до 12.1. Но когда именно начались грабли - сказать не могу, т.к cfdisk не пользовал. Может кто подскажет решение этой некритичной, но неприятной грабли?

★★★★★

Ага. Воспроизвелось. Если сделать

export LANG=ru_RU.UTF-8

под рутом, то именно такая картинка и получается. Если вернуть

LANG=en_US

то cfdisk опять показывает все нормально. Насколько я помню, Патрик предупреждал по поводу UTF под рутом, что там проблемы есть...

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

В слаке вообще с юникодом из коробки не очень. Сегодня ставил 12.1 с нуля - посмотреть на cryptsetup в установщике. Прописал ru_RU.utf8 (кстати - почему именно utf8, а не UTF-8 выдаёт locale -a) - ncurses приложения (minicom и mc) выглядят несколько непривычно. Сменил на ru_RU.koi8r - всё ОК, но после того, как делаешь unicode_stop. Так и не понял, где он сидит.

marsijanin ★★
()

Похоже проблема не в cfdisk. У меня CRUX 2.4, скачал util-linux-ng от слаки 12.1, скопировал оттуда cfdisk - все нормально отображается. Версии ncurses совпадают, версии glibc - нет (у меня 2.6.1). Правда CRUX собирается полностью с опцией --disable-nls. Локаль ru_RU.UTF-8.

bash-3.2$ locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

koTuk
()

Arch64, в случае с русской юникодной локалью та же проблема. Может это проблема локализации cfdisk'а?

p.s. мне в принципе пофигу, у меня en_GB стоит %)

amoralyrr ★☆
()

Есть нормальное решение :) Пересобрать util-linux-ng, отредактированным слакбилдом. Конкретно туда нужно вставить перед configure:
iconv -f koi8-r -t utf-8 msgs/mess.ru > msgs/mess.ru.new
mv msgs/mess.ru.new msgs/mess.ru

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

подсказали на лафоксе, сейчас собираю.

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

>Есть нормальное решение :) Пересобрать util-linux-ng, отредактированным слакбилдом. Конкретно туда нужно вставить перед configure: iconv -f koi8-r -t utf-8 msgs/mess.ru > msgs/mess.ru.new mv msgs/mess.ru.new msgs/mess.ru

это не нормальное решение, это очередной слакокостыль

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