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

Comparing rxvt-unicode/doc/rxvt.7.pod (file contents):
Revision 1.47 by root, Mon Feb 14 10:48:44 2005 UTC vs.
Revision 1.81 by root, Fri Jan 13 12:40:46 2006 UTC

24 24
25=head1 FREQUENTLY ASKED QUESTIONS 25=head1 FREQUENTLY ASKED QUESTIONS
26 26
27=over 4 27=over 4
28 28
29=item The new selection selects pieces that are too big, how can I select
30single words?
31
32Yes. For example, if you want to select alphanumeric words, you can use
33the following resource:
34
35 URxvt.selection.pattern-0: ([[:word:]]+)
36
37If you click more than twice, the selection will be extended
38more and more.
39
40To get a selection that is very similar to the old code, try this pattern:
41
42 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
43
44Please also note that the I<LeftClick Shift-LeftClik> combination also
45selects words like the old code.
46
47=item I don't like the new selection/popups/hotkeys/perl, how do I
48change/disable it?
49
50You can disable the perl extension completely by setting the
51B<perl-ext-common> resource to the empty string, which also keeps
52rxvt-unicode from initialising perl, saving memory.
53
54If you only want to disable specific features, you first have to
55identify which perl extension is responsible. For this, read the section
56B<PREPACKAGED EXTENSIONS> in the @@RXVT_NAME@@perl(3) manpage. For
57example, to disable the B<selection-popup> and B<option-popup>, specify
58this B<perl-ext-common> resource:
59
60 URxvt.perl-ext-common: default,-selection-popup,-option-popup
61
62This will keep the default extensions, but disable the two popup
63extensions. Some extensions can also be configured, for example,
64scrollback search mode is triggered by B<M-s>. You can move it to any
65other combination either by setting the B<searchable-scrollback> resource:
66
67 URxvt.searchable-scrollback: CM-s
68
69=item Isn't rxvt supposed to be small? Don't all those features bloat?
70
71I often get asked about this, and I think, no, they didn't cause extra
72bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
73that the urxvt binary is larger (due to some encoding tables always being
74compiled in), but it actually uses less memory (RSS) after startup. Even
75with C<--disable-everything>, this comparison is a bit unfair, as many
76features unique to urxvt (locale, encoding conversion, iso14755 etc.) are
77already in use in this mode.
78
79 text data bss drs rss filename
80 98398 1664 24 15695 1824 rxvt --disable-everything
81 188985 9048 66616 18222 1788 urxvt --disable-everything
82
83When you C<--enable-everything> (which _is_ unfair, as this involves xft
84and full locale/XIM support which are quite bloaty inside libX11 and my
85libc), the two diverge, but not unreasnobaly so.
86
87 text data bss drs rss filename
88 163431 2152 24 20123 2060 rxvt --enable-everything
89 1035683 49680 66648 29096 3680 urxvt --enable-everything
90
91The very large size of the text section is explained by the east-asian
92encoding tables, which, if unused, take up disk space but nothing else
93and can be compiled out unless you rely on X11 core fonts that use those
94encodings. The BSS size comes from the 64k emergency buffer that my c++
95compiler allocates (but of course doesn't use unless you are out of
96memory). Also, using an xft font instead of a core font immediately adds a
97few megabytes of RSS. Xft indeed is responsible for a lot of RSS even when
98not used.
99
100Of course, due to every character using two or four bytes instead of one,
101a large scrollback buffer will ultimately make rxvt-unicode use more
102memory.
103
104Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this
105still fares rather well. And compared to some monsters like gnome-terminal
106(21152k + extra 4204k in separate processes) or konsole (22200k + extra
10743180k in daemons that stay around after exit, plus half a minute of
108startup time, including the hundreds of warnings it spits out), it fares
109extremely well *g*.
110
111=item Why C++, isn't that unportable/bloated/uncool?
112
113Is this a question? :) It comes up very often. The simple answer is: I had
114to write it, and C++ allowed me to write and maintain it in a fraction
115of the time and effort (which is a scarce resource for me). Put even
116shorter: It simply wouldn't exist without C++.
117
118My personal stance on this is that C++ is less portable than C, but in
119the case of rxvt-unicode this hardly matters, as its portability limits
120are defined by things like X11, pseudo terminals, locale support and unix
121domain sockets, which are all less portable than C++ itself.
122
123Regarding the bloat, see the above question: It's easy to write programs
124in C that use gobs of memory, an certainly possible to write programs in
125C++ that don't. C++ also often comes with large libraries, but this is
126not necessarily the case with GCC. Here is what rxvt links against on my
127system with a minimal config:
128
129 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
130 libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
131 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
132 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
133
134And here is rxvt-unicode:
135
136 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
137 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
138 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
139 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
140 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
141
142No large bloated libraries (of course, none were linked in statically),
143except maybe libX11 :)
144
145=item Does it support tabs, can I have a tabbed rxvt-unicode?
146
147rxvt-unicode does not directly support tabs. It will work fine with
148tabbing functionality of many window managers or similar tabbing programs,
149and its embedding-features allow it to be embedded into other programs,
150as witnessed by F<doc/rxvt-tabbed> or the upcoming C<Gtk2::URxvt> perl
151module, which features a tabbed urxvt (murxvt) terminal as an example
152embedding application.
153
29=item How do I know which rxvt-unicode version I'm using? 154=item How do I know which rxvt-unicode version I'm using?
30 155
31The version number is displayed with the usage (-h). Also the escape 156The version number is displayed with the usage (-h). Also the escape
32sequence C<ESC [ 8 n> sets the window title to the version number. 157sequence C<ESC [ 8 n> sets the window title to the version number. When
158using the @@RXVT_NAME@@c client, the version displayed is that of the
159daemon.
33 160
34=item I am using Debian GNU/Linux and have a problem... 161=item I am using Debian GNU/Linux and have a problem...
35 162
36The Debian GNU/Linux package of rxvt-unicode contains large patches that 163The Debian GNU/Linux package of rxvt-unicode in sarge contains large
37considerably change the behaviour of rxvt-unicode. Before reporting a 164patches that considerably change the behaviour of rxvt-unicode. Before
38bug to the original rxvt-unicode author please download and install the 165reporting a bug to the original rxvt-unicode author please download and
39genuine version (L<http://software.schmorp.de#rxvt-unicode>) and try to 166install the genuine version (L<http://software.schmorp.de#rxvt-unicode>)
40reproduce the problem. If you cannot, chances are that the problems are 167and try to reproduce the problem. If you cannot, chances are that the
41specific to Debian GNU/Linux, in which case it should be reported via the 168problems are specific to Debian GNU/Linux, in which case it should be
42Debian Bug Tracking System (use C<reportbug> to report the bug). 169reported via the Debian Bug Tracking System (use C<reportbug> to report
170the bug).
43 171
44For other problems that also affect the Debian package, you can and 172For other problems that also affect the Debian package, you can and
45probably should use the Debian BTS, too, because, after all, it's also a 173probably should use the Debian BTS, too, because, after all, it's also a
46bug in the Debian version and it serves as a reminder for other users that 174bug in the Debian version and it serves as a reminder for other users that
47might encounter the same issue. 175might encounter the same issue.
176
177=item I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation?
178
179You should build one binary with the default options. F<configure>
180now enables most useful options, and the trend goes to making them
181runtime-switchable, too, so there is usually no drawback to enbaling them,
182except higher disk and possibly memory usage. The perl interpreter should
183be enabled, as important functionality (menus, selection, likely more in
184the future) depends on it.
185
186You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources
187system-wide (except maybe with C<defaults>). This will result in useful
188behaviour. If your distribution aims at low memory, add an empty
189C<perl-ext-common> resource to the app-defaults file. This will keep the
190perl interpreter disabled until the user enables it.
191
192If you can/want build more binaries, I recommend building a minimal
193one with C<--disable-everything> (very useful) and a maximal one with
194C<--enable-everything> (less useful, it will be very big due to a lot of
195encodings built-in that increase download times and are rarely used).
196
197=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?
198
199Likely not. While I honestly try to make it secure, and am probably not
200bad at it, I think it is simply unreasonable to expect all of freetype
201+ fontconfig + xft + xlib + perl + ... + rxvt-unicode itself to all be
202secure. Also, rxvt-unicode disables some options when it detects that it
203runs setuid or setgid, which is not nice. Besides, with the embedded perl
204interpreter the possibility for security problems easily multiplies.
205
206Elevated privileges are only required for utmp and pty operations on some
207systems (for example, GNU/Linux doesn't need any extra privileges for
208ptys, but some need it for utmp support). It is planned to mvoe this into
209a forked handler process, but this is not yet done.
210
211So, while setuid/setgid operation is supported and not a problem on your
212typical single-user-no-other-logins unix desktop, always remember that
213its an awful lot of code, most of which isn't checked for security issues
214regularly.
48 215
49=item When I log-in to another system it tells me about missing terminfo data? 216=item When I log-in to another system it tells me about missing terminfo data?
50 217
51The terminal description used by rxvt-unicode is not as widely available 218The terminal description used by rxvt-unicode is not as widely available
52as that for xterm, or even rxvt (for which the same problem often arises). 219as that for xterm, or even rxvt (for which the same problem often arises).
72 URxvt.termName: rxvt 239 URxvt.termName: rxvt
73 240
74If you don't plan to use B<rxvt> (quite common...) you could also replace 241If you don't plan to use B<rxvt> (quite common...) you could also replace
75the rxvt terminfo file with the rxvt-unicode one. 242the rxvt terminfo file with the rxvt-unicode one.
76 243
244=item C<tic> outputs some error when compiling the terminfo entry.
245
246Most likely it's the empty definition for C<enacs=>. Just replace it by
247C<enacs=\E[0@> and try again.
248
77=item C<bash>'s readline does not work correctly under @@RXVT_NAME@@. 249=item C<bash>'s readline does not work correctly under @@RXVT_NAME@@.
78 250
79=item I need a termcap file entry. 251=item I need a termcap file entry.
80 252
81One reason you might want this is that some distributions or operating 253One reason you might want this is that some distributions or operating
94 rxvt-unicode|rxvt-unicode terminal (X Window System):\ 266 rxvt-unicode|rxvt-unicode terminal (X Window System):\
95 :am:bw:eo:km:mi:ms:xn:xo:\ 267 :am:bw:eo:km:mi:ms:xn:xo:\
96 :co#80:it#8:li#24:lm#0:\ 268 :co#80:it#8:li#24:lm#0:\
97 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ 269 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
98 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ 270 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
99 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\ 271 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
100 :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ 272 :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
101 :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ 273 :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
102 :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\ 274 :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
275 :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
103 :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ 276 :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
104 :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ 277 :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
105 :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ 278 :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
106 :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ 279 :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
107 :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ 280 :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
108 :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ 281 :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
257might be forced to use a different font. 430might be forced to use a different font.
258 431
259All of this is not a problem when using X11 core fonts, as their bounding 432All of this is not a problem when using X11 core fonts, as their bounding
260box data is correct. 433box data is correct.
261 434
435=item On Solaris 9, many line-drawing characters are too wide.
436
437Seems to be a known bug, read
438L<http://nixdoc.net/files/forum/about34198.html>. Some people use the
439following ugly workaround to get non-double-wide-characters working:
440
441 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
442
262=item My Compose (Multi_key) key is no longer working. 443=item My Compose (Multi_key) key is no longer working.
263 444
264The most common causes for this are that either your locale is not set 445The most common causes for this are that either your locale is not set
265correctly, or you specified a B<preeditStyle> that is not supported by 446correctly, or you specified a B<preeditStyle> that is not supported by
266your input method. For example, if you specified B<OverTheSpot> and 447your input method. For example, if you specified B<OverTheSpot> and
309 490
310As you might have guessed, FreeBSD does neither define this symobl nor 491As you might have guessed, FreeBSD does neither define this symobl nor
311does it support it. Instead, it uses it's own internal representation of 492does it support it. Instead, it uses it's own internal representation of
312B<wchar_t>. This is, of course, completely fine with respect to standards. 493B<wchar_t>. This is, of course, completely fine with respect to standards.
313 494
495However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and
496C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>.
497
314However, C<__STDC_ISO_10646__> is the only sane way to support 498C<__STDC_ISO_10646__> is the only sane way to support multi-language
315multi-language apps in an OS, as using a locale-dependent (and 499apps in an OS, as using a locale-dependent (and non-standardized)
316non-standardized) representation of B<wchar_t> makes it impossible to 500representation of B<wchar_t> makes it impossible to convert between
317convert between B<wchar_t> (as used by X11 and your applications) and any 501B<wchar_t> (as used by X11 and your applications) and any other encoding
318other encoding without implementing OS-specific-wrappers for each and 502without implementing OS-specific-wrappers for each and every locale. There
319every locale. There simply are no APIs to convert B<wchar_t> into anything 503simply are no APIs to convert B<wchar_t> into anything except the current
320except the current locale encoding. 504locale encoding.
321 505
322Some applications (such as the formidable B<mlterm>) work around this 506Some applications (such as the formidable B<mlterm>) work around this
323by carrying their own replacement functions for character set handling 507by carrying their own replacement functions for character set handling
324with them, and either implementing OS-dependent hacks or doing multiple 508with them, and either implementing OS-dependent hacks or doing multiple
325conversions (which is slow and unreliable in case the OS implements 509conversions (which is slow and unreliable in case the OS implements
326encodings slightly different than the terminal emulator). 510encodings slightly different than the terminal emulator).
327 511
328The rxvt-unicode author insists that the right way to fix this is in the 512The rxvt-unicode author insists that the right way to fix this is in the
329system libraries once and for all, instead of forcing every app to carry 513system libraries once and for all, instead of forcing every app to carry
330complete replacements for them :) 514complete replacements for them :)
515
516=item I use Solaris 9 and it doesn't compile/work/etc.
517
518Try the diff in F<doc/solaris9.patch> as a base. It fixes the worst
519problems with C<wcwidth> and a compile problem.
520
521=item How can I use rxvt-unicode under cygwin?
522
523rxvt-unicode should compile and run out of the box on cygwin, using
524the X11 libraries that come with cygwin. libW11 emulation is no
525longer supported (and makes no sense, either, as it only supported a
526single font). I recommend starting the X-server in C<-multiwindow> or
527C<-rootless> mode instead, which will result in similar look&feel as the
528old libW11 emulation.
529
530At the time of this writing, cygwin didn't seem to support any multi-byte
531encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
532to 8-bit encodings.
331 533
332=item How does rxvt-unicode determine the encoding to use? 534=item How does rxvt-unicode determine the encoding to use?
333 535
334=item Is there an option to switch encodings? 536=item Is there an option to switch encodings?
335 537
451 653
452=item Can I speed up Xft rendering somehow? 654=item Can I speed up Xft rendering somehow?
453 655
454Yes, the most obvious way to speed it up is to avoid Xft entirely, as 656Yes, the most obvious way to speed it up is to avoid Xft entirely, as
455it is simply slow. If you still want Xft fonts you might try to disable 657it is simply slow. If you still want Xft fonts you might try to disable
456antialiasing (by appending C<:antialiasing=false>), which saves lots of 658antialiasing (by appending C<:antialias=false>), which saves lots of
457memory and also speeds up rendering considerably. 659memory and also speeds up rendering considerably.
458 660
459=item Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? 661=item Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
460 662
461Rxvt-unicode will use whatever you specify as a font. If it needs to 663Rxvt-unicode will use whatever you specify as a font. If it needs to
470 672
471Make sure that mouse reporting is actually turned off since killing 673Make sure that mouse reporting is actually turned off since killing
472some editors prematurely may leave the mouse in mouse report mode. I've 674some editors prematurely may leave the mouse in mouse report mode. I've
473heard that tcsh may use mouse reporting unless it otherwise specified. A 675heard that tcsh may use mouse reporting unless it otherwise specified. A
474quick check is to see if cut/paste works when the Alt or Shift keys are 676quick check is to see if cut/paste works when the Alt or Shift keys are
475depressed. See @@RXVT_NAME@@(7) 677depressed.
476 678
477=item What's with this bold/blink stuff? 679=item What's with this bold/blink stuff?
478 680
479If no bold colour is set via C<colorBD:>, bold will invert text using the 681If no bold colour is set via C<colorBD:>, bold will invert text using the
480standard foreground colour. 682standard foreground colour.
539 URxvt.color7: #e1dddd 741 URxvt.color7: #e1dddd
540 URxvt.color15: #e1dddd 742 URxvt.color15: #e1dddd
541 743
542=item How can I start @@RXVT_NAME@@d in a race-free way? 744=item How can I start @@RXVT_NAME@@d in a race-free way?
543 745
544Despite it's name, @@RXVT_NAME@@d is not a real daemon, but more like a 746Try C<@@RXVT_NAME@@d -f -o>, which tells @@RXVT_NAME@@d to open the
545server that answers @@RXVT_NAME@@c's requests, so it doesn't background 747display, create the listening socket and then fork.
546itself.
547
548To ensure @@RXVT_NAME@@d is listening on it's socket, you can use the
549following method to wait for the startup message before continuing:
550
551 { @@RXVT_NAME@@d & } | read
552 748
553=item What's with the strange Backspace/Delete key behaviour? 749=item What's with the strange Backspace/Delete key behaviour?
554 750
555Assuming that the physical Backspace key corresponds to the 751Assuming that the physical Backspace key corresponds to the
556BackSpace keysym (not likely for Linux ... see the following 752BackSpace keysym (not likely for Linux ... see the following
575 771
576 # use Backspace = ^? 772 # use Backspace = ^?
577 $ stty erase ^? 773 $ stty erase ^?
578 $ @@RXVT_NAME@@ 774 $ @@RXVT_NAME@@
579 775
580Toggle with C<ESC [ 36 h> / C<ESC [ 36 l> as documented in @@RXVT_NAME@@(7). 776Toggle with C<ESC [ 36 h> / C<ESC [ 36 l>.
581 777
582For an existing rxvt-unicode: 778For an existing rxvt-unicode:
583 779
584 # use Backspace = ^H 780 # use Backspace = ^H
585 $ stty erase ^H 781 $ stty erase ^H
1416 B<< C<h> >> Scroll to bottom when a key is pressed 1612 B<< C<h> >> Scroll to bottom when a key is pressed
1417 B<< C<l> >> Don't scroll to bottom when a key is pressed 1613 B<< C<l> >> Don't scroll to bottom when a key is pressed
1418 1614
1419=end table 1615=end table
1420 1616
1617=item B<< C<Ps = 1021> >> (B<rxvt>)
1618
1619=begin table
1620
1621 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>)
1622 B<< C<l> >> Font styles have no effect on intensity (Compile styles)
1623
1624=end table
1625
1421=item B<< C<Ps = 1047> >> 1626=item B<< C<Ps = 1047> >>
1422 1627
1423=begin table 1628=begin table
1424 1629
1425 B<< C<h> >> Use Alternate Screen Buffer 1630 B<< C<h> >> Use Alternate Screen Buffer
1471 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)> 1676 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)>
1472 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)> 1677 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)>
1473 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >> 1678 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >>
1474 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >> 1679 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >>
1475 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >> 1680 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >>
1476 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> 1681 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
1477 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> 1682 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1478 B<< C<Ps = 20> >> Change default background to B<< C<Pt> >> 1683 B<< C<Ps = 20> >> Change default background to B<< C<Pt> >>
1479 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >> I<rxvt compile-time option> 1684 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>.
1480 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 1685 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
1481 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >> I<rxvt compile-time option> 1686 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>.
1482 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >> 1687 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >>
1483 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 1688 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >>
1484 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (@@RXVT_NAME@@ extension) 1689 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (Compile frills).
1485 B<< C<Ps = 703> >> Menubar command B<< C<Pt> >> I<rxvt compile-time option> (rxvt-unicode extension) 1690 B<< C<Ps = 703> >> Menubar command B<< C<Pt> >> (Compile menubar).
1486 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >> 1691 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >>
1487 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> 1692 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency).
1693 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >>
1694 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
1488 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>. 1695 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
1489 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50>. 1696 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1490 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50>. 1697 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1491 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50>. 1698 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1699 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
1700 B<< C<Ps = 721> >> Move viewing window down by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
1701 B<< C<Ps = 777> >> Call the perl extension with the given string, which should be of the form C<extension:parameters> (Compile perl).
1492 1702
1493=end table 1703=end table
1494 1704
1495=back 1705=back
1496 1706
2153=end table 2363=end table
2154 2364
2155=head1 CONFIGURE OPTIONS 2365=head1 CONFIGURE OPTIONS
2156 2366
2157General hint: if you get compile errors, then likely your configuration 2367General hint: if you get compile errors, then likely your configuration
2158hasn't been tested well. Either try with --enable-everything or use the 2368hasn't been tested well. Either try with C<--enable-everything> or use
2159./reconf script as a base for experiments. ./reconf is used by myself, 2369the F<./reconf> script as a base for experiments. F<./reconf> is used by
2160so it should generally be a working config. Of course, you should always 2370myself, so it should generally be a working config. Of course, you should
2161report when a combination doesn't work, so it can be fixed. Marc Lehmann 2371always report when a combination doesn't work, so it can be fixed. Marc
2162<rxvt@schmorp.de>. 2372Lehmann <rxvt@schmorp.de>.
2373
2374All
2163 2375
2164=over 4 2376=over 4
2165 2377
2166=item --enable-everything 2378=item --enable-everything
2167 2379
2168Add support for all non-multichoice options listed in "./configure 2380Add (or remove) support for all non-multichoice options listed in "./configure
2169--help". Note that unlike other enable options this is order dependant. 2381--help".
2382
2170You can specify this and then disable options which this enables by 2383You can specify this and then disable options you do not like by
2171I<following> this with the appropriate commands. 2384I<following> this with the appropriate C<--disable-...> arguments,
2385or you can start with a minimal configuration by specifying
2386C<--disable-everything> and than adding just the C<--enable-...> arguments
2387you want.
2172 2388
2173=item --enable-xft 2389=item --enable-xft (default: enabled)
2174 2390
2175Add support for Xft (anti-aliases, among others) fonts. Xft fonts are 2391Add support for Xft (anti-aliases, among others) fonts. Xft fonts are
2176slower and require lots of memory, but as long as you don't use them, you 2392slower and require lots of memory, but as long as you don't use them, you
2177don't pay for them. 2393don't pay for them.
2178 2394
2179=item --enable-font-styles 2395=item --enable-font-styles (default: on)
2180 2396
2181Add support for B<bold>, I<italic> and B<< I<bold italic> >> font 2397Add support for B<bold>, I<italic> and B<< I<bold italic> >> font
2182styles. The fonts can be set manually or automatically. 2398styles. The fonts can be set manually or automatically.
2183 2399
2184=item --with-codesets=NAME,... 2400=item --with-codesets=NAME,... (default: all)
2185 2401
2186Compile in support for additional codeset (encoding) groups (eu, vn are 2402Compile in support for additional codeset (encoding) groups (C<eu>, C<vn>
2187always compiled in, which includes most 8-bit character sets). These 2403are always compiled in, which includes most 8-bit character sets). These
2188codeset tables are currently only used for driving X11 core fonts, they 2404codeset tables are used for driving X11 core fonts, they are not required
2189are not required for Xft fonts. Compiling them in will make your binary 2405for Xft fonts, although having them compiled in lets rxvt-unicode choose
2190bigger (together about 700kB), but it doesn't increase memory usage unless 2406replacement fonts more intelligently. Compiling them in will make your
2407binary bigger (all of together cost about 700kB), but it doesn't increase
2191you use an X11 font requiring one of these encodings. 2408memory usage unless you use a font requiring one of these encodings.
2192 2409
2193=begin table 2410=begin table
2194 2411
2195 all all available codeset groups 2412 all all available codeset groups
2196 zh common chinese encodings 2413 zh common chinese encodings
2199 jp_ext rarely used but big japanese encodings 2416 jp_ext rarely used but big japanese encodings
2200 kr korean encodings 2417 kr korean encodings
2201 2418
2202=end table 2419=end table
2203 2420
2204=item --enable-xim 2421=item --enable-xim (default: on)
2205 2422
2206Add support for XIM (X Input Method) protocol. This allows using 2423Add support for XIM (X Input Method) protocol. This allows using
2207alternative input methods (e.g. kinput2) and will also correctly 2424alternative input methods (e.g. kinput2) and will also correctly
2208set up the input for people using dead keys or compose keys. 2425set up the input for people using dead keys or compose keys.
2209 2426
2210=item --enable-unicode3 2427=item --enable-unicode3 (default: off)
2211 2428
2212Enable direct support for displaying unicode codepoints above 2429Enable direct support for displaying unicode codepoints above
221365535 (the basic multilingual page). This increases storage 243065535 (the basic multilingual page). This increases storage
2214requirements per character from 2 to 4 bytes. X11 fonts do not yet 2431requirements per character from 2 to 4 bytes. X11 fonts do not yet
2215support these extra characters, but Xft does. 2432support these extra characters, but Xft does.
2218even without this flag, but the number of such characters is 2435even without this flag, but the number of such characters is
2219limited to a view thousand (shared with combining characters, 2436limited to a view thousand (shared with combining characters,
2220see next switch), and right now rxvt-unicode cannot display them 2437see next switch), and right now rxvt-unicode cannot display them
2221(input/output and cut&paste still work, though). 2438(input/output and cut&paste still work, though).
2222 2439
2223=item --enable-combining 2440=item --enable-combining (default: on)
2224 2441
2225Enable automatic composition of combining characters into 2442Enable automatic composition of combining characters into
2226composite characters. This is required for proper viewing of text 2443composite characters. This is required for proper viewing of text
2227where accents are encoded as seperate unicode characters. This is 2444where accents are encoded as seperate unicode characters. This is
2228done by using precomposited characters when available or creating 2445done by using precomposited characters when available or creating
2238 2455
2239The combining table also contains entries for arabic presentation forms, 2456The combining table also contains entries for arabic presentation forms,
2240but these are not currently used. Bug me if you want these to be used (and 2457but these are not currently used. Bug me if you want these to be used (and
2241tell me how these are to be used...). 2458tell me how these are to be used...).
2242 2459
2243=item --enable-fallback(=CLASS) 2460=item --enable-fallback(=CLASS) (default: Rxvt)
2244 2461
2245When reading resource settings, also read settings for class CLASS 2462When reading resource settings, also read settings for class CLASS. To disable resource fallback use --disable-fallback.
2246(default: Rxvt). To disable resource fallback use --disable-fallback.
2247 2463
2248=item --with-res-name=NAME 2464=item --with-res-name=NAME (default: urxvt)
2249 2465
2250Use the given name (default: urxvt) as default application name when 2466Use the given name as default application name when
2251reading resources. Specify --with-res-name=rxvt to replace rxvt. 2467reading resources. Specify --with-res-name=rxvt to replace rxvt.
2252 2468
2253=item --with-res-class=CLASS 2469=item --with-res-class=CLASS /default: URxvt)
2254 2470
2255Use the given class (default: URxvt) as default application class 2471Use the given class as default application class
2256when reading resources. Specify --with-res-class=Rxvt to replace 2472when reading resources. Specify --with-res-class=Rxvt to replace
2257rxvt. 2473rxvt.
2258 2474
2259=item --enable-utmp 2475=item --enable-utmp (default: on)
2260 2476
2261Write user and tty to utmp file (used by programs like F<w>) at 2477Write user and tty to utmp file (used by programs like F<w>) at
2262start of rxvt execution and delete information when rxvt exits. 2478start of rxvt execution and delete information when rxvt exits.
2263 2479
2264=item --enable-wtmp 2480=item --enable-wtmp (default: on)
2265 2481
2266Write user and tty to wtmp file (used by programs like F<last>) at 2482Write user and tty to wtmp file (used by programs like F<last>) at
2267start of rxvt execution and write logout when rxvt exits. This 2483start of rxvt execution and write logout when rxvt exits. This
2268option requires --enable-utmp to also be specified. 2484option requires --enable-utmp to also be specified.
2269 2485
2270=item --enable-lastlog 2486=item --enable-lastlog (default: on)
2271 2487
2272Write user and tty to lastlog file (used by programs like 2488Write user and tty to lastlog file (used by programs like
2273F<lastlogin>) at start of rxvt execution. This option requires 2489F<lastlogin>) at start of rxvt execution. This option requires
2274--enable-utmp to also be specified. 2490--enable-utmp to also be specified.
2275 2491
2276=item --enable-xpm-background 2492=item --enable-xpm-background (default: on)
2277 2493
2278Add support for XPM background pixmaps. 2494Add support for XPM background pixmaps.
2279 2495
2280=item --enable-transparency 2496=item --enable-transparency (default: on)
2281 2497
2282Add support for inheriting parent backgrounds thus giving a fake 2498Add support for inheriting parent backgrounds thus giving a fake
2283transparency to the term. 2499transparency to the term.
2284 2500
2285=item --enable-fading 2501=item --enable-fading (default: on)
2286 2502
2287Add support for fading the text when focus is lost. 2503Add support for fading the text when focus is lost (requires C<--enable-transparency>).
2288 2504
2289=item --enable-tinting 2505=item --enable-tinting (default: on)
2290 2506
2291Add support for tinting of transparent backgrounds. 2507Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2292 2508
2293=item --enable-menubar 2509=item --enable-menubar (default: off) [DEPRECATED]
2294 2510
2295Add support for our menu bar system (this interacts badly with 2511Add support for our menu bar system (this interacts badly with dynamic
2296dynamic locale switching currently). 2512locale switching currently). This option is DEPRECATED and will be removed
2513in the future.
2297 2514
2298=item --enable-rxvt-scroll 2515=item --enable-rxvt-scroll (default: on)
2299 2516
2300Add support for the original rxvt scrollbar. 2517Add support for the original rxvt scrollbar.
2301 2518
2302=item --enable-next-scroll 2519=item --enable-next-scroll (default: on)
2303 2520
2304Add support for a NeXT-like scrollbar. 2521Add support for a NeXT-like scrollbar.
2305 2522
2306=item --enable-xterm-scroll 2523=item --enable-xterm-scroll (default: on)
2307 2524
2308Add support for an Xterm-like scrollbar. 2525Add support for an Xterm-like scrollbar.
2309 2526
2310=item --enable-plain-scroll 2527=item --enable-plain-scroll (default: on)
2311 2528
2312Add support for a very unobtrusive, plain-looking scrollbar that 2529Add support for a very unobtrusive, plain-looking scrollbar that
2313is the favourite of the rxvt-unicode author, having used it for 2530is the favourite of the rxvt-unicode author, having used it for
2314many years. 2531many years.
2315 2532
2316=item --enable-half-shadow 2533=item --enable-half-shadow (default: off)
2317 2534
2318Make shadows on the scrollbar only half the normal width & height. 2535Make shadows on the scrollbar only half the normal width & height.
2319only applicable to rxvt scrollbars. 2536only applicable to rxvt scrollbars.
2320 2537
2321=item --enable-ttygid 2538=item --enable-ttygid (default: off)
2322 2539
2323Change tty device setting to group "tty" - only use this if 2540Change tty device setting to group "tty" - only use this if
2324your system uses this type of security. 2541your system uses this type of security.
2325 2542
2326=item --disable-backspace-key 2543=item --disable-backspace-key
2327 2544
2328Disable any handling of the backspace key by us - let the X server 2545Removes any handling of the backspace key by us - let the X server do it.
2546
2547=item --disable-delete-key
2548
2549Removes any handling of the delete key by us - let the X server
2329do it. 2550do it.
2330 2551
2331=item --disable-delete-key
2332
2333Disable any handling of the delete key by us - let the X server
2334do it.
2335
2336=item --disable-resources 2552=item --disable-resources
2337 2553
2338Remove all resources checking. 2554Removes any support for resource checking.
2339 2555
2340=item --enable-xgetdefault 2556=item --enable-strings (default: off)
2341
2342Make resources checking via XGetDefault() instead of our small
2343version which only checks ~/.Xdefaults, or if that doesn't exist then
2344~/.Xresources.
2345
2346Please note that nowadays, things like XIM will automatically pull in and
2347use the full X resource manager, so the overhead of using it might be very
2348small, if nonexistant.
2349
2350=item --enable-strings
2351 2557
2352Add support for our possibly faster memset() function and other 2558Add support for our possibly faster memset() function and other
2353various routines, overriding your system's versions which may 2559various routines, overriding your system's versions which may
2354have been hand-crafted in assembly or may require extra libraries 2560have been hand-crafted in assembly or may require extra libraries
2355to link in. (this breaks ANSI-C rules and has problems on many 2561to link in. (this breaks ANSI-C rules and has problems on many
2356GNU/Linux systems). 2562GNU/Linux systems).
2357 2563
2358=item --disable-swapscreen 2564=item --disable-swapscreen
2359 2565
2360Remove support for swap screen. 2566Remove support for secondary/swap screen.
2361 2567
2362=item --enable-frills 2568=item --enable-frills (default: on)
2363 2569
2364Add support for many small features that are not essential but nice to 2570Add support for many small features that are not essential but nice to
2365have. Normally you want this, but for very small binaries you may want to 2571have. Normally you want this, but for very small binaries you may want to
2366disable this. 2572disable this.
2367 2573
2368A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2574A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2369in combination with other switches) is: 2575in combination with other switches) is:
2370 2576
2371 MWM-hints 2577 MWM-hints
2578 EWMH-hints (pid, utf8 names) and protocols (ping)
2372 seperate underline colour 2579 seperate underline colour (-underlineColor)
2373 settable border widths and borderless switch 2580 settable border widths and borderless switch (-w, -b, -bl)
2374 settable extra linespacing 2581 settable extra linespacing /-lsp)
2375 extra window properties (e.g. UTF-8 window names and PID)
2376 iso-14755-2 and -3, and visual feedback 2582 iso-14755-2 and -3, and visual feedback
2377 backindex and forwardindex escape sequence 2583 backindex and forwardindex escape sequence
2378 window op and locale change escape sequences 2584 window op and some xterm/OSC escape sequences
2379 tripleclickwords 2585 tripleclickwords (-tcw)
2380 settable insecure mode 2586 settable insecure mode (-insecure)
2381 keysym remapping support 2587 keysym remapping support
2588 cursor blinking and underline cursor (-cb, -uc)
2589 XEmbed support (-embed)
2590 user-pty (-pty-fd)
2591 hold on exit (-hold)
2592 skip builtin block graphics (-sbg)
2593 sgr modes 90..97 and 100..107
2382 2594
2383=item --enable-iso14755 2595=item --enable-iso14755 (default: on)
2384 2596
2385Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2597Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2386F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by 2598F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
2387C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with 2599C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with
2388this switch. 2600this switch.
2389 2601
2390=item --enable-keepscrolling 2602=item --enable-keepscrolling (default: on)
2391 2603
2392Add support for continual scrolling of the display when you hold 2604Add support for continual scrolling of the display when you hold
2393the mouse button down on a scrollbar arrow. 2605the mouse button down on a scrollbar arrow.
2394 2606
2395=item --enable-mousewheel 2607=item --enable-mousewheel (default: on)
2396 2608
2397Add support for scrolling via mouse wheel or buttons 4 & 5. 2609Add support for scrolling via mouse wheel or buttons 4 & 5.
2398 2610
2399=item --enable-slipwheeling 2611=item --enable-slipwheeling (default: on)
2400 2612
2401Add support for continual scrolling (using the mouse wheel as an 2613Add support for continual scrolling (using the mouse wheel as an
2402accelerator) while the control key is held down. This option 2614accelerator) while the control key is held down. This option
2403requires --enable-mousewheel to also be specified. 2615requires --enable-mousewheel to also be specified.
2404 2616
2405=item --disable-new-selection 2617=item --disable-new-selection
2406 2618
2407Remove support for mouse selection style like that of xterm. 2619Remove support for mouse selection style like that of xterm.
2408 2620
2409=item --enable-dmalloc 2621=item --enable-dmalloc (default: off)
2410 2622
2411Use Gray Watson's malloc - which is good for debugging See 2623Use Gray Watson's malloc - which is good for debugging See
2412http://www.letters.com/dmalloc/ for details If you use either this or the 2624http://www.letters.com/dmalloc/ for details If you use either this or the
2413next option, you may need to edit src/Makefile after compiling to point 2625next option, you may need to edit src/Makefile after compiling to point
2414DINCLUDE and DLIB to the right places. 2626DINCLUDE and DLIB to the right places.
2415 2627
2416You can only use either this option and the following (should 2628You can only use either this option and the following (should
2417you use either) . 2629you use either) .
2418 2630
2419=item --enable-dlmalloc 2631=item --enable-dlmalloc (default: off)
2420 2632
2421Use Doug Lea's malloc - which is good for a production version 2633Use Doug Lea's malloc - which is good for a production version
2422See L<http://g.oswego.edu/dl/html/malloc.html> for details. 2634See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2423 2635
2424=item --enable-smart-resize 2636=item --enable-smart-resize (default: on)
2425 2637
2426Add smart growth/shrink behaviour when changing font size via from hot 2638Add smart growth/shrink behaviour when changing font size via hot
2427keys. This should keep in a fixed position the rxvt corner which is 2639keys. This should keep the window corner which is closest to a corner of
2428closest to a corner of the screen. 2640the screen in a fixed position.
2429 2641
2430=item --enable-cursor-blink
2431
2432Add support for a blinking cursor.
2433
2434=item --enable-pointer-blank 2642=item --enable-pointer-blank (default: on)
2435 2643
2436Add support to have the pointer disappear when typing or inactive. 2644Add support to have the pointer disappear when typing or inactive.
2437 2645
2438=item --with-name=NAME 2646=item --enable-perl (default: off)
2439 2647
2648Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2649manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
2650in F<src/perl-ext/> for the extensions that are installed by default. The
2651perl interpreter that is used can be specified via the C<PERL> environment
2652variable when running configure.
2653
2654=item --with-name=NAME (default: urxvt)
2655
2440Set the basename for the installed binaries (default: C<urxvt>, resulting 2656Set the basename for the installed binaries, resulting
2441in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2657in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2442C<rxvt>. 2658C<rxvt>.
2443 2659
2444=item --with-term=NAME 2660=item --with-term=NAME (default: rxvt-unicode)
2445 2661
2446Change the environmental variable for the terminal to NAME (default 2662Change the environmental variable for the terminal to NAME.
2447C<rxvt-unicode>)
2448 2663
2449=item --with-terminfo=PATH 2664=item --with-terminfo=PATH
2450 2665
2451Change the environmental variable for the path to the terminfo tree to 2666Change the environmental variable for the path to the terminfo tree to
2452PATH. 2667PATH.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines