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.74 by root, Mon Jan 9 07:24:43 2006 UTC vs.
Revision 1.97 by root, Tue Jan 31 00:53:49 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 The cursor moves when selecting text in the current input line, how
69do I switch this off?
70
71=item During rlogin/ssh/telnet/etc. sessions, clicking near the cursor
72outputs strange escape sequences, how do I fix this?
73
74These are caused by the C<readline> perl extension. Under normal
75circumstances, it will move your cursor around when you click into the
76line that contains it. It tries hard not to do this at the wrong moment,
77but when running a program that doesn't parse cursor movements or in some
78cases during rlogin sessions, it fails to detect this properly.
79
80You can permamently switch this feature off by disabling the C<readline>
81extension:
82
83 URxvt.perl-ext-common: default,-readline
84
85=item Why doesn't rxvt-unicode read my resources?
86
87Well, why, indeed? It does, in a way very similar to other X
88applications. Most importantly, this means that if you or your OS loads
89resources into the X display (the right way to do it), rxvt-unicode will
90ignore any resource files in your home directory. It will only read
91F<$HOME/.Xdefaults> when no resources are attached to the display.
92
93If you have or use an F<$HOME/.Xresources> file, chances are that
94resources are loaded into your X-server. In this case, you have to
95re-login after every change (or run F<xrdb -merge $HOME/.Xresources>).
96
97Also consider the form resources have to use:
98
99 URxvt.resource: value
100
101If you want to use another form (there are lots of different ways of
102specifying resources), make sure you understand wether and why it
103works. If unsure, use the form above.
104
105=item I can't get transparency working, what am I doing wrong?
106
107First of all, transparency isn't officially supported in rxvt-unicode, so
108you are mostly on your own. Do not bug the author about it (but you may
109bug everybody else). Also, if you can't get it working consider it a rite
110of passage: ... and you failed.
111
112Here are four ways to get transparency. B<Do> read the manpage and option
113descriptions for the programs mentioned and rxvt-unicode. Really, do it!
114
1151. Use inheritPixmap:
116
117 Esetroot wallpaper.jpg
118 @@RXVT_NAME@@ -ip -tint red -sh 40
119
120That works. If you think it doesn't, you lack transparency and tinting
121support, or you are unable to read.
122
1232. Use a simple pixmap and emulate pseudo-transparency. This enables you
124to use effects other than tinting and shading: Just shade/tint/whatever
125your picture with gimp:
126
127 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
128 @@RXVT_NAME@@ -pixmap background.xpm -pe automove-background
129
130That works. If you think it doesn't, you lack XPM and Perl support, or you
131are unable to read.
132
1333. Use an ARGB visual:
134
135 @@RXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
136
137This requires XFT support, and the support of your X-server. If that
138doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
139there yet, no matter what they claim. Rxvt-Unicode contains the neccessary
140bugfixes and workarounds for Xft and Xlib to make it work, but that
141doesn't mean that your WM has the required kludges in place.
142
1434. Use xcompmgr and let it do the job:
144
145 xprop -frame -f _NET_WM_WINDOW_OPACITY 32c \
146 -set _NET_WM_WINDOW_OPACITY 0xc0000000
147
148Then click on a window you want to make transparent. Replace C<0xc0000000>
149by other values to change the degree of opacity. If it doesn't work and
150your server crashes, you got to keep the pieces.
28 151
29=item Isn't rxvt supposed to be small? Don't all those features bloat? 152=item Isn't rxvt supposed to be small? Don't all those features bloat?
30 153
31I often get asked about this, and I think, no, they didn't cause extra 154I 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 155bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
102No large bloated libraries (of course, none were linked in statically), 225No large bloated libraries (of course, none were linked in statically),
103except maybe libX11 :) 226except maybe libX11 :)
104 227
105=item Does it support tabs, can I have a tabbed rxvt-unicode? 228=item Does it support tabs, can I have a tabbed rxvt-unicode?
106 229
107rxvt-unicode does not directly support tabs. It will work fine with 230Beginning with version 7.3, there is a perl extension that implements a
108tabbing functionality of many window managers or similar tabbing programs, 231simple tabbed terminal. It is installed by default, so any of these should
109and its embedding-features allow it to be embedded into other programs, 232give you tabs:
110as witnessed by F<doc/rxvt-tabbed> or the upcoming C<Gtk2::URxvt> perl 233
111module, which features a tabbed urxvt (murxvt) terminal as an example 234 @@RXVT_NAME@@ -pe tabbed
112embedding application. 235
236 URxvt.perl-ext-common: default,tabbed
237
238It will also work fine with tabbing functionality of many window managers
239or similar tabbing programs, and its embedding-features allow it to be
240embedded into other programs, as witnessed by F<doc/rxvt-tabbed> or
241the upcoming C<Gtk2::URxvt> perl module, which features a tabbed urxvt
242(murxvt) terminal as an example embedding application.
113 243
114=item How do I know which rxvt-unicode version I'm using? 244=item How do I know which rxvt-unicode version I'm using?
115 245
116The version number is displayed with the usage (-h). Also the escape 246The 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 247sequence C<ESC [ 8 n> sets the window title to the version number. When
119daemon. 249daemon.
120 250
121=item I am using Debian GNU/Linux and have a problem... 251=item I am using Debian GNU/Linux and have a problem...
122 252
123The Debian GNU/Linux package of rxvt-unicode in sarge contains large 253The Debian GNU/Linux package of rxvt-unicode in sarge contains large
124patches that considerably change the behaviour of rxvt-unicode. Before 254patches that considerably change the behaviour of rxvt-unicode (but
125reporting a bug to the original rxvt-unicode author please download and 255unfortunately this notice has been removed). Before reporting a bug to
126install the genuine version (L<http://software.schmorp.de#rxvt-unicode>) 256the original rxvt-unicode author please download and install the genuine
127and try to reproduce the problem. If you cannot, chances are that the 257version (L<http://software.schmorp.de#rxvt-unicode>) and try to reproduce
128problems are specific to Debian GNU/Linux, in which case it should be 258the problem. If you cannot, chances are that the problems are specific to
129reported via the Debian Bug Tracking System (use C<reportbug> to report 259Debian GNU/Linux, in which case it should be reported via the Debian Bug
130the bug). 260Tracking System (use C<reportbug> to report the bug).
131 261
132For other problems that also affect the Debian package, you can and 262For 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 263probably 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 264bug in the Debian version and it serves as a reminder for other users that
135might encounter the same issue. 265might encounter the same issue.
136 266
137=item I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation? 267=item I am maintaining rxvt-unicode for distribution/OS XXX, any
268recommendation?
138 269
139You should build one binary with the default options. F<configure> 270You should build one binary with the default options. F<configure>
140now enables most useful options, and the trend goes to making them 271now enables most useful options, and the trend goes to making them
141runtime-switchable, too, so there is usually no drawback to enbaling them, 272runtime-switchable, too, so there is usually no drawback to enbaling them,
142except higher disk and possibly memory usage. The perl interpreter should 273except higher disk and possibly memory usage. The perl interpreter should
154C<--enable-everything> (less useful, it will be very big due to a lot of 285C<--enable-everything> (less useful, it will be very big due to a lot of
155encodings built-in that increase download times and are rarely used). 286encodings built-in that increase download times and are rarely used).
156 287
157=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe? 288=item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?
158 289
159Likely not. While I honestly try to make it secure, and am probably 290It should be, starting with release 7.1. You are encouraged to properly
160not bad at it, I think it is simply unreasonable to expect all of 291install urxvt with privileges necessary for your OS now.
161freetype + fontconfig + xft + xlib + ... + rxvt-unicode itself to all be
162secure. Also, rxvt-unicode disables some options when it detects that it
163runs setuid or setgid, which is not nice.
164 292
165Elevated privileges are only required for utmp and pty operations on some 293When rxvt-unicode detects that it runs setuid or setgid, it will fork
166systems (for example, GNU/Linux doesn't need any extra privileges for 294into a helper process for privileged operations (pty handling on some
167ptys, but some need it for utmp support). If rxvt-unicode doesn't support 295systems, utmp/wtmp/lastlog handling on others) and drop privileges
168the library/setuid helper that your OS needs I'll be happy to assist you 296immediately. This is much safer than most other terminals that keep
169in implementing support for it. 297privileges while running (but is more relevant to urxvt, as it contains
298things as perl interpreters, which might be "helpful" to attackers).
170 299
171So, while setuid/setgid operation is supported and not a problem on your 300This forking is done as the very first within main(), which is very early
172typical single-user-no-other-logins unix desktop, always remember that 301and reduces possible bugs to initialisation code run before main(), or
173its an awful lot of code, most of which isn't checked for security issues 302things like the dynamic loader of your system, which should result in very
174regularly. 303little risk.
175 304
176=item When I log-in to another system it tells me about missing terminfo data? 305=item When I log-in to another system it tells me about missing terminfo data?
177 306
178The terminal description used by rxvt-unicode is not as widely available 307The terminal description used by rxvt-unicode is not as widely available
179as that for xterm, or even rxvt (for which the same problem often arises). 308as that for xterm, or even rxvt (for which the same problem often arises).
576=item My input method wants <some encoding> but I want UTF-8, what can I do? 705=item My input method wants <some encoding> but I want UTF-8, what can I do?
577 706
578You can specify separate locales for the input method and the rest of the 707You can specify separate locales for the input method and the rest of the
579terminal, using the resource C<imlocale>: 708terminal, using the resource C<imlocale>:
580 709
581 URxvt*imlocale: ja_JP.EUC-JP 710 URxvt.imlocale: ja_JP.EUC-JP
582 711
583Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still 712Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still
584use your input method. Please note, however, that you will not be able to 713use your input method. Please note, however, that you will not be able to
585input characters outside C<EUC-JP> in a normal way then, as your input 714input characters outside C<EUC-JP> in a normal way then, as your input
586method limits you. 715method limits you.
632 761
633Make sure that mouse reporting is actually turned off since killing 762Make sure that mouse reporting is actually turned off since killing
634some editors prematurely may leave the mouse in mouse report mode. I've 763some editors prematurely may leave the mouse in mouse report mode. I've
635heard that tcsh may use mouse reporting unless it otherwise specified. A 764heard that tcsh may use mouse reporting unless it otherwise specified. A
636quick check is to see if cut/paste works when the Alt or Shift keys are 765quick check is to see if cut/paste works when the Alt or Shift keys are
637depressed. See @@RXVT_NAME@@(7) 766depressed.
638 767
639=item What's with this bold/blink stuff? 768=item What's with this bold/blink stuff?
640 769
641If no bold colour is set via C<colorBD:>, bold will invert text using the 770If no bold colour is set via C<colorBD:>, bold will invert text using the
642standard foreground colour. 771standard foreground colour.
731 860
732 # use Backspace = ^? 861 # use Backspace = ^?
733 $ stty erase ^? 862 $ stty erase ^?
734 $ @@RXVT_NAME@@ 863 $ @@RXVT_NAME@@
735 864
736Toggle with C<ESC [ 36 h> / C<ESC [ 36 l> as documented in @@RXVT_NAME@@(7). 865Toggle with C<ESC [ 36 h> / C<ESC [ 36 l>.
737 866
738For an existing rxvt-unicode: 867For an existing rxvt-unicode:
739 868
740 # use Backspace = ^H 869 # use Backspace = ^H
741 $ stty erase ^H 870 $ stty erase ^H
859 988
860=head1 DESCRIPTION 989=head1 DESCRIPTION
861 990
862The rest of this document describes various technical aspects of 991The rest of this document describes various technical aspects of
863B<rxvt-unicode>. First the description of supported command sequences, 992B<rxvt-unicode>. First the description of supported command sequences,
864followed by menu and pixmap support and last by a description of all 993followed by pixmap support and last by a description of all features
865features selectable at C<configure> time. 994selectable at C<configure> time.
866 995
867=head1 Definitions 996=head1 Definitions
868 997
869=over 4 998=over 4
870 999
1438 B<< C<h> >> Send Mouse X & Y on button press. 1567 B<< C<h> >> Send Mouse X & Y on button press.
1439 B<< C<l> >> No mouse reporting. 1568 B<< C<l> >> No mouse reporting.
1440 1569
1441=end table 1570=end table
1442 1571
1443=item B<< C<Ps = 10> >> (B<rxvt>)
1444
1445=begin table
1446
1447 B<< C<h> >> menuBar visible
1448 B<< C<l> >> menuBar invisible
1449
1450=end table
1451
1452=item B<< C<Ps = 25> >> 1572=item B<< C<Ps = 25> >>
1453 1573
1454=begin table 1574=begin table
1455 1575
1456 B<< C<h> >> Visible cursor {cnorm/cvvis} 1576 B<< C<h> >> Visible cursor {cnorm/cvvis}
1636 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)> 1756 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)>
1637 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)> 1757 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)>
1638 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >> 1758 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >>
1639 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >> 1759 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >>
1640 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >> 1760 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >>
1641 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> 1761 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
1642 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> 1762 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1643 B<< C<Ps = 20> >> Change default background to B<< C<Pt> >> 1763 B<< C<Ps = 20> >> Change background pixmap parameters (see section XPM) (Compile XPM).
1644 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. 1764 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>.
1645 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 1765 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
1646 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>. 1766 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>.
1647 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> >> 1767 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> >>
1648 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 1768 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >>
1649 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). 1769 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).
1650 B<< C<Ps = 703> >> Menubar command B<< C<Pt> >> (Compile menubar). 1770 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>.
1651 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >> 1771 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >>
1652 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency). 1772 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency).
1773 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >>
1774 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
1653 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>. 1775 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
1654 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1776 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1655 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1777 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1656 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 1778 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1657 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills). 1779 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
1660 1782
1661=end table 1783=end table
1662 1784
1663=back 1785=back
1664 1786
1665X<menuBar>
1666
1667=head1 menuBar
1668
1669B<< The exact syntax used is I<almost> solidified. >>
1670In the menus, B<DON'T> try to use menuBar commands that add or remove a
1671menuBar.
1672
1673Note that in all of the commands, the B<< I</path/> >> I<cannot> be
1674omitted: use B<./> to specify a menu relative to the current menu.
1675
1676=head2 Overview of menuBar operation
1677
1678For the menuBar XTerm escape sequence C<ESC ] 703 ; Pt ST>, the syntax
1679of C<Pt> can be used for a variety of tasks:
1680
1681At the top level is the current menuBar which is a member of a circular
1682linked-list of other such menuBars.
1683
1684The menuBar acts as a parent for the various drop-down menus, which in
1685turn, may have labels, separator lines, menuItems and subMenus.
1686
1687The menuItems are the useful bits: you can use them to mimic keyboard
1688input or even to send text or escape sequences back to rxvt.
1689
1690The menuBar syntax is intended to provide a simple yet robust method of
1691constructing and manipulating menus and navigating through the
1692menuBars.
1693
1694The first step is to use the tag B<< [menu:I<name>] >> which creates
1695the menuBar called I<name> and allows access. You may now or menus,
1696subMenus, and menuItems. Finally, use the tag B<[done]> to set the
1697menuBar access as B<readonly> to prevent accidental corruption of the
1698menus. To re-access the current menuBar for alterations, use the tag
1699B<[menu]>, make the alterations and then use B<[done]>
1700
1701X<menuBarCommands>
1702
1703=head2 Commands
1704
1705=over 4
1706
1707=item B<< [menu:+I<name>] >>
1708
1709access the named menuBar for creation or alteration. If a new menuBar
1710is created, it is called I<name> (max of 15 chars) and the current
1711menuBar is pushed onto the stack
1712
1713=item B<[menu]>
1714
1715access the current menuBar for alteration
1716
1717=item B<< [title:+I<string>] >>
1718
1719set the current menuBar's title to I<string>, which may contain the
1720following format specifiers:
1721
1722 B<%n> rxvt name (as per the B<-name> command-line option)
1723 B<%v> rxvt version
1724 B<%%> literal B<%> character
1725
1726=item B<[done]>
1727
1728set menuBar access as B<readonly>.
1729End-of-file tag for B<< [read:+I<file>] >> operations.
1730
1731=item B<< [read:+I<file>] >>
1732
1733read menu commands directly from I<file> (extension ".menu" will be
1734appended if required.) Start reading at a line with B<[menu]> or B<<
1735[menu:+I<name> >> and continuing until B<[done]> is encountered.
1736
1737Blank and comment lines (starting with B<#>) are ignored. Actually,
1738since any invalid menu commands are also ignored, almost anything could
1739be construed as a comment line, but this may be tightened up in the
1740future ... so don't count on it!.
1741
1742=item B<< [read:+I<file>;+I<name>] >>
1743
1744The same as B<< [read:+I<file>] >>, but start reading at a line with
1745B<< [menu:+I<name>] >> and continuing until B<< [done:+I<name>] >> or
1746B<[done]> is encountered.
1747
1748=item B<[dump]>
1749
1750dump all menuBars to the file B</tmp/rxvt-PID> in a format suitable for
1751later rereading.
1752
1753=item B<[rm:name]>
1754
1755remove the named menuBar
1756
1757=item B<[rm] [rm:]>
1758
1759remove the current menuBar
1760
1761=item B<[rm*] [rm:*]>
1762
1763remove all menuBars
1764
1765=item B<[swap]>
1766
1767swap the top two menuBars
1768
1769=item B<[prev]>
1770
1771access the previous menuBar
1772
1773=item B<[next]>
1774
1775access the next menuBar
1776
1777=item B<[show]>
1778
1779Enable display of the menuBar
1780
1781=item B<[hide]>
1782
1783Disable display of the menuBar
1784
1785=item B<< [pixmap:+I<name>] >>
1786
1787=item B<< [pixmap:+I<name>;I<scaling>] >>
1788
1789(set the background pixmap globally
1790
1791B<< A Future implementation I<may> make this local to the menubar >>)
1792
1793=item B<< [:+I<command>:] >>
1794
1795ignore the menu readonly status and issue a I<command> to or a menu or
1796menuitem or change the ; a useful shortcut for setting the quick arrows
1797from a menuBar.
1798
1799=back
1800
1801X<menuBarAdd>
1802
1803=head2 Adding and accessing menus
1804
1805The following commands may also be B<+> prefixed.
1806
1807=over 4
1808
1809=item B</+>
1810
1811access menuBar top level
1812
1813=item B<./+>
1814
1815access current menu level
1816
1817=item B<../+>
1818
1819access parent menu (1 level up)
1820
1821=item B<../../>
1822
1823access parent menu (multiple levels up)
1824
1825=item B<< I</path/>menu >>
1826
1827add/access menu
1828
1829=item B<< I</path/>menu/* >>
1830
1831add/access menu and clear it if it exists
1832
1833=item B<< I</path/>{-} >>
1834
1835add separator
1836
1837=item B<< I</path/>{item} >>
1838
1839add B<item> as a label
1840
1841=item B<< I</path/>{item} action >>
1842
1843add/alter I<menuitem> with an associated I<action>
1844
1845=item B<< I</path/>{item}{right-text} >>
1846
1847add/alter I<menuitem> with B<right-text> as the right-justified text
1848and as the associated I<action>
1849
1850=item B<< I</path/>{item}{rtext} action >>
1851
1852add/alter I<menuitem> with an associated I<action> and with B<rtext> as
1853the right-justified text.
1854
1855=back
1856
1857=over 4
1858
1859=item Special characters in I<action> must be backslash-escaped:
1860
1861B<\a \b \E \e \n \r \t \octal>
1862
1863=item or in control-character notation:
1864
1865B<^@, ^A .. ^Z .. ^_, ^?>
1866
1867=back
1868
1869To send a string starting with a B<NUL> (B<^@>) character to the
1870program, start I<action> with a pair of B<NUL> characters (B<^@^@>),
1871the first of which will be stripped off and the balance directed to the
1872program. Otherwise if I<action> begins with B<NUL> followed by
1873non-+B<NUL> characters, the leading B<NUL> is stripped off and the
1874balance is sent back to rxvt.
1875
1876As a convenience for the many Emacs-type editors, I<action> may start
1877with B<M-> (eg, B<M-$> is equivalent to B<\E$>) and a B<CR> will be
1878appended if missed from B<M-x> commands.
1879
1880As a convenience for issuing XTerm B<ESC ]> sequences from a menubar (or
1881quick arrow), a B<BEL> (B<^G>) will be appended if needed.
1882
1883=over 4
1884
1885=item For example,
1886
1887B<M-xapropos> is equivalent to B<\Exapropos\r>
1888
1889=item and
1890
1891B<\E]703;mona;100> is equivalent to B<\E]703;mona;100\a>
1892
1893=back
1894
1895The option B<< {I<right-rtext>} >> will be right-justified. In the
1896absence of a specified action, this text will be used as the I<action>
1897as well.
1898
1899=over 4
1900
1901=item For example,
1902
1903B</File/{Open}{^X^F}> is equivalent to B</File/{Open}{^X^F} ^X^F>
1904
1905=back
1906
1907The left label I<is> necessary, since it's used for matching, but
1908implicitly hiding the left label (by using same name for both left and
1909right labels), or explicitly hiding the left label (by preceeding it
1910with a dot), makes it possible to have right-justified text only.
1911
1912=over 4
1913
1914=item For example,
1915
1916B</File/{Open}{Open} Open-File-Action>
1917
1918=item or hiding it
1919
1920B</File/{.anylabel}{Open} Open-File-Action>
1921
1922=back
1923
1924X<menuBarRemove>
1925
1926=head2 Removing menus
1927
1928=over 4
1929
1930=item B<< -/*+ >>
1931
1932remove all menus from the menuBar, the same as B<[clear]>
1933
1934=item B<< -+I</path>menu+ >>
1935
1936remove menu
1937
1938=item B<< -+I</path>{item}+ >>
1939
1940remove item
1941
1942=item B<< -+I</path>{-} >>
1943
1944remove separator)
1945
1946=item B<-/path/menu/*>
1947
1948remove all items, separators and submenus from menu
1949
1950=back
1951
1952X<menuBarArrows>
1953
1954=head2 Quick Arrows
1955
1956The menus also provide a hook for I<quick arrows> to provide easier
1957user access. If nothing has been explicitly set, the default is to
1958emulate the curror keys. The syntax permits each arrow to be altered
1959individually or all four at once without re-entering their common
1960beginning/end text. For example, to explicitly associate cursor actions
1961with the arrows, any of the following forms could be used:
1962
1963=over 4
1964
1965=item B<< <r>+I<Right> >>
1966
1967=item B<< <l>+I<Left> >>
1968
1969=item B<< <u>+I<Up> >>
1970
1971=item B<< <d>+I<Down> >>
1972
1973Define actions for the respective arrow buttons
1974
1975=item B<< <b>+I<Begin> >>
1976
1977=item B<< <e>+I<End> >>
1978
1979Define common beginning/end parts for I<quick arrows> which used in
1980conjunction with the above <r> <l> <u> <d> constructs
1981
1982=back
1983
1984=over 4
1985
1986=item For example, define arrows individually,
1987
1988 <u>\E[A
1989
1990 <d>\E[B
1991
1992 <r>\E[C
1993
1994 <l>\E[D
1995
1996=item or all at once
1997
1998 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1999
2000=item or more compactly (factoring out common parts)
2001
2002 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
2003
2004=back
2005
2006X<menuBarSummary>
2007
2008=head2 Command Summary
2009
2010A short summary of the most I<common> commands:
2011
2012=over 4
2013
2014=item [menu:name]
2015
2016use an existing named menuBar or start a new one
2017
2018=item [menu]
2019
2020use the current menuBar
2021
2022=item [title:string]
2023
2024set menuBar title
2025
2026=item [done]
2027
2028set menu access to readonly and, if reading from a file, signal EOF
2029
2030=item [done:name]
2031
2032if reading from a file using [read:file;name] signal EOF
2033
2034=item [rm:name]
2035
2036remove named menuBar(s)
2037
2038=item [rm] [rm:]
2039
2040remove current menuBar
2041
2042=item [rm*] [rm:*]
2043
2044remove all menuBar(s)
2045
2046=item [swap]
2047
2048swap top two menuBars
2049
2050=item [prev]
2051
2052access the previous menuBar
2053
2054=item [next]
2055
2056access the next menuBar
2057
2058=item [show]
2059
2060map menuBar
2061
2062=item [hide]
2063
2064unmap menuBar
2065
2066=item [pixmap;file]
2067
2068=item [pixmap;file;scaling]
2069
2070set a background pixmap
2071
2072=item [read:file]
2073
2074=item [read:file;name]
2075
2076read in a menu from a file
2077
2078=item [dump]
2079
2080dump out all menuBars to /tmp/rxvt-PID
2081
2082=item /
2083
2084access menuBar top level
2085
2086=item ./
2087
2088=item ../
2089
2090=item ../../
2091
2092access current or parent menu level
2093
2094=item /path/menu
2095
2096add/access menu
2097
2098=item /path/{-}
2099
2100add separator
2101
2102=item /path/{item}{rtext} action
2103
2104add/alter menu item
2105
2106=item -/*
2107
2108remove all menus from the menuBar
2109
2110=item -/path/menu
2111
2112remove menu items, separators and submenus from menu
2113
2114=item -/path/menu
2115
2116remove menu
2117
2118=item -/path/{item}
2119
2120remove item
2121
2122=item -/path/{-}
2123
2124remove separator
2125
2126=item <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
2127
2128menu quick arrows
2129
2130=back
2131X<XPM> 1787X<XPM>
2132 1788
2133=head1 XPM 1789=head1 XPM
2134 1790
2135For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value 1791For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value
2382alternative input methods (e.g. kinput2) and will also correctly 2038alternative input methods (e.g. kinput2) and will also correctly
2383set up the input for people using dead keys or compose keys. 2039set up the input for people using dead keys or compose keys.
2384 2040
2385=item --enable-unicode3 (default: off) 2041=item --enable-unicode3 (default: off)
2386 2042
2043Recommended to stay off unless you really need non-BMP characters.
2044
2387Enable direct support for displaying unicode codepoints above 2045Enable direct support for displaying unicode codepoints above
238865535 (the basic multilingual page). This increases storage 204665535 (the basic multilingual page). This increases storage
2389requirements per character from 2 to 4 bytes. X11 fonts do not yet 2047requirements per character from 2 to 4 bytes. X11 fonts do not yet
2390support these extra characters, but Xft does. 2048support these extra characters, but Xft does.
2391 2049
2401composite characters. This is required for proper viewing of text 2059composite characters. This is required for proper viewing of text
2402where accents are encoded as seperate unicode characters. This is 2060where accents are encoded as seperate unicode characters. This is
2403done by using precomposited characters when available or creating 2061done by using precomposited characters when available or creating
2404new pseudo-characters when no precomposed form exists. 2062new pseudo-characters when no precomposed form exists.
2405 2063
2406Without --enable-unicode3, the number of additional precomposed characters 2064Without --enable-unicode3, the number of additional precomposed
2407is rather limited (2048, if this is full, rxvt-unicode will use the 2065characters is somewhat limited (the 6400 private use characters will be
2408private use area, extending the number of combinations to 8448). With
2409--enable-unicode3, no practical limit exists. 2066(ab-)used). With --enable-unicode3, no practical limit exists.
2410 2067
2411This option will also enable storage (but not display) of characters 2068This option will also enable storage (but not display) of characters
2412beyond plane 0 (>65535) when --enable-unicode3 was not specified. 2069beyond plane 0 (>65535) when --enable-unicode3 was not specified.
2413 2070
2414The combining table also contains entries for arabic presentation forms, 2071The combining table also contains entries for arabic presentation forms,
2415but these are not currently used. Bug me if you want these to be used (and 2072but these are not currently used. Bug me if you want these to be used (and
2416tell me how these are to be used...). 2073tell me how these are to be used...).
2417 2074
2418=item --enable-fallback(=CLASS) (default: Rxvt) 2075=item --enable-fallback(=CLASS) (default: Rxvt)
2419 2076
2420When reading resource settings, also read settings for class CLASS. To disable resource fallback use --disable-fallback. 2077When reading resource settings, also read settings for class CLASS. To
2078disable resource fallback use --disable-fallback.
2421 2079
2422=item --with-res-name=NAME (default: urxvt) 2080=item --with-res-name=NAME (default: urxvt)
2423 2081
2424Use the given name as default application name when 2082Use the given name as default application name when
2425reading resources. Specify --with-res-name=rxvt to replace rxvt. 2083reading resources. Specify --with-res-name=rxvt to replace rxvt.
2462 2120
2463=item --enable-tinting (default: on) 2121=item --enable-tinting (default: on)
2464 2122
2465Add support for tinting of transparent backgrounds (requires C<--enable-transparency>). 2123Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2466 2124
2467=item --enable-menubar (default: off) [DEPRECATED]
2468
2469Add support for our menu bar system (this interacts badly with dynamic
2470locale switching currently). This option is DEPRECATED and will be removed
2471in the future.
2472
2473=item --enable-rxvt-scroll (default: on) 2125=item --enable-rxvt-scroll (default: on)
2474 2126
2475Add support for the original rxvt scrollbar. 2127Add support for the original rxvt scrollbar.
2476 2128
2477=item --enable-next-scroll (default: on) 2129=item --enable-next-scroll (default: on)
2486 2138
2487Add support for a very unobtrusive, plain-looking scrollbar that 2139Add support for a very unobtrusive, plain-looking scrollbar that
2488is the favourite of the rxvt-unicode author, having used it for 2140is the favourite of the rxvt-unicode author, having used it for
2489many years. 2141many years.
2490 2142
2491=item --enable-half-shadow (default: off)
2492
2493Make shadows on the scrollbar only half the normal width & height.
2494only applicable to rxvt scrollbars.
2495
2496=item --enable-ttygid (default: off) 2143=item --enable-ttygid (default: off)
2497 2144
2498Change tty device setting to group "tty" - only use this if 2145Change tty device setting to group "tty" - only use this if
2499your system uses this type of security. 2146your system uses this type of security.
2500 2147
2508do it. 2155do it.
2509 2156
2510=item --disable-resources 2157=item --disable-resources
2511 2158
2512Removes any support for resource checking. 2159Removes any support for resource checking.
2513
2514=item --enable-xgetdefault
2515
2516Make resources checking via XGetDefault() instead of our small
2517version which only checks ~/.Xdefaults, or if that doesn't exist then
2518~/.Xresources.
2519
2520Please note that nowadays, things like XIM will automatically pull in and
2521use the full X resource manager, so the overhead of using it might be very
2522small, if nonexistant.
2523
2524=item --enable-strings (default: off)
2525
2526Add support for our possibly faster memset() function and other
2527various routines, overriding your system's versions which may
2528have been hand-crafted in assembly or may require extra libraries
2529to link in. (this breaks ANSI-C rules and has problems on many
2530GNU/Linux systems).
2531 2160
2532=item --disable-swapscreen 2161=item --disable-swapscreen
2533 2162
2534Remove support for secondary/swap screen. 2163Remove support for secondary/swap screen.
2535 2164
2544 2173
2545 MWM-hints 2174 MWM-hints
2546 EWMH-hints (pid, utf8 names) and protocols (ping) 2175 EWMH-hints (pid, utf8 names) and protocols (ping)
2547 seperate underline colour (-underlineColor) 2176 seperate underline colour (-underlineColor)
2548 settable border widths and borderless switch (-w, -b, -bl) 2177 settable border widths and borderless switch (-w, -b, -bl)
2178 visual depth selection (-depth)
2549 settable extra linespacing /-lsp) 2179 settable extra linespacing /-lsp)
2550 iso-14755-2 and -3, and visual feedback 2180 iso-14755-2 and -3, and visual feedback
2551 backindex and forwardindex escape sequence
2552 window op and some xterm/OSC escape sequences
2553 tripleclickwords (-tcw) 2181 tripleclickwords (-tcw)
2554 settable insecure mode (-insecure) 2182 settable insecure mode (-insecure)
2555 keysym remapping support 2183 keysym remapping support
2556 cursor blinking and underline cursor (-cb, -uc) 2184 cursor blinking and underline cursor (-cb, -uc)
2557 XEmbed support (-embed) 2185 XEmbed support (-embed)
2558 user-pty (-pty-fd) 2186 user-pty (-pty-fd)
2559 hold on exit (-hold) 2187 hold on exit (-hold)
2560 skip builtin block graphics (-sbg) 2188 skip builtin block graphics (-sbg)
2189
2190It also enabled some non-essential features otherwise disabled, such as:
2191
2192 some round-trip time optimisations
2193 nearest color allocation on pseudocolor screens
2194 UTF8_STRING supporr for selection
2561 sgr modes 90..97 and 100..107 2195 sgr modes 90..97 and 100..107
2196 backindex and forwardindex escape sequences
2197 view change/zero scorllback esacpe sequences
2198 locale switching escape sequence
2199 window op and some xterm/OSC escape sequences
2200 rectangular selections
2201 trailing space removal for selections
2202 verbose X error handling
2562 2203
2563=item --enable-iso14755 (default: on) 2204=item --enable-iso14755 (default: on)
2564 2205
2565Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2206Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2566F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by 2207F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
2609 2250
2610=item --enable-pointer-blank (default: on) 2251=item --enable-pointer-blank (default: on)
2611 2252
2612Add support to have the pointer disappear when typing or inactive. 2253Add support to have the pointer disappear when typing or inactive.
2613 2254
2614=item --enable-perl (default: off) 2255=item --enable-perl (default: on)
2615 2256
2616Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2257Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2617manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2258manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files
2618in F<src/perl-ext/> for the extensions that are installed by default. The 2259in F<src/perl-ext/> for the extensions that are installed by default. The
2619perl interpreter that is used can be specified via the C<PERL> environment 2260perl interpreter that is used can be specified via the C<PERL> environment

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines