… | |
… | |
225 | STRG (Rs_ext_bwidth, "externalBorder", "w", "number", "external border in pixels"), |
225 | STRG (Rs_ext_bwidth, "externalBorder", "w", "number", "external border in pixels"), |
226 | STRG (Rs_ext_bwidth, NULL, "bw", NULL, NULL), |
226 | STRG (Rs_ext_bwidth, NULL, "bw", NULL, NULL), |
227 | STRG (Rs_ext_bwidth, NULL, "borderwidth", NULL, NULL), |
227 | STRG (Rs_ext_bwidth, NULL, "borderwidth", NULL, NULL), |
228 | STRG (Rs_int_bwidth, "internalBorder", "b", "number", "internal border in pixels"), |
228 | STRG (Rs_int_bwidth, "internalBorder", "b", "number", "internal border in pixels"), |
229 | BOOL (Rs_borderLess, "borderLess", "bl", Opt_borderLess, 0, "borderless window"), |
229 | BOOL (Rs_borderLess, "borderLess", "bl", Opt_borderLess, 0, "borderless window"), |
|
|
230 | STRG (Rs_lineSpace, "lineSpace", "lsp", "number", "number of extra pixels between rows"), |
|
|
231 | #endif |
|
|
232 | #ifdef BUILTIN_GLYPHS |
230 | BOOL (Rs_skipBuiltinGlyphs, "skipBuiltinGlyphs", "sbg", Opt_skipBuiltinGlyphs, 0, "do not use internal glyphs"), |
233 | BOOL (Rs_skipBuiltinGlyphs, "skipBuiltinGlyphs", "sbg", Opt_skipBuiltinGlyphs, 0, "do not use internal glyphs"), |
231 | STRG (Rs_lineSpace, "lineSpace", "lsp", "number", "number of extra pixels between rows"), |
|
|
232 | #endif |
234 | #endif |
233 | #ifdef POINTER_BLANK |
235 | #ifdef POINTER_BLANK |
234 | RSTRG (Rs_pointerBlankDelay, "pointerBlankDelay", "number"), |
236 | RSTRG (Rs_pointerBlankDelay, "pointerBlankDelay", "number"), |
235 | #endif |
237 | #endif |
236 | #ifndef NO_BACKSPACE_KEY |
238 | #ifndef NO_BACKSPACE_KEY |
… | |
… | |
262 | BOOL (Rs_iso14755_52, "iso14755_52", NULL, Opt_iso14755_52, 0, NULL), |
264 | BOOL (Rs_iso14755_52, "iso14755_52", NULL, Opt_iso14755_52, 0, NULL), |
263 | #endif |
265 | #endif |
264 | #ifdef HAVE_AFTERIMAGE |
266 | #ifdef HAVE_AFTERIMAGE |
265 | STRG (Rs_blendtype, "blendType", "blt", "string", "background image blending type - alpha, tint, etc..."), |
267 | STRG (Rs_blendtype, "blendType", "blt", "string", "background image blending type - alpha, tint, etc..."), |
266 | STRG (Rs_blurradius, "blurRadius", "blr", "HxV", "Gaussian Blur radii to apply to the root background"), |
268 | STRG (Rs_blurradius, "blurRadius", "blr", "HxV", "Gaussian Blur radii to apply to the root background"), |
267 | #endif |
|
|
268 | #ifndef NO_RESOURCES |
|
|
269 | INFO ("xrm", "string", "X resource"), |
|
|
270 | #endif |
269 | #endif |
271 | INFO ("e", "command arg ...", "command to execute") |
270 | INFO ("e", "command arg ...", "command to execute") |
272 | }; |
271 | }; |
273 | |
272 | |
274 | #undef INFO |
273 | #undef INFO |
… | |
… | |
561 | |
560 | |
562 | if (optList[entry].doff != -1) |
561 | if (optList[entry].doff != -1) |
563 | rs[optList[entry].doff] = flag; |
562 | rs[optList[entry].doff] = flag; |
564 | } |
563 | } |
565 | } |
564 | } |
|
|
565 | #ifndef NO_RESOURCES |
|
|
566 | else if (!strcmp (opt, "xrm")) |
|
|
567 | { |
|
|
568 | if (i+1 < argc) |
|
|
569 | XrmPutLineResource (&option_db, argv[++i]); |
|
|
570 | } |
|
|
571 | #endif |
|
|
572 | #ifdef KEYSYM_RESOURCE |
|
|
573 | else if (!strncmp (opt, "keysym.", sizeof ("keysym.") - 1)) |
|
|
574 | { |
|
|
575 | if (i+1 < argc) |
|
|
576 | { |
|
|
577 | char *res = (char *)malloc (strlen (opt) + strlen (argv[++i]) + 6); |
|
|
578 | sprintf (res, "*.%s: %s\n", opt, argv[i]); |
|
|
579 | XrmPutLineResource (&option_db, res); |
|
|
580 | free (res); |
|
|
581 | } |
|
|
582 | } |
|
|
583 | #endif |
566 | else |
584 | else |
567 | #ifdef KEYSYM_RESOURCE |
|
|
568 | if (!strncmp (opt, "keysym.", sizeof ("keysym.") - 1)) |
|
|
569 | { |
585 | { |
570 | if (i+1 < argc) |
|
|
571 | parse_keysym (opt + sizeof ("keysym.") - 1, argv[++i]); |
|
|
572 | } |
|
|
573 | else |
|
|
574 | #endif |
|
|
575 | { |
|
|
576 | bad_option = 1; |
586 | bad_option = 1; |
577 | rxvt_warn ("\"%s\": unknown or malformed option.\n", opt); |
587 | rxvt_warn ("\"%s\": unknown or malformed option.\n", opt); |
578 | } |
588 | } |
579 | } |
589 | } |
580 | |
590 | |
581 | if (bad_option) |
591 | if (bad_option) |
582 | rxvt_usage (0); |
592 | rxvt_usage (0); |
583 | } |
593 | } |
… | |
… | |
801 | |
811 | |
802 | void |
812 | void |
803 | rxvt_term::extract_resources () |
813 | rxvt_term::extract_resources () |
804 | { |
814 | { |
805 | #ifndef NO_RESOURCES |
815 | #ifndef NO_RESOURCES |
|
|
816 | XrmDatabase database = XrmGetDatabase (dpy); |
|
|
817 | XrmMergeDatabases (option_db, &database); |
|
|
818 | option_db = NULL; |
806 | /* |
819 | /* |
807 | * Query resources for options that affect us |
820 | * Query resources for options that affect us |
808 | */ |
821 | */ |
809 | for (int entry = 0; entry < optList_size; entry++) |
822 | for (int entry = 0; entry < optList_size; entry++) |
810 | { |
823 | { |
… | |
… | |
839 | |
852 | |
840 | /* |
853 | /* |
841 | * [R5 or later]: enumerate the resource database |
854 | * [R5 or later]: enumerate the resource database |
842 | */ |
855 | */ |
843 | # ifdef KEYSYM_RESOURCE |
856 | # ifdef KEYSYM_RESOURCE |
844 | XrmDatabase database = XrmGetDatabase (dpy); |
|
|
845 | XrmName name_prefix[3]; |
857 | XrmName name_prefix[3]; |
846 | XrmClass class_prefix[3]; |
858 | XrmClass class_prefix[3]; |
847 | |
859 | |
848 | name_prefix[0] = XrmStringToName (rs[Rs_name]); |
860 | name_prefix[0] = XrmStringToName (rs[Rs_name]); |
849 | name_prefix[1] = XrmStringToName ("keysym"); |
861 | name_prefix[1] = XrmStringToName ("keysym"); |