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.70 by root, Wed Jan 4 20:43:37 2006 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
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.
28 134
29=item Isn't rxvt supposed to be small? Don't all those features bloat? 135=item Isn't rxvt supposed to be small? Don't all those features bloat?
30 136
31I often get asked about this, and I think, no, they didn't cause extra 137I often get asked about this, and I think, no, they didn't cause extra
32bloat. If you compare a minimal rxvt and a minimal urxvt, you can see 138bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
62memory. 168memory.
63 169
64Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this 170Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this
65still fares rather well. And compared to some monsters like gnome-terminal 171still fares rather well. And compared to some monsters like gnome-terminal
66(21152k + extra 4204k in separate processes) or konsole (22200k + extra 172(21152k + extra 4204k in separate processes) or konsole (22200k + extra
6743180k in daemons that stay around after exit, plus half aminute of 17343180k in daemons that stay around after exit, plus half a minute of
68startup time, including the hundreds of warnings it spits out), it fares 174startup time, including the hundreds of warnings it spits out), it fares
69extremely well *g*. 175extremely well *g*.
70 176
71=item Why C++, isn't that unportable/bloated/uncool? 177=item Why C++, isn't that unportable/bloated/uncool?
72 178
102No large bloated libraries (of course, none were linked in statically), 208No large bloated libraries (of course, none were linked in statically),
103except maybe libX11 :) 209except maybe libX11 :)
104 210
105=item Does it support tabs, can I have a tabbed rxvt-unicode? 211=item Does it support tabs, can I have a tabbed rxvt-unicode?
106 212
107rxvt-unicode does not directly support tabs. It will work fine with 213Beginning with version 7.3, there is a perl extension that implements a
108tabbing functionality of many window managers or similar tabbing programs, 214simple tabbed terminal. It is installed by default, so any of these should
109and its embedding-features allow it to be embedded into other programs, 215give you tabs:
110as witnessed by F<doc/rxvt-tabbed> or the upcoming C<Gtk2::URxvt> perl 216
111module, which features a tabbed urxvt (murxvt) terminal as an example 217 @@RXVT_NAME@@ -pe tabbed
112embedding application. 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.
113 226
114=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?
115 228
116The version number is displayed with the usage (-h). Also the escape 229The version number is displayed with the usage (-h). Also the escape
117sequence C<ESC [ 8 n> sets the window title to the version number. When 230sequence C<ESC [ 8 n> sets the window title to the version number. When
119daemon. 232daemon.
120 233
121=item I am using Debian GNU/Linux and have a problem... 234=item I am using Debian GNU/Linux and have a problem...
122 235
123The Debian GNU/Linux package of rxvt-unicode in sarge contains large 236The Debian GNU/Linux package of rxvt-unicode in sarge contains large
124patches that considerably change the behaviour of rxvt-unicode. Before 237patches that considerably change the behaviour of rxvt-unicode (but
125reporting a bug to the original rxvt-unicode author please download and 238unfortunately this notice has been removed). Before reporting a bug to
126install the genuine version (L<http://software.schmorp.de#rxvt-unicode>) 239the original rxvt-unicode author please download and install the genuine
127and try to reproduce the problem. If you cannot, chances are that the 240version (L<http://software.schmorp.de#rxvt-unicode>) and try to reproduce
128problems 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
129reported 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
130the bug). 243Tracking System (use C<reportbug> to report the bug).
131 244
132For other problems that also affect the Debian package, you can and 245For other problems that also affect the Debian package, you can and
133probably 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
134bug 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
135might 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.
136 287
137=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?
138 289
139The terminal description used by rxvt-unicode is not as widely available 290The terminal description used by rxvt-unicode is not as widely available
140as 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).
537=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?
538 689
539You 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
540terminal, using the resource C<imlocale>: 691terminal, using the resource C<imlocale>:
541 692
542 URxvt*imlocale: ja_JP.EUC-JP 693 URxvt.imlocale: ja_JP.EUC-JP
543 694
544Now 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
545use 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
546input 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
547method limits you. 698method limits you.
593 744
594Make sure that mouse reporting is actually turned off since killing 745Make sure that mouse reporting is actually turned off since killing
595some 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
596heard that tcsh may use mouse reporting unless it otherwise specified. A 747heard that tcsh may use mouse reporting unless it otherwise specified. A
597quick 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
598depressed. See @@RXVT_NAME@@(7) 749depressed.
599 750
600=item What's with this bold/blink stuff? 751=item What's with this bold/blink stuff?
601 752
602If 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
603standard foreground colour. 754standard foreground colour.
692 843
693 # use Backspace = ^? 844 # use Backspace = ^?
694 $ stty erase ^? 845 $ stty erase ^?
695 $ @@RXVT_NAME@@ 846 $ @@RXVT_NAME@@
696 847
697Toggle 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>.
698 849
699For an existing rxvt-unicode: 850For an existing rxvt-unicode:
700 851
701 # use Backspace = ^H 852 # use Backspace = ^H
702 $ stty erase ^H 853 $ stty erase ^H
820 971
821=head1 DESCRIPTION 972=head1 DESCRIPTION
822 973
823The rest of this document describes various technical aspects of 974The rest of this document describes various technical aspects of
824B<rxvt-unicode>. First the description of supported command sequences, 975B<rxvt-unicode>. First the description of supported command sequences,
825followed by menu and pixmap support and last by a description of all 976followed by pixmap support and last by a description of all features
826features selectable at C<configure> time. 977selectable at C<configure> time.
827 978
828=head1 Definitions 979=head1 Definitions
829 980
830=over 4 981=over 4
831 982
1399 B<< C<h> >> Send Mouse X & Y on button press. 1550 B<< C<h> >> Send Mouse X & Y on button press.
1400 B<< C<l> >> No mouse reporting. 1551 B<< C<l> >> No mouse reporting.
1401 1552
1402=end table 1553=end table
1403 1554
1404=item B<< C<Ps = 10> >> (B<rxvt>)
1405
1406=begin table
1407
1408 B<< C<h> >> menuBar visible
1409 B<< C<l> >> menuBar invisible
1410
1411=end table
1412
1413=item B<< C<Ps = 25> >> 1555=item B<< C<Ps = 25> >>
1414 1556
1415=begin table 1557=begin table
1416 1558
1417 B<< C<h> >> Visible cursor {cnorm/cvvis} 1559 B<< C<h> >> Visible cursor {cnorm/cvvis}
1597 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)>
1598 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)>
1599 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> >>
1600 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> >>
1601 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> >>
1602 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]
1603 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]
1604 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).
1605 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> >>.
1606 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>
1607 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> >>.
1608 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> >>
1609 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> >>
1610 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).
1611 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>.
1612 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> >>
1613 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> >>
1614 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>.
1615 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).
1616 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).
1617 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).
1618 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).
1621 1765
1622=end table 1766=end table
1623 1767
1624=back 1768=back
1625 1769
1626X<menuBar>
1627
1628=head1 menuBar
1629
1630B<< The exact syntax used is I<almost> solidified. >>
1631In the menus, B<DON'T> try to use menuBar commands that add or remove a
1632menuBar.
1633
1634Note that in all of the commands, the B<< I</path/> >> I<cannot> be
1635omitted: use B<./> to specify a menu relative to the current menu.
1636
1637=head2 Overview of menuBar operation
1638
1639For the menuBar XTerm escape sequence C<ESC ] 703 ; Pt ST>, the syntax
1640of C<Pt> can be used for a variety of tasks:
1641
1642At the top level is the current menuBar which is a member of a circular
1643linked-list of other such menuBars.
1644
1645The menuBar acts as a parent for the various drop-down menus, which in
1646turn, may have labels, separator lines, menuItems and subMenus.
1647
1648The menuItems are the useful bits: you can use them to mimic keyboard
1649input or even to send text or escape sequences back to rxvt.
1650
1651The menuBar syntax is intended to provide a simple yet robust method of
1652constructing and manipulating menus and navigating through the
1653menuBars.
1654
1655The first step is to use the tag B<< [menu:I<name>] >> which creates
1656the menuBar called I<name> and allows access. You may now or menus,
1657subMenus, and menuItems. Finally, use the tag B<[done]> to set the
1658menuBar access as B<readonly> to prevent accidental corruption of the
1659menus. To re-access the current menuBar for alterations, use the tag
1660B<[menu]>, make the alterations and then use B<[done]>
1661
1662X<menuBarCommands>
1663
1664=head2 Commands
1665
1666=over 4
1667
1668=item B<< [menu:+I<name>] >>
1669
1670access the named menuBar for creation or alteration. If a new menuBar
1671is created, it is called I<name> (max of 15 chars) and the current
1672menuBar is pushed onto the stack
1673
1674=item B<[menu]>
1675
1676access the current menuBar for alteration
1677
1678=item B<< [title:+I<string>] >>
1679
1680set the current menuBar's title to I<string>, which may contain the
1681following format specifiers:
1682
1683 B<%n> rxvt name (as per the B<-name> command-line option)
1684 B<%v> rxvt version
1685 B<%%> literal B<%> character
1686
1687=item B<[done]>
1688
1689set menuBar access as B<readonly>.
1690End-of-file tag for B<< [read:+I<file>] >> operations.
1691
1692=item B<< [read:+I<file>] >>
1693
1694read menu commands directly from I<file> (extension ".menu" will be
1695appended if required.) Start reading at a line with B<[menu]> or B<<
1696[menu:+I<name> >> and continuing until B<[done]> is encountered.
1697
1698Blank and comment lines (starting with B<#>) are ignored. Actually,
1699since any invalid menu commands are also ignored, almost anything could
1700be construed as a comment line, but this may be tightened up in the
1701future ... so don't count on it!.
1702
1703=item B<< [read:+I<file>;+I<name>] >>
1704
1705The same as B<< [read:+I<file>] >>, but start reading at a line with
1706B<< [menu:+I<name>] >> and continuing until B<< [done:+I<name>] >> or
1707B<[done]> is encountered.
1708
1709=item B<[dump]>
1710
1711dump all menuBars to the file B</tmp/rxvt-PID> in a format suitable for
1712later rereading.
1713
1714=item B<[rm:name]>
1715
1716remove the named menuBar
1717
1718=item B<[rm] [rm:]>
1719
1720remove the current menuBar
1721
1722=item B<[rm*] [rm:*]>
1723
1724remove all menuBars
1725
1726=item B<[swap]>
1727
1728swap the top two menuBars
1729
1730=item B<[prev]>
1731
1732access the previous menuBar
1733
1734=item B<[next]>
1735
1736access the next menuBar
1737
1738=item B<[show]>
1739
1740Enable display of the menuBar
1741
1742=item B<[hide]>
1743
1744Disable display of the menuBar
1745
1746=item B<< [pixmap:+I<name>] >>
1747
1748=item B<< [pixmap:+I<name>;I<scaling>] >>
1749
1750(set the background pixmap globally
1751
1752B<< A Future implementation I<may> make this local to the menubar >>)
1753
1754=item B<< [:+I<command>:] >>
1755
1756ignore the menu readonly status and issue a I<command> to or a menu or
1757menuitem or change the ; a useful shortcut for setting the quick arrows
1758from a menuBar.
1759
1760=back
1761
1762X<menuBarAdd>
1763
1764=head2 Adding and accessing menus
1765
1766The following commands may also be B<+> prefixed.
1767
1768=over 4
1769
1770=item B</+>
1771
1772access menuBar top level
1773
1774=item B<./+>
1775
1776access current menu level
1777
1778=item B<../+>
1779
1780access parent menu (1 level up)
1781
1782=item B<../../>
1783
1784access parent menu (multiple levels up)
1785
1786=item B<< I</path/>menu >>
1787
1788add/access menu
1789
1790=item B<< I</path/>menu/* >>
1791
1792add/access menu and clear it if it exists
1793
1794=item B<< I</path/>{-} >>
1795
1796add separator
1797
1798=item B<< I</path/>{item} >>
1799
1800add B<item> as a label
1801
1802=item B<< I</path/>{item} action >>
1803
1804add/alter I<menuitem> with an associated I<action>
1805
1806=item B<< I</path/>{item}{right-text} >>
1807
1808add/alter I<menuitem> with B<right-text> as the right-justified text
1809and as the associated I<action>
1810
1811=item B<< I</path/>{item}{rtext} action >>
1812
1813add/alter I<menuitem> with an associated I<action> and with B<rtext> as
1814the right-justified text.
1815
1816=back
1817
1818=over 4
1819
1820=item Special characters in I<action> must be backslash-escaped:
1821
1822B<\a \b \E \e \n \r \t \octal>
1823
1824=item or in control-character notation:
1825
1826B<^@, ^A .. ^Z .. ^_, ^?>
1827
1828=back
1829
1830To send a string starting with a B<NUL> (B<^@>) character to the
1831program, start I<action> with a pair of B<NUL> characters (B<^@^@>),
1832the first of which will be stripped off and the balance directed to the
1833program. Otherwise if I<action> begins with B<NUL> followed by
1834non-+B<NUL> characters, the leading B<NUL> is stripped off and the
1835balance is sent back to rxvt.
1836
1837As a convenience for the many Emacs-type editors, I<action> may start
1838with B<M-> (eg, B<M-$> is equivalent to B<\E$>) and a B<CR> will be
1839appended if missed from B<M-x> commands.
1840
1841As a convenience for issuing XTerm B<ESC ]> sequences from a menubar (or
1842quick arrow), a B<BEL> (B<^G>) will be appended if needed.
1843
1844=over 4
1845
1846=item For example,
1847
1848B<M-xapropos> is equivalent to B<\Exapropos\r>
1849
1850=item and
1851
1852B<\E]703;mona;100> is equivalent to B<\E]703;mona;100\a>
1853
1854=back
1855
1856The option B<< {I<right-rtext>} >> will be right-justified. In the
1857absence of a specified action, this text will be used as the I<action>
1858as well.
1859
1860=over 4
1861
1862=item For example,
1863
1864B</File/{Open}{^X^F}> is equivalent to B</File/{Open}{^X^F} ^X^F>
1865
1866=back
1867
1868The left label I<is> necessary, since it's used for matching, but
1869implicitly hiding the left label (by using same name for both left and
1870right labels), or explicitly hiding the left label (by preceeding it
1871with a dot), makes it possible to have right-justified text only.
1872
1873=over 4
1874
1875=item For example,
1876
1877B</File/{Open}{Open} Open-File-Action>
1878
1879=item or hiding it
1880
1881B</File/{.anylabel}{Open} Open-File-Action>
1882
1883=back
1884
1885X<menuBarRemove>
1886
1887=head2 Removing menus
1888
1889=over 4
1890
1891=item B<< -/*+ >>
1892
1893remove all menus from the menuBar, the same as B<[clear]>
1894
1895=item B<< -+I</path>menu+ >>
1896
1897remove menu
1898
1899=item B<< -+I</path>{item}+ >>
1900
1901remove item
1902
1903=item B<< -+I</path>{-} >>
1904
1905remove separator)
1906
1907=item B<-/path/menu/*>
1908
1909remove all items, separators and submenus from menu
1910
1911=back
1912
1913X<menuBarArrows>
1914
1915=head2 Quick Arrows
1916
1917The menus also provide a hook for I<quick arrows> to provide easier
1918user access. If nothing has been explicitly set, the default is to
1919emulate the curror keys. The syntax permits each arrow to be altered
1920individually or all four at once without re-entering their common
1921beginning/end text. For example, to explicitly associate cursor actions
1922with the arrows, any of the following forms could be used:
1923
1924=over 4
1925
1926=item B<< <r>+I<Right> >>
1927
1928=item B<< <l>+I<Left> >>
1929
1930=item B<< <u>+I<Up> >>
1931
1932=item B<< <d>+I<Down> >>
1933
1934Define actions for the respective arrow buttons
1935
1936=item B<< <b>+I<Begin> >>
1937
1938=item B<< <e>+I<End> >>
1939
1940Define common beginning/end parts for I<quick arrows> which used in
1941conjunction with the above <r> <l> <u> <d> constructs
1942
1943=back
1944
1945=over 4
1946
1947=item For example, define arrows individually,
1948
1949 <u>\E[A
1950
1951 <d>\E[B
1952
1953 <r>\E[C
1954
1955 <l>\E[D
1956
1957=item or all at once
1958
1959 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1960
1961=item or more compactly (factoring out common parts)
1962
1963 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
1964
1965=back
1966
1967X<menuBarSummary>
1968
1969=head2 Command Summary
1970
1971A short summary of the most I<common> commands:
1972
1973=over 4
1974
1975=item [menu:name]
1976
1977use an existing named menuBar or start a new one
1978
1979=item [menu]
1980
1981use the current menuBar
1982
1983=item [title:string]
1984
1985set menuBar title
1986
1987=item [done]
1988
1989set menu access to readonly and, if reading from a file, signal EOF
1990
1991=item [done:name]
1992
1993if reading from a file using [read:file;name] signal EOF
1994
1995=item [rm:name]
1996
1997remove named menuBar(s)
1998
1999=item [rm] [rm:]
2000
2001remove current menuBar
2002
2003=item [rm*] [rm:*]
2004
2005remove all menuBar(s)
2006
2007=item [swap]
2008
2009swap top two menuBars
2010
2011=item [prev]
2012
2013access the previous menuBar
2014
2015=item [next]
2016
2017access the next menuBar
2018
2019=item [show]
2020
2021map menuBar
2022
2023=item [hide]
2024
2025unmap menuBar
2026
2027=item [pixmap;file]
2028
2029=item [pixmap;file;scaling]
2030
2031set a background pixmap
2032
2033=item [read:file]
2034
2035=item [read:file;name]
2036
2037read in a menu from a file
2038
2039=item [dump]
2040
2041dump out all menuBars to /tmp/rxvt-PID
2042
2043=item /
2044
2045access menuBar top level
2046
2047=item ./
2048
2049=item ../
2050
2051=item ../../
2052
2053access current or parent menu level
2054
2055=item /path/menu
2056
2057add/access menu
2058
2059=item /path/{-}
2060
2061add separator
2062
2063=item /path/{item}{rtext} action
2064
2065add/alter menu item
2066
2067=item -/*
2068
2069remove all menus from the menuBar
2070
2071=item -/path/menu
2072
2073remove menu items, separators and submenus from menu
2074
2075=item -/path/menu
2076
2077remove menu
2078
2079=item -/path/{item}
2080
2081remove item
2082
2083=item -/path/{-}
2084
2085remove separator
2086
2087=item <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
2088
2089menu quick arrows
2090
2091=back
2092X<XPM> 1770X<XPM>
2093 1771
2094=head1 XPM 1772=head1 XPM
2095 1773
2096For 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
2343alternative input methods (e.g. kinput2) and will also correctly 2021alternative input methods (e.g. kinput2) and will also correctly
2344set up the input for people using dead keys or compose keys. 2022set up the input for people using dead keys or compose keys.
2345 2023
2346=item --enable-unicode3 (default: off) 2024=item --enable-unicode3 (default: off)
2347 2025
2026Recommended to stay off unless you really need non-BMP characters.
2027
2348Enable direct support for displaying unicode codepoints above 2028Enable direct support for displaying unicode codepoints above
234965535 (the basic multilingual page). This increases storage 202965535 (the basic multilingual page). This increases storage
2350requirements 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
2351support these extra characters, but Xft does. 2031support these extra characters, but Xft does.
2352 2032
2362composite characters. This is required for proper viewing of text 2042composite characters. This is required for proper viewing of text
2363where accents are encoded as seperate unicode characters. This is 2043where accents are encoded as seperate unicode characters. This is
2364done by using precomposited characters when available or creating 2044done by using precomposited characters when available or creating
2365new pseudo-characters when no precomposed form exists. 2045new pseudo-characters when no precomposed form exists.
2366 2046
2367Without --enable-unicode3, the number of additional precomposed characters 2047Without --enable-unicode3, the number of additional precomposed
2368is rather limited (2048, if this is full, rxvt-unicode will use the 2048characters is somewhat limited (the 6400 private use characters will be
2369private use area, extending the number of combinations to 8448). With
2370--enable-unicode3, no practical limit exists. 2049(ab-)used). With --enable-unicode3, no practical limit exists.
2371 2050
2372This option will also enable storage (but not display) of characters 2051This option will also enable storage (but not display) of characters
2373beyond plane 0 (>65535) when --enable-unicode3 was not specified. 2052beyond plane 0 (>65535) when --enable-unicode3 was not specified.
2374 2053
2375The combining table also contains entries for arabic presentation forms, 2054The combining table also contains entries for arabic presentation forms,
2376but 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
2377tell me how these are to be used...). 2056tell me how these are to be used...).
2378 2057
2379=item --enable-fallback(=CLASS) (default: Rxvt) 2058=item --enable-fallback(=CLASS) (default: Rxvt)
2380 2059
2381When reading resource settings, also read settings for class CLASS. To disable resource fallback use --disable-fallback. 2060When reading resource settings, also read settings for class CLASS. To
2061disable resource fallback use --disable-fallback.
2382 2062
2383=item --with-res-name=NAME (default: urxvt) 2063=item --with-res-name=NAME (default: urxvt)
2384 2064
2385Use the given name as default application name when 2065Use the given name as default application name when
2386reading resources. Specify --with-res-name=rxvt to replace rxvt. 2066reading resources. Specify --with-res-name=rxvt to replace rxvt.
2406 2086
2407Write user and tty to lastlog file (used by programs like 2087Write user and tty to lastlog file (used by programs like
2408F<lastlogin>) at start of rxvt execution. This option requires 2088F<lastlogin>) at start of rxvt execution. This option requires
2409--enable-utmp to also be specified. 2089--enable-utmp to also be specified.
2410 2090
2411=item --enable-xpm-background (default: off) 2091=item --enable-xpm-background (default: on)
2412 2092
2413Add support for XPM background pixmaps. 2093Add support for XPM background pixmaps.
2414 2094
2415=item --enable-transparency (default: off) 2095=item --enable-transparency (default: on)
2416 2096
2417Add support for inheriting parent backgrounds thus giving a fake 2097Add support for inheriting parent backgrounds thus giving a fake
2418transparency to the term. 2098transparency to the term.
2419 2099
2420=item --enable-fading (default: on) 2100=item --enable-fading (default: on)
2422Add support for fading the text when focus is lost (requires C<--enable-transparency>). 2102Add support for fading the text when focus is lost (requires C<--enable-transparency>).
2423 2103
2424=item --enable-tinting (default: on) 2104=item --enable-tinting (default: on)
2425 2105
2426Add support for tinting of transparent backgrounds (requires C<--enable-transparency>). 2106Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2427
2428=item --enable-menubar (default: off)
2429
2430Add support for our menu bar system (this interacts badly with
2431dynamic locale switching currently).
2432 2107
2433=item --enable-rxvt-scroll (default: on) 2108=item --enable-rxvt-scroll (default: on)
2434 2109
2435Add support for the original rxvt scrollbar. 2110Add support for the original rxvt scrollbar.
2436 2111
2446 2121
2447Add support for a very unobtrusive, plain-looking scrollbar that 2122Add support for a very unobtrusive, plain-looking scrollbar that
2448is the favourite of the rxvt-unicode author, having used it for 2123is the favourite of the rxvt-unicode author, having used it for
2449many years. 2124many years.
2450 2125
2451=item --enable-half-shadow (default: off)
2452
2453Make shadows on the scrollbar only half the normal width & height.
2454only applicable to rxvt scrollbars.
2455
2456=item --enable-ttygid (default: off) 2126=item --enable-ttygid (default: off)
2457 2127
2458Change tty device setting to group "tty" - only use this if 2128Change tty device setting to group "tty" - only use this if
2459your system uses this type of security. 2129your system uses this type of security.
2460 2130
2468do it. 2138do it.
2469 2139
2470=item --disable-resources 2140=item --disable-resources
2471 2141
2472Removes any support for resource checking. 2142Removes any support for resource checking.
2473
2474=item --enable-xgetdefault
2475
2476Make resources checking via XGetDefault() instead of our small
2477version which only checks ~/.Xdefaults, or if that doesn't exist then
2478~/.Xresources.
2479
2480Please note that nowadays, things like XIM will automatically pull in and
2481use the full X resource manager, so the overhead of using it might be very
2482small, if nonexistant.
2483
2484=item --enable-strings (default: off)
2485
2486Add support for our possibly faster memset() function and other
2487various routines, overriding your system's versions which may
2488have been hand-crafted in assembly or may require extra libraries
2489to link in. (this breaks ANSI-C rules and has problems on many
2490GNU/Linux systems).
2491 2143
2492=item --disable-swapscreen 2144=item --disable-swapscreen
2493 2145
2494Remove support for secondary/swap screen. 2146Remove support for secondary/swap screen.
2495 2147
2504 2156
2505 MWM-hints 2157 MWM-hints
2506 EWMH-hints (pid, utf8 names) and protocols (ping) 2158 EWMH-hints (pid, utf8 names) and protocols (ping)
2507 seperate underline colour (-underlineColor) 2159 seperate underline colour (-underlineColor)
2508 settable border widths and borderless switch (-w, -b, -bl) 2160 settable border widths and borderless switch (-w, -b, -bl)
2161 visual depth selection (-depth)
2509 settable extra linespacing /-lsp) 2162 settable extra linespacing /-lsp)
2510 iso-14755-2 and -3, and visual feedback 2163 iso-14755-2 and -3, and visual feedback
2511 backindex and forwardindex escape sequence
2512 window op and some xterm/OSC escape sequences
2513 tripleclickwords (-tcw) 2164 tripleclickwords (-tcw)
2514 settable insecure mode (-insecure) 2165 settable insecure mode (-insecure)
2515 keysym remapping support 2166 keysym remapping support
2516 cursor blinking and underline cursor (-cb, -uc) 2167 cursor blinking and underline cursor (-cb, -uc)
2517 XEmbed support (-embed) 2168 XEmbed support (-embed)
2518 user-pty (-pty-fd) 2169 user-pty (-pty-fd)
2519 hold on exit (-hold) 2170 hold on exit (-hold)
2520 skip builtin block graphics (-sbg) 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
2521 sgr modes 90..97 and 100..107 2178 sgr modes 90..97 and 100..107
2179 backindex and forwardindex escape sequences
2180 view change/zero scorllback esacpe sequences
2181 locale switching escape sequence
2182 window op and some xterm/OSC escape sequences
2183 rectangular selections
2184 trailing space removal for selections
2185 verbose X error handling
2522 2186
2523=item --enable-iso14755 (default: on) 2187=item --enable-iso14755 (default: on)
2524 2188
2525Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2189Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2526F<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
2569 2233
2570=item --enable-pointer-blank (default: on) 2234=item --enable-pointer-blank (default: on)
2571 2235
2572Add support to have the pointer disappear when typing or inactive. 2236Add support to have the pointer disappear when typing or inactive.
2573 2237
2574=item --enable-perl (default: off) 2238=item --enable-perl (default: on)
2575 2239
2576Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2240Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2577manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2241manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
2578in F<src/perl-ext/> for the extensions that are installed by default. 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.
2579 2245
2580=item --with-name=NAME (default: urxvt) 2246=item --with-name=NAME (default: urxvt)
2581 2247
2582Set the basename for the installed binaries, resulting 2248Set the basename for the installed binaries, resulting
2583in 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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines