.if !\n(.g .ab GNU tbl requires GNU troff.
.if !dTS .ds TS
.if !dTE .ds TE
-.TH "RXVT" "1" "2004-07-31" "X Version 11" "X Tools"
+.TH "RXVT" "1" "2004-08-06" "X Version 11" "X Tools"
.SH "NAME"
rxvt-unicode (ouR XVT, unicode) \- a VT102 emulator for the X window system
.PP
.PP
.SH "DESCRIPTION"
.PP
-\fBrxvt-unicode\fP, version \fB3\&.4\fP, is a colour vt102 terminal emulator
+\fBrxvt-unicode\fP, version \fB3\&.5\fP, is a colour vt102 terminal emulator
intended as an \fIxterm\fP(1) replacement for users who do not require
features such as Tektronix 4014 emulation and toolkit-style configurability\&.
As a result, \fBrxvt-unicode\fP uses much less swap space -- a significant
Compile \fIfrills\fP: External border of \fInumber\fP pixels\&.
Also, \fB-bw\fP and \fB-borderwidth\fP\&. See resource entry for limits;
resource \fBexternalBorder\fP\&.
+.IP "\fB-bl\fP"
+Compile \fIfrills\fP: Set MWM hints to request a borderless window,
+i\&.e\&. if honoured by the WM, the rxvt window will not have window
+decorations; resource \fBborderLess\fP\&.
.IP "\fB-lsp\fP \fInumber\fP"
Compile \fIlinespace\fP: Lines (pixel height) to insert between each
row of the display;
.IP "\fBexternalBorder:\fP \fInumber\fP"
External border of \fInumber\fP pixels\&. This resource is limited to 100;
option \fB-w\fP, \fB-bw\fP, \fB-borderwidth\fP\&.
+.IP "\fBborderLess:\fP \fIboolean\fP"
+Set MWM hints to request a borderless window,
+i\&.e\&. if honoured by the WM, the rxvt window will not have window
+decorations; option \fB-bl\fP\&.
.IP "\fBtermName:\fP \fItermname\fP"
Specifies the terminal type name to be set in the \fBTERM\fP
environment variable;
.PP
.SH "FTP LOCATION"
.PP
-rxvt-3\&.4\&.tar\&.gz can be found at the following ftp sites
+rxvt-3\&.5\&.tar\&.gz can be found at the following ftp sites
ftp://ftp\&.rxvt\&.org/pub/rxvt
.PP
.SH "CURRENT PROJECT COORDINATOR"
-.TH "RXVT" "1" "2004-07-31" "X Version 11" "X Tools"
+.TH "RXVT" "1" "2004-08-06" "X Version 11" "X Tools"
.SH "NAME"
rxvt-unicode (ouR XVT, unicode) \- a VT102 emulator for the X window system
.PP
.PP
.SH "DESCRIPTION"
.PP
-\fBrxvt-unicode\fP, version \fB3\&.4\fP, is a colour vt102 terminal emulator
+\fBrxvt-unicode\fP, version \fB3\&.5\fP, is a colour vt102 terminal emulator
intended as an \fIxterm\fP(1) replacement for users who do not require
features such as Tektronix 4014 emulation and toolkit-style configurability\&.
As a result, \fBrxvt-unicode\fP uses much less swap space -- a significant
Compile \fIfrills\fP: External border of \fInumber\fP pixels\&.
Also, \fB-bw\fP and \fB-borderwidth\fP\&. See resource entry for limits;
resource \fBexternalBorder\fP\&.
+.IP "\fB-bl\fP"
+Compile \fIfrills\fP: Set MWM hints to request a borderless window,
+i\&.e\&. if honoured by the WM, the rxvt window will not have window
+decorations; resource \fBborderLess\fP\&.
.IP "\fB-lsp\fP \fInumber\fP"
Compile \fIlinespace\fP: Lines (pixel height) to insert between each
row of the display;
.IP "\fBexternalBorder:\fP \fInumber\fP"
External border of \fInumber\fP pixels\&. This resource is limited to 100;
option \fB-w\fP, \fB-bw\fP, \fB-borderwidth\fP\&.
+.IP "\fBborderLess:\fP \fIboolean\fP"
+Set MWM hints to request a borderless window,
+i\&.e\&. if honoured by the WM, the rxvt window will not have window
+decorations; option \fB-bl\fP\&.
.IP "\fBtermName:\fP \fItermname\fP"
Specifies the terminal type name to be set in the \fBTERM\fP
environment variable;
.PP
.SH "FTP LOCATION"
.PP
-rxvt-3\&.4\&.tar\&.gz can be found at the following ftp sites
+rxvt-3\&.5\&.tar\&.gz can be found at the following ftp sites
ftp://ftp\&.rxvt\&.org/pub/rxvt
.PP
.SH "CURRENT PROJECT COORDINATOR"
-COMMENT(-- $Id: rxvt-options.yo,v 1.18 2004-08-01 15:06:02 root Exp $ --)
+COMMENT(-- $Id: rxvt-options.yo,v 1.19 2004-08-08 16:43:55 root Exp $ --)
COMMENT(----------------------------------------------------------------------)
manpageoptions()
Compile em(frills): External border of em(number) pixels.
Also, bf(-bw) and bf(-borderwidth). See resource entry for limits;
resource bf(externalBorder).
+ dit(bf(-bl))
+ Compile em(frills): Set MWM hints to request a borderless window,
+ i.e. if honoured by the WM, the rxvt window will not have window
+ decorations; resource bf(borderLess).
dit(bf(-lsp) em(number))
Compile em(linespace): Lines (pixel height) to insert between each
row of the display;
-COMMENT(-- $Id: rxvt-resources.yo,v 1.18 2004-07-31 15:32:50 root Exp $ --)
+COMMENT(-- $Id: rxvt-resources.yo,v 1.19 2004-08-08 16:43:55 root Exp $ --)
COMMENT(----------------------------------------------------------------------)
manpagesection(RESOURCES (available also as long-options))
dit(bf(externalBorder:) em(number))
External border of em(number) pixels. This resource is limited to 100;
option bf(-w), bf(-bw), bf(-borderwidth).
+ dit(bf(borderLess:) em(boolean))
+ Set MWM hints to request a borderless window,
+ i.e. if honoured by the WM, the rxvt window will not have window
+ decorations; option bf(-bl).
dit(bf(termName:) em(termname))
Specifies the terminal type name to be set in the bf(TERM)
environment variable;
-COMMENT(-- $Id: versioninfo.yo,v 1.21 2004-07-31 16:05:45 root Exp $ --)
+COMMENT(-- $Id: versioninfo.yo,v 1.23 2004-08-08 16:47:39 root Exp $ --)
DEFINEMACRO(RXVTNAME)(0)
(rxvt)
DEFINEMACRO(RXVTDATE)(0)
- (2004-07-31)
+ (2004-08-06)
DEFINEMACRO(RXVTVERSION)(0)
- (3.4)
+ (3.5)
DEFINEMACRO(RXVTMAINT)(0)
(Marc A. Lehmann)
DEFINEMACRO(RXVTMAINTEMAIL)(0)
/* A: scroll up */
/* A1: Copy lines that will get clobbered by the rotation */
- for (i = 0, j = row1; i < count; i++, j++)
- {
- buf_text[i] = screen.text[j];
- buf_rend[i] = screen.rend[j];
- }
+ memcpy (buf_text, screen.text + row1, count * sizeof (text_t *));
+ memcpy (buf_rend, screen.rend + row1, count * sizeof (rend_t *));
/* A2: Rotate lines */
- for (j = row1, i = j + count; i <= row2; i++, j++)
- {
- screen.tlen[j] = screen.tlen[i];
- screen.text[j] = screen.text[i];
- screen.rend[j] = screen.rend[i];
- }
+ i = row2 - row1 - count + 1;
+ memmove (screen.tlen + row1, screen.tlen + row1 + count, i * sizeof (int16_t));
+ memmove (screen.text + row1, screen.text + row1 + count, i * sizeof (text_t *));
+ memmove (screen.rend + row1, screen.rend + row1 + count, i * sizeof (rend_t *));
j = row2 - count + 1, i = count;
}
}
/* C: Resurrect lines */
- for (; i--; j++)
- {
- screen.tlen[j] = 0;
- screen.text[j] = buf_text[i];
- screen.rend[j] = buf_rend[i];
-
- if (!spec) /* line length may not equal TermWin.ncol */
- scr_blank_screen_mem (screen.text, screen.rend, (unsigned int)j, rstyle);
- }
+ memset (screen.tlen + j, 0, i * sizeof (int16_t));
+ memcpy (screen.text + j, buf_text, i * sizeof (text_t *));
+ memcpy (screen.rend + j, buf_rend, i * sizeof (text_t *));
+ if (!spec) /* line length may not equal TermWin.ncol */
+ for (; i--; j++)
+ scr_blank_screen_mem (screen.text, screen.rend, (unsigned int)j, rstyle);
return count;
}
ZERO_SCROLLBACK ();
if (nlines > 0)
{
- nlines += (screen.cur.row - screen.bscroll);
+ nlines += screen.cur.row - screen.bscroll;
if ((nlines > 0)
&& (screen.tscroll == 0)
&& (screen.bscroll == (TermWin.nrow - 1)))
// rely on wcwidth to tell us the character width, at least for non-latin1
// do wcwidth before further replacements, as wcwidth says that line-drawing
// characters have width -1 (DOH!) on GNU/Linux sometimes.
- int width = c < 256 ? 1 : wcwidth (c);
+ int width = c < 0x100 ? 1 : wcwidth (c);
if (charsets[screen.charset] == '0') // DEC SPECIAL
{
return;
}
- refresh_type |= REFRESH_BOUNDS;
-
if (selection.op && current_screen == selection.screen
&& ((selection.beg.row >= row && selection.beg.row <= row + num)
|| (selection.end.row >= row
fill_text (&drawn_text[i][rc[PART_BEG].col], 0, rc[PART_END].col - rc[PART_BEG].col + 1);
if (refresh)
- scr_refresh (SLOW_REFRESH | REFRESH_BOUNDS);
+ scr_refresh (SLOW_REFRESH);
}
/* ------------------------------------------------------------------------- */
int
rxvt_term::scr_page (enum page_dirn direction, int nlines)
{
- int n;
- uint16_t oldviewstart;
+ int n;
+ uint16_t oldviewstart;
D_SCREEN ((stderr, "rxvt_scr_page (%s, %d) view_start:%d", ((direction == UP) ? "UP" : "DN"), nlines, TermWin.view_start));
#ifdef DEBUG_STRICT
void
rxvt_term::scr_refresh (unsigned char refresh_type)
{
- unsigned char clearfirst, /* first character writes before cell */
- clearlast, /* last character writes beyond cell */
- must_clear, /* use draw_string not draw_image_string */
+ unsigned char must_clear, /* use draw_string not draw_image_string */
rvid, /* reverse video this position */
showcursor; /* show the cursor */
int16_t col, row, /* column/row we're processing */
/*
* A: set up vars
*/
- clearfirst = clearlast = must_clear = 0;
+ must_clear = 0;
refresh_count = 0;
row_offset = TermWin.saveLines - TermWin.view_start;
- if ((refresh_type & REFRESH_BOUNDS))
- {
- clearfirst = clearlast = 1;
- refresh_type &= ~REFRESH_BOUNDS;
- }
-
#ifdef XPM_BACKGROUND
must_clear |= (bgPixmap.pixmap != None);
#endif
*/
scr_reverse_selection ();
- /*
- * I: other general cleanup
- */
-#if 0
- if (clearfirst && TermWin.int_bwidth)
- /*
- * clear the whole screen height, note that width == 0 is treated
- * specially by XClearArea
- */
- XClearArea (display->display, TermWin.vt, 0, 0,
- (unsigned int)TermWin.int_bwidth,
- (unsigned int)TermWin_TotalHeight (), False);
-
- if (clearlast && TermWin.int_bwidth)
- /*
- * clear the whole screen height, note that width == 0 is treated
- * specially by XClearArea
- */
- XClearArea (display->display, TermWin.vt,
- TermWin.width + TermWin.int_bwidth, 0,
- (unsigned int)TermWin.int_bwidth,
- (unsigned int)TermWin_TotalHeight (), False);
-#endif
-
if (refresh_type & SMOOTH_REFRESH)
XFlush (display->display);