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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines