You are not logged in.

#1 2017-10-08 12:48:30

adesh
Member
Registered: 2016-10-05
Posts: 167

[SOLVED] Xfce - Using #define variables in .Xresources

I have a #define directive in .Xresources file for specifying font size, but the font size doesn't get applied at boot. I run X with .xinitrc which loads .Xresources. .xinitrc is just a copy of xinit/xinitrc with a line or two appended for my DE (XFCE), but if you wish see it in full.

$ cat .Xresources
#define FN_SZ 14
URxvt.font: xft:Consolas:pixelsize=FN_SZ
URxvt.boldFont: xft:Consolas:pixelsize=FN_SZ:style=bold

This is what I get at boot:

$ xrdb -query
URxvt.boldFont: xft:Consolas:pixelsize=FN_SZ:style=bold
URxvt.font:     xft:Consolas:pixelsize=FN_SZ

After running "xrdb -merge .Xresources" manually:

$ xrdb -query
URxvt.boldFont: xft:Consolas:pixelsize=14:style=bold
URxvt.font:     xft:Consolas:pixelsize=14

Looks like preprocessing is not being done while X is starting. Any ideas?

Last edited by adesh (2017-10-09 12:17:57)

Offline

#2 2017-10-09 10:12:38

adesh
Member
Registered: 2016-10-05
Posts: 167

Re: [SOLVED] Xfce - Using #define variables in .Xresources

I thought why not run the resources file through cpp myself. I added below two lines just before DE invocation:

cpp -P $HOME/.Xresources > /tmp/xres                                            
xrdb -merge /tmp/xres

But result still is the same. I confirmed that the preprocessor properly substituted the macro value in the generated file.

EDIT:
Capturing the output of "xrdb-query" before my commands revealed that xrdb is doing the job properly. Now, it looks like it is XFCE that is messing with the resources database.

Last edited by adesh (2017-10-09 10:19:29)

Offline

#3 2017-10-09 12:17:20

adesh
Member
Registered: 2016-10-05
Posts: 167

Re: [SOLVED] Xfce - Using #define variables in .Xresources

Solution: https://unix.stackexchange.com/question … wer-304558

XFCE has its own xinitrc where xrdb is called with "-nocpp" option.

Offline

Board footer

Powered by FluxBB