Bug 12776 - xterm в заголовке окна рисует кракозябры
Summary: xterm в заголовке окна рисует кракозябры
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: xterm (show other bugs)
Version: unstable
Hardware: all Linux
: P2 enhancement
Assignee: Fr. Br. George
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-14 12:54 MSD by Alexey V. Novikov
Modified: 2008-06-24 15:28 MSD (History)
3 users (show)

See Also:


Attachments
rpm-пакет с исправлением (328.32 KB, application/octet-stream)
2008-03-18 11:12 MSK, Slava Semushin
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey V. Novikov 2007-09-14 12:54:45 MSD
Локаль у меня ru_RU.UTF-8.
Долго бился почему при входе в каталог, содержащий в названии non-ascii символы
у меня в заголовке окна выводятся кракозябры.
Оказалось, что в xterm начиная с версии 212 появилась опция utf8Title,
по-умолчанию она стоит 'false', что означает перекодировать
из latin-1 в utf-8. Если же поставить эту опцию в 'true', то все начинает
показываться нормально. Это же относится и к uxterm.
Может стоит включать эту опцию по-умолчанию в /etc/X11/app-defaults?
Comment 1 Damir Shayhutdinov 2007-09-16 19:41:47 MSD
На реального мантейнера
Comment 2 Slava Semushin 2007-09-17 11:29:08 MSD
У меня локаль CP1251 и всё работает корректно.

Если вы знаете способ, как включать перекодировку только при юникодной локали,
то было бы хорошо его озвучить.
Comment 3 Alexey V. Novikov 2007-09-17 12:26:26 MSD
$ cd <каталог с русскими буквами в названии> - получаем в заголовке окна
нечитабельный текст. Эта проблема проявляется если:
1. локаль - utf-8
2. шелл - bash
3. терминал - xterm (тоже и в uxterm; в konsole - все нормально)
Возможно это проблема bash (bash-3.1.17-alt2), может xterm (xterm-224-alt2.1).
Если все же это проблема xterm, то можно перевесить баг на etcskel, но
не уверен, что это правильно. Кроме того, насколько я помню, все последние
дистрибутивы идут с локалью utf-8 по-умолчанию. Те кто меняет локаль на другую,
знают для чего им это надо и как это сделать.
Comment 4 Alexey V. Novikov 2007-09-17 13:57:20 MSD
Все, нашел виновника!
В пакете bash (bash-3.1.17-alt2) в файле /etc/bashrc есть следующее описание
*xterm*|*rxvt*|*Eterm*)
 PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}: ${PWD/#$HOME\//~/}\007"'

Оно как раз и выводится в заголовок окна. Как я понимаю, оно выводится в текущей
локали пользователя. Другое дело, в какой кодировке ожидает его увидеть терминал.

Пока представляется единственным выходом в PROMPT_COMMAND добавить iconv из
локали пользователя в utf-8, а в xterm поставить utf8Title=true.
Интересно было бы выслушать другие варианты.
Comment 5 Vyacheslav Dikonov 2007-11-14 11:10:20 MSK
Может пока отключить вывод $PWD по умолчанию с пометкой в bashrc ?
Comment 6 Vyacheslav Dikonov 2007-11-14 11:27:57 MSK
Я попробовал, но после запуска mc $PWD снова появляется. Не могу найти откуда.
Comment 7 Vitaly Lipatov 2007-11-14 11:54:09 MSK
(In reply to comment #4)
> Пока представляется единственным выходом в PROMPT_COMMAND добавить iconv из
> локали пользователя в utf-8, а в xterm поставить utf8Title=true.
Мне кажется очень хороший вариант, закрывающий проблему.
Comment 8 Slava Semushin 2008-03-13 16:37:21 MSK
Обратил внимание на эту багу на работе, где свежепоставленный Desktop и локаль
UTF-8 по умолчанию =(

В ближайшее время, включу.
Comment 9 Slava Semushin 2008-03-13 16:40:12 MSK
(In reply to comment #4)
> Пока представляется единственным выходом в PROMPT_COMMAND добавить iconv из
> локали пользователя в utf-8, а в xterm поставить utf8Title=true.

Я позабочусь об xterm, а вы пока можете вешать баг на пакет-владельца файла
/etc/bashrc.

> Интересно было бы выслушать другие варианты.

Когда будут варианты лучше, тогда и сделаем, а пока нужно чтобы работало.
Comment 10 Slava Semushin 2008-03-18 11:12:57 MSK
Created attachment 2504 [details]
rpm-пакет с исправлением

Собрал для себя исправление. Сейчас на работе проверил -- работает. Если кому
срочно, то можете использовать. Ну или просто потестить. На днях, когда буду
дома, залью эту сборку в Сизиф.
Comment 11 Slava Semushin 2008-03-19 19:22:29 MSK
Fixed in xterm-234-alt2. Please, test.