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.79 by root, Thu Jan 12 23:11:23 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
28 27
29=item The new selection selects pieces that are too big/too small, can I 28=item The new selection selects pieces that are too big, how can I select
30change this? 29single words?
31 30
32Yes. For example, if you want to select smaller pieces ("words") you can 31Yes. For example, if you want to select alphanumeric words, you can use
33use the following resource: 32the following resource:
34 33
35 URxvt.selection.pattern-0: ([[:word:]]+) 34 URxvt.selection.pattern-0: ([[:word:]]+)
36 35
37If you click more than twice, the selection will be extended 36If you click more than twice, the selection will be extended
38more and more. 37more and more.
39 38
40To get a selection that is very similar to the old code, try this pattern: 39To get a selection that is very similar to the old code, try this pattern:
41 40
42 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+) 41 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
42
43Please also note that the I<LeftClick Shift-LeftClik> combination also
44selects words like the old code.
43 45
44=item I don't like the new selection/popups/hotkeys/perl, how do I 46=item I don't like the new selection/popups/hotkeys/perl, how do I
45change/disable it? 47change/disable it?
46 48
47You can disable the perl extension completely by setting the 49You can disable the perl extension completely by setting the
60extensions. Some extensions can also be configured, for example, 62extensions. Some extensions can also be configured, for example,
61scrollback search mode is triggered by B<M-s>. You can move it to any 63scrollback search mode is triggered by B<M-s>. You can move it to any
62other combination either by setting the B<searchable-scrollback> resource: 64other combination either by setting the B<searchable-scrollback> resource:
63 65
64 URxvt.searchable-scrollback: CM-s 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.
65 134
66=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?
67 136
68I 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
69bloat. 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
139No large bloated libraries (of course, none were linked in statically), 208No large bloated libraries (of course, none were linked in statically),
140except maybe libX11 :) 209except maybe libX11 :)
141 210
142=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?
143 212
144rxvt-unicode does not directly support tabs. It will work fine with 213Beginning with version 7.3, there is a perl extension that implements a
145tabbing functionality of many window managers or similar tabbing programs, 214simple tabbed terminal. It is installed by default, so any of these should
146and its embedding-features allow it to be embedded into other programs, 215give you tabs:
147as witnessed by F<doc/rxvt-tabbed> or the upcoming C<Gtk2::URxvt> perl 216
148module, which features a tabbed urxvt (murxvt) terminal as an example 217 @@RXVT_NAME@@ -pe tabbed
149embedding 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.
150 226
151=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?
152 228
153The version number is displayed with the usage (-h). Also the escape 229The version number is displayed with the usage (-h). Also the escape
154sequence 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
156daemon. 232daemon.
157 233
158=item I am using Debian GNU/Linux and have a problem... 234=item I am using Debian GNU/Linux and have a problem...
159 235
160The Debian GNU/Linux package of rxvt-unicode in sarge contains large 236The Debian GNU/Linux package of rxvt-unicode in sarge contains large
161patches that considerably change the behaviour of rxvt-unicode. Before 237patches that considerably change the behaviour of rxvt-unicode (but
162reporting a bug to the original rxvt-unicode author please download and 238unfortunately this notice has been removed). Before reporting a bug to
163install the genuine version (L<http://software.schmorp.de#rxvt-unicode>) 239the original rxvt-unicode author please download and install the genuine
164and try to reproduce the problem. If you cannot, chances are that the 240version (L<http://software.schmorp.de#rxvt-unicode>) and try to reproduce
165problems 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
166reported 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
167the bug). 243Tracking System (use C<reportbug> to report the bug).
168 244
169For other problems that also affect the Debian package, you can and 245For other problems that also affect the Debian package, you can and
170probably 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
171bug 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
172might encounter the same issue. 248might encounter the same issue.
173 249
174=item I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation? 250=item I am maintaining rxvt-unicode for distribution/OS XXX, any
251recommendation?
175 252
176You should build one binary with the default options. F<configure> 253You should build one binary with the default options. F<configure>
177now enables most useful options, and the trend goes to making them 254now enables most useful options, and the trend goes to making them
178runtime-switchable, too, so there is usually no drawback to enbaling them, 255runtime-switchable, too, so there is usually no drawback to enbaling them,
179except higher disk and possibly memory usage. The perl interpreter should 256except higher disk and possibly memory usage. The perl interpreter should
191C<--enable-everything> (less useful, it will be very big due to a lot of 268C<--enable-everything> (less useful, it will be very big due to a lot of
192encodings built-in that increase download times and are rarely used). 269encodings built-in that increase download times and are rarely used).
193 270
194=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe? 271=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?
195 272
196Likely not. While I honestly try to make it secure, and am probably not 273It should be, starting with release 7.1. You are encouraged to properly
197bad at it, I think it is simply unreasonable to expect all of freetype 274install urxvt with privileges necessary for your OS now.
198+ fontconfig + xft + xlib + perl + ... + rxvt-unicode itself to all be
199secure. Also, rxvt-unicode disables some options when it detects that it
200runs setuid or setgid, which is not nice. Besides, with the embedded perl
201interpreter the possibility for security problems easily multiplies.
202 275
203Elevated privileges are only required for utmp and pty operations on some 276When rxvt-unicode detects that it runs setuid or setgid, it will fork
204systems (for example, GNU/Linux doesn't need any extra privileges for 277into a helper process for privileged operations (pty handling on some
205ptys, but some need it for utmp support). It is planned to mvoe this into 278systems, utmp/wtmp/lastlog handling on others) and drop privileges
206a forked handler process, but this is not yet done. 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).
207 282
208So, while setuid/setgid operation is supported and not a problem on your 283This forking is done as the very first within main(), which is very early
209typical single-user-no-other-logins unix desktop, always remember that 284and reduces possible bugs to initialisation code run before main(), or
210its an awful lot of code, most of which isn't checked for security issues 285things like the dynamic loader of your system, which should result in very
211regularly. 286little risk.
212 287
213=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?
214 289
215The terminal description used by rxvt-unicode is not as widely available 290The terminal description used by rxvt-unicode is not as widely available
216as 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).
613=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?
614 689
615You 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
616terminal, using the resource C<imlocale>: 691terminal, using the resource C<imlocale>:
617 692
618 URxvt*imlocale: ja_JP.EUC-JP 693 URxvt.imlocale: ja_JP.EUC-JP
619 694
620Now 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
621use 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
622input 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
623method limits you. 698method limits you.
669 744
670Make sure that mouse reporting is actually turned off since killing 745Make sure that mouse reporting is actually turned off since killing
671some 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
672heard that tcsh may use mouse reporting unless it otherwise specified. A 747heard that tcsh may use mouse reporting unless it otherwise specified. A
673quick 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
674depressed. See @@RXVT_NAME@@(7) 749depressed.
675 750
676=item What's with this bold/blink stuff? 751=item What's with this bold/blink stuff?
677 752
678If 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
679standard foreground colour. 754standard foreground colour.
768 843
769 # use Backspace = ^? 844 # use Backspace = ^?
770 $ stty erase ^? 845 $ stty erase ^?
771 $ @@RXVT_NAME@@ 846 $ @@RXVT_NAME@@
772 847
773Toggle 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>.
774 849
775For an existing rxvt-unicode: 850For an existing rxvt-unicode:
776 851
777 # use Backspace = ^H 852 # use Backspace = ^H
778 $ stty erase ^H 853 $ stty erase ^H
896 971
897=head1 DESCRIPTION 972=head1 DESCRIPTION
898 973
899The rest of this document describes various technical aspects of 974The rest of this document describes various technical aspects of
900B<rxvt-unicode>. First the description of supported command sequences, 975B<rxvt-unicode>. First the description of supported command sequences,
901followed by menu and pixmap support and last by a description of all 976followed by pixmap support and last by a description of all features
902features selectable at C<configure> time. 977selectable at C<configure> time.
903 978
904=head1 Definitions 979=head1 Definitions
905 980
906=over 4 981=over 4
907 982
1475 B<< C<h> >> Send Mouse X & Y on button press. 1550 B<< C<h> >> Send Mouse X & Y on button press.
1476 B<< C<l> >> No mouse reporting. 1551 B<< C<l> >> No mouse reporting.
1477 1552
1478=end table 1553=end table
1479 1554
1480=item B<< C<Ps = 10> >> (B<rxvt>)
1481
1482=begin table
1483
1484 B<< C<h> >> menuBar visible
1485 B<< C<l> >> menuBar invisible
1486
1487=end table
1488
1489=item B<< C<Ps = 25> >> 1555=item B<< C<Ps = 25> >>
1490 1556
1491=begin table 1557=begin table
1492 1558
1493 B<< C<h> >> Visible cursor {cnorm/cvvis} 1559 B<< C<h> >> Visible cursor {cnorm/cvvis}
1675 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> >>
1676 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> >>
1677 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> >>
1678 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706] 1744 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
1679 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707] 1745 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1680 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).
1681 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> >>.
1682 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>
1683 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> >>.
1684 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >> 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> >>
1685 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> >>
1686 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (Compile frills). 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).
1687 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>.
1688 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> >>
1689 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).
1690 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >> 1756 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >>
1691 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >> 1757 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
1692 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>.
1699 1765
1700=end table 1766=end table
1701 1767
1702=back 1768=back
1703 1769
1704X<menuBar>
1705
1706=head1 menuBar
1707
1708B<< The exact syntax used is I<almost> solidified. >>
1709In the menus, B<DON'T> try to use menuBar commands that add or remove a
1710menuBar.
1711
1712Note that in all of the commands, the B<< I</path/> >> I<cannot> be
1713omitted: use B<./> to specify a menu relative to the current menu.
1714
1715=head2 Overview of menuBar operation
1716
1717For the menuBar XTerm escape sequence C<ESC ] 703 ; Pt ST>, the syntax
1718of C<Pt> can be used for a variety of tasks:
1719
1720At the top level is the current menuBar which is a member of a circular
1721linked-list of other such menuBars.
1722
1723The menuBar acts as a parent for the various drop-down menus, which in
1724turn, may have labels, separator lines, menuItems and subMenus.
1725
1726The menuItems are the useful bits: you can use them to mimic keyboard
1727input or even to send text or escape sequences back to rxvt.
1728
1729The menuBar syntax is intended to provide a simple yet robust method of
1730constructing and manipulating menus and navigating through the
1731menuBars.
1732
1733The first step is to use the tag B<< [menu:I<name>] >> which creates
1734the menuBar called I<name> and allows access. You may now or menus,
1735subMenus, and menuItems. Finally, use the tag B<[done]> to set the
1736menuBar access as B<readonly> to prevent accidental corruption of the
1737menus. To re-access the current menuBar for alterations, use the tag
1738B<[menu]>, make the alterations and then use B<[done]>
1739
1740X<menuBarCommands>
1741
1742=head2 Commands
1743
1744=over 4
1745
1746=item B<< [menu:+I<name>] >>
1747
1748access the named menuBar for creation or alteration. If a new menuBar
1749is created, it is called I<name> (max of 15 chars) and the current
1750menuBar is pushed onto the stack
1751
1752=item B<[menu]>
1753
1754access the current menuBar for alteration
1755
1756=item B<< [title:+I<string>] >>
1757
1758set the current menuBar's title to I<string>, which may contain the
1759following format specifiers:
1760
1761 B<%n> rxvt name (as per the B<-name> command-line option)
1762 B<%v> rxvt version
1763 B<%%> literal B<%> character
1764
1765=item B<[done]>
1766
1767set menuBar access as B<readonly>.
1768End-of-file tag for B<< [read:+I<file>] >> operations.
1769
1770=item B<< [read:+I<file>] >>
1771
1772read menu commands directly from I<file> (extension ".menu" will be
1773appended if required.) Start reading at a line with B<[menu]> or B<<
1774[menu:+I<name> >> and continuing until B<[done]> is encountered.
1775
1776Blank and comment lines (starting with B<#>) are ignored. Actually,
1777since any invalid menu commands are also ignored, almost anything could
1778be construed as a comment line, but this may be tightened up in the
1779future ... so don't count on it!.
1780
1781=item B<< [read:+I<file>;+I<name>] >>
1782
1783The same as B<< [read:+I<file>] >>, but start reading at a line with
1784B<< [menu:+I<name>] >> and continuing until B<< [done:+I<name>] >> or
1785B<[done]> is encountered.
1786
1787=item B<[dump]>
1788
1789dump all menuBars to the file B</tmp/rxvt-PID> in a format suitable for
1790later rereading.
1791
1792=item B<[rm:name]>
1793
1794remove the named menuBar
1795
1796=item B<[rm] [rm:]>
1797
1798remove the current menuBar
1799
1800=item B<[rm*] [rm:*]>
1801
1802remove all menuBars
1803
1804=item B<[swap]>
1805
1806swap the top two menuBars
1807
1808=item B<[prev]>
1809
1810access the previous menuBar
1811
1812=item B<[next]>
1813
1814access the next menuBar
1815
1816=item B<[show]>
1817
1818Enable display of the menuBar
1819
1820=item B<[hide]>
1821
1822Disable display of the menuBar
1823
1824=item B<< [pixmap:+I<name>] >>
1825
1826=item B<< [pixmap:+I<name>;I<scaling>] >>
1827
1828(set the background pixmap globally
1829
1830B<< A Future implementation I<may> make this local to the menubar >>)
1831
1832=item B<< [:+I<command>:] >>
1833
1834ignore the menu readonly status and issue a I<command> to or a menu or
1835menuitem or change the ; a useful shortcut for setting the quick arrows
1836from a menuBar.
1837
1838=back
1839
1840X<menuBarAdd>
1841
1842=head2 Adding and accessing menus
1843
1844The following commands may also be B<+> prefixed.
1845
1846=over 4
1847
1848=item B</+>
1849
1850access menuBar top level
1851
1852=item B<./+>
1853
1854access current menu level
1855
1856=item B<../+>
1857
1858access parent menu (1 level up)
1859
1860=item B<../../>
1861
1862access parent menu (multiple levels up)
1863
1864=item B<< I</path/>menu >>
1865
1866add/access menu
1867
1868=item B<< I</path/>menu/* >>
1869
1870add/access menu and clear it if it exists
1871
1872=item B<< I</path/>{-} >>
1873
1874add separator
1875
1876=item B<< I</path/>{item} >>
1877
1878add B<item> as a label
1879
1880=item B<< I</path/>{item} action >>
1881
1882add/alter I<menuitem> with an associated I<action>
1883
1884=item B<< I</path/>{item}{right-text} >>
1885
1886add/alter I<menuitem> with B<right-text> as the right-justified text
1887and as the associated I<action>
1888
1889=item B<< I</path/>{item}{rtext} action >>
1890
1891add/alter I<menuitem> with an associated I<action> and with B<rtext> as
1892the right-justified text.
1893
1894=back
1895
1896=over 4
1897
1898=item Special characters in I<action> must be backslash-escaped:
1899
1900B<\a \b \E \e \n \r \t \octal>
1901
1902=item or in control-character notation:
1903
1904B<^@, ^A .. ^Z .. ^_, ^?>
1905
1906=back
1907
1908To send a string starting with a B<NUL> (B<^@>) character to the
1909program, start I<action> with a pair of B<NUL> characters (B<^@^@>),
1910the first of which will be stripped off and the balance directed to the
1911program. Otherwise if I<action> begins with B<NUL> followed by
1912non-+B<NUL> characters, the leading B<NUL> is stripped off and the
1913balance is sent back to rxvt.
1914
1915As a convenience for the many Emacs-type editors, I<action> may start
1916with B<M-> (eg, B<M-$> is equivalent to B<\E$>) and a B<CR> will be
1917appended if missed from B<M-x> commands.
1918
1919As a convenience for issuing XTerm B<ESC ]> sequences from a menubar (or
1920quick arrow), a B<BEL> (B<^G>) will be appended if needed.
1921
1922=over 4
1923
1924=item For example,
1925
1926B<M-xapropos> is equivalent to B<\Exapropos\r>
1927
1928=item and
1929
1930B<\E]703;mona;100> is equivalent to B<\E]703;mona;100\a>
1931
1932=back
1933
1934The option B<< {I<right-rtext>} >> will be right-justified. In the
1935absence of a specified action, this text will be used as the I<action>
1936as well.
1937
1938=over 4
1939
1940=item For example,
1941
1942B</File/{Open}{^X^F}> is equivalent to B</File/{Open}{^X^F} ^X^F>
1943
1944=back
1945
1946The left label I<is> necessary, since it's used for matching, but
1947implicitly hiding the left label (by using same name for both left and
1948right labels), or explicitly hiding the left label (by preceeding it
1949with a dot), makes it possible to have right-justified text only.
1950
1951=over 4
1952
1953=item For example,
1954
1955B</File/{Open}{Open} Open-File-Action>
1956
1957=item or hiding it
1958
1959B</File/{.anylabel}{Open} Open-File-Action>
1960
1961=back
1962
1963X<menuBarRemove>
1964
1965=head2 Removing menus
1966
1967=over 4
1968
1969=item B<< -/*+ >>
1970
1971remove all menus from the menuBar, the same as B<[clear]>
1972
1973=item B<< -+I</path>menu+ >>
1974
1975remove menu
1976
1977=item B<< -+I</path>{item}+ >>
1978
1979remove item
1980
1981=item B<< -+I</path>{-} >>
1982
1983remove separator)
1984
1985=item B<-/path/menu/*>
1986
1987remove all items, separators and submenus from menu
1988
1989=back
1990
1991X<menuBarArrows>
1992
1993=head2 Quick Arrows
1994
1995The menus also provide a hook for I<quick arrows> to provide easier
1996user access. If nothing has been explicitly set, the default is to
1997emulate the curror keys. The syntax permits each arrow to be altered
1998individually or all four at once without re-entering their common
1999beginning/end text. For example, to explicitly associate cursor actions
2000with the arrows, any of the following forms could be used:
2001
2002=over 4
2003
2004=item B<< <r>+I<Right> >>
2005
2006=item B<< <l>+I<Left> >>
2007
2008=item B<< <u>+I<Up> >>
2009
2010=item B<< <d>+I<Down> >>
2011
2012Define actions for the respective arrow buttons
2013
2014=item B<< <b>+I<Begin> >>
2015
2016=item B<< <e>+I<End> >>
2017
2018Define common beginning/end parts for I<quick arrows> which used in
2019conjunction with the above <r> <l> <u> <d> constructs
2020
2021=back
2022
2023=over 4
2024
2025=item For example, define arrows individually,
2026
2027 <u>\E[A
2028
2029 <d>\E[B
2030
2031 <r>\E[C
2032
2033 <l>\E[D
2034
2035=item or all at once
2036
2037 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
2038
2039=item or more compactly (factoring out common parts)
2040
2041 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
2042
2043=back
2044
2045X<menuBarSummary>
2046
2047=head2 Command Summary
2048
2049A short summary of the most I<common> commands:
2050
2051=over 4
2052
2053=item [menu:name]
2054
2055use an existing named menuBar or start a new one
2056
2057=item [menu]
2058
2059use the current menuBar
2060
2061=item [title:string]
2062
2063set menuBar title
2064
2065=item [done]
2066
2067set menu access to readonly and, if reading from a file, signal EOF
2068
2069=item [done:name]
2070
2071if reading from a file using [read:file;name] signal EOF
2072
2073=item [rm:name]
2074
2075remove named menuBar(s)
2076
2077=item [rm] [rm:]
2078
2079remove current menuBar
2080
2081=item [rm*] [rm:*]
2082
2083remove all menuBar(s)
2084
2085=item [swap]
2086
2087swap top two menuBars
2088
2089=item [prev]
2090
2091access the previous menuBar
2092
2093=item [next]
2094
2095access the next menuBar
2096
2097=item [show]
2098
2099map menuBar
2100
2101=item [hide]
2102
2103unmap menuBar
2104
2105=item [pixmap;file]
2106
2107=item [pixmap;file;scaling]
2108
2109set a background pixmap
2110
2111=item [read:file]
2112
2113=item [read:file;name]
2114
2115read in a menu from a file
2116
2117=item [dump]
2118
2119dump out all menuBars to /tmp/rxvt-PID
2120
2121=item /
2122
2123access menuBar top level
2124
2125=item ./
2126
2127=item ../
2128
2129=item ../../
2130
2131access current or parent menu level
2132
2133=item /path/menu
2134
2135add/access menu
2136
2137=item /path/{-}
2138
2139add separator
2140
2141=item /path/{item}{rtext} action
2142
2143add/alter menu item
2144
2145=item -/*
2146
2147remove all menus from the menuBar
2148
2149=item -/path/menu
2150
2151remove menu items, separators and submenus from menu
2152
2153=item -/path/menu
2154
2155remove menu
2156
2157=item -/path/{item}
2158
2159remove item
2160
2161=item -/path/{-}
2162
2163remove separator
2164
2165=item <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
2166
2167menu quick arrows
2168
2169=back
2170X<XPM> 1770X<XPM>
2171 1771
2172=head1 XPM 1772=head1 XPM
2173 1773
2174For 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
2421alternative input methods (e.g. kinput2) and will also correctly 2021alternative input methods (e.g. kinput2) and will also correctly
2422set up the input for people using dead keys or compose keys. 2022set up the input for people using dead keys or compose keys.
2423 2023
2424=item --enable-unicode3 (default: off) 2024=item --enable-unicode3 (default: off)
2425 2025
2026Recommended to stay off unless you really need non-BMP characters.
2027
2426Enable direct support for displaying unicode codepoints above 2028Enable direct support for displaying unicode codepoints above
242765535 (the basic multilingual page). This increases storage 202965535 (the basic multilingual page). This increases storage
2428requirements 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
2429support these extra characters, but Xft does. 2031support these extra characters, but Xft does.
2430 2032
2440composite characters. This is required for proper viewing of text 2042composite characters. This is required for proper viewing of text
2441where accents are encoded as seperate unicode characters. This is 2043where accents are encoded as seperate unicode characters. This is
2442done by using precomposited characters when available or creating 2044done by using precomposited characters when available or creating
2443new pseudo-characters when no precomposed form exists. 2045new pseudo-characters when no precomposed form exists.
2444 2046
2445Without --enable-unicode3, the number of additional precomposed characters 2047Without --enable-unicode3, the number of additional precomposed
2446is rather limited (2048, if this is full, rxvt-unicode will use the 2048characters is somewhat limited (the 6400 private use characters will be
2447private use area, extending the number of combinations to 8448). With
2448--enable-unicode3, no practical limit exists. 2049(ab-)used). With --enable-unicode3, no practical limit exists.
2449 2050
2450This option will also enable storage (but not display) of characters 2051This option will also enable storage (but not display) of characters
2451beyond plane 0 (>65535) when --enable-unicode3 was not specified. 2052beyond plane 0 (>65535) when --enable-unicode3 was not specified.
2452 2053
2453The combining table also contains entries for arabic presentation forms, 2054The combining table also contains entries for arabic presentation forms,
2454but 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
2455tell me how these are to be used...). 2056tell me how these are to be used...).
2456 2057
2457=item --enable-fallback(=CLASS) (default: Rxvt) 2058=item --enable-fallback(=CLASS) (default: Rxvt)
2458 2059
2459When 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.
2460 2062
2461=item --with-res-name=NAME (default: urxvt) 2063=item --with-res-name=NAME (default: urxvt)
2462 2064
2463Use the given name as default application name when 2065Use the given name as default application name when
2464reading resources. Specify --with-res-name=rxvt to replace rxvt. 2066reading resources. Specify --with-res-name=rxvt to replace rxvt.
2501 2103
2502=item --enable-tinting (default: on) 2104=item --enable-tinting (default: on)
2503 2105
2504Add support for tinting of transparent backgrounds (requires C<--enable-transparency>). 2106Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2505 2107
2506=item --enable-menubar (default: off) [DEPRECATED]
2507
2508Add support for our menu bar system (this interacts badly with dynamic
2509locale switching currently). This option is DEPRECATED and will be removed
2510in the future.
2511
2512=item --enable-rxvt-scroll (default: on) 2108=item --enable-rxvt-scroll (default: on)
2513 2109
2514Add support for the original rxvt scrollbar. 2110Add support for the original rxvt scrollbar.
2515 2111
2516=item --enable-next-scroll (default: on) 2112=item --enable-next-scroll (default: on)
2525 2121
2526Add support for a very unobtrusive, plain-looking scrollbar that 2122Add support for a very unobtrusive, plain-looking scrollbar that
2527is the favourite of the rxvt-unicode author, having used it for 2123is the favourite of the rxvt-unicode author, having used it for
2528many years. 2124many years.
2529 2125
2530=item --enable-half-shadow (default: off)
2531
2532Make shadows on the scrollbar only half the normal width & height.
2533only applicable to rxvt scrollbars.
2534
2535=item --enable-ttygid (default: off) 2126=item --enable-ttygid (default: off)
2536 2127
2537Change tty device setting to group "tty" - only use this if 2128Change tty device setting to group "tty" - only use this if
2538your system uses this type of security. 2129your system uses this type of security.
2539 2130
2547do it. 2138do it.
2548 2139
2549=item --disable-resources 2140=item --disable-resources
2550 2141
2551Removes any support for resource checking. 2142Removes any support for resource checking.
2552
2553=item --enable-strings (default: off)
2554
2555Add support for our possibly faster memset() function and other
2556various routines, overriding your system's versions which may
2557have been hand-crafted in assembly or may require extra libraries
2558to link in. (this breaks ANSI-C rules and has problems on many
2559GNU/Linux systems).
2560 2143
2561=item --disable-swapscreen 2144=item --disable-swapscreen
2562 2145
2563Remove support for secondary/swap screen. 2146Remove support for secondary/swap screen.
2564 2147
2573 2156
2574 MWM-hints 2157 MWM-hints
2575 EWMH-hints (pid, utf8 names) and protocols (ping) 2158 EWMH-hints (pid, utf8 names) and protocols (ping)
2576 seperate underline colour (-underlineColor) 2159 seperate underline colour (-underlineColor)
2577 settable border widths and borderless switch (-w, -b, -bl) 2160 settable border widths and borderless switch (-w, -b, -bl)
2161 visual depth selection (-depth)
2578 settable extra linespacing /-lsp) 2162 settable extra linespacing /-lsp)
2579 iso-14755-2 and -3, and visual feedback 2163 iso-14755-2 and -3, and visual feedback
2580 backindex and forwardindex escape sequence
2581 window op and some xterm/OSC escape sequences
2582 tripleclickwords (-tcw) 2164 tripleclickwords (-tcw)
2583 settable insecure mode (-insecure) 2165 settable insecure mode (-insecure)
2584 keysym remapping support 2166 keysym remapping support
2585 cursor blinking and underline cursor (-cb, -uc) 2167 cursor blinking and underline cursor (-cb, -uc)
2586 XEmbed support (-embed) 2168 XEmbed support (-embed)
2587 user-pty (-pty-fd) 2169 user-pty (-pty-fd)
2588 hold on exit (-hold) 2170 hold on exit (-hold)
2589 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
2590 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
2591 2186
2592=item --enable-iso14755 (default: on) 2187=item --enable-iso14755 (default: on)
2593 2188
2594Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2189Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2595F<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
2638 2233
2639=item --enable-pointer-blank (default: on) 2234=item --enable-pointer-blank (default: on)
2640 2235
2641Add support to have the pointer disappear when typing or inactive. 2236Add support to have the pointer disappear when typing or inactive.
2642 2237
2643=item --enable-perl (default: off) 2238=item --enable-perl (default: on)
2644 2239
2645Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2240Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2646manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2241manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
2647in F<src/perl-ext/> for the extensions that are installed by default. The 2242in F<src/perl-ext/> for the extensions that are installed by default. The
2648perl interpreter that is used can be specified via the C<PERL> environment 2243perl interpreter that is used can be specified via the C<PERL> environment

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines