rxvt-unicode changelog <= google-friendly title
-TODO: move iso14755 box away from the mouse
TODO: harmonize --disable-options into position-dependent options.
TODO: after requesting the selection and getting a timeout, no further requests will be sent.
TODO: safer command: keymap processing.
TODO: "slow" rendering mode for bidi and scripts
TODO: read property sequence is broken with respect to utf-8 etc.
TODO: http://www120.pair.com/mccarthy/nextstep/intro.htmld/Workspace.html is the correct nextstep look.
-WISH: keymap modification via esc-sequences.
-WISH: searchable backlog
-WISH: meta-tagging of data by regex/master process (my dream project)
+WISH: keymap modification via esc-sequences. (obsoleted by embedded perl)
+WISH: searchable backlog (obsoleted by embedded perl)
+WISH: meta-tagging of data by regex/master process (obsoleted by embedded perl)
WISH: OnTheSpot editing, or maybe switch to miiiiiiif
WISH: just for fun, do shade and tint with XRender.
-6.2
- - SECURITY FIX: on systems using openpty (not GNU/Linux, probably
- most BSDs), privileges weren't dropped before opening the pty,
- resulting in wrong permissions on the pseudo terminal.
- Reported and fixed by Ryan Beasley.
+6.2 Mon Jan 2 16:03:01 CET 2006
- implemented intensityStyles option which enables/disables bold/blink
selecting high intensity foreground/background colours, suggested by
Chuck Blake.
How do I know which rxvt-unicode version I'm using?
The version number is displayed with the usage (-h). Also the escape
sequence "ESC [ 8 n" sets the window title to the version number.
- When using the urxvtc client, the version displayed is that of the
+ When using the rxvtc client, the version displayed is that of the
daemon.
I am using Debian GNU/Linux and have a problem...
Most likely it's the empty definition for "enacs=". Just replace it
by "enacs=\E[0@" and try again.
- "bash"'s readline does not work correctly under urxvt.
+ "bash"'s readline does not work correctly under rxvt.
I need a termcap file entry.
One reason you might want this is that some distributions or
operating systems still compile some programs using the
In that case, select a font of your taste and add it to the font
list, e.g.:
- urxvt -fn basefont,font2,font3...
+ rxvt -fn basefont,font2,font3...
When rxvt-unicode sees a character, it will first look at the base
font. If the base font does not contain the character, it will go to
some editors prematurely may leave the mouse in mouse report mode.
I've heard that tcsh may use mouse reporting unless it otherwise
specified. A quick check is to see if cut/paste works when the Alt
- or Shift keys are depressed. See urxvt(7)
+ or Shift keys are depressed. See rxvt(7)
What's with this bold/blink stuff?
If no bold colour is set via "colorBD:", bold will invert text using
URxvt.color7: #e1dddd
URxvt.color15: #e1dddd
- How can I start urxvtd in a race-free way?
- Try "urxvtd -f -o", which tells urxvtd to open the display, create
- the listening socket and then fork.
+ How can I start rxvtd in a race-free way?
+ Try "rxvtd -f -o", which tells rxvtd to open the display, create the
+ listening socket and then fork.
What's with the strange Backspace/Delete key behaviour?
Assuming that the physical Backspace key corresponds to the
# use Backspace = ^H
$ stty erase ^H
- $ urxvt
+ $ rxvt
# use Backspace = ^?
$ stty erase ^?
- $ urxvt
+ $ rxvt
- Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in urxvt(7).
+ Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7).
For an existing rxvt-unicode:
option you can use the `keysym' resource to alter the keystrings
associated with keysyms.
- Here's an example for a URxvt session started using "urxvt -name
+ Here's an example for a URxvt session started using "rxvt -name
URxvt"
URxvt.keysym.Home: \033[1~
-embed, -pty-fd and -hold options
--enable-iso14755 (default: on)
- Enable extended ISO 14755 support (see urxvt(1), or doc/rxvt.1.txt).
+ Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt).
Basic support (section 5.1) is enabled by "--enable-frills", while
support for 5.2, 5.3 and 5.4 is enabled with this switch.
</p>
<hr />
<h1><a name="description">DESCRIPTION</a></h1>
-<p><strong>rxvt-unicode</strong>, version <strong>6.1</strong>, is a colour vt102 terminal
+<p><strong>rxvt-unicode</strong>, version <strong>6.2</strong>, is a colour vt102 terminal
emulator intended as an <em>xterm</em>(1) replacement for users who do not
require features such as Tektronix 4014 emulation and toolkit-style
configurability. As a result, <strong>rxvt-unicode</strong> uses much less swap space --
be printed. See resource <strong>boldItalicFont</strong> for details.
</dd>
<p></p>
+<dt><strong><a name="item__2dis_7c_2bis"><strong>-is</strong>|<strong>+is</strong></a></strong><br />
+</dt>
+<dd>
+Compile font-styles: Bold/Italic font styles imply high intensity
+foreground/background (default). See resource <strong>intensityStyles</strong> for
+details.
+</dd>
+<p></p>
<dt><strong><a name="item__2dname_name"><strong>-name</strong> <em>name</em></a></strong><br />
</dt>
<dd>
text font will being used for the given style.</p>
</dd>
<p></p>
+<dt><strong><a name="item_intensitystyles_3a_boolean"><strong>intensityStyles:</strong> <em>boolean</em></a></strong><br />
+</dt>
+<dd>
+When font styles are not enabled, or this option is enabled (<strong>True</strong>,
+option <strong>-is</strong>, the default), bold and italic font styles imply high
+intensity foreground/backround colours. Disabling this option (<strong>False</strong>,
+option <strong>+is</strong>) disables this behaviour, the high intensity colours are not
+reachable.
+</dd>
+<p></p>
<dt><strong><a name="item_selectstyle_3a_mode"><strong>selectstyle:</strong> <em>mode</em></a></strong><br />
</dt>
<dd>
.\" ========================================================================
.\"
.IX Title "rxvt 1"
-.TH rxvt 1 "2005-12-27" "6.1" "RXVT-UNICODE"
+.TH rxvt 1 "2006-01-02" "6.2" "RXVT-UNICODE"
.SH "NAME"
rxvt\-unicode (ouR XVT, unicode) \- (a VT102 emulator for the X window system)
.SH "SYNOPSIS"
.IX Item "-fbi fontlist"
Compile font\-styles: The bold italic font list to use when bold characters are to
be printed. See resource \fBboldItalicFont\fR for details.
+.IP "\fB\-is\fR|\fB+is\fR" 4
+.IX Item "-is|+is"
+Compile font\-styles: Bold/Italic font styles imply high intensity
+foreground/background (default). See resource \fBintensityStyles\fR for
+details.
.IP "\fB\-name\fR \fIname\fR" 4
.IX Item "-name name"
Specify the application name under which resources are to be obtained,
.Sp
If set, but empty, then this specific style is disabled and the normal
text font will being used for the given style.
+.IP "\fBintensityStyles:\fR \fIboolean\fR" 4
+.IX Item "intensityStyles: boolean"
+When font styles are not enabled, or this option is enabled (\fBTrue\fR,
+option \fB\-is\fR, the default), bold and italic font styles imply high
+intensity foreground/backround colours. Disabling this option (\fBFalse\fR,
+option \fB+is\fR) disables this behaviour, the high intensity colours are not
+reachable.
.IP "\fBselectstyle:\fR \fImode\fR" 4
.IX Item "selectstyle: mode"
Set mouse selection style to \fBold\fR which is 2.20, \fBoldword\fR which is
rxvt [options] [-e command [ args ]]
DESCRIPTION
- rxvt-unicode, version 6.1, is a colour vt102 terminal emulator intended
+ rxvt-unicode, version 6.2, is a colour vt102 terminal emulator intended
as an *xterm*(1) replacement for users who do not require features such
as Tektronix 4014 emulation and toolkit-style configurability. As a
result, rxvt-unicode uses much less swap space -- a significant
characters are to be printed. See resource boldItalicFont for
details.
+ -is|+is
+ Compile font-styles: Bold/Italic font styles imply high intensity
+ foreground/background (default). See resource intensityStyles for
+ details.
+
-name *name*
Specify the application name under which resources are to be
obtained, rather than the default executable file name. Name should
If set, but empty, then this specific style is disabled and the
normal text font will being used for the given style.
+ intensityStyles: *boolean*
+ When font styles are not enabled, or this option is enabled (True,
+ option -is, the default), bold and italic font styles imply high
+ intensity foreground/backround colours. Disabling this option
+ (False, option +is) disables this behaviour, the high intensity
+ colours are not reachable.
+
selectstyle: *mode*
Set mouse selection style to old which is 2.20, oldword which is
xterm style with 2.20 old word selection, or anything else which
<dd>
The version number is displayed with the usage (-h). Also the escape
sequence <code>ESC [ 8 n</code> sets the window title to the version number. When
-using the urxvtc client, the version displayed is that of the
+using the rxvtc client, the version displayed is that of the
daemon.
</dd>
<p></p>
<code>enacs=\E[0@</code> and try again.
</dd>
<p></p>
-<dt><strong><a name="item_bash_27s_readline_does_not_work_correctly_under_ur"><code>bash</code>'s readline does not work correctly under urxvt.</a></strong><br />
+<dt><strong><a name="item_bash_27s_readline_does_not_work_correctly_under_rx"><code>bash</code>'s readline does not work correctly under rxvt.</a></strong><br />
</dt>
<dt><strong><a name="item_i_need_a_termcap_file_entry_2e">I need a termcap file entry.</a></strong><br />
</dt>
</dd>
<dd>
<pre>
- urxvt -fn basefont,font2,font3...</pre>
+ rxvt -fn basefont,font2,font3...</pre>
</dd>
<dd>
<p>When rxvt-unicode sees a character, it will first look at the base
some editors prematurely may leave the mouse in mouse report mode. I've
heard that tcsh may use mouse reporting unless it otherwise specified. A
quick check is to see if cut/paste works when the Alt or Shift keys are
-depressed. See <code>urxvt(7)</code>
+depressed. See <code>rxvt(7)</code>
</dd>
<p></p>
<dt><strong><a name="item_what_27s_with_this_bold_2fblink_stuff_3f">What's with this bold/blink stuff?</a></strong><br />
URxvt.color15: #e1dddd</pre>
</dd>
<p></p>
-<dt><strong><a name="item_how_can_i_start_urxvtd_in_a_race_2dfree_way_3f">How can I start urxvtd in a race-free way?</a></strong><br />
+<dt><strong><a name="item_how_can_i_start_rxvtd_in_a_race_2dfree_way_3f">How can I start rxvtd in a race-free way?</a></strong><br />
</dt>
<dd>
-Try <code>urxvtd -f -o</code>, which tells urxvtd to open the
+Try <code>rxvtd -f -o</code>, which tells rxvtd to open the
display, create the listening socket and then fork.
</dd>
<p></p>
<pre>
# use Backspace = ^H
$ stty erase ^H
- $ urxvt</pre>
+ $ rxvt</pre>
</dd>
<dd>
<pre>
# use Backspace = ^?
$ stty erase ^?
- $ urxvt</pre>
+ $ rxvt</pre>
</dd>
<dd>
-<p>Toggle with <code>ESC [ 36 h</code> / <code>ESC [ 36 l</code> as documented in urxvt(7).</p>
+<p>Toggle with <code>ESC [ 36 h</code> / <code>ESC [ 36 l</code> as documented in rxvt(7).</p>
</dd>
<dd>
<p>For an existing rxvt-unicode:</p>
use the `keysym' resource to alter the keystrings associated with keysyms.
</dd>
<dd>
-<p>Here's an example for a URxvt session started using <code>urxvt -name URxvt</code></p>
+<p>Here's an example for a URxvt session started using <code>rxvt -name URxvt</code></p>
</dd>
<dd>
<pre>
<table>
<tr><td>h</td><td>Scroll to bottom when a key is pressed</td></tr>
<tr><td>l</td><td>Don't scroll to bottom when a key is pressed</td></tr>
+</table><dt><strong><a name="item_1021"><strong><code>Ps = 1021</code> </strong>> (<strong>rxvt</strong>)</a></strong><br />
+</dt>
+<table>
+<tr><td>h</td><td>Bold/italic implies high intensity (see option -is)</td></tr>
+<tr><td>l</td><td>Font styles have no effect on intensity (Compile styles)</td></tr>
</table><dt><strong><a name="item_ps__3d_1047"><strong><code>Ps = 1047</code> </strong>></a></strong><br />
</dt>
<table>
<dt><strong><a name="item_iso14755">--enable-iso14755 (default: on)</a></strong><br />
</dt>
<dd>
-Enable extended ISO 14755 support (see urxvt(1), or
+Enable extended ISO 14755 support (see rxvt(1), or
<em>doc/rxvt.1.txt</em>). Basic support (section 5.1) is enabled by
<code>--enable-frills</code>, while support for 5.2, 5.3 and 5.4 is enabled with
this switch.
.\" ========================================================================
.\"
.IX Title "rxvt 7"
-.TH rxvt 7 "2005-12-24" "6.0" "RXVT-UNICODE"
+.TH rxvt 7 "2006-01-02" "6.2" "RXVT-UNICODE"
.SH "NAME"
RXVT REFERENCE \- FAQ, command sequences and other background information
.SH "SYNOPSIS"
l Don't scroll to bottom when a key is pressed
.TE
+.ie n .IP "\fB\fB""Ps = 1021""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPs = 1021\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Ps = 1021 (rxvt)"
+.TS
+l l .
+h Bold/italic implies high intensity (see option -is)
+l Font styles have no effect on intensity (Compile styles)
+.TE
+
.ie n .IP "\fB\fB""Ps = 1047""\fB\fR" 4
.el .IP "\fB\f(CBPs = 1047\fB\fR" 4
.IX Item "Ps = 1047"
How do I know which rxvt-unicode version I'm using?
The version number is displayed with the usage (-h). Also the escape
sequence "ESC [ 8 n" sets the window title to the version number.
- When using the urxvtc client, the version displayed is that of the
+ When using the rxvtc client, the version displayed is that of the
daemon.
I am using Debian GNU/Linux and have a problem...
Most likely it's the empty definition for "enacs=". Just replace it
by "enacs=\E[0@" and try again.
- "bash"'s readline does not work correctly under urxvt.
+ "bash"'s readline does not work correctly under rxvt.
I need a termcap file entry.
One reason you might want this is that some distributions or
operating systems still compile some programs using the
In that case, select a font of your taste and add it to the font
list, e.g.:
- urxvt -fn basefont,font2,font3...
+ rxvt -fn basefont,font2,font3...
When rxvt-unicode sees a character, it will first look at the base
font. If the base font does not contain the character, it will go to
some editors prematurely may leave the mouse in mouse report mode.
I've heard that tcsh may use mouse reporting unless it otherwise
specified. A quick check is to see if cut/paste works when the Alt
- or Shift keys are depressed. See urxvt(7)
+ or Shift keys are depressed. See rxvt(7)
What's with this bold/blink stuff?
If no bold colour is set via "colorBD:", bold will invert text using
URxvt.color7: #e1dddd
URxvt.color15: #e1dddd
- How can I start urxvtd in a race-free way?
- Try "urxvtd -f -o", which tells urxvtd to open the display, create
- the listening socket and then fork.
+ How can I start rxvtd in a race-free way?
+ Try "rxvtd -f -o", which tells rxvtd to open the display, create the
+ listening socket and then fork.
What's with the strange Backspace/Delete key behaviour?
Assuming that the physical Backspace key corresponds to the
# use Backspace = ^H
$ stty erase ^H
- $ urxvt
+ $ rxvt
# use Backspace = ^?
$ stty erase ^?
- $ urxvt
+ $ rxvt
- Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in urxvt(7).
+ Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7).
For an existing rxvt-unicode:
option you can use the `keysym' resource to alter the keystrings
associated with keysyms.
- Here's an example for a URxvt session started using "urxvt -name
+ Here's an example for a URxvt session started using "rxvt -name
URxvt"
URxvt.keysym.Home: \033[1~
h Scroll to bottom when a key is pressed
l Don't scroll to bottom when a key is pressed
+ "Ps = 1021" (rxvt)
+ h Bold/italic implies high intensity (see option -is)
+ l Font styles have no effect on intensity (Compile styles)
+
"Ps = 1047"
h Use Alternate Screen Buffer
l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
-embed, -pty-fd and -hold options
--enable-iso14755 (default: on)
- Enable extended ISO 14755 support (see urxvt(1), or doc/rxvt.1.txt).
+ Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt).
Basic support (section 5.1) is enabled by "--enable-frills", while
support for 5.2, 5.3 and 5.4 is enabled with this switch.
int pfd;
#ifdef PTYS_ARE_OPENPTY
- char tty_name[sizeof "/dev/pts/?????\0"];
+ char tty_name[sizeof "/dev/pts/????\0"];
- rxvt_privileges (RESTORE);
- int res = openpty (&pfd, fd_tty, tty_name, NULL, NULL);
- rxvt_privileges (IGNORE);
-
- if (res != -1)
+ if (openpty (&pfd, fd_tty, tty_name, NULL, NULL) != -1)
{
*ttydev = strdup (tty_name);
return pfd;
#endif
#ifdef PTYS_ARE_GETPTY
-
char *ptydev;
while ((ptydev = getpty ()) != NULL)
void
rxvt_ptytty::privileges (rxvt_privaction action)
{
- if (pty < 0)
+ if (!name || !*name)
return;
rxvt_privileges (RESTORE);
if (action == SAVE)
{
- //next_tty_action = RESTORE;
# ifndef RESET_TTY_TO_COMMON_DEFAULTS
/* store original tty status for restoration rxvt_clean_exit () -- rgg 04/12/95 */
if (lstat (name, &savestat) < 0) /* you lose out */
- ;//next_tty_action = IGNORE;
+ ;
else
# endif
{
+ saved = true;
chown (name, getuid (), ttyconf.gid); /* fail silently */
chmod (name, ttyconf.mode);
# ifdef HAVE_REVOKE
}
else
{ /* action == RESTORE */
- //next_tty_action = IGNORE;
# ifndef RESET_TTY_TO_COMMON_DEFAULTS
- chmod (name, savestat.st_mode);
- chown (name, savestat.st_uid, savestat.st_gid);
+ if (saved)
+ {
+ chmod (name, savestat.st_mode);
+ chown (name, savestat.st_uid, savestat.st_gid);
+ }
# else
chmod (name, (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH));
chown (name, 0, 0);
{
pty = tty = -1;
name = 0;
+#ifndef NO_SETOWNER_TTYDEV
+ saved = false;
+#endif
}
rxvt_ptytty::~rxvt_ptytty ()
#ifndef PTYTTY_H
#define PTYTTY_H
-#include "rxvt.h"
+#include "feature.h"
+
+#if defined(HAVE_GRANTPT) && defined(HAVE_UNLOCKPT)
+# if defined(PTYS_ARE_GETPT) || defined(PTYS_ARE_PTMX)
+# define NO_SETOWNER_TTYDEV 1
+# endif
+#endif
+#if defined(__CYGWIN32__) || defined(PTYS_ARE_OPENPTY)
+# define NO_SETOWNER_TTYDEV 1
+#endif
enum rxvt_privaction { IGNORE = 'i', SAVE = 's', RESTORE = 'r' };
#ifndef RESET_TTY_TO_COMMON_DEFAULTS
struct stat savestat; /* original status of our tty */
#endif
+#ifndef NO_SETOWNER_TTYDEV
void privileges (rxvt_privaction action);
+ bool saved;
+#endif
public:
int pty; // pty file descriptor; connected to rxvt
int tty; // tty file descriptor; connected to child
# define STDERR_FILENO 2
#endif
-#if defined(HAVE_GRANTPT) && defined(HAVE_UNLOCKPT)
-# if defined(PTYS_ARE_GETPT) || defined(PTYS_ARE_PTMX)
-# define NO_SETOWNER_TTYDEV 1
-# endif
-#endif
-#if defined(__CYGWIN32__)
-# define NO_SETOWNER_TTYDEV 1
-#endif
-
/*
*****************************************************************************
* PROTOTYPES
// VERSION _must_ be \d.\d+
#define VERSION "6.2"
-#define DATE "2005-12-27"
+#define DATE "2006-01-02"