Изменить: Я обнаружил, что это, похоже, ошибка в 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
) не может проанализировать и использовать переменные в одном прогоне? Выглядит однако, как странная идея.
-nocpp
флага изxrdb -merge $userresources
строки исправило его.Если при входе в систему
~/.Xresources
они не обрабатываютсяcpp
, вы можете сохранить исходный источник под другим именем и пересоздавать его~/.Xresources
каждый раз, когда вносите изменения.Я только что написал инструмент для автоматизации этого процесса: https://github.com/dolmen/Xresources.edit/
источник
Ваш
~/.Xresources
не читается автоматически.Я полагаю, что в Ubuntu (по крайней мере, в Debian) файл ресурсов, прочитанный во время начала вашей X-сессии, имеет вид
.Xdefaults
.Чтобы не нарушать ничего, что зависит (возможно)
~/.Xresources
, просто сделайте символическую ссылку:Начните новый сеанс X, и розовый в розовом должен исчезнуть.
источник
.Xresources
кажется, анализируется, потому что сообщения об ошибках происходят из.Xresources
~/.xinitrc
содержит ли ваша строка, похожую наtest -r $HOME/.Xdefaults && xrdb -I$HOME -merge $HOME/.Xdefaults
Другой вариант, менее навязчивый, вместо изменения,
/usr/sbin/lightdm-session
заключается в изменении оболочки X-сессии . Это мое/etc/lightdm/lightdm.conf
для Ubuntu 12.04:Обратите внимание на последнюю строку, которая выполняет сеансы X11 с оригинальной оболочкой Debian
/etc/X11/Xsession
. Этот скрипт очень похож на сценарий,/usr/sbin/lightdm-session
но позволяет/etc/X11/Xsession.d/30x11-common_xresources
файлу делать свое дело.источник