From 1ddb99685995f6c2f32c60360b4f3d6640a00830 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 4 Jan 2006 20:43:37 +0000 Subject: [PATCH] *** empty log message *** --- Changes | 2 +- doc/rxvt.1.pod | 26 ++++++++++++++++++++------ doc/rxvt.7.pod | 18 +++++++++++------- src/command.C | 2 +- src/feature.h | 7 ------- src/init.C | 4 ---- src/main.C | 2 -- src/perl/selection | 4 ++-- src/rsinc.h | 1 + src/rxvtfont.C | 7 +++++-- src/rxvtlib.h.in | 7 +++++-- src/xdefaults.C | 3 +-- 12 files changed, 47 insertions(+), 36 deletions(-) diff --git a/Changes b/Changes index 8663b3be..984b7075 100644 --- a/Changes +++ b/Changes @@ -32,7 +32,7 @@ do useful things and will certainly be extended in the future. - try to be more clever about differing font sizes and their ascent. Not guarenteed to work, but works better in most cases now. - fix directory permissions on install. -TODO - implemented option to disable built-in line drawing characters + - implemented option to disable built-in line drawing characters and fall back to the font ones (patch by Martin Pohlack). - disabled sched_yield support: the linux version is just too useless (it schedules nice'd processes before the own one for extended diff --git a/doc/rxvt.1.pod b/doc/rxvt.1.pod index 46b1c498..75261bff 100644 --- a/doc/rxvt.1.pod +++ b/doc/rxvt.1.pod @@ -191,23 +191,23 @@ section of @@RXVT_NAME@@(7). =item B<-fb> I -Compile font-styles: The bold font list to use when B characters are to -be printed. See resource B for details. +Compile I: The bold font list to use when B characters +are to be printed. See resource B for details. =item B<-fi> I -Compile font-styles: The italic font list to use when I characters are to -be printed. See resource B for details. +Compile I: The italic font list to use when I +characters are to be printed. See resource B for details. =item B<-fbi> I -Compile font-styles: The bold italic font list to use when B<< I: The bold italic font list to use when B<< I >> characters are to be printed. See resource B for details. =item B<-is>|B<+is> -Compile font-styles: Bold/Italic font styles imply high intensity +Compile I: Bold/Italic font styles imply high intensity foreground/background (default). See resource B for details. @@ -299,6 +299,13 @@ Compile I: Set MWM hints to request a borderless window, i.e. if honoured by the WM, the rxvt-unicode window will not have window decorations; resource B. +=item B<-sbg> + +Compile I: Disable the usage of the built-in block graphics/line +drawing characters and just rely on what the specified fonts provide. Use +this if you have a good font and want to use its block graphic glyphs; +resource B. + =item B<-lsp> I Compile I: Lines (pixel height) to insert between each row of @@ -828,6 +835,13 @@ option B<-w>, B<-bw>, B<-borderwidth>. Set MWM hints to request a borderless window, i.e. if honoured by the WM, the rxvt-unicode window will not have window decorations; option B<-bl>. +=item B I + +Compile I: Disable the usage of the built-in block graphics/line +drawing characters and just rely on what the specified fonts provide. Use +this if you have a good font and want to use its block graphic glyphs; +option B<-sbg>. + =item B I Specifies the terminal type name to be set in the B environment diff --git a/doc/rxvt.7.pod b/doc/rxvt.7.pod index 90d71bbd..73c26820 100644 --- a/doc/rxvt.7.pod +++ b/doc/rxvt.7.pod @@ -2504,17 +2504,21 @@ in combination with other switches) is: MWM-hints EWMH-hints (pid, utf8 names) and protocols (ping) - seperate underline colour - settable border widths and borderless switch - settable extra linespacing + seperate underline colour (-underlineColor) + settable border widths and borderless switch (-w, -b, -bl) + settable extra linespacing /-lsp) iso-14755-2 and -3, and visual feedback backindex and forwardindex escape sequence window op and some xterm/OSC escape sequences - tripleclickwords - settable insecure mode + tripleclickwords (-tcw) + settable insecure mode (-insecure) keysym remapping support - cursor blinking and underline cursor - -embed, -pty-fd and -hold options + cursor blinking and underline cursor (-cb, -uc) + XEmbed support (-embed) + user-pty (-pty-fd) + hold on exit (-hold) + skip builtin block graphics (-sbg) + sgr modes 90..97 and 100..107 =item --enable-iso14755 (default: on) diff --git a/src/command.C b/src/command.C index bf990257..f3a40bce 100644 --- a/src/command.C +++ b/src/command.C @@ -4342,7 +4342,7 @@ rxvt_term::process_sgr_mode (unsigned int nargs, const int *arg) //case 50: // not variable spacing -#ifndef NO_BRIGHTCOLOR +#if ENABLE_FRILLS case 90: case 91: /* set bright fg color */ case 92: diff --git a/src/feature.h b/src/feature.h index 5d95e1dd..bde320e6 100644 --- a/src/feature.h +++ b/src/feature.h @@ -58,13 +58,6 @@ */ /* #define NO_CURSORCOLOR */ -/* - * Suppress use of BOLD and BLINK attributes for setting bright foreground - * and background, respectively. Simulate BOLD using colorBD or - * overstrike characters. - */ -/* #define NO_BRIGHTCOLOR */ - /* * Make colours match xterm colours instead of `traditional' rxvt colours */ diff --git a/src/init.C b/src/init.C index 7114cbde..c2e76c5f 100644 --- a/src/init.C +++ b/src/init.C @@ -46,7 +46,6 @@ const char *const def_colorName[] = COLOR_BACKGROUND, /* low-intensity colors */ "Black", /* 0: black (#000000) */ -#ifndef NO_BRIGHTCOLOR "Red3", /* 1: red (#CD0000) */ "Green3", /* 2: green (#00CD00) */ "Yellow3", /* 3: yellow (#CDCD00) */ @@ -64,7 +63,6 @@ const char *const def_colorName[] = # else "Grey25", /* 8: bright black (#404040) */ # endif -#endif /* NO_BRIGHTCOLOR */ "Red", /* 1/9: bright red (#FF0000) */ "Green", /* 2/10: bright green (#00FF00) */ "Yellow", /* 3/11: bright yellow (#FFFF00) */ @@ -810,10 +808,8 @@ rxvt_term::color_aliases (int idx) if (i >= 8 && i <= 15) { /* bright colors */ i -= 8; -#ifndef NO_BRIGHTCOLOR rs[Rs_color + idx] = rs[Rs_color + minBrightCOLOR + i]; return; -#endif } if (i >= 0 && i <= 7) /* normal colors */ diff --git a/src/main.C b/src/main.C index c6cd10fe..e79fc1a0 100644 --- a/src/main.C +++ b/src/main.C @@ -1028,11 +1028,9 @@ rxvt_term::set_window_color (int idx, const char *color) if (i >= 8 && i <= 15) { /* bright colors */ i -= 8; -# ifndef NO_BRIGHTCOLOR pix_colors_focused[idx] = pix_colors_focused[minBrightCOLOR + i]; SET_PIXCOLOR (idx); goto done; -# endif } if (i >= 0 && i <= 7) diff --git a/src/perl/selection b/src/perl/selection index b839c589..7ca4e4d6 100644 --- a/src/perl/selection +++ b/src/perl/selection @@ -17,9 +17,9 @@ my @patterns = ( )}x, # shell-like argument quoting - qr{\G\s*( + qr{\G [\ \t|&;<>()] *( (?: - [^"'\\ \t]+ + [^\\"'\ \t|&;<>()]+ | \\. | " ([^\\"]+ | \\. )* " | ' [^']* ' diff --git a/src/rsinc.h b/src/rsinc.h index 8f8c5266..9d3717d4 100644 --- a/src/rsinc.h +++ b/src/rsinc.h @@ -76,6 +76,7 @@ def (borderLess) def (lineSpace) def (cursorUnderline) + def (skipBuiltinGlyphs) #endif #if CURSOR_BLINK def (cursorBlink) diff --git a/src/rxvtfont.C b/src/rxvtfont.C index 3f315fa0..11355760 100644 --- a/src/rxvtfont.C +++ b/src/rxvtfont.C @@ -21,6 +21,7 @@ #include "../config.h" #include "rxvt.h" +#include "rxvtlib.h" #include "rxvtutil.h" #include "rxvtfont.h" @@ -308,7 +309,8 @@ struct rxvt_font_default : rxvt_font { if (unicode <= 0x009f) return true; - if (unicode >= 0x2500 && unicode <= 0x259f) + if (unicode >= 0x2500 && unicode <= 0x259f && + ! OPTION_R (Opt_skipBuiltinGlyphs)) return true; if (IS_COMPOSE (unicode)) @@ -354,7 +356,8 @@ rxvt_font_default::draw (rxvt_drawable &d, int x, int y, int width = text - tp; int fwidth = r->fwidth * width; - if (0x2500 <= t && t <= 0x259f) + if (0x2500 <= t && t <= 0x259f && + ! OPTION_R (Opt_skipBuiltinGlyphs)) { uint16_t offs = linedraw_offs[t - 0x2500]; uint32_t *a = linedraw_command + (offs >> 4); diff --git a/src/rxvtlib.h.in b/src/rxvtlib.h.in index 7e3d0322..62108d95 100644 --- a/src/rxvtlib.h.in +++ b/src/rxvtlib.h.in @@ -254,15 +254,17 @@ typedef struct { #define Opt_cursorUnderline (1UL<<23) #if ENABLE_FRILLS # define Opt_insecure (1UL<<24) // insecure esc sequences -# define Opt_borderLess (1UL<<25) // mem borderless hints +# define Opt_borderLess (1UL<<25) // mwm borderless hints # define Opt_hold (1UL<<26) // hold window open after exit +# define Opt_skipBuiltinGlyphs (1UL<<27) // do not use internal glyphs #else # define Opt_insecure 0 # define Opt_borderLess 0 # define Opt_hold 0 +# define Opt_skipBuiltinGlyphs 0 #endif #if ENABLE_STYLES -# define Opt_intensityStyles (1UL<<27) // font styles imply intensity +# define Opt_intensityStyles (1UL<<28) // font styles imply intensity #else # define Opt_intensityStyles 0 #endif @@ -270,6 +272,7 @@ typedef struct { #define SET_OPTION(opt) (options |= (opt)) #define CLR_OPTION(opt) (options &= ~(opt)) #define OPTION(opt) (options & (opt)) +#define OPTION_R(opt) (r->options & (opt)) #define DEFAULT_OPTIONS (Opt_scrollBar | Opt_scrollTtyOutput \ | Opt_jumpScroll | Opt_secondaryScreen \ | Opt_pastableTabs | Opt_intensityStyles) diff --git a/src/xdefaults.C b/src/xdefaults.C index 7869b831..b63521f5 100644 --- a/src/xdefaults.C +++ b/src/xdefaults.C @@ -163,7 +163,6 @@ optList[] = { RSTRG (Rs_color + minCOLOR + 5, "color5", "color"), RSTRG (Rs_color + minCOLOR + 6, "color6", "color"), RSTRG (Rs_color + minCOLOR + 7, "color7", "color"), -#ifndef NO_BRIGHTCOLOR RSTRG (Rs_color + minBrightCOLOR + 0, "color8", "color"), RSTRG (Rs_color + minBrightCOLOR + 1, "color9", "color"), RSTRG (Rs_color + minBrightCOLOR + 2, "color10", "color"), @@ -172,7 +171,6 @@ optList[] = { RSTRG (Rs_color + minBrightCOLOR + 5, "color13", "color"), RSTRG (Rs_color + minBrightCOLOR + 6, "color14", "color"), RSTRG (Rs_color + minBrightCOLOR + 7, "color15", "color"), -#endif /* NO_BRIGHTCOLOR */ #ifndef NO_BOLD_UNDERLINE_REVERSE RSTRG (Rs_color + Color_BD, "colorBD", "color"), RSTRG (Rs_color + Color_IT, "colorIT", "color"), @@ -236,6 +234,7 @@ optList[] = { STRG (Rs_ext_bwidth, NULL, "borderwidth", NULL, NULL), STRG (Rs_int_bwidth, "internalBorder", "b", "number", "internal border in pixels"), BOOL (Rs_borderLess, "borderLess", "bl", Opt_borderLess, "borderless window"), + BOOL (Rs_skipBuiltinGlyphs, "skipBuiltinGlyphs", "sbg", Opt_skipBuiltinGlyphs, "do not use internal glyphs"), STRG (Rs_lineSpace, "lineSpace", "lsp", "number", "number of extra pixels between rows"), #endif #ifdef POINTER_BLANK -- 2.34.1