ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.7.txt
(Generate patch)

Comparing rxvt-unicode/doc/rxvt.7.txt (file contents):
Revision 1.15 by root, Thu Feb 17 12:00:33 2005 UTC vs.
Revision 1.41 by root, Thu Jan 12 23:11:23 2006 UTC

18 The newest version of this document is also available on the World Wide 18 The newest version of this document is also available on the World Wide
19 Web at 19 Web at
20 <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 20 <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
21 21
22FREQUENTLY ASKED QUESTIONS 22FREQUENTLY ASKED QUESTIONS
23 The new selection selects pieces that are too big/too small, can I
24 change this?
25 Yes. For example, if you want to select smaller pieces ("words") you
26 can 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 I don't like the new selection/popups/hotkeys/perl, how do I
39 change/disable it?
40 You can disable the perl extension completely by setting the
41 perl-ext-common resource to the empty string, which also keeps
42 rxvt-unicode from initialising perl, saving memory.
43
44 If you only want to disable specific features, you first have to
45 identify which perl extension is responsible. For this, read the
46 section PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For
47 example, to disable the selection-popup and option-popup, specify
48 this perl-ext-common resource:
49
50 URxvt.perl-ext-common: default,-selection-popup,-option-popup
51
52 This will keep the default extensions, but disable the two popup
53 extensions. Some extensions can also be configured, for example,
54 scrollback search mode is triggered by M-s. You can move it to any
55 other combination either by setting the searchable-scrollback
56 resource:
57
58 URxvt.searchable-scrollback: CM-s
59
60 Isn't rxvt supposed to be small? Don't all those features bloat?
61 I often get asked about this, and I think, no, they didn't cause
62 extra bloat. If you compare a minimal rxvt and a minimal urxvt, you
63 can see that the urxvt binary is larger (due to some encoding tables
64 always being compiled in), but it actually uses less memory (RSS)
65 after startup. Even with "--disable-everything", this comparison is
66 a bit unfair, as many features unique to urxvt (locale, encoding
67 conversion, iso14755 etc.) are already in use in this mode.
68
69 text data bss drs rss filename
70 98398 1664 24 15695 1824 rxvt --disable-everything
71 188985 9048 66616 18222 1788 urxvt --disable-everything
72
73 When you "--enable-everything" (which _is_ unfair, as this involves
74 xft and full locale/XIM support which are quite bloaty inside libX11
75 and my libc), the two diverge, but not unreasnobaly so.
76
77 text data bss drs rss filename
78 163431 2152 24 20123 2060 rxvt --enable-everything
79 1035683 49680 66648 29096 3680 urxvt --enable-everything
80
81 The very large size of the text section is explained by the
82 east-asian encoding tables, which, if unused, take up disk space but
83 nothing else and can be compiled out unless you rely on X11 core
84 fonts that use those encodings. The BSS size comes from the 64k
85 emergency buffer that my c++ compiler allocates (but of course
86 doesn't use unless you are out of memory). Also, using an xft font
87 instead of a core font immediately adds a few megabytes of RSS. Xft
88 indeed is responsible for a lot of RSS even when not used.
89
90 Of course, due to every character using two or four bytes instead of
91 one, a large scrollback buffer will ultimately make rxvt-unicode use
92 more memory.
93
94 Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k),
95 this still fares rather well. And compared to some monsters like
96 gnome-terminal (21152k + extra 4204k in separate processes) or
97 konsole (22200k + extra 43180k in daemons that stay around after
98 exit, plus half a minute of startup time, including the hundreds of
99 warnings it spits out), it fares extremely well *g*.
100
101 Why C++, isn't that unportable/bloated/uncool?
102 Is this a question? :) It comes up very often. The simple answer is:
103 I had to write it, and C++ allowed me to write and maintain it in a
104 fraction of the time and effort (which is a scarce resource for me).
105 Put even shorter: It simply wouldn't exist without C++.
106
107 My personal stance on this is that C++ is less portable than C, but
108 in the case of rxvt-unicode this hardly matters, as its portability
109 limits are defined by things like X11, pseudo terminals, locale
110 support and unix domain sockets, which are all less portable than
111 C++ itself.
112
113 Regarding the bloat, see the above question: It's easy to write
114 programs in C that use gobs of memory, an certainly possible to
115 write programs in C++ that don't. C++ also often comes with large
116 libraries, but this is not necessarily the case with GCC. Here is
117 what rxvt links against on my system with a minimal config:
118
119 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
120 libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
121 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
122 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
123
124 And here is rxvt-unicode:
125
126 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
127 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
128 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
129 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
130 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
131
132 No large bloated libraries (of course, none were linked in
133 statically), except maybe libX11 :)
134
135 Does it support tabs, can I have a tabbed rxvt-unicode?
136 rxvt-unicode does not directly support tabs. It will work fine with
137 tabbing functionality of many window managers or similar tabbing
138 programs, and its embedding-features allow it to be embedded into
139 other programs, as witnessed by doc/rxvt-tabbed or the upcoming
140 "Gtk2::URxvt" perl module, which features a tabbed urxvt (murxvt)
141 terminal as an example embedding application.
142
23 How do I know which rxvt-unicode version I'm using? 143 How do I know which rxvt-unicode version I'm using?
24 The version number is displayed with the usage (-h). Also the escape 144 The version number is displayed with the usage (-h). Also the escape
25 sequence "ESC [ 8 n" sets the window title to the version number. 145 sequence "ESC [ 8 n" sets the window title to the version number.
146 When using the rxvtc client, the version displayed is that of the
147 daemon.
26 148
27 I am using Debian GNU/Linux and have a problem... 149 I am using Debian GNU/Linux and have a problem...
28 The Debian GNU/Linux package of rxvt-unicode contains large patches 150 The Debian GNU/Linux package of rxvt-unicode in sarge contains large
29 that considerably change the behaviour of rxvt-unicode. Before 151 patches that considerably change the behaviour of rxvt-unicode.
30 reporting a bug to the original rxvt-unicode author please download 152 Before reporting a bug to the original rxvt-unicode author please
31 and install the genuine version 153 download and install the genuine version
32 (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the 154 (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the
33 problem. If you cannot, chances are that the problems are specific 155 problem. If you cannot, chances are that the problems are specific
34 to Debian GNU/Linux, in which case it should be reported via the 156 to Debian GNU/Linux, in which case it should be reported via the
35 Debian Bug Tracking System (use "reportbug" to report the bug). 157 Debian Bug Tracking System (use "reportbug" to report the bug).
36 158
37 For other problems that also affect the Debian package, you can and 159 For other problems that also affect the Debian package, you can and
38 probably should use the Debian BTS, too, because, after all, it's 160 probably should use the Debian BTS, too, because, after all, it's
39 also a bug in the Debian version and it serves as a reminder for 161 also a bug in the Debian version and it serves as a reminder for
40 other users that might encounter the same issue. 162 other users that might encounter the same issue.
163
164 I am maintaining rxvt-unicode for distribution/OS XXX, any
165 recommendation?
166 You should build one binary with the default options. configure now
167 enables most useful options, and the trend goes to making them
168 runtime-switchable, too, so there is usually no drawback to enbaling
169 them, except higher disk and possibly memory usage. The perl
170 interpreter should be enabled, as important functionality (menus,
171 selection, likely more in the future) depends on it.
172
173 You should not overwrite the "perl-ext-common" snd "perl-ext"
174 resources system-wide (except maybe with "defaults"). This will
175 result in useful behaviour. If your distribution aims at low memory,
176 add an empty "perl-ext-common" resource to the app-defaults file.
177 This will keep the perl interpreter disabled until the user enables
178 it.
179
180 If you can/want build more binaries, I recommend building a minimal
181 one with "--disable-everything" (very useful) and a maximal one with
182 "--enable-everything" (less useful, it will be very big due to a lot
183 of encodings built-in that increase download times and are rarely
184 used).
185
186 I need to make it setuid/setgid to support utmp/ptys on my OS, is this
187 safe?
188 Likely not. While I honestly try to make it secure, and am probably
189 not bad at it, I think it is simply unreasonable to expect all of
190 freetype + fontconfig + xft + xlib + perl + ... + rxvt-unicode
191 itself to all be secure. Also, rxvt-unicode disables some options
192 when it detects that it runs setuid or setgid, which is not nice.
193 Besides, with the embedded perl interpreter the possibility for
194 security problems easily multiplies.
195
196 Elevated privileges are only required for utmp and pty operations on
197 some systems (for example, GNU/Linux doesn't need any extra
198 privileges for ptys, but some need it for utmp support). It is
199 planned to mvoe this into a forked handler process, but this is not
200 yet done.
201
202 So, while setuid/setgid operation is supported and not a problem on
203 your typical single-user-no-other-logins unix desktop, always
204 remember that its an awful lot of code, most of which isn't checked
205 for security issues regularly.
41 206
42 When I log-in to another system it tells me about missing terminfo data? 207 When I log-in to another system it tells me about missing terminfo data?
43 The terminal description used by rxvt-unicode is not as widely 208 The terminal description used by rxvt-unicode is not as widely
44 available as that for xterm, or even rxvt (for which the same 209 available as that for xterm, or even rxvt (for which the same
45 problem often arises). 210 problem often arises).
65 230
66 URxvt.termName: rxvt 231 URxvt.termName: rxvt
67 232
68 If you don't plan to use rxvt (quite common...) you could also 233 If you don't plan to use rxvt (quite common...) you could also
69 replace the rxvt terminfo file with the rxvt-unicode one. 234 replace the rxvt terminfo file with the rxvt-unicode one.
235
236 "tic" outputs some error when compiling the terminfo entry.
237 Most likely it's the empty definition for "enacs=". Just replace it
238 by "enacs=\E[0@" and try again.
70 239
71 "bash"'s readline does not work correctly under rxvt. 240 "bash"'s readline does not work correctly under rxvt.
72 I need a termcap file entry. 241 I need a termcap file entry.
73 One reason you might want this is that some distributions or 242 One reason you might want this is that some distributions or
74 operating systems still compile some programs using the 243 operating systems still compile some programs using the
247 that doesn't work, you might be forced to use a different font. 416 that doesn't work, you might be forced to use a different font.
248 417
249 All of this is not a problem when using X11 core fonts, as their 418 All of this is not a problem when using X11 core fonts, as their
250 bounding box data is correct. 419 bounding box data is correct.
251 420
421 On Solaris 9, many line-drawing characters are too wide.
422 Seems to be a known bug, read
423 <http://nixdoc.net/files/forum/about34198.html>. Some people use the
424 following ugly workaround to get non-double-wide-characters working:
425
426 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
427
252 My Compose (Multi_key) key is no longer working. 428 My Compose (Multi_key) key is no longer working.
253 The most common causes for this are that either your locale is not 429 The most common causes for this are that either your locale is not
254 set correctly, or you specified a preeditStyle that is not supported 430 set correctly, or you specified a preeditStyle that is not supported
255 by your input method. For example, if you specified OverTheSpot and 431 by your input method. For example, if you specified OverTheSpot and
256 your input method (e.g. the default input method handling Compose 432 your input method (e.g. the default input method handling Compose
300 As you might have guessed, FreeBSD does neither define this symobl 476 As you might have guessed, FreeBSD does neither define this symobl
301 nor does it support it. Instead, it uses it's own internal 477 nor does it support it. Instead, it uses it's own internal
302 representation of wchar_t. This is, of course, completely fine with 478 representation of wchar_t. This is, of course, completely fine with
303 respect to standards. 479 respect to standards.
304 480
481 However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1"
482 and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
483
305 However, "__STDC_ISO_10646__" is the only sane way to support 484 "__STDC_ISO_10646__" is the only sane way to support multi-language
306 multi-language apps in an OS, as using a locale-dependent (and 485 apps in an OS, as using a locale-dependent (and non-standardized)
307 non-standardized) representation of wchar_t makes it impossible to 486 representation of wchar_t makes it impossible to convert between
308 convert between wchar_t (as used by X11 and your applications) and 487 wchar_t (as used by X11 and your applications) and any other
309 any other encoding without implementing OS-specific-wrappers for 488 encoding without implementing OS-specific-wrappers for each and
310 each and every locale. There simply are no APIs to convert wchar_t 489 every locale. There simply are no APIs to convert wchar_t into
311 into anything except the current locale encoding. 490 anything except the current locale encoding.
312 491
313 Some applications (such as the formidable mlterm) work around this 492 Some applications (such as the formidable mlterm) work around this
314 by carrying their own replacement functions for character set 493 by carrying their own replacement functions for character set
315 handling with them, and either implementing OS-dependent hacks or 494 handling with them, and either implementing OS-dependent hacks or
316 doing multiple conversions (which is slow and unreliable in case the 495 doing multiple conversions (which is slow and unreliable in case the
318 emulator). 497 emulator).
319 498
320 The rxvt-unicode author insists that the right way to fix this is in 499 The rxvt-unicode author insists that the right way to fix this is in
321 the system libraries once and for all, instead of forcing every app 500 the system libraries once and for all, instead of forcing every app
322 to carry complete replacements for them :) 501 to carry complete replacements for them :)
502
503 I use Solaris 9 and it doesn't compile/work/etc.
504 Try the diff in doc/solaris9.patch as a base. It fixes the worst
505 problems with "wcwidth" and a compile problem.
506
507 How can I use rxvt-unicode under cygwin?
508 rxvt-unicode should compile and run out of the box on cygwin, using
509 the X11 libraries that come with cygwin. libW11 emulation is no
510 longer supported (and makes no sense, either, as it only supported a
511 single font). I recommend starting the X-server in "-multiwindow" or
512 "-rootless" mode instead, which will result in similar look&feel as
513 the old libW11 emulation.
514
515 At the time of this writing, cygwin didn't seem to support any
516 multi-byte encodings (you might try "LC_CTYPE=C-UTF-8"), so you are
517 likely limited to 8-bit encodings.
323 518
324 How does rxvt-unicode determine the encoding to use? 519 How does rxvt-unicode determine the encoding to use?
325 Is there an option to switch encodings? 520 Is there an option to switch encodings?
326 Unlike some other terminals, rxvt-unicode has no encoding switch, 521 Unlike some other terminals, rxvt-unicode has no encoding switch,
327 and no specific "utf-8" mode, such as xterm. In fact, it doesn't 522 and no specific "utf-8" mode, such as xterm. In fact, it doesn't
439 it gets worse, as rxvt-unicode then uses 8 bytes per screen cell. 634 it gets worse, as rxvt-unicode then uses 8 bytes per screen cell.
440 635
441 Can I speed up Xft rendering somehow? 636 Can I speed up Xft rendering somehow?
442 Yes, the most obvious way to speed it up is to avoid Xft entirely, 637 Yes, the most obvious way to speed it up is to avoid Xft entirely,
443 as it is simply slow. If you still want Xft fonts you might try to 638 as it is simply slow. If you still want Xft fonts you might try to
444 disable antialiasing (by appending ":antialiasing=false"), which 639 disable antialiasing (by appending ":antialias=false"), which saves
445 saves lots of memory and also speeds up rendering considerably. 640 lots of memory and also speeds up rendering considerably.
446 641
447 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? 642 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
448 Rxvt-unicode will use whatever you specify as a font. If it needs to 643 Rxvt-unicode will use whatever you specify as a font. If it needs to
449 fall back to it's default font search list it will prefer X11 core 644 fall back to it's default font search list it will prefer X11 core
450 fonts, because they are small and fast, and then use Xft fonts. It 645 fonts, because they are small and fast, and then use Xft fonts. It
522 URxvt.color14: #73f7ff 717 URxvt.color14: #73f7ff
523 URxvt.color7: #e1dddd 718 URxvt.color7: #e1dddd
524 URxvt.color15: #e1dddd 719 URxvt.color15: #e1dddd
525 720
526 How can I start rxvtd in a race-free way? 721 How can I start rxvtd in a race-free way?
527 Despite it's name, rxvtd is not a real daemon, but more like a 722 Try "rxvtd -f -o", which tells rxvtd to open the display, create the
528 server that answers rxvtc's requests, so it doesn't background 723 listening socket and then fork.
529 itself.
530
531 To ensure rxvtd is listening on it's socket, you can use the
532 following method to wait for the startup message before continuing:
533
534 { rxvtd & } | read
535 724
536 What's with the strange Backspace/Delete key behaviour? 725 What's with the strange Backspace/Delete key behaviour?
537 Assuming that the physical Backspace key corresponds to the 726 Assuming that the physical Backspace key corresponds to the
538 BackSpace keysym (not likely for Linux ... see the following 727 BackSpace keysym (not likely for Linux ... see the following
539 question) there are two standard values that can be used for 728 question) there are two standard values that can be used for
1122 1311
1123 "Ps = 1011" (rxvt) 1312 "Ps = 1011" (rxvt)
1124 h Scroll to bottom when a key is pressed 1313 h Scroll to bottom when a key is pressed
1125 l Don't scroll to bottom when a key is pressed 1314 l Don't scroll to bottom when a key is pressed
1126 1315
1316 "Ps = 1021" (rxvt)
1317 h Bold/italic implies high intensity (see option -is)
1318 l Font styles have no effect on intensity (Compile styles)
1319
1127 "Ps = 1047" 1320 "Ps = 1047"
1128 h Use Alternate Screen Buffer 1321 h Use Alternate Screen Buffer
1129 l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it 1322 l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
1130 1323
1131 "Ps = 1048" 1324 "Ps = 1048"
1153 Ps = 10 Change colour of text foreground to Pt (NB: may change in future) 1346 Ps = 10 Change colour of text foreground to Pt (NB: may change in future)
1154 Ps = 11 Change colour of text background to Pt (NB: may change in future) 1347 Ps = 11 Change colour of text background to Pt (NB: may change in future)
1155 Ps = 12 Change colour of text cursor foreground to Pt 1348 Ps = 12 Change colour of text cursor foreground to Pt
1156 Ps = 13 Change colour of mouse foreground to Pt 1349 Ps = 13 Change colour of mouse foreground to Pt
1157 Ps = 17 Change colour of highlight characters to Pt 1350 Ps = 17 Change colour of highlight characters to Pt
1158 Ps = 18 Change colour of bold characters to Pt 1351 Ps = 18 Change colour of bold characters to Pt [deprecated, see 706]
1159 Ps = 19 Change colour of underlined characters to Pt 1352 Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707]
1160 Ps = 20 Change default background to Pt 1353 Ps = 20 Change default background to Pt
1161 Ps = 39 Change default foreground colour to Pt rxvt compile-time option 1354 Ps = 39 Change default foreground colour to Pt.
1162 Ps = 46 Change Log File to Pt unimplemented 1355 Ps = 46 Change Log File to Pt unimplemented
1163 Ps = 49 Change default background colour to Pt rxvt compile-time option 1356 Ps = 49 Change default background colour to Pt.
1164 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 1357 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
1165 Ps = 55 Log all scrollback buffer and all of screen to Pt 1358 Ps = 55 Log all scrollback buffer and all of screen to Pt
1166 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (rxvt extension) 1359 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills).
1167 Ps = 703 Menubar command Pt rxvt compile-time option (rxvt-unicode extension) 1360 Ps = 703 Menubar command Pt (Compile menubar).
1168 Ps = 704 Change colour of italic characters to Pt 1361 Ps = 704 Change colour of italic characters to Pt
1169 Ps = 705 Change background pixmap tint colour to Pt 1362 Ps = 705 Change background pixmap tint colour to Pt (Compile transparency).
1363 Ps = 706 Change colour of bold characters to Pt
1364 Ps = 707 Change colour of underlined characters to Pt
1170 Ps = 710 Set normal fontset to Pt. Same as Ps = 50. 1365 Ps = 710 Set normal fontset to Pt. Same as Ps = 50.
1171 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50. 1366 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles).
1172 Ps = 712 Set italic fontset to Pt. Similar to Ps = 50. 1367 Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1173 Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50. 1368 Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1369 Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1370 Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1371 Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl).
1174 1372
1175 1373
1176 1374
1177menuBar 1375menuBar
1178 The exact syntax used is *almost* solidified. In the menus, DON'T try to 1376 The exact syntax used is *almost* solidified. In the menus, DON'T try to
1643 XK_KP_8 8 ESC O x 1841 XK_KP_8 8 ESC O x
1644 XK_KP_9 9 ESC O y 1842 XK_KP_9 9 ESC O y
1645 1843
1646CONFIGURE OPTIONS 1844CONFIGURE OPTIONS
1647 General hint: if you get compile errors, then likely your configuration 1845 General hint: if you get compile errors, then likely your configuration
1648 hasn't been tested well. Either try with --enable-everything or use the 1846 hasn't been tested well. Either try with "--enable-everything" or use
1649 ./reconf script as a base for experiments. ./reconf is used by myself, 1847 the ./reconf script as a base for experiments. ./reconf is used by
1650 so it should generally be a working config. Of course, you should always 1848 myself, so it should generally be a working config. Of course, you
1651 report when a combination doesn't work, so it can be fixed. Marc Lehmann 1849 should always report when a combination doesn't work, so it can be
1652 <rxvt@schmorp.de>. 1850 fixed. Marc Lehmann <rxvt@schmorp.de>.
1851
1852 All
1653 1853
1654 --enable-everything 1854 --enable-everything
1655 Add support for all non-multichoice options listed in "./configure 1855 Add (or remove) support for all non-multichoice options listed in
1656 --help". Note that unlike other enable options this is order 1856 "./configure --help".
1657 dependant. You can specify this and then disable options which this
1658 enables by *following* this with the appropriate commands.
1659 1857
1660 --enable-xft 1858 You can specify this and then disable options you do not like by
1859 *following* this with the appropriate "--disable-..." arguments, or
1860 you can start with a minimal configuration by specifying
1861 "--disable-everything" and than adding just the "--enable-..."
1862 arguments you want.
1863
1864 --enable-xft (default: enabled)
1661 Add support for Xft (anti-aliases, among others) fonts. Xft fonts 1865 Add support for Xft (anti-aliases, among others) fonts. Xft fonts
1662 are slower and require lots of memory, but as long as you don't use 1866 are slower and require lots of memory, but as long as you don't use
1663 them, you don't pay for them. 1867 them, you don't pay for them.
1664 1868
1665 --enable-font-styles 1869 --enable-font-styles (default: on)
1666 Add support for bold, *italic* and *bold italic* font styles. The 1870 Add support for bold, *italic* and *bold italic* font styles. The
1667 fonts can be set manually or automatically. 1871 fonts can be set manually or automatically.
1668 1872
1669 --with-codesets=NAME,... 1873 --with-codesets=NAME,... (default: all)
1670 Compile in support for additional codeset (encoding) groups (eu, vn 1874 Compile in support for additional codeset (encoding) groups ("eu",
1671 are always compiled in, which includes most 8-bit character sets). 1875 "vn" are always compiled in, which includes most 8-bit character
1672 These codeset tables are currently only used for driving X11 core 1876 sets). These codeset tables are used for driving X11 core fonts,
1673 fonts, they are not required for Xft fonts. Compiling them in will 1877 they are not required for Xft fonts, although having them compiled
1674 make your binary bigger (together about 700kB), but it doesn't 1878 in lets rxvt-unicode choose replacement fonts more intelligently.
1675 increase memory usage unless you use an X11 font requiring one of 1879 Compiling them in will make your binary bigger (all of together cost
1676 these encodings. 1880 about 700kB), but it doesn't increase memory usage unless you use a
1881 font requiring one of these encodings.
1677 1882
1678 all all available codeset groups 1883 all all available codeset groups
1679 zh common chinese encodings 1884 zh common chinese encodings
1680 zh_ext rarely used but very big chinese encodigs 1885 zh_ext rarely used but very big chinese encodigs
1681 jp common japanese encodings 1886 jp common japanese encodings
1682 jp_ext rarely used but big japanese encodings 1887 jp_ext rarely used but big japanese encodings
1683 kr korean encodings 1888 kr korean encodings
1684 1889
1685 --enable-xim 1890 --enable-xim (default: on)
1686 Add support for XIM (X Input Method) protocol. This allows using 1891 Add support for XIM (X Input Method) protocol. This allows using
1687 alternative input methods (e.g. kinput2) and will also correctly set 1892 alternative input methods (e.g. kinput2) and will also correctly set
1688 up the input for people using dead keys or compose keys. 1893 up the input for people using dead keys or compose keys.
1689 1894
1690 --enable-unicode3 1895 --enable-unicode3 (default: off)
1691 Enable direct support for displaying unicode codepoints above 65535 1896 Enable direct support for displaying unicode codepoints above 65535
1692 (the basic multilingual page). This increases storage requirements 1897 (the basic multilingual page). This increases storage requirements
1693 per character from 2 to 4 bytes. X11 fonts do not yet support these 1898 per character from 2 to 4 bytes. X11 fonts do not yet support these
1694 extra characters, but Xft does. 1899 extra characters, but Xft does.
1695 1900
1697 even without this flag, but the number of such characters is limited 1902 even without this flag, but the number of such characters is limited
1698 to a view thousand (shared with combining characters, see next 1903 to a view thousand (shared with combining characters, see next
1699 switch), and right now rxvt-unicode cannot display them 1904 switch), and right now rxvt-unicode cannot display them
1700 (input/output and cut&paste still work, though). 1905 (input/output and cut&paste still work, though).
1701 1906
1702 --enable-combining 1907 --enable-combining (default: on)
1703 Enable automatic composition of combining characters into composite 1908 Enable automatic composition of combining characters into composite
1704 characters. This is required for proper viewing of text where 1909 characters. This is required for proper viewing of text where
1705 accents are encoded as seperate unicode characters. This is done by 1910 accents are encoded as seperate unicode characters. This is done by
1706 using precomposited characters when available or creating new 1911 using precomposited characters when available or creating new
1707 pseudo-characters when no precomposed form exists. 1912 pseudo-characters when no precomposed form exists.
1716 1921
1717 The combining table also contains entries for arabic presentation 1922 The combining table also contains entries for arabic presentation
1718 forms, but these are not currently used. Bug me if you want these to 1923 forms, but these are not currently used. Bug me if you want these to
1719 be used (and tell me how these are to be used...). 1924 be used (and tell me how these are to be used...).
1720 1925
1721 --enable-fallback(=CLASS) 1926 --enable-fallback(=CLASS) (default: Rxvt)
1722 When reading resource settings, also read settings for class CLASS 1927 When reading resource settings, also read settings for class CLASS.
1723 (default: Rxvt). To disable resource fallback use 1928 To disable resource fallback use --disable-fallback.
1724 --disable-fallback.
1725 1929
1726 --with-res-name=NAME 1930 --with-res-name=NAME (default: urxvt)
1727 Use the given name (default: urxvt) as default application name when 1931 Use the given name as default application name when reading
1728 reading resources. Specify --with-res-name=rxvt to replace rxvt. 1932 resources. Specify --with-res-name=rxvt to replace rxvt.
1729 1933
1730 --with-res-class=CLASS 1934 --with-res-class=CLASS /default: URxvt)
1731 Use the given class (default: URxvt) as default application class 1935 Use the given class as default application class when reading
1732 when reading resources. Specify --with-res-class=Rxvt to replace 1936 resources. Specify --with-res-class=Rxvt to replace rxvt.
1733 rxvt.
1734 1937
1735 --enable-utmp 1938 --enable-utmp (default: on)
1736 Write user and tty to utmp file (used by programs like w) at start 1939 Write user and tty to utmp file (used by programs like w) at start
1737 of rxvt execution and delete information when rxvt exits. 1940 of rxvt execution and delete information when rxvt exits.
1738 1941
1739 --enable-wtmp 1942 --enable-wtmp (default: on)
1740 Write user and tty to wtmp file (used by programs like last) at 1943 Write user and tty to wtmp file (used by programs like last) at
1741 start of rxvt execution and write logout when rxvt exits. This 1944 start of rxvt execution and write logout when rxvt exits. This
1742 option requires --enable-utmp to also be specified. 1945 option requires --enable-utmp to also be specified.
1743 1946
1744 --enable-lastlog 1947 --enable-lastlog (default: on)
1745 Write user and tty to lastlog file (used by programs like lastlogin) 1948 Write user and tty to lastlog file (used by programs like lastlogin)
1746 at start of rxvt execution. This option requires --enable-utmp to 1949 at start of rxvt execution. This option requires --enable-utmp to
1747 also be specified. 1950 also be specified.
1748 1951
1749 --enable-xpm-background 1952 --enable-xpm-background (default: on)
1750 Add support for XPM background pixmaps. 1953 Add support for XPM background pixmaps.
1751 1954
1752 --enable-transparency 1955 --enable-transparency (default: on)
1753 Add support for inheriting parent backgrounds thus giving a fake 1956 Add support for inheriting parent backgrounds thus giving a fake
1754 transparency to the term. 1957 transparency to the term.
1755 1958
1756 --enable-fading 1959 --enable-fading (default: on)
1757 Add support for fading the text when focus is lost. 1960 Add support for fading the text when focus is lost (requires
1961 "--enable-transparency").
1758 1962
1759 --enable-tinting 1963 --enable-tinting (default: on)
1760 Add support for tinting of transparent backgrounds. 1964 Add support for tinting of transparent backgrounds (requires
1965 "--enable-transparency").
1761 1966
1762 --enable-menubar 1967 --enable-menubar (default: off) [DEPRECATED]
1763 Add support for our menu bar system (this interacts badly with 1968 Add support for our menu bar system (this interacts badly with
1764 dynamic locale switching currently). 1969 dynamic locale switching currently). This option is DEPRECATED and
1970 will be removed in the future.
1765 1971
1766 --enable-rxvt-scroll 1972 --enable-rxvt-scroll (default: on)
1767 Add support for the original rxvt scrollbar. 1973 Add support for the original rxvt scrollbar.
1768 1974
1769 --enable-next-scroll 1975 --enable-next-scroll (default: on)
1770 Add support for a NeXT-like scrollbar. 1976 Add support for a NeXT-like scrollbar.
1771 1977
1772 --enable-xterm-scroll 1978 --enable-xterm-scroll (default: on)
1773 Add support for an Xterm-like scrollbar. 1979 Add support for an Xterm-like scrollbar.
1774 1980
1775 --enable-plain-scroll 1981 --enable-plain-scroll (default: on)
1776 Add support for a very unobtrusive, plain-looking scrollbar that is 1982 Add support for a very unobtrusive, plain-looking scrollbar that is
1777 the favourite of the rxvt-unicode author, having used it for many 1983 the favourite of the rxvt-unicode author, having used it for many
1778 years. 1984 years.
1779 1985
1780 --enable-half-shadow 1986 --enable-half-shadow (default: off)
1781 Make shadows on the scrollbar only half the normal width & height. 1987 Make shadows on the scrollbar only half the normal width & height.
1782 only applicable to rxvt scrollbars. 1988 only applicable to rxvt scrollbars.
1783 1989
1784 --enable-ttygid 1990 --enable-ttygid (default: off)
1785 Change tty device setting to group "tty" - only use this if your 1991 Change tty device setting to group "tty" - only use this if your
1786 system uses this type of security. 1992 system uses this type of security.
1787 1993
1788 --disable-backspace-key 1994 --disable-backspace-key
1789 Disable any handling of the backspace key by us - let the X server 1995 Removes any handling of the backspace key by us - let the X server
1790 do it. 1996 do it.
1791 1997
1792 --disable-delete-key 1998 --disable-delete-key
1793 Disable any handling of the delete key by us - let the X server do 1999 Removes any handling of the delete key by us - let the X server do
1794 it. 2000 it.
1795 2001
1796 --disable-resources 2002 --disable-resources
1797 Remove all resources checking. 2003 Removes any support for resource checking.
1798 2004
1799 --enable-xgetdefault 2005 --enable-strings (default: off)
1800 Make resources checking via XGetDefault() instead of our small
1801 version which only checks ~/.Xdefaults, or if that doesn't exist
1802 then ~/.Xresources.
1803
1804 Please note that nowadays, things like XIM will automatically pull
1805 in and use the full X resource manager, so the overhead of using it
1806 might be very small, if nonexistant.
1807
1808 --enable-strings
1809 Add support for our possibly faster memset() function and other 2006 Add support for our possibly faster memset() function and other
1810 various routines, overriding your system's versions which may have 2007 various routines, overriding your system's versions which may have
1811 been hand-crafted in assembly or may require extra libraries to link 2008 been hand-crafted in assembly or may require extra libraries to link
1812 in. (this breaks ANSI-C rules and has problems on many GNU/Linux 2009 in. (this breaks ANSI-C rules and has problems on many GNU/Linux
1813 systems). 2010 systems).
1814 2011
1815 --disable-swapscreen 2012 --disable-swapscreen
1816 Remove support for swap screen. 2013 Remove support for secondary/swap screen.
1817 2014
1818 --enable-frills 2015 --enable-frills (default: on)
1819 Add support for many small features that are not essential but nice 2016 Add support for many small features that are not essential but nice
1820 to have. Normally you want this, but for very small binaries you may 2017 to have. Normally you want this, but for very small binaries you may
1821 want to disable this. 2018 want to disable this.
1822 2019
1823 A non-exhaustive list of features enabled by "--enable-frills" 2020 A non-exhaustive list of features enabled by "--enable-frills"
1824 (possibly in combination with other switches) is: 2021 (possibly in combination with other switches) is:
1825 2022
1826 MWM-hints 2023 MWM-hints
2024 EWMH-hints (pid, utf8 names) and protocols (ping)
1827 seperate underline colour 2025 seperate underline colour (-underlineColor)
1828 settable border widths and borderless switch 2026 settable border widths and borderless switch (-w, -b, -bl)
1829 settable extra linespacing 2027 settable extra linespacing /-lsp)
1830 extra window properties (e.g. UTF-8 window names and PID)
1831 iso-14755-2 and -3, and visual feedback 2028 iso-14755-2 and -3, and visual feedback
1832 backindex and forwardindex escape sequence 2029 backindex and forwardindex escape sequence
1833 window op and locale change escape sequences 2030 window op and some xterm/OSC escape sequences
1834 tripleclickwords 2031 tripleclickwords (-tcw)
1835 settable insecure mode 2032 settable insecure mode (-insecure)
1836 keysym remapping support 2033 keysym remapping support
2034 cursor blinking and underline cursor (-cb, -uc)
2035 XEmbed support (-embed)
2036 user-pty (-pty-fd)
2037 hold on exit (-hold)
2038 skip builtin block graphics (-sbg)
2039 sgr modes 90..97 and 100..107
1837 2040
1838 --enable-iso14755 2041 --enable-iso14755 (default: on)
1839 Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt). 2042 Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt).
1840 Basic support (section 5.1) is enabled by "--enable-frills", while 2043 Basic support (section 5.1) is enabled by "--enable-frills", while
1841 support for 5.2, 5.3 and 5.4 is enabled with this switch. 2044 support for 5.2, 5.3 and 5.4 is enabled with this switch.
1842 2045
1843 --enable-keepscrolling 2046 --enable-keepscrolling (default: on)
1844 Add support for continual scrolling of the display when you hold the 2047 Add support for continual scrolling of the display when you hold the
1845 mouse button down on a scrollbar arrow. 2048 mouse button down on a scrollbar arrow.
1846 2049
1847 --enable-mousewheel 2050 --enable-mousewheel (default: on)
1848 Add support for scrolling via mouse wheel or buttons 4 & 5. 2051 Add support for scrolling via mouse wheel or buttons 4 & 5.
1849 2052
1850 --enable-slipwheeling 2053 --enable-slipwheeling (default: on)
1851 Add support for continual scrolling (using the mouse wheel as an 2054 Add support for continual scrolling (using the mouse wheel as an
1852 accelerator) while the control key is held down. This option 2055 accelerator) while the control key is held down. This option
1853 requires --enable-mousewheel to also be specified. 2056 requires --enable-mousewheel to also be specified.
1854 2057
1855 --disable-new-selection 2058 --disable-new-selection
1856 Remove support for mouse selection style like that of xterm. 2059 Remove support for mouse selection style like that of xterm.
1857 2060
1858 --enable-dmalloc 2061 --enable-dmalloc (default: off)
1859 Use Gray Watson's malloc - which is good for debugging See 2062 Use Gray Watson's malloc - which is good for debugging See
1860 http://www.letters.com/dmalloc/ for details If you use either this 2063 http://www.letters.com/dmalloc/ for details If you use either this
1861 or the next option, you may need to edit src/Makefile after 2064 or the next option, you may need to edit src/Makefile after
1862 compiling to point DINCLUDE and DLIB to the right places. 2065 compiling to point DINCLUDE and DLIB to the right places.
1863 2066
1864 You can only use either this option and the following (should you 2067 You can only use either this option and the following (should you
1865 use either) . 2068 use either) .
1866 2069
1867 --enable-dlmalloc 2070 --enable-dlmalloc (default: off)
1868 Use Doug Lea's malloc - which is good for a production version See 2071 Use Doug Lea's malloc - which is good for a production version See
1869 <http://g.oswego.edu/dl/html/malloc.html> for details. 2072 <http://g.oswego.edu/dl/html/malloc.html> for details.
1870 2073
1871 --enable-smart-resize 2074 --enable-smart-resize (default: on)
1872 Add smart growth/shrink behaviour when changing font size via from 2075 Add smart growth/shrink behaviour when changing font size via hot
1873 hot keys. This should keep in a fixed position the rxvt corner which 2076 keys. This should keep the window corner which is closest to a
1874 is closest to a corner of the screen. 2077 corner of the screen in a fixed position.
1875 2078
1876 --enable-cursor-blink
1877 Add support for a blinking cursor.
1878
1879 --enable-pointer-blank 2079 --enable-pointer-blank (default: on)
1880 Add support to have the pointer disappear when typing or inactive. 2080 Add support to have the pointer disappear when typing or inactive.
1881 2081
1882 --with-name=NAME 2082 --enable-perl (default: off)
2083 Enable an embedded perl interpreter. See the rxvtperl(3) manpage
2084 (doc/rxvtperl.txt) for more info on this feature, or the files in
2085 src/perl-ext/ for the extensions that are installed by default. The
2086 perl interpreter that is used can be specified via the "PERL"
2087 environment variable when running configure.
2088
2089 --with-name=NAME (default: urxvt)
1883 Set the basename for the installed binaries (default: "urxvt", 2090 Set the basename for the installed binaries, resulting in "urxvt",
1884 resulting in "urxvt", "urxvtd" etc.). Specify "--with-name=rxvt" to 2091 "urxvtd" etc.). Specify "--with-name=rxvt" to replace with "rxvt".
1885 replace with "rxvt".
1886 2092
1887 --with-term=NAME 2093 --with-term=NAME (default: rxvt-unicode)
1888 Change the environmental variable for the terminal to NAME (default 2094 Change the environmental variable for the terminal to NAME.
1889 "rxvt-unicode")
1890 2095
1891 --with-terminfo=PATH 2096 --with-terminfo=PATH
1892 Change the environmental variable for the path to the terminfo tree 2097 Change the environmental variable for the path to the terminfo tree
1893 to PATH. 2098 to PATH.
1894 2099

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines