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

File Contents

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