Fix typos.
[dana/urxvt.git] / doc / rxvt.7.pod
index 848d95f..300bb0d 100644 (file)
@@ -19,7 +19,10 @@ This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
 all escape sequences, and other background information.
 
 The newest version of this document is also available on the World Wide Web at
-L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
+L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod>.
+
+The main manual page for @@RXVT_NAME@@ itself is available at
+L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod>.
 
 =head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
@@ -32,6 +35,18 @@ Before sending me mail, you could go to IRC: C<irc.freenode.net>,
 channel C<#rxvt-unicode> has some rxvt-unicode enthusiasts that might be
 interested in learning about new and exciting problems (but not FAQs :).
 
+=head3 I use Gentoo, and I have a problem...
+
+There are three big problems with Gentoo Linux: first of all, 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,
+the Gentoo maintainer thinks it is a good idea to add broken patches to
+the code; and lastly, it should be called Gentoo GNU/Linux.
+
+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.
+
 =head3 Does it support tabs, can I have a tabbed rxvt-unicode?
 
 Beginning with version 7.3, there is a perl extension that implements a
@@ -75,7 +90,7 @@ rxvt-unicode then uses 8 bytes per screen cell.
 Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the
 display, create the listening socket and then fork.
 
-=head3 How can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c?
+=head3 How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?
 
 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:
@@ -92,7 +107,7 @@ 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.
 
-=head3 How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc.
+=head3 How do I distinguish whether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc.
 
 The original rxvt and rxvt-unicode always export the variable "COLORTERM",
 so you can check and see if that is set. Note that several programs, JED,
@@ -127,8 +142,8 @@ snippets:
 =head3 How do I compile the manual pages on my own?
 
 You need to have a recent version of perl installed as F</usr/bin/perl>,
-one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to
-the doc subdirectory and enter C<make alldoc>.
+one that comes with F<pod2man>, F<pod2text> and F<pod2xhtml> (from
+F<Pod::Xhtml>). Then go to the doc subdirectory and enter C<make alldoc>.
 
 =head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat?
 
@@ -146,7 +161,7 @@ already in use in this mode.
 
 When you C<--enable-everything> (which I<is> unfair, as this involves xft
 and full locale/XIM support which are quite bloaty inside libX11 and my
-libc), the two diverge, but not unreasnobaly so.
+libc), the two diverge, but not unreasonably so.
 
     text    data     bss     drs     rss filename
   163431    2152      24   20123    2060 rxvt --enable-everything
@@ -199,9 +214,9 @@ And here is rxvt-unicode:
 
    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)     
+   libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
+   libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
+   /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
 
 No large bloated libraries (of course, none were linked in statically),
 except maybe libX11 :)
@@ -211,18 +226,17 @@ except maybe libX11 :)
 
 =head3 I can't get transparency working, what am I doing wrong?
 
-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.
+First of all, please address all transparency related issues to Sasha Vasko at
+sasha@aftercode.net and do not bug the author about it. Also, if you can't
+get it working consider it a rite of passage: ... and you failed.
 
 Here are four ways to get transparency. B<Do> read the manpage and option
 descriptions for the programs mentioned and rxvt-unicode. Really, do it!
 
-1. Use inheritPixmap:
+1. Use transparent mode:
 
    Esetroot wallpaper.jpg
-   @@URXVT_NAME@@ -ip -tint red -sh 40
+   @@URXVT_NAME@@ -tr -tint red -sh 40
 
 That works. If you think it doesn't, you lack transparency and tinting
 support, or you are unable to read.
@@ -231,10 +245,10 @@ support, or you are unable to read.
 to use effects other than tinting and shading: Just shade/tint/whatever
 your picture with gimp or any other tool:
 
-   convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
-   @@URXVT_NAME@@ -pixmap background.xpm -pe automove-background
+   convert wallpaper.jpg -blur 20x20 -modulate 30 background.jpg
+   @@URXVT_NAME@@ -pixmap "background.jpg;:root"
 
-That works. If you think it doesn't, you lack XPM and Perl support, or you
+That works. If you think it doesn't, you lack AfterImage support, or you
 are unable to read.
 
 3. Use an ARGB visual:
@@ -243,7 +257,7 @@ are unable to read.
 
 This requires XFT support, and the support of your X-server. If that
 doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
-there yet, no matter what they claim. Rxvt-Unicode contains the neccessary
+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 WM has the required kludges in place.
 
@@ -270,7 +284,7 @@ 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).
 
-It's not clear (to me at least), wether this is a bug in Xft, freetype,
+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 C<-lsp> option to give the font more height. If that doesn't work, you
 might be forced to use a different font.
@@ -304,7 +318,7 @@ fix colours but keep you from using other rxvt-unicode features.
 Yes, using an escape sequence. Try something like this, which has the same
 effect as using the C<-fn> switch, and takes effect immediately:
 
-   printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
+   printf '\33]50;%s\007' "9x15bold,xft:Kochi Gothic"
 
 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
@@ -316,7 +330,7 @@ You can think of this as a kind of manual ISO-2022 switching.
 
 Many fonts have difficulties with italic characters and hinting. For
 example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans
