urxvt использует розовый вместо соляризованного, пока я не запустил xrdb ~ / .Xresources

7077
iGEL

Изменить: Я обнаружил, что это, похоже, ошибка в Ubuntu: https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1163129 - Есть идеи, как это исправить самостоятельно?

Я просто хочу переключиться на urxvt, но у меня странная проблема с моим .Xresources. Когда я вхожу и запускаю urxvt, все розовое в розовом, и я получаю эти сообщения об ошибках

urxvt: unable to parse color 'S_base0', using pink instead. urxvt: unable to parse color 'S_base03', using pink instead. ...(repeated for all colors I defined)... urxvt: unable to parse color 'S_base03', using pink instead. 

Однако, как только я побежал xrdb ~/.Xresources, все вновь открытые urxvt в порядке и прекрасно соляризованы. WAT?

Мои .Xresources: https://gist.github.com/iGEL/6880992 - Я использую Ubuntu 13.04 (64-разрядная rxvt-unicode-256colorверсия ), но установил пакет из Ubuntu 13.10, чтобы получить текущую версию urxvt (9.18).

Редактировать: обратите внимание, что цвета определены в том же файле, в котором они используются. Может быть, urxvt (или что читает .Xresources) не может проанализировать и использовать переменные в одном прогоне? Выглядит, однако, как странная идея.

6

4 ответа на вопрос

5
iGEL

Хорошо, я понял это: вы должны удалить -noccpопцию в строке 42 /usr/sbin/lightdm-session, которая не позволяет xrdbиспользовать нужный мне препроцессор.

Пожалуйста, проголосуйте за эту ошибку: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/1244578 iGEL 10 лет назад 0
Я столкнулся с аналогичной проблемой с GDM. В / etc / gdm / Xsession удаление флага `-nocpp` из строки` xrdb -merge $ userresources` исправило это. Josh 6 лет назад 0
2
dolmen

Если при входе ~/.Xresourcesне обрабатывается cpp, возможно, вы захотите сохранить исходный источник под другим именем и перестраивать ~/.Xresourcesкаждый раз при внесении изменений.

Я только что написал инструмент для автоматизации этого процесса: https://github.com/dolmen/Xresources.edit/

1
mpy

Your ~/.Xresources does not get read in automatically.

I suppose in Ubuntu (at least that's the case in debian) the resource file read in during the start of your X session is .Xdefaults.

To not break anything that depends (perhaps) on ~/.Xresources, just make a symbolic link:

ln -s .Xresources ~/.Xdefaults 

Start a new X session and the pink in pink should be gone.

К сожалению, это не помогло, оно все еще розовое. Также `.Xresources`, кажется, анализируется, потому что сообщения об ошибках происходят из` .Xresources` iGEL 10 лет назад 0
@iGEL: Жаль. У меня было точно такое же явление (розовый в розовом), и символическая ссылка исправила его. К сожалению, у меня нет машины с Ubuntu для дальнейшего тестирования. mpy 10 лет назад 0
@iGEL: Возможно, вы можете проверить, содержит ли ваш `~ / .xinitrc` строку, похожую на` test -r $ HOME / .Xdefaults && xrdb -I $ HOME -merge $ HOME / .Xdefaults` mpy 10 лет назад 0
Спасибо за вашу помощь, но после небольшого поиска, я обнаружил, что это похоже на ошибку в Ubuntu :( https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1163129 - Извините за не делал это раньше. iGEL 10 лет назад 1
0
C2H5OH

Другой вариант, менее навязчивый, вместо изменения, /usr/sbin/lightdm-sessionзаключается в изменении оболочки X-сессии . Это мое /etc/lightdm/lightdm.confдля Ubuntu 12.04:

[SeatDefaults] greeter-session=unity-greeter allow-guest=false greeter-hide-users=true session-wrapper=/etc/X11/Xsession 

Обратите внимание на последнюю строку, которая выполняет сеансы X11 с оригинальной оболочкой Debian /etc/X11/Xsession. Этот скрипт очень похож на скрипт, /usr/sbin/lightdm-sessionно позволяет /etc/X11/Xsession.d/30x11-common_xresourcesфайлу делать свое дело.

Похожие вопросы