ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.7.txt
Revision: 1.57
Committed: Tue Jan 31 01:00:49 2006 UTC (18 years, 5 months ago) by root
Content type: text/plain
Branch: MAIN
Changes since 1.56: +15 -1 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 NAME
2     RXVT REFERENCE - FAQ, command sequences and other background information
3    
4 root 1.11 SYNOPSIS
5     # set a new font set
6     printf '\33]50;%s\007' 9x15,xft:Kochi" Mincho"
7    
8     # change the locale and tell rxvt-unicode about it
9     export LC_CTYPE=ja_JP.EUC-JP; printf "\33]701;$LC_CTYPE\007"
10    
11     # set window title
12     printf '\33]2;%s\007' "new window title"
13    
14     DESCRIPTION
15     This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
16     all escape sequences, and other background information.
17    
18     The newest version of this document is also available on the World Wide
19     Web at
20     <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
21    
22 root 1.1 FREQUENTLY ASKED QUESTIONS
23 root 1.55 The new selection selects pieces that are too big, how can I select
24     single words?
25 root 1.56 If you want to select e.g. alphanumeric words, you can use the following
26     setting:
27 root 1.41
28 root 1.55 URxvt.selection.pattern-0: ([[:word:]]+)
29 root 1.41
30 root 1.55 If you click more than twice, the selection will be extended more and
31     more.
32 root 1.41
33 root 1.55 To get a selection that is very similar to the old code, try this
34     pattern:
35 root 1.41
36 root 1.55 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
37 root 1.41
38 root 1.55 Please also note that the *LeftClick Shift-LeftClik* combination also
39     selects words like the old code.
40 root 1.42
41 root 1.56 I don't like the new selection/popups/hotkeys/perl, how do I
42     change/disable it?
43     You can disable the perl extension completely by setting the
44     perl-ext-common resource to the empty string, which also keeps
45     rxvt-unicode from initialising perl, saving memory.
46    
47     If you only want to disable specific features, you first have to
48     identify which perl extension is responsible. For this, read the section
49     PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For example, to
50     disable the selection-popup and option-popup, specify this
51     perl-ext-common resource:
52    
53     URxvt.perl-ext-common: default,-selection-popup,-option-popup
54    
55     This will keep the default extensions, but disable the two popup
56     extensions. Some extensions can also be configured, for example,
57     scrollback search mode is triggered by M-s. You can move it to any other
58     combination either by setting the searchable-scrollback resource:
59    
60     URxvt.searchable-scrollback: CM-s
61    
62 root 1.57 The cursor moves when selecting text in the current input line, how
63 root 1.56 do I switch this off?
64 root 1.57 See next entry.
65    
66 root 1.56 During rlogin/ssh/telnet/etc. sessions, clicking near the cursor
67     outputs strange escape sequences, how do I fix this?
68     These are caused by the "readline" perl extension. Under normal
69     circumstances, it will move your cursor around when you click into the
70     line that contains it. It tries hard not to do this at the wrong moment,
71     but when running a program that doesn't parse cursor movements or in
72     some cases during rlogin sessions, it fails to detect this properly.
73    
74     You can permamently switch this feature off by disabling the "readline"
75     extension:
76    
77     URxvt.perl-ext-common: default,-readline
78    
79     Why doesn't rxvt-unicode read my resources?
80     Well, why, indeed? It does, in a way very similar to other X
81     applications. Most importantly, this means that if you or your OS loads
82     resources into the X display (the right way to do it), rxvt-unicode will
83     ignore any resource files in your home directory. It will only read
84     $HOME/.Xdefaults when no resources are attached to the display.
85    
86     If you have or use an $HOME/.Xresources file, chances are that resources
87     are loaded into your X-server. In this case, you have to re-login after
88     every change (or run xrdb -merge $HOME/.Xresources).
89    
90     Also consider the form resources have to use:
91    
92     URxvt.resource: value
93    
94     If you want to use another form (there are lots of different ways of
95     specifying resources), make sure you understand wether and why it works.
96     If unsure, use the form above.
97    
98     I can't get transparency working, what am I doing wrong?
99     First of all, transparency isn't officially supported in rxvt-unicode,
100     so you are mostly on your own. Do not bug the author about it (but you
101     may bug everybody else). Also, if you can't get it working consider it a
102     rite of passage: ... and you failed.
103    
104     Here are four ways to get transparency. Do read the manpage and option
105     descriptions for the programs mentioned and rxvt-unicode. Really, do it!
106    
107     1. Use inheritPixmap:
108    
109     Esetroot wallpaper.jpg
110     rxvt -ip -tint red -sh 40
111    
112     That works. If you think it doesn't, you lack transparency and tinting
113     support, or you are unable to read.
114    
115     2. Use a simple pixmap and emulate pseudo-transparency. This enables you
116     to use effects other than tinting and shading: Just shade/tint/whatever
117     your picture with gimp:
118    
119     convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
120     rxvt -pixmap background.xpm -pe automove-background
121    
122     That works. If you think it doesn't, you lack XPM and Perl support, or
123     you are unable to read.
124    
125     3. Use an ARGB visual:
126    
127     rxvt -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
128    
129     This requires XFT support, and the support of your X-server. If that
130     doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
131     there yet, no matter what they claim. Rxvt-Unicode contains the
132     neccessary bugfixes and workarounds for Xft and Xlib to make it work,
133     but that doesn't mean that your WM has the required kludges in place.
134    
135     4. Use xcompmgr and let it do the job:
136    
137     xprop -frame -f _NET_WM_WINDOW_OPACITY 32c \
138     -set _NET_WM_WINDOW_OPACITY 0xc0000000
139    
140     Then click on a window you want to make transparent. Replace 0xc0000000
141     by other values to change the degree of opacity. If it doesn't work and
142     your server crashes, you got to keep the pieces.
143    
144     Isn't rxvt supposed to be small? Don't all those features bloat?
145     I often get asked about this, and I think, no, they didn't cause extra
146     bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
147     that the urxvt binary is larger (due to some encoding tables always
148     being compiled in), but it actually uses less memory (RSS) after
149     startup. Even with "--disable-everything", this comparison is a bit
150     unfair, as many features unique to urxvt (locale, encoding conversion,
151     iso14755 etc.) are already in use in this mode.
152    
153     text data bss drs rss filename
154     98398 1664 24 15695 1824 rxvt --disable-everything
155     188985 9048 66616 18222 1788 urxvt --disable-everything
156    
157     When you "--enable-everything" (which _is_ unfair, as this involves xft
158     and full locale/XIM support which are quite bloaty inside libX11 and my
159     libc), the two diverge, but not unreasnobaly so.
160    
161     text data bss drs rss filename
162     163431 2152 24 20123 2060 rxvt --enable-everything
163     1035683 49680 66648 29096 3680 urxvt --enable-everything
164    
165     The very large size of the text section is explained by the east-asian
166     encoding tables, which, if unused, take up disk space but nothing else
167     and can be compiled out unless you rely on X11 core fonts that use those
168     encodings. The BSS size comes from the 64k emergency buffer that my c++
169     compiler allocates (but of course doesn't use unless you are out of
170     memory). Also, using an xft font instead of a core font immediately adds
171     a few megabytes of RSS. Xft indeed is responsible for a lot of RSS even
172     when not used.
173    
174     Of course, due to every character using two or four bytes instead of
175     one, a large scrollback buffer will ultimately make rxvt-unicode use
176     more memory.
177    
178     Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this
179     still fares rather well. And compared to some monsters like
180     gnome-terminal (21152k + extra 4204k in separate processes) or konsole
181     (22200k + extra 43180k in daemons that stay around after exit, plus half
182     a minute of startup time, including the hundreds of warnings it spits
183     out), it fares extremely well *g*.
184    
185     Why C++, isn't that unportable/bloated/uncool?
186     Is this a question? :) It comes up very often. The simple answer is: I
187     had to write it, and C++ allowed me to write and maintain it in a
188     fraction of the time and effort (which is a scarce resource for me). Put
189     even shorter: It simply wouldn't exist without C++.
190    
191     My personal stance on this is that C++ is less portable than C, but in
192     the case of rxvt-unicode this hardly matters, as its portability limits
193     are defined by things like X11, pseudo terminals, locale support and
194     unix domain sockets, which are all less portable than C++ itself.
195    
196     Regarding the bloat, see the above question: It's easy to write programs
197     in C that use gobs of memory, an certainly possible to write programs in
198     C++ that don't. C++ also often comes with large libraries, but this is
199     not necessarily the case with GCC. Here is what rxvt links against on my
200     system with a minimal config:
201    
202     libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
203     libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
204     libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
205     /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
206    
207     And here is rxvt-unicode:
208    
209     libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
210     libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
211     libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
212     libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
213     /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
214    
215     No large bloated libraries (of course, none were linked in statically),
216     except maybe libX11 :)
217    
218     Does it support tabs, can I have a tabbed rxvt-unicode?
219     Beginning with version 7.3, there is a perl extension that implements a
220     simple tabbed terminal. It is installed by default, so any of these
221     should give you tabs:
222    
223     rxvt -pe tabbed
224    
225     URxvt.perl-ext-common: default,tabbed
226    
227     It will also work fine with tabbing functionality of many window
228     managers or similar tabbing programs, and its embedding-features allow
229     it to be embedded into other programs, as witnessed by doc/rxvt-tabbed
230     or the upcoming "Gtk2::URxvt" perl module, which features a tabbed urxvt
231     (murxvt) terminal as an example embedding application.
232    
233     How do I know which rxvt-unicode version I'm using?
234     The version number is displayed with the usage (-h). Also the escape
235     sequence "ESC [ 8 n" sets the window title to the version number. When
236     using the rxvtc client, the version displayed is that of the daemon.
237    
238     I am using Debian GNU/Linux and have a problem...
239     The Debian GNU/Linux package of rxvt-unicode in sarge contains large
240     patches that considerably change the behaviour of rxvt-unicode (but
241     unfortunately this notice has been removed). Before reporting a bug to
242     the original rxvt-unicode author please download and install the genuine
243     version (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce
244     the problem. If you cannot, chances are that the problems are specific
245     to Debian GNU/Linux, in which case it should be reported via the Debian
246     Bug Tracking System (use "reportbug" to report the bug).
247    
248     For other problems that also affect the Debian package, you can and
249     probably should use the Debian BTS, too, because, after all, it's also a
250     bug in the Debian version and it serves as a reminder for other users
251     that might encounter the same issue.
252    
253     I am maintaining rxvt-unicode for distribution/OS XXX, any
254     recommendation?
255     You should build one binary with the default options. configure now
256     enables most useful options, and the trend goes to making them
257     runtime-switchable, too, so there is usually no drawback to enbaling
258     them, except higher disk and possibly memory usage. The perl interpreter
259     should be enabled, as important functionality (menus, selection, likely
260     more in the future) depends on it.
261    
262     You should not overwrite the "perl-ext-common" snd "perl-ext" resources
263     system-wide (except maybe with "defaults"). This will result in useful
264     behaviour. If your distribution aims at low memory, add an empty
265     "perl-ext-common" resource to the app-defaults file. This will keep the
266     perl interpreter disabled until the user enables it.
267    
268     If you can/want build more binaries, I recommend building a minimal one
269     with "--disable-everything" (very useful) and a maximal one with
270     "--enable-everything" (less useful, it will be very big due to a lot of
271     encodings built-in that increase download times and are rarely used).
272    
273     I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?
274     It should be, starting with release 7.1. You are encouraged to properly
275     install urxvt with privileges necessary for your OS now.
276    
277     When rxvt-unicode detects that it runs setuid or setgid, it will fork
278     into a helper process for privileged operations (pty handling on some
279     systems, utmp/wtmp/lastlog handling on others) and drop privileges
280     immediately. This is much safer than most other terminals that keep
281     privileges while running (but is more relevant to urxvt, as it contains
282     things as perl interpreters, which might be "helpful" to attackers).
283    
284     This forking is done as the very first within main(), which is very
285     early and reduces possible bugs to initialisation code run before
286     main(), or things like the dynamic loader of your system, which should
287     result in very little risk.
288    
289     When I log-in to another system it tells me about missing terminfo data?
290     The terminal description used by rxvt-unicode is not as widely available
291     as that for xterm, or even rxvt (for which the same problem often
292     arises).
293    
294     The correct solution for this problem is to install the terminfo, this
295     can be done like this (with ncurses' infocmp):
296    
297     REMOTE=remotesystem.domain
298     infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti"
299    
300     ... or by installing rxvt-unicode normally on the remote system,
301    
302     If you cannot or do not want to do this, then you can simply set
303     "TERM=rxvt" or even "TERM=xterm", and live with the small number of
304     problems arising, which includes wrong keymapping, less and different
305     colours and some refresh errors in fullscreen applications. It's a nice
306     quick-and-dirty workaround for rare cases, though.
307    
308     If you always want to do this (and are fine with the consequences) you
309     can either recompile rxvt-unicode with the desired TERM value or use a
310     resource to set it:
311    
312     URxvt.termName: rxvt
313    
314     If you don't plan to use rxvt (quite common...) you could also replace
315     the rxvt terminfo file with the rxvt-unicode one.
316    
317     "tic" outputs some error when compiling the terminfo entry.
318     Most likely it's the empty definition for "enacs=". Just replace it by
319     "enacs=\E[0@" and try again.
320    
321     "bash"'s readline does not work correctly under rxvt.
322 root 1.57 See next entry.
323    
324 root 1.56 I need a termcap file entry.
325     One reason you might want this is that some distributions or operating
326     systems still compile some programs using the long-obsoleted termcap
327     library (Fedora Core's bash is one example) and rely on a termcap entry
328     for "rxvt-unicode".
329    
330     You could use rxvt's termcap entry with resonable results in many cases.
331     You can also create a termcap entry by using terminfo's infocmp program
332     like this:
333    
334     infocmp -C rxvt-unicode
335    
336     Or you could use this termcap entry, generated by the command above:
337    
338     rxvt-unicode|rxvt-unicode terminal (X Window System):\
339     :am:bw:eo:km:mi:ms:xn:xo:\
340     :co#80:it#8:li#24:lm#0:\
341     :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
342     :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
343     :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
344     :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
345     :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
346     :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
347     :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
348     :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
349     :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
350     :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
351     :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
352     :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
353     :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
354     :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
355     :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
356     :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
357     :vs=\E[?25h:
358    
359     Why does "ls" no longer have coloured output?
360     The "ls" in the GNU coreutils unfortunately doesn't use terminfo to
361     decide wether a terminal has colour, but uses it's own configuration
362     file. Needless to say, "rxvt-unicode" is not in it's default file (among
363     with most other terminals supporting colour). Either add:
364    
365     TERM rxvt-unicode
366    
367     to "/etc/DIR_COLORS" or simply add:
368    
369     alias ls='ls --color=auto'
370    
371     to your ".profile" or ".bashrc".
372    
373     Why doesn't vim/emacs etc. use the 88 colour mode?
374 root 1.57 See next entry.
375    
376 root 1.56 Why doesn't vim/emacs etc. make use of italic?
377 root 1.57 See next entry.
378    
379 root 1.56 Why are the secondary screen-related options not working properly?
380     Make sure you are using "TERM=rxvt-unicode". Some pre-packaged
381     distributions (most notably Debian GNU/Linux) break rxvt-unicode by
382     setting "TERM" to "rxvt", which doesn't have these extra features.
383     Unfortunately, some of these (most notably, again, Debian GNU/Linux)
384     furthermore fail to even install the "rxvt-unicode" terminfo file, so
385     you will need to install it on your own (See the question When I log-in
386     to another system it tells me about missing terminfo data? on how to do
387     this).
388    
389     My numerical keypad acts weird and generates differing output?
390     Some Debian GNUL/Linux users seem to have this problem, although no
391     specific details were reported so far. It is possible that this is
392     caused by the wrong "TERM" setting, although the details of wether and
393     how this can happen are unknown, as "TERM=rxvt" should offer a
394     compatible keymap. See the answer to the previous question, and please
395     report if that helped.
396    
397     Rxvt-unicode does not seem to understand the selected encoding?
398 root 1.57 See next entry.
399    
400 root 1.56 Unicode does not seem to work?
401     If you encounter strange problems like typing an accented character but
402     getting two unrelated other characters or similar, or if program output
403     is subtly garbled, then you should check your locale settings.
404    
405     Rxvt-unicode must be started with the same "LC_CTYPE" setting as the
406     programs. Often rxvt-unicode is started in the "C" locale, while the
407     login script running within the rxvt-unicode window changes the locale
408     to something else, e.g. "en_GB.UTF-8". Needless to say, this is not
409     going to work.
410    
411     The best thing is to fix your startup environment, as you will likely
412     run into other problems. If nothing works you can try this in your
413     .profile.
414    
415     printf '\e]701;%s\007' "$LC_CTYPE"
416    
417     If this doesn't work, then maybe you use a "LC_CTYPE" specification not
418     supported on your systems. Some systems have a "locale" command which
419     displays this (also, "perl -e0" can be used to check locale settings, as
420     it will complain loudly if it cannot set the locale). If it displays
421     something like:
422    
423     locale: Cannot set LC_CTYPE to default locale: ...
424    
425     Then the locale you specified is not supported on your system.
426    
427     If nothing works and you are sure that everything is set correctly then
428     you will need to remember a little known fact: Some programs just don't
429     support locales :(
430    
431     Why do some characters look so much different than others?
432 root 1.57 See next entry.
433    
434 root 1.56 How does rxvt-unicode choose fonts?
435     Most fonts do not contain the full range of Unicode, which is fine.
436     Chances are that the font you (or the admin/package maintainer of your
437     system/os) have specified does not cover all the characters you want to
438     display.
439    
440     rxvt-unicode makes a best-effort try at finding a replacement font.
441     Often the result is fine, but sometimes the chosen font looks
442     bad/ugly/wrong. Some fonts have totally strange characters that don't
443     resemble the correct glyph at all, and rxvt-unicode lacks the artificial
444     intelligence to detect that a specific glyph is wrong: it has to believe
445     the font that the characters it claims to contain indeed look correct.
446    
447     In that case, select a font of your taste and add it to the font list,
448     e.g.:
449    
450     rxvt -fn basefont,font2,font3...
451    
452     When rxvt-unicode sees a character, it will first look at the base font.
453     If the base font does not contain the character, it will go to the next
454     font, and so on. Specifying your own fonts will also speed up this
455     search and use less resources within rxvt-unicode and the X-server.
456    
457     The only limitation is that none of the fonts may be larger than the
458     base font, as the base font defines the terminal character cell size,
459     which must be the same due to the way terminals work.
460    
461     Why do some chinese characters look so different than others?
462     This is because there is a difference between script and language --
463     rxvt-unicode does not know which language the text that is output is, as
464     it only knows the unicode character codes. If rxvt-unicode first sees a
465     japanese/chinese character, it might choose a japanese font for display.
466     Subsequent japanese characters will use that font. Now, many chinese
467     characters aren't represented in japanese fonts, so when the first
468     non-japanese character comes up, rxvt-unicode will look for a chinese
469     font -- unfortunately at this point, it will still use the japanese font
470     for chinese characters that are also in the japanese font.
471    
472     The workaround is easy: just tag a chinese font at the end of your font
473     list (see the previous question). The key is to view the font list as a
474     preference list: If you expect more japanese, list a japanese font
475     first. If you expect more chinese, put a chinese font first.
476    
477     In the future it might be possible to switch language preferences at
478     runtime (the internal data structure has no problem with using different
479     fonts for the same character at the same time, but no interface for this
480     has been designed yet).
481    
482     Until then, you might get away with switching fonts at runtime (see "Can
483     I switch the fonts at runtime?" later in this document).
484    
485     Why does rxvt-unicode sometimes leave pixel droppings?
486     Most fonts were not designed for terminal use, which means that
487     character size varies a lot. A font that is otherwise fine for terminal
488     use might contain some characters that are simply too wide. Rxvt-unicode
489     will avoid these characters. For characters that are just "a bit" too
490     wide a special "careful" rendering mode is used that redraws adjacent
491     characters.
492    
493     All of this requires that fonts do not lie about character sizes,
494     however: Xft fonts often draw glyphs larger than their acclaimed
495     bounding box, and rxvt-unicode has no way of detecting this (the correct
496     way is to ask for the character bounding box, which unfortunately is
497     wrong in these cases).
498    
499     It's not clear (to me at least), wether this is a bug in Xft, freetype,
500     or the respective font. If you encounter this problem you might try
501     using the "-lsp" option to give the font more height. If that doesn't
502     work, you might be forced to use a different font.
503    
504     All of this is not a problem when using X11 core fonts, as their
505     bounding box data is correct.
506    
507     On Solaris 9, many line-drawing characters are too wide.
508     Seems to be a known bug, read
509     <http://nixdoc.net/files/forum/about34198.html>. Some people use the
510     following ugly workaround to get non-double-wide-characters working:
511    
512     #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
513    
514     My Compose (Multi_key) key is no longer working.
515     The most common causes for this are that either your locale is not set
516     correctly, or you specified a preeditStyle that is not supported by your
517     input method. For example, if you specified OverTheSpot and your input
518     method (e.g. the default input method handling Compose keys) does not
519     support this (for instance because it is not visual), then rxvt-unicode
520     will continue without an input method.
521    
522     In this case either do not specify a preeditStyle or specify more than
523     one pre-edit style, such as OverTheSpot,Root,None.
524    
525     I cannot type "Ctrl-Shift-2" to get an ASCII NUL character due to ISO 14755
526     Either try "Ctrl-2" alone (it often is mapped to ASCII NUL even on
527     international keyboards) or simply use ISO 14755 support to your
528     advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for
529     other codes, too, such as "Ctrl-Shift-1-d" to type the default telnet
530     escape character and so on.
531    
532     How can I keep rxvt-unicode from using reverse video so much?
533     First of all, make sure you are running with the right terminal settings
534     ("TERM=rxvt-unicode"), which will get rid of most of these effects. Then
535     make sure you have specified colours for italic and bold, as otherwise
536     rxvt-unicode might use reverse video to simulate the effect:
537    
538     URxvt.colorBD: white
539     URxvt.colorIT: green
540    
541     Some programs assume totally weird colours (red instead of blue), how can I fix that?
542     For some unexplainable reason, some rare programs assume a very weird
543     colour palette when confronted with a terminal with more than the
544     standard 8 colours (rxvt-unicode supports 88). The right fix is, of
545     course, to fix these programs not to assume non-ISO colours without very
546     good reasons.
547    
548     In the meantime, you can either edit your "rxvt-unicode" terminfo
549     definition to only claim 8 colour support or use "TERM=rxvt", which will
550     fix colours but keep you from using other rxvt-unicode features.
551    
552     I am on FreeBSD and rxvt-unicode does not seem to work at all.
553     Rxvt-unicode requires the symbol "__STDC_ISO_10646__" to be defined in
554     your compile environment, or an implementation that implements it,
555     wether it defines the symbol or not. "__STDC_ISO_10646__" requires that
556     wchar_t is represented as unicode.
557    
558     As you might have guessed, FreeBSD does neither define this symobl nor
559     does it support it. Instead, it uses it's own internal representation of
560     wchar_t. This is, of course, completely fine with respect to standards.
561    
562     However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1" and
563     "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
564    
565     "__STDC_ISO_10646__" is the only sane way to support multi-language apps
566     in an OS, as using a locale-dependent (and non-standardized)
567     representation of wchar_t makes it impossible to convert between wchar_t
568     (as used by X11 and your applications) and any other encoding without
569     implementing OS-specific-wrappers for each and every locale. There
570     simply are no APIs to convert wchar_t into anything except the current
571     locale encoding.
572    
573     Some applications (such as the formidable mlterm) work around this by
574     carrying their own replacement functions for character set handling with
575     them, and either implementing OS-dependent hacks or doing multiple
576     conversions (which is slow and unreliable in case the OS implements
577     encodings slightly different than the terminal emulator).
578    
579     The rxvt-unicode author insists that the right way to fix this is in the
580     system libraries once and for all, instead of forcing every app to carry
581     complete replacements for them :)
582    
583     I use Solaris 9 and it doesn't compile/work/etc.
584     Try the diff in doc/solaris9.patch as a base. It fixes the worst
585     problems with "wcwidth" and a compile problem.
586    
587     How can I use rxvt-unicode under cygwin?
588     rxvt-unicode should compile and run out of the box on cygwin, using the
589     X11 libraries that come with cygwin. libW11 emulation is no longer
590     supported (and makes no sense, either, as it only supported a single
591     font). I recommend starting the X-server in "-multiwindow" or
592     "-rootless" mode instead, which will result in similar look&feel as the
593     old libW11 emulation.
594    
595     At the time of this writing, cygwin didn't seem to support any
596     multi-byte encodings (you might try "LC_CTYPE=C-UTF-8"), so you are
597     likely limited to 8-bit encodings.
598    
599     How does rxvt-unicode determine the encoding to use?
600 root 1.57 See next entry.
601    
602 root 1.56 Is there an option to switch encodings?
603     Unlike some other terminals, rxvt-unicode has no encoding switch, and no
604     specific "utf-8" mode, such as xterm. In fact, it doesn't even know
605     about UTF-8 or any other encodings with respect to terminal I/O.
606    
607     The reasons is that there exists a perfectly fine mechanism for
608     selecting the encoding, doing I/O and (most important) communicating
609     this to all applications so everybody agrees on character properties
610     such as width and code number. This mechanism is the *locale*.
611     Applications not using that info will have problems (for example,
612     "xterm" gets the width of characters wrong as it uses it's own,
613     locale-independent table under all locales).
614    
615     Rxvt-unicode uses the "LC_CTYPE" locale category to select encoding. All
616     programs doing the same (that is, most) will automatically agree in the
617     interpretation of characters.
618    
619     Unfortunately, there is no system-independent way to select locales, nor
620     is there a standard on how locale specifiers will look like.
621    
622     On most systems, the content of the "LC_CTYPE" environment variable
623     contains an arbitrary string which corresponds to an already-installed
624     locale. Common names for locales are "en_US.UTF-8", "de_DE.ISO-8859-15",
625     "ja_JP.EUC-JP", i.e. "language_country.encoding", but other forms (i.e.
626     "de" or "german") are also common.
627    
628     Rxvt-unicode ignores all other locale categories, and except for the
629     encoding, ignores country or language-specific settings, i.e.
630     "de_DE.UTF-8" and "ja_JP.UTF-8" are the normally same to rxvt-unicode.
631    
632     If you want to use a specific encoding you have to make sure you start
633     rxvt-unicode with the correct "LC_CTYPE" category.
634    
635     Can I switch locales at runtime?
636     Yes, using an escape sequence. Try something like this, which sets
637     rxvt-unicode's idea of "LC_CTYPE".
638    
639     printf '\e]701;%s\007' ja_JP.SJIS
640    
641     See also the previous answer.
642    
643     Sometimes this capability is rather handy when you want to work in one
644     locale (e.g. "de_DE.UTF-8") but some programs don't support it (e.g.
645     UTF-8). For example, I use this script to start "xjdic", which first
646     switches to a locale supported by xjdic and back later:
647    
648     printf '\e]701;%s\007' ja_JP.SJIS
649     xjdic -js
650     printf '\e]701;%s\007' de_DE.UTF-8
651    
652     You can also use xterm's "luit" program, which usually works fine,
653     except for some locales where character width differs between program-
654     and rxvt-unicode-locales.
655    
656     Can I switch the fonts at runtime?
657     Yes, using an escape sequence. Try something like this, which has the
658     same effect as using the "-fn" switch, and takes effect immediately:
659    
660     printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
661    
662     This is useful if you e.g. work primarily with japanese (and prefer a
663     japanese font), but you have to switch to chinese temporarily, where
664     japanese fonts would only be in your way.
665    
666     You can think of this as a kind of manual ISO-2022 switching.
667    
668     Why do italic characters look as if clipped?
669     Many fonts have difficulties with italic characters and hinting. For
670     example, the otherwise very nicely hinted font "xft:Bitstream Vera Sans
671     Mono" completely fails in it's italic face. A workaround might be to
672     enable freetype autohinting, i.e. like this:
673    
674     URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
675     URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
676    
677     My input method wants <some encoding> but I want UTF-8, what can I do?
678     You can specify separate locales for the input method and the rest of
679     the terminal, using the resource "imlocale":
680    
681     URxvt.imlocale: ja_JP.EUC-JP
682    
683     Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and still
684     use your input method. Please note, however, that you will not be able
685     to input characters outside "EUC-JP" in a normal way then, as your input
686     method limits you.
687    
688     Rxvt-unicode crashes when the X Input Method changes or exits.
689     Unfortunately, this is unavoidable, as the XIM protocol is racy by
690     design. Applications can avoid some crashes at the expense of memory
691     leaks, and Input Methods can avoid some crashes by careful ordering at
692     exit time. kinput2 (and derived input methods) generally succeeds, while
693     SCIM (or similar input methods) fails. In the end, however, crashes
694     cannot be completely avoided even if both sides cooperate.
695    
696     So the only workaround is not to kill your Input Method Servers.
697    
698     Rxvt-unicode uses gobs of memory, how can I reduce that?
699     Rxvt-unicode tries to obey the rule of not charging you for something
700     you don't use. One thing you should try is to configure out all settings
701     that you don't need, for example, Xft support is a resource hog by
702     design, when used. Compiling it out ensures that no Xft font will be
703     loaded accidentally when rxvt-unicode tries to find a font for your
704     characters.
705    
706     Also, many people (me included) like large windows and even larger
707     scrollback buffers: Without "--enable-unicode3", rxvt-unicode will use 6
708     bytes per screen cell. For a 160x?? window this amounts to almost a
709     kilobyte per line. A scrollback buffer of 10000 lines will then (if
710     full) use 10 Megabytes of memory. With "--enable-unicode3" it gets
711     worse, as rxvt-unicode then uses 8 bytes per screen cell.
712    
713     Can I speed up Xft rendering somehow?
714     Yes, the most obvious way to speed it up is to avoid Xft entirely, as it
715     is simply slow. If you still want Xft fonts you might try to disable
716     antialiasing (by appending ":antialias=false"), which saves lots of
717     memory and also speeds up rendering considerably.
718    
719     Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
720     Rxvt-unicode will use whatever you specify as a font. If it needs to
721     fall back to it's default font search list it will prefer X11 core
722     fonts, because they are small and fast, and then use Xft fonts. It has
723     antialiasing disabled for most of them, because the author thinks they
724     look best that way.
725    
726     If you want antialiasing, you have to specify the fonts manually.
727    
728     Mouse cut/paste suddenly no longer works.
729     Make sure that mouse reporting is actually turned off since killing some
730     editors prematurely may leave the mouse in mouse report mode. I've heard
731     that tcsh may use mouse reporting unless it otherwise specified. A quick
732     check is to see if cut/paste works when the Alt or Shift keys are
733     depressed.
734    
735     What's with this bold/blink stuff?
736     If no bold colour is set via "colorBD:", bold will invert text using the
737     standard foreground colour.
738    
739     For the standard background colour, blinking will actually make the text
740     blink when compiled with "--enable-blinking". with standard colours.
741     Without "--enable-blinking", the blink attribute will be ignored.
742    
743     On ANSI colours, bold/blink attributes are used to set high-intensity
744     foreground/background colors.
745    
746     color0-7 are the low-intensity colors.
747    
748     color8-15 are the corresponding high-intensity colors.
749    
750     I don't like the screen colors. How do I change them?
751     You can change the screen colors at run-time using ~/.Xdefaults
752     resources (or as long-options).
753    
754     Here are values that are supposed to resemble a VGA screen, including
755     the murky brown that passes for low-intensity yellow:
756    
757     URxvt.color0: #000000
758     URxvt.color1: #A80000
759     URxvt.color2: #00A800
760     URxvt.color3: #A8A800
761     URxvt.color4: #0000A8
762     URxvt.color5: #A800A8
763     URxvt.color6: #00A8A8
764     URxvt.color7: #A8A8A8
765    
766     URxvt.color8: #000054
767     URxvt.color9: #FF0054
768     URxvt.color10: #00FF54
769     URxvt.color11: #FFFF54
770     URxvt.color12: #0000FF
771     URxvt.color13: #FF00FF
772     URxvt.color14: #00FFFF
773     URxvt.color15: #FFFFFF
774    
775     And here is a more complete set of non-standard colors described (not by
776     me) as "pretty girly".
777    
778     URxvt.cursorColor: #dc74d1
779     URxvt.pointerColor: #dc74d1
780     URxvt.background: #0e0e0e
781     URxvt.foreground: #4ad5e1
782     URxvt.color0: #000000
783     URxvt.color8: #8b8f93
784     URxvt.color1: #dc74d1
785     URxvt.color9: #dc74d1
786     URxvt.color2: #0eb8c7
787     URxvt.color10: #0eb8c7
788     URxvt.color3: #dfe37e
789     URxvt.color11: #dfe37e
790     URxvt.color5: #9e88f0
791     URxvt.color13: #9e88f0
792     URxvt.color6: #73f7ff
793     URxvt.color14: #73f7ff
794     URxvt.color7: #e1dddd
795     URxvt.color15: #e1dddd
796    
797     How can I start rxvtd in a race-free way?
798     Try "rxvtd -f -o", which tells rxvtd to open the display, create the
799     listening socket and then fork.
800    
801     What's with the strange Backspace/Delete key behaviour?
802     Assuming that the physical Backspace key corresponds to the BackSpace
803     keysym (not likely for Linux ... see the following question) there are
804     two standard values that can be used for Backspace: "^H" and "^?".
805    
806     Historically, either value is correct, but rxvt-unicode adopts the
807     debian policy of using "^?" when unsure, because it's the one only only
808     correct choice :).
809    
810     Rxvt-unicode tries to inherit the current stty settings and uses the
811     value of `erase' to guess the value for backspace. If rxvt-unicode
812     wasn't started from a terminal (say, from a menu or by remote shell),
813     then the system value of `erase', which corresponds to CERASE in
814     <termios.h>, will be used (which may not be the same as your stty
815     setting).
816    
817     For starting a new rxvt-unicode:
818    
819     # use Backspace = ^H
820     $ stty erase ^H
821     $ rxvt
822    
823     # use Backspace = ^?
824     $ stty erase ^?
825     $ rxvt
826    
827     Toggle with "ESC [ 36 h" / "ESC [ 36 l".
828    
829     For an existing rxvt-unicode:
830    
831     # use Backspace = ^H
832     $ stty erase ^H
833     $ echo -n "^[[36h"
834    
835     # use Backspace = ^?
836     $ stty erase ^?
837     $ echo -n "^[[36l"
838    
839     This helps satisfy some of the Backspace discrepancies that occur, but
840     if you use Backspace = "^H", make sure that the termcap/terminfo value
841     properly reflects that.
842    
843     The Delete key is a another casualty of the ill-defined Backspace
844     problem. To avoid confusion between the Backspace and Delete keys, the
845     Delete key has been assigned an escape sequence to match the vt100 for
846     Execute ("ESC [ 3 ~") and is in the supplied termcap/terminfo.
847    
848     Some other Backspace problems:
849    
850     some editors use termcap/terminfo, some editors (vim I'm told) expect
851     Backspace = ^H, GNU Emacs (and Emacs-like editors) use ^H for help.
852    
853     Perhaps someday this will all be resolved in a consistent manner.
854    
855     I don't like the key-bindings. How do I change them?
856     There are some compile-time selections available via configure. Unless
857     you have run "configure" with the "--disable-resources" option you can
858     use the `keysym' resource to alter the keystrings associated with
859     keysyms.
860    
861     Here's an example for a URxvt session started using "rxvt -name URxvt"
862    
863     URxvt.keysym.Home: \033[1~
864     URxvt.keysym.End: \033[4~
865     URxvt.keysym.C-apostrophe: \033<C-'>
866     URxvt.keysym.C-slash: \033<C-/>
867     URxvt.keysym.C-semicolon: \033<C-;>
868     URxvt.keysym.C-grave: \033<C-`>
869     URxvt.keysym.C-comma: \033<C-,>
870     URxvt.keysym.C-period: \033<C-.>
871     URxvt.keysym.C-0x60: \033<C-`>
872     URxvt.keysym.C-Tab: \033<C-Tab>
873     URxvt.keysym.C-Return: \033<C-Return>
874     URxvt.keysym.S-Return: \033<S-Return>
875     URxvt.keysym.S-space: \033<S-Space>
876     URxvt.keysym.M-Up: \033<M-Up>
877     URxvt.keysym.M-Down: \033<M-Down>
878     URxvt.keysym.M-Left: \033<M-Left>
879     URxvt.keysym.M-Right: \033<M-Right>
880     URxvt.keysym.M-C-0: list \033<M-C- 0123456789 >
881     URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz >
882     URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007
883    
884     See some more examples in the documentation for the keysym resource.
885    
886     I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
887     How do I make use of them? For example, the Sun Keyboard type 4
888     has the following mappings that rxvt-unicode doesn't recognize.
889     KP_Insert == Insert
890     F22 == Print
891     F27 == Home
892     F29 == Prior
893     F33 == End
894     F35 == Next
895    
896     Rather than have rxvt-unicode try to accommodate all the various
897     possible keyboard mappings, it is better to use `xmodmap' to remap the
898     keys as required for your particular machine.
899    
900     How do I distinguish wether I'm running rxvt-unicode or a regular xterm?
901     I need this to decide about setting colors etc.
902     rxvt and rxvt-unicode always export the variable "COLORTERM", so you can
903     check and see if that is set. Note that several programs, JED, slrn,
904     Midnight Commander automatically check this variable to decide whether
905     or not to use color.
906    
907     How do I set the correct, full IP address for the DISPLAY variable?
908     If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled
909     insecure mode then it is possible to use the following shell script
910     snippets to correctly set the display. If your version of rxvt-unicode
911     wasn't also compiled with ESCZ_ANSWER (as assumed in these snippets)
912     then the COLORTERM variable can be used to distinguish rxvt-unicode from
913     a regular xterm.
914    
915     Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
916     snippets:
917    
918     # Bourne/Korn/POSIX family of shells:
919     [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
920     if [ ${TERM:-foo} = xterm ]; then
921     stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
922     echo -n '^[Z'
923     read term_id
924     stty icanon echo
925     if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
926     echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
927     read DISPLAY # set it in our local shell
928     fi
929     fi
930    
931     How do I compile the manual pages for myself?
932     You need to have a recent version of perl installed as /usr/bin/perl,
933     one that comes with pod2man, pod2text and pod2html. Then go to the doc
934     subdirectory and enter "make alldoc".
935    
936     My question isn't answered here, can I ask a human?
937     Before sending me mail, you could go to IRC: "irc.freenode.net", channel
938     "#rxvt-unicode" has some rxvt-unicode enthusiasts that might be
939     interested in learning about new and exciting problems (but not FAQs :).
940 root 1.1
941 root 1.11 RXVT TECHNICAL REFERENCE
942 root 1.1 DESCRIPTION
943     The rest of this document describes various technical aspects of
944     rxvt-unicode. First the description of supported command sequences,
945 root 1.46 followed by pixmap support and last by a description of all features
946     selectable at "configure" time.
947 root 1.1
948     Definitions
949     "c" The literal character c.
950    
951     "C" A single (required) character.
952    
953     "Ps"
954     A single (usually optional) numeric parameter, composed of one or
955     more digits.
956    
957     "Pm"
958     A multiple numeric parameter composed of any number of single
959     numeric parameters, separated by ";" character(s).
960    
961     "Pt"
962     A text parameter composed of printable characters.
963    
964     Values
965     "ENQ"
966     Enquiry (Ctrl-E) = Send Device Attributes (DA) request attributes
967     from terminal. See "ESC [ Ps c".
968    
969     "BEL"
970     Bell (Ctrl-G)
971    
972     "BS"
973     Backspace (Ctrl-H)
974    
975     "TAB"
976     Horizontal Tab (HT) (Ctrl-I)
977    
978     "LF"
979     Line Feed or New Line (NL) (Ctrl-J)
980    
981     "VT"
982     Vertical Tab (Ctrl-K) same as "LF"
983    
984     "FF"
985     Form Feed or New Page (NP) (Ctrl-L) same as "LF"
986    
987     "CR"
988     Carriage Return (Ctrl-M)
989    
990     "SO"
991     Shift Out (Ctrl-N), invokes the G1 character set. Switch to
992     Alternate Character Set
993    
994     "SI"
995     Shift In (Ctrl-O), invokes the G0 character set (the default).
996     Switch to Standard Character Set
997    
998     "SPC"
999     Space Character
1000    
1001     Escape Sequences
1002     "ESC # 8"
1003     DEC Screen Alignment Test (DECALN)
1004    
1005     "ESC 7"
1006     Save Cursor (SC)
1007    
1008     "ESC 8"
1009     Restore Cursor
1010    
1011     "ESC ="
1012     Application Keypad (SMKX). See also next sequence.
1013    
1014     "ESC"
1015     Normal Keypad (RMKX)
1016    
1017     Note: If the numeric keypad is activated, eg, Num_Lock has been
1018     pressed, numbers or control functions are generated by the numeric
1019     keypad (see Key Codes).
1020    
1021     "ESC D"
1022     Index (IND)
1023    
1024     "ESC E"
1025     Next Line (NEL)
1026    
1027     "ESC H"
1028     Tab Set (HTS)
1029    
1030     "ESC M"
1031     Reverse Index (RI)
1032    
1033     "ESC N"
1034     Single Shift Select of G2 Character Set (SS2): affects next
1035     character only *unimplemented*
1036    
1037     "ESC O"
1038     Single Shift Select of G3 Character Set (SS3): affects next
1039     character only *unimplemented*
1040    
1041     "ESC Z"
1042 root 1.11 Obsolete form of returns: "ESC [ ? 1 ; 2 C" *rxvt-unicode
1043     compile-time option*
1044 root 1.1
1045     "ESC c"
1046     Full reset (RIS)
1047    
1048     "ESC n"
1049     Invoke the G2 Character Set (LS2)
1050    
1051     "ESC o"
1052     Invoke the G3 Character Set (LS3)
1053    
1054 root 1.11 "ESC ( C"
1055 root 1.1 Designate G0 Character Set (ISO 2022), see below for values of "C".
1056    
1057 root 1.11 "ESC ) C"
1058 root 1.1 Designate G1 Character Set (ISO 2022), see below for values of "C".
1059    
1060     "ESC * C"
1061     Designate G2 Character Set (ISO 2022), see below for values of "C".
1062    
1063     "ESC + C"
1064     Designate G3 Character Set (ISO 2022), see below for values of "C".
1065    
1066     "ESC $ C"
1067     Designate Kanji Character Set
1068    
1069     Where "C" is one of:
1070    
1071     C = 0 DEC Special Character and Line Drawing Set
1072     C = A United Kingdom (UK)
1073     C = B United States (USASCII)
1074     C = < Multinational character set unimplemented
1075     C = 5 Finnish character set unimplemented
1076     C = C Finnish character set unimplemented
1077     C = K German character set unimplemented
1078    
1079    
1080    
1081     CSI (Command Sequence Introducer) Sequences
1082     "ESC [ Ps @"
1083     Insert "Ps" (Blank) Character(s) [default: 1] (ICH)
1084    
1085     "ESC [ Ps A"
1086     Cursor Up "Ps" Times [default: 1] (CUU)
1087    
1088     "ESC [ Ps B"
1089     Cursor Down "Ps" Times [default: 1] (CUD)
1090    
1091     "ESC [ Ps C"
1092     Cursor Forward "Ps" Times [default: 1] (CUF)
1093    
1094     "ESC [ Ps D"
1095     Cursor Backward "Ps" Times [default: 1] (CUB)
1096    
1097     "ESC [ Ps E"
1098     Cursor Down "Ps" Times [default: 1] and to first column
1099    
1100     "ESC [ Ps F"
1101     Cursor Up "Ps" Times [default: 1] and to first column
1102    
1103     "ESC [ Ps G"
1104     Cursor to Column "Ps" (HPA)
1105    
1106     "ESC [ Ps;Ps H"
1107     Cursor Position [row;column] [default: 1;1] (CUP)
1108    
1109     "ESC [ Ps I"
1110     Move forward "Ps" tab stops [default: 1]
1111    
1112     "ESC [ Ps J"
1113     Erase in Display (ED)
1114    
1115     Ps = 0 Clear Below (default)
1116     Ps = 1 Clear Above
1117     Ps = 2 Clear All
1118    
1119     "ESC [ Ps K"
1120     Erase in Line (EL)
1121    
1122     Ps = 0 Clear to Right (default)
1123     Ps = 1 Clear to Left
1124     Ps = 2 Clear All
1125    
1126     "ESC [ Ps L"
1127     Insert "Ps" Line(s) [default: 1] (IL)
1128    
1129     "ESC [ Ps M"
1130     Delete "Ps" Line(s) [default: 1] (DL)
1131    
1132     "ESC [ Ps P"
1133     Delete "Ps" Character(s) [default: 1] (DCH)
1134    
1135     "ESC [ Ps;Ps;Ps;Ps;Ps T"
1136     Initiate . *unimplemented* Parameters are
1137     [func;startx;starty;firstrow;lastrow].
1138    
1139     "ESC [ Ps W"
1140     Tabulator functions
1141    
1142     Ps = 0 Tab Set (HTS)
1143     Ps = 2 Tab Clear (TBC), Clear Current Column (default)
1144     Ps = 5 Tab Clear (TBC), Clear All
1145    
1146     "ESC [ Ps X"
1147     Erase "Ps" Character(s) [default: 1] (ECH)
1148    
1149     "ESC [ Ps Z"
1150     Move backward "Ps" [default: 1] tab stops
1151    
1152     "ESC [ Ps '"
1153     See "ESC [ Ps G"
1154    
1155     "ESC [ Ps a"
1156     See "ESC [ Ps C"
1157    
1158     "ESC [ Ps c"
1159     Send Device Attributes (DA) "Ps = 0" (or omitted): request
1160 root 1.11 attributes from terminal returns: "ESC [ ? 1 ; 2 c" (``I am a VT100
1161     with Advanced Video Option'')
1162 root 1.1
1163     "ESC [ Ps d"
1164     Cursor to Line "Ps" (VPA)
1165    
1166     "ESC [ Ps e"
1167     See "ESC [ Ps A"
1168    
1169     "ESC [ Ps;Ps f"
1170     Horizontal and Vertical Position [row;column] (HVP) [default: 1;1]
1171    
1172     "ESC [ Ps g"
1173     Tab Clear (TBC)
1174    
1175     Ps = 0 Clear Current Column (default)
1176     Ps = 3 Clear All (TBC)
1177    
1178     "ESC [ Pm h"
1179     Set Mode (SM). See "ESC [ Pm l" sequence for description of "Pm".
1180    
1181     "ESC [ Ps i"
1182     Printing. See also the "print-pipe" resource.
1183    
1184     Ps = 0 print screen (MC0)
1185     Ps = 4 disable transparent print mode (MC4)
1186     Ps = 5 enable transparent print mode (MC5)
1187    
1188     "ESC [ Pm l"
1189     Reset Mode (RM)
1190    
1191     "Ps = 4"
1192     h Insert Mode (SMIR)
1193     l Replace Mode (RMIR)
1194    
1195     "Ps = 20" (partially implemented)
1196     h Automatic Newline (LNM)
1197     l Normal Linefeed (LNM)
1198    
1199     "ESC [ Pm m"
1200     Character Attributes (SGR)
1201    
1202     Ps = 0 Normal (default)
1203     Ps = 1 / 21 On / Off Bold (bright fg)
1204     Ps = 3 / 23 On / Off Italic
1205     Ps = 4 / 24 On / Off Underline
1206     Ps = 5 / 25 On / Off Slow Blink (bright bg)
1207     Ps = 6 / 26 On / Off Rapid Blink (bright bg)
1208     Ps = 7 / 27 On / Off Inverse
1209     Ps = 8 / 27 On / Off Invisible (NYI)
1210     Ps = 30 / 40 fg/bg Black
1211     Ps = 31 / 41 fg/bg Red
1212     Ps = 32 / 42 fg/bg Green
1213     Ps = 33 / 43 fg/bg Yellow
1214     Ps = 34 / 44 fg/bg Blue
1215     Ps = 35 / 45 fg/bg Magenta
1216     Ps = 36 / 46 fg/bg Cyan
1217     Ps = 38;5 / 48;5 set fg/bg to color #m (ISO 8613-6)
1218     Ps = 37 / 47 fg/bg White
1219     Ps = 39 / 49 fg/bg Default
1220     Ps = 90 / 100 fg/bg Bright Black
1221     Ps = 91 / 101 fg/bg Bright Red
1222     Ps = 92 / 102 fg/bg Bright Green
1223     Ps = 93 / 103 fg/bg Bright Yellow
1224     Ps = 94 / 104 fg/bg Bright Blue
1225     Ps = 95 / 105 fg/bg Bright Magenta
1226     Ps = 96 / 106 fg/bg Bright Cyan
1227     Ps = 97 / 107 fg/bg Bright White
1228     Ps = 99 / 109 fg/bg Bright Default
1229    
1230     "ESC [ Ps n"
1231     Device Status Report (DSR)
1232    
1233     Ps = 5 Status Report ESC [ 0 n (``OK'')
1234     Ps = 6 Report Cursor Position (CPR) [row;column] as ESC [ r ; c R
1235     Ps = 7 Request Display Name
1236     Ps = 8 Request Version Number (place in window title)
1237    
1238     "ESC [ Ps;Ps r"
1239     Set Scrolling Region [top;bottom] [default: full size of window]
1240     (CSR)
1241    
1242     "ESC [ s"
1243     Save Cursor (SC)
1244    
1245 root 1.4 "ESC [ Ps;Pt t"
1246     Window Operations
1247    
1248     Ps = 1 Deiconify (map) window
1249     Ps = 2 Iconify window
1250     Ps = 3 ESC [ 3 ; X ; Y t Move window to (X|Y)
1251 root 1.11 Ps = 4 ESC [ 4 ; H ; W t Resize to WxH pixels
1252 root 1.4 Ps = 5 Raise window
1253     Ps = 6 Lower window
1254     Ps = 7 Refresh screen once
1255 root 1.11 Ps = 8 ESC [ 8 ; R ; C t Resize to R rows and C columns
1256     Ps = 11 Report window state (responds with Ps = 1 or Ps = 2)
1257 root 1.4 Ps = 13 Report window position (responds with Ps = 3)
1258     Ps = 14 Report window pixel size (responds with Ps = 4)
1259     Ps = 18 Report window text size (responds with Ps = 7)
1260     Ps = 19 Currently the same as Ps = 18, but responds with Ps = 9
1261     Ps = 20 Reports icon label (ESC ] L NAME \234)
1262     Ps = 21 Reports window title (ESC ] l NAME \234)
1263     Ps = 24.. Set window height to Ps rows
1264 root 1.1
1265     "ESC [ u"
1266     Restore Cursor
1267    
1268 root 1.4 "ESC [ Ps x"
1269     Request Terminal Parameters (DECREQTPARM)
1270    
1271 root 1.1
1272    
1273     DEC Private Modes
1274     "ESC [ ? Pm h"
1275     DEC Private Mode Set (DECSET)
1276    
1277     "ESC [ ? Pm l"
1278     DEC Private Mode Reset (DECRST)
1279    
1280     "ESC [ ? Pm r"
1281     Restore previously saved DEC Private Mode Values.
1282    
1283     "ESC [ ? Pm s"
1284     Save DEC Private Mode Values.
1285    
1286     "ESC [ ? Pm t"
1287     Toggle DEC Private Mode Values (rxvt extension). *where*
1288    
1289     "Ps = 1" (DECCKM)
1290     h Application Cursor Keys
1291     l Normal Cursor Keys
1292    
1293     "Ps = 2" (ANSI/VT52 mode)
1294     h Enter VT52 mode
1295     l Enter VT52 mode
1296    
1297     "Ps = 3"
1298     h 132 Column Mode (DECCOLM)
1299     l 80 Column Mode (DECCOLM)
1300    
1301     "Ps = 4"
1302     h Smooth (Slow) Scroll (DECSCLM)
1303     l Jump (Fast) Scroll (DECSCLM)
1304    
1305     "Ps = 5"
1306     h Reverse Video (DECSCNM)
1307     l Normal Video (DECSCNM)
1308    
1309     "Ps = 6"
1310     h Origin Mode (DECOM)
1311     l Normal Cursor Mode (DECOM)
1312    
1313     "Ps = 7"
1314     h Wraparound Mode (DECAWM)
1315     l No Wraparound Mode (DECAWM)
1316    
1317     "Ps = 8" *unimplemented*
1318     h Auto-repeat Keys (DECARM)
1319     l No Auto-repeat Keys (DECARM)
1320    
1321     "Ps = 9" X10 XTerm
1322     h Send Mouse X & Y on button press.
1323     l No mouse reporting.
1324    
1325     "Ps = 25"
1326     h Visible cursor {cnorm/cvvis}
1327     l Invisible cursor {civis}
1328    
1329     "Ps = 30"
1330     h scrollBar visisble
1331     l scrollBar invisisble
1332    
1333     "Ps = 35" (rxvt)
1334     h Allow XTerm Shift+key sequences
1335     l Disallow XTerm Shift+key sequences
1336    
1337     "Ps = 38" *unimplemented*
1338     Enter Tektronix Mode (DECTEK)
1339    
1340     "Ps = 40"
1341     h Allow 80/132 Mode
1342     l Disallow 80/132 Mode
1343    
1344     "Ps = 44" *unimplemented*
1345     h Turn On Margin Bell
1346     l Turn Off Margin Bell
1347    
1348     "Ps = 45" *unimplemented*
1349     h Reverse-wraparound Mode
1350     l No Reverse-wraparound Mode
1351    
1352     "Ps = 46" *unimplemented*
1353     "Ps = 47"
1354     h Use Alternate Screen Buffer
1355     l Use Normal Screen Buffer
1356    
1357    
1358    
1359     "Ps = 66"
1360     h Application Keypad (DECPAM) == ESC =
1361     l Normal Keypad (DECPNM) == ESC >
1362    
1363     "Ps = 67"
1364     h Backspace key sends BS (DECBKM)
1365     l Backspace key sends DEL
1366    
1367     "Ps = 1000" (X11 XTerm)
1368     h Send Mouse X & Y on button press and release.
1369     l No mouse reporting.
1370    
1371     "Ps = 1001" (X11 XTerm) *unimplemented*
1372     h Use Hilite Mouse Tracking.
1373     l No mouse reporting.
1374    
1375     "Ps = 1010" (rxvt)
1376     h Don't scroll to bottom on TTY output
1377     l Scroll to bottom on TTY output
1378    
1379     "Ps = 1011" (rxvt)
1380     h Scroll to bottom when a key is pressed
1381     l Don't scroll to bottom when a key is pressed
1382    
1383 root 1.29 "Ps = 1021" (rxvt)
1384     h Bold/italic implies high intensity (see option -is)
1385     l Font styles have no effect on intensity (Compile styles)
1386    
1387 root 1.1 "Ps = 1047"
1388     h Use Alternate Screen Buffer
1389     l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
1390    
1391     "Ps = 1048"
1392     h Save cursor position
1393     l Restore cursor position
1394    
1395     "Ps = 1049"
1396     h Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1397     l Use Normal Screen Buffer
1398    
1399    
1400    
1401     XTerm Operating System Commands
1402     "ESC ] Ps;Pt ST"
1403     Set XTerm Parameters. 8-bit ST: 0x9c, 7-bit ST sequence: ESC \
1404     (0x1b, 0x5c), backwards compatible terminator BEL (0x07) is also
1405     accepted. any octet can be escaped by prefixing it with SYN (0x16,
1406     ^V).
1407    
1408     Ps = 0 Change Icon Name and Window Title to Pt
1409     Ps = 1 Change Icon Name to Pt
1410     Ps = 2 Change Window Title to Pt
1411     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.
1412     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
1413     Ps = 10 Change colour of text foreground to Pt (NB: may change in future)
1414     Ps = 11 Change colour of text background to Pt (NB: may change in future)
1415     Ps = 12 Change colour of text cursor foreground to Pt
1416     Ps = 13 Change colour of mouse foreground to Pt
1417     Ps = 17 Change colour of highlight characters to Pt
1418 root 1.37 Ps = 18 Change colour of bold characters to Pt [deprecated, see 706]
1419     Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707]
1420 root 1.48 Ps = 20 Change background pixmap parameters (see section XPM) (Compile XPM).
1421 root 1.18 Ps = 39 Change default foreground colour to Pt.
1422 root 1.1 Ps = 46 Change Log File to Pt unimplemented
1423 root 1.18 Ps = 49 Change default background colour to Pt.
1424 root 1.1 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
1425     Ps = 55 Log all scrollback buffer and all of screen to Pt
1426 root 1.18 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills).
1427 root 1.51 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.
1428 root 1.1 Ps = 704 Change colour of italic characters to Pt
1429 root 1.18 Ps = 705 Change background pixmap tint colour to Pt (Compile transparency).
1430 root 1.37 Ps = 706 Change colour of bold characters to Pt
1431     Ps = 707 Change colour of underlined characters to Pt
1432 root 1.1 Ps = 710 Set normal fontset to Pt. Same as Ps = 50.
1433 root 1.18 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles).
1434     Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1435     Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1436     Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1437     Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1438 root 1.31 Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl).
1439 root 1.1
1440    
1441    
1442     XPM
1443     For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt"
1444     can be the name of the background pixmap followed by a sequence of
1445     scaling/positioning commands separated by semi-colons. The
1446     scaling/positioning commands are as follows:
1447    
1448     query scale/position
1449     ?
1450    
1451     change scale and position
1452     WxH+X+Y
1453    
1454     WxH+X (== WxH+X+X)
1455    
1456     WxH (same as WxH+50+50)
1457    
1458     W+X+Y (same as WxW+X+Y)
1459    
1460     W+X (same as WxW+X+X)
1461    
1462     W (same as WxW+50+50)
1463    
1464     change position (absolute)
1465     =+X+Y
1466    
1467     =+X (same as =+X+Y)
1468    
1469     change position (relative)
1470     +X+Y
1471    
1472     +X (same as +X+Y)
1473    
1474     rescale (relative)
1475     Wx0 -> W *= (W/100)
1476    
1477     0xH -> H *= (H/100)
1478    
1479     For example:
1480    
1481     \E]20;funky\a
1482     load funky.xpm as a tiled image
1483    
1484     \E]20;mona;100\a
1485     load mona.xpm with a scaling of 100%
1486    
1487     \E]20;;200;?\a
1488     rescale the current pixmap to 200% and display the image geometry in
1489     the title
1490    
1491     Mouse Reporting
1492     "ESC [ M <b> <x> <y>"
1493     report mouse position
1494    
1495     The lower 2 bits of "<b>" indicate the button:
1496    
1497     Button = "(<b> - SPACE) & 3"
1498     0 Button1 pressed
1499     1 Button2 pressed
1500     2 Button3 pressed
1501     3 button released (X11 mouse report)
1502    
1503     The upper bits of "<b>" indicate the modifiers when the button was
1504     pressed and are added together (X11 mouse report only):
1505    
1506     State = "(<b> - SPACE) & 60"
1507     4 Shift
1508     8 Meta
1509     16 Control
1510     32 Double Click (Rxvt extension)
1511    
1512     Col = "<x> - SPACE"
1513    
1514     Row = "<y> - SPACE"
1515    
1516     Key Codes
1517     Note: Shift + F1-F10 generates F11-F20
1518    
1519     For the keypad, use Shift to temporarily override Application-Keypad
1520     setting use Num_Lock to toggle Application-Keypad setting if Num_Lock is
1521     off, toggle Application-Keypad setting. Also note that values of Home,
1522     End, Delete may have been compiled differently on your system.
1523    
1524     Normal Shift Control Ctrl+Shift
1525     Tab ^I ESC [ Z ^I ESC [ Z
1526     BackSpace ^H ^? ^? ^?
1527     Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @
1528     Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @
1529     Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
1530     Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @
1531     Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @
1532     Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @
1533     Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @
1534     End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @
1535     Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
1536     F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^
1537     F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^
1538     F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^
1539     F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^
1540     F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^
1541     F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^
1542     F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^
1543     F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^
1544     F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^
1545     F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^
1546     F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @
1547     F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @
1548     F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @
1549     F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @
1550     F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @
1551     F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @
1552     F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @
1553     F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @
1554     F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @
1555     F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @
1556     Application
1557     Up ESC [ A ESC [ a ESC O a ESC O A
1558     Down ESC [ B ESC [ b ESC O b ESC O B
1559     Right ESC [ C ESC [ c ESC O c ESC O C
1560     Left ESC [ D ESC [ d ESC O d ESC O D
1561     KP_Enter ^M ESC O M
1562     KP_F1 ESC O P ESC O P
1563     KP_F2 ESC O Q ESC O Q
1564     KP_F3 ESC O R ESC O R
1565     KP_F4 ESC O S ESC O S
1566     XK_KP_Multiply * ESC O j
1567     XK_KP_Add + ESC O k
1568     XK_KP_Separator , ESC O l
1569     XK_KP_Subtract - ESC O m
1570     XK_KP_Decimal . ESC O n
1571     XK_KP_Divide / ESC O o
1572     XK_KP_0 0 ESC O p
1573     XK_KP_1 1 ESC O q
1574     XK_KP_2 2 ESC O r
1575     XK_KP_3 3 ESC O s
1576     XK_KP_4 4 ESC O t
1577     XK_KP_5 5 ESC O u
1578     XK_KP_6 6 ESC O v
1579     XK_KP_7 7 ESC O w
1580     XK_KP_8 8 ESC O x
1581     XK_KP_9 9 ESC O y
1582    
1583     CONFIGURE OPTIONS
1584     General hint: if you get compile errors, then likely your configuration
1585 root 1.24 hasn't been tested well. Either try with "--enable-everything" or use
1586     the ./reconf script as a base for experiments. ./reconf is used by
1587     myself, so it should generally be a working config. Of course, you
1588     should always report when a combination doesn't work, so it can be
1589     fixed. Marc Lehmann <rxvt@schmorp.de>.
1590    
1591     All
1592 root 1.1
1593     --enable-everything
1594 root 1.24 Add (or remove) support for all non-multichoice options listed in
1595     "./configure --help".
1596    
1597     You can specify this and then disable options you do not like by
1598     *following* this with the appropriate "--disable-..." arguments, or
1599     you can start with a minimal configuration by specifying
1600     "--disable-everything" and than adding just the "--enable-..."
1601     arguments you want.
1602 root 1.1
1603 root 1.24 --enable-xft (default: enabled)
1604 root 1.1 Add support for Xft (anti-aliases, among others) fonts. Xft fonts
1605     are slower and require lots of memory, but as long as you don't use
1606     them, you don't pay for them.
1607    
1608 root 1.24 --enable-font-styles (default: on)
1609 root 1.1 Add support for bold, *italic* and *bold italic* font styles. The
1610     fonts can be set manually or automatically.
1611    
1612 root 1.24 --with-codesets=NAME,... (default: all)
1613 root 1.19 Compile in support for additional codeset (encoding) groups ("eu",
1614     "vn" are always compiled in, which includes most 8-bit character
1615     sets). These codeset tables are used for driving X11 core fonts,
1616     they are not required for Xft fonts, although having them compiled
1617     in lets rxvt-unicode choose replacement fonts more intelligently.
1618     Compiling them in will make your binary bigger (all of together cost
1619     about 700kB), but it doesn't increase memory usage unless you use a
1620     font requiring one of these encodings.
1621 root 1.1
1622     all all available codeset groups
1623     zh common chinese encodings
1624     zh_ext rarely used but very big chinese encodigs
1625     jp common japanese encodings
1626     jp_ext rarely used but big japanese encodings
1627     kr korean encodings
1628    
1629 root 1.24 --enable-xim (default: on)
1630 root 1.1 Add support for XIM (X Input Method) protocol. This allows using
1631     alternative input methods (e.g. kinput2) and will also correctly set
1632     up the input for people using dead keys or compose keys.
1633    
1634 root 1.24 --enable-unicode3 (default: off)
1635 root 1.49 Recommended to stay off unless you really need non-BMP characters.
1636    
1637 root 1.1 Enable direct support for displaying unicode codepoints above 65535
1638     (the basic multilingual page). This increases storage requirements
1639     per character from 2 to 4 bytes. X11 fonts do not yet support these
1640     extra characters, but Xft does.
1641    
1642     Please note that rxvt-unicode can store unicode code points >65535
1643     even without this flag, but the number of such characters is limited
1644     to a view thousand (shared with combining characters, see next
1645     switch), and right now rxvt-unicode cannot display them
1646     (input/output and cut&paste still work, though).
1647    
1648 root 1.24 --enable-combining (default: on)
1649 root 1.1 Enable automatic composition of combining characters into composite
1650     characters. This is required for proper viewing of text where
1651     accents are encoded as seperate unicode characters. This is done by
1652     using precomposited characters when available or creating new
1653     pseudo-characters when no precomposed form exists.
1654    
1655     Without --enable-unicode3, the number of additional precomposed
1656 root 1.49 characters is somewhat limited (the 6400 private use characters will
1657     be (ab-)used). With --enable-unicode3, no practical limit exists.
1658 root 1.13
1659     This option will also enable storage (but not display) of characters
1660     beyond plane 0 (>65535) when --enable-unicode3 was not specified.
1661 root 1.1
1662     The combining table also contains entries for arabic presentation
1663     forms, but these are not currently used. Bug me if you want these to
1664 root 1.13 be used (and tell me how these are to be used...).
1665 root 1.1
1666 root 1.24 --enable-fallback(=CLASS) (default: Rxvt)
1667     When reading resource settings, also read settings for class CLASS.
1668     To disable resource fallback use --disable-fallback.
1669    
1670     --with-res-name=NAME (default: urxvt)
1671     Use the given name as default application name when reading
1672     resources. Specify --with-res-name=rxvt to replace rxvt.
1673    
1674     --with-res-class=CLASS /default: URxvt)
1675     Use the given class as default application class when reading
1676     resources. Specify --with-res-class=Rxvt to replace rxvt.
1677 root 1.1
1678 root 1.24 --enable-utmp (default: on)
1679 root 1.1 Write user and tty to utmp file (used by programs like w) at start
1680     of rxvt execution and delete information when rxvt exits.
1681    
1682 root 1.24 --enable-wtmp (default: on)
1683 root 1.1 Write user and tty to wtmp file (used by programs like last) at
1684     start of rxvt execution and write logout when rxvt exits. This
1685     option requires --enable-utmp to also be specified.
1686    
1687 root 1.24 --enable-lastlog (default: on)
1688 root 1.1 Write user and tty to lastlog file (used by programs like lastlogin)
1689     at start of rxvt execution. This option requires --enable-utmp to
1690     also be specified.
1691    
1692 root 1.34 --enable-xpm-background (default: on)
1693 root 1.1 Add support for XPM background pixmaps.
1694    
1695 root 1.34 --enable-transparency (default: on)
1696 root 1.1 Add support for inheriting parent backgrounds thus giving a fake
1697     transparency to the term.
1698    
1699 root 1.24 --enable-fading (default: on)
1700     Add support for fading the text when focus is lost (requires
1701     "--enable-transparency").
1702    
1703     --enable-tinting (default: on)
1704     Add support for tinting of transparent backgrounds (requires
1705     "--enable-transparency").
1706 root 1.1
1707 root 1.24 --enable-rxvt-scroll (default: on)
1708 root 1.1 Add support for the original rxvt scrollbar.
1709    
1710 root 1.24 --enable-next-scroll (default: on)
1711 root 1.1 Add support for a NeXT-like scrollbar.
1712    
1713 root 1.24 --enable-xterm-scroll (default: on)
1714 root 1.1 Add support for an Xterm-like scrollbar.
1715    
1716 root 1.24 --enable-plain-scroll (default: on)
1717 root 1.1 Add support for a very unobtrusive, plain-looking scrollbar that is
1718     the favourite of the rxvt-unicode author, having used it for many
1719     years.
1720    
1721 root 1.24 --enable-ttygid (default: off)
1722 root 1.1 Change tty device setting to group "tty" - only use this if your
1723     system uses this type of security.
1724    
1725     --disable-backspace-key
1726 root 1.24 Removes any handling of the backspace key by us - let the X server
1727 root 1.1 do it.
1728    
1729     --disable-delete-key
1730 root 1.24 Removes any handling of the delete key by us - let the X server do
1731 root 1.1 it.
1732    
1733     --disable-resources
1734 root 1.24 Removes any support for resource checking.
1735 root 1.1
1736     --disable-swapscreen
1737 root 1.24 Remove support for secondary/swap screen.
1738 root 1.1
1739 root 1.24 --enable-frills (default: on)
1740 root 1.1 Add support for many small features that are not essential but nice
1741     to have. Normally you want this, but for very small binaries you may
1742     want to disable this.
1743    
1744 root 1.2 A non-exhaustive list of features enabled by "--enable-frills"
1745     (possibly in combination with other switches) is:
1746    
1747     MWM-hints
1748 root 1.17 EWMH-hints (pid, utf8 names) and protocols (ping)
1749 root 1.32 seperate underline colour (-underlineColor)
1750     settable border widths and borderless switch (-w, -b, -bl)
1751 root 1.52 visual depth selection (-depth)
1752 root 1.32 settable extra linespacing /-lsp)
1753 root 1.2 iso-14755-2 and -3, and visual feedback
1754 root 1.32 tripleclickwords (-tcw)
1755     settable insecure mode (-insecure)
1756 root 1.11 keysym remapping support
1757 root 1.32 cursor blinking and underline cursor (-cb, -uc)
1758     XEmbed support (-embed)
1759     user-pty (-pty-fd)
1760     hold on exit (-hold)
1761     skip builtin block graphics (-sbg)
1762 root 1.52
1763     It also enabled some non-essential features otherwise disabled, such
1764     as:
1765    
1766     some round-trip time optimisations
1767     nearest color allocation on pseudocolor screens
1768     UTF8_STRING supporr for selection
1769 root 1.32 sgr modes 90..97 and 100..107
1770 root 1.52 backindex and forwardindex escape sequences
1771     view change/zero scorllback esacpe sequences
1772     locale switching escape sequence
1773     window op and some xterm/OSC escape sequences
1774     rectangular selections
1775     trailing space removal for selections
1776     verbose X error handling
1777 root 1.2
1778 root 1.24 --enable-iso14755 (default: on)
1779 root 1.44 Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt).
1780 root 1.1 Basic support (section 5.1) is enabled by "--enable-frills", while
1781     support for 5.2, 5.3 and 5.4 is enabled with this switch.
1782    
1783 root 1.24 --enable-keepscrolling (default: on)
1784 root 1.1 Add support for continual scrolling of the display when you hold the
1785     mouse button down on a scrollbar arrow.
1786    
1787 root 1.24 --enable-mousewheel (default: on)
1788 root 1.1 Add support for scrolling via mouse wheel or buttons 4 & 5.
1789    
1790 root 1.24 --enable-slipwheeling (default: on)
1791 root 1.1 Add support for continual scrolling (using the mouse wheel as an
1792     accelerator) while the control key is held down. This option
1793     requires --enable-mousewheel to also be specified.
1794    
1795     --disable-new-selection
1796     Remove support for mouse selection style like that of xterm.
1797    
1798 root 1.24 --enable-dmalloc (default: off)
1799 root 1.1 Use Gray Watson's malloc - which is good for debugging See
1800     http://www.letters.com/dmalloc/ for details If you use either this
1801     or the next option, you may need to edit src/Makefile after
1802     compiling to point DINCLUDE and DLIB to the right places.
1803    
1804     You can only use either this option and the following (should you
1805     use either) .
1806    
1807 root 1.24 --enable-dlmalloc (default: off)
1808 root 1.1 Use Doug Lea's malloc - which is good for a production version See
1809     <http://g.oswego.edu/dl/html/malloc.html> for details.
1810    
1811 root 1.24 --enable-smart-resize (default: on)
1812 root 1.25 Add smart growth/shrink behaviour when changing font size via hot
1813 root 1.26 keys. This should keep the window corner which is closest to a
1814     corner of the screen in a fixed position.
1815 root 1.1
1816 root 1.24 --enable-pointer-blank (default: on)
1817 root 1.1 Add support to have the pointer disappear when typing or inactive.
1818    
1819 root 1.49 --enable-perl (default: on)
1820 root 1.44 Enable an embedded perl interpreter. See the rxvtperl(3) manpage
1821 root 1.30 (doc/rxvtperl.txt) for more info on this feature, or the files in
1822 root 1.33 src/perl-ext/ for the extensions that are installed by default. The
1823     perl interpreter that is used can be specified via the "PERL"
1824     environment variable when running configure.
1825 root 1.30
1826 root 1.24 --with-name=NAME (default: urxvt)
1827     Set the basename for the installed binaries, resulting in "urxvt",
1828     "urxvtd" etc.). Specify "--with-name=rxvt" to replace with "rxvt".
1829    
1830     --with-term=NAME (default: rxvt-unicode)
1831     Change the environmental variable for the terminal to NAME.
1832 root 1.1
1833     --with-terminfo=PATH
1834     Change the environmental variable for the path to the terminfo tree
1835     to PATH.
1836    
1837     --with-x
1838     Use the X Window System (pretty much default, eh?).
1839    
1840     --with-xpm-includes=DIR
1841     Look for the XPM includes in DIR.
1842    
1843     --with-xpm-library=DIR
1844     Look for the XPM library in DIR.
1845    
1846     --with-xpm
1847     Not needed - define via --enable-xpm-background.
1848    
1849     AUTHORS
1850     Marc Lehmann <rxvt@schmorp.de> converted this document to pod and
1851     reworked it from the original Rxvt documentation, which was done by
1852     Geoff Wing <gcw@pobox.com>, who in turn used the XTerm documentation and
1853     other sources.
1854