summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/rxvt.1.man.in1806
-rw-r--r--doc/rxvt.7.man.in2750
-rw-r--r--doc/rxvtc.1.man.in195
-rw-r--r--doc/rxvtd.1.man.in238
4 files changed, 4989 insertions, 0 deletions
diff --git a/doc/rxvt.1.man.in b/doc/rxvt.1.man.in
new file mode 100644
index 0000000..1f285e5
--- /dev/null
+++ b/doc/rxvt.1.man.in
@@ -0,0 +1,1806 @@
+.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.30)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{
+. if \nF \{
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "@@RXVT_NAME@@ 1"
+.TH @@RXVT_NAME@@ 1 "2016-01-23" "@@RXVT_VERSION@@" "RXVT-UNICODE"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+rxvt\-unicode (ouR XVT, unicode) \- (a VT102 emulator for the X window system)
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+\&\fB@@RXVT_NAME@@\fR [options] [\-e command [ args ]]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBrxvt-unicode\fR, version \fB@@RXVT_VERSION@@\fR, is a colour vt102 terminal
+emulator intended as an \fIxterm\fR(1) replacement for users who do not
+require features such as Tektronix 4014 emulation and toolkit-style
+configurability. As a result, \fBrxvt-unicode\fR uses much less swap space \*(--
+a significant advantage on a machine serving many X sessions.
+.PP
+This document is also available on the World-Wide-Web at
+<http://pod.tst.eu/http://cvs.schmorp.de/rxvt\-unicode/doc/rxvt.1.pod>.
+.SH "FREQUENTLY ASKED QUESTIONS"
+.IX Header "FREQUENTLY ASKED QUESTIONS"
+See @@RXVT_NAME@@(7) (try \f(CW\*(C`man 7 @@RXVT_NAME@@\*(C'\fR) for a list of
+frequently asked questions and answer to them and some common
+problems. That document is also accessible on the World-Wide-Web at
+<http://pod.tst.eu/http://cvs.schmorp.de/rxvt\-unicode/doc/rxvt.7.pod>.
+.SH "RXVT-UNICODE VS. RXVT"
+.IX Header "RXVT-UNICODE VS. RXVT"
+Unlike the original rxvt, \fBrxvt-unicode\fR stores all text in Unicode
+internally. That means it can store and display most scripts in the
+world. Being a terminal emulator, however, some things are very difficult,
+especially cursive scripts such as arabic, vertically written scripts
+like mongolian or scripts requiring extremely complex combining rules,
+like tibetan or devanagari. Don't expect pretty output when using these
+scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
+fine, though. A somewhat difficult case are right-to-left scripts, such
+as hebrew: \fBrxvt-unicode\fR adopts the view that bidirectional algorithms
+belong in the application, not the terminal emulator (too many things \*(--
+such as cursor-movement while editing \*(-- break otherwise), but that might
+change.
+.PP
+If you are looking for a terminal that supports more exotic scripts, let
+me recommend \f(CW\*(C`mlterm\*(C'\fR, which is a very user friendly, lean and clean
+terminal emulator. In fact, the reason rxvt-unicode was born was solely
+because the author couldn't get \f(CW\*(C`mlterm\*(C'\fR to use one font for latin1 and
+another for japanese.
+.PP
+Therefore another design rationale was the use of multiple fonts to
+display characters: The idea of a single unicode font which many other
+programs force onto its users never made sense to me: You should be able
+to choose any font for any script freely.
+.PP
+Apart from that, rxvt-unicode is also much better internationalised than
+its predecessor, supports things such as \s-1XFT\s0 and \s-1ISO 14755\s0 that are handy
+in i18n\-environments, is faster, and has a lot bugs less than the original
+rxvt. This all in addition to dozens of other small improvements.
+.PP
+It is still faithfully following the original rxvt idea of being lean
+and nice on resources: for example, you can still configure rxvt-unicode
+without most of its features to get a lean binary. It also comes with
+a client/daemon pair that lets you open any number of terminal windows
+from within a single process, which makes startup time very fast and
+drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
+@@RXVT_NAME@@c(1) (client).
+.PP
+It also makes technical information about escape sequences (which have
+been extended) more accessible: see @@RXVT_NAME@@(7) for technical
+reference documentation (escape sequences etc.).
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The \fB@@RXVT_NAME@@\fR options (mostly a subset of \fIxterm\fR's) are listed
+below. In keeping with the smaller-is-better philosophy, options may be
+eliminated or default values chosen at compile-time, so options and
+defaults listed may not accurately reflect the version installed on
+your system. `@@RXVT_NAME@@ \-h' gives a list of major compile-time options on
+the \fIOptions\fR line. Option descriptions may be prefixed with which
+compile option each is dependent upon. e.g. `Compile \fI\s-1XIM\s0\fR:' requires
+\&\fI\s-1XIM\s0\fR on the \fIOptions\fR line. Note: `@@RXVT_NAME@@ \-help' gives a list of all
+command-line options compiled into your version.
+.PP
+Note that \fB@@RXVT_NAME@@\fR permits the resource name to be used as a
+long-option (\-\-/++ option) so the potential command-line options are
+far greater than those listed. For example: `@@RXVT_NAME@@ \-\-loginShell \-\-color1
+Orange'.
+.PP
+The following options are available:
+.IP "\fB\-help\fR, \fB\-\-help\fR" 4
+.IX Item "-help, --help"
+Print out a message describing available options.
+.IP "\fB\-display\fR \fIdisplayname\fR" 4
+.IX Item "-display displayname"
+Attempt to open a window on the named X display (the older form \fB\-d\fR
+is still respected. but deprecated). In the absence of this option, the
+display specified by the \fB\s-1DISPLAY\s0\fR environment variable is used.
+.IP "\fB\-depth\fR \fIbitdepth\fR" 4
+.IX Item "-depth bitdepth"
+Compile \fIfrills\fR: Attempt to find a visual with the given bit depth;
+resource \fBdepth\fR.
+.Sp
+[Please note that many X servers (and libXft) are buggy with
+respect to \f(CW\*(C`\-depth 32\*(C'\fR and/or alpha channels, and will cause all sorts
+of graphical corruption. This is harmless, but we can't do anything about
+this, so watch out]
+.IP "\fB\-visual\fR \fIvisualID\fR" 4
+.IX Item "-visual visualID"
+Compile \fIfrills\fR: Use the given visual (see e.g. \f(CW\*(C`xdpyinfo\*(C'\fR for
+possible visual ids) instead of the default, and also allocate a private
+colormap. All visual types except for DirectColor are supported.
+.IP "\fB\-geometry\fR \fIgeom\fR" 4
+.IX Item "-geometry geom"
+Window geometry (\fB\-g\fR still respected); resource \fBgeometry\fR.
+.IP "\fB\-rv\fR|\fB+rv\fR" 4
+.IX Item "-rv|+rv"
+Turn on/off simulated reverse video; resource \fBreverseVideo\fR.
+.IP "\fB\-j\fR|\fB+j\fR" 4
+.IX Item "-j|+j"
+Turn on/off jump scrolling (allow multiple lines per refresh); resource \fBjumpScroll\fR.
+.IP "\fB\-ss\fR|\fB+ss\fR" 4
+.IX Item "-ss|+ss"
+Turn on/off skip scrolling (allow multiple screens per refresh); resource \fBskipScroll\fR.
+.IP "\fB\-fade\fR \fInumber\fR" 4
+.IX Item "-fade number"
+Fade the text by the given percentage when focus is lost. Small values
+fade a little only, 100 completely replaces all colours by the fade
+colour; resource \fBfading\fR.
+.IP "\fB\-fadecolor\fR \fIcolour\fR" 4
+.IX Item "-fadecolor colour"
+Fade to this colour when fading is used (see \fB\-fade\fR). The default colour
+is opaque black. resource \fBfadeColor\fR.
+.IP "\fB\-icon\fR \fIfile\fR" 4
+.IX Item "-icon file"
+Compile \fIpixbuf\fR: Use the specified image as application icon. This
+is used by many window managers, taskbars and pagers to represent the
+application window; resource \fIiconFile\fR.
+.IP "\fB\-bg\fR \fIcolour\fR" 4
+.IX Item "-bg colour"
+Window background colour; resource \fBbackground\fR.
+.IP "\fB\-fg\fR \fIcolour\fR" 4
+.IX Item "-fg colour"
+Window foreground colour; resource \fBforeground\fR.
+.IP "\fB\-cr\fR \fIcolour\fR" 4
+.IX Item "-cr colour"
+The cursor colour; resource \fBcursorColor\fR.
+.IP "\fB\-pr\fR \fIcolour\fR" 4
+.IX Item "-pr colour"
+The mouse pointer foreground colour; resource \fBpointerColor\fR.
+.IP "\fB\-pr2\fR \fIcolour\fR" 4
+.IX Item "-pr2 colour"
+The mouse pointer background colour; resource \fBpointerColor2\fR.
+.IP "\fB\-bd\fR \fIcolour\fR" 4
+.IX Item "-bd colour"
+The colour of the border around the text area and between the scrollbar and the text;
+resource \fBborderColor\fR.
+.IP "\fB\-fn\fR \fIfontlist\fR" 4
+.IX Item "-fn fontlist"
+Select the fonts to be used. This is a comma separated list of font names
+that are checked in order when trying to find glyphs for characters. The
+first font defines the cell size for characters; other fonts might be
+smaller, but not (in general) larger. A (hopefully) reasonable default
+font list is always appended to it. See resource \fBfont\fR for more details.
+.Sp
+In short, to specify an X11 core font, just specify its name or prefix it
+with \f(CW\*(C`x:\*(C'\fR. To specify an XFT-font, you need to prefix it with \f(CW\*(C`xft:\*(C'\fR,
+e.g.:
+.Sp
+.Vb 2
+\& @@RXVT_NAME@@ \-fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
+\& @@RXVT_NAME@@ \-fn "9x15bold,xft:Bitstream Vera Sans Mono"
+.Ve
+.Sp
+See also the question \*(L"How does rxvt-unicode choose fonts?\*(R" in the \s-1FAQ\s0
+section of @@RXVT_NAME@@(7).
+.IP "\fB\-fb\fR \fIfontlist\fR" 4
+.IX Item "-fb fontlist"
+Compile \fIfont-styles\fR: The bold font list to use when \fBbold\fR characters
+are to be printed. See resource \fBboldFont\fR for details.
+.IP "\fB\-fi\fR \fIfontlist\fR" 4
+.IX Item "-fi fontlist"
+Compile \fIfont-styles\fR: The italic font list to use when \fIitalic\fR
+characters are to be printed. See resource \fBitalicFont\fR for details.
+.IP "\fB\-fbi\fR \fIfontlist\fR" 4
+.IX Item "-fbi fontlist"
+Compile \fIfont-styles\fR: The bold italic font list to use when \fB\f(BIbold
+italic\fB\fR characters are to be printed. See resource \fBboldItalicFont\fR
+for details.
+.IP "\fB\-is\fR|\fB+is\fR" 4
+.IX Item "-is|+is"
+Compile \fIfont-styles\fR: Bold/Blink 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,
+rather than the default executable file name. Name should not contain
+`.' or `*' characters. Also sets the icon and title name.
+.IP "\fB\-ls\fR|\fB+ls\fR" 4
+.IX Item "-ls|+ls"
+Start as a login\-shell/sub\-shell; resource \fBloginShell\fR.
+.IP "\fB\-mc\fR \fImilliseconds\fR" 4
+.IX Item "-mc milliseconds"
+Specify the maximum time between multi-click selections.
+.IP "\fB\-ut\fR|\fB+ut\fR" 4
+.IX Item "-ut|+ut"
+Compile \fIutmp\fR: Inhibit/enable writing a utmp entry; resource
+\&\fButmpInhibit\fR.
+.IP "\fB\-vb\fR|\fB+vb\fR" 4
+.IX Item "-vb|+vb"
+Turn on/off visual bell on receipt of a bell character; resource
+\&\fBvisualBell\fR.
+.IP "\fB\-sb\fR|\fB+sb\fR" 4
+.IX Item "-sb|+sb"
+Turn on/off scrollbar; resource \fBscrollBar\fR.
+.IP "\fB\-sr\fR|\fB+sr\fR" 4
+.IX Item "-sr|+sr"
+Put scrollbar on right/left; resource \fBscrollBar_right\fR.
+.IP "\fB\-st\fR|\fB+st\fR" 4
+.IX Item "-st|+st"
+Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
+resource \fBscrollBar_floating\fR.
+.IP "\fB\-si\fR|\fB+si\fR" 4
+.IX Item "-si|+si"
+Turn on/off scroll-to-bottom on \s-1TTY\s0 output inhibit; resource
+\&\fBscrollTtyOutput\fR has opposite effect.
+.IP "\fB\-sk\fR|\fB+sk\fR" 4
+.IX Item "-sk|+sk"
+Turn on/off scroll-to-bottom on keypress; resource
+\&\fBscrollTtyKeypress\fR.
+.IP "\fB\-sw\fR|\fB+sw\fR" 4
+.IX Item "-sw|+sw"
+Turn on/off scrolling with the scrollback buffer as new lines appear.
+This only takes effect if \fB\-si\fR is also given; resource
+\&\fBscrollWithBuffer\fR.
+.IP "\fB\-ptab\fR|\fB+ptab\fR" 4
+.IX Item "-ptab|+ptab"
+If enabled (default), \*(L"Horizontal Tab\*(R" characters are being stored as
+actual wide characters in the screen buffer, which makes it possible to
+select and paste them. Since a horizontal tab is a cursor movement and
+not an actual glyph, this can sometimes be visually annoying as the cursor
+on a tab character is displayed as a wide cursor; resource \fBpastableTabs\fR.
+.IP "\fB\-bc\fR|\fB+bc\fR" 4
+.IX Item "-bc|+bc"
+Blink the cursor; resource \fBcursorBlink\fR.
+.IP "\fB\-uc\fR|\fB+uc\fR" 4
+.IX Item "-uc|+uc"
+Make the cursor underlined; resource \fBcursorUnderline\fR.
+.IP "\fB\-iconic\fR" 4
+.IX Item "-iconic"
+Start iconified, if the window manager supports that option.
+Alternative form is \fB\-ic\fR.
+.IP "\fB\-sl\fR \fInumber\fR" 4
+.IX Item "-sl number"
+Save \fInumber\fR lines in the scrollback buffer. See resource entry for
+limits; resource \fBsaveLines\fR.
+.IP "\fB\-b\fR \fInumber\fR" 4
+.IX Item "-b number"
+Compile \fIfrills\fR: Internal border of \fInumber\fR pixels. See resource
+entry for limits; resource \fBinternalBorder\fR.
+.IP "\fB\-w\fR \fInumber\fR" 4
+.IX Item "-w number"
+Compile \fIfrills\fR: External border of \fInumber\fR pixels. Also, \fB\-bw\fR
+and \fB\-borderwidth\fR. See resource entry for limits; resource
+\&\fBexternalBorder\fR.
+.IP "\fB\-bl\fR" 4
+.IX Item "-bl"
+Compile \fIfrills\fR: Set \s-1MWM\s0 hints to request a borderless window, i.e.
+if honoured by the \s-1WM,\s0 the rxvt-unicode window will not have window
+decorations; resource \fBborderLess\fR. If the window manager does not
+support \s-1MWM\s0 hints (e.g. kwin), enables override-redirect mode.
+.IP "\fB\-override\-redirect\fR" 4
+.IX Item "-override-redirect"
+Compile \fIfrills\fR: Sets override-redirect on the window; resource
+\&\fBoverride-redirect\fR.
+.IP "\fB\-dockapp\fR" 4
+.IX Item "-dockapp"
+Sets the initial state of the window to WithdrawnState, which makes
+window managers that support this extension treat it as a dockapp.
+.IP "\fB\-sbg\fR" 4
+.IX Item "-sbg"
+Compile \fIfrills\fR: 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 \fBskipBuiltinGlyphs\fR.
+.IP "\fB\-lsp\fR \fInumber\fR" 4
+.IX Item "-lsp number"
+Compile \fIfrills\fR: Lines (pixel height) to insert between each row of
+the display. Useful to work around font rendering problems; resource
+\&\fBlineSpace\fR.
+.IP "\fB\-letsp\fR \fInumber\fR" 4
+.IX Item "-letsp number"
+Compile \fIfrills\fR: Amount to adjust the computed character width by
+to control overall letter spacing. Negative values will tighten up the
+letter spacing, positive values will space letters out more. Useful to
+work around odd font metrics; resource \fBletterSpace\fR.
+.IP "\fB\-tn\fR \fItermname\fR" 4
+.IX Item "-tn termname"
+This option specifies the name of the terminal type to be set in the
+\&\fB\s-1TERM\s0\fR environment variable. This terminal type must exist in the
+\&\fI\fItermcap\fI\|(5)\fR database and should have \fIli#\fR and \fIco#\fR entries;
+resource \fBtermName\fR.
+.IP "\fB\-e\fR \fIcommand [arguments]\fR" 4
+.IX Item "-e command [arguments]"
+Run the command with its command-line arguments in the \fB@@RXVT_NAME@@\fR
+window; also sets the window title and icon name to be the basename of
+the program being executed if neither \fI\-title\fR (\fI\-T\fR) nor \fI\-n\fR are
+given on the command line. If this option is used, it must be the last
+on the command-line. If there is no \fB\-e\fR option then the default is to
+run the program specified by the \fB\s-1SHELL\s0\fR environment variable or,
+failing that, \fI\fIsh\fI\|(1)\fR.
+.Sp
+Please note that you must specify a program with arguments. If you want to
+run shell commands, you have to specify the shell, like this:
+.Sp
+.Vb 1
+\& @@RXVT_NAME@@ \-e sh \-c "shell commands"
+.Ve
+.IP "\fB\-title\fR \fItext\fR" 4
+.IX Item "-title text"
+Window title (\fB\-T\fR still respected); the default title is the basename
+of the program specified after the \fB\-e\fR option, if any, otherwise the
+application name; resource \fBtitle\fR.
+.IP "\fB\-n\fR \fItext\fR" 4
+.IX Item "-n text"
+Icon name; the default name is the basename of the program specified
+after the \fB\-e\fR option, if any, otherwise the application name;
+resource \fBiconName\fR.
+.IP "\fB\-C\fR" 4
+.IX Item "-C"
+Capture system console messages.
+.IP "\fB\-pt\fR \fIstyle\fR" 4
+.IX Item "-pt style"
+Compile \fI\s-1XIM\s0\fR: input style for input method; \fBOverTheSpot\fR,
+\&\fBOffTheSpot\fR, \fBRoot\fR; resource \fBpreeditType\fR.
+.Sp
+If the perl extension \f(CW\*(C`xim\-onthespot\*(C'\fR is used (which is the default),
+then additionally the \f(CW\*(C`OnTheSpot\*(C'\fR preedit type is available.
+.IP "\fB\-im\fR \fItext\fR" 4
+.IX Item "-im text"
+Compile \fI\s-1XIM\s0\fR: input method name. resource \fBinputMethod\fR.
+.IP "\fB\-imlocale\fR \fIstring\fR" 4
+.IX Item "-imlocale string"
+The locale to use for opening the \s-1IM.\s0 You can use an \f(CW\*(C`LC_CTYPE\*(C'\fR of e.g.
+\&\f(CW\*(C`de_DE.UTF\-8\*(C'\fR for normal text processing but \f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR for the
+input extension to be able to input japanese characters while staying in
+another locale. resource \fBimLocale\fR.
+.IP "\fB\-imfont\fR \fIfontset\fR" 4
+.IX Item "-imfont fontset"
+Set the font set to use for the X Input Method, see resource \fBimFont\fR
+for more info.
+.IP "\fB\-tcw\fR" 4
+.IX Item "-tcw"
+Change the meaning of triple-click selection with the left mouse
+button. Only effective when the original (non-perl) selection code is
+in-use. Instead of selecting a full line it will extend the selection to
+the end of the logical line only. resource \fBtripleclickwords\fR.
+.IP "\fB\-insecure\fR" 4
+.IX Item "-insecure"
+Enable \*(L"insecure\*(R" mode, which currently enables most of the escape
+sequences that echo strings. See the resource \fBinsecure\fR for more
+info.
+.IP "\fB\-mod\fR \fImodifier\fR" 4
+.IX Item "-mod modifier"
+Override detection of Meta modifier with specified key: \fBalt\fR,
+\&\fBmeta\fR, \fBhyper\fR, \fBsuper\fR, \fBmod1\fR, \fBmod2\fR, \fBmod3\fR, \fBmod4\fR,
+\&\fBmod5\fR; resource \fImodifier\fR.
+.IP "\fB\-ssc\fR|\fB+ssc\fR" 4
+.IX Item "-ssc|+ssc"
+Turn on/off secondary screen (default enabled); resource
+\&\fBsecondaryScreen\fR.
+.IP "\fB\-ssr\fR|\fB+ssr\fR" 4
+.IX Item "-ssr|+ssr"
+Turn on/off secondary screen scroll (default enabled); resource
+\&\fBsecondaryScroll\fR.
+.IP "\fB\-hold\fR|\fB+hold\fR" 4
+.IX Item "-hold|+hold"
+Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
+will not immediately destroy its window when the program executed within
+it exits. Instead, it will wait till it is being killed or closed by the
+user; resource \fBhold\fR.
+.IP "\fB\-cd\fR \fIpath\fR" 4
+.IX Item "-cd path"
+Sets the working directory for the shell (or the command specified via
+\&\fB\-e\fR). The \fIpath\fR must be an absolute path and it must exist for
+@@RXVT_NAME@@ to start; resource \fBchdir\fR.
+.IP "\fB\-xrm\fR \fIstring\fR" 4
+.IX Item "-xrm string"
+Works like the X Toolkit option of the same name, by adding the \fIstring\fR
+as if it were specified in a resource file. Resource values specified this
+way take precedence over all other resource specifications.
+.Sp
+Note that you need to use the \fIsame\fR syntax as in the .Xdefaults file,
+e.g. \f(CW\*(C`*.background: black\*(C'\fR. Also note that all @@RXVT_NAME@@\-specific
+options can be specified as long-options on the commandline, so use
+of \fB\-xrm\fR is mostly limited to cases where you want to specify other
+resources (e.g. for input methods) or for compatibility with other
+programs.
+.IP "\fB\-keysym.\fR\fIsym\fR \fIstring\fR" 4
+.IX Item "-keysym.sym string"
+Remap a key symbol. See resource \fBkeysym\fR.
+.IP "\fB\-embed\fR \fIwindowid\fR" 4
+.IX Item "-embed windowid"
+Tells @@RXVT_NAME@@ to embed its windows into an already-existing window,
+which enables applications to easily embed a terminal.
+.Sp
+Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
+shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
+quite a bit, so don't expect it to keep some specific state. It's best to
+create an extra subwindow for @@RXVT_NAME@@ and leave it alone.
+.Sp
+The window will not be destroyed when @@RXVT_NAME@@ exits.
+.Sp
+It might be useful to know that @@RXVT_NAME@@ will not close file
+descriptors passed to it (except for stdin/out/err, of course), so you
+can use file descriptors to communicate with the programs within the
+terminal. This works regardless of whether the \f(CW\*(C`\-embed\*(C'\fR option was used or
+not.
+.Sp
+Here is a short Gtk2\-perl snippet that illustrates how this option can be
+used (a longer example is in \fIdoc/embed\fR):
+.Sp
+.Vb 5
+\& my $rxvt = new Gtk2::Socket;
+\& $rxvt\->signal_connect_after (realize => sub {
+\& my $xid = $_[0]\->window\->get_xid;
+\& system "@@RXVT_NAME@@ \-embed $xid &";
+\& });
+.Ve
+.IP "\fB\-pty\-fd\fR \fIfile descriptor\fR" 4
+.IX Item "-pty-fd file descriptor"
+Tells @@RXVT_NAME@@ \s-1NOT\s0 to execute any commands or create a new pty/tty
+pair but instead use the given file descriptor as the tty master. This is
+useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
+without having to run a program within it.
+.Sp
+If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
+entries and will not tinker with pty/tty permissions \- you have to do that
+yourself if you want that.
+.Sp
+As an extremely special case, specifying \f(CW\*(C`\-1\*(C'\fR will completely suppress
+pty/tty operations, which is probably only useful in conjunction with some
+perl extension that manages the terminal.
+.Sp
+Here is a example in perl that illustrates how this option can be used (a
+longer example is in \fIdoc/pty\-fd\fR):
+.Sp
+.Vb 2
+\& use IO::Pty;
+\& use Fcntl;
+\&
+\& my $pty = new IO::Pty;
+\& fcntl $pty, F_SETFD, 0; # clear close\-on\-exec
+\& system "@@RXVT_NAME@@ \-pty\-fd " . (fileno $pty) . "&";
+\& close $pty;
+\&
+\& # now communicate with rxvt
+\& my $slave = $pty\->slave;
+\& while (<$slave>) { print $slave "got <$_>\en" }
+.Ve
+.IP "\fB\-pe\fR \fIstring\fR" 4
+.IX Item "-pe string"
+Comma-separated list of perl extension scripts to use (or not to use) in
+this terminal instance. See resource \fBperl-ext\fR for details.
+.SH "RESOURCES"
+.IX Header "RESOURCES"
+Note: `@@RXVT_NAME@@ \-\-help' gives a list of all resources (long
+options) compiled into your version. All resources are also available as
+long-options.
+.PP
+You can set and change the resources using X11 tools like \fBxrdb\fR. Many
+distribution do also load settings from the \fB~/.Xresources\fR file when X
+starts. @@RXVT_NAME@@ will consult the following files/resources in order,
+with later settings overwriting earlier ones:
+.PP
+.Vb 6
+\& 1. app\-defaults file in $XAPPLRESDIR
+\& 2. $HOME/.Xdefaults
+\& 3. RESOURCE_MANAGER property on root\-window of screen 0
+\& 4. SCREEN_RESOURCES property on root\-window of the current screen
+\& 5. $XENVIRONMENT file OR $HOME/.Xdefaults\-<nodename>
+\& 6. resources specified via \-xrm on the commandline
+.Ve
+.PP
+Note that when reading X resources, \fB@@RXVT_NAME@@\fR recognizes two class
+names: \fBRxvt\fR and \fBURxvt\fR. The class name \fBRxvt\fR allows resources
+common to both \fB@@RXVT_NAME@@\fR and the original \fIrxvt\fR to be easily
+configured, while the class name \fBURxvt\fR allows resources unique to
+\&\fB@@RXVT_NAME@@\fR, to be shared between different \fB@@RXVT_NAME@@\fR
+configurations. If no resources are specified, suitable defaults will
+be used. Command-line arguments can be used to override resource
+settings. The following resources are supported (you might want to
+check the @@RXVT_NAME@@\fIperl\fR\|(3) manpage for additional settings by perl
+extensions not documented here):
+.IP "\fBdepth:\fR \fIbitdepth\fR" 4
+.IX Item "depth: bitdepth"
+Compile \fIxft\fR: Attempt to find a visual with the given bit depth;
+option \fB\-depth\fR.
+.IP "\fBbuffered:\fR \fIboolean\fR" 4
+.IX Item "buffered: boolean"
+Compile \fIxft\fR: Turn on/off double-buffering for xft (default enabled).
+On some card/driver combination enabling it slightly decreases
+performance, on most it greatly helps it. The slowdown is small, so it
+should normally be enabled.
+.IP "\fBgeometry:\fR \fIgeom\fR" 4
+.IX Item "geometry: geom"
+Create the window with the specified X window geometry [default 80x24];
+option \fB\-geometry\fR.
+.IP "\fBbackground:\fR \fIcolour\fR" 4
+.IX Item "background: colour"
+Use the specified colour as the window's background colour [default
+White]; option \fB\-bg\fR.
+.IP "\fBforeground:\fR \fIcolour\fR" 4
+.IX Item "foreground: colour"
+Use the specified colour as the window's foreground colour [default
+Black]; option \fB\-fg\fR.
+.IP "\fBcolor\fR\fIn\fR\fB:\fR \fIcolour\fR" 4
+.IX Item "colorn: colour"
+Use the specified colour for the colour value \fIn\fR, where 0\-7
+corresponds to low-intensity (normal) colours and 8\-15 corresponds to
+high-intensity (bold = bright foreground, blink = bright background)
+colours. The canonical names are as follows: 0=black, 1=red, 2=green,
+3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
+names used are listed in the \fB\s-1COLOURS AND GRAPHICS\s0\fR section.
+.Sp
+Colours higher than 15 cannot be set using resources (yet), but can be
+changed using an escape command (see @@RXVT_NAME@@(7)).
+.Sp
+Colours 16\-79 form a standard 4x4x4 colour cube (the same as xterm with
+88 colour support). Colours 80\-87 are evenly spaces grey steps.
+.IP "\fBcolorBD:\fR \fIcolour\fR" 4
+.IX Item "colorBD: colour"
+.PD 0
+.IP "\fBcolorIT:\fR \fIcolour\fR" 4
+.IX Item "colorIT: colour"
+.PD
+Use the specified colour to display bold or italic characters when the
+foreground colour is the default. If font styles are not available
+(Compile \fIstyles\fR) and this option is unset, reverse video is used instead.
+.IP "\fBcolorUL:\fR \fIcolour\fR" 4
+.IX Item "colorUL: colour"
+Use the specified colour to display underlined characters when the
+foreground colour is the default.
+.IP "\fBunderlineColor:\fR \fIcolour\fR" 4
+.IX Item "underlineColor: colour"
+If set, use the specified colour as the colour for the underline
+itself. If unset, use the foreground colour.
+.IP "\fBhighlightColor:\fR \fIcolour\fR" 4
+.IX Item "highlightColor: colour"
+If set, use the specified colour as the background for highlighted
+characters. If unset, use reverse video.
+.IP "\fBhighlightTextColor:\fR \fIcolour\fR" 4
+.IX Item "highlightTextColor: colour"
+If set and highlightColor is set, use the specified colour as the
+foreground for highlighted characters.
+.IP "\fBcursorColor:\fR \fIcolour\fR" 4
+.IX Item "cursorColor: colour"
+Use the specified colour for the cursor. The default is to use the
+foreground colour; option \fB\-cr\fR.
+.IP "\fBcursorColor2:\fR \fIcolour\fR" 4
+.IX Item "cursorColor2: colour"
+Use the specified colour for the colour of the cursor text. For this to
+take effect, \fBcursorColor\fR must also be specified. The default is to
+use the background colour.
+.IP "\fBreverseVideo:\fR \fIboolean\fR" 4
+.IX Item "reverseVideo: boolean"
+\&\fBTrue\fR: simulate reverse video by foreground and background colours;
+option \fB\-rv\fR. \fBFalse\fR: regular screen colours [default]; option
+\&\fB+rv\fR. See note in \fB\s-1COLOURS AND GRAPHICS\s0\fR section.
+.IP "\fBjumpScroll:\fR \fIboolean\fR" 4
+.IX Item "jumpScroll: boolean"
+\&\fBTrue\fR: specify that jump scrolling should be used. When receiving lots
+of lines, @@RXVT_NAME@@ will only scroll once a whole screen height of lines
+has been read, resulting in fewer updates while still displaying every
+received line; option \fB\-j\fR.
+.Sp
+\&\fBFalse\fR: specify that smooth scrolling should be used. @@RXVT_NAME@@ will
+force a screen refresh on each new line it received; option \fB+j\fR.
+.IP "\fBskipScroll:\fR \fIboolean\fR" 4
+.IX Item "skipScroll: boolean"
+\&\fBTrue\fR: (the default) specify that skip scrolling should be used. When
+receiving lots of lines, @@RXVT_NAME@@ will only scroll once in a while
+(around 60 times per second), resulting in far fewer updates. This can
+result in @@RXVT_NAME@@ not ever displaying some of the lines it receives;
+option \fB\-ss\fR.
+.Sp
+\&\fBFalse\fR: specify that everything is to be displayed, even
+if the refresh is too fast for the human eye to read anything (or the
+monitor to display anything); option \fB+ss\fR.
+.IP "\fBfading:\fR \fInumber\fR" 4
+.IX Item "fading: number"
+Fade the text by the given percentage when focus is lost; option \fB\-fade\fR.
+.IP "\fBfadeColor:\fR \fIcolour\fR" 4
+.IX Item "fadeColor: colour"
+Fade to this colour, when fading is used (see \fBfading:\fR). The default
+colour is black; option \fB\-fadecolor\fR.
+.IP "\fBiconFile:\fR \fIfile\fR" 4
+.IX Item "iconFile: file"
+Set the application icon pixmap; option \fB\-icon\fR.
+.IP "\fBscrollColor:\fR \fIcolour\fR" 4
+.IX Item "scrollColor: colour"
+Use the specified colour for the scrollbar [default #B2B2B2].
+.IP "\fBtroughColor:\fR \fIcolour\fR" 4
+.IX Item "troughColor: colour"
+Use the specified colour for the scrollbar's trough area [default
+#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar.
+.IP "\fBborderColor:\fR \fIcolour\fR" 4
+.IX Item "borderColor: colour"
+The colour of the border around the text area and between the scrollbar
+and the text.
+.IP "\fBfont:\fR \fIfontlist\fR" 4
+.IX Item "font: fontlist"
+Select the fonts to be used. This is a comma separated list of font names
+that are checked in order when trying to find glyphs for characters. The
+first font defines the cell size for characters; other fonts might be
+smaller, but not (in general) larger. A (hopefully) reasonable default
+font list is always appended to it; option \fB\-fn\fR.
+.Sp
+Each font can either be a standard X11 core font (\s-1XLFD\s0) name, with
+optional prefix \f(CW\*(C`x:\*(C'\fR or a Xft font (Compile \fIxft\fR), prefixed with \f(CW\*(C`xft:\*(C'\fR.
+.Sp
+In addition, each font can be prefixed with additional hints and
+specifications enclosed in square brackets (\f(CW\*(C`[]\*(C'\fR). The only available
+hint currently is \f(CW\*(C`codeset=codeset\-name\*(C'\fR, and this is only used for Xft
+fonts.
+.Sp
+For example, this font resource
+.Sp
+.Vb 5
+\& URxvt.font: 9x15bold,\e
+\& \-misc\-fixed\-bold\-r\-normal\-\-15\-140\-75\-75\-c\-90\-iso10646\-1,\e
+\& \-misc\-fixed\-medium\-r\-normal\-\-15\-140\-75\-75\-c\-90\-iso10646\-1, \e
+\& [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \e
+\& xft:Code2000:antialias=false
+.Ve
+.Sp
+specifies five fonts to be used. The first one is \f(CW\*(C`9x15bold\*(C'\fR (actually
+the iso8859\-1 version of the second font), which is the base font (because
+it is named first) and thus defines the character cell grid to be 9 pixels
+wide and 15 pixels high.
+.Sp
+The second font is just used to add additional unicode characters not in
+the base font, likewise the third, which is unfortunately non-bold, but
+the bold version of the font does contain fewer characters, so this is a
+useful supplement.
+.Sp
+The third font is an Xft font with aliasing turned off, and the characters
+are limited to the \fB\s-1JIS 0208\s0\fR codeset (i.e. japanese kanji). The font
+contains other characters, but we are not interested in them.
+.Sp
+The last font is a useful catch-all font that supplies most of the
+remaining unicode characters.
+.IP "\fBboldFont:\fR \fIfontlist\fR" 4
+.IX Item "boldFont: fontlist"
+.PD 0
+.IP "\fBitalicFont:\fR \fIfontlist\fR" 4
+.IX Item "italicFont: fontlist"
+.IP "\fBboldItalicFont:\fR \fIfontlist\fR" 4
+.IX Item "boldItalicFont: fontlist"
+.PD
+The font list to use for displaying \fBbold\fR, \fIitalic\fR or \fB\f(BIbold
+italic\fB\fR characters, respectively.
+.Sp
+If specified and non-empty, then the syntax is the same as for the
+\&\fBfont\fR\-resource, and the given font list will be used as is, which makes
+it possible to substitute completely different font styles for bold and
+italic.
+.Sp
+If unset (the default), a suitable font list will be synthesized by
+\&\*(L"morphing\*(R" the normal text font list into the desired shape. If that is
+not possible, replacement fonts of the desired shape will be tried.
+.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/blink font styles imply high
+intensity foreground/background colours. Disabling this option (\fBFalse\fR,
+option \fB+is\fR) disables this behaviour, the high intensity colours are not
+reachable.
+.IP "\fBtitle:\fR \fIstring\fR" 4
+.IX Item "title: string"
+Set window title string, the default title is the command-line
+specified after the \fB\-e\fR option, if any, otherwise the application
+name; option \fB\-title\fR.
+.IP "\fBiconName:\fR \fIstring\fR" 4
+.IX Item "iconName: string"
+Set the name used to label the window's icon or displayed in an icon
+manager window, it also sets the window's title unless it is explicitly
+set; option \fB\-n\fR.
+.IP "\fBmapAlert:\fR \fIboolean\fR" 4
+.IX Item "mapAlert: boolean"
+\&\fBTrue\fR: de-iconify (map) on receipt of a bell character. \fBFalse\fR: no
+de-iconify (map) on receipt of a bell character [default].
+.IP "\fBurgentOnBell:\fR \fIboolean\fR" 4
+.IX Item "urgentOnBell: boolean"
+\&\fBTrue\fR: set the urgency hint for the wm on receipt of a bell character.
+\&\fBFalse\fR: do not set the urgency hint [default].
+.Sp
+@@RXVT_NAME@@ resets the urgency hint on every focus change.
+.IP "\fBvisualBell:\fR \fIboolean\fR" 4
+.IX Item "visualBell: boolean"
+\&\fBTrue\fR: use visual bell on receipt of a bell character; option \fB\-vb\fR.
+\&\fBFalse\fR: no visual bell [default]; option \fB+vb\fR.
+.IP "\fBloginShell:\fR \fIboolean\fR" 4
+.IX Item "loginShell: boolean"
+\&\fBTrue\fR: start as a login shell by prepending a `\-' to \fBargv[0]\fR of
+the shell; option \fB\-ls\fR. \fBFalse\fR: start as a normal sub-shell
+[default]; option \fB+ls\fR.
+.IP "\fBmultiClickTime:\fR \fInumber\fR" 4
+.IX Item "multiClickTime: number"
+Specify the maximum time in milliseconds between multi-click select
+events. The default is 500 milliseconds; option \fB\-mc\fR.
+.IP "\fButmpInhibit:\fR \fIboolean\fR" 4
+.IX Item "utmpInhibit: boolean"
+\&\fBTrue\fR: inhibit writing record into the system log file \fButmp\fR;
+option \fB\-ut\fR. \fBFalse\fR: write record into the system log file \fButmp\fR
+[default]; option \fB+ut\fR.
+.IP "\fBprint-pipe:\fR \fIstring\fR" 4
+.IX Item "print-pipe: string"
+Specify a command pipe for vt100 printer [default \fI\fIlpr\fI\|(1)\fR]. Use
+\&\fBPrint\fR to initiate a screen dump to the printer and \fBCtrl-Print\fR or
+\&\fBShift-Print\fR to include the scrollback as well.
+.Sp
+The string will be interpreted as if typed into the shell as-is.
+.Sp
+Example:
+.Sp
+.Vb 1
+\& URxvt.print\-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
+.Ve
+.Sp
+This creates a new file in your home directory with the screen contents
+every time you hit \f(CW\*(C`Print\*(C'\fR.
+.IP "\fBscrollstyle:\fR \fImode\fR" 4
+.IX Item "scrollstyle: mode"
+Set scrollbar style to \fBrxvt\fR, \fBplain\fR, \fBnext\fR or \fBxterm\fR. \fBplain\fR is
+the author's favourite.
+.IP "\fBthickness:\fR \fInumber\fR" 4
+.IX Item "thickness: number"
+Set the scrollbar width in pixels.
+.IP "\fBscrollBar:\fR \fIboolean\fR" 4
+.IX Item "scrollBar: boolean"
+\&\fBTrue\fR: enable the scrollbar [default]; option \fB\-sb\fR. \fBFalse\fR:
+disable the scrollbar; option \fB+sb\fR.
+.IP "\fBscrollBar_right:\fR \fIboolean\fR" 4
+.IX Item "scrollBar_right: boolean"
+\&\fBTrue\fR: place the scrollbar on the right of the window; option \fB\-sr\fR.
+\&\fBFalse\fR: place the scrollbar on the left of the window; option \fB+sr\fR.
+.IP "\fBscrollBar_floating:\fR \fIboolean\fR" 4
+.IX Item "scrollBar_floating: boolean"
+\&\fBTrue\fR: display an rxvt scrollbar without a trough; option \fB\-st\fR.
+\&\fBFalse\fR: display an rxvt scrollbar with a trough; option \fB+st\fR.
+.IP "\fBscrollBar_align:\fR \fImode\fR" 4
+.IX Item "scrollBar_align: mode"
+Align the \fBtop\fR, \fBbottom\fR or \fBcentre\fR [default] of the scrollbar
+thumb with the pointer on middle button press/drag.
+.IP "\fBscrollTtyOutput:\fR \fIboolean\fR" 4
+.IX Item "scrollTtyOutput: boolean"
+\&\fBTrue\fR: scroll to bottom when tty receives output; option \fB\-si\fR.
+\&\fBFalse\fR: do not scroll to bottom when tty receives output; option
+\&\fB+si\fR.
+.IP "\fBscrollWithBuffer:\fR \fIboolean\fR" 4
+.IX Item "scrollWithBuffer: boolean"
+\&\fBTrue\fR: scroll with scrollback buffer when tty receives new lines (i.e.
+try to show the same lines) and \fBscrollTtyOutput\fR is False; option
+\&\fB\-sw\fR. \fBFalse\fR: do not scroll with scrollback buffer when tty receives
+new lines; option \fB+sw\fR.
+.IP "\fBscrollTtyKeypress:\fR \fIboolean\fR" 4
+.IX Item "scrollTtyKeypress: boolean"
+\&\fBTrue\fR: scroll to bottom when a non-special key is pressed. Special keys
+are those which are intercepted by rxvt-unicode for special handling and
+are not passed onto the shell; option \fB\-sk\fR. \fBFalse\fR: do not scroll to
+bottom when a non-special key is pressed; option \fB+sk\fR.
+.IP "\fBsaveLines:\fR \fInumber\fR" 4
+.IX Item "saveLines: number"
+Save \fInumber\fR lines in the scrollback buffer [default 1000]; option \fB\-sl\fR.
+.IP "\fBinternalBorder:\fR \fInumber\fR" 4
+.IX Item "internalBorder: number"
+Internal border of \fInumber\fR pixels. This resource is limited to 100;
+option \fB\-b\fR.
+.IP "\fBexternalBorder:\fR \fInumber\fR" 4
+.IX Item "externalBorder: number"
+External border of \fInumber\fR pixels. This resource is limited to 100;
+option \fB\-w\fR, \fB\-bw\fR, \fB\-borderwidth\fR.
+.IP "\fBborderLess:\fR \fIboolean\fR" 4
+.IX Item "borderLess: boolean"
+Set \s-1MWM\s0 hints to request a borderless window, i.e. if honoured by the
+\&\s-1WM,\s0 the rxvt-unicode window will not have window decorations; option \fB\-bl\fR.
+.IP "\fBskipBuiltinGlyphs:\fR \fIboolean\fR" 4
+.IX Item "skipBuiltinGlyphs: boolean"
+Compile \fIfrills\fR: 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 \fB\-sbg\fR.
+.IP "\fBtermName:\fR \fItermname\fR" 4
+.IX Item "termName: termname"
+Specifies the terminal type name to be set in the \fB\s-1TERM\s0\fR environment
+variable; option \fB\-tn\fR.
+.IP "\fBlineSpace:\fR \fInumber\fR" 4
+.IX Item "lineSpace: number"
+Specifies number of lines (pixel height) to insert between each row of
+the display [default 0]; option \fB\-lsp\fR.
+.IP "\fBmeta8:\fR \fIboolean\fR" 4
+.IX Item "meta8: boolean"
+\&\fBTrue\fR: handle Meta (Alt) + keypress to set the 8th bit. \fBFalse\fR:
+handle Meta (Alt) + keypress as an escape prefix [default].
+.IP "\fBmouseWheelScrollPage:\fR \fIboolean\fR" 4
+.IX Item "mouseWheelScrollPage: boolean"
+\&\fBTrue\fR: the mouse wheel scrolls a page full. \fBFalse\fR: the mouse wheel
+scrolls five lines [default].
+.IP "\fBpastableTabs:\fR \fIboolean\fR" 4
+.IX Item "pastableTabs: boolean"
+\&\fBTrue\fR: store tabs as wide characters. \fBFalse\fR: interpret tabs as cursor
+movement only; option \f(CW\*(C`\-ptab\*(C'\fR.
+.IP "\fBcursorBlink:\fR \fIboolean\fR" 4
+.IX Item "cursorBlink: boolean"
+\&\fBTrue\fR: blink the cursor. \fBFalse\fR: do not blink the cursor [default];
+option \fB\-bc\fR.
+.IP "\fBcursorUnderline:\fR \fIboolean\fR" 4
+.IX Item "cursorUnderline: boolean"
+\&\fBTrue\fR: Make the cursor underlined. \fBFalse\fR: Make the cursor a box [default];
+option \fB\-uc\fR.
+.IP "\fBpointerBlank:\fR \fIboolean\fR" 4
+.IX Item "pointerBlank: boolean"
+\&\fBTrue\fR: blank the pointer when a key is pressed or after a set number
+of seconds of inactivity. \fBFalse\fR: the pointer is always visible
+[default].
+.IP "\fBpointerColor:\fR \fIcolour\fR" 4
+.IX Item "pointerColor: colour"
+Mouse pointer foreground colour.
+.IP "\fBpointerColor2:\fR \fIcolour\fR" 4
+.IX Item "pointerColor2: colour"
+Mouse pointer background colour.
+.IP "\fBpointerShape:\fR \fIstring\fR" 4
+.IX Item "pointerShape: string"
+Compile \fIfrills\fR: Specifies the name of the mouse pointer shape
+[default \fBxterm\fR]. See the macros in the \fBX11/cursorfont.h\fR include
+file for possible values (omit the \f(CW\*(C`XC_\*(C'\fR prefix).
+.IP "\fBpointerBlankDelay:\fR \fInumber\fR" 4
+.IX Item "pointerBlankDelay: number"
+Specifies number of seconds before blanking the pointer [default 2]. Use a
+large number (e.g. \f(CW987654321\fR) to effectively disable the timeout.
+.IP "\fBbackspacekey:\fR \fIstring\fR" 4
+.IX Item "backspacekey: string"
+The string to send when the backspace key is pressed. If set to \fB\s-1DEC\s0\fR
+or unset it will send \fBDelete\fR (code 127) or, with control, \fBBackspace\fR
+(code 8) \- which can be reversed with the appropriate \s-1DEC\s0 private mode
+escape sequence.
+.IP "\fBdeletekey:\fR \fIstring\fR" 4
+.IX Item "deletekey: string"
+The string to send when the delete key (not the keypad delete key) is
+pressed. If unset it will send the sequence traditionally associated
+with the \fBExecute\fR key.
+.IP "\fBcutchars:\fR \fIstring\fR" 4
+.IX Item "cutchars: string"
+The characters used as delimiters for double-click word selection
+(whitespace delimiting is added automatically if resource is given).
+.Sp
+When the perl selection extension is in use (the default if compiled
+in, see the @@RXVT_NAME@@\fIperl\fR\|(3) manpage), a suitable regex using these
+characters will be created (if the resource exists, otherwise, no regex
+will be created). In this mode, characters outside \s-1ISO\-8859\-1\s0 can be used.
+.Sp
+When the selection extension is not used, only \s-1ISO\-8859\-1\s0 characters can
+be used. If not specified, the built-in default is used:
+.Sp
+\&\fB\s-1BACKSLASH\s0 `"'&()*,;<=>?@[]^{|}\fR
+.IP "\fBpreeditType:\fR \fIstyle\fR" 4
+.IX Item "preeditType: style"
+\&\fBOnTheSpot\fR, \fBOverTheSpot\fR, \fBOffTheSpot\fR, \fBRoot\fR; option \fB\-pt\fR.
+.IP "\fBinputMethod:\fR \fIname\fR" 4
+.IX Item "inputMethod: name"
+\&\fIname\fR of inputMethod to use; option \fB\-im\fR.
+.IP "\fBimLocale:\fR \fIname\fR" 4
+.IX Item "imLocale: name"
+The locale to use for opening the \s-1IM.\s0 You can use an \f(CW\*(C`LC_CTYPE\*(C'\fR of e.g.
+\&\f(CW\*(C`de_DE.UTF\-8\*(C'\fR for normal text processing but \f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR for the
+input extension to be able to input japanese characters while staying in
+another locale; option \fB\-imlocale\fR.
+.IP "\fBimFont:\fR \fIfontset\fR" 4
+.IX Item "imFont: fontset"
+Specify the font-set used for \s-1XIM\s0 styles \f(CW\*(C`OverTheSpot\*(C'\fR or
+\&\f(CW\*(C`OffTheSpot\*(C'\fR. It must be a standard X font set (\s-1XLFD\s0 patterns separated
+by commas), i.e. it's not in the same format as the other font lists used
+in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
+found, preferably one or two pixels differing in size to the base font.
+option \fB\-imfont\fR.
+.IP "\fBtripleclickwords:\fR \fIboolean\fR" 4
+.IX Item "tripleclickwords: boolean"
+Change the meaning of triple-click selection with the left mouse
+button. Instead of selecting a full line it will extend the selection to
+the end of the logical line only; option \fB\-tcw\fR.
+.IP "\fBinsecure:\fR \fIboolean\fR" 4
+.IX Item "insecure: boolean"
+Enables \*(L"insecure\*(R" mode. Rxvt-unicode offers some escape sequences that
+echo arbitrary strings like the icon name or the locale. This could be
+abused if somebody gets 8\-bit\-clean access to your display, whether
+through a mail client displaying mail bodies unfiltered or through
+\&\fIwrite\fR\|(1) or any other means. Therefore, these sequences are disabled by
+default. (Note that many other terminals, including xterm, have these
+sequences enabled by default, which doesn't make it safer, though).
+.Sp
+You can enable them by setting this boolean resource or specifying
+\&\fB\-insecure\fR as an option. At the moment, this enables display-answer,
+locale, findfont, icon label and window title requests.
+.IP "\fBmodifier:\fR \fImodifier\fR" 4
+.IX Item "modifier: modifier"
+Set the key to be interpreted as the Meta key to: \fBalt\fR, \fBmeta\fR,
+\&\fBhyper\fR, \fBsuper\fR, \fBmod1\fR, \fBmod2\fR, \fBmod3\fR, \fBmod4\fR, \fBmod5\fR; option
+\&\fB\-mod\fR.
+.IP "\fBanswerbackString:\fR \fIstring\fR" 4
+.IX Item "answerbackString: string"
+Specify the reply rxvt-unicode sends to the shell when an \s-1ENQ \s0(control-E)
+character is passed through. It may contain escape values as described
+in the entry on \fBkeysym\fR following.
+.IP "\fBsecondaryScreen:\fR \fIboolean\fR" 4
+.IX Item "secondaryScreen: boolean"
+Turn on/off secondary screen (default enabled).
+.IP "\fBsecondaryScroll:\fR \fIboolean\fR" 4
+.IX Item "secondaryScroll: boolean"
+Turn on/off secondary screen scroll (default enabled). If this
+option is enabled, scrolls on the secondary screen will change the
+scrollback buffer and, when secondaryScreen is off, switching
+to/from the secondary screen will instead scroll the screen up.
+.IP "\fBhold\fR: \fIboolean\fR" 4
+.IX Item "hold: boolean"
+Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
+will not immediately destroy its window when the program executed within
+it exits. Instead, it will wait till it is being killed or closed by the
+user.
+.IP "\fBchdir\fR: \fIpath\fR" 4
+.IX Item "chdir: path"
+Sets the working directory for the shell (or the command specified via
+\&\fB\-e\fR). The \fIpath\fR must be an absolute path and it must exist for
+@@RXVT_NAME@@ to start. If it isn't specified then the current working
+directory will be used; option \fB\-cd\fR.
+.IP "\fBkeysym.\fR\fIsym\fR: \fIaction\fR" 4
+.IX Item "keysym.sym: action"
+Compile \fIfrills\fR: Associate \fIaction\fR with keysym \fIsym\fR. The intervening
+resource name \fBkeysym.\fR cannot be omitted.
+.Sp
+Using this resource, you can map key combinations such as
+\&\f(CW\*(C`Ctrl\-Shift\-BackSpace\*(C'\fR to various actions, such as outputting a different
+string than would normally result from that combination, making the
+terminal scroll up or down the way you want it, or any other thing an
+extension might provide.
+.Sp
+The key combination that triggers the action, \fIsym\fR, has the following format:
+.Sp
+.Vb 1
+\& (modifiers\-)key
+.Ve
+.Sp
+Where \fImodifiers\fR can be any combination of \fBISOLevel3\fR, \fBAppKeypad\fR,
+\&\fBControl\fR, \fBNumLock\fR, \fBShift\fR, \fBMeta\fR, \fBLock\fR, \fBMod1\fR, \fBMod2\fR,
+\&\fBMod3\fR, \fBMod4\fR, \fBMod5\fR, and the abbreviated \fBI\fR, \fBK\fR, \fBC\fR, \fBN\fR,
+\&\fBS\fR, \fBM\fR, \fBA\fR, \fBL\fR, \fB1\fR, \fB2\fR, \fB3\fR, \fB4\fR, \fB5\fR.
+.Sp
+The \fBNumLock\fR, \fBMeta\fR and \fBISOLevel3\fR modifiers are usually aliased to
+whatever modifier the NumLock key, Meta/Alt keys or \s-1ISO\s0 Level3 Shift/AltGr
+keys are being mapped. \fBAppKeypad\fR is a synthetic modifier mapped to the
+current application keymap mode state.
+.Sp
+Due the the large number of modifier combinations, a key mapping will
+match if \fIat least\fR the specified identifiers are being set, and no other
+key mappings with those and more bits are being defined. That means that
+defining a mapping for \f(CW\*(C`a\*(C'\fR will automatically provide definitions for
+\&\f(CW\*(C`Meta\-a\*(C'\fR, \f(CW\*(C`Shift\-a\*(C'\fR and so on, unless some of those are defined mappings
+themselves. See the \f(CW\*(C`builtin:\*(C'\fR action, below, for a way to work around
+this when this is a problem.
+.Sp
+The spelling of \fIkey\fR depends on your implementation of X. An easy way to
+find a key name is to use the \fBxev\fR(1) command. You can find a list by
+looking for the \f(CW\*(C`XK_\*(C'\fR macros in the \fBX11/keysymdef.h\fR include file (omit
+the \f(CW\*(C`XK_\*(C'\fR prefix). Alternatively you can specify \fIkey\fR by its hex keysym
+value (\fB0x0000 \- 0xFFFF\fR).
+.Sp
+As with any resource value, the \fIaction\fR string may contain backslash
+escape sequences (\f(CW\*(C`\en\*(C'\fR: newline, \f(CW\*(C`\e\e\*(C'\fR: backslash, \f(CW\*(C`\e000\*(C'\fR: octal
+number), see \s-1RESOURCES\s0 in \f(CW\*(C`man 7 X\*(C'\fR for further details.
+.Sp
+An action starts with an action prefix that selects a certain type
+of action, followed by a colon. An action string without colons is
+interpreted as a literal string to pass to the tty (as if it was
+prefixed with \f(CW\*(C`string:\*(C'\fR).
+.Sp
+The following action prefixes are known \- extensions can provide
+additional prefixes:
+.RS 4
+.IP "string:STRING" 4
+.IX Item "string:STRING"
+If the \fIaction\fR starts with \f(CW\*(C`string:\*(C'\fR (or otherwise contains no colons),
+then the remaining \f(CW\*(C`STRING\*(C'\fR will be passed to the program running in the
+terminal. For example, you could replace whatever Shift-Tab outputs by the
+string \f(CW\*(C`echo rm \-rf /\*(C'\fR followed by a newline:
+.Sp
+.Vb 1
+\& URxvt.keysym.Shift\-Tab: string:echo rm \-rf /\en
+.Ve
+.Sp
+This could in theory be used to completely redefine your keymap.
+.Sp
+In addition, for actions of this type, you can define a range of
+keysyms in one shot by loading the \f(CW\*(C`keysym\-list\*(C'\fR perl extension and
+providing an \fIaction\fR with pattern \fBlist/PREFIX/MIDDLE/SUFFIX\fR, where
+the delimiter `/' should be a character not used by the strings.
+.Sp
+Its usage can be demonstrated by an example:
+.Sp
+.Vb 1
+\& URxvt.keysym.M\-C\-0x61: list|\e033<|abc|>
+.Ve
+.Sp
+The above line is equivalent to the following three lines:
+.Sp
+.Vb 3
+\& URxvt.keysym.Meta\-Control\-0x61: string:\e033<a>
+\& URxvt.keysym.Meta\-Control\-0x62: string:\e033<b>
+\& URxvt.keysym.Meta\-Control\-0x63: string:\e033<c>
+.Ve
+.IP "command:STRING" 4
+.IX Item "command:STRING"
+If \fIaction\fR takes the form of \f(CW\*(C`command:STRING\*(C'\fR, the specified \fB\s-1STRING\s0\fR
+is interpreted and executed as @@RXVT_NAME@@'s control sequence (basically
+the opposite of \f(CW\*(C`string:\*(C'\fR \- instead of sending it to the program running
+in the terminal, it will be treated as if it were program output). This is
+most useful to feed command sequences into @@RXVT_NAME@@.
+.Sp
+For example the following means "change the current locale to \f(CW\*(C`zh_CN.GBK\*(C'\fR
+when Control-Meta-c is being pressed":
+.Sp
+.Vb 1
+\& URxvt.keysym.M\-C\-c: command:\e033]701;zh_CN.GBK\e007
+.Ve
+.Sp
+The following example will map Control\-Meta\-1 and Control\-Meta\-2 to
+the fonts \f(CW\*(C`suxuseuro\*(C'\fR and \f(CW\*(C`9x15bold\*(C'\fR, so you can have some limited
+font-switching at runtime:
+.Sp
+.Vb 2
+\& URxvt.keysym.M\-C\-1: command:\e033]50;suxuseuro\e007
+\& URxvt.keysym.M\-C\-2: command:\e033]50;9x15bold\e007
+.Ve
+.Sp
+Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
+info):
+.Sp
+.Vb 2
+\& URxvt.keysym.M\-C\-3: command:\e033[8;25;80t
+\& URxvt.keysym.M\-C\-4: command:\e033[8;48;110t
+.Ve
+.IP "builtin:" 4
+.IX Item "builtin:"
+The builtin action is the action that @@RXVT_NAME@@ would execute if no
+key binding existed for the key combination. The obvious use is to undo
+the effect of existing bindings. The not so obvious use is to reinstate
+bindings when another binding overrides too many modifiers.
+.Sp
+For example if you overwrite the \f(CW\*(C`Insert\*(C'\fR key you will disable
+@@RXVT_NAME@@'s \f(CW\*(C`Shift\-Insert\*(C'\fR mapping. To re-enable that, you can poke
+\&\*(L"holes\*(R" into the user-defined keymap using the \f(CW\*(C`builtin:\*(C'\fR replacement:
+.Sp
+.Vb 2
+\& URxvt.keysym.Insert: <my insert key sequence>
+\& URxvt.keysym.S\-Insert: builtin:
+.Ve
+.Sp
+The first line defines a mapping for \f(CW\*(C`Insert\*(C'\fR and \fIany\fR combination
+of modifiers. The second line re-establishes the default mapping for
+\&\f(CW\*(C`Shift\-Insert\*(C'\fR.
+.IP "builtin-string:" 4
+.IX Item "builtin-string:"
+This action is mainly useful to restore string mappings for keys that
+have predefined actions in @@RXVT_NAME@@. The exact semantics are a bit
+difficult to explain \- basically, this action will send the string to the
+application that would be sent if @@RXVT_NAME@@ wouldn't have a built-in
+action for it.
+.Sp
+An example might make it clearer: @@RXVT_NAME@@ normally pastes the
+selection when you press \f(CW\*(C`Shift\-Insert\*(C'\fR. With the following bindings, it
+would instead emit the (undocumented, but what applications running in the
+terminal might expect) sequence \f(CW\*(C`ESC [ 2 $\*(C'\fR instead:
+.Sp
+.Vb 2
+\& URxvt.keysym.S\-Insert: builtin\-string:
+\& URxvt.keysym.C\-S\-Insert: builtin:
+.Ve
+.Sp
+The first line disables the paste functionality for that key
+combination, and the second reinstates the default behaviour for
+\&\f(CW\*(C`Control\-Shift\-Insert\*(C'\fR, which would otherwise be overridden.
+.Sp
+Similarly, to let applications gain access to the \f(CW\*(C`C\-M\-c\*(C'\fR (copy to
+clipboard) and \f(CW\*(C`C\-M\-v\*(C'\fR (paste clipboard) key combination, you can do
+this:
+.Sp
+.Vb 2
+\& URxvt.keysym.C\-M\-c: builtin\-string:
+\& URxvt.keysym.C\-M\-v: builtin\-string:
+.Ve
+.IP "\s-1EXTENSION:STRING\s0" 4
+.IX Item "EXTENSION:STRING"
+An action of this form invokes the action \fB\s-1STRING\s0\fR, if any, provided
+by the @@RXVT_NAME@@\fIperl\fR\|(3) extension \fB\s-1EXTENSION\s0\fR. The extension will
+be loaded automatically if necessary.
+.Sp
+Not all extensions define actions, but popular extensions that do
+include the \fIselection\fR and \fImatcher\fR extensions (documented in their
+own manpages, @@RXVT_NAME@@\-\fIselection\fR\|(1) and @@RXVT_NAME@@\-\fImatcher\fR\|(1),
+respectively).
+.Sp
+From the silly examples department, this will rot13\-\*(L"encrypt\*(R"
+@@RXVT_NAME@@'s selection when Alt-Control-c is pressed on typical \s-1PC\s0
+keyboards:
+.Sp
+.Vb 1
+\& URxvt.keysym.M\-C\-c: selection:rot13
+.Ve
+.IP "perl:STRING *DEPRECATED*" 4
+.IX Item "perl:STRING *DEPRECATED*"
+This is a deprecated way of invoking commands provided by perl
+extensions. It is still supported, but should not be used anymore.
+.RE
+.RS 4
+.RE
+.IP "\fBperl-ext-common\fR: \fIstring\fR" 4
+.IX Item "perl-ext-common: string"
+.PD 0
+.IP "\fBperl-ext\fR: \fIstring\fR" 4
+.IX Item "perl-ext: string"
+.PD
+Comma-separated list(s) of perl extension scripts (default: \f(CW\*(C`default\*(C'\fR) to
+use in this terminal instance; option \fB\-pe\fR.
+.Sp
+Extension names can be prefixed with a \f(CW\*(C`\-\*(C'\fR sign to prohibit using
+them. This can be useful to selectively disable some extensions loaded
+by default, or specified via the \f(CW\*(C`perl\-ext\-common\*(C'\fR resource. For
+example, \f(CW\*(C`default,\-selection\*(C'\fR will use all the default extensions except
+\&\f(CW\*(C`selection\*(C'\fR.
+.Sp
+The default set includes the \f(CW\*(C`selection\*(C'\fR, \f(CW\*(C`option\-popup\*(C'\fR,
+\&\f(CW\*(C`selection\-popup\*(C'\fR, \f(CW\*(C`readline\*(C'\fR and \f(CW\*(C`searchable\-scrollback\*(C'\fR
+extensions, and extensions which are mentioned in \fBkeysym\fR resources.
+.Sp
+Any extension such that a corresponding resource is given on the
+command line is automatically appended to \fBperl-ext\fR.
+.Sp
+Each extension is looked up in the library directories, loaded if
+necessary, and bound to the current terminal instance. When the library
+search path contains multiple extension files of the same name, then the
+first one found will be used.
+.Sp
+If both of these resources are the empty string, then the perl interpreter
+will not be initialized. The rationale for having two options is that
+\&\fBperl-ext-common\fR will be used for extensions that should be available to
+all instances, while \fBperl-ext\fR is used for specific instances.
+.IP "\fBperl-eval\fR: \fIstring\fR" 4
+.IX Item "perl-eval: string"
+Perl code to be evaluated when all extensions have been registered. See
+the @@RXVT_NAME@@\fIperl\fR\|(3) manpage.
+.IP "\fBperl-lib\fR: \fIpath\fR" 4
+.IX Item "perl-lib: path"
+Colon-separated list of additional directories that hold extension
+scripts. When looking for perl extensions, @@RXVT_NAME@@ will first look
+in these directories, then in \f(CW$URXVT_PERL_LIB\fR, \fI\f(CI$HOME\fI/.urxvt/ext\fR and
+lastly in \fI@@RXVT_LIBDIR@@/urxvt/perl/\fR.
+.Sp
+See the @@RXVT_NAME@@\fIperl\fR\|(3) manpage.
+.IP "\fBselection.pattern\-\f(BIidx\fB\fR: \fIperl-regex\fR" 4
+.IX Item "selection.pattern-idx: perl-regex"
+Additional selection patterns, see the @@RXVT_NAME@@\fIperl\fR\|(3) manpage for
+details.
+.IP "\fBselection-autotransform.\f(BIidx\fB\fR: \fIperl-transform\fR" 4
+.IX Item "selection-autotransform.idx: perl-transform"
+Selection auto-transform patterns, see the @@RXVT_NAME@@\fIperl\fR\|(3) manpage
+for details.
+.IP "\fBsearchable-scrollback:\fR \fIkeysym\fR *DEPRECATED*" 4
+.IX Item "searchable-scrollback: keysym *DEPRECATED*"
+This resource is deprecated and will be removed. Use a \fBkeysym\fR resource
+instead, e.g.:
+.Sp
+.Vb 1
+\& URxvt.keysym.M\-s: searchable\-scrollback:start
+.Ve
+.IP "\fBurl-launcher\fR: \fIstring\fR" 4
+.IX Item "url-launcher: string"
+Specifies the program to be started with a \s-1URL\s0 argument. Used by the
+\&\f(CW\*(C`selection\-popup\*(C'\fR and \f(CW\*(C`matcher\*(C'\fR perl extensions.
+.IP "\fBtransient-for\fR: \fIwindowid\fR" 4
+.IX Item "transient-for: windowid"
+Compile \fIfrills\fR: Sets the \s-1WM_TRANSIENT_FOR\s0 property to the given window id.
+.IP "\fBoverride-redirect\fR: \fIboolean\fR" 4
+.IX Item "override-redirect: boolean"
+Compile \fIfrills\fR: Sets override-redirect for the terminal window, making
+it almost invisible to window managers; option \fB\-override\-redirect\fR.
+.IP "\fBiso14755:\fR \fIboolean\fR" 4
+.IX Item "iso14755: boolean"
+Turn on/off \s-1ISO 14755 \s0(default enabled).
+.IP "\fBiso14755_52:\fR \fIboolean\fR" 4
+.IX Item "iso14755_52: boolean"
+Turn on/off \s-1ISO 14755 5.2\s0 mode (default enabled).
+.SH "BACKGROUND IMAGE OPTIONS AND RESOURCES"
+.IX Header "BACKGROUND IMAGE OPTIONS AND RESOURCES"
+.IP "\fB\-pixmap\fR \fIfile[;oplist]\fR" 4
+.IX Item "-pixmap file[;oplist]"
+.PD 0
+.IP "\fBbackgroundPixmap:\fR \fIfile[;oplist]\fR" 4
+.IX Item "backgroundPixmap: file[;oplist]"
+.PD
+Compile \fIpixbuf\fR: Use the specified image file as the window's
+background and also optionally specify a colon separated list of
+operations to modify it. Note that you may need to quote the \f(CW\*(C`;\*(C'\fR
+character when using the command line option, as \f(CW\*(C`;\*(C'\fR is usually a
+metacharacter in shells. Supported operations are:
+.RS 4
+.IP "\fBWxH+X+Y\fR" 4
+.IX Item "WxH+X+Y"
+sets scale and position. \fB\*(L"W\*(R" / \*(L"H\*(R"\fR specify the horizontal/vertical
+scale (percent), and \fB\*(L"X\*(R" / \*(L"Y\*(R"\fR locate the image centre (percent). A
+scale of 0 disables scaling.
+.IP "\fBop=tile\fR" 4
+.IX Item "op=tile"
+enables tiling
+.IP "\fBop=keep\-aspect\fR" 4
+.IX Item "op=keep-aspect"
+maintain the image aspect ratio when scaling
+.IP "\fBop=root\-align\fR" 4
+.IX Item "op=root-align"
+use the position of the terminal window relative to the root window as
+the image offset, simulating a root window background
+.RE
+.RS 4
+.Sp
+The default scale and position setting is \f(CW\*(C`100x100+50+50\*(C'\fR.
+Alternatively, a predefined set of templates can be used to achieve
+the most common setups:
+.IP "\fBstyle=tiled\fR" 4
+.IX Item "style=tiled"
+the image is tiled with no scaling. Equivalent to 0x0+0+0:op=tile
+.IP "\fBstyle=aspect\-stretched\fR" 4
+.IX Item "style=aspect-stretched"
+the image is scaled to fill the whole window maintaining the aspect
+ratio and centered. Equivalent to 100x100+50+50:op=keep\-aspect
+.IP "\fBstyle=stretched\fR" 4
+.IX Item "style=stretched"
+the image is scaled to fill the whole window. Equivalent to 100x100
+.IP "\fBstyle=centered\fR" 4
+.IX Item "style=centered"
+the image is centered with no scaling. Equivalent to 0x0+50+50
+.IP "\fBstyle=root\-tiled\fR" 4
+.IX Item "style=root-tiled"
+the image is tiled with no scaling and using 'root' positioning.
+Equivalent to 0x0:op=tile:op=root\-align
+.RE
+.RS 4
+.Sp
+If multiple templates are specified the last one wins. Note that a
+template overrides all the scale, position and operations settings.
+.Sp
+If used in conjunction with pseudo-transparency, the specified pixmap
+will be blended over the transparent background using alpha-blending.
+.RE
+.IP "\fB\-tr\fR|\fB+tr\fR" 4
+.IX Item "-tr|+tr"
+.PD 0
+.IP "\fBtransparent:\fR \fIboolean\fR" 4
+.IX Item "transparent: boolean"
+.PD
+Turn on/off pseudo-transparency by using the root pixmap as background.
+.Sp
+\&\fB\-ip\fR (\fBinheritPixmap\fR) is still accepted as an obsolete alias but
+will be removed in future versions.
+.IP "\fB\-tint\fR \fIcolour\fR" 4
+.IX Item "-tint colour"
+.PD 0
+.IP "\fBtintColor:\fR \fIcolour\fR" 4
+.IX Item "tintColor: colour"
+.PD
+Tint the transparent background with the given colour. Note that a
+black tint yields a completely black image while a white tint yields
+the image unchanged.
+.IP "\fB\-sh\fR \fInumber\fR" 4
+.IX Item "-sh number"
+.PD 0
+.IP "\fBshading:\fR \fInumber\fR" 4
+.IX Item "shading: number"
+.PD
+Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
+A value of 100 means no shading.
+.IP "\fB\-blr\fR \fIHxV\fR" 4
+.IX Item "-blr HxV"
+.PD 0
+.IP "\fBblurRadius:\fR \fIHxV\fR" 4
+.IX Item "blurRadius: HxV"
+.PD
+Apply gaussian blur with the specified radius to the transparent
+background. If a single number is specified, the vertical and
+horizontal radii are considered to be the same. Setting one of the
+radii to 1 and the other to a large number creates interesting effects
+on some backgrounds. The maximum radius value is 128. An horizontal or
+vertical radius of 0 disables blurring.
+.IP "\fBpath:\fR \fIpath\fR" 4
+.IX Item "path: path"
+Specify the colon-delimited search path for finding background image files.
+.SH "THE SCROLLBAR"
+.IX Header "THE SCROLLBAR"
+Lines of text that scroll off the top of the \fB@@RXVT_NAME@@\fR window
+(resource: \fBsaveLines\fR) and can be scrolled back using the scrollbar
+or by keystrokes. The normal \fB@@RXVT_NAME@@\fR scrollbar has arrows and
+its behaviour is fairly intuitive. The \fBxterm-scrollbar\fR is without
+arrows and its behaviour mimics that of \fIxterm\fR
+.PP
+Scroll down with \fBButton1\fR (\fBxterm-scrollbar\fR) or \fBShift-Next\fR.
+Scroll up with \fBButton3\fR (\fBxterm-scrollbar\fR) or \fBShift-Prior\fR.
+Continuous scroll with \fBButton2\fR.
+.SH "MOUSE REPORTING"
+.IX Header "MOUSE REPORTING"
+To temporarily override mouse reporting, for either the scrollbar or
+the normal text selection/insertion, hold either the Shift or the Meta
+(Alt) key while performing the desired mouse action.
+.PP
+If mouse reporting mode is active, the normal scrollbar actions are
+disabled \*(-- on the assumption that we are using a fullscreen
+application. Instead, pressing Button1 and Button3 sends \fB\s-1ESC\s0 [ 6 ~\fR
+(Next) and \fB\s-1ESC\s0 [ 5 ~\fR (Prior), respectively. Similarly, clicking on the
+up and down arrows sends \fB\s-1ESC\s0 [ A\fR (Up) and \fB\s-1ESC\s0 [ B\fR (Down),
+respectively.
+.SH "THE SELECTION: SELECTING AND PASTING TEXT"
+.IX Header "THE SELECTION: SELECTING AND PASTING TEXT"
+The behaviour of text selection and insertion/pasting mechanism is similar
+to \fIxterm\fR(1).
+.IP "\fBSelecting\fR:" 4
+.IX Item "Selecting:"
+Left click at the beginning of the region, drag to the end of the region
+and release; Right click to extend the marked region; Left double-click
+to select a word; Left triple-click to select the entire logical line
+(which can span multiple screen lines), unless modified by resource
+\&\fBtripleclickwords\fR.
+.Sp
+Starting a selection while pressing the \fBMeta\fR key (or \fBMeta+Ctrl\fR keys)
+(Compile: \fIfrills\fR) will create a rectangular selection instead of a
+normal one. In this mode, every selected row becomes its own line in the
+selection, and trailing whitespace is visually underlined and removed from
+the selection.
+.IP "\fBPasting\fR:" 4
+.IX Item "Pasting:"
+Pressing and releasing the Middle mouse button in an \fB@@RXVT_NAME@@\fR
+window causes the value of the \s-1PRIMARY\s0 selection (or \s-1CLIPBOARD\s0 with the
+\&\fBMeta\fR modifier) to be inserted as if it had been typed on the keyboard.
+.Sp
+Pressing \fBShift-Insert\fR causes the value of the \s-1PRIMARY\s0 selection to be
+inserted too.
+.Sp
+rxvt-unicode also provides the bindings \fBCtrl-Meta-c\fR and
+<Ctrl\-Meta\-v> to interact with the \s-1CLIPBOARD\s0 selection. The first
+binding causes the value of the internal selection to be copied to the
+\&\s-1CLIPBOARD\s0 selection, while the second binding causes the value of the
+\&\s-1CLIPBOARD\s0 selection to be inserted.
+.SH "CHANGING FONTS"
+.IX Header "CHANGING FONTS"
+Changing fonts (or font sizes, respectively) via the keypad is not yet
+supported in rxvt-unicode. Bug me if you need this.
+.PP
+You can, however, switch fonts at runtime using escape sequences, e.g.:
+.PP
+.Vb 1
+\& printf \*(Aq\ee]710;%s\e007\*(Aq "9x15bold,xft:Kochi Gothic"
+.Ve
+.PP
+You can use keyboard shortcuts, too:
+.PP
+.Vb 2
+\& URxvt.keysym.M\-C\-1: command:\e033]710;suxuseuro\e007\e033]711;suxuseuro\e007
+\& URxvt.keysym.M\-C\-2: command:\e033]710;9x15bold\e007\e033]711;9x15bold\e007
+.Ve
+.PP
+rxvt-unicode will automatically re-apply these fonts to the output so far.
+.SH "ISO 14755 SUPPORT"
+.IX Header "ISO 14755 SUPPORT"
+\&\s-1ISO 14755\s0 is a standard for entering and viewing unicode characters
+and character codes using the keyboard. It consists of 4 parts. The
+first part is available if rxvt-unicode has been compiled with
+\&\f(CW\*(C`\-\-enable\-frills\*(C'\fR, the rest is available when rxvt-unicode was compiled
+with \f(CW\*(C`\-\-enable\-iso14755\*(C'\fR.
+.IP "\(bu" 4
+5.1: Basic method
+.Sp
+This allows you to enter unicode characters using their hexcode.
+.Sp
+Start by pressing and holding both \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR, then enter
+hex-digits (between one and six). Releasing \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR will
+commit the character as if it were typed directly. While holding down
+\&\f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR you can also enter multiple characters by pressing
+\&\f(CW\*(C`Space\*(C'\fR, which will commit the current character and lets you start a new
+one.
+.Sp
+As an example of use, imagine a business card with a japanese e\-mail
+address, which you cannot type. Fortunately, the card has the e\-mail
+address printed as hexcodes, e.g. \f(CW\*(C`671d 65e5\*(C'\fR. You can enter this easily
+by pressing \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR, followed by \f(CW\*(C`6\-7\-1\-D\-SPACE\-6\-5\-E\-5\*(C'\fR,
+followed by releasing the modifier keys.
+.IP "\(bu" 4
+5.2: Keyboard symbols entry method
+.Sp
+This mode lets you input characters representing the keycap symbols of
+your keyboard, if representable in the current locale encoding.
+.Sp
+Start by pressing \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR together, then releasing
+them. The next special key (cursor keys, home etc.) you enter will not
+invoke its usual function but instead will insert the corresponding
+keycap symbol. The symbol will only be entered when the key has been
+released, otherwise pressing e.g. \f(CW\*(C`Shift\*(C'\fR would enter the symbol for
+\&\f(CW\*(C`ISO Level 2 Switch\*(C'\fR, although your intention might have been to enter a
+reverse tab (Shift-Tab).
+.IP "\(bu" 4
+5.3: Screen-selection entry method
+.Sp
+While this is implemented already (it's basically the selection
+mechanism), it could be extended by displaying a unicode character map.
+.IP "\(bu" 4
+5.4: Feedback method for identifying displayed characters for later input
+.Sp
+This method lets you display the unicode character code associated with
+characters already displayed.
+.Sp
+You enter this mode by holding down \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR together, then
+pressing and holding the left mouse button and moving around. The unicode
+hex code(s) (it might be a combining character) of the character under the
+pointer is displayed until you release \f(CW\*(C`Control\*(C'\fR and \f(CW\*(C`Shift\*(C'\fR.
+.Sp
+In addition to the hex codes it will display the font used to draw this
+character \- due to implementation reasons, characters combined with
+combining characters, line drawing characters and unknown characters will
+always be drawn using the built-in support font.
+.PP
+With respect to conformance, rxvt-unicode is supposed to be compliant to
+both scenario A and B of \s-1ISO 14755,\s0 including part 5.2.
+.SH "LOGIN STAMP"
+.IX Header "LOGIN STAMP"
+\&\fB@@RXVT_NAME@@\fR tries to write an entry into the \fIutmp\fR(5) file so that
+it can be seen via the \fI\fIwho\fI\|(1)\fR command, and can accept messages. To
+allow this feature, \fB@@RXVT_NAME@@\fR may need to be installed setuid root
+on some systems or setgid to root or to some other group on others.
+.SH "COLOURS AND GRAPHICS"
+.IX Header "COLOURS AND GRAPHICS"
+In addition to the default foreground and background colours,
+\&\fB@@RXVT_NAME@@\fR can display up to 88/256 colours: 8 \s-1ANSI\s0 colours plus
+high-intensity (potentially bold/blink) versions of the same, and 72 (or
+240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour \s-1RGB\s0
+cube plus a 8 (24) colour greyscale ramp.
+.PP
+Here is a list of the \s-1ANSI\s0 colours with their names.
+.TS
+l l l .
+color0 (black) = Black
+color1 (red) = Red3
+color2 (green) = Green3
+color3 (yellow) = Yellow3
+color4 (blue) = Blue3
+color5 (magenta) = Magenta3
+color6 (cyan) = Cyan3
+color7 (white) = AntiqueWhite
+color8 (bright black) = Grey25
+color9 (bright red) = Red
+color10 (bright green) = Green
+color11 (bright yellow) = Yellow
+color12 (bright blue) = Blue
+color13 (bright magenta) = Magenta
+color14 (bright cyan) = Cyan
+color15 (bright white) = White
+foreground = Black
+background = White
+.TE
+.PP
+It is also possible to specify the colour values of \fBforeground\fR,
+\&\fBbackground\fR, \fBcursorColor\fR, \fBcursorColor2\fR, \fBcolorBD\fR, \fBcolorUL\fR as
+a number 0\-15, as a convenient shorthand to reference the colour name of
+color0\-color15.
+.PP
+The following text gives values for the standard 88 colour mode (and
+values for the 256 colour mode in parentheses).
+.PP
+The \s-1RGB\s0 cube uses indices 16..79 (16..231) using the following formulas:
+.PP
+.Vb 2
+\& index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3
+\& index_256 = (r * 6 + g) * 6 + b + 16 # r, g, b = 0..5
+.Ve
+.PP
+The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10%
+steps (1/26 to 25/26 in 1/26 steps) \- black and white are already part of
+the \s-1RGB\s0 cube.
+.PP
+Together, all those colours implement the 88 (256) colour xterm
+colours. Only the first 16 can be changed using resources currently, the
+rest can only be changed via command sequences (\*(L"escape codes\*(R").
+.PP
+Applications are advised to use terminfo or command sequences to discover
+number and \s-1RGB\s0 values of all colours (yes, you can query this...).
+.PP
+Note that \fB\-rv\fR (\fB\*(L"reverseVideo: True\*(R"\fR) simulates reverse video by
+always swapping the foreground/background colours. This is in contrast to
+\&\fIxterm\fR(1) where the colours are only swapped if they have not otherwise
+been specified. For example,
+.PP
+.Vb 1
+\& @@RXVT_NAME@@ \-fg Black \-bg White \-rv
+.Ve
+.PP
+would yield White on Black, while on \fIxterm\fR(1) it would yield Black on
+White.
+.SS "\s-1ALPHA CHANNEL SUPPORT\s0"
+.IX Subsection "ALPHA CHANNEL SUPPORT"
+If Xft support has been compiled in and as long as Xft/Xrender/X don't get
+their act together, rxvt-unicode will do its own alpha channel management:
+.PP
+You can prefix any colour with an opaqueness percentage enclosed in
+brackets, i.e. \f(CW\*(C`[percent]\*(C'\fR, where \f(CW\*(C`percent\*(C'\fR is a decimal percentage
+(0\-100) that specifies the opacity of the colour, where \f(CW0\fR is completely
+transparent and \f(CW100\fR is completely opaque. For example, \f(CW\*(C`[50]red\*(C'\fR is a
+half-transparent red, while \f(CW\*(C`[95]#00ff00\*(C'\fR is an almost opaque green. This
+is the recommended format to specify transparency values, and works with
+all ways to specify a colour.
+.PP
+For complete control, rxvt-unicode also supports
+\&\f(CW\*(C`rgba:rrrr/gggg/bbbb/aaaa\*(C'\fR (exactly four hex digits/component) colour
+specifications, where the additional \f(CW\*(C`aaaa\*(C'\fR component specifies opacity
+(alpha) values. The minimum value of \f(CW0000\fR is completely transparent,
+while \f(CW\*(C`ffff\*(C'\fR is completely opaque). The two example colours from
+earlier could also be specified as \f(CW\*(C`rgba:ff00/0000/0000/8000\*(C'\fR and
+\&\f(CW\*(C`rgba:0000/ff00/0000/f332\*(C'\fR.
+.PP
+You probably need to specify \fB\*(L"\-depth 32\*(R"\fR, too, to force a visual with
+alpha channels, and have the luck that your X\-server uses \s-1ARGB\s0 pixel
+layout, as X is far from just supporting \s-1ARGB\s0 visuals out of the box, and
+rxvt-unicode just fudges around.
+.PP
+For example, the following selects an almost completely transparent black
+background, and an almost opaque pink foreground:
+.PP
+.Vb 1
+\& @@RXVT_NAME@@ \-depth 32 \-bg rgba:0000/0000/0000/4444 \-fg "[80]pink"
+.Ve
+.PP
+When not using a background image, then the interpretation of the
+alpha channel is up to your compositing manager (most interpret it as
+transparency of course).
+.PP
+When using a background pixmap or pseudo-transparency, then the background
+colour will always behave as if it were completely transparent (so the
+background image shows instead), regardless of how it was specified, while
+other colours will either be transparent as specified (the background
+image will show through) on servers supporting the \s-1RENDER\s0 extension, or
+fully opaque on servers not supporting the \s-1RENDER EXTENSION.\s0
+.PP
+Please note that due to bugs in Xft, specifying alpha values might result
+in garbage being displayed when the X\-server does not support the \s-1RENDER\s0
+extension.
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+\&\fB@@RXVT_NAME@@\fR sets and/or uses the following environment variables:
+.IP "\fB\s-1TERM\s0\fR" 4
+.IX Item "TERM"
+Normally set to \f(CW\*(C`rxvt\-unicode\*(C'\fR, unless overwritten at configure time, via
+resources or on the command line.
+.IP "\fB\s-1COLORTERM\s0\fR" 4
+.IX Item "COLORTERM"
+Either \f(CW\*(C`rxvt\*(C'\fR, \f(CW\*(C`rxvt\-xpm\*(C'\fR, depending on whether @@RXVT_NAME@@ was
+compiled with background image support, and optionally with the added
+extension \f(CW\*(C`\-mono\*(C'\fR to indicate that rxvt-unicode runs on a monochrome
+screen.
+.IP "\fB\s-1COLORFGBG\s0\fR" 4
+.IX Item "COLORFGBG"
+Set to a string of the form \f(CW\*(C`fg;bg\*(C'\fR or \f(CW\*(C`fg;xpm;bg\*(C'\fR, where \f(CW\*(C`fg\*(C'\fR is
+the colour code used as default foreground/text colour (or the string
+\&\f(CW\*(C`default\*(C'\fR to indicate that the default-colour escape sequence is to be
+used), \f(CW\*(C`bg\*(C'\fR is the colour code used as default background colour (or the
+string \f(CW\*(C`default\*(C'\fR), and \f(CW\*(C`xpm\*(C'\fR is the string \f(CW\*(C`default\*(C'\fR if @@RXVT_NAME@@
+was compiled with background image support. Libraries like \f(CW\*(C`ncurses\*(C'\fR
+and \f(CW\*(C`slang\*(C'\fR can (and do) use this information to optimize screen output.
+.IP "\fB\s-1WINDOWID\s0\fR" 4
+.IX Item "WINDOWID"
+Set to the (decimal) X Window \s-1ID\s0 of the @@RXVT_NAME@@ window (the toplevel
+window, which usually has subwindows for the scrollbar, the terminal
+window and so on).
+.IP "\fB\s-1TERMINFO\s0\fR" 4
+.IX Item "TERMINFO"
+Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
+\&\f(CW\*(C`\-\-with\-terminfo=PATH\*(C'\fR.
+.IP "\fB\s-1DISPLAY\s0\fR" 4
+.IX Item "DISPLAY"
+Used by @@RXVT_NAME@@ to connect to the display and set to the correct
+display in its child processes if \f(CW\*(C`\-display\*(C'\fR isn't used to override. It
+defaults to \f(CW\*(C`:0\*(C'\fR if it doesn't exist.
+.IP "\fB\s-1SHELL\s0\fR" 4
+.IX Item "SHELL"
+The shell to be used for command execution, defaults to \f(CW\*(C`/bin/sh\*(C'\fR.
+.IP "\fB\s-1RXVT_SOCKET\s0\fR [\fIsic\fR]" 4
+.IX Item "RXVT_SOCKET [sic]"
+The unix domain socket path used by @@RXVT_NAME@@c(1) and
+@@RXVT_NAME@@d(1).
+.Sp
+Default \fI\f(CI$HOME\fI/.urxvt/urxvtd\-\fI<nodename>\fI\fR.
+.IP "\fB\s-1URXVT_PERL_LIB\s0\fR" 4
+.IX Item "URXVT_PERL_LIB"
+Additional \fI:\fR\-separated library search path for perl extensions. Will be
+searched after \fB\-perl\-lib\fR but before \fI~/.urxvt/ext\fR and the system library
+directory.
+.IP "\fB\s-1URXVT_PERL_VERBOSITY\s0\fR" 4
+.IX Item "URXVT_PERL_VERBOSITY"
+See @@RXVT_NAME@@perl(3).
+.IP "\fB\s-1HOME\s0\fR" 4
+.IX Item "HOME"
+Used to locate the default directory for the unix domain socket for
+daemon communications and to locate various resource files (such as
+\&\f(CW\*(C`.Xdefaults\*(C'\fR)
+.IP "\fB\s-1XAPPLRESDIR\s0\fR" 4
+.IX Item "XAPPLRESDIR"
+Directory where application-specific X resource files are located.
+.IP "\fB\s-1XENVIRONMENT\s0\fR" 4
+.IX Item "XENVIRONMENT"
+If set and accessible, gives the name of a X resource file to be loaded by
+@@RXVT_NAME@@.
+.SH "FILES"
+.IX Header "FILES"
+.IP "\fB/usr/lib/X11/rgb.txt\fR" 4
+.IX Item "/usr/lib/X11/rgb.txt"
+Colour names.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), @@RXVT_NAME@@\-\fIextensions\fR\|(1),
+@@RXVT_NAME@@\fIperl\fR\|(3), \fIxterm\fR\|(1), \fIsh\fR\|(1), \fIresize\fR\|(1), X(1), \fIpty\fR\|(4), \fItty\fR\|(4), \fIutmp\fR\|(5)
+.SH "CURRENT PROJECT COORDINATOR"
+.IX Header "CURRENT PROJECT COORDINATOR"
+.IP "Project Coordinator" 4
+.IX Item "Project Coordinator"
+Marc A. Lehmann <rxvt\-unicode@schmorp.de>.
+.Sp
+<http://software.schmorp.de/pkg/rxvt\-unicode.html>
+.SH "AUTHORS"
+.IX Header "AUTHORS"
+.IP "John Bovey" 4
+.IX Item "John Bovey"
+University of Kent, 1992, wrote the original Xvt.
+.IP "Rob Nation <nation@rocket.sanders.lockheed.com>" 4
+.IX Item "Rob Nation <nation@rocket.sanders.lockheed.com>"
+very heavily modified Xvt and came up with Rxvt
+.IP "Angelo Haritsis <ah@doc.ic.ac.uk>" 4
+.IX Item "Angelo Haritsis <ah@doc.ic.ac.uk>"
+wrote the Greek Keyboard Input (no longer in code)
+.IP "mj olesen <olesen@me.QueensU.CA>" 4
+.IX Item "mj olesen <olesen@me.QueensU.CA>"
+Wrote the menu system.
+.Sp
+Project Coordinator (changes.txt 2.11 to 2.21)
+.IP "Oezguer Kesim <kesim@math.fu\-berlin.de>" 4
+.IX Item "Oezguer Kesim <kesim@math.fu-berlin.de>"
+Project Coordinator (changes.txt 2.21a to 2.4.5)
+.IP "Geoff Wing <gcw@pobox.com>" 4
+.IX Item "Geoff Wing <gcw@pobox.com>"
+Rewrote screen display and text selection routines.
+.Sp
+Project Coordinator (changes.txt 2.4.6 \- rxvt-unicode)
+.IP "Marc Alexander Lehmann <rxvt\-unicode@schmorp.de>" 4
+.IX Item "Marc Alexander Lehmann <rxvt-unicode@schmorp.de>"
+Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
+extension, random hacks, numerous bugfixes and extensions.
+.Sp
+Project Coordinator (Changes 1.0 \-)
+.IP "Emanuele Giaquinta <emanuele.giaquinta@gmail.com>" 4
+.IX Item "Emanuele Giaquinta <emanuele.giaquinta@gmail.com>"
+pty/utmp code rewrite, image code improvements, many random hacks and bugfixes.
diff --git a/doc/rxvt.7.man.in b/doc/rxvt.7.man.in
new file mode 100644
index 0000000..14b0c0a
--- /dev/null
+++ b/doc/rxvt.7.man.in
@@ -0,0 +1,2750 @@
+.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.30)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{
+. if \nF \{
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "@@RXVT_NAME@@ 7"
+.TH @@RXVT_NAME@@ 7 "2016-01-23" "@@RXVT_VERSION@@" "RXVT-UNICODE"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+RXVT REFERENCE \- FAQ, command sequences and other background information
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 2
+\& # set a new font set
+\& printf \*(Aq\e33]50;%s\e007\*(Aq 9x15,xft:Kochi" Mincho"
+\&
+\& # change the locale and tell rxvt\-unicode about it
+\& export LC_CTYPE=ja_JP.EUC\-JP; printf "\e33]701;$LC_CTYPE\e007"
+\&
+\& # set window title
+\& printf \*(Aq\e33]2;%s\e007\*(Aq "new window title"
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+This document contains the \s-1FAQ,\s0 the \s-1RXVT TECHNICAL REFERENCE\s0 documenting
+all escape sequences, and other background information.
+.PP
+The newest version of this document is also available on the World Wide Web at
+<http://pod.tst.eu/http://cvs.schmorp.de/rxvt\-unicode/doc/rxvt.7.pod>.
+.PP
+The main manual page for @@RXVT_NAME@@ itself is available at
+<http://pod.tst.eu/http://cvs.schmorp.de/rxvt\-unicode/doc/rxvt.1.pod>.
+.SH "RXVT\-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS"
+.IX Header "RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS"
+.SS "Meta, Features & Commandline Issues"
+.IX Subsection "Meta, Features & Commandline Issues"
+\fIMy question isn't answered here, can I ask a human?\fR
+.IX Subsection "My question isn't answered here, can I ask a human?"
+.PP
+Before sending me mail, you could go to \s-1IRC: \s0\f(CW\*(C`irc.freenode.net\*(C'\fR,
+channel \f(CW\*(C`#rxvt\-unicode\*(C'\fR has some rxvt-unicode enthusiasts that might be
+interested in learning about new and exciting problems (but not FAQs :).
+.PP
+\fII use Gentoo, and I have a problem...\fR
+.IX Subsection "I use Gentoo, and I have a problem..."
+.PP
+There are two big problems with Gentoo Linux: first, most if not all
+Gentoo systems are completely broken (missing or mismatched header
+files, broken compiler etc. are just the tip of the iceberg);
+secondly, it should be called Gentoo GNU/Linux.
+.PP
+For these reasons, it is impossible to support rxvt-unicode on
+Gentoo. Problems appearing on Gentoo systems will usually simply be
+ignored unless they can be reproduced on non-Gentoo systems.
+.PP
+\fIDoes it support tabs, can I have a tabbed rxvt-unicode?\fR
+.IX Subsection "Does it support tabs, can I have a tabbed rxvt-unicode?"
+.PP
+Beginning with version 7.3, there is a perl extension that implements a
+simple tabbed terminal. It is installed by default, so any of these should
+give you tabs:
+.PP
+.Vb 1
+\& @@URXVT_NAME@@ \-pe tabbed
+\&
+\& URxvt.perl\-ext\-common: default,tabbed
+.Ve
+.PP
+It will also work fine with tabbing functionality of many window managers
+or similar tabbing programs, and its embedding-features allow it to be
+embedded into other programs, as witnessed by \fIdoc/rxvt\-tabbed\fR or
+the upcoming \f(CW\*(C`Gtk2::URxvt\*(C'\fR perl module, which features a tabbed urxvt
+(murxvt) terminal as an example embedding application.
+.PP
+\fIHow do I know which rxvt-unicode version I'm using?\fR
+.IX Subsection "How do I know which rxvt-unicode version I'm using?"
+.PP
+The version number is displayed with the usage (\-h). Also the escape
+sequence \f(CW\*(C`ESC [ 8 n\*(C'\fR sets the window title to the version number. When
+using the @@URXVT_NAME@@c client, the version displayed is that of the
+daemon.
+.PP
+\fIRxvt-unicode uses gobs of memory, how can I reduce that?\fR
+.IX Subsection "Rxvt-unicode uses gobs of memory, how can I reduce that?"
+.PP
+Rxvt-unicode tries to obey the rule of not charging you for something you
+don't use. One thing you should try is to configure out all settings that
+you don't need, for example, Xft support is a resource hog by design,
+when used. Compiling it out ensures that no Xft font will be loaded
+accidentally when rxvt-unicode tries to find a font for your characters.
+.PP
+Also, many people (me included) like large windows and even larger
+scrollback buffers: Without \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR, rxvt-unicode will use
+6 bytes per screen cell. For a 160x?? window this amounts to almost a
+kilobyte per line. A scrollback buffer of 10000 lines will then (if full)
+use 10 Megabytes of memory. With \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR it gets worse, as
+rxvt-unicode then uses 8 bytes per screen cell.
+.PP
+\fIHow can I start @@URXVT_NAME@@d in a race-free way?\fR
+.IX Subsection "How can I start @@URXVT_NAME@@d in a race-free way?"
+.PP
+Try \f(CW\*(C`@@URXVT_NAME@@d \-f \-o\*(C'\fR, which tells @@URXVT_NAME@@d to open the
+display, create the listening socket and then fork.
+.PP
+\fIHow can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?\fR
+.IX Subsection "How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?"
+.PP
+If you want to start @@URXVT_NAME@@d automatically whenever you run
+@@URXVT_NAME@@c and the daemon isn't running yet, use this script:
+.PP
+.Vb 6
+\& #!/bin/sh
+\& @@URXVT_NAME@@c "$@"
+\& if [ $? \-eq 2 ]; then
+\& @@URXVT_NAME@@d \-q \-o \-f
+\& @@URXVT_NAME@@c "$@"
+\& fi
+.Ve
+.PP
+This tries to create a new terminal, and if fails with exit status 2,
+meaning it couldn't connect to the daemon, it will start the daemon and
+re-run the command. Subsequent invocations of the script will re-use the
+existing daemon.
+.PP
+\fIHow do I distinguish whether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colours etc.\fR
+.IX Subsection "How do I distinguish whether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colours etc."
+.PP
+The original rxvt and rxvt-unicode always export the variable \*(L"\s-1COLORTERM\*(R",\s0
+so you can check and see if that is set. Note that several programs, \s-1JED,\s0
+slrn, Midnight Commander automatically check this variable to decide
+whether or not to use colour.
+.PP
+\fIHow do I set the correct, full \s-1IP\s0 address for the \s-1DISPLAY\s0 variable?\fR
+.IX Subsection "How do I set the correct, full IP address for the DISPLAY variable?"
+.PP
+If you've compiled rxvt-unicode with \s-1DISPLAY_IS_IP\s0 and have enabled
+insecure mode then it is possible to use the following shell script
+snippets to correctly set the display. If your version of rxvt-unicode
+wasn't also compiled with \s-1ESCZ_ANSWER \s0(as assumed in these snippets) then
+the \s-1COLORTERM\s0 variable can be used to distinguish rxvt-unicode from a
+regular xterm.
+.PP
+Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
+snippets:
+.PP
+.Vb 12
+\& # Bourne/Korn/POSIX family of shells:
+\& [ ${TERM:\-foo} = foo ] && TERM=xterm # assume an xterm if we don\*(Aqt know
+\& if [ ${TERM:\-foo} = xterm ]; then
+\& stty \-icanon \-echo min 0 time 15 # see if enhanced rxvt or not
+\& printf "\eeZ"
+\& read term_id
+\& stty icanon echo
+\& if [ ""${term_id} = \*(Aq^[[?1;2C\*(Aq \-a ${DISPLAY:\-foo} = foo ]; then
+\& printf \*(Aq\ee[7n\*(Aq # query the rxvt we are in for the DISPLAY string
+\& read DISPLAY # set it in our local shell
+\& fi
+\& fi
+.Ve
+.PP
+\fIHow do I compile the manual pages on my own?\fR
+.IX Subsection "How do I compile the manual pages on my own?"
+.PP
+You need to have a recent version of perl installed as \fI/usr/bin/perl\fR,
+one that comes with \fIpod2man\fR, \fIpod2text\fR and \fIpod2xhtml\fR (from
+\&\fIPod::Xhtml\fR). Then go to the doc subdirectory and enter \f(CW\*(C`make alldoc\*(C'\fR.
+.PP
+\fIIsn't rxvt-unicode supposed to be small? Don't all those features bloat?\fR
+.IX Subsection "Isn't rxvt-unicode supposed to be small? Don't all those features bloat?"
+.PP
+I often get asked about this, and I think, no, they didn't cause extra
+bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
+that the urxvt binary is larger (due to some encoding tables always being
+compiled in), but it actually uses less memory (\s-1RSS\s0) after startup. Even
+with \f(CW\*(C`\-\-disable\-everything\*(C'\fR, this comparison is a bit unfair, as many
+features unique to urxvt (locale, encoding conversion, iso14755 etc.) are
+already in use in this mode.
+.PP
+.Vb 3
+\& text data bss drs rss filename
+\& 98398 1664 24 15695 1824 rxvt \-\-disable\-everything
+\& 188985 9048 66616 18222 1788 urxvt \-\-disable\-everything
+.Ve
+.PP
+When you \f(CW\*(C`\-\-enable\-everything\*(C'\fR (which \fIis\fR unfair, as this involves xft
+and full locale/XIM support which are quite bloaty inside libX11 and my
+libc), the two diverge, but not unreasonably so.
+.PP
+.Vb 3
+\& text data bss drs rss filename
+\& 163431 2152 24 20123 2060 rxvt \-\-enable\-everything
+\& 1035683 49680 66648 29096 3680 urxvt \-\-enable\-everything
+.Ve
+.PP
+The very large size of the text section is explained by the east-asian
+encoding tables, which, if unused, take up disk space but nothing else
+and can be compiled out unless you rely on X11 core fonts that use those
+encodings. The \s-1BSS\s0 size comes from the 64k emergency buffer that my c++
+compiler allocates (but of course doesn't use unless you are out of
+memory). Also, using an xft font instead of a core font immediately adds a
+few megabytes of \s-1RSS.\s0 Xft indeed is responsible for a lot of \s-1RSS\s0 even when
+not used.
+.PP
+Of course, due to every character using two or four bytes instead of one,
+a large scrollback buffer will ultimately make rxvt-unicode use more
+memory.
+.PP
+Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this
+still fares rather well. And compared to some monsters like gnome-terminal
+(21152k + extra 4204k in separate processes) or konsole (22200k + extra
+43180k in daemons that stay around after exit, plus half a minute of
+startup time, including the hundreds of warnings it spits out), it fares
+extremely well *g*.
+.PP
+\fIWhy \*(C+, isn't that unportable/bloated/uncool?\fR
+.IX Subsection "Why , isn't that unportable/bloated/uncool?"
+.PP
+Is this a question? :) It comes up very often. The simple answer is: I had
+to write it, and \*(C+ allowed me to write and maintain it in a fraction
+of the time and effort (which is a scarce resource for me). Put even
+shorter: It simply wouldn't exist without \*(C+.
+.PP
+My personal stance on this is that \*(C+ is less portable than C, but in
+the case of rxvt-unicode this hardly matters, as its portability limits
+are defined by things like X11, pseudo terminals, locale support and unix
+domain sockets, which are all less portable than \*(C+ itself.
+.PP
+Regarding the bloat, see the above question: It's easy to write programs
+in C that use gobs of memory, and certainly possible to write programs in
+\&\*(C+ that don't. \*(C+ also often comes with large libraries, but this is
+not necessarily the case with \s-1GCC.\s0 Here is what rxvt links against on my
+system with a minimal config:
+.PP
+.Vb 4
+\& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
+\& libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
+\& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
+\& /lib64/ld\-linux\-x86\-64.so.2 (0x00002aaaaaaab000)
+.Ve
+.PP
+And here is rxvt-unicode:
+.PP
+.Vb 5
+\& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
+\& libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
+\& libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
+\& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
+\& /lib64/ld\-linux\-x86\-64.so.2 (0x00002aaaaaaab000)
+.Ve
+.PP
+No large bloated libraries (of course, none were linked in statically),
+except maybe libX11 :)
+.SS "Rendering, Font & Look and Feel Issues"
+.IX Subsection "Rendering, Font & Look and Feel Issues"
+\fII can't get transparency working, what am I doing wrong?\fR
+.IX Subsection "I can't get transparency working, what am I doing wrong?"
+.PP
+First of all, transparency isn't officially supported in rxvt-unicode, so
+you are mostly on your own. Do not bug the author about it (but you may
+bug everybody else). Also, if you can't get it working consider it a rite
+of passage: ... and you failed.
+.PP
+Here are four ways to get transparency. \fBDo\fR read the manpage and option
+descriptions for the programs mentioned and rxvt-unicode. Really, do it!
+.PP
+1. Use transparent mode:
+.PP
+.Vb 2
+\& Esetroot wallpaper.jpg
+\& @@URXVT_NAME@@ \-tr \-tint red \-sh 40
+.Ve
+.PP
+That works. If you think it doesn't, you lack transparency and tinting
+support, or you are unable to read.
+This method requires that the background-setting program sets the
+_XROOTPMAP_ID or \s-1ESETROOT_PMAP_ID\s0 property. Compatible programs
+are Esetroot, hsetroot and feh.
+.PP
+2. Use a simple pixmap and emulate pseudo-transparency. This enables you
+to use effects other than tinting and shading: Just shade/tint/whatever
+your picture with gimp or any other tool:
+.PP
+.Vb 2
+\& convert wallpaper.jpg \-blur 20x20 \-modulate 30 background.jpg
+\& @@URXVT_NAME@@ \-pixmap "background.jpg;:root"
+.Ve
+.PP
+That works. If you think it doesn't, you lack GDK-PixBuf support, or you
+are unable to read.
+.PP
+3. Use an \s-1ARGB\s0 visual:
+.PP
+.Vb 1
+\& @@URXVT_NAME@@ \-depth 32 \-fg grey90 \-bg rgba:0000/0000/4444/cccc
+.Ve
+.PP
+This requires \s-1XFT\s0 support, and the support of your X\-server. If that
+doesn't work for you, blame Xorg and Keith Packard. \s-1ARGB\s0 visuals aren't
+there yet, no matter what they claim. Rxvt-Unicode contains the necessary
+bugfixes and workarounds for Xft and Xlib to make it work, but that
+doesn't mean that your \s-1WM\s0 has the required kludges in place.
+.PP
+4. Use xcompmgr and let it do the job:
+.PP
+.Vb 2
+\& xprop \-frame \-f _NET_WM_WINDOW_OPACITY 32c \e
+\& \-set _NET_WM_WINDOW_OPACITY 0xc0000000
+.Ve
+.PP
+Then click on a window you want to make transparent. Replace \f(CW0xc0000000\fR
+by other values to change the degree of opacity. If it doesn't work and
+your server crashes, you got to keep the pieces.
+.PP
+\fIWhy does rxvt-unicode sometimes leave pixel droppings?\fR
+.IX Subsection "Why does rxvt-unicode sometimes leave pixel droppings?"
+.PP
+Most fonts were not designed for terminal use, which means that character
+size varies a lot. A font that is otherwise fine for terminal use might
+contain some characters that are simply too wide. Rxvt-unicode will avoid
+these characters. For characters that are just \*(L"a bit\*(R" too wide a special
+\&\*(L"careful\*(R" rendering mode is used that redraws adjacent characters.
+.PP
+All of this requires that fonts do not lie about character sizes,
+however: Xft fonts often draw glyphs larger than their acclaimed bounding
+box, and rxvt-unicode has no way of detecting this (the correct way is to
+ask for the character bounding box, which unfortunately is wrong in these
+cases).
+.PP
+It's not clear (to me at least), whether this is a bug in Xft, freetype,
+or the respective font. If you encounter this problem you might try using
+the \f(CW\*(C`\-lsp\*(C'\fR option to give the font more height. If that doesn't work, you
+might be forced to use a different font.
+.PP
+All of this is not a problem when using X11 core fonts, as their bounding
+box data is correct.
+.PP
+\fIHow can I keep rxvt-unicode from using reverse video so much?\fR
+.IX Subsection "How can I keep rxvt-unicode from using reverse video so much?"
+.PP
+First of all, make sure you are running with the right terminal settings
+(\f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR), which will get rid of most of these effects. Then
+make sure you have specified colours for italic and bold, as otherwise
+rxvt-unicode might use reverse video to simulate the effect:
+.PP
+.Vb 2
+\& URxvt.colorBD: white
+\& URxvt.colorIT: green
+.Ve
+.PP
+\fISome programs assume totally weird colours (red instead of blue), how can I fix that?\fR
+.IX Subsection "Some programs assume totally weird colours (red instead of blue), how can I fix that?"
+.PP
+For some unexplainable reason, some rare programs assume a very weird
+colour palette when confronted with a terminal with more than the standard
+8 colours (rxvt-unicode supports 88). The right fix is, of course, to fix
+these programs not to assume non-ISO colours without very good reasons.
+.PP
+In the meantime, you can either edit your \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo
+definition to only claim 8 colour support or use \f(CW\*(C`TERM=rxvt\*(C'\fR, which will
+fix colours but keep you from using other rxvt-unicode features.
+.PP
+\fICan I switch the fonts at runtime?\fR
+.IX Subsection "Can I switch the fonts at runtime?"
+.PP
+Yes, using an escape sequence. Try something like this, which has the same
+effect as using the \f(CW\*(C`\-fn\*(C'\fR switch, and takes effect immediately:
+.PP
+.Vb 1
+\& printf \*(Aq\e33]50;%s\e007\*(Aq "9x15bold,xft:Kochi Gothic"
+.Ve
+.PP
+This is useful if you e.g. work primarily with japanese (and prefer a
+japanese font), but you have to switch to chinese temporarily, where
+japanese fonts would only be in your way.
+.PP
+You can think of this as a kind of manual \s-1ISO\-2022\s0 switching.
+.PP
+\fIWhy do italic characters look as if clipped?\fR
+.IX Subsection "Why do italic characters look as if clipped?"
+.PP
+Many fonts have difficulties with italic characters and hinting. For
+example, the otherwise very nicely hinted font \f(CW\*(C`xft:Bitstream Vera Sans
+Mono\*(C'\fR completely fails in its italic face. A workaround might be to
+enable freetype autohinting, i.e. like this:
+.PP
+.Vb 2
+\& URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
+\& URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
+.Ve
+.PP
+\fICan I speed up Xft rendering somehow?\fR
+.IX Subsection "Can I speed up Xft rendering somehow?"
+.PP
+Yes, the most obvious way to speed it up is to avoid Xft entirely, as
+it is simply slow. If you still want Xft fonts you might try to disable
+antialiasing (by appending \f(CW\*(C`:antialias=false\*(C'\fR), which saves lots of
+memory and also speeds up rendering considerably.
+.PP
+\fIRxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?\fR
+.IX Subsection "Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?"
+.PP
+Rxvt-unicode will use whatever you specify as a font. If it needs to
+fall back to its default font search list it will prefer X11 core
+fonts, because they are small and fast, and then use Xft fonts. It has
+antialiasing disabled for most of them, because the author thinks they
+look best that way.
+.PP
+If you want antialiasing, you have to specify the fonts manually.
+.PP
+\fIWhat's with this bold/blink stuff?\fR
+.IX Subsection "What's with this bold/blink stuff?"
+.PP
+If no bold colour is set via \f(CW\*(C`colorBD:\*(C'\fR, bold will invert text using the
+standard foreground colour.
+.PP
+For the standard background colour, blinking will actually make
+the text blink when compiled with \f(CW\*(C`\-\-enable\-text\-blink\*(C'\fR. Without
+\&\f(CW\*(C`\-\-enable\-text\-blink\*(C'\fR, the blink attribute will be ignored.
+.PP
+On \s-1ANSI\s0 colours, bold/blink attributes are used to set high-intensity
+foreground/background colours.
+.PP
+color0\-7 are the low-intensity colours.
+.PP
+color8\-15 are the corresponding high-intensity colours.
+.PP
+\fII don't like the screen colours. How do I change them?\fR
+.IX Subsection "I don't like the screen colours. How do I change them?"
+.PP
+You can change the screen colours at run-time using \fI~/.Xdefaults\fR
+resources (or as long-options).
+.PP
+Here are values that are supposed to resemble a \s-1VGA\s0 screen,
+including the murky brown that passes for low-intensity yellow:
+.PP
+.Vb 8
+\& URxvt.color0: #000000
+\& URxvt.color1: #A80000
+\& URxvt.color2: #00A800
+\& URxvt.color3: #A8A800
+\& URxvt.color4: #0000A8
+\& URxvt.color5: #A800A8
+\& URxvt.color6: #00A8A8
+\& URxvt.color7: #A8A8A8
+\&
+\& URxvt.color8: #000054
+\& URxvt.color9: #FF0054
+\& URxvt.color10: #00FF54
+\& URxvt.color11: #FFFF54
+\& URxvt.color12: #0000FF
+\& URxvt.color13: #FF00FF
+\& URxvt.color14: #00FFFF
+\& URxvt.color15: #FFFFFF
+.Ve
+.PP
+And here is a more complete set of non-standard colours.
+.PP
+.Vb 10
+\& URxvt.cursorColor: #dc74d1
+\& URxvt.pointerColor: #dc74d1
+\& URxvt.background: #0e0e0e
+\& URxvt.foreground: #4ad5e1
+\& URxvt.color0: #000000
+\& URxvt.color8: #8b8f93
+\& URxvt.color1: #dc74d1
+\& URxvt.color9: #dc74d1
+\& URxvt.color2: #0eb8c7
+\& URxvt.color10: #0eb8c7
+\& URxvt.color3: #dfe37e
+\& URxvt.color11: #dfe37e
+\& URxvt.color5: #9e88f0
+\& URxvt.color13: #9e88f0
+\& URxvt.color6: #73f7ff
+\& URxvt.color14: #73f7ff
+\& URxvt.color7: #e1dddd
+\& URxvt.color15: #e1dddd
+.Ve
+.PP
+They have been described (not by me) as \*(L"pretty girly\*(R".
+.PP
+\fIWhy do some characters look so much different than others?\fR
+.IX Subsection "Why do some characters look so much different than others?"
+.PP
+See next entry.
+.PP
+\fIHow does rxvt-unicode choose fonts?\fR
+.IX Subsection "How does rxvt-unicode choose fonts?"
+.PP
+Most fonts do not contain the full range of Unicode, which is
+fine. Chances are that the font you (or the admin/package maintainer of
+your system/os) have specified does not cover all the characters you want
+to display.
+.PP
+\&\fBrxvt-unicode\fR makes a best-effort try at finding a replacement
+font. Often the result is fine, but sometimes the chosen font looks
+bad/ugly/wrong. Some fonts have totally strange characters that don't
+resemble the correct glyph at all, and rxvt-unicode lacks the artificial
+intelligence to detect that a specific glyph is wrong: it has to believe
+the font that the characters it claims to contain indeed look correct.
+.PP
+In that case, select a font of your taste and add it to the font list,
+e.g.:
+.PP
+.Vb 1
+\& @@URXVT_NAME@@ \-fn basefont,font2,font3...
+.Ve
+.PP
+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 the
+next font, and so on. Specifying your own fonts will also speed up this
+search and use less resources within rxvt-unicode and the X\-server.
+.PP
+The only limitation is that none of the fonts may be larger than the base
+font, as the base font defines the terminal character cell size, which
+must be the same due to the way terminals work.
+.PP
+\fIWhy do some chinese characters look so different than others?\fR
+.IX Subsection "Why do some chinese characters look so different than others?"
+.PP
+This is because there is a difference between script and language \*(--
+rxvt-unicode does not know which language the text that is output is,
+as it only knows the unicode character codes. If rxvt-unicode first
+sees a japanese/chinese character, it might choose a japanese font for
+display. Subsequent japanese characters will use that font. Now, many
+chinese characters aren't represented in japanese fonts, so when the first
+non-japanese character comes up, rxvt-unicode will look for a chinese font
+\&\*(-- unfortunately at this point, it will still use the japanese font for
+chinese characters that are also in the japanese font.
+.PP
+The workaround is easy: just tag a chinese font at the end of your font
+list (see the previous question). The key is to view the font list as
+a preference list: If you expect more japanese, list a japanese font
+first. If you expect more chinese, put a chinese font first.
+.PP
+In the future it might be possible to switch language preferences at
+runtime (the internal data structure has no problem with using different
+fonts for the same character at the same time, but no interface for this
+has been designed yet).
+.PP
+Until then, you might get away with switching fonts at runtime (see \*(L"Can
+I switch the fonts at runtime?\*(R" later in this document).
+.PP
+\fIHow can I make mplayer display video correctly?\fR
+.IX Subsection "How can I make mplayer display video correctly?"
+.PP
+We are working on it, in the meantime, as a workaround, use something like:
+.PP
+.Vb 1
+\& @@URXVT_NAME@@ \-b 600 \-geometry 20x1 \-e sh \-c \*(Aqmplayer \-wid $WINDOWID file...\*(Aq
+.Ve
+.PP
+\fIWhy is the cursor now blinking in emacs/vi/...?\fR
+.IX Subsection "Why is the cursor now blinking in emacs/vi/...?"
+.PP
+This is likely caused by your editor/program's use of the \f(CW\*(C`cvvis\*(C'\fR
+terminfo capability. Emacs uses it by default, as well as some versions of
+vi and possibly other programs.
+.PP
+In emacs, you can switch that off by adding this to your \f(CW\*(C`.emacs\*(C'\fR file:
+.PP
+.Vb 1
+\& (setq visible\-cursor nil)
+.Ve
+.PP
+For other programs, if they do not have an option, your have to remove the
+\&\f(CW\*(C`cvvis\*(C'\fR capability from the terminfo description.
+.PP
+When @@URXVT_NAME@@ first added the blinking cursor option, it didn't
+add a \f(CW\*(C`cvvis\*(C'\fR capability, which served no purpose before. Version 9.21
+introduced \f(CW\*(C`cvvis\*(C'\fR (and the ability to control blinking independent of
+cursor shape) for compatibility with other terminals, which traditionally
+use a blinking cursor for \f(CW\*(C`cvvis\*(C'\fR. This also reflects the intent of
+programs such as emacs, who expect \f(CW\*(C`cvvis\*(C'\fR to enable a blinking cursor.
+.SS "Keyboard, Mouse & User Interaction"
+.IX Subsection "Keyboard, Mouse & User Interaction"
+\fIThe new selection selects pieces that are too big, how can I select single words?\fR
+.IX Subsection "The new selection selects pieces that are too big, how can I select single words?"
+.PP
+If you want to select e.g. alphanumeric words, you can use the following
+setting:
+.PP
+.Vb 1
+\& URxvt.selection.pattern\-0: ([[:word:]]+)
+.Ve
+.PP
+If you click more than twice, the selection will be extended
+more and more.
+.PP
+To get a selection that is very similar to the old code, try this pattern:
+.PP
+.Vb 1
+\& URxvt.selection.pattern\-0: ([^"&\*(Aq()*,;<=>?@[\e\e\e\e]^\`{|})]+)
+.Ve
+.PP
+Please also note that the \fILeftClick Shift-LeftClick\fR combination also
+selects words like the old code.
+.PP
+\fII don't like the new selection/popups/hotkeys/perl, how do I change/disable it?\fR
+.IX Subsection "I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?"
+.PP
+You can disable the perl extension completely by setting the
+\&\fBperl-ext-common\fR resource to the empty string, which also keeps
+rxvt-unicode from initialising perl, saving memory.
+.PP
+If you only want to disable specific features, you first have to
+identify which perl extension is responsible. For this, read the section
+\&\fB\s-1PREPACKAGED EXTENSIONS\s0\fR in the @@URXVT_NAME@@\fIperl\fR\|(3) manpage. For
+example, to disable the \fBselection-popup\fR and \fBoption-popup\fR, specify
+this \fBperl-ext-common\fR resource:
+.PP
+.Vb 1
+\& URxvt.perl\-ext\-common: default,\-selection\-popup,\-option\-popup
+.Ve
+.PP
+This will keep the default extensions, but disable the two popup
+extensions. Some extensions can also be configured, for example,
+scrollback search mode is triggered by \fBM\-s\fR. You can move it to any
+other combination by adding a \fBkeysym\fR resource that binds the desired
+combination to the \f(CW\*(C`start\*(C'\fR action of \f(CW\*(C`searchable\-scrollback\*(C'\fR and another
+one that binds \fBM\-s\fR to the \f(CW\*(C`builtin:\*(C'\fR action:
+.PP
+.Vb 2
+\& URxvt.keysym.CM\-s: searchable\-scrollback:start
+\& URxvt.keysym.M\-s: builtin:
+.Ve
+.PP
+\fIThe cursor moves when selecting text in the current input line, how do I switch this off?\fR
+.IX Subsection "The cursor moves when selecting text in the current input line, how do I switch this off?"
+.PP
+See next entry.
+.PP
+\fIDuring rlogin/ssh/telnet/etc. sessions, clicking near the cursor outputs strange escape sequences, how do I fix this?\fR
+.IX Subsection "During rlogin/ssh/telnet/etc. sessions, clicking near the cursor outputs strange escape sequences, how do I fix this?"
+.PP
+These are caused by the \f(CW\*(C`readline\*(C'\fR perl extension. Under normal
+circumstances, it will move your cursor around when you click into the
+line that contains it. It tries hard not to do this at the wrong moment,
+but when running a program that doesn't parse cursor movements or in some
+cases during rlogin sessions, it fails to detect this properly.
+.PP
+You can permanently switch this feature off by disabling the \f(CW\*(C`readline\*(C'\fR
+extension:
+.PP
+.Vb 1
+\& URxvt.perl\-ext\-common: default,\-readline
+.Ve
+.PP
+\fIMy numeric keypad acts weird and generates differing output?\fR
+.IX Subsection "My numeric keypad acts weird and generates differing output?"
+.PP
+Some Debian GNU/Linux users seem to have this problem, although no
+specific details were reported so far. It is possible that this is caused
+by the wrong \f(CW\*(C`TERM\*(C'\fR setting, although the details of whether and how
+this can happen are unknown, as \f(CW\*(C`TERM=rxvt\*(C'\fR should offer a compatible
+keymap. See the answer to the previous question, and please report if that
+helped.
+.PP
+\fIMy Compose (Multi_key) key is no longer working.\fR
+.IX Subsection "My Compose (Multi_key) key is no longer working."
+.PP
+The most common causes for this are that either your locale is not set
+correctly, or you specified a \fBpreeditType\fR that is not supported by
+your input method. For example, if you specified \fBOverTheSpot\fR and
+your input method (e.g. the default input method handling Compose keys)
+does not support this (for instance because it is not visual), then
+rxvt-unicode will continue without an input method.
+.PP
+In this case either do not specify a \fBpreeditType\fR or specify more than
+one pre-edit style, such as \fBOverTheSpot,Root,None\fR.
+.PP
+If it still doesn't work, then maybe your input method doesn't support
+compose sequences \- to fall back to the built-in one, make sure you don't
+specify an input method via \f(CW\*(C`\-im\*(C'\fR or \f(CW\*(C`XMODIFIERS\*(C'\fR.
+.PP
+\fII cannot type \f(CI\*(C`Ctrl\-Shift\-2\*(C'\fI to get an \s-1ASCII NUL\s0 character due to \s-1ISO 14755\s0\fR
+.IX Subsection "I cannot type Ctrl-Shift-2 to get an ASCII NUL character due to ISO 14755"
+.PP
+Either try \f(CW\*(C`Ctrl\-2\*(C'\fR alone (it often is mapped to \s-1ASCII NUL\s0 even on
+international keyboards) or simply use \s-1ISO 14755\s0 support to your
+advantage, typing <Ctrl\-Shift\-0> to get a \s-1ASCII NUL.\s0 This works for other
+codes, too, such as \f(CW\*(C`Ctrl\-Shift\-1\-d\*(C'\fR to type the default telnet escape
+character and so on.
+.PP
+\fIMouse cut/paste suddenly no longer works.\fR
+.IX Subsection "Mouse cut/paste suddenly no longer works."
+.PP
+Make sure that mouse reporting is actually turned off since killing
+some editors prematurely may leave it active. I've
+heard that tcsh may use mouse reporting unless it is otherwise specified. A
+quick check is to see if cut/paste works when the Alt or Shift keys are
+pressed.
+.PP
+\fIWhat's with the strange Backspace/Delete key behaviour?\fR
+.IX Subsection "What's with the strange Backspace/Delete key behaviour?"
+.PP
+Assuming that the physical Backspace key corresponds to the
+Backspace keysym (not likely for Linux ... see the following
+question) there are two standard values that can be used for
+Backspace: \f(CW\*(C`^H\*(C'\fR and \f(CW\*(C`^?\*(C'\fR.
+.PP
+Historically, either value is correct, but rxvt-unicode adopts the debian
+policy of using \f(CW\*(C`^?\*(C'\fR when unsure, because it's the one and only correct
+choice :).
+.PP
+It is possible to toggle between \f(CW\*(C`^H\*(C'\fR and \f(CW\*(C`^?\*(C'\fR with the \s-1DECBKM\s0
+private mode:
+.PP
+.Vb 3
+\& # use Backspace = ^H
+\& $ stty erase ^H
+\& $ printf "\ee[?67h"
+\&
+\& # use Backspace = ^?
+\& $ stty erase ^?
+\& $ printf "\ee[?67l"
+.Ve
+.PP
+This helps satisfy some of the Backspace discrepancies that occur, but
+if you use Backspace = \f(CW\*(C`^H\*(C'\fR, make sure that the termcap/terminfo value
+properly reflects that.
+.PP
+The Delete key is a another casualty of the ill-defined Backspace problem.
+To avoid confusion between the Backspace and Delete keys, the Delete
+key has been assigned an escape sequence to match the vt100 for Execute
+(\f(CW\*(C`ESC [ 3 ~\*(C'\fR) and is in the supplied termcap/terminfo.
+.PP
+Some other Backspace problems:
+.PP
+some editors use termcap/terminfo,
+some editors (vim I'm told) expect Backspace = ^H,
+\&\s-1GNU\s0 Emacs (and Emacs-like editors) use ^H for help.
+.PP
+Perhaps someday this will all be resolved in a consistent manner.
+.PP
+\fII don't like the key-bindings. How do I change them?\fR
+.IX Subsection "I don't like the key-bindings. How do I change them?"
+.PP
+There are some compile-time selections available via configure. Unless
+you have run \*(L"configure\*(R" with the \f(CW\*(C`\-\-disable\-resources\*(C'\fR option you can
+use the `keysym' resource to alter the keystrings associated with keysyms.
+.PP
+Here's an example for a URxvt session started using \f(CW\*(C`@@URXVT_NAME@@ \-name URxvt\*(C'\fR
+.PP
+.Vb 8
+\& URxvt.keysym.Prior: \e033[5~
+\& URxvt.keysym.Next: \e033[6~
+\& URxvt.keysym.Home: \e033[7~
+\& URxvt.keysym.End: \e033[8~
+\& URxvt.keysym.Up: \e033[A
+\& URxvt.keysym.Down: \e033[B
+\& URxvt.keysym.Right: \e033[C
+\& URxvt.keysym.Left: \e033[D
+.Ve
+.PP
+See some more examples in the documentation for the \fBkeysym\fR resource.
+.PP
+\fII'm using keyboard model \s-1XXX\s0 that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map\fR
+.IX Subsection "I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map"
+.PP
+.Vb 6
+\& KP_Insert == Insert
+\& F22 == Print
+\& F27 == Home
+\& F29 == Prior
+\& F33 == End
+\& F35 == Next
+.Ve
+.PP
+Rather than have rxvt-unicode try to accommodate all the various possible
+keyboard mappings, it is better to use `xmodmap' to remap the keys as
+required for your particular machine.
+.SS "Terminal Configuration"
+.IX Subsection "Terminal Configuration"
+\fICan I see a typical configuration?\fR
+.IX Subsection "Can I see a typical configuration?"
+.PP
+The default configuration tries to be xterm-like, which I don't like that
+much, but it's least surprise to regular users.
+.PP
+As a rxvt or rxvt-unicode user, you are practically supposed to invest
+time into customising your terminal. To get you started, here is the
+author's .Xdefaults entries, with comments on what they do. It's certainly
+not \fItypical\fR, but what's typical...
+.PP
+.Vb 2
+\& URxvt.cutchars: "()*,<>[]{}|\*(Aq
+\& URxvt.print\-pipe: cat >/tmp/xxx
+.Ve
+.PP
+These are just for testing stuff.
+.PP
+.Vb 2
+\& URxvt.imLocale: ja_JP.UTF\-8
+\& URxvt.preeditType: OnTheSpot,None
+.Ve
+.PP
+This tells rxvt-unicode to use a special locale when communicating with
+the X Input Method, and also tells it to only use the OnTheSpot pre-edit
+type, which requires the \f(CW\*(C`xim\-onthespot\*(C'\fR perl extension but rewards me
+with correct-looking fonts.
+.PP
+.Vb 6
+\& URxvt.perl\-lib: /root/lib/urxvt
+\& URxvt.perl\-ext\-common: default,selection\-autotransform,selection\-pastebin,xim\-onthespot,remote\-clipboard
+\& URxvt.selection.pattern\-0: ( at .*? line \e\ed+)
+\& URxvt.selection.pattern\-1: ^(/[^:]+):\e
+\& URxvt.selection\-autotransform.0: s/^([^:[:space:]]+):(\e\ed+):?$/:e \e\eQ$1\e\eE\e\ex0d:$2\e\ex0d/
+\& URxvt.selection\-autotransform.1: s/^ at (.*?) line (\e\ed+)$/:e \e\eQ$1\e\eE\e\ex0d:$2\e\ex0d/
+.Ve
+.PP
+This is my perl configuration. The first two set the perl library
+directory and also tells urxvt to use a large number of extensions. I
+develop for myself mostly, so I actually use most of the extensions I
+write.
+.PP
+The selection stuff mainly makes the selection perl-error-message aware
+and tells it to convert perl error messages into vi-commands to load the
+relevant file and go to the error line number.
+.PP
+.Vb 2
+\& URxvt.scrollstyle: plain
+\& URxvt.secondaryScroll: true
+.Ve
+.PP
+As the documentation says: plain is the preferred scrollbar for the
+author. The \f(CW\*(C`secondaryScroll\*(C'\fR configures urxvt to scroll in full-screen
+apps, like screen, so lines scrolled out of screen end up in urxvt's
+scrollback buffer.
+.PP
+.Vb 7
+\& URxvt.background: #000000
+\& URxvt.foreground: gray90
+\& URxvt.color7: gray90
+\& URxvt.colorBD: #ffffff
+\& URxvt.cursorColor: #e0e080
+\& URxvt.throughColor: #8080f0
+\& URxvt.highlightColor: #f0f0f0
+.Ve
+.PP
+Some colours. Not sure which ones are being used or even non-defaults, but
+these are in my .Xdefaults. Most notably, they set foreground/background
+to light gray/black, and also make sure that the colour 7 matches the
+default foreground colour.
+.PP
+.Vb 1
+\& URxvt.underlineColor: yellow
+.Ve
+.PP
+Another colour, makes underline lines look different. Sometimes hurts, but
+is mostly a nice effect.
+.PP
+.Vb 4
+\& URxvt.geometry: 154x36
+\& URxvt.loginShell: false
+\& URxvt.meta: ignore
+\& URxvt.utmpInhibit: true
+.Ve
+.PP
+Uh, well, should be mostly self-explanatory. By specifying some defaults
+manually, I can quickly switch them for testing.
+.PP
+.Vb 1
+\& URxvt.saveLines: 8192
+.Ve
+.PP
+A large scrollback buffer is essential. Really.
+.PP
+.Vb 1
+\& URxvt.mapAlert: true
+.Ve
+.PP
+The only case I use it is for my \s-1IRC\s0 window, which I like to keep
+iconified till people msg me (which beeps).
+.PP
+.Vb 1
+\& URxvt.visualBell: true
+.Ve
+.PP
+The audible bell is often annoying, especially when in a crowd.
+.PP
+.Vb 1
+\& URxvt.insecure: true
+.Ve
+.PP
+Please don't hack my mutt! Ooops...
+.PP
+.Vb 1
+\& URxvt.pastableTabs: false
+.Ve
+.PP
+I once thought this is a great idea.
+.PP
+.Vb 9
+\& urxvt.font: 9x15bold,\e
+\& \-misc\-fixed\-bold\-r\-normal\-\-15\-140\-75\-75\-c\-90\-iso10646\-1,\e
+\& \-misc\-fixed\-medium\-r\-normal\-\-15\-140\-75\-75\-c\-90\-iso10646\-1, \e
+\& [codeset=JISX0208]xft:Kochi Gothic, \e
+\& xft:Bitstream Vera Sans Mono:autohint=true, \e
+\& xft:Code2000:antialias=false
+\& urxvt.boldFont: \-xos4\-terminus\-bold\-r\-normal\-\-14\-140\-72\-72\-c\-80\-iso8859\-15
+\& urxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
+\& urxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
+.Ve
+.PP
+I wrote rxvt-unicode to be able to specify fonts exactly. So don't be
+overwhelmed. A special note: the \f(CW\*(C`9x15bold\*(C'\fR mentioned above is actually
+the version from XFree\-3.3, as XFree\-4 replaced it by a totally different
+font (different glyphs for \f(CW\*(C`;\*(C'\fR and many other harmless characters),
+while the second font is actually the \f(CW\*(C`9x15bold\*(C'\fR from XFree4/XOrg. The
+bold version has less chars than the medium version, so I use it for rare
+characters, too. When editing sources with vim, I use italic for comments
+and other stuff, which looks quite good with Bitstream Vera anti-aliased.
+.PP
+Terminus is a quite bad font (many very wrong glyphs), but for most of my
+purposes, it works, and gives a different look, as my normal (Non-bold)
+font is already bold, and I want to see a difference between bold and
+normal fonts.
+.PP
+Please note that I used the \f(CW\*(C`urxvt\*(C'\fR instance name and not the \f(CW\*(C`URxvt\*(C'\fR
+class name. That is because I use different configs for different purposes,
+for example, my \s-1IRC\s0 window is started with \f(CW\*(C`\-name IRC\*(C'\fR, and uses these
+defaults:
+.PP
+.Vb 9
+\& IRC*title: IRC
+\& IRC*geometry: 87x12+535+542
+\& IRC*saveLines: 0
+\& IRC*mapAlert: true
+\& IRC*font: suxuseuro
+\& IRC*boldFont: suxuseuro
+\& IRC*colorBD: white
+\& IRC*keysym.M\-C\-1: command:\e033]710;suxuseuro\e007\e033]711;suxuseuro\e007
+\& IRC*keysym.M\-C\-2: command:\e033]710;9x15bold\e007\e033]711;9x15bold\e007
+.Ve
+.PP
+\&\f(CW\*(C`Alt\-Ctrl\-1\*(C'\fR and \f(CW\*(C`Alt\-Ctrl\-2\*(C'\fR switch between two different font
+sizes. \f(CW\*(C`suxuseuro\*(C'\fR allows me to keep an eye (and actually read)
+stuff while keeping a very small window. If somebody pastes something
+complicated (e.g. japanese), I temporarily switch to a larger font.
+.PP
+The above is all in my \f(CW\*(C`.Xdefaults\*(C'\fR (I don't use \f(CW\*(C`.Xresources\*(C'\fR nor
+\&\f(CW\*(C`xrdb\*(C'\fR). I also have some resources in a separate \f(CW\*(C`.Xdefaults\-hostname\*(C'\fR
+file for different hosts, for example, on my main desktop, I use:
+.PP
+.Vb 5
+\& URxvt.keysym.C\-M\-q: command:\e033[3;5;5t
+\& URxvt.keysym.C\-M\-y: command:\e033[3;5;606t
+\& URxvt.keysym.C\-M\-e: command:\e033[3;1605;5t
+\& URxvt.keysym.C\-M\-c: command:\e033[3;1605;606t
+\& URxvt.keysym.C\-M\-p: perl:test
+.Ve
+.PP
+The first for keysym definitions allow me to quickly bring some windows
+in the layout I like most. Ion users might start laughing but will stop
+immediately when I tell them that I use my own Fvwm2 module for much the
+same effect as Ion provides, and I only very rarely use the above key
+combinations :\->
+.PP
+\fIWhy doesn't rxvt-unicode read my resources?\fR
+.IX Subsection "Why doesn't rxvt-unicode read my resources?"
+.PP
+Well, why, indeed? It does, in a way very similar to other X
+applications. Most importantly, this means that if you or your \s-1OS\s0 loads
+resources into the X display (the right way to do it), rxvt-unicode will
+ignore any resource files in your home directory. It will only read
+\&\fI\f(CI$HOME\fI/.Xdefaults\fR when no resources are attached to the display.
+.PP
+If you have or use an \fI\f(CI$HOME\fI/.Xresources\fR file, chances are that
+resources are loaded into your X\-server. In this case, you have to
+re-login after every change (or run \fIxrdb \-merge \f(CI$HOME\fI/.Xresources\fR).
+.PP
+Also consider the form resources have to use:
+.PP
+.Vb 1
+\& URxvt.resource: value
+.Ve
+.PP
+If you want to use another form (there are lots of different ways of
+specifying resources), make sure you understand whether and why it
+works. If unsure, use the form above.
+.PP
+\fIWhen I log-in to another system it tells me about missing terminfo data?\fR
+.IX Subsection "When I log-in to another system it tells me about missing terminfo data?"
+.PP
+The terminal description used by rxvt-unicode is not as widely available
+as that for xterm, or even rxvt (for which the same problem often arises).
+.PP
+The correct solution for this problem is to install the terminfo, this can
+be done by simply installing rxvt-unicode on the remote system as well
+(in case you have a nice package manager ready), or you can install the
+terminfo database manually like this (with ncurses infocmp. works as
+user and root):
+.PP
+.Vb 2
+\& REMOTE=remotesystem.domain
+\& infocmp rxvt\-unicode | ssh $REMOTE "mkdir \-p .terminfo && cat >/tmp/ti && tic /tmp/ti"
+.Ve
+.PP
+One some systems you might need to set \f(CW$TERMINFO\fR to the full path of
+\&\fI\f(CI$HOME\fI/.terminfo\fR for this to work.
+.PP
+If you cannot or do not want to do this, then you can simply set
+\&\f(CW\*(C`TERM=rxvt\*(C'\fR or even \f(CW\*(C`TERM=xterm\*(C'\fR, and live with the small number of
+problems arising, which includes wrong keymapping, less and different
+colours and some refresh errors in fullscreen applications. It's a nice
+quick-and-dirty workaround for rare cases, though.
+.PP
+If you always want to do this (and are fine with the consequences) you
+can either recompile rxvt-unicode with the desired \s-1TERM\s0 value or use a
+resource to set it:
+.PP
+.Vb 1
+\& URxvt.termName: rxvt
+.Ve
+.PP
+If you don't plan to use \fBrxvt\fR (quite common...) you could also replace
+the rxvt terminfo file with the rxvt-unicode one and use \f(CW\*(C`TERM=rxvt\*(C'\fR.
+.PP
+\fInano fails with \*(L"Error opening terminal: rxvt-unicode\*(R"\fR
+.IX Subsection "nano fails with Error opening terminal: rxvt-unicode"
+.PP
+This exceptionally confusing and useless error message is printed by nano
+when it can't find the terminfo database. Nothing is wrong with your
+terminal, read the previous answer for a solution.
+.PP
+\fI\f(CI\*(C`tic\*(C'\fI outputs some error when compiling the terminfo entry.\fR
+.IX Subsection "tic outputs some error when compiling the terminfo entry."
+.PP
+Most likely it's the empty definition for \f(CW\*(C`enacs=\*(C'\fR. Just replace it by
+\&\f(CW\*(C`enacs=\eE[0@\*(C'\fR and try again.
+.PP
+\fI\f(CI\*(C`bash\*(C'\fI's readline does not work correctly under @@URXVT_NAME@@.\fR
+.IX Subsection "bash's readline does not work correctly under @@URXVT_NAME@@."
+.PP
+See next entry.
+.PP
+\fII need a termcap file entry.\fR
+.IX Subsection "I need a termcap file entry."
+.PP
+One reason you might want this is that some distributions or operating
+systems still compile some programs using the long-obsoleted termcap
+library (Fedora's bash is one example) and rely on a termcap entry
+for \f(CW\*(C`rxvt\-unicode\*(C'\fR.
+.PP
+You could use rxvt's termcap entry with reasonable results in many cases.
+You can also create a termcap entry by using terminfo's infocmp program
+like this:
+.PP
+.Vb 1
+\& infocmp \-C rxvt\-unicode
+.Ve
+.PP
+Or you could use the termcap entry in doc/etc/rxvt\-unicode.termcap,
+generated by the command above.
+.PP
+\fIWhy does \f(CI\*(C`ls\*(C'\fI no longer have coloured output?\fR
+.IX Subsection "Why does ls no longer have coloured output?"
+.PP
+The \f(CW\*(C`ls\*(C'\fR in the \s-1GNU\s0 coreutils unfortunately doesn't use terminfo to
+decide whether a terminal has colour, but uses its own configuration
+file. Needless to say, \f(CW\*(C`rxvt\-unicode\*(C'\fR is not in its default file (among
+with most other terminals supporting colour). Either add:
+.PP
+.Vb 1
+\& TERM rxvt\-unicode
+.Ve
+.PP
+to \f(CW\*(C`/etc/DIR_COLORS\*(C'\fR or simply add:
+.PP
+.Vb 1
+\& alias ls=\*(Aqls \-\-color=auto\*(Aq
+.Ve
+.PP
+to your \f(CW\*(C`.profile\*(C'\fR or \f(CW\*(C`.bashrc\*(C'\fR.
+.PP
+\fIWhy doesn't vim/emacs etc. use the 88 colour mode?\fR
+.IX Subsection "Why doesn't vim/emacs etc. use the 88 colour mode?"
+.PP
+See next entry.
+.PP
+\fIWhy doesn't vim/emacs etc. make use of italic?\fR
+.IX Subsection "Why doesn't vim/emacs etc. make use of italic?"
+.PP
+See next entry.
+.PP
+\fIWhy are the secondary screen-related options not working properly?\fR
+.IX Subsection "Why are the secondary screen-related options not working properly?"
+.PP
+Make sure you are using \f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR. Some pre-packaged
+distributions break rxvt-unicode by setting \f(CW\*(C`TERM\*(C'\fR to \f(CW\*(C`rxvt\*(C'\fR, which
+doesn't have these extra features. Unfortunately, some of these
+furthermore fail to even install the \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo file, so
+you will need to install it on your own (See the question \fBWhen I
+log-in to another system it tells me about missing terminfo data?\fR on
+how to do this).
+.SS "Encoding / Locale / Input Method Issues"
+.IX Subsection "Encoding / Locale / Input Method Issues"
+\fIRxvt-unicode does not seem to understand the selected encoding?\fR
+.IX Subsection "Rxvt-unicode does not seem to understand the selected encoding?"
+.PP
+See next entry.
+.PP
+\fIUnicode does not seem to work?\fR
+.IX Subsection "Unicode does not seem to work?"
+.PP
+If you encounter strange problems like typing an accented character but
+getting two unrelated other characters or similar, or if program output is
+subtly garbled, then you should check your locale settings.
+.PP
+Rxvt-unicode must be started with the same \f(CW\*(C`LC_CTYPE\*(C'\fR setting as the
+programs running in it. Often rxvt-unicode is started in the \f(CW\*(C`C\*(C'\fR locale,
+while the login script running within the rxvt-unicode window changes the
+locale to something else, e.g. \f(CW\*(C`en_GB.UTF\-8\*(C'\fR. Needless to say, this is
+not going to work, and is the most common cause for problems.
+.PP
+The best thing is to fix your startup environment, as you will likely run
+into other problems. If nothing works you can try this in your .profile.
+.PP
+.Vb 1
+\& printf \*(Aq\e33]701;%s\e007\*(Aq "$LC_CTYPE" # $LANG or $LC_ALL are worth a try, too
+.Ve
+.PP
+If this doesn't work, then maybe you use a \f(CW\*(C`LC_CTYPE\*(C'\fR specification not
+supported on your systems. Some systems have a \f(CW\*(C`locale\*(C'\fR command which
+displays this (also, \f(CW\*(C`perl \-e0\*(C'\fR can be used to check locale settings, as
+it will complain loudly if it cannot set the locale). If it displays something
+like:
+.PP
+.Vb 1
+\& locale: Cannot set LC_CTYPE to default locale: ...
+.Ve
+.PP
+Then the locale you specified is not supported on your system.
+.PP
+If nothing works and you are sure that everything is set correctly then
+you will need to remember a little known fact: Some programs just don't
+support locales :(
+.PP
+\fIHow does rxvt-unicode determine the encoding to use?\fR
+.IX Subsection "How does rxvt-unicode determine the encoding to use?"
+.PP
+See next entry.
+.PP
+\fIIs there an option to switch encodings?\fR
+.IX Subsection "Is there an option to switch encodings?"
+.PP
+Unlike some other terminals, rxvt-unicode has no encoding switch, and no
+specific \*(L"utf\-8\*(R" mode, such as xterm. In fact, it doesn't even know about
+\&\s-1UTF\-8\s0 or any other encodings with respect to terminal I/O.
+.PP
+The reasons is that there exists a perfectly fine mechanism for selecting
+the encoding, doing I/O and (most important) communicating this to all
+applications so everybody agrees on character properties such as width
+and code number. This mechanism is the \fIlocale\fR. Applications not using
+that info will have problems (for example, \f(CW\*(C`xterm\*(C'\fR gets the width of
+characters wrong as it uses its own, locale-independent table under all
+locales).
+.PP
+Rxvt-unicode uses the \f(CW\*(C`LC_CTYPE\*(C'\fR locale category to select encoding. All
+programs doing the same (that is, most) will automatically agree in the
+interpretation of characters.
+.PP
+Unfortunately, there is no system-independent way to select locales, nor
+is there a standard on how locale specifiers will look like.
+.PP
+On most systems, the content of the \f(CW\*(C`LC_CTYPE\*(C'\fR environment variable
+contains an arbitrary string which corresponds to an already-installed
+locale. Common names for locales are \f(CW\*(C`en_US.UTF\-8\*(C'\fR, \f(CW\*(C`de_DE.ISO\-8859\-15\*(C'\fR,
+\&\f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR, i.e. \f(CW\*(C`language_country.encoding\*(C'\fR, but other forms
+(i.e. \f(CW\*(C`de\*(C'\fR or \f(CW\*(C`german\*(C'\fR) are also common.
+.PP
+Rxvt-unicode ignores all other locale categories, and except for
+the encoding, ignores country or language-specific settings,
+i.e. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR and \f(CW\*(C`ja_JP.UTF\-8\*(C'\fR are the normally same to
+rxvt-unicode.
+.PP
+If you want to use a specific encoding you have to make sure you start
+rxvt-unicode with the correct \f(CW\*(C`LC_CTYPE\*(C'\fR category.
+.PP
+\fICan I switch locales at runtime?\fR
+.IX Subsection "Can I switch locales at runtime?"
+.PP
+Yes, using an escape sequence. Try something like this, which sets
+rxvt-unicode's idea of \f(CW\*(C`LC_CTYPE\*(C'\fR.
+.PP
+.Vb 1
+\& printf \*(Aq\e33]701;%s\e007\*(Aq ja_JP.SJIS
+.Ve
+.PP
+See also the previous answer.
+.PP
+Sometimes this capability is rather handy when you want to work in
+one locale (e.g. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR) but some programs don't support it
+(e.g. \s-1UTF\-8\s0). For example, I use this script to start \f(CW\*(C`xjdic\*(C'\fR, which
+first switches to a locale supported by xjdic and back later:
+.PP
+.Vb 3
+\& printf \*(Aq\e33]701;%s\e007\*(Aq ja_JP.SJIS
+\& xjdic \-js
+\& printf \*(Aq\e33]701;%s\e007\*(Aq de_DE.UTF\-8
+.Ve
+.PP
+You can also use xterm's \f(CW\*(C`luit\*(C'\fR program, which usually works fine, except
+for some locales where character width differs between program\- and
+rxvt-unicode-locales.
+.PP
+\fII have problems getting my input method working.\fR
+.IX Subsection "I have problems getting my input method working."
+.PP
+Try a search engine, as this is slightly different for every input method server.
+.PP
+Here is a checklist:
+.IP "\- Make sure your locale \fIand\fR the imLocale are supported on your \s-1OS.\s0" 4
+.IX Item "- Make sure your locale and the imLocale are supported on your OS."
+Try \f(CW\*(C`locale \-a\*(C'\fR or check the documentation for your \s-1OS.\s0
+.IP "\- Make sure your locale or imLocale matches a locale supported by your \s-1XIM.\s0" 4
+.IX Item "- Make sure your locale or imLocale matches a locale supported by your XIM."
+For example, \fBkinput2\fR does not support \s-1UTF\-8\s0 locales, you should use
+\&\f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR or equivalent.
+.IP "\- Make sure your \s-1XIM\s0 server is actually running." 4
+.IX Item "- Make sure your XIM server is actually running."
+.PD 0
+.ie n .IP "\- Make sure the ""XMODIFIERS"" environment variable is set correctly when \fIstarting\fR rxvt-unicode." 4
+.el .IP "\- Make sure the \f(CWXMODIFIERS\fR environment variable is set correctly when \fIstarting\fR rxvt-unicode." 4
+.IX Item "- Make sure the XMODIFIERS environment variable is set correctly when starting rxvt-unicode."
+.PD
+When you want to use e.g. \fBkinput2\fR, it must be set to
+\&\f(CW\*(C`@im=kinput2\*(C'\fR. For \fBscim\fR, use \f(CW\*(C`@im=SCIM\*(C'\fR. You can see what input
+method servers are running with this command:
+.Sp
+.Vb 1
+\& xprop \-root XIM_SERVERS
+.Ve
+.PP
+\fIMy input method wants <some encoding> but I want \s-1UTF\-8,\s0 what can I do?\fR
+.IX Subsection "My input method wants <some encoding> but I want UTF-8, what can I do?"
+.PP
+You can specify separate locales for the input method and the rest of the
+terminal, using the resource \f(CW\*(C`imlocale\*(C'\fR:
+.PP
+.Vb 1
+\& URxvt.imlocale: ja_JP.EUC\-JP
+.Ve
+.PP
+Now you can start your terminal with \f(CW\*(C`LC_CTYPE=ja_JP.UTF\-8\*(C'\fR and still
+use your input method. Please note, however, that, depending on your Xlib
+version, you may not be able to input characters outside \f(CW\*(C`EUC\-JP\*(C'\fR in a
+normal way then, as your input method limits you.
+.PP
+\fIRxvt-unicode crashes when the X Input Method changes or exits.\fR
+.IX Subsection "Rxvt-unicode crashes when the X Input Method changes or exits."
+.PP
+Unfortunately, this is unavoidable, as the \s-1XIM\s0 protocol is racy by
+design. Applications can avoid some crashes at the expense of memory
+leaks, and Input Methods can avoid some crashes by careful ordering at
+exit time. \fBkinput2\fR (and derived input methods) generally succeeds,
+while \fB\s-1SCIM\s0\fR (or similar input methods) fails. In the end, however,
+crashes cannot be completely avoided even if both sides cooperate.
+.PP
+So the only workaround is not to kill your Input Method Servers.
+.SS "Operating Systems / Package Maintaining"
+.IX Subsection "Operating Systems / Package Maintaining"
+\fII am maintaining rxvt-unicode for distribution/OS \s-1XXX,\s0 any recommendation?\fR
+.IX Subsection "I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation?"
+.PP
+You should build one binary with the default options. \fIconfigure\fR
+now enables most useful options, and the trend goes to making them
+runtime-switchable, too, so there is usually no drawback to enabling them,
+except higher disk and possibly memory usage. The perl interpreter should
+be enabled, as important functionality (menus, selection, likely more in
+the future) depends on it.
+.PP
+You should not overwrite the \f(CW\*(C`perl\-ext\-common\*(C'\fR and \f(CW\*(C`perl\-ext\*(C'\fR resources
+system-wide (except maybe with \f(CW\*(C`defaults\*(C'\fR). This will result in useful
+behaviour. If your distribution aims at low memory, add an empty
+\&\f(CW\*(C`perl\-ext\-common\*(C'\fR resource to the app-defaults file. This will keep the
+perl interpreter disabled until the user enables it.
+.PP
+If you can/want build more binaries, I recommend building a minimal
+one with \f(CW\*(C`\-\-disable\-everything\*(C'\fR (very useful) and a maximal one with
+\&\f(CW\*(C`\-\-enable\-everything\*(C'\fR (less useful, it will be very big due to a lot of
+encodings built-in that increase download times and are rarely used).
+.PP
+\fII need to make it setuid/setgid to support utmp/ptys on my \s-1OS,\s0 is this safe?\fR
+.IX Subsection "I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?"
+.PP
+It should be, starting with release 7.1. You are encouraged to properly
+install urxvt with privileges necessary for your \s-1OS\s0 now.
+.PP
+When rxvt-unicode detects that it runs setuid or setgid, it will fork
+into a helper process for privileged operations (pty handling on some
+systems, utmp/wtmp/lastlog handling on others) and drop privileges
+immediately. This is much safer than most other terminals that keep
+privileges while running (but is more relevant to urxvt, as it contains
+things as perl interpreters, which might be \*(L"helpful\*(R" to attackers).
+.PP
+This forking is done as the very first within \fImain()\fR, which is very early
+and reduces possible bugs to initialisation code run before \fImain()\fR, or
+things like the dynamic loader of your system, which should result in very
+little risk.
+.PP
+\fII am on FreeBSD and rxvt-unicode does not seem to work at all.\fR
+.IX Subsection "I am on FreeBSD and rxvt-unicode does not seem to work at all."
+.PP
+Rxvt-unicode requires the symbol \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR to be defined
+in your compile environment, or an implementation that implements it,
+whether it defines the symbol or not. \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR requires that
+\&\fBwchar_t\fR is represented as unicode.
+.PP
+As you might have guessed, FreeBSD does neither define this symbol nor
+does it support it. Instead, it uses its own internal representation of
+\&\fBwchar_t\fR. This is, of course, completely fine with respect to standards.
+.PP
+However, that means rxvt-unicode only works in \f(CW\*(C`POSIX\*(C'\fR, \f(CW\*(C`ISO\-8859\-1\*(C'\fR and
+\&\f(CW\*(C`UTF\-8\*(C'\fR locales under FreeBSD (which all use Unicode as \fBwchar_t\fR).
+.PP
+\&\f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR is the only sane way to support multi-language
+apps in an \s-1OS,\s0 as using a locale-dependent (and non-standardized)
+representation of \fBwchar_t\fR makes it impossible to convert between
+\&\fBwchar_t\fR (as used by X11 and your applications) and any other encoding
+without implementing OS-specific-wrappers for each and every locale. There
+simply are no APIs to convert \fBwchar_t\fR into anything except the current
+locale encoding.
+.PP
+Some applications (such as the formidable \fBmlterm\fR) work around this
+by carrying their own replacement functions for character set handling
+with them, and either implementing OS-dependent hacks or doing multiple
+conversions (which is slow and unreliable in case the \s-1OS\s0 implements
+encodings slightly different than the terminal emulator).
+.PP
+The rxvt-unicode author insists that the right way to fix this is in the
+system libraries once and for all, instead of forcing every app to carry
+complete replacements for them :)
+.PP
+\fIHow can I use rxvt-unicode under cygwin?\fR
+.IX Subsection "How can I use rxvt-unicode under cygwin?"
+.PP
+rxvt-unicode should compile and run out of the box on cygwin, using
+the X11 libraries that come with cygwin. libW11 emulation is no
+longer supported (and makes no sense, either, as it only supported a
+single font). I recommend starting the X\-server in \f(CW\*(C`\-multiwindow\*(C'\fR or
+\&\f(CW\*(C`\-rootless\*(C'\fR mode instead, which will result in similar look&feel as the
+old libW11 emulation.
+.PP
+At the time of this writing, cygwin didn't seem to support any multi-byte
+encodings (you might try \f(CW\*(C`LC_CTYPE=C\-UTF\-8\*(C'\fR), so you are likely limited
+to 8\-bit encodings.
+.PP
+\fICharacter widths are not correct.\fR
+.IX Subsection "Character widths are not correct."
+.PP
+urxvt uses the system wcwidth function to know the information about
+the width of characters, so on systems with incorrect locale data you
+will likely get bad results. Two notorious examples are Solaris 9,
+where single-width characters like U+2514 are reported as double-width,
+and Darwin 8, where combining chars are reported having width 1.
+.PP
+The solution is to upgrade your system or switch to a better one. A
+possibly working workaround is to use a wcwidth implementation like
+.PP
+http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+.SH "RXVT-UNICODE TECHNICAL REFERENCE"
+.IX Header "RXVT-UNICODE TECHNICAL REFERENCE"
+The rest of this document describes various technical aspects of
+\&\fBrxvt-unicode\fR. First the description of supported command sequences,
+followed by pixmap support and last by a description of all features
+selectable at \f(CW\*(C`configure\*(C'\fR time.
+.SS "Definitions"
+.IX Subsection "Definitions"
+.ie n .IP "\fB\fB""c""\fB\fR" 4
+.el .IP "\fB\f(CBc\fB\fR" 4
+.IX Item "c"
+The literal character c (potentially a multi-byte character).
+.ie n .IP "\fB\fB""C""\fB\fR" 4
+.el .IP "\fB\f(CBC\fB\fR" 4
+.IX Item "C"
+A single (required) character.
+.ie n .IP "\fB\fB""Ps""\fB\fR" 4
+.el .IP "\fB\f(CBPs\fB\fR" 4
+.IX Item "Ps"
+A single (usually optional) numeric parameter, composed of one or more
+digits.
+.ie n .IP "\fB\fB""Pm""\fB\fR" 4
+.el .IP "\fB\f(CBPm\fB\fR" 4
+.IX Item "Pm"
+A multiple numeric parameter composed of any number of single numeric
+parameters, separated by \f(CW\*(C`;\*(C'\fR character(s).
+.ie n .IP "\fB\fB""Pt""\fB\fR" 4
+.el .IP "\fB\f(CBPt\fB\fR" 4
+.IX Item "Pt"
+A text parameter composed of printable characters.
+.SS "Values"
+.IX Subsection "Values"
+.ie n .IP "\fB\fB""ENQ""\fB\fR" 4
+.el .IP "\fB\f(CBENQ\fB\fR" 4
+.IX Item "ENQ"
+Enquiry (Ctrl-E) = Send Device Attributes (\s-1DA\s0)
+request attributes from terminal. See \fB\f(CB\*(C`ESC [ Ps c\*(C'\fB\fR.
+.ie n .IP "\fB\fB""BEL""\fB\fR" 4
+.el .IP "\fB\f(CBBEL\fB\fR" 4
+.IX Item "BEL"
+Bell (Ctrl-G)
+.ie n .IP "\fB\fB""BS""\fB\fR" 4
+.el .IP "\fB\f(CBBS\fB\fR" 4
+.IX Item "BS"
+Backspace (Ctrl-H)
+.ie n .IP "\fB\fB""TAB""\fB\fR" 4
+.el .IP "\fB\f(CBTAB\fB\fR" 4
+.IX Item "TAB"
+Horizontal Tab (\s-1HT\s0) (Ctrl-I)
+.ie n .IP "\fB\fB""LF""\fB\fR" 4
+.el .IP "\fB\f(CBLF\fB\fR" 4
+.IX Item "LF"
+Line Feed or New Line (\s-1NL\s0) (Ctrl-J)
+.ie n .IP "\fB\fB""VT""\fB\fR" 4
+.el .IP "\fB\f(CBVT\fB\fR" 4
+.IX Item "VT"
+Vertical Tab (Ctrl-K) same as \fB\f(CB\*(C`LF\*(C'\fB\fR
+.ie n .IP "\fB\fB""FF""\fB\fR" 4
+.el .IP "\fB\f(CBFF\fB\fR" 4
+.IX Item "FF"
+Form Feed or New Page (\s-1NP\s0) (Ctrl-L) same as \fB\f(CB\*(C`LF\*(C'\fB\fR
+.ie n .IP "\fB\fB""CR""\fB\fR" 4
+.el .IP "\fB\f(CBCR\fB\fR" 4
+.IX Item "CR"
+Carriage Return (Ctrl-M)
+.ie n .IP "\fB\fB""SO""\fB\fR" 4
+.el .IP "\fB\f(CBSO\fB\fR" 4
+.IX Item "SO"
+Shift Out (Ctrl-N), invokes the G1 character set.
+Switch to Alternate Character Set
+.ie n .IP "\fB\fB""SI""\fB\fR" 4
+.el .IP "\fB\f(CBSI\fB\fR" 4
+.IX Item "SI"
+Shift In (Ctrl-O), invokes the G0 character set (the default).
+Switch to Standard Character Set
+.ie n .IP "\fB\fB""SP""\fB\fR" 4
+.el .IP "\fB\f(CBSP\fB\fR" 4
+.IX Item "SP"
+Space Character
+.SS "Escape Sequences"
+.IX Subsection "Escape Sequences"
+.ie n .IP "\fB\fB""ESC # 8""\fB\fR" 4
+.el .IP "\fB\f(CBESC # 8\fB\fR" 4
+.IX Item "ESC # 8"
+\&\s-1DEC\s0 Screen Alignment Test (\s-1DECALN\s0)
+.ie n .IP "\fB\fB""ESC 7""\fB\fR" 4
+.el .IP "\fB\f(CBESC 7\fB\fR" 4
+.IX Item "ESC 7"
+Save Cursor (\s-1SC\s0)
+.ie n .IP "\fB\fB""ESC 8""\fB\fR" 4
+.el .IP "\fB\f(CBESC 8\fB\fR" 4
+.IX Item "ESC 8"
+Restore Cursor
+.ie n .IP "\fB\fB""ESC =""\fB\fR" 4
+.el .IP "\fB\f(CBESC =\fB\fR" 4
+.IX Item "ESC ="
+Application Keypad (\s-1SMKX\s0). See also next sequence.
+.ie n .IP "\fB\fB""ESC >""\fB\fR" 4
+.el .IP "\fB\f(CBESC >\fB\fR" 4
+.IX Item "ESC >"
+Normal Keypad (\s-1RMKX\s0)
+.Sp
+\&\fBNote:\fR numbers or control functions are generated by the numeric
+keypad in normal or application mode, respectively (see Key Codes).
+.ie n .IP "\fB\fB""ESC D""\fB\fR" 4
+.el .IP "\fB\f(CBESC D\fB\fR" 4
+.IX Item "ESC D"
+Index (\s-1IND\s0)
+.ie n .IP "\fB\fB""ESC E""\fB\fR" 4
+.el .IP "\fB\f(CBESC E\fB\fR" 4
+.IX Item "ESC E"
+Next Line (\s-1NEL\s0)
+.ie n .IP "\fB\fB""ESC H""\fB\fR" 4
+.el .IP "\fB\f(CBESC H\fB\fR" 4
+.IX Item "ESC H"
+Tab Set (\s-1HTS\s0)
+.ie n .IP "\fB\fB""ESC M""\fB\fR" 4
+.el .IP "\fB\f(CBESC M\fB\fR" 4
+.IX Item "ESC M"
+Reverse Index (\s-1RI\s0)
+.ie n .IP "\fB\fB""ESC N""\fB\fR" 4
+.el .IP "\fB\f(CBESC N\fB\fR" 4
+.IX Item "ESC N"
+Single Shift Select of G2 Character Set (\s-1SS2\s0): affects next character
+only \fIunimplemented\fR
+.ie n .IP "\fB\fB""ESC O""\fB\fR" 4
+.el .IP "\fB\f(CBESC O\fB\fR" 4
+.IX Item "ESC O"
+Single Shift Select of G3 Character Set (\s-1SS3\s0): affects next character
+only \fIunimplemented\fR
+.ie n .IP "\fB\fB""ESC Z""\fB\fR" 4
+.el .IP "\fB\f(CBESC Z\fB\fR" 4
+.IX Item "ESC Z"
+Obsolete form of returns: \fB\f(CB\*(C`ESC [ ? 1 ; 2 C\*(C'\fB\fR \fIrxvt-unicode compile-time option\fR
+.ie n .IP "\fB\fB""ESC c""\fB\fR" 4
+.el .IP "\fB\f(CBESC c\fB\fR" 4
+.IX Item "ESC c"
+Full reset (\s-1RIS\s0)
+.ie n .IP "\fB\fB""ESC n""\fB\fR" 4
+.el .IP "\fB\f(CBESC n\fB\fR" 4
+.IX Item "ESC n"
+Invoke the G2 Character Set (\s-1LS2\s0)
+.ie n .IP "\fB\fB""ESC o""\fB\fR" 4
+.el .IP "\fB\f(CBESC o\fB\fR" 4
+.IX Item "ESC o"
+Invoke the G3 Character Set (\s-1LS3\s0)
+.ie n .IP "\fB\fB""ESC ( C""\fB\fR" 4
+.el .IP "\fB\f(CBESC ( C\fB\fR" 4
+.IX Item "ESC ( C"
+Designate G0 Character Set (\s-1ISO 2022\s0), see below for values of \f(CW\*(C`C\*(C'\fR.
+.ie n .IP "\fB\fB""ESC ) C""\fB\fR" 4
+.el .IP "\fB\f(CBESC ) C\fB\fR" 4
+.IX Item "ESC ) C"
+Designate G1 Character Set (\s-1ISO 2022\s0), see below for values of \f(CW\*(C`C\*(C'\fR.
+.ie n .IP "\fB\fB""ESC * C""\fB\fR" 4
+.el .IP "\fB\f(CBESC * C\fB\fR" 4
+.IX Item "ESC * C"
+Designate G2 Character Set (\s-1ISO 2022\s0), see below for values of \f(CW\*(C`C\*(C'\fR.
+.ie n .IP "\fB\fB""ESC + C""\fB\fR" 4
+.el .IP "\fB\f(CBESC + C\fB\fR" 4
+.IX Item "ESC + C"
+Designate G3 Character Set (\s-1ISO 2022\s0), see below for values of \f(CW\*(C`C\*(C'\fR.
+.ie n .IP "\fB\fB""ESC $ C""\fB\fR" 4
+.el .IP "\fB\f(CBESC $ C\fB\fR" 4
+.IX Item "ESC $ C"
+Designate Kanji Character Set
+.Sp
+Where \fB\f(CB\*(C`C\*(C'\fB\fR is one of:
+.TS
+l l .
+C = 0 DEC Special Character and Line Drawing Set
+C = A United Kingdom (UK)
+C = B United States (USASCII)
+C = < Multinational character set unimplemented
+C = 5 Finnish character set unimplemented
+C = C Finnish character set unimplemented
+C = K German character set unimplemented
+.TE
+.PP
+
+.IX Xref "CSI"
+.SS "\s-1CSI \s0(Command Sequence Introducer) Sequences"
+.IX Subsection "CSI (Command Sequence Introducer) Sequences"
+.ie n .IP "\fB\fB""ESC [ Ps @""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps @\fB\fR" 4
+.IX Item "ESC [ Ps @"
+Insert \fB\f(CB\*(C`Ps\*(C'\fB\fR (Blank) Character(s) [default: 1] (\s-1ICH\s0)
+.IX Xref "ESCOBPsA"
+.ie n .IP "\fB\fB""ESC [ Ps A""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps A\fB\fR" 4
+.IX Item "ESC [ Ps A"
+Cursor Up \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] (\s-1CUU\s0)
+.ie n .IP "\fB\fB""ESC [ Ps B""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps B\fB\fR" 4
+.IX Item "ESC [ Ps B"
+Cursor Down \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] (\s-1CUD\s0)
+.IX Xref "ESCOBPsC"
+.ie n .IP "\fB\fB""ESC [ Ps C""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps C\fB\fR" 4
+.IX Item "ESC [ Ps C"
+Cursor Forward \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] (\s-1CUF\s0)
+.ie n .IP "\fB\fB""ESC [ Ps D""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps D\fB\fR" 4
+.IX Item "ESC [ Ps D"
+Cursor Backward \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] (\s-1CUB\s0)
+.ie n .IP "\fB\fB""ESC [ Ps E""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps E\fB\fR" 4
+.IX Item "ESC [ Ps E"
+Cursor Down \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] and to first column
+.ie n .IP "\fB\fB""ESC [ Ps F""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps F\fB\fR" 4
+.IX Item "ESC [ Ps F"
+Cursor Up \fB\f(CB\*(C`Ps\*(C'\fB\fR Times [default: 1] and to first column
+.IX Xref "ESCOBPsG"
+.ie n .IP "\fB\fB""ESC [ Ps G""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps G\fB\fR" 4
+.IX Item "ESC [ Ps G"
+Cursor to Column \fB\f(CB\*(C`Ps\*(C'\fB\fR (\s-1HPA\s0)
+.ie n .IP "\fB\fB""ESC [ Ps;Ps H""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps;Ps H\fB\fR" 4
+.IX Item "ESC [ Ps;Ps H"
+Cursor Position [row;column] [default: 1;1] (\s-1CUP\s0)
+.ie n .IP "\fB\fB""ESC [ Ps I""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps I\fB\fR" 4
+.IX Item "ESC [ Ps I"
+Move forward \fB\f(CB\*(C`Ps\*(C'\fB\fR tab stops [default: 1]
+.ie n .IP "\fB\fB""ESC [ Ps J""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps J\fB\fR" 4
+.IX Item "ESC [ Ps J"
+Erase in Display (\s-1ED\s0)
+.TS
+l l .
+Ps = 0 Clear Right and Below (default)
+Ps = 1 Clear Left and Above
+Ps = 2 Clear All
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps K""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps K\fB\fR" 4
+.IX Item "ESC [ Ps K"
+Erase in Line (\s-1EL\s0)
+.TS
+l l l l .
+Ps = 0 Clear to Right (default)
+Ps = 1 Clear to Left
+Ps = 2 Clear All
+Ps = 3 Like Ps = 0, but is ignored when wrapped
+ (@@RXVT_NAME@@ extension)
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps L""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps L\fB\fR" 4
+.IX Item "ESC [ Ps L"
+Insert \fB\f(CB\*(C`Ps\*(C'\fB\fR Line(s) [default: 1] (\s-1IL\s0)
+.ie n .IP "\fB\fB""ESC [ Ps M""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps M\fB\fR" 4
+.IX Item "ESC [ Ps M"
+Delete \fB\f(CB\*(C`Ps\*(C'\fB\fR Line(s) [default: 1] (\s-1DL\s0)
+.ie n .IP "\fB\fB""ESC [ Ps P""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps P\fB\fR" 4
+.IX Item "ESC [ Ps P"
+Delete \fB\f(CB\*(C`Ps\*(C'\fB\fR Character(s) [default: 1] (\s-1DCH\s0)
+.ie n .IP "\fB\fB""ESC [ Ps;Ps;Ps;Ps;Ps T""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps;Ps;Ps;Ps;Ps T\fB\fR" 4
+.IX Item "ESC [ Ps;Ps;Ps;Ps;Ps T"
+Initiate . \fIunimplemented\fR Parameters are
+[func;startx;starty;firstrow;lastrow].
+.ie n .IP "\fB\fB""ESC [ Ps W""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps W\fB\fR" 4
+.IX Item "ESC [ Ps W"
+Tabulator functions
+.TS
+l l .
+Ps = 0 Tab Set (HTS)
+Ps = 2 Tab Clear (TBC), Clear Current Column (default)
+Ps = 5 Tab Clear (TBC), Clear All
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps X""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps X\fB\fR" 4
+.IX Item "ESC [ Ps X"
+Erase \fB\f(CB\*(C`Ps\*(C'\fB\fR Character(s) [default: 1] (\s-1ECH\s0)
+.ie n .IP "\fB\fB""ESC [ Ps Z""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps Z\fB\fR" 4
+.IX Item "ESC [ Ps Z"
+Move backward \fB\f(CB\*(C`Ps\*(C'\fB\fR [default: 1] tab stops
+.ie n .IP "\fB\fB""ESC [ Ps \*(Aq""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps \*(Aq\fB\fR" 4
+.IX Item "ESC [ Ps "
+See \fB\f(CB\*(C`ESC [ Ps G\*(C'\fB\fR
+.ie n .IP "\fB\fB""ESC [ Ps a""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps a\fB\fR" 4
+.IX Item "ESC [ Ps a"
+See \fB\f(CB\*(C`ESC [ Ps C\*(C'\fB\fR
+.ie n .IP "\fB\fB""ESC [ Ps c""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps c\fB\fR" 4
+.IX Item "ESC [ Ps c"
+Send Device Attributes (\s-1DA\s0)
+\&\fB\f(CB\*(C`Ps = 0\*(C'\fB\fR (or omitted): request attributes from terminal
+returns: \fB\f(CB\*(C`ESC [ ? 1 ; 2 c\*(C'\fB\fR (``I am a \s-1VT100\s0 with Advanced Video
+Option'')
+.ie n .IP "\fB\fB""ESC [ Ps d""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps d\fB\fR" 4
+.IX Item "ESC [ Ps d"
+Cursor to Line \fB\f(CB\*(C`Ps\*(C'\fB\fR (\s-1VPA\s0)
+.ie n .IP "\fB\fB""ESC [ Ps e""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps e\fB\fR" 4
+.IX Item "ESC [ Ps e"
+See \fB\f(CB\*(C`ESC [ Ps A\*(C'\fB\fR
+.ie n .IP "\fB\fB""ESC [ Ps;Ps f""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps;Ps f\fB\fR" 4
+.IX Item "ESC [ Ps;Ps f"
+Horizontal and Vertical Position [row;column] (\s-1HVP\s0) [default: 1;1]
+.ie n .IP "\fB\fB""ESC [ Ps g""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps g\fB\fR" 4
+.IX Item "ESC [ Ps g"
+Tab Clear (\s-1TBC\s0)
+.TS
+l l .
+Ps = 0 Clear Current Column (default)
+Ps = 3 Clear All (TBC)
+.TE
+.ie n .IP "\fB\fB""ESC [ Pm h""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Pm h\fB\fR" 4
+.IX Item "ESC [ Pm h"
+Set Mode (\s-1SM\s0). See \fB\f(CB\*(C`ESC [ Pm l\*(C'\fB\fR sequence for description of \f(CW\*(C`Pm\*(C'\fR.
+.ie n .IP "\fB\fB""ESC [ Ps i""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps i\fB\fR" 4
+.IX Item "ESC [ Ps i"
+Printing. See also the \f(CW\*(C`print\-pipe\*(C'\fR resource.
+.TS
+l l .
+Ps = 0 print screen (MC0)
+Ps = 4 disable transparent print mode (MC4)
+Ps = 5 enable transparent print mode (MC5)
+.TE
+.ie n .IP "\fB\fB""ESC [ Pm l""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Pm l\fB\fR" 4
+.IX Item "ESC [ Pm l"
+Reset Mode (\s-1RM\s0)
+.RS 4
+.ie n .IP "\fB\fB""Ps = 4""\fB\fR" 4
+.el .IP "\fB\f(CBPs = 4\fB\fR" 4
+.IX Item "Ps = 4"
+.TS
+l l .
+h Insert Mode (SMIR)
+l Replace Mode (RMIR)
+.TE
+.PD 0
+.ie n .IP "\fB\fB""Ps = 20""\fB\fR (partially implemented)" 4
+.el .IP "\fB\f(CBPs = 20\fB\fR (partially implemented)" 4
+.IX Item "Ps = 20 (partially implemented)"
+.TS
+l l .
+h Automatic Newline (LNM)
+l Normal Linefeed (LNM)
+.TE
+.RE
+.RS 4
+.RE
+.ie n .IP "\fB\fB""ESC [ Pm m""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Pm m\fB\fR" 4
+.IX Item "ESC [ Pm m"
+.PD
+Character Attributes (\s-1SGR\s0)
+.TS
+l l .
+Pm = 0 Normal (default)
+Pm = 1 / 21 On / Off Bold (bright fg)
+Pm = 3 / 23 On / Off Italic
+Pm = 4 / 24 On / Off Underline
+Pm = 5 / 25 On / Off Slow Blink (bright bg)
+Pm = 6 / 26 On / Off Rapid Blink (bright bg)
+Pm = 7 / 27 On / Off Inverse
+Pm = 8 / 27 On / Off Invisible (NYI)
+Pm = 30 / 40 fg/bg Black
+Pm = 31 / 41 fg/bg Red
+Pm = 32 / 42 fg/bg Green
+Pm = 33 / 43 fg/bg Yellow
+Pm = 34 / 44 fg/bg Blue
+Pm = 35 / 45 fg/bg Magenta
+Pm = 36 / 46 fg/bg Cyan
+Pm = 37 / 47 fg/bg White
+Pm = 38;5 / 48;5 set fg/bg to colour #m (ISO 8613-6)
+Pm = 39 / 49 fg/bg Default
+Pm = 90 / 100 fg/bg Bright Black
+Pm = 91 / 101 fg/bg Bright Red
+Pm = 92 / 102 fg/bg Bright Green
+Pm = 93 / 103 fg/bg Bright Yellow
+Pm = 94 / 104 fg/bg Bright Blue
+Pm = 95 / 105 fg/bg Bright Magenta
+Pm = 96 / 106 fg/bg Bright Cyan
+Pm = 97 / 107 fg/bg Bright White
+Pm = 99 / 109 fg/bg Bright Default
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps n""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps n\fB\fR" 4
+.IX Item "ESC [ Ps n"
+Device Status Report (\s-1DSR\s0)
+.TS
+l l .
+Ps = 5 Status Report ESC [ 0 n (``OK'')
+Ps = 6 Report Cursor Position (CPR) [row;column] as ESC [ r ; c R
+Ps = 7 Request Display Name
+Ps = 8 Request Version Number (place in window title)
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps SP q""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps SP q\fB\fR" 4
+.IX Item "ESC [ Ps SP q"
+Set Cursor Style (\s-1DECSCUSR\s0)
+.TS
+l l .
+Ps = 0 Blink Block
+Ps = 1 Blink Block
+Ps = 2 Steady Block
+Ps = 3 Blink Underline
+Ps = 4 Steady Underline
+Ps = 5 Blink Bar (XTerm)
+Ps = 6 Steady Bar (XTerm)
+.TE
+.ie n .IP "\fB\fB""ESC [ Ps;Ps r""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps;Ps r\fB\fR" 4
+.IX Item "ESC [ Ps;Ps r"
+Set Scrolling Region [top;bottom]
+[default: full size of window] (\s-1CSR\s0)
+.ie n .IP "\fB\fB""ESC [ s""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ s\fB\fR" 4
+.IX Item "ESC [ s"
+Save Cursor (\s-1SC\s0)
+.ie n .IP "\fB\fB""ESC [ Ps;Pt t""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps;Pt t\fB\fR" 4
+.IX Item "ESC [ Ps;Pt t"
+Window Operations
+.TS
+l l .
+Ps = 1 Deiconify (map) window
+Ps = 2 Iconify window
+Ps = 3 ESC [ 3 ; X ; Y t Move window to (X|Y)
+Ps = 4 ESC [ 4 ; H ; W t Resize to WxH pixels
+Ps = 5 Raise window
+Ps = 6 Lower window
+Ps = 7 Refresh screen once
+Ps = 8 ESC [ 8 ; R ; C t Resize to R rows and C columns
+Ps = 11 Report window state (responds with Ps = 1 or Ps = 2)
+Ps = 13 Report window position (responds with Ps = 3)
+Ps = 14 Report window pixel size (responds with Ps = 4)
+Ps = 18 Report window text size (responds with Ps = 7)
+Ps = 19 Currently the same as Ps = 18, but responds with Ps = 9
+Ps = 20 Reports icon label (ESC ] L NAME \234)
+Ps = 21 Reports window title (ESC ] l NAME \234)
+Ps = 24.. Set window height to Ps rows
+.TE
+.ie n .IP "\fB\fB""ESC [ u""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ u\fB\fR" 4
+.IX Item "ESC [ u"
+Restore Cursor
+.ie n .IP "\fB\fB""ESC [ Ps x""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ Ps x\fB\fR" 4
+.IX Item "ESC [ Ps x"
+Request Terminal Parameters (\s-1DECREQTPARM\s0)
+.PP
+
+.IX Xref "PrivateModes"
+.SS "\s-1DEC\s0 Private Modes"
+.IX Subsection "DEC Private Modes"
+.ie n .IP "\fB\fB""ESC [ ? Pm h""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ ? Pm h\fB\fR" 4
+.IX Item "ESC [ ? Pm h"
+\&\s-1DEC\s0 Private Mode Set (\s-1DECSET\s0)
+.ie n .IP "\fB\fB""ESC [ ? Pm l""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ ? Pm l\fB\fR" 4
+.IX Item "ESC [ ? Pm l"
+\&\s-1DEC\s0 Private Mode Reset (\s-1DECRST\s0)
+.ie n .IP "\fB\fB""ESC [ ? Pm r""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ ? Pm r\fB\fR" 4
+.IX Item "ESC [ ? Pm r"
+Restore previously saved \s-1DEC\s0 Private Mode Values.
+.ie n .IP "\fB\fB""ESC [ ? Pm s""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ ? Pm s\fB\fR" 4
+.IX Item "ESC [ ? Pm s"
+Save \s-1DEC\s0 Private Mode Values.
+.ie n .IP "\fB\fB""ESC [ ? Pm t""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ ? Pm t\fB\fR" 4
+.IX Item "ESC [ ? Pm t"
+Toggle \s-1DEC\s0 Private Mode Values (rxvt extension). \fIwhere\fR
+.RS 4
+.ie n .IP "\fB\fB""Pm = 1""\fB\fR (\s-1DECCKM\s0)" 4
+.el .IP "\fB\f(CBPm = 1\fB\fR (\s-1DECCKM\s0)" 4
+.IX Item "Pm = 1 (DECCKM)"
+.TS
+l l .
+h Application Cursor Keys
+l Normal Cursor Keys
+.TE
+.PD 0
+.ie n .IP "\fB\fB""Pm = 2""\fB\fR (\s-1DECANM\s0)" 4
+.el .IP "\fB\f(CBPm = 2\fB\fR (\s-1DECANM\s0)" 4
+.IX Item "Pm = 2 (DECANM)"
+.TS
+l l .
+h Enter VT52 mode
+l Enter VT52 mode
+.TE
+.ie n .IP "\fB\fB""Pm = 3""\fB\fR (\s-1DECCOLM\s0)" 4
+.el .IP "\fB\f(CBPm = 3\fB\fR (\s-1DECCOLM\s0)" 4
+.IX Item "Pm = 3 (DECCOLM)"
+.TS
+l l .
+h 132 Column Mode
+l 80 Column Mode
+.TE
+.ie n .IP "\fB\fB""Pm = 4""\fB\fR (\s-1DECSCLM\s0)" 4
+.el .IP "\fB\f(CBPm = 4\fB\fR (\s-1DECSCLM\s0)" 4
+.IX Item "Pm = 4 (DECSCLM)"
+.TS
+l l .
+h Smooth (Slow) Scroll
+l Jump (Fast) Scroll
+.TE
+.ie n .IP "\fB\fB""Pm = 5""\fB\fR (\s-1DECSCNM\s0)" 4
+.el .IP "\fB\f(CBPm = 5\fB\fR (\s-1DECSCNM\s0)" 4
+.IX Item "Pm = 5 (DECSCNM)"
+.TS
+l l .
+h Reverse Video
+l Normal Video
+.TE
+.ie n .IP "\fB\fB""Pm = 6""\fB\fR (\s-1DECOM\s0)" 4
+.el .IP "\fB\f(CBPm = 6\fB\fR (\s-1DECOM\s0)" 4
+.IX Item "Pm = 6 (DECOM)"
+.TS
+l l .
+h Origin Mode
+l Normal Cursor Mode
+.TE
+.ie n .IP "\fB\fB""Pm = 7""\fB\fR (\s-1DECAWM\s0)" 4
+.el .IP "\fB\f(CBPm = 7\fB\fR (\s-1DECAWM\s0)" 4
+.IX Item "Pm = 7 (DECAWM)"
+.TS
+l l .
+h Wraparound Mode
+l No Wraparound Mode
+.TE
+.ie n .IP "\fB\fB""Pm = 8""\fB\fR (\s-1DECARM\s0) \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 8\fB\fR (\s-1DECARM\s0) \fIunimplemented\fR" 4
+.IX Item "Pm = 8 (DECARM) unimplemented"
+.TS
+l l .
+h Auto-repeat Keys
+l No Auto-repeat Keys
+.TE
+.ie n .IP "\fB\fB""Pm = 9""\fB\fR (X10 XTerm mouse protocol)" 4
+.el .IP "\fB\f(CBPm = 9\fB\fR (X10 XTerm mouse protocol)" 4
+.IX Item "Pm = 9 (X10 XTerm mouse protocol)"
+.TS
+l l .
+h Send Mouse X & Y on button press.
+l No mouse reporting.
+.TE
+.ie n .IP "\fB\fB""Pm = 12""\fB\fR (\s-1AT&T 610,\s0 XTerm)" 4
+.el .IP "\fB\f(CBPm = 12\fB\fR (\s-1AT&T 610,\s0 XTerm)" 4
+.IX Item "Pm = 12 (AT&T 610, XTerm)"
+.TS
+l l .
+h Blinking cursor (cvvis)
+l Steady cursor (cnorm)
+.TE
+.ie n .IP "\fB\fB""Pm = 25""\fB\fR (\s-1DECTCEM\s0)" 4
+.el .IP "\fB\f(CBPm = 25\fB\fR (\s-1DECTCEM\s0)" 4
+.IX Item "Pm = 25 (DECTCEM)"
+.TS
+l l .
+h Visible cursor {cnorm/cvvis}
+l Invisible cursor {civis}
+.TE
+.ie n .IP "\fB\fB""Pm = 30""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPm = 30\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Pm = 30 (rxvt)"
+.TS
+l l .
+h scrollBar visible
+l scrollBar invisible
+.TE
+.ie n .IP "\fB\fB""Pm = 35""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPm = 35\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Pm = 35 (rxvt)"
+.TS
+l l .
+h Allow XTerm Shift+key sequences
+l Disallow XTerm Shift+key sequences
+.TE
+.ie n .IP "\fB\fB""Pm = 38""\fB\fR \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 38\fB\fR \fIunimplemented\fR" 4
+.IX Item "Pm = 38 unimplemented"
+.PD
+Enter Tektronix Mode (\s-1DECTEK\s0)
+.ie n .IP "\fB\fB""Pm = 40""\fB\fR" 4
+.el .IP "\fB\f(CBPm = 40\fB\fR" 4
+.IX Item "Pm = 40"
+.TS
+l l .
+h Allow 80/132 Mode
+l Disallow 80/132 Mode
+.TE
+.PD 0
+.ie n .IP "\fB\fB""Pm = 44""\fB\fR \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 44\fB\fR \fIunimplemented\fR" 4
+.IX Item "Pm = 44 unimplemented"
+.TS
+l l .
+h Turn On Margin Bell
+l Turn Off Margin Bell
+.TE
+.ie n .IP "\fB\fB""Pm = 45""\fB\fR \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 45\fB\fR \fIunimplemented\fR" 4
+.IX Item "Pm = 45 unimplemented"
+.TS
+l l .
+h Reverse-wraparound Mode
+l No Reverse-wraparound Mode
+.TE
+.ie n .IP "\fB\fB""Pm = 46""\fB\fR \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 46\fB\fR \fIunimplemented\fR" 4
+.IX Item "Pm = 46 unimplemented"
+.ie n .IP "\fB\fB""Pm = 47""\fB\fR" 4
+.el .IP "\fB\f(CBPm = 47\fB\fR" 4
+.IX Item "Pm = 47"
+.TS
+l l .
+h Use Alternate Screen Buffer
+l Use Normal Screen Buffer
+.TE
+.PD
+
+.IX Xref "Priv66"
+.ie n .IP "\fB\fB""Pm = 66""\fB\fR (\s-1DECNKM\s0)" 4
+.el .IP "\fB\f(CBPm = 66\fB\fR (\s-1DECNKM\s0)" 4
+.IX Item "Pm = 66 (DECNKM)"
+.TS
+l l .
+h Application Keypad (DECKPAM/DECPAM) == ESC =
+l Normal Keypad (DECKPNM/DECPNM) == ESC >
+.TE
+.PD 0
+.ie n .IP "\fB\fB""Pm = 67""\fB\fR (\s-1DECBKM\s0)" 4
+.el .IP "\fB\f(CBPm = 67\fB\fR (\s-1DECBKM\s0)" 4
+.IX Item "Pm = 67 (DECBKM)"
+.TS
+l l .
+h Backspace key sends BS
+l Backspace key sends DEL
+.TE
+.ie n .IP "\fB\fB""Pm = 1000""\fB\fR (X11 XTerm mouse protocol)" 4
+.el .IP "\fB\f(CBPm = 1000\fB\fR (X11 XTerm mouse protocol)" 4
+.IX Item "Pm = 1000 (X11 XTerm mouse protocol)"
+.TS
+l l .
+h Send Mouse X & Y on button press and release.
+l No mouse reporting.
+.TE
+.ie n .IP "\fB\fB""Pm = 1001""\fB\fR (X11 XTerm) \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 1001\fB\fR (X11 XTerm) \fIunimplemented\fR" 4
+.IX Item "Pm = 1001 (X11 XTerm) unimplemented"
+.TS
+l l .
+h Use Hilite Mouse Tracking.
+l No mouse reporting.
+.TE
+.ie n .IP "\fB\fB""Pm = 1002""\fB\fR (X11 XTerm cell motion mouse tracking)" 4
+.el .IP "\fB\f(CBPm = 1002\fB\fR (X11 XTerm cell motion mouse tracking)" 4
+.IX Item "Pm = 1002 (X11 XTerm cell motion mouse tracking)"
+.TS
+l l .
+h Send Mouse X & Y on button press and release, and motion with a button pressed.
+l No mouse reporting.
+.TE
+.ie n .IP "\fB\fB""Pm = 1003""\fB\fR (X11 XTerm all motion mouse tracking)" 4
+.el .IP "\fB\f(CBPm = 1003\fB\fR (X11 XTerm all motion mouse tracking)" 4
+.IX Item "Pm = 1003 (X11 XTerm all motion mouse tracking)"
+.TS
+l l .
+h Send Mouse X & Y on button press and release, and motion.
+l No mouse reporting.
+.TE
+.ie n .IP "\fB\fB""Pm = 1004""\fB\fR (X11 XTerm focus in/focus out events) \fIunimplemented\fR" 4
+.el .IP "\fB\f(CBPm = 1004\fB\fR (X11 XTerm focus in/focus out events) \fIunimplemented\fR" 4
+.IX Item "Pm = 1004 (X11 XTerm focus in/focus out events) unimplemented"
+.TS
+l l .
+h Send Mouse focus in/focus out events.
+l Don'T send focus events.
+.TE
+.ie n .IP "\fB\fB""Pm = 1005""\fB\fR (X11 XTerm \s-1UTF\-8\s0 mouse mode) (Compile frills)" 4
+.el .IP "\fB\f(CBPm = 1005\fB\fR (X11 XTerm \s-1UTF\-8\s0 mouse mode) (Compile frills)" 4
+.IX Item "Pm = 1005 (X11 XTerm UTF-8 mouse mode) (Compile frills)"
+.PD
+Try to avoid this mode, it doesn't work sensibly in non\-UTF\-8 locales. Use
+mode \f(CW1015\fR instead.
+.Sp
+Unlike XTerm, coordinates larger than 2015) will work fine.
+.TS
+l l .
+h Enable mouse coordinates in locale-specific encoding.
+l Enable mouse coordinates as binary octets.
+.TE
+.ie n .IP "\fB\fB""Pm = 1010""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPm = 1010\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Pm = 1010 (rxvt)"
+.TS
+l l .
+h Don't scroll to bottom on TTY output
+l Scroll to bottom on TTY output
+.TE
+.PD 0
+.ie n .IP "\fB\fB""Pm = 1011""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPm = 1011\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Pm = 1011 (rxvt)"
+.TS
+l l .
+h Scroll to bottom when a key is pressed
+l Don't scroll to bottom when a key is pressed
+.TE
+.ie n .IP "\fB\fB""Pm = 1015""\fB\fR (\fBrxvt-unicode\fR) (Compile frills)" 4
+.el .IP "\fB\f(CBPm = 1015\fB\fR (\fBrxvt-unicode\fR) (Compile frills)" 4
+.IX Item "Pm = 1015 (rxvt-unicode) (Compile frills)"
+.TS
+l l .
+h Enable urxvt mouse coordinate reporting.
+l Use old-style CSI M C C C encoding.
+.TE
+.PD
+Changes all mouse reporting codes to use decimal parameters instead of
+octets or characters.
+.Sp
+This mode should be enabled \fIbefore\fR actually enabling mouse reporting,
+for semi-obvious reasons.
+.Sp
+The sequences received for various modes are as follows:
+.Sp
+.Vb 3
+\& ESC [ M o o o !1005, !1015 (three octets)
+\& ESC [ M c c c 1005, !1015 (three characters)
+\& ESC [ Pm M 1015 (three or more numeric parameters)
+.Ve
+.Sp
+The first three parameters are \f(CW\*(C`code\*(C'\fR, \f(CW\*(C`x\*(C'\fR and \f(CW\*(C`y\*(C'\fR. Code is the numeric
+code as for the other modes (but encoded as a decimal number, including
+the additional offset of 32, so you have to subtract 32 first), \f(CW\*(C`x\*(C'\fR and
+\&\f(CW\*(C`y\*(C'\fR are the coordinates (1|1 is the upper left corner, just as with
+cursor positioning).
+.Sp
+Example: Shift\-Button\-1 press at top row, column 80.
+.Sp
+.Vb 1
+\& ESC [ 37 ; 80 ; 1 M
+.Ve
+.Sp
+One can use this feature by simply enabling it and then looking for
+parameters to the \f(CW\*(C`ESC [ M\*(C'\fR reply \- if there are any, this mode is
+active, otherwise one of the old reporting styles is used.
+.Sp
+Other (to be implemented) reply sequences will use a similar encoding.
+.Sp
+In the future, more parameters might get added (pixel coordinates for
+example \- anybody out there who needs this?).
+.ie n .IP "\fB\fB""Pm = 1021""\fB\fR (\fBrxvt\fR)" 4
+.el .IP "\fB\f(CBPm = 1021\fB\fR (\fBrxvt\fR)" 4
+.IX Item "Pm = 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
+.PD 0
+.ie n .IP "\fB\fB""Pm = 1047""\fB\fR (X11 XTerm alternate screen buffer)" 4
+.el .IP "\fB\f(CBPm = 1047\fB\fR (X11 XTerm alternate screen buffer)" 4
+.IX Item "Pm = 1047 (X11 XTerm alternate screen buffer)"
+.TS
+l l .
+h Use Alternate Screen Buffer
+l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
+.TE
+.ie n .IP "\fB\fB""Pm = 1048""\fB\fR (X11 XTerm alternate \s-1DECSC\s0)" 4
+.el .IP "\fB\f(CBPm = 1048\fB\fR (X11 XTerm alternate \s-1DECSC\s0)" 4
+.IX Item "Pm = 1048 (X11 XTerm alternate DECSC)"
+.TS
+l l .
+h Save cursor position
+l Restore cursor position
+.TE
+.ie n .IP "\fB\fB""Pm = 1049""\fB\fR (X11 XTerm 1047 + 1048)" 4
+.el .IP "\fB\f(CBPm = 1049\fB\fR (X11 XTerm 1047 + 1048)" 4
+.IX Item "Pm = 1049 (X11 XTerm 1047 + 1048)"
+.TS
+l l .
+h Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
+l Use Normal Screen Buffer
+.TE
+.ie n .IP "\fB\fB""Pm = 2004""\fB\fR (X11 XTerm bracketed paste mode)" 4
+.el .IP "\fB\f(CBPm = 2004\fB\fR (X11 XTerm bracketed paste mode)" 4
+.IX Item "Pm = 2004 (X11 XTerm bracketed paste mode)"
+.TS
+l l .
+h Enable bracketed paste mode - prepend / append to the pasted text the control sequences ESC [ 200 ~ / ESC [ 201 ~
+l Disable bracketed paste mode
+.TE
+.RE
+.RS 4
+.RE
+.PD
+.PP
+
+.IX Xref "XTerm"
+.SS "XTerm Operating System Commands"
+.IX Subsection "XTerm Operating System Commands"
+.ie n .IP "\fB\fB""ESC ] Ps;Pt ST""\fB\fR" 4
+.el .IP "\fB\f(CBESC ] Ps;Pt ST\fB\fR" 4
+.IX Item "ESC ] Ps;Pt ST"
+Set XTerm Parameters. 8\-bit \s-1ST:\s0 0x9c, 7\-bit \s-1ST\s0 sequence: \s-1ESC\s0 \e (0x1b,
+0x5c), backwards compatible terminator \s-1BEL \s0(0x07) is also accepted. any
+\&\fBoctet\fR can be escaped by prefixing it with \s-1SYN \s0(0x16, ^V).
+.TS
+l l .
+Ps = 0 Change Icon Name and Window Title to Pt
+Ps = 1 Change Icon Name to Pt
+Ps = 2 Change Window Title to Pt
+Ps = 3 If Pt starts with a ?, query the (STRING) property of the window and return it. If Pt contains a =, set the named property to the given value, else delete the specified property.
+Ps = 4 Pt is a semi-colon separated sequence of one or more semi-colon separated number/name pairs, where number is an index to a colour and name is the name of a colour. Each pair causes the numbered colour to be changed to name. Numbers 0-7 corresponds to low-intensity (normal) colours and 8-15 corresponds to high-intensity colours. 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white
+Ps = 10 Change colour of text foreground to Pt
+Ps = 11 Change colour of text background to Pt
+Ps = 12 Change colour of text cursor foreground to Pt
+Ps = 13 Change colour of mouse foreground to Pt
+Ps = 17 Change background colour of highlight characters to Pt
+Ps = 19 Change foreground colour of highlight characters to Pt
+Ps = 20 Change background pixmap parameters (see section BACKGROUND IMAGE) (Compile pixbuf).
+Ps = 39 Change default foreground colour to Pt. [deprecated, use 10]
+Ps = 46 Change Log File to Pt unimplemented
+Ps = 49 Change default background colour to Pt. [deprecated, use 11]
+Ps = 50 Set fontset to Pt, with the following special values of Pt (rxvt) #+n change up n #-n change down n if n is missing of 0, a value of 1 is used empty change to font0 n change to font n
+Ps = 55 Log all scrollback buffer and all of screen to Pt [disabled]
+Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills).
+Ps = 702 Request version if Pt is ?, returning rxvt-unicode, the resource name, the major and minor version numbers, e.g. ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST.
+Ps = 704 Change colour of italic characters to Pt
+Ps = 705 Change background pixmap tint colour to Pt (Compile transparency).
+Ps = 706 Change colour of bold characters to Pt
+Ps = 707 Change colour of underlined characters to Pt
+Ps = 708 Change colour of the border to Pt
+Ps = 710 Set normal fontset to Pt. Same as Ps = 50.
+Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles).
+Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles).
+Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles).
+Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
+Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
+Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl).
+.TE
+.SH "BACKGROUND IMAGE"
+.IX Header "BACKGROUND IMAGE"
+For the \s-1BACKGROUND IMAGE\s0 XTerm escape sequence \fB\f(CB\*(C`ESC ] 20 ; Pt ST\*(C'\fB\fR the value
+of \fB\f(CB\*(C`Pt\*(C'\fB\fR can be one of the following commands:
+.ie n .IP "\fB\fB""?""\fB\fR" 4
+.el .IP "\fB\f(CB?\fB\fR" 4
+.IX Item "?"
+display scale and position in the title
+.ie n .IP "\fB\fB"";WxH+X+Y""\fB\fR" 4
+.el .IP "\fB\f(CB;WxH+X+Y\fB\fR" 4
+.IX Item ";WxH+X+Y"
+change scale and/or position
+.ie n .IP "\fB\fB""FILE;WxH+X+Y""\fB\fR" 4
+.el .IP "\fB\f(CBFILE;WxH+X+Y\fB\fR" 4
+.IX Item "FILE;WxH+X+Y"
+change background image
+.PP
+
+.IX Xref "Mouse"
+.SH "Mouse Reporting"
+.IX Header "Mouse Reporting"
+.ie n .IP "\fB\fB""ESC [ M <b> <x> <y>""\fB\fR" 4
+.el .IP "\fB\f(CBESC [ M <b> <x> <y>\fB\fR" 4
+.IX Item "ESC [ M <b> <x> <y>"
+report mouse position
+.PP
+The lower 2 bits of \fB\f(CB\*(C`<b>\*(C'\fB\fR indicate the button:
+.ie n .IP "Button = \fB\fB""(<b> \- SPACE) & 3""\fB\fR" 4
+.el .IP "Button = \fB\f(CB(<b> \- SPACE) & 3\fB\fR" 4
+.IX Item "Button = (<b> - SPACE) & 3"
+.TS
+l l .
+0 Button1 pressed
+1 Button2 pressed
+2 Button3 pressed
+3 button released (X11 mouse report)
+.TE
+.PP
+The upper bits of \fB\f(CB\*(C`<b>\*(C'\fB\fR indicate the modifiers when the
+button was pressed and are added together (X11 mouse report only):
+.ie n .IP "State = \fB\fB""(<b> \- SPACE) & ~3""\fB\fR" 4
+.el .IP "State = \fB\f(CB(<b> \- SPACE) & ~3\fB\fR" 4
+.IX Item "State = (<b> - SPACE) & ~3"
+.TS
+l l .
+4 Shift
+8 Meta
+16 Control
+32 Motion Notify
+32 Double Click (rxvt extension), disabled by default
+64 Button1 is actually Button4, Button2 is actually Button5 etc.
+.TE
+Col = \fB\f(CB\*(C`<x> \- SPACE\*(C'\fB\fR
+.Sp
+Row = \fB\f(CB\*(C`<y> \- SPACE\*(C'\fB\fR
+.SH "Key Codes"
+.IX Header "Key Codes"
+
+.IX Xref "KeyCodes"
+.PP
+Note: \fBShift\fR + \fBF1\fR\-\fBF10\fR generates \fBF11\fR\-\fBF20\fR
+.PP
+For the keypad, use \fBShift\fR to temporarily toggle Application Keypad
+mode and use \fBNum_Lock\fR to override Application Keypad mode, i.e. if
+\&\fBNum_Lock\fR is on the keypad is in normal mode. Also note that the
+values of \fBBackSpace\fR, \fBDelete\fR may have been compiled differently
+on your system.
+.TS
+l l l l l .
+ Normal Shift Control Ctrl+Shift
+Tab ^I ESC [ Z ^I ESC [ Z
+BackSpace ^? ^? ^H ^H
+Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @
+Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @
+Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
+Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @
+Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @
+Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @
+Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @
+End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @
+Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
+F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^
+F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^
+F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^
+F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^
+F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^
+F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^
+F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^
+F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^
+F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^
+F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^
+F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @
+F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @
+F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @
+F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @
+F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @
+F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @
+F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @
+F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @
+F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @
+F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @
+ Application
+Up ESC [ A ESC [ a ESC O a ESC O A
+Down ESC [ B ESC [ b ESC O b ESC O B
+Right ESC [ C ESC [ c ESC O c ESC O C
+Left ESC [ D ESC [ d ESC O d ESC O D
+KP_Enter ^M ESC O M
+KP_F1 ESC O P ESC O P
+KP_F2 ESC O Q ESC O Q
+KP_F3 ESC O R ESC O R
+KP_F4 ESC O S ESC O S
+KP_Multiply * ESC O j
+KP_Add + ESC O k
+KP_Separator , ESC O l
+KP_Subtract - ESC O m
+KP_Decimal . ESC O n
+KP_Divide / ESC O o
+KP_0 0 ESC O p
+KP_1 1 ESC O q
+KP_2 2 ESC O r
+KP_3 3 ESC O s
+KP_4 4 ESC O t
+KP_5 5 ESC O u
+KP_6 6 ESC O v
+KP_7 7 ESC O w
+KP_8 8 ESC O x
+KP_9 9 ESC O y
+.TE
+.SH "CONFIGURE OPTIONS"
+.IX Header "CONFIGURE OPTIONS"
+General hint: if you get compile errors, then likely your configuration
+hasn't been tested well. Either try with \f(CW\*(C`\-\-enable\-everything\*(C'\fR or use
+the default configuration (i.e. no \f(CW\*(C`\-\-enable\-xxx\*(C'\fR or \f(CW\*(C`\-\-disable\-xxx\*(C'\fR
+switches). Of course, you should always report when a combination doesn't
+work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
+.PP
+All
+.IP "\-\-enable\-everything" 4
+.IX Item "--enable-everything"
+Add (or remove) support for all non-multichoice options listed
+in \f(CW\*(C`./configure \-\-help\*(C'\fR, except for \f(CW\*(C`\-\-enable\-assert\*(C'\fR and
+\&\f(CW\*(C`\-\-enable\-256\-color\*(C'\fR.
+.Sp
+You can specify this and then disable options you do not like by
+\&\fIfollowing\fR this with the appropriate \f(CW\*(C`\-\-disable\-...\*(C'\fR arguments,
+or you can start with a minimal configuration by specifying
+\&\f(CW\*(C`\-\-disable\-everything\*(C'\fR and than adding just the \f(CW\*(C`\-\-enable\-...\*(C'\fR arguments
+you want.
+.IP "\-\-enable\-xft (default: on)" 4
+.IX Item "--enable-xft (default: on)"
+Add support for Xft (anti-aliased, among others) fonts. Xft fonts are
+slower and require lots of memory, but as long as you don't use them, you
+don't pay for them.
+.IP "\-\-enable\-font\-styles (default: on)" 4
+.IX Item "--enable-font-styles (default: on)"
+Add support for \fBbold\fR, \fIitalic\fR and \fB\f(BIbold italic\fB\fR font
+styles. The fonts can be set manually or automatically.
+.IP "\-\-with\-codesets=CS,... (default: all)" 4
+.IX Item "--with-codesets=CS,... (default: all)"
+Compile in support for additional codeset (encoding) groups (\f(CW\*(C`eu\*(C'\fR, \f(CW\*(C`vn\*(C'\fR
+are always compiled in, which includes most 8\-bit character sets). These
+codeset tables are used for driving X11 core fonts, they are not required
+for Xft fonts, although having them compiled in lets rxvt-unicode choose
+replacement fonts more intelligently. Compiling them in will make your
+binary bigger (all of together cost about 700kB), but it doesn't increase
+memory usage unless you use a font requiring one of these encodings.
+.TS
+l l .
+all all available codeset groups
+zh common chinese encodings
+zh_ext rarely used but very big chinese encodings
+jp common japanese encodings
+jp_ext rarely used but big japanese encodings
+kr korean encodings
+.TE
+.IP "\-\-enable\-xim (default: on)" 4
+.IX Item "--enable-xim (default: on)"
+Add support for \s-1XIM \s0(X Input Method) protocol. This allows using
+alternative input methods (e.g. kinput2) and will also correctly
+set up the input for people using dead keys or compose keys.
+.IP "\-\-enable\-unicode3 (default: off)" 4
+.IX Item "--enable-unicode3 (default: off)"
+Recommended to stay off unless you really need non-BMP characters.
+.Sp
+Enable direct support for displaying unicode codepoints above
+65535 (the basic multilingual page). This increases storage
+requirements per character from 2 to 4 bytes. X11 fonts do not yet
+support these extra characters, but Xft does.
+.Sp
+Please note that rxvt-unicode can store unicode code points >65535
+even without this flag, but the number of such characters is
+limited to a few thousand (shared with combining characters,
+see next switch), and right now rxvt-unicode cannot display them
+(input/output and cut&paste still work, though).
+.IP "\-\-enable\-combining (default: on)" 4
+.IX Item "--enable-combining (default: on)"
+Enable automatic composition of combining characters into
+composite characters. This is required for proper viewing of text
+where accents are encoded as separate unicode characters. This is
+done by using precomposed characters when available or creating
+new pseudo-characters when no precomposed form exists.
+.Sp
+Without \-\-enable\-unicode3, the number of additional precomposed
+characters is somewhat limited (the 6400 private use characters will be
+(ab\-)used). With \-\-enable\-unicode3, no practical limit exists.
+.Sp
+This option will also enable storage (but not display) of characters
+beyond plane 0 (>65535) when \-\-enable\-unicode3 was not specified.
+.Sp
+The combining table also contains entries for arabic presentation forms,
+but these are not currently used. Bug me if you want these to be used (and
+tell me how these are to be used...).
+.IP "\-\-enable\-fallback[=CLASS] (default: Rxvt)" 4
+.IX Item "--enable-fallback[=CLASS] (default: Rxvt)"
+When reading resource settings, also read settings for class \s-1CLASS.\s0 To
+disable resource fallback use \-\-disable\-fallback.
+.IP "\-\-with\-res\-name=NAME (default: urxvt)" 4
+.IX Item "--with-res-name=NAME (default: urxvt)"
+Use the given name as default application name when
+reading resources. Specify \-\-with\-res\-name=rxvt to replace rxvt.
+.IP "\-\-with\-res\-class=CLASS (default: URxvt)" 4
+.IX Item "--with-res-class=CLASS (default: URxvt)"
+Use the given class as default application class
+when reading resources. Specify \-\-with\-res\-class=Rxvt to replace
+rxvt.
+.IP "\-\-enable\-utmp (default: on)" 4
+.IX Item "--enable-utmp (default: on)"
+Write user and tty to utmp file (used by programs like \fIw\fR) at
+start of rxvt execution and delete information when rxvt exits.
+.IP "\-\-enable\-wtmp (default: on)" 4
+.IX Item "--enable-wtmp (default: on)"
+Write user and tty to wtmp file (used by programs like \fIlast\fR) at
+start of rxvt execution and write logout when rxvt exits. This
+option requires \-\-enable\-utmp to also be specified.
+.IP "\-\-enable\-lastlog (default: on)" 4
+.IX Item "--enable-lastlog (default: on)"
+Write user and tty to lastlog file (used by programs like
+\&\fIlastlogin\fR) at start of rxvt execution. This option requires
+\&\-\-enable\-utmp to also be specified.
+.IP "\-\-enable\-pixbuf (default: on)" 4
+.IX Item "--enable-pixbuf (default: on)"
+Add support for GDK-PixBuf to be used for background images.
+It adds support for many file formats including \s-1JPG, PNG,
+TIFF, GIF, XPM, BMP, ICO\s0 and \s-1TGA.\s0
+.IP "\-\-enable\-startup\-notification (default: on)" 4
+.IX Item "--enable-startup-notification (default: on)"
+Add support for freedesktop startup notifications. This allows window managers
+to display some kind of progress indicator during startup.
+.IP "\-\-enable\-transparency (default: on)" 4
+.IX Item "--enable-transparency (default: on)"
+Add support for using the root pixmap as background to simulate transparency.
+Note that this feature depends on libXrender and on the availability
+of the \s-1RENDER\s0 extension in the X server.
+.IP "\-\-enable\-fading (default: on)" 4
+.IX Item "--enable-fading (default: on)"
+Add support for fading the text when focus is lost.
+.IP "\-\-enable\-rxvt\-scroll (default: on)" 4
+.IX Item "--enable-rxvt-scroll (default: on)"
+Add support for the original rxvt scrollbar.
+.IP "\-\-enable\-next\-scroll (default: on)" 4
+.IX Item "--enable-next-scroll (default: on)"
+Add support for a NeXT-like scrollbar.
+.IP "\-\-enable\-xterm\-scroll (default: on)" 4
+.IX Item "--enable-xterm-scroll (default: on)"
+Add support for an Xterm-like scrollbar.
+.IP "\-\-disable\-backspace\-key" 4
+.IX Item "--disable-backspace-key"
+Removes any handling of the backspace key by us \- let the X server do it.
+.IP "\-\-disable\-delete\-key" 4
+.IX Item "--disable-delete-key"
+Removes any handling of the delete key by us \- let the X server
+do it.
+.IP "\-\-disable\-resources" 4
+.IX Item "--disable-resources"
+Removes any support for resource checking.
+.IP "\-\-disable\-swapscreen" 4
+.IX Item "--disable-swapscreen"
+Remove support for secondary/swap screen.
+.IP "\-\-enable\-frills (default: on)" 4
+.IX Item "--enable-frills (default: on)"
+Add support for many small features that are not essential but nice to
+have. Normally you want this, but for very small binaries you may want to
+disable this.
+.Sp
+A non-exhaustive list of features enabled by \f(CW\*(C`\-\-enable\-frills\*(C'\fR (possibly
+in combination with other switches) is:
+.Sp
+.Vb 10
+\& MWM\-hints
+\& EWMH\-hints (pid, utf8 names) and protocols (ping)
+\& urgency hint
+\& separate underline colour (\-underlineColor)
+\& settable border widths and borderless switch (\-w, \-b, \-bl)
+\& visual depth selection (\-depth)
+\& settable extra linespacing (\-lsp)
+\& iso\-14755 5.1 (basic) support
+\& tripleclickwords (\-tcw)
+\& settable insecure mode (\-insecure)
+\& keysym remapping support
+\& cursor blinking and underline cursor (\-bc, \-uc)
+\& XEmbed support (\-embed)
+\& user\-pty (\-pty\-fd)
+\& hold on exit (\-hold)
+\& compile in built\-in block graphics
+\& skip builtin block graphics (\-sbg)
+\& separate highlight colour (\-highlightColor, \-highlightTextColor)
+\& extended mouse reporting modes (1005 and 1015).
+\& visual selection via \-visual and \-depth.
+.Ve
+.Sp
+It also enables some non-essential features otherwise disabled, such as:
+.Sp
+.Vb 11
+\& some round\-trip time optimisations
+\& nearest colour allocation on pseudocolor screens
+\& UTF8_STRING support for selection
+\& sgr modes 90..97 and 100..107
+\& backindex and forwardindex escape sequences
+\& view change/zero scrollback escape sequences
+\& locale switching escape sequence
+\& window op and some xterm/OSC escape sequences
+\& rectangular selections
+\& trailing space removal for selections
+\& verbose X error handling
+.Ve
+.IP "\-\-enable\-iso14755 (default: on)" 4
+.IX Item "--enable-iso14755 (default: on)"
+Enable extended \s-1ISO 14755\s0 support (see @@RXVT_NAME@@(1)).
+Basic support (section 5.1) is enabled by \f(CW\*(C`\-\-enable\-frills\*(C'\fR, while
+support for 5.2, 5.3 and 5.4 is enabled with this switch.
+.IP "\-\-enable\-keepscrolling (default: on)" 4
+.IX Item "--enable-keepscrolling (default: on)"
+Add support for continual scrolling of the display when you hold
+the mouse button down on a scrollbar arrow.
+.IP "\-\-enable\-selectionscrolling (default: on)" 4
+.IX Item "--enable-selectionscrolling (default: on)"
+Add support for scrolling when the selection moves to the top or
+bottom of the screen.
+.IP "\-\-enable\-mousewheel (default: on)" 4
+.IX Item "--enable-mousewheel (default: on)"
+Add support for scrolling via mouse wheel or buttons 4 & 5.
+.IP "\-\-enable\-slipwheeling (default: on)" 4
+.IX Item "--enable-slipwheeling (default: on)"
+Add support for continual scrolling (using the mouse wheel as an
+accelerator) while the control key is held down. This option
+requires \-\-enable\-mousewheel to also be specified.
+.IP "\-\-enable\-smart\-resize (default: off)" 4
+.IX Item "--enable-smart-resize (default: off)"
+Add smart growth/shrink behaviour when resizing.
+This should keep the window corner which is closest to a corner of
+the screen in a fixed position.
+.IP "\-\-enable\-text\-blink (default: on)" 4
+.IX Item "--enable-text-blink (default: on)"
+Add support for blinking text.
+.IP "\-\-enable\-pointer\-blank (default: on)" 4
+.IX Item "--enable-pointer-blank (default: on)"
+Add support to have the pointer disappear when typing or inactive.
+.IP "\-\-enable\-perl (default: on)" 4
+.IX Item "--enable-perl (default: on)"
+Enable an embedded perl interpreter. See the \fB@@RXVT_NAME@@\f(BIperl\fB\|(3)\fR
+manpage for more info on this feature, or the files in \fIsrc/perl/\fR
+for the extensions that are installed by default.
+The perl interpreter that is used can be specified via the \f(CW\*(C`PERL\*(C'\fR
+environment variable when running configure. Even when compiled in,
+perl will \fInot\fR be initialised when all extensions have been disabled
+\&\f(CW\*(C`\-pe "" \-\-perl\-ext\-common ""\*(C'\fR, so it should be safe to enable from a
+resource standpoint.
+.IP "\-\-enable\-assert (default: off)" 4
+.IX Item "--enable-assert (default: off)"
+Enables the assertions in the code, normally disabled. This switch is only
+useful when developing rxvt-unicode.
+.IP "\-\-enable\-256\-color (default: off)" 4
+.IX Item "--enable-256-color (default: off)"
+Force use of so-called 256 colour mode, to work around buggy applications
+that do not support termcap/terminfo, or simply improve support for
+applications hardcoding the xterm 256 colour table.
+.Sp
+This switch breaks termcap/terminfo compatibility to \f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR,
+and consequently sets \f(CW\*(C`TERM\*(C'\fR to \f(CW\*(C`rxvt\-unicode\-256color\*(C'\fR by default
+(\fIdoc/etc/\fR contains termcap/terminfo definitions for both).
+.Sp
+It also results in higher memory usage and can slow down @@RXVT_NAME@@
+dramatically when more than six fonts are in use by a terminal instance.
+.IP "\-\-with\-name=NAME (default: urxvt)" 4
+.IX Item "--with-name=NAME (default: urxvt)"
+Set the basename for the installed binaries, resulting
+in \f(CW\*(C`urxvt\*(C'\fR, \f(CW\*(C`urxvtd\*(C'\fR etc.). Specify \f(CW\*(C`\-\-with\-name=rxvt\*(C'\fR to replace with
+\&\f(CW\*(C`rxvt\*(C'\fR.
+.IP "\-\-with\-term=NAME (default: rxvt-unicode)" 4
+.IX Item "--with-term=NAME (default: rxvt-unicode)"
+Change the environmental variable for the terminal to \s-1NAME.\s0
+.IP "\-\-with\-terminfo=PATH" 4
+.IX Item "--with-terminfo=PATH"
+Change the environmental variable for the path to the terminfo tree to
+\&\s-1PATH.\s0
+.IP "\-\-with\-x" 4
+.IX Item "--with-x"
+Use the X Window System (pretty much default, eh?).
+.SH "AUTHORS"
+.IX Header "AUTHORS"
+Marc Lehmann <rxvt@schmorp.de> converted this document to pod and
+reworked it from the original Rxvt documentation, which was done by Geoff
+Wing <gcw@pobox.com>, who in turn used the XTerm documentation and other
+sources.
diff --git a/doc/rxvtc.1.man.in b/doc/rxvtc.1.man.in
new file mode 100644
index 0000000..9c7ff95
--- /dev/null
+++ b/doc/rxvtc.1.man.in
@@ -0,0 +1,195 @@
+.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.30)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{
+. if \nF \{
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "@@RXVT_NAME@@ 1"
+.TH @@RXVT_NAME@@ 1 "2016-01-23" "@@RXVT_VERSION@@" "RXVT-UNICODE"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+@@RXVT_NAME@@c \- control the @@RXVT_NAME@@d daemon
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+\&\fB@@RXVT_NAME@@c\fR [same options as for @@RXVT_NAME@@]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+This manpage describes the \fB@@RXVT_NAME@@c\fR client program. It connects
+to the \fB@@RXVT_NAME@@d\fR daemon and requests a new terminal window. It
+takes the same arguments as the \fB@@RXVT_NAME@@\fR program. The environment
+will also be respected. Currently, it always returns immediately after
+contacting the daemon.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+If the first option is \fB\-k\fR, \fB@@RXVT_NAME@@c\fR tries to kill the
+daemon process and returns.
+.PP
+All options that are valid for \fB@@RXVT_NAME@@\fR are valid for
+\&\fB@@RXVT_NAME@@c\fR, too. Please note that options are interpreted in the
+context of the daemon process. However, as current working directory,
+process environment and any file descriptor (e.g. for \f(CW\*(C`\-pty\-fd\*(C'\fR) are
+preserved, this rarely makes a difference.
+.SH "EXIT STATUS"
+.IX Header "EXIT STATUS"
+If everything went well, @@RXVT_NAME@@c returns with an exit status of \f(CW0\fR.
+If contacting the daemon fails, it exits with the exit status \f(CW2\fR. In all other error
+cases it returns with status \f(CW1\fR.
+.PP
+This can be used to implement auto-starting behaviour, by checking for an
+exit status of \f(CW2\fR, running \f(CW\*(C`@@RXVT_NAME@@d \-f \-q\*(C'\fR and retrying the call
+to @@RXVT_NAME@@c, like this:
+.PP
+.Vb 6
+\& #!/bin/sh
+\& @@RXVT_NAME@@c "$@"
+\& if [ $? \-eq 2 ]; then
+\& @@RXVT_NAME@@d \-q \-o \-f
+\& @@RXVT_NAME@@c "$@"
+\& fi
+.Ve
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+All environment variables of the current process will be made available
+to the new instance, and will be interpreted as if \fB@@RXVT_NAME@@\fR were
+started directly.
+.IP "\fB\s-1RXVT_SOCKET\s0\fR" 4
+.IX Item "RXVT_SOCKET"
+Both @@RXVT_NAME@@c and @@RXVT_NAME@@d use the environment variable
+\&\fI\s-1RXVT_SOCKET\s0\fR to create a listening socket and to contact the
+@@RXVT_NAME@@d, respectively. If the variable is missing,
+\&\fI\f(CI$HOME\fI/.urxvt/urxvtd\-\fI<nodename>\fI\fR is used. The variable must
+specify the absolute path of the socket to create.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+@@RXVT_NAME@@(7), @@RXVT_NAME@@d(1)
diff --git a/doc/rxvtd.1.man.in b/doc/rxvtd.1.man.in
new file mode 100644
index 0000000..519b91d
--- /dev/null
+++ b/doc/rxvtd.1.man.in
@@ -0,0 +1,238 @@
+.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.30)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{
+. if \nF \{
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "@@RXVT_NAME@@ 1"
+.TH @@RXVT_NAME@@ 1 "2016-01-23" "@@RXVT_VERSION@@" "RXVT-UNICODE"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+@@RXVT_NAME@@d \- @@RXVT_NAME@@ terminal daemon
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+\&\fB@@RXVT_NAME@@d\fR [\-q|\-\-quiet] [\-o|\-\-opendisplay] [\-f|\-\-fork] [\-m|\-\-mlock] [\-e|\-\-eval \fIperlstring\fR]
+.PP
+\&\fB@@RXVT_NAME@@d\fR \-q \-o \-f # for .xsession use
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+This manpage describes the @@RXVT_NAME@@d daemon, which is the same vt102
+terminal emulator as @@RXVT_NAME@@, but runs as a daemon that can open
+multiple terminal windows within the same process.
+.PP
+You can run it from your X startup scripts, for example, although it is
+not dependent on a working \s-1DISPLAY\s0 and, in fact, can open windows on
+multiple X displays on the same time.
+.PP
+Advantages of running a @@RXVT_NAME@@ daemon include faster creation time
+for terminal windows and a lot of saved memory.
+.PP
+The disadvantage is a possible impact on stability \- if the
+main program crashes, all processes in the terminal windows are
+terminated. For example, as there is no way to cleanly react to abnormal
+connection closes, \f(CW\*(C`xkill\*(C'\fR and server resets/restarts will kill the
+\&\fB@@RXVT_NAME@@d\fR instance including all windows it has opened.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+\&\fB@@RXVT_NAME@@d\fR currently understands a few options only. Bundling of
+options is not yet supported.
+.IP "\fB\-q\fR, \fB\-\-quiet\fR" 4
+.IX Item "-q, --quiet"
+Normally, \fB@@RXVT_NAME@@d\fR outputs the message \f(CW\*(C`rxvt\-unicode daemon
+listening on <path>\*(C'\fR after binding to its control socket. This option
+will suppress this message (errors and warnings will still be logged).
+.IP "\fB\-o\fR, \fB\-\-opendisplay\fR" 4
+.IX Item "-o, --opendisplay"
+This forces \fB@@RXVT_NAME@@d\fR to open a connection to the current
+\&\f(CW$DISPLAY\fR and keep it open.
+.Sp
+This is useful if you want to bind an instance of \fB@@RXVT_NAME@@d\fR to
+the lifetime of a specific display/server. If the server does a reset,
+\&\fB@@RXVT_NAME@@d\fR will be killed automatically.
+.IP "\fB\-f\fR, \fB\-\-fork\fR" 4
+.IX Item "-f, --fork"
+This makes \fB@@RXVT_NAME@@d\fR fork after it has bound itself to its control
+socket.
+.IP "\fB\-m\fR, \fB\-\-mlock\fR" 4
+.IX Item "-m, --mlock"
+This makes \fB@@RXVT_NAME@@d\fR call \fImlockall\fR\|(2) on itself. This locks
+\&\fB@@RXVT_NAME@@d\fR in \s-1RAM\s0 and prevents it from being swapped out to disk,
+at the cost of consuming a lot more memory on most operating systems.
+.Sp
+Note: In order to use this feature, your system administrator must have set
+your user's \s-1RLIMIT_MEMLOCK\s0 to a size greater than or equal to the size of the
+\&\fB@@RXVT_NAME@@d\fR binary (or to unlimited). See \fI/etc/security/limits.conf\fR.
+.Sp
+Note 2: There is a known bug in glibc (possibly fixed in 2.8 and later
+versions) where calloc returns non-zeroed memory when mlockall is in
+effect. If you experience crashes or other odd behaviour while using
+\&\-\-mlock, try it without it.
+.IP "\fB\-e\fR, \fB\-\-eval\fR \fIperlstring\fR" 4
+.IX Item "-e, --eval perlstring"
+Evaluate the given perl code after basic initialisation (requires perl
+support to be enabled when compiling \fB@@RXVT_NAME@@d\fR).
+.Sp
+This can be used for example to configure the internal perl interpreter,
+which is shared between all terminal instances, or create additional
+listening sockets for additional protocols.
+.Sp
+The code is currently executed \fIbefore\fR creating the normal listening
+sockets: this might change in future versions.
+.SH "EXAMPLES"
+.IX Header "EXAMPLES"
+This is a useful invocation of \fB@@RXVT_NAME@@d\fR in a \fI.xsession\fR\-style
+script:
+.PP
+.Vb 1
+\& @@RXVT_NAME@@d \-q \-f \-o
+.Ve
+.PP
+This waits till the control socket is available, opens the current display
+and forks into the background. When you log-out, the server is reset and
+\&\fB@@RXVT_NAME@@d\fR is killed.
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+.IP "\fB\s-1RXVT_SOCKET\s0\fR" 4
+.IX Item "RXVT_SOCKET"
+Both \fB@@RXVT_NAME@@c\fR and \fB@@RXVT_NAME@@d\fR use the environment
+variable \fI\s-1RXVT_SOCKET\s0\fR to create a listening socket and to contact
+the @@RXVT_NAME@@d, respectively. If the variable is missing then
+\&\fI\f(CI$HOME\fI/.urxvt/urxvtd\-\fI<nodename>\fI\fR is used.
+.IP "\fB\s-1DISPLAY\s0\fR" 4
+.IX Item "DISPLAY"
+Only used when the \f(CW\*(C`\-\-opendisplay\*(C'\fR option is specified. Must contain a
+valid X display name.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1)
[cgit] Unable to lock slot /tmp/cgit/90300000.lock: No such file or directory (2)