-Mono> completely fails in it's italic face. A workaround might be to
+Mono> completely fails in its italic face. A workaround might be to
 enable freetype autohinting, i.e. like this:
 
    URxvt.italicFont:        xft:Bitstream Vera Sans Mono:italic:autohint=true
@@ -332,7 +346,7 @@ memory and also speeds up rendering considerably.
 =head3 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
 
 Rxvt-unicode will use whatever you specify as a font. If it needs to
-fall back to it's default font search list it will prefer X11 core
+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.
@@ -344,10 +358,9 @@ If you want antialiasing, you have to specify the fonts manually.
 If no bold colour is set via C<colorBD:>, bold will invert text using the
 standard foreground colour.
 
-For the standard background colour, blinking will actually make the
-text blink when compiled with C<--enable-blinking>. with standard
-colours. Without C<--enable-blinking>, the blink attribute will be
-ignored.
+For the standard background colour, blinking will actually make
+the text blink when compiled with C<--enable-text-blink>. Without
+C<--enable-text-blink>, the blink attribute will be ignored.
 
 On ANSI colours, bold/blink attributes are used to set high-intensity
 foreground/background colors.
@@ -462,6 +475,13 @@ has been designed yet).
 Until then, you might get away with switching fonts at runtime (see L<Can
 I switch the fonts at runtime?> later in this document).
 
+=head3 How can I make mplayer display video correctly?
+
+We are working on it, in the meantime, as a workaround, use something like:
+
+   @@URXVT_NAME@@ -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
+
+
 =head2 Keyboard, Mouse & User Interaction
 
 =head3 The new selection selects pieces that are too big, how can I select single words?
@@ -478,7 +498,7 @@ To get a selection that is very similar to the old code, try this pattern:
 
    URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
 
-Please also note that the I<LeftClick Shift-LeftClik> combination also
+Please also note that the I<LeftClick Shift-LeftClick> combination also
 selects words like the old code.
 
 =head3 I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?
@@ -514,7 +534,7 @@ 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.
 
-You can permamently switch this feature off by disabling the C<readline>
+You can permanently switch this feature off by disabling the C<readline>
 extension:
 
    URxvt.perl-ext-common: default,-readline
@@ -523,7 +543,7 @@ extension:
 
 Some Debian GNUL/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 C<TERM> setting, although the details of wether and how
+by the wrong C<TERM> setting, although the details of whether and how
 this can happen are unknown, as C<TERM=rxvt> should offer a compatible
 keymap. See the answer to the previous question, and please report if that
 helped.
@@ -540,6 +560,10 @@ rxvt-unicode will continue without an input method.
 In this case either do not specify a B<preeditStyle> or specify more than
 one pre-edit style, such as B<OverTheSpot,Root,None>.
 
+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 C<-im> or C<XMODIFIERS>.
+
 =head3 I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755
 
 Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on
@@ -559,12 +583,12 @@ depressed.
 =head3 What's with the strange Backspace/Delete key behaviour?
 
 Assuming that the physical Backspace key corresponds to the
-BackSpace keysym (not likely for Linux ... see the following
+Backspace keysym (not likely for Linux ... see the following
 question) there are two standard values that can be used for
 Backspace: C<^H> and C<^?>.
 
 Historically, either value is correct, but rxvt-unicode adopts the debian
-policy of using C<^?> when unsure, because it's the one only only correct
+policy of using C<^?> when unsure, because it's the one and only correct
 choice :).
 
 Rxvt-unicode tries to inherit the current stty settings and uses the value
@@ -606,7 +630,7 @@ key has been assigned an escape sequence to match the vt100 for Execute
 
 Some other Backspace problems:
 
