IT-lexicon › Infrastructuur › xrdb

xrdb

Infrastructuur Svenska → Bijgewerkt: 2026-10-08

Het programma dat een resourcebestand door de C-preprocessor haalt en het resultaat in de X-server opslaat, zodat elk programma op elke machine dezelfde instellingen ziet.

Resourcebestanden zoals ~/.Xresources zijn gewone tekst. Pas xrdb geeft ze werking: het leest het bestand, stuurt het door cpp en schrijft het resultaat naar de eigenschap RESOURCE_MANAGER op het rootvenster, of met -screen naar SCREEN_RESOURCES van een afzonderlijk scherm. De preprocessor is het hele punt. #include verdeelt instellingen over bestanden, #define geeft kleuren een naam, en symbolen als COLOR, PLANES, WIDTH, HEIGHT en SERVERHOST worden door xrdb zelf gezet, zodat #ifdef COLOR een monochrome X-terminal andere instellingen kon geven dan het werkstation. Commentaar in een resourcebestand begint met een uitroepteken, maar doordat cpp eerst draait, verdwijnt ook C-commentaar, tot verrassing van menigeen.

De opties bepalen wat er met het bestaande gebeurt: -load vervangt de database, -merge voegt toe en overschrijft, -query toont haar en -remove maakt haar leeg. De regel xrdb -merge ~/.Xresources in .xinitrc of .xsession is zo gangbaar dat weinigen weten dat hij nodig is totdat hij ontbreekt. Het verklaart ook waarom een programma op een andere machine via X de juiste lettertypen krijgt: de database woont in de server, niet bij de client. Bestaat er geen RESOURCE_MANAGER, dan valt Xlib terug op ~/.Xdefaults op de machine van de client, een regeling uit X11R1 die nog steeds verwarring zaait.

← Terug naar het lexicon