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