-some editors use termcap/terminfo, 
+some editors use termcap/terminfo,
 some editors (vim I'm told) expect Backspace = ^H,
 GNU Emacs (and Emacs-like editors) use ^H for help.
 
@@ -657,9 +681,162 @@ keyboard mappings, it is better to use `xmodmap' to remap the keys as
 required for your particular machine.
 
 
-
 =head2 Terminal Configuration
 
+=head3 Can I see a typical configuration?
+
+The default configuration tries to be xterm-like, which I don't like that
+much, but it's least surprise to regular users.
+
+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 I<typical>, but what's typical...
+
+   URxvt.cutchars: "()*,<>[]{}|'
+   URxvt.print-pipe: cat >/tmp/xxx
+
+These are just for testing stuff.
+
+   URxvt.imLocale: ja_JP.UTF-8
+   URxvt.preeditType: OnTheSpot,None
+
+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 C<xim-onthespot> perl extension but rewards me
+with correct-looking fonts.
+
+   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 \\d+)
+   URxvt.selection.pattern-1: ^(/[^:]+):\ 
+   URxvt.selection-autotransform.0: s/^([^:[:space:]]+):(\\d+):?$/:e \\Q$1\\E\\x0d:$2\\x0d/
+   URxvt.selection-autotransform.1: s/^ at (.*?) line (\\d+)$/:e \\Q$1\\E\\x0d:$2\\x0d/
+
+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.
+
+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.
+
+   URxvt.scrollstyle:      plain
+   URxvt.secondaryScroll:  true
+
+As the documentation says: plain is the preferred scrollbar for the
+author. The C<secondaryScroll> configures urxvt to scroll in full-screen
+apps, like screen, so lines scrolled out of screen end up in urxvt's
+scrollback buffer.
+
+   URxvt.background:       #000000
+   URxvt.foreground:       gray90
+   URxvt.color7:           gray90
+   URxvt.colorBD:          #ffffff
+   URxvt.cursorColor:      #e0e080
+   URxvt.throughColor:     #8080f0
+   URxvt.highlightColor:   #f0f0f0
+
+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.
+
+   URxvt.underlineColor:   yellow
+
+Another colour, makes underline lines look different. Sometimes hurts, but
+is mostly a nice effect.
+
+   URxvt.geometry:         154x36
+   URxvt.loginShell:       false
+   URxvt.meta:             ignore
+   URxvt.utmpInhibit:      true
+
+Uh, well, should be mostly self-explanatory. By specifying some defaults
+manually, I can quickly switch them for testing.
+
+   URxvt.saveLines:        8192
+
+A large scrollback buffer is essential. Really.
+
+   URxvt.mapAlert:         true
+
+The only case I use it is for my IRC window, which I like to keep
+iconified till people msg me (which beeps).
+
+   URxvt.visualBell:       true
+
+The audible bell is often annoying, especially when in a crowd.
+
+   URxvt.insecure:         true
+
+Please don't hack my mutt! Ooops...
+
+   URxvt.pastableTabs:     false
+
+I once thought this is a great idea.
+
+   urxvt.font:             9x15bold,\
+                           -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
+                           -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
+                           [codeset=JISX0208]xft:Kochi Gothic, \
+                           xft:Bitstream Vera Sans Mono:autohint=true, \
+                           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
+
+I wrote rxvt-unicode to be able to specify fonts exactly. So don't be
+overwhelmed. A special note: the C<9x15bold> mentioned above is actually
+the version from XFree-3.3, as XFree-4 replaced it by a totally different
+font (different glyphs for C<;> and many other harmless characters),
+while the second font is actually the C<9x15bold> 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.
+
+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.
+
+Please note that I used the C<urxvt> instance name and not the C<URxvt>
+class name. That is because I use different configs for different purposes,
+for example, my IRC window is started with C<-name IRC>, and uses these
+defaults:
+
+   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:\033]710;suxuseuro\007\033]711;suxuseuro\007
+   IRC*keysym.M-C-2:       command:\033]710;9x15bold\007\033]711;9x15bold\007
+
+C<Alt-Ctrl-1> and C<Alt-Ctrl-2> switch between two different font
+sizes. C<suxuseuro> 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.
+
+The above is all in my C<.Xdefaults> (I don't use C<.Xresources> nor
+C<xrdb>). I also have some resources in a separate C<.Xdefaults-hostname>
+file for different hosts, for example, on ym main desktop, I use:
+
+   URxvt.keysym.C-M-q: command:\033[3;5;5t
+   URxvt.keysym.C-M-y: command:\033[3;5;606t
+   URxvt.keysym.C-M-e: command:\033[3;1605;5t
+   URxvt.keysym.C-M-c: command:\033[3;1605;606t
+   URxvt.keysym.C-M-p: perl:test
+
+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 :->
+
 =head3 Why doesn't rxvt-unicode read my resources?
 
 Well, why, indeed? It does, in a way very similar to other X
@@ -677,7 +854,7 @@ Also consider the form resources have to use:
   URxvt.resource: value
 
 If you want to use another form (there are lots of different ways of
-specifying resources), make sure you understand wether and why it
+specifying resources), make sure you understand whether and why it
 works. If unsure, use the form above.
 
 =head3 When I log-in to another system it tells me about missing terminfo data?
@@ -686,12 +863,16 @@ 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).
 
 The correct solution for this problem is to install the terminfo, this can
-be done like this (with ncurses' infocmp):
+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):
 
    REMOTE=remotesystem.domain
-   infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti"
+   infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
 
-... or by installing rxvt-unicode normally on the remote system,
+One some systems you might need to set C<$TERMINFO> to the full path of
+F<$HOME/.terminfo> for this to work.
 
 If you cannot or do not want to do this, then you can simply set
 C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
@@ -708,6 +889,12 @@ resource to set it:
 If you don't plan to use B<rxvt> (quite common...) you could also replace
 the rxvt terminfo file with the rxvt-unicode one and use C<TERM=rxvt>.
 
+=head3 nano fails with "Error opening terminal: rxvt-unicode"
+
+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.
+
 =head3 C<tic> outputs some error when compiling the terminfo entry.
 
 Most likely it's the empty definition for C<enacs=>. Just replace it by
@@ -724,40 +911,20 @@ systems still compile some programs using the long-obsoleted termcap
 library (Fedora Core's bash is one example) and rely on a termcap entry
 for C<rxvt-unicode>.
 
-You could use rxvt's termcap entry with resonable results in many cases.
+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:
 
    infocmp -C rxvt-unicode
 
-Or you could use this termcap entry, generated by the command above:
-
-   rxvt-unicode|rxvt-unicode terminal (X Window System):\
-           :am:bw:eo:km:mi:ms:xn:xo:\
-           :co#80:it#8:li#24:lm#0:\
-           :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-           :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
-           :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
-           :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-           :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
-           :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
-           :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
-           :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
-           :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
-           :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
-           :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
-           :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
-           :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
-           :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-           :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
-           :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
-           :vs=\E[?25h:
+Or you could use the termcap entry in doc/etc/rxvt-unicode.termcap,
+generated by the command above.
 
 =head3 Why does C<ls> no longer have coloured output?
 
 The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
-decide wether a terminal has colour, but uses it's own configuration
-file. Needless to say, C<rxvt-unicode> is not in it's default file (among
+decide whether a terminal has colour, but uses its own configuration
+file. Needless to say, C<rxvt-unicode> is not in its default file (among
 with most other terminals supporting colour). Either add:
 
    TERM rxvt-unicode
@@ -801,14 +968,15 @@ getting two unrelated other characters or similar, or if program output is
 subtly garbled, then you should check your locale settings.
 
 Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
-programs. Often rxvt-unicode is started in the C<C> locale, while the
-login script running within the rxvt-unicode window changes the locale to
-something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work.
+programs running in it. Often rxvt-unicode is started in the C<C> locale,
+while the login script running within the rxvt-unicode window changes the
+locale to something else, e.g. C<en_GB.UTF-8>. Needless to say, this is
+not going to work, and is the most common cause for problems.
 
 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.
 
-  printf '\e]701;%s\007' "$LC_CTYPE"
+  printf '\33]701;%s\007' "$LC_CTYPE"   # $LANG or $LC_ALL are worth a try, too
 
 If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
 supported on your systems. Some systems have a C<locale> command which
@@ -839,7 +1007,7 @@ 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 I<locale>. Applications not using
 that info will have problems (for example, C<xterm> gets the width of
-characters wrong as it uses it's own, locale-independent table under all
+characters wrong as it uses its own, locale-independent table under all
 locales).
 
 Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
@@ -868,7 +1036,7 @@ rxvt-unicode with the correct C<LC_CTYPE> category.
 Yes, using an escape sequence. Try something like this, which sets
 rxvt-unicode's idea of C<LC_CTYPE>.
 
-  printf '\e]701;%s\007' ja_JP.SJIS
+  printf '\33]701;%s\007' ja_JP.SJIS
 
 See also the previous answer.
 
@@ -877,9 +1045,9 @@ one locale (e.g. C<de_DE.UTF-8>) but some programs don't support it
 (e.g. UTF-8). For example, I use this script to start C<xjdic>, which
 first switches to a locale supported by xjdic and back later:
 
-   printf '\e]701;%s\007' ja_JP.SJIS
+   printf '\33]701;%s\007' ja_JP.SJIS
    xjdic -js
-   printf '\e]701;%s\007' de_DE.UTF-8
+   printf '\33]701;%s\007' de_DE.UTF-8
 
 You can also use xterm's C<luit> program, which usually works fine, except
 for some locales where character width differs between program- and
@@ -907,12 +1075,12 @@ C<ja_JP.EUC-JP> or equivalent.
 =item - Make sure the C<XMODIFIERS> environment variable is set correctly when I<starting> rxvt-unicode.
 
 When you want to use e.g. B<kinput2>, it must be set to
-C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. Youan see what input
+C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input
 method servers are running with this command:
 
    xprop -root XIM_SERVERS
 
-=item 
+=item
 
 =back
 
@@ -962,12 +1130,12 @@ might encounter the same issue.
 
 You should build one binary with the default options. F<configure>
 now enables most useful options, and the trend goes to making them
-runtime-switchable, too, so there is usually no drawback to enbaling 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.
 
-You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources
+You should not overwrite the C<perl-ext-common> and C<perl-ext> resources
 system-wide (except maybe with C<defaults>). This will result in useful
 behaviour. If your distribution aims at low memory, add an empty
 C<perl-ext-common> resource to the app-defaults file. This will keep the
@@ -995,27 +1163,19 @@ and reduces possible bugs to initialisation code run before main(), or
 things like the dynamic loader of your system, which should result in very
 little risk.
 
-=head3 On Solaris 9, many line-drawing characters are too wide.
-
-Seems to be a known bug, read
-L<http://nixdoc.net/files/forum/about34198.html>. Some people use the
-following ugly workaround to get non-double-wide-characters working:
-
-   #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
-
 =head3 I am on FreeBSD and rxvt-unicode does not seem to work at all.
 
 Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
 in your compile environment, or an implementation that implements it,
-wether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
+whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
 B<wchar_t> is represented as unicode.
 
-As you might have guessed, FreeBSD does neither define this symobl nor
-does it support it. Instead, it uses it's own internal representation of
+As you might have guessed, FreeBSD does neither define this symbol nor
+does it support it. Instead, it uses its own internal representation of
 B<wchar_t>. This is, of course, completely fine with respect to standards.
 
 However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and
-C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>.
+C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>).
 
 C<__STDC_ISO_10646__> is the only sane way to support multi-language
 apps in an OS, as using a locale-dependent (and non-standardized)
@@ -1035,11 +1195,6 @@ 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 :)
 
-=head3 I use Solaris 9 and it doesn't compile/work/etc.
-
-Try the diff in F<doc/solaris9.patch> as a base. It fixes the worst
-problems with C<wcwidth> and a compile problem.
-
 =head3 How can I use rxvt-unicode under cygwin?
 
 rxvt-unicode should compile and run out of the box on cygwin, using
@@ -1053,6 +1208,25 @@ At the time of this writing, cygwin didn't seem to support any multi-byte
 encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
 to 8-bit encodings.
 
+=head3 Character widths are not correct.
+
+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.
+
+The solution is to upgrade your system or switch to a better one. A
+possibly working workaround is to use a wcwidth implementation like
+
+http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+
+=head3 I want 256 colors
+
+Are you sure you need 256 colors? 88 colors should be enough for most
+purposes. If you really need more, there is an unsupported patch for
+it in the doc directory, but please do not ask for it to be applied.
+
 =head1 RXVT-UNICODE TECHNICAL REFERENCE
 
 The rest of this document describes various technical aspects of
@@ -1314,6 +1488,8 @@ Erase in Line (EL)
        B<< C<Ps = 0> >>        Clear to Right (default)
        B<< C<Ps = 1> >>        Clear to Left
        B<< C<Ps = 2> >>        Clear All
+       B<< C<Ps = 3> >>        Like Ps = 0, but is ignored when wrapped
+                               (@@RXVT_NAME@@ extension)
 
 =end table
 
@@ -1555,7 +1731,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =over 4
 
-=item B<< C<Ps = 1> >> (DECCKM)
+=item B<< C<Pm = 1> >> (DECCKM)
 
 =begin table
 
@@ -1564,7 +1740,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 2> >> (ANSI/VT52 mode)
+=item B<< C<Pm = 2> >> (ANSI/VT52 mode)
 
 =begin table
 
@@ -1573,7 +1749,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 3> >>
+=item B<< C<Pm = 3> >>
 
 =begin table
 
@@ -1582,7 +1758,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 4> >>
+=item B<< C<Pm = 4> >>
 
 =begin table
 
@@ -1591,7 +1767,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 5> >>
+=item B<< C<Pm = 5> >>
 
 =begin table
 
@@ -1600,7 +1776,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 6> >>
+=item B<< C<Pm = 6> >>
 
 =begin table
 
@@ -1609,7 +1785,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 7> >>
+=item B<< C<Pm = 7> >>
 
 =begin table
 
@@ -1618,7 +1794,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 8> >> I<unimplemented>
+=item B<< C<Pm = 8> >> I<unimplemented>
 
 =begin table
 
@@ -1627,7 +1803,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 9> >> X10 XTerm
+=item B<< C<Pm = 9> >> X10 XTerm
 
 =begin table
 
@@ -1636,7 +1812,7 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 25> >>
+=item B<< C<Pm = 25> >>
 
 =begin table
 
@@ -1645,16 +1821,16 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 30> >>
+=item B<< C<Pm = 30> >>
 
 =begin table
 
-       B<< C<h> >>     scrollBar visisble
-       B<< C<l> >>     scrollBar invisisble
+       B<< C<h> >>     scrollBar visible
+       B<< C<l> >>     scrollBar invisible
 
 =end table
 
-=item B<< C<Ps = 35> >> (B<rxvt>)
+=item B<< C<Pm = 35> >> (B<rxvt>)
 
 =begin table
 
@@ -1663,11 +1839,11 @@ Toggle DEC Private Mode Values (rxvt extension). I<where>
 
 =end table
 
-=item B<< C<Ps = 38> >> I<unimplemented>
+=item B<< C<Pm = 38> >> I<unimplemented>
 
 Enter Tektronix Mode (DECTEK)
 
-=item B<< C<Ps = 40> >>
+=item B<< C<Pm = 40> >>
 
 =begin table
 
@@ -1676,7 +1852,7 @@ Enter Tektronix Mode (DECTEK)
 
 =end table
 
-=item B<< C<Ps = 44> >> I<unimplemented>
+=item B<< C<Pm = 44> >> I<unimplemented>
 
 =begin table
 
@@ -1685,7 +1861,7 @@ Enter Tektronix Mode (DECTEK)
 
 =end table
 
-=item B<< C<Ps = 45> >> I<unimplemented>
+=item B<< C<Pm = 45> >> I<unimplemented>
 
 =begin table
 
@@ -1694,9 +1870,9 @@ Enter Tektronix Mode (DECTEK)
 
 =end table
 
-=item B<< C<Ps = 46> >> I<unimplemented>
+=item B<< C<Pm = 46> >> I<unimplemented>
 
-=item B<< C<Ps = 47> >>
+=item B<< C<Pm = 47> >>
 
 =begin table
 
@@ -1707,7 +1883,7 @@ Enter Tektronix Mode (DECTEK)
 
 X<Priv66>
 
-=item B<< C<Ps = 66> >>
+=item B<< C<Pm = 66> >>
 
 =begin table
 
@@ -1716,7 +1892,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 67> >>
+=item B<< C<Pm = 67> >>
 
 =begin table
 
@@ -1725,7 +1901,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1000> >> (X11 XTerm)
+=item B<< C<Pm = 1000> >> (X11 XTerm)
 
 =begin table
 
@@ -1734,7 +1910,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1001> >> (X11 XTerm) I<unimplemented>
+=item B<< C<Pm = 1001> >> (X11 XTerm) I<unimplemented>
 
 =begin table
 
@@ -1743,7 +1919,25 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1010> >> (B<rxvt>)
+=item B<< C<Pm = 1002> >> (X11 XTerm)
+
+=begin table
+
+       B<< C<h> >>     Send Mouse X & Y on button press and release, and motion with a button pressed.
+       B<< C<l> >>     No mouse reporting.
+
+=end table
+
+=item B<< C<Pm = 1003> >> (X11 XTerm)
+
+=begin table
+
+       B<< C<h> >>     Send Mouse X & Y on button press and release, and motion.
+       B<< C<l> >>     No mouse reporting.
+
+=end table
+
+=item B<< C<Pm = 1010> >> (B<rxvt>)
 
 =begin table
 
@@ -1752,7 +1946,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1011> >> (B<rxvt>)
+=item B<< C<Pm = 1011> >> (B<rxvt>)
 
 =begin table
 
@@ -1761,7 +1955,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1021> >> (B<rxvt>)
+=item B<< C<Pm = 1021> >> (B<rxvt>)
 
 =begin table
 
@@ -1770,7 +1964,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1047> >>
+=item B<< C<Pm = 1047> >>
 
 =begin table
 
@@ -1779,7 +1973,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1048> >>
+=item B<< C<Pm = 1048> >>
 
 =begin table
 
@@ -1788,7 +1982,7 @@ X<Priv66>
 
 =end table
 
-=item B<< C<Ps = 1049> >>
+=item B<< C<Pm = 1049> >>
 
 =begin table
 
@@ -1797,6 +1991,15 @@ X<Priv66>
 
 =end table
 
+=item B<< C<Pm = 2004> >>
+
+=begin table
+
+       B<< C<h> >>     Enable bracketed paste mode - prepend / append to the pasted text the control sequences C<ESC [ 200 ~> / C<ESC [ 201 ~>
+       B<< C<l> >>     Disable bracketed paste mode
+
+=end table
+
 =back
 
 =back
@@ -1820,25 +2023,26 @@ B<octet> can be escaped by prefixing it with SYN (0x16, ^V).
        B<< C<Ps = 2> >>        Change Window Title to B<< C<Pt> >>
        B<< C<Ps = 3> >>        If B<< C<Pt> >> starts with a B<< C<?> >>, query the (STRING) property of the window and return it. If B<< C<Pt> >> contains a B<< C<=> >>, set the named property to the given value, else delete the specified property.
        B<< C<Ps = 4> >>        B<< C<Pt> >> is a semi-colon separated sequence of one or more semi-colon separated B<number>/B<name> pairs, where B<number> is an index to a colour and B<name> is the name of a colour. Each pair causes the B<number>ed colour to be changed to B<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
-       B<< C<Ps = 10> >>       Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)>
-       B<< C<Ps = 11> >>       Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)>
+       B<< C<Ps = 10> >>       Change colour of text foreground to B<< C<Pt> >>
+       B<< C<Ps = 11> >>       Change colour of text background to B<< C<Pt> >>
        B<< C<Ps = 12> >>       Change colour of text cursor foreground to B<< C<Pt> >>
        B<< C<Ps = 13> >>       Change colour of mouse foreground to B<< C<Pt> >>
        B<< C<Ps = 17> >>       Change colour of highlight characters to B<< C<Pt> >>
        B<< C<Ps = 18> >>       Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
        B<< C<Ps = 19> >>       Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
-       B<< C<Ps = 20> >>       Change background pixmap parameters (see section XPM) (Compile XPM).
-       B<< C<Ps = 39> >>       Change default foreground colour to B<< C<Pt> >>.
+       B<< C<Ps = 20> >>       Change background pixmap parameters (see section BACKGROUND IMAGE) (Compile AfterImage).
+       B<< C<Ps = 39> >>       Change default foreground colour to B<< C<Pt> >>. [deprecated, use 10]
        B<< C<Ps = 46> >>       Change Log File to B<< C<Pt> >> I<unimplemented>
-       B<< C<Ps = 49> >>       Change default background colour to B<< C<Pt> >>.
+       B<< C<Ps = 49> >>       Change default background colour to B<< C<Pt> >>. [deprecated, use 11]
        B<< C<Ps = 50> >>       Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >>
-       B<< C<Ps = 55> >>       Log all scrollback buffer and all of screen to B<< C<Pt> >>
+       B<< C<Ps = 55> >>       Log all scrollback buffer and all of screen to B<< C<Pt> >> [disabled]
        B<< C<Ps = 701> >>      Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (Compile frills).
        B<< C<Ps = 702> >>      Request version if B<< C<Pt> >> is B<< C<?> >>, returning C<rxvt-unicode>, the resource name, the major and minor version numbers, e.g. C<ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST>.
        B<< C<Ps = 704> >>      Change colour of italic characters to B<< C<Pt> >>
        B<< C<Ps = 705> >>      Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency).
        B<< C<Ps = 706> >>      Change colour of bold characters to B<< C<Pt> >>
        B<< C<Ps = 707> >>      Change colour of underlined characters to B<< C<Pt> >>
+       B<< C<Ps = 708> >>      Change colour of the border to B<< C<Pt> >>
        B<< C<Ps = 710> >>      Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
        B<< C<Ps = 711> >>      Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
        B<< C<Ps = 712> >>      Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
@@ -1851,10 +2055,10 @@ B<octet> can be escaped by prefixing it with SYN (0x16, ^V).
 
 =back
 
-=head1 XPM
+=head1 BACKGROUND IMAGE
 
-For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value
-of B<< C<Pt> >> can be the name of the background pixmap followed by a
+For the BACKGROUND IMAGE XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> the value
+of B<< C<Pt> >> can be the name of the background image file followed by a
 sequence of scaling/positioning commands separated by semi-colons. The
 scaling/positioning commands are as follows:
 
@@ -1902,13 +2106,13 @@ For example:
 
 =over 4
 
-=item B<\E]20;funky\a>
+=item B<\E]20;funky.jpg\a>
 
-load B<funky.xpm> as a tiled image
+load B<funky.jpg> as a tiled image
 
-=item B<\E]20;mona;100\a>
+=item B<\E]20;mona.jpg;100\a>
 
-load B<mona.xpm> with a scaling of 100%
+load B<mona.jpg> with a scaling of 100%
 
 =item B<\E]20;;200;?\a>
 
@@ -1916,6 +2120,7 @@ rescale the current pixmap to 200% and display the image geometry in
 the title
 
 =back
+
 X<Mouse>
 
 =head1 Mouse Reporting
@@ -1966,10 +2171,11 @@ Col = B<< C<< <x> - SPACE >> >>
 Row = B<< C<< <y> - SPACE >> >>
 
 =back
-X<KeyCodes>
 
 =head1 Key Codes
 
+X<KeyCodes>
+
 Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20>
 
 For the keypad, use B<Shift> to temporarily override Application-Keypad
@@ -2045,10 +2251,9 @@ your system.
 
 General hint: if you get compile errors, then likely your configuration
 hasn't been tested well. Either try with C<--enable-everything> or use
-the F<./reconf> script as a base for experiments. F<./reconf> is used by
-myself, so it should generally be a working config. Of course, you should
-always report when a combination doesn't work, so it can be fixed. Marc
-Lehmann <rxvt@schmorp.de>.
+the default configuration (i.e. no C<--enable-xxx> or C<--disable-xxx>
+switches). Of course, you should always report when a combination doesn't
+work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
 
 All
 
@@ -2056,8 +2261,8 @@ All
 
 =item --enable-everything
 
-Add (or remove) support for all non-multichoice options listed in "./configure
---help".
+Add (or remove) support for all non-multichoice options listed in
+C<./configure --help>, except for C<--enable-assert>.
 
 You can specify this and then disable options you do not like by
 I<following> this with the appropriate C<--disable-...> arguments,
@@ -2090,7 +2295,7 @@ memory usage unless you use a font requiring one of these encodings.
 
        all     all available codeset groups
        zh      common chinese encodings
-       zh_ext  rarely used but very big chinese encodigs
+       zh_ext  rarely used but very big chinese encodings
        jp      common japanese encodings
        jp_ext  rarely used but big japanese encodings
        kr      korean encodings
@@ -2114,7 +2319,7 @@ support these extra characters, but Xft does.
 
 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 view thousand (shared with combining characters,
+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).
 
@@ -2122,7 +2327,7 @@ see next switch), and right now rxvt-unicode cannot display them
 
 Enable automatic composition of combining characters into
 composite characters. This is required for proper viewing of text
-where accents are encoded as seperate unicode characters. This is
+where accents are encoded as separate unicode characters. This is
 done by using precomposited characters when available or creating
 new pseudo-characters when no precomposed form exists.
 
@@ -2147,7 +2352,7 @@ disable resource fallback use --disable-fallback.
 Use the given name as default application name when
 reading resources. Specify --with-res-name=rxvt to replace rxvt.
 
-=item --with-res-class=CLASS /default: URxvt)
+=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
@@ -2170,22 +2375,28 @@ Write user and tty to lastlog file (used by programs like
 F<lastlogin>) at start of rxvt execution.  This option requires
 --enable-utmp to also be specified.
 
-=item --enable-xpm-background (default: on)
+=item --enable-afterimage (default: on)
 
-Add support for XPM background pixmaps.
+Add support for libAfterImage to be used for transparency and background
+images. It adds support for many file formats including JPG, PNG,
+SVG, TIFF, GIF, XPM, BMP, ICO, XCF, TGA and AfterStep image XML
+(L<http://www.afterstep.org/visualdoc.php?show=asimagexml>).
 
-=item --enable-transparency (default: on)
+This option also adds such eye candy as blending an image over the root
+background, as well as dynamic scaling and bluring of background images.
 
-Add support for inheriting parent backgrounds thus giving a fake
-transparency to the term.
+Note that with this option enabled, @@RXVT_NAME@@'s memory footprint might
+increase by a few megabytes even if no extra features are used (mostly due
+to third-party libraries used by libAI). Memory footprint may somewhat be
+lowered if libAfterImage is configured without support for SVG.
 
-=item --enable-fading (default: on)
+=item --enable-transparency (default: on)
 
-Add support for fading the text when focus is lost (requires C<--enable-transparency>).
+Add support for backgrounds, creating illusion of transparency in the term.
 
-=item --enable-tinting (default: on)
+=item --enable-fading (default: on)
 
-Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
+Add support for fading the text when focus is lost.
 
 =item --enable-rxvt-scroll (default: on)
 
@@ -2199,17 +2410,6 @@ Add support for a NeXT-like scrollbar.
 
 Add support for an Xterm-like scrollbar.
 
-=item --enable-plain-scroll (default: on)
-
-Add support for a very unobtrusive, plain-looking scrollbar that
-is the favourite of the rxvt-unicode author, having used it for
-many years.
-
-=item --enable-ttygid (default: off)
-
-Change tty device setting to group "tty" - only use this if
-your system uses this type of security.
-
 =item --disable-backspace-key
 
 Removes any handling of the backspace key by us - let the X server do it.
@@ -2238,28 +2438,31 @@ in combination with other switches) is:
 
   MWM-hints
   EWMH-hints (pid, utf8 names) and protocols (ping)
-  seperate underline colour (-underlineColor)
+  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-2 and -3, and visual feedback
+  iso-14755 5.1 (basic) support
   tripleclickwords (-tcw)
   settable insecure mode (-insecure)
   keysym remapping support
-  cursor blinking and underline cursor (-cb, -uc)
+  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 highlightcolor support (-hc)
 
-It also enabled some non-essential features otherwise disabled, such as:
+It also enables some non-essential features otherwise disabled, such as:
 
   some round-trip time optimisations
   nearest color allocation on pseudocolor screens
-  UTF8_STRING supporr for selection
+  UTF8_STRING support for selection
   sgr modes 90..97 and 100..107
   backindex and forwardindex escape sequences
-  view change/zero scorllback esacpe sequences
+  view change/zero scrollback escape sequences
   locale switching escape sequence
   window op and some xterm/OSC escape sequences
   rectangular selections
@@ -2268,16 +2471,20 @@ It also enabled some non-essential features otherwise disabled, such as:
 
 =item --enable-iso14755 (default: on)
 
-Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
-F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
-C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with
-this switch.
+Enable extended ISO 14755 support (see @@RXVT_NAME@@(1)).
+Basic support (section 5.1) is enabled by C<--enable-frills>, while
+support for 5.2, 5.3 and 5.4 is enabled with this switch.
 
 =item --enable-keepscrolling (default: on)
 
 Add support for continual scrolling of the display when you hold
 the mouse button down on a scrollbar arrow.
 
+=item --enable-selectionscrolling (default: on)
+
+Add support for scrolling when the selection moves to the top or
+bottom of the screen.
+
 =item --enable-mousewheel (default: on)
 
 Add support for scrolling via mouse wheel or buttons 4 & 5.
@@ -2288,30 +2495,15 @@ 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.
 
-=item --disable-new-selection
-
-Remove support for mouse selection style like that of xterm.
-
-=item --enable-dmalloc (default: off)
-
-Use Gray Watson's malloc - which is good for debugging See
-http://www.letters.com/dmalloc/ for details If you use either this or the
-next option, you may need to edit src/Makefile after compiling to point
-DINCLUDE and DLIB to the right places.
-
-You can only use either this option and the following (should
-you use either) .
+=item --enable-smart-resize (default: off)
 
-=item --enable-dlmalloc (default: off)
-
-Use Doug Lea's malloc - which is good for a production version
-See L<http://g.oswego.edu/dl/html/malloc.html> for details.
+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.
 
-=item --enable-smart-resize (default: on)
+=item --enable-text-blink (default: on)
 
-Add smart growth/shrink behaviour when changing font size via hot
-keys. This should keep the window corner which is closest to a corner of
-the screen in a fixed position.
+Add support for blinking text.
 
 =item --enable-pointer-blank (default: on)
 
@@ -2320,10 +2512,22 @@ Add support to have the pointer disappear when typing or inactive.
 =item --enable-perl (default: on)
 
 Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
-manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
-in F<src/perl-ext/> for the extensions that are installed by default. The
-perl interpreter that is used can be specified via the C<PERL> environment
-variable when running configure.
+manpage for more info on this feature, or the files in F<src/perl/>
+for the extensions that are installed by default.
+The perl interpreter that is used can be specified via the C<PERL>
+environment variable when running configure. Even when compiled in,
+perl will I<not> be initialised when all extensions have been disabled
+C<-pe "" --perl-ext-common "">, so it should be safe to enable from a
+resource standpoint.
+
+=item --enable-assert (default: off)
+
+Enables the assertions in the code, normally disabled. This switch is only
+useful when developing rxvt-unicode.
+
+=item --with-afterimage-config=DIR
+
+Look for the libAfterImage config script in DIR.
 
 =item --with-name=NAME (default: urxvt)
 
@@ -2344,18 +2548,6 @@ PATH.
 
 Use the X Window System (pretty much default, eh?).
 
-=item --with-xpm-includes=DIR
-
-Look for the XPM includes in DIR.
-
-=item --with-xpm-library=DIR
-
-Look for the XPM library in DIR.
-
-=item --with-xpm
-
-Not needed - define via --enable-xpm-background.
-
 =back
 
 =head1 AUTHORS