У нас rxvt-unicode собран с поддержкой 256 цветов, а в terminfo значится 88. Обратно оно не совместимо, и с программы, умеющие 88/256-color xterm приобретают довольно забавную расцветку.
Поддержка 256 цветов была включена в rxvt-unicode-9.07-alt1 по запросу https://bugzilla.altlinux.org/show_bug.cgi?id=22664 (и без упоминания в changelog пакета); во всех предыдущих сборках предоставлялись стандартные для rxvt-unicode 88 цветов. Поиск по другим дистрибутивам показал, что пакеты rxvt-unicode с поддержкой 256 цветов есть, например, в Arch Linux: http://repos.archlinux.org/wsvn/community/rxvt-unicode-256color/trunk/ (там это отдельный пакет, есть и http://repos.archlinux.org/wsvn/packages/rxvt-unicode/trunk/ - без патча для поддержки 256 цветов). Также вариант сборки с флагом xterm-color, включающий поддержку 256 цветов, поддерживается в Gentoo: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-terms/rxvt-unicode/ При этом в пакете из Arch Linux, помимо применения патча, также меняется тип терминала на rxvt-256color, что устраняет одну проблему (несоответствие числа цветов в terminfo фактическому), но добавляет другие несоответствия в terminfo (infocmp -L -d rxvt-unicode rxvt-256color выдаёт множество различий, в том числе даже key_backspace: '\177', '^H'). Т.е., так делать нельзя. В варианте из Gentoo делается дополнительное описание терминала с именем rxvt-unicode256, отличающееся от rxvt-unicode только значениями colors и pairs: if use xterm-color; then epatch doc/urxvt-8.2-256color.patch sed -e \ 's/^\(rxvt-unicode\)/\1256/;s/colors#88/colors#256/;s/pairs#256/pairs#32767/' \ doc/etc/rxvt-unicode.terminfo > doc/etc/rxvt-unicode256.terminfo sed -i -e \ "s~^\(\s\+@TIC@.*\)~\1\n\t@TIC@ -o "${D}"/${tdir} \$(srcdir)/etc/rxvt-unicode256.terminfo~" \ doc/Makefile.in fi Однако фактическое значение TERM, используемое urxvt, по каким-то причинам не меняется (--with-term=rxvt-unicode256 при сборке не передаётся). Ну и по аналогии с другими описаниями терминалов тип терминала для rxvt-unicode с поддержкой 256 цветов должен был бы называться rxvt-unicode-256color. Кстати, описание rxvt-unicode в пакете terminfo устарело - оно соответствует версии rxvt-unicode-7.9, с тех пор в пакете rxvt-unicode в нём были сделаны некоторые изменения.
(In reply to comment #1) > Ну и по аналогии с другими описаниями терминалов тип терминала для rxvt-unicode > с поддержкой 256 цветов должен был бы называться rxvt-unicode-256color. С какими? $ ls /lib/terminfo/**/*256* zsh: no matches found: /lib/terminfo/**/*256*
(В ответ на комментарий №2) > С какими? $ ls /usr/share/terminfo/**/*256* /usr/share/terminfo/d/darwin-256x96 /usr/share/terminfo/d/darwin-256x96-m /usr/share/terminfo/E/Eterm-256color /usr/share/terminfo/g/gnome-256color /usr/share/terminfo/k/konsole-256color /usr/share/terminfo/p/putty-256color /usr/share/terminfo/r/rxvt-256color /usr/share/terminfo/s/screen-256color /usr/share/terminfo/s/screen-256color-bce /usr/share/terminfo/s/screen-256color-bce-s /usr/share/terminfo/s/screen-256color-s /usr/share/terminfo/x/xnuppc-256x96 /usr/share/terminfo/x/xnuppc+256x96 /usr/share/terminfo/x/xnuppc-256x96-m /usr/share/terminfo/x/xterm-256color /usr/share/terminfo/x/xterm+256color (все эти описания вынесены в пакет terminfo-extra).
Собрал снапшот. Апстрим уже сам исправил TERM для 256 цветов: $ echo $TERM rxvt-unicode-256color Теперь осталось обновить terminfo, чтобы можно было выложить эту сборку.
2010-Aug-24 13:37:47 :: girar-check-perms: access to ncurses DENIED for raorn: does not belong to approved builders list: ldv inger 2010-Aug-24 13:37:47 :: acl check FAILED 2010-Aug-24 13:37:47 :: task #28023 for sisyphus FAILED
ncurses-5.7-alt3.1 -> sisyphus: * Tue Aug 24 2010 Alexey I. Froloff <raorn@altlinux> 5.7-alt3.1 - NMU: + Updated rxvt-unicode definition (closes: #23927)