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.60 by root, Fri Jul 29 03:12:10 2005 UTC vs.
Revision 1.96 by root, Tue Jan 31 00:25:16 2006 UTC

16=head1 DESCRIPTION 16=head1 DESCRIPTION
17 17
18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting 18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
19all escape sequences, and other background information. 19all escape sequences, and other background information.
20 20
21The newest version of this document is 21The newest version of this document is also available on the World Wide Web at
22also available on the World Wide Web at
23L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 22L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
24 23
25=head1 FREQUENTLY ASKED QUESTIONS 24=head1 FREQUENTLY ASKED QUESTIONS
26 25
27=over 4 26=over 4
28 27
28=item The new selection selects pieces that are too big, how can I select
29single words?
30
31Yes. For example, if you want to select alphanumeric words, you can use
32the following resource:
33
34 URxvt.selection.pattern-0: ([[:word:]]+)
35
36If you click more than twice, the selection will be extended
37more and more.
38
39To get a selection that is very similar to the old code, try this pattern:
40
41 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
42
43Please also note that the I<LeftClick Shift-LeftClik> combination also
44selects words like the old code.
45
46=item I don't like the new selection/popups/hotkeys/perl, how do I
47change/disable it?
48
49You can disable the perl extension completely by setting the
50B<perl-ext-common> resource to the empty string, which also keeps
51rxvt-unicode from initialising perl, saving memory.
52
53If you only want to disable specific features, you first have to
54identify which perl extension is responsible. For this, read the section
55B<PREPACKAGED EXTENSIONS> in the @@RXVT_NAME@@perl(3) manpage. For
56example, to disable the B<selection-popup> and B<option-popup>, specify
57this B<perl-ext-common> resource:
58
59 URxvt.perl-ext-common: default,-selection-popup,-option-popup
60
61This will keep the default extensions, but disable the two popup
62extensions. Some extensions can also be configured, for example,
63scrollback search mode is triggered by B<M-s>. You can move it to any
64other combination either by setting the B<searchable-scrollback> resource:
65
66 URxvt.searchable-scrollback: CM-s
67
68=item Why doesn't rxvt-unicode read my resources?
69
70Well, why, indeed? It does, in a way very similar to other X
71applications. Most importantly, this means that if you or your OS loads
72resources into the X display (the right way to do it), rxvt-unicode will
73ignore any resource files in your home directory. It will only read
74F<$HOME/.Xdefaults> when no resources are attached to the display.
75
76If you have or use an F<$HOME/.Xresources> file, chances are that
77resources are loaded into your X-server. In this case, you have to
78re-login after every change (or run F<xrdb -merge $HOME/.Xresources>).
79
80Also consider the form resources have to use:
81
82 URxvt.resource: value
83
84If you want to use another form (there are lots of different ways of
85specifying resources), make sure you understand wether and why it
86works. If unsure, use the form above.
87
88=item I can't get transparency working, what am I doing wrong?
89
90First of all, transparency isn't officially supported in rxvt-unicode, so
91you are mostly on your own. Do not bug the author about it (but you may
92bug everybody else). Also, if you can't get it working consider it a rite
93of passage: ... and you failed.
94
95Here are four ways to get transparency. B<Do> read the manpage and option
96descriptions for the programs mentioned and rxvt-unicode. Really, do it!
97
981. Use inheritPixmap:
99
100 Esetroot wallpaper.jpg
101 @@RXVT_NAME@@ -ip -tint red -sh 40
102
103That works. If you think it doesn't, you lack transparency and tinting
104support, or you are unable to read.
105
1062. Use a simple pixmap and emulate pseudo-transparency. This enables you
107to use effects other than tinting and shading: Just shade/tint/whatever
108your picture with gimp:
109
110 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
111 @@RXVT_NAME@@ -pixmap background.xpm -pe automove-background
112
113That works. If you think it doesn't, you lack XPM and Perl support, or you
114are unable to read.
115
1163. Use an ARGB visual:
117
118 @@RXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
119
120This requires XFT support, and the support of your X-server. If that
121doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
122there yet, no matter what they claim. Rxvt-Unicode contains the neccessary
123bugfixes and workarounds for Xft and Xlib to make it work, but that
124doesn't mean that your WM has the required kludges in place.
125
1264. Use xcompmgr and let it do the job:
127
128 xprop -frame -f _NET_WM_WINDOW_OPACITY 32c \
129 -set _NET_WM_WINDOW_OPACITY 0xc0000000
130
131Then click on a window you want to make transparent. Replace C<0xc0000000>
132by other values to change the degree of opacity. If it doesn't work and
133your server crashes, you got to keep the pieces.
134
135=item Isn't rxvt supposed to be small? Don't all those features bloat?
136
137I often get asked about this, and I think, no, they didn't cause extra
138bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
139that the urxvt binary is larger (due to some encoding tables always being
140compiled in), but it actually uses less memory (RSS) after startup. Even
141with C<--disable-everything>, this comparison is a bit unfair, as many
142features unique to urxvt (locale, encoding conversion, iso14755 etc.) are
143already in use in this mode.
144
145 text data bss drs rss filename
146 98398 1664 24 15695 1824 rxvt --disable-everything
147 188985 9048 66616 18222 1788 urxvt --disable-everything
148
149When you C<--enable-everything> (which _is_ unfair, as this involves xft
150and full locale/XIM support which are quite bloaty inside libX11 and my
151libc), the two diverge, but not unreasnobaly so.
152
153 text data bss drs rss filename
154 163431 2152 24 20123 2060 rxvt --enable-everything
155 1035683 49680 66648 29096 3680 urxvt --enable-everything
156
157The very large size of the text section is explained by the east-asian
158encoding tables, which, if unused, take up disk space but nothing else
159and can be compiled out unless you rely on X11 core fonts that use those
160encodings. The BSS size comes from the 64k emergency buffer that my c++
161compiler allocates (but of course doesn't use unless you are out of
162memory). Also, using an xft font instead of a core font immediately adds a
163few megabytes of RSS. Xft indeed is responsible for a lot of RSS even when
164not used.
165
166Of course, due to every character using two or four bytes instead of one,
167a large scrollback buffer will ultimately make rxvt-unicode use more
168memory.
169
170Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this
171still fares rather well. And compared to some monsters like gnome-terminal
172(21152k + extra 4204k in separate processes) or konsole (22200k + extra
17343180k in daemons that stay around after exit, plus half a minute of
174startup time, including the hundreds of warnings it spits out), it fares
175extremely well *g*.
176
177=item Why C++, isn't that unportable/bloated/uncool?
178
179Is this a question? :) It comes up very often. The simple answer is: I had
180to write it, and C++ allowed me to write and maintain it in a fraction
181of the time and effort (which is a scarce resource for me). Put even
182shorter: It simply wouldn't exist without C++.
183
184My personal stance on this is that C++ is less portable than C, but in
185the case of rxvt-unicode this hardly matters, as its portability limits
186are defined by things like X11, pseudo terminals, locale support and unix
187domain sockets, which are all less portable than C++ itself.
188
189Regarding the bloat, see the above question: It's easy to write programs
190in C that use gobs of memory, an certainly possible to write programs in
191C++ that don't. C++ also often comes with large libraries, but this is
192not necessarily the case with GCC. Here is what rxvt links against on my
193system with a minimal config:
194
195 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
196 libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
197 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
198 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
199
200And here is rxvt-unicode:
201
202 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
203 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
204 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
205 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
206 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
207
208No large bloated libraries (of course, none were linked in statically),
209except maybe libX11 :)
210
211=item Does it support tabs, can I have a tabbed rxvt-unicode?
212
213Beginning with version 7.3, there is a perl extension that implements a
214simple tabbed terminal. It is installed by default, so any of these should
215give you tabs:
216
217 @@RXVT_NAME@@ -pe tabbed
218
219 URxvt.perl-ext-common: default,tabbed
220
221It will also work fine with tabbing functionality of many window managers
222or similar tabbing programs, and its embedding-features allow it to be
223embedded into other programs, as witnessed by F<doc/rxvt-tabbed> or
224the upcoming C<Gtk2::URxvt> perl module, which features a tabbed urxvt
225(murxvt) terminal as an example embedding application.
226
29=item How do I know which rxvt-unicode version I'm using? 227=item How do I know which rxvt-unicode version I'm using?
30 228
31The version number is displayed with the usage (-h). Also the escape 229The version number is displayed with the usage (-h). Also the escape
32sequence C<ESC [ 8 n> sets the window title to the version number. 230sequence C<ESC [ 8 n> sets the window title to the version number. When
231using the @@RXVT_NAME@@c client, the version displayed is that of the
232daemon.
33 233
34=item I am using Debian GNU/Linux and have a problem... 234=item I am using Debian GNU/Linux and have a problem...
35 235
36The Debian GNU/Linux package of rxvt-unicode in sarge contains large 236The Debian GNU/Linux package of rxvt-unicode in sarge contains large
37patches that considerably change the behaviour of rxvt-unicode. Before 237patches that considerably change the behaviour of rxvt-unicode (but
38reporting a bug to the original rxvt-unicode author please download and 238unfortunately this notice has been removed). Before reporting a bug to
39install the genuine version (L<http://software.schmorp.de#rxvt-unicode>) 239the original rxvt-unicode author please download and install the genuine
40and try to reproduce the problem. If you cannot, chances are that the 240version (L<http://software.schmorp.de#rxvt-unicode>) and try to reproduce
41problems are specific to Debian GNU/Linux, in which case it should be 241the problem. If you cannot, chances are that the problems are specific to
42reported via the Debian Bug Tracking System (use C<reportbug> to report 242Debian GNU/Linux, in which case it should be reported via the Debian Bug
43the bug). 243Tracking System (use C<reportbug> to report the bug).
44 244
45For other problems that also affect the Debian package, you can and 245For other problems that also affect the Debian package, you can and
46probably should use the Debian BTS, too, because, after all, it's also a 246probably should use the Debian BTS, too, because, after all, it's also a
47bug in the Debian version and it serves as a reminder for other users that 247bug in the Debian version and it serves as a reminder for other users that
48might encounter the same issue. 248might encounter the same issue.
249
250=item I am maintaining rxvt-unicode for distribution/OS XXX, any
251recommendation?
252
253You should build one binary with the default options. F<configure>
254now enables most useful options, and the trend goes to making them
255runtime-switchable, too, so there is usually no drawback to enbaling them,
256except higher disk and possibly memory usage. The perl interpreter should
257be enabled, as important functionality (menus, selection, likely more in
258the future) depends on it.
259
260You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources
261system-wide (except maybe with C<defaults>). This will result in useful
262behaviour. If your distribution aims at low memory, add an empty
263C<perl-ext-common> resource to the app-defaults file. This will keep the
264perl interpreter disabled until the user enables it.
265
266If you can/want build more binaries, I recommend building a minimal
267one with C<--disable-everything> (very useful) and a maximal one with
268C<--enable-everything> (less useful, it will be very big due to a lot of
269encodings built-in that increase download times and are rarely used).
270
271=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?
272
273It should be, starting with release 7.1. You are encouraged to properly
274install urxvt with privileges necessary for your OS now.
275
276When rxvt-unicode detects that it runs setuid or setgid, it will fork
277into a helper process for privileged operations (pty handling on some
278systems, utmp/wtmp/lastlog handling on others) and drop privileges
279immediately. This is much safer than most other terminals that keep
280privileges while running (but is more relevant to urxvt, as it contains
281things as perl interpreters, which might be "helpful" to attackers).
282
283This forking is done as the very first within main(), which is very early
284and reduces possible bugs to initialisation code run before main(), or
285things like the dynamic loader of your system, which should result in very
286little risk.
49 287
50=item When I log-in to another system it tells me about missing terminfo data? 288=item When I log-in to another system it tells me about missing terminfo data?
51 289
52The terminal description used by rxvt-unicode is not as widely available 290The terminal description used by rxvt-unicode is not as widely available
53as that for xterm, or even rxvt (for which the same problem often arises). 291as that for xterm, or even rxvt (for which the same problem often arises).
450=item My input method wants <some encoding> but I want UTF-8, what can I do? 688=item My input method wants <some encoding> but I want UTF-8, what can I do?
451 689
452You can specify separate locales for the input method and the rest of the 690You can specify separate locales for the input method and the rest of the
453terminal, using the resource C<imlocale>: 691terminal, using the resource C<imlocale>:
454 692
455 URxvt*imlocale: ja_JP.EUC-JP 693 URxvt.imlocale: ja_JP.EUC-JP
456 694
457Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still 695Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still
458use your input method. Please note, however, that you will not be able to 696use your input method. Please note, however, that you will not be able to
459input characters outside C<EUC-JP> in a normal way then, as your input 697input characters outside C<EUC-JP> in a normal way then, as your input
460method limits you. 698method limits you.
506 744
507Make sure that mouse reporting is actually turned off since killing 745Make sure that mouse reporting is actually turned off since killing
508some editors prematurely may leave the mouse in mouse report mode. I've 746some editors prematurely may leave the mouse in mouse report mode. I've
509heard that tcsh may use mouse reporting unless it otherwise specified. A 747heard that tcsh may use mouse reporting unless it otherwise specified. A
510quick check is to see if cut/paste works when the Alt or Shift keys are 748quick check is to see if cut/paste works when the Alt or Shift keys are
511depressed. See @@RXVT_NAME@@(7) 749depressed.
512 750
513=item What's with this bold/blink stuff? 751=item What's with this bold/blink stuff?
514 752
515If no bold colour is set via C<colorBD:>, bold will invert text using the 753If no bold colour is set via C<colorBD:>, bold will invert text using the
516standard foreground colour. 754standard foreground colour.
605 843
606 # use Backspace = ^? 844 # use Backspace = ^?
607 $ stty erase ^? 845 $ stty erase ^?
608 $ @@RXVT_NAME@@ 846 $ @@RXVT_NAME@@
609 847
610Toggle with C<ESC [ 36 h> / C<ESC [ 36 l> as documented in @@RXVT_NAME@@(7). 848Toggle with C<ESC [ 36 h> / C<ESC [ 36 l>.
611 849
612For an existing rxvt-unicode: 850For an existing rxvt-unicode:
613 851
614 # use Backspace = ^H 852 # use Backspace = ^H
615 $ stty erase ^H 853 $ stty erase ^H
733 971
734=head1 DESCRIPTION 972=head1 DESCRIPTION
735 973
736The rest of this document describes various technical aspects of 974The rest of this document describes various technical aspects of
737B<rxvt-unicode>. First the description of supported command sequences, 975B<rxvt-unicode>. First the description of supported command sequences,
738followed by menu and pixmap support and last by a description of all 976followed by pixmap support and last by a description of all features
739features selectable at C<configure> time. 977selectable at C<configure> time.
740 978
741=head1 Definitions 979=head1 Definitions
742 980
743=over 4 981=over 4
744 982
1312 B<< C<h> >> Send Mouse X & Y on button press. 1550 B<< C<h> >> Send Mouse X & Y on button press.
1313 B<< C<l> >> No mouse reporting. 1551 B<< C<l> >> No mouse reporting.
1314 1552
1315=end table 1553=end table
1316 1554
1317=item B<< C<Ps = 10> >> (B<rxvt>)
1318
1319=begin table
1320
1321 B<< C<h> >> menuBar visible
1322 B<< C<l> >> menuBar invisible
1323
1324=end table
1325
1326=item B<< C<Ps = 25> >> 1555=item B<< C<Ps = 25> >>
1327 1556
1328=begin table 1557=begin table
1329 1558
1330 B<< C<h> >> Visible cursor {cnorm/cvvis} 1559 B<< C<h> >> Visible cursor {cnorm/cvvis}
1443 1672
1444=begin table 1673=begin table
1445 1674
1446 B<< C<h> >> Scroll to bottom when a key is pressed 1675 B<< C<h> >> Scroll to bottom when a key is pressed
1447 B<< C<l> >> Don't scroll to bottom when a key is pressed 1676 B<< C<l> >> Don't scroll to bottom when a key is pressed
1677
1678=end table
1679
1680=item B<< C<Ps = 1021> >> (B<rxvt>)
1681
1682=begin table
1683
1684 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>)
1685 B<< C<l> >> Font styles have no effect on intensity (Compile styles)
1448 1686
1449=end table 1687=end table
1450 1688
1451=item B<< C<Ps = 1047> >> 1689=item B<< C<Ps = 1047> >>
1452 1690
1501 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)> 1739 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)>
1502 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)> 1740 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)>
1503 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >> 1741 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >>
1504 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >> 1742 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >>
1505 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >> 1743 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >>
1506 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> 1744 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
1507 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> 1745 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1508 B<< C<Ps = 20> >> Change default background to B<< C<Pt> >> 1746 B<< C<Ps = 20> >> Change background pixmap parameters (see section XPM) (Compile XPM).
1509 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. 1747 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>.
1510 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 1748 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
1511 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>. 1749 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>.
1512 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> >> 1750 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> >>
1513 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 1751 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >>
1514 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). 1752 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).
1515 B<< C<Ps = 703> >> Menubar command B<< C<Pt> >> (Compile menubar). 1753 B<< C<Ps = 702> >> Request version if B<< C<Pt> >> is B<< C<?> >>, returning C<rxvt-unicode>, the resource name, the major and minor version numbers, e.g. C<ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST>.
1516 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >> 1754 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >>
1517 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency). 1755 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency).
1756 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >>
1757 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
1518 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>. 1758 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
1519 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1759 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1520 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1760 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1521 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1761 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1522 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills). 1762 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
1523 B<< C<Ps = 721> >> Move viewing window down by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills). 1763 B<< C<Ps = 721> >> Move viewing window down by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
1764 B<< C<Ps = 777> >> Call the perl extension with the given string, which should be of the form C<extension:parameters> (Compile perl).
1524 1765
1525=end table 1766=end table
1526 1767
1527=back 1768=back
1528 1769
1529X<menuBar>
1530
1531=head1 menuBar
1532
1533B<< The exact syntax used is I<almost> solidified. >>
1534In the menus, B<DON'T> try to use menuBar commands that add or remove a
1535menuBar.
1536
1537Note that in all of the commands, the B<< I</path/> >> I<cannot> be
1538omitted: use B<./> to specify a menu relative to the current menu.
1539
1540=head2 Overview of menuBar operation
1541
1542For the menuBar XTerm escape sequence C<ESC ] 703 ; Pt ST>, the syntax
1543of C<Pt> can be used for a variety of tasks:
1544
1545At the top level is the current menuBar which is a member of a circular
1546linked-list of other such menuBars.
1547
1548The menuBar acts as a parent for the various drop-down menus, which in
1549turn, may have labels, separator lines, menuItems and subMenus.
1550
1551The menuItems are the useful bits: you can use them to mimic keyboard
1552input or even to send text or escape sequences back to rxvt.
1553
1554The menuBar syntax is intended to provide a simple yet robust method of
1555constructing and manipulating menus and navigating through the
1556menuBars.
1557
1558The first step is to use the tag B<< [menu:I<name>] >> which creates
1559the menuBar called I<name> and allows access. You may now or menus,
1560subMenus, and menuItems. Finally, use the tag B<[done]> to set the
1561menuBar access as B<readonly> to prevent accidental corruption of the
1562menus. To re-access the current menuBar for alterations, use the tag
1563B<[menu]>, make the alterations and then use B<[done]>
1564
1565X<menuBarCommands>
1566
1567=head2 Commands
1568
1569=over 4
1570
1571=item B<< [menu:+I<name>] >>
1572
1573access the named menuBar for creation or alteration. If a new menuBar
1574is created, it is called I<name> (max of 15 chars) and the current
1575menuBar is pushed onto the stack
1576
1577=item B<[menu]>
1578
1579access the current menuBar for alteration
1580
1581=item B<< [title:+I<string>] >>
1582
1583set the current menuBar's title to I<string>, which may contain the
1584following format specifiers:
1585
1586 B<%n> rxvt name (as per the B<-name> command-line option)
1587 B<%v> rxvt version
1588 B<%%> literal B<%> character
1589
1590=item B<[done]>
1591
1592set menuBar access as B<readonly>.
1593End-of-file tag for B<< [read:+I<file>] >> operations.
1594
1595=item B<< [read:+I<file>] >>
1596
1597read menu commands directly from I<file> (extension ".menu" will be
1598appended if required.) Start reading at a line with B<[menu]> or B<<
1599[menu:+I<name> >> and continuing until B<[done]> is encountered.
1600
1601Blank and comment lines (starting with B<#>) are ignored. Actually,
1602since any invalid menu commands are also ignored, almost anything could
1603be construed as a comment line, but this may be tightened up in the
1604future ... so don't count on it!.
1605
1606=item B<< [read:+I<file>;+I<name>] >>
1607
1608The same as B<< [read:+I<file>] >>, but start reading at a line with
1609B<< [menu:+I<name>] >> and continuing until B<< [done:+I<name>] >> or
1610B<[done]> is encountered.
1611
1612=item B<[dump]>
1613
1614dump all menuBars to the file B</tmp/rxvt-PID> in a format suitable for
1615later rereading.
1616
1617=item B<[rm:name]>
1618
1619remove the named menuBar
1620
1621=item B<[rm] [rm:]>
1622
1623remove the current menuBar
1624
1625=item B<[rm*] [rm:*]>
1626
1627remove all menuBars
1628
1629=item B<[swap]>
1630
1631swap the top two menuBars
1632
1633=item B<[prev]>
1634
1635access the previous menuBar
1636
1637=item B<[next]>
1638
1639access the next menuBar
1640
1641=item B<[show]>
1642
1643Enable display of the menuBar
1644
1645=item B<[hide]>
1646
1647Disable display of the menuBar
1648
1649=item B<< [pixmap:+I<name>] >>
1650
1651=item B<< [pixmap:+I<name>;I<scaling>] >>
1652
1653(set the background pixmap globally
1654
1655B<< A Future implementation I<may> make this local to the menubar >>)
1656
1657=item B<< [:+I<command>:] >>
1658
1659ignore the menu readonly status and issue a I<command> to or a menu or
1660menuitem or change the ; a useful shortcut for setting the quick arrows
1661from a menuBar.
1662
1663=back
1664
1665X<menuBarAdd>
1666
1667=head2 Adding and accessing menus
1668
1669The following commands may also be B<+> prefixed.
1670
1671=over 4
1672
1673=item B</+>
1674
1675access menuBar top level
1676
1677=item B<./+>
1678
1679access current menu level
1680
1681=item B<../+>
1682
1683access parent menu (1 level up)
1684
1685=item B<../../>
1686
1687access parent menu (multiple levels up)
1688
1689=item B<< I</path/>menu >>
1690
1691add/access menu
1692
1693=item B<< I</path/>menu/* >>
1694
1695add/access menu and clear it if it exists
1696
1697=item B<< I</path/>{-} >>
1698
1699add separator
1700
1701=item B<< I</path/>{item} >>
1702
1703add B<item> as a label
1704
1705=item B<< I</path/>{item} action >>
1706
1707add/alter I<menuitem> with an associated I<action>
1708
1709=item B<< I</path/>{item}{right-text} >>
1710
1711add/alter I<menuitem> with B<right-text> as the right-justified text
1712and as the associated I<action>
1713
1714=item B<< I</path/>{item}{rtext} action >>
1715
1716add/alter I<menuitem> with an associated I<action> and with B<rtext> as
1717the right-justified text.
1718
1719=back
1720
1721=over 4
1722
1723=item Special characters in I<action> must be backslash-escaped:
1724
1725B<\a \b \E \e \n \r \t \octal>
1726
1727=item or in control-character notation:
1728
1729B<^@, ^A .. ^Z .. ^_, ^?>
1730
1731=back
1732
1733To send a string starting with a B<NUL> (B<^@>) character to the
1734program, start I<action> with a pair of B<NUL> characters (B<^@^@>),
1735the first of which will be stripped off and the balance directed to the
1736program. Otherwise if I<action> begins with B<NUL> followed by
1737non-+B<NUL> characters, the leading B<NUL> is stripped off and the
1738balance is sent back to rxvt.
1739
1740As a convenience for the many Emacs-type editors, I<action> may start
1741with B<M-> (eg, B<M-$> is equivalent to B<\E$>) and a B<CR> will be
1742appended if missed from B<M-x> commands.
1743
1744As a convenience for issuing XTerm B<ESC ]> sequences from a menubar (or
1745quick arrow), a B<BEL> (B<^G>) will be appended if needed.
1746
1747=over 4
1748
1749=item For example,
1750
1751B<M-xapropos> is equivalent to B<\Exapropos\r>
1752
1753=item and
1754
1755B<\E]703;mona;100> is equivalent to B<\E]703;mona;100\a>
1756
1757=back
1758
1759The option B<< {I<right-rtext>} >> will be right-justified. In the
1760absence of a specified action, this text will be used as the I<action>
1761as well.
1762
1763=over 4
1764
1765=item For example,
1766
1767B</File/{Open}{^X^F}> is equivalent to B</File/{Open}{^X^F} ^X^F>
1768
1769=back
1770
1771The left label I<is> necessary, since it's used for matching, but
1772implicitly hiding the left label (by using same name for both left and
1773right labels), or explicitly hiding the left label (by preceeding it
1774with a dot), makes it possible to have right-justified text only.
1775
1776=over 4
1777
1778=item For example,
1779
1780B</File/{Open}{Open} Open-File-Action>
1781
1782=item or hiding it
1783
1784B</File/{.anylabel}{Open} Open-File-Action>
1785
1786=back
1787
1788X<menuBarRemove>
1789
1790=head2 Removing menus
1791
1792=over 4
1793
1794=item B<< -/*+ >>
1795
1796remove all menus from the menuBar, the same as B<[clear]>
1797
1798=item B<< -+I</path>menu+ >>
1799
1800remove menu
1801
1802=item B<< -+I</path>{item}+ >>
1803
1804remove item
1805
1806=item B<< -+I</path>{-} >>
1807
1808remove separator)
1809
1810=item B<-/path/menu/*>
1811
1812remove all items, separators and submenus from menu
1813
1814=back
1815
1816X<menuBarArrows>
1817
1818=head2 Quick Arrows
1819
1820The menus also provide a hook for I<quick arrows> to provide easier
1821user access. If nothing has been explicitly set, the default is to
1822emulate the curror keys. The syntax permits each arrow to be altered
1823individually or all four at once without re-entering their common
1824beginning/end text. For example, to explicitly associate cursor actions
1825with the arrows, any of the following forms could be used:
1826
1827=over 4
1828
1829=item B<< <r>+I<Right> >>
1830
1831=item B<< <l>+I<Left> >>
1832
1833=item B<< <u>+I<Up> >>
1834
1835=item B<< <d>+I<Down> >>
1836
1837Define actions for the respective arrow buttons
1838
1839=item B<< <b>+I<Begin> >>
1840
1841=item B<< <e>+I<End> >>
1842
1843Define common beginning/end parts for I<quick arrows> which used in
1844conjunction with the above <r> <l> <u> <d> constructs
1845
1846=back
1847
1848=over 4
1849
1850=item For example, define arrows individually,
1851
1852 <u>\E[A
1853
1854 <d>\E[B
1855
1856 <r>\E[C
1857
1858 <l>\E[D
1859
1860=item or all at once
1861
1862 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1863
1864=item or more compactly (factoring out common parts)
1865
1866 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
1867
1868=back
1869
1870X<menuBarSummary>
1871
1872=head2 Command Summary
1873
1874A short summary of the most I<common> commands:
1875
1876=over 4
1877
1878=item [menu:name]
1879
1880use an existing named menuBar or start a new one
1881
1882=item [menu]
1883
1884use the current menuBar
1885
1886=item [title:string]
1887
1888set menuBar title
1889
1890=item [done]
1891
1892set menu access to readonly and, if reading from a file, signal EOF
1893
1894=item [done:name]
1895
1896if reading from a file using [read:file;name] signal EOF
1897
1898=item [rm:name]
1899
1900remove named menuBar(s)
1901
1902=item [rm] [rm:]
1903
1904remove current menuBar
1905
1906=item [rm*] [rm:*]
1907
1908remove all menuBar(s)
1909
1910=item [swap]
1911
1912swap top two menuBars
1913
1914=item [prev]
1915
1916access the previous menuBar
1917
1918=item [next]
1919
1920access the next menuBar
1921
1922=item [show]
1923
1924map menuBar
1925
1926=item [hide]
1927
1928unmap menuBar
1929
1930=item [pixmap;file]
1931
1932=item [pixmap;file;scaling]
1933
1934set a background pixmap
1935
1936=item [read:file]
1937
1938=item [read:file;name]
1939
1940read in a menu from a file
1941
1942=item [dump]
1943
1944dump out all menuBars to /tmp/rxvt-PID
1945
1946=item /
1947
1948access menuBar top level
1949
1950=item ./
1951
1952=item ../
1953
1954=item ../../
1955
1956access current or parent menu level
1957
1958=item /path/menu
1959
1960add/access menu
1961
1962=item /path/{-}
1963
1964add separator
1965
1966=item /path/{item}{rtext} action
1967
1968add/alter menu item
1969
1970=item -/*
1971
1972remove all menus from the menuBar
1973
1974=item -/path/menu
1975
1976remove menu items, separators and submenus from menu
1977
1978=item -/path/menu
1979
1980remove menu
1981
1982=item -/path/{item}
1983
1984remove item
1985
1986=item -/path/{-}
1987
1988remove separator
1989
1990=item <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
1991
1992menu quick arrows
1993
1994=back
1995X<XPM> 1770X<XPM>
1996 1771
1997=head1 XPM 1772=head1 XPM
1998 1773
1999For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value 1774For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value
2185=end table 1960=end table
2186 1961
2187=head1 CONFIGURE OPTIONS 1962=head1 CONFIGURE OPTIONS
2188 1963
2189General hint: if you get compile errors, then likely your configuration 1964General hint: if you get compile errors, then likely your configuration
2190hasn't been tested well. Either try with --enable-everything or use the 1965hasn't been tested well. Either try with C<--enable-everything> or use
2191./reconf script as a base for experiments. ./reconf is used by myself, 1966the F<./reconf> script as a base for experiments. F<./reconf> is used by
2192so it should generally be a working config. Of course, you should always 1967myself, so it should generally be a working config. Of course, you should
2193report when a combination doesn't work, so it can be fixed. Marc Lehmann 1968always report when a combination doesn't work, so it can be fixed. Marc
2194<rxvt@schmorp.de>. 1969Lehmann <rxvt@schmorp.de>.
1970
1971All
2195 1972
2196=over 4 1973=over 4
2197 1974
2198=item --enable-everything 1975=item --enable-everything
2199 1976
2200Add support for all non-multichoice options listed in "./configure 1977Add (or remove) support for all non-multichoice options listed in "./configure
2201--help". Note that unlike other enable options this is order dependant. 1978--help".
1979
2202You can specify this and then disable options which this enables by 1980You can specify this and then disable options you do not like by
2203I<following> this with the appropriate commands. 1981I<following> this with the appropriate C<--disable-...> arguments,
1982or you can start with a minimal configuration by specifying
1983C<--disable-everything> and than adding just the C<--enable-...> arguments
1984you want.
2204 1985
2205=item --enable-xft 1986=item --enable-xft (default: enabled)
2206 1987
2207Add support for Xft (anti-aliases, among others) fonts. Xft fonts are 1988Add support for Xft (anti-aliases, among others) fonts. Xft fonts are
2208slower and require lots of memory, but as long as you don't use them, you 1989slower and require lots of memory, but as long as you don't use them, you
2209don't pay for them. 1990don't pay for them.
2210 1991
2211=item --enable-font-styles 1992=item --enable-font-styles (default: on)
2212 1993
2213Add support for B<bold>, I<italic> and B<< I<bold italic> >> font 1994Add support for B<bold>, I<italic> and B<< I<bold italic> >> font
2214styles. The fonts can be set manually or automatically. 1995styles. The fonts can be set manually or automatically.
2215 1996
2216=item --with-codesets=NAME,... 1997=item --with-codesets=NAME,... (default: all)
2217 1998
2218Compile in support for additional codeset (encoding) groups (C<eu>, C<vn> 1999Compile in support for additional codeset (encoding) groups (C<eu>, C<vn>
2219are always compiled in, which includes most 8-bit character sets). These 2000are always compiled in, which includes most 8-bit character sets). These
2220codeset tables are used for driving X11 core fonts, they are not required 2001codeset tables are used for driving X11 core fonts, they are not required
2221for Xft fonts, although having them compiled in lets rxvt-unicode choose 2002for Xft fonts, although having them compiled in lets rxvt-unicode choose
2232 jp_ext rarely used but big japanese encodings 2013 jp_ext rarely used but big japanese encodings
2233 kr korean encodings 2014 kr korean encodings
2234 2015
2235=end table 2016=end table
2236 2017
2237=item --enable-xim 2018=item --enable-xim (default: on)
2238 2019
2239Add support for XIM (X Input Method) protocol. This allows using 2020Add support for XIM (X Input Method) protocol. This allows using
2240alternative input methods (e.g. kinput2) and will also correctly 2021alternative input methods (e.g. kinput2) and will also correctly
2241set up the input for people using dead keys or compose keys. 2022set up the input for people using dead keys or compose keys.
2242 2023
2243=item --enable-unicode3 2024=item --enable-unicode3 (default: off)
2025
2026Recommended to stay off unless you really need non-BMP characters.
2244 2027
2245Enable direct support for displaying unicode codepoints above 2028Enable direct support for displaying unicode codepoints above
224665535 (the basic multilingual page). This increases storage 202965535 (the basic multilingual page). This increases storage
2247requirements per character from 2 to 4 bytes. X11 fonts do not yet 2030requirements per character from 2 to 4 bytes. X11 fonts do not yet
2248support these extra characters, but Xft does. 2031support these extra characters, but Xft does.
2251even without this flag, but the number of such characters is 2034even without this flag, but the number of such characters is
2252limited to a view thousand (shared with combining characters, 2035limited to a view thousand (shared with combining characters,
2253see next switch), and right now rxvt-unicode cannot display them 2036see next switch), and right now rxvt-unicode cannot display them
2254(input/output and cut&paste still work, though). 2037(input/output and cut&paste still work, though).
2255 2038
2256=item --enable-combining 2039=item --enable-combining (default: on)
2257 2040
2258Enable automatic composition of combining characters into 2041Enable automatic composition of combining characters into
2259composite characters. This is required for proper viewing of text 2042composite characters. This is required for proper viewing of text
2260where accents are encoded as seperate unicode characters. This is 2043where accents are encoded as seperate unicode characters. This is
2261done by using precomposited characters when available or creating 2044done by using precomposited characters when available or creating
2262new pseudo-characters when no precomposed form exists. 2045new pseudo-characters when no precomposed form exists.
2263 2046
2264Without --enable-unicode3, the number of additional precomposed characters 2047Without --enable-unicode3, the number of additional precomposed
2265is rather limited (2048, if this is full, rxvt-unicode will use the 2048characters is somewhat limited (the 6400 private use characters will be
2266private use area, extending the number of combinations to 8448). With
2267--enable-unicode3, no practical limit exists. 2049(ab-)used). With --enable-unicode3, no practical limit exists.
2268 2050
2269This option will also enable storage (but not display) of characters 2051This option will also enable storage (but not display) of characters
2270beyond plane 0 (>65535) when --enable-unicode3 was not specified. 2052beyond plane 0 (>65535) when --enable-unicode3 was not specified.
2271 2053
2272The combining table also contains entries for arabic presentation forms, 2054The combining table also contains entries for arabic presentation forms,
2273but these are not currently used. Bug me if you want these to be used (and 2055but these are not currently used. Bug me if you want these to be used (and
2274tell me how these are to be used...). 2056tell me how these are to be used...).
2275 2057
2276=item --enable-fallback(=CLASS) 2058=item --enable-fallback(=CLASS) (default: Rxvt)
2277 2059
2278When reading resource settings, also read settings for class CLASS 2060When reading resource settings, also read settings for class CLASS. To
2279(default: Rxvt). To disable resource fallback use --disable-fallback. 2061disable resource fallback use --disable-fallback.
2280 2062
2281=item --with-res-name=NAME 2063=item --with-res-name=NAME (default: urxvt)
2282 2064
2283Use the given name (default: urxvt) as default application name when 2065Use the given name as default application name when
2284reading resources. Specify --with-res-name=rxvt to replace rxvt. 2066reading resources. Specify --with-res-name=rxvt to replace rxvt.
2285 2067
2286=item --with-res-class=CLASS 2068=item --with-res-class=CLASS /default: URxvt)
2287 2069
2288Use the given class (default: URxvt) as default application class 2070Use the given class as default application class
2289when reading resources. Specify --with-res-class=Rxvt to replace 2071when reading resources. Specify --with-res-class=Rxvt to replace
2290rxvt. 2072rxvt.
2291 2073
2292=item --enable-utmp 2074=item --enable-utmp (default: on)
2293 2075
2294Write user and tty to utmp file (used by programs like F<w>) at 2076Write user and tty to utmp file (used by programs like F<w>) at
2295start of rxvt execution and delete information when rxvt exits. 2077start of rxvt execution and delete information when rxvt exits.
2296 2078
2297=item --enable-wtmp 2079=item --enable-wtmp (default: on)
2298 2080
2299Write user and tty to wtmp file (used by programs like F<last>) at 2081Write user and tty to wtmp file (used by programs like F<last>) at
2300start of rxvt execution and write logout when rxvt exits. This 2082start of rxvt execution and write logout when rxvt exits. This
2301option requires --enable-utmp to also be specified. 2083option requires --enable-utmp to also be specified.
2302 2084
2303=item --enable-lastlog 2085=item --enable-lastlog (default: on)
2304 2086
2305Write user and tty to lastlog file (used by programs like 2087Write user and tty to lastlog file (used by programs like
2306F<lastlogin>) at start of rxvt execution. This option requires 2088F<lastlogin>) at start of rxvt execution. This option requires
2307--enable-utmp to also be specified. 2089--enable-utmp to also be specified.
2308 2090
2309=item --enable-xpm-background 2091=item --enable-xpm-background (default: on)
2310 2092
2311Add support for XPM background pixmaps. 2093Add support for XPM background pixmaps.
2312 2094
2313=item --enable-transparency 2095=item --enable-transparency (default: on)
2314 2096
2315Add support for inheriting parent backgrounds thus giving a fake 2097Add support for inheriting parent backgrounds thus giving a fake
2316transparency to the term. 2098transparency to the term.
2317 2099
2318=item --enable-fading 2100=item --enable-fading (default: on)
2319 2101
2320Add support for fading the text when focus is lost. 2102Add support for fading the text when focus is lost (requires C<--enable-transparency>).
2321 2103
2322=item --enable-tinting 2104=item --enable-tinting (default: on)
2323 2105
2324Add support for tinting of transparent backgrounds. 2106Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2325 2107
2326=item --enable-menubar
2327
2328Add support for our menu bar system (this interacts badly with
2329dynamic locale switching currently).
2330
2331=item --enable-rxvt-scroll 2108=item --enable-rxvt-scroll (default: on)
2332 2109
2333Add support for the original rxvt scrollbar. 2110Add support for the original rxvt scrollbar.
2334 2111
2335=item --enable-next-scroll 2112=item --enable-next-scroll (default: on)
2336 2113
2337Add support for a NeXT-like scrollbar. 2114Add support for a NeXT-like scrollbar.
2338 2115
2339=item --enable-xterm-scroll 2116=item --enable-xterm-scroll (default: on)
2340 2117
2341Add support for an Xterm-like scrollbar. 2118Add support for an Xterm-like scrollbar.
2342 2119
2343=item --enable-plain-scroll 2120=item --enable-plain-scroll (default: on)
2344 2121
2345Add support for a very unobtrusive, plain-looking scrollbar that 2122Add support for a very unobtrusive, plain-looking scrollbar that
2346is the favourite of the rxvt-unicode author, having used it for 2123is the favourite of the rxvt-unicode author, having used it for
2347many years. 2124many years.
2348 2125
2349=item --enable-half-shadow 2126=item --enable-ttygid (default: off)
2350
2351Make shadows on the scrollbar only half the normal width & height.
2352only applicable to rxvt scrollbars.
2353
2354=item --enable-ttygid
2355 2127
2356Change tty device setting to group "tty" - only use this if 2128Change tty device setting to group "tty" - only use this if
2357your system uses this type of security. 2129your system uses this type of security.
2358 2130
2359=item --disable-backspace-key 2131=item --disable-backspace-key
2360 2132
2361Disable any handling of the backspace key by us - let the X server 2133Removes any handling of the backspace key by us - let the X server do it.
2134
2135=item --disable-delete-key
2136
2137Removes any handling of the delete key by us - let the X server
2362do it. 2138do it.
2363 2139
2364=item --disable-delete-key
2365
2366Disable any handling of the delete key by us - let the X server
2367do it.
2368
2369=item --disable-resources 2140=item --disable-resources
2370 2141
2371Remove all resources checking. 2142Removes any support for resource checking.
2372
2373=item --enable-xgetdefault
2374
2375Make resources checking via XGetDefault() instead of our small
2376version which only checks ~/.Xdefaults, or if that doesn't exist then
2377~/.Xresources.
2378
2379Please note that nowadays, things like XIM will automatically pull in and
2380use the full X resource manager, so the overhead of using it might be very
2381small, if nonexistant.
2382
2383=item --enable-strings
2384
2385Add support for our possibly faster memset() function and other
2386various routines, overriding your system's versions which may
2387have been hand-crafted in assembly or may require extra libraries
2388to link in. (this breaks ANSI-C rules and has problems on many
2389GNU/Linux systems).
2390 2143
2391=item --disable-swapscreen 2144=item --disable-swapscreen
2392 2145
2393Remove support for swap screen. 2146Remove support for secondary/swap screen.
2394 2147
2395=item --enable-frills 2148=item --enable-frills (default: on)
2396 2149
2397Add support for many small features that are not essential but nice to 2150Add support for many small features that are not essential but nice to
2398have. Normally you want this, but for very small binaries you may want to 2151have. Normally you want this, but for very small binaries you may want to
2399disable this. 2152disable this.
2400 2153
2401A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2154A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2402in combination with other switches) is: 2155in combination with other switches) is:
2403 2156
2404 MWM-hints 2157 MWM-hints
2405 EWMH-hints (pid, utf8 names) and protocols (ping) 2158 EWMH-hints (pid, utf8 names) and protocols (ping)
2406 seperate underline colour 2159 seperate underline colour (-underlineColor)
2407 settable border widths and borderless switch 2160 settable border widths and borderless switch (-w, -b, -bl)
2161 visual depth selection (-depth)
2408 settable extra linespacing 2162 settable extra linespacing /-lsp)
2409 iso-14755-2 and -3, and visual feedback 2163 iso-14755-2 and -3, and visual feedback
2164 tripleclickwords (-tcw)
2165 settable insecure mode (-insecure)
2166 keysym remapping support
2167 cursor blinking and underline cursor (-cb, -uc)
2168 XEmbed support (-embed)
2169 user-pty (-pty-fd)
2170 hold on exit (-hold)
2171 skip builtin block graphics (-sbg)
2172
2173It also enabled some non-essential features otherwise disabled, such as:
2174
2175 some round-trip time optimisations
2176 nearest color allocation on pseudocolor screens
2177 UTF8_STRING supporr for selection
2178 sgr modes 90..97 and 100..107
2410 backindex and forwardindex escape sequence 2179 backindex and forwardindex escape sequences
2180 view change/zero scorllback esacpe sequences
2181 locale switching escape sequence
2411 window op and some xterm/OSC escape sequences 2182 window op and some xterm/OSC escape sequences
2412 tripleclickwords 2183 rectangular selections
2413 settable insecure mode 2184 trailing space removal for selections
2414 keysym remapping support 2185 verbose X error handling
2415 cursor blinking and underline cursor
2416 -embed and -pty-fd options
2417 2186
2418=item --enable-iso14755 2187=item --enable-iso14755 (default: on)
2419 2188
2420Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2189Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2421F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by 2190F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
2422C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with 2191C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with
2423this switch. 2192this switch.
2424 2193
2425=item --enable-keepscrolling 2194=item --enable-keepscrolling (default: on)
2426 2195
2427Add support for continual scrolling of the display when you hold 2196Add support for continual scrolling of the display when you hold
2428the mouse button down on a scrollbar arrow. 2197the mouse button down on a scrollbar arrow.
2429 2198
2430=item --enable-mousewheel 2199=item --enable-mousewheel (default: on)
2431 2200
2432Add support for scrolling via mouse wheel or buttons 4 & 5. 2201Add support for scrolling via mouse wheel or buttons 4 & 5.
2433 2202
2434=item --enable-slipwheeling 2203=item --enable-slipwheeling (default: on)
2435 2204
2436Add support for continual scrolling (using the mouse wheel as an 2205Add support for continual scrolling (using the mouse wheel as an
2437accelerator) while the control key is held down. This option 2206accelerator) while the control key is held down. This option
2438requires --enable-mousewheel to also be specified. 2207requires --enable-mousewheel to also be specified.
2439 2208
2440=item --disable-new-selection 2209=item --disable-new-selection
2441 2210
2442Remove support for mouse selection style like that of xterm. 2211Remove support for mouse selection style like that of xterm.
2443 2212
2444=item --enable-dmalloc 2213=item --enable-dmalloc (default: off)
2445 2214
2446Use Gray Watson's malloc - which is good for debugging See 2215Use Gray Watson's malloc - which is good for debugging See
2447http://www.letters.com/dmalloc/ for details If you use either this or the 2216http://www.letters.com/dmalloc/ for details If you use either this or the
2448next option, you may need to edit src/Makefile after compiling to point 2217next option, you may need to edit src/Makefile after compiling to point
2449DINCLUDE and DLIB to the right places. 2218DINCLUDE and DLIB to the right places.
2450 2219
2451You can only use either this option and the following (should 2220You can only use either this option and the following (should
2452you use either) . 2221you use either) .
2453 2222
2454=item --enable-dlmalloc 2223=item --enable-dlmalloc (default: off)
2455 2224
2456Use Doug Lea's malloc - which is good for a production version 2225Use Doug Lea's malloc - which is good for a production version
2457See L<http://g.oswego.edu/dl/html/malloc.html> for details. 2226See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2458 2227
2459=item --enable-smart-resize 2228=item --enable-smart-resize (default: on)
2460 2229
2461Add smart growth/shrink behaviour when changing font size via from hot 2230Add smart growth/shrink behaviour when changing font size via hot
2462keys. This should keep in a fixed position the rxvt corner which is 2231keys. This should keep the window corner which is closest to a corner of
2463closest to a corner of the screen. 2232the screen in a fixed position.
2464 2233
2465=item --enable-pointer-blank 2234=item --enable-pointer-blank (default: on)
2466 2235
2467Add support to have the pointer disappear when typing or inactive. 2236Add support to have the pointer disappear when typing or inactive.
2468 2237
2469=item --with-name=NAME 2238=item --enable-perl (default: on)
2470 2239
2240Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2241manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
2242in F<src/perl-ext/> for the extensions that are installed by default. The
2243perl interpreter that is used can be specified via the C<PERL> environment
2244variable when running configure.
2245
2246=item --with-name=NAME (default: urxvt)
2247
2471Set the basename for the installed binaries (default: C<urxvt>, resulting 2248Set the basename for the installed binaries, resulting
2472in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2249in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2473C<rxvt>. 2250C<rxvt>.
2474 2251
2475=item --with-term=NAME 2252=item --with-term=NAME (default: rxvt-unicode)
2476 2253
2477Change the environmental variable for the terminal to NAME (default 2254Change the environmental variable for the terminal to NAME.
2478C<rxvt-unicode>)
2479 2255
2480=item --with-terminfo=PATH 2256=item --with-terminfo=PATH
2481 2257
2482Change the environmental variable for the path to the terminfo tree to 2258Change the environmental variable for the path to the terminfo tree to
2483PATH. 2259PATH.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines