- 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
=item B<-fb> I<fontlist>
-Compile font-styles: The bold font list to use when B<bold> characters are to
-be printed. See resource B<boldFont> for details.
+Compile I<font-styles>: The bold font list to use when B<bold> characters
+are to be printed. See resource B<boldFont> for details.
=item B<-fi> I<fontlist>
-Compile font-styles: The italic font list to use when I<italic> characters are to
-be printed. See resource B<italicFont> for details.
+Compile I<font-styles>: The italic font list to use when I<italic>
+characters are to be printed. See resource B<italicFont> for details.
=item B<-fbi> I<fontlist>
-Compile font-styles: The bold italic font list to use when B<< I<bold
+Compile I<font-styles>: The bold italic font list to use when B<< I<bold
italic> >> characters are to be printed. See resource B<boldItalicFont>
for details.
=item B<-is>|B<+is>
-Compile font-styles: Bold/Italic font styles imply high intensity
+Compile I<font-styles>: Bold/Italic font styles imply high intensity
foreground/background (default). See resource B<intensityStyles> for
details.
if honoured by the WM, the rxvt-unicode window will not have window
decorations; resource B<borderLess>.
+=item B<-sbg>
+
+Compile I<frills>: 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<skipBuiltinGlyphs>.
+
=item B<-lsp> I<number>
Compile I<frills>: Lines (pixel height) to insert between each row of
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<skipBuiltinGlyphs:> I<boolean>
+
+Compile I<frills>: 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<termName:> I<termname>
Specifies the terminal type name to be set in the B<TERM> environment
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)
//case 50: // not variable spacing
-#ifndef NO_BRIGHTCOLOR
+#if ENABLE_FRILLS
case 90:
case 91: /* set bright fg color */
case 92:
*/
/* #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
*/
COLOR_BACKGROUND,
/* low-intensity colors */
"Black", /* 0: black (#000000) */
-#ifndef NO_BRIGHTCOLOR
"Red3", /* 1: red (#CD0000) */
"Green3", /* 2: green (#00CD00) */
"Yellow3", /* 3: yellow (#CDCD00) */
# 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) */
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 */
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)
)}x,
# shell-like argument quoting
- qr{\G\s*(
+ qr{\G [\ \t|&;<>()] *(
(?:
- [^"'\\ \t]+
+ [^\\"'\ \t|&;<>()]+
| \\.
| " ([^\\"]+ | \\. )* "
| ' [^']* '
def (borderLess)
def (lineSpace)
def (cursorUnderline)
+ def (skipBuiltinGlyphs)
#endif
#if CURSOR_BLINK
def (cursorBlink)
#include "../config.h"
#include "rxvt.h"
+#include "rxvtlib.h"
#include "rxvtutil.h"
#include "rxvtfont.h"
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))
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);
#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
#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)
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"),
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"),
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