… | |
… | |
18 | The newest version of this document is also available on the World Wide |
18 | The newest version of this document is also available on the World Wide |
19 | Web at |
19 | Web at |
20 | <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. |
20 | <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. |
21 | |
21 | |
22 | FREQUENTLY ASKED QUESTIONS |
22 | FREQUENTLY ASKED QUESTIONS |
|
|
23 | The new selection selects pieces that are too big, how can I select |
|
|
24 | single words? |
|
|
25 | Yes. For example, if you want to select alphanumeric words, you can |
|
|
26 | use the following resource: |
|
|
27 | |
|
|
28 | URxvt.selection.pattern-0: ([[:word:]]+) |
|
|
29 | |
|
|
30 | If you click more than twice, the selection will be extended more |
|
|
31 | and more. |
|
|
32 | |
|
|
33 | To get a selection that is very similar to the old code, try this |
|
|
34 | pattern: |
|
|
35 | |
|
|
36 | URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+) |
|
|
37 | |
|
|
38 | Please also note that the *LeftClick Shift-LeftClik* combination |
|
|
39 | also selects words like the old code. |
|
|
40 | |
|
|
41 | I don't like the new selection/popups/hotkeys/perl, how do I |
|
|
42 | change/disable it? |
|
|
43 | You can disable the perl extension completely by setting the |
|
|
44 | perl-ext-common resource to the empty string, which also keeps |
|
|
45 | rxvt-unicode from initialising perl, saving memory. |
|
|
46 | |
|
|
47 | If you only want to disable specific features, you first have to |
|
|
48 | identify which perl extension is responsible. For this, read the |
|
|
49 | section PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For |
|
|
50 | example, to disable the selection-popup and option-popup, specify |
|
|
51 | this perl-ext-common resource: |
|
|
52 | |
|
|
53 | URxvt.perl-ext-common: default,-selection-popup,-option-popup |
|
|
54 | |
|
|
55 | This will keep the default extensions, but disable the two popup |
|
|
56 | extensions. Some extensions can also be configured, for example, |
|
|
57 | scrollback search mode is triggered by M-s. You can move it to any |
|
|
58 | other combination either by setting the searchable-scrollback |
|
|
59 | resource: |
|
|
60 | |
|
|
61 | URxvt.searchable-scrollback: CM-s |
|
|
62 | |
|
|
63 | Isn't rxvt supposed to be small? Don't all those features bloat? |
|
|
64 | I often get asked about this, and I think, no, they didn't cause |
|
|
65 | extra bloat. If you compare a minimal rxvt and a minimal urxvt, you |
|
|
66 | can see that the urxvt binary is larger (due to some encoding tables |
|
|
67 | always being compiled in), but it actually uses less memory (RSS) |
|
|
68 | after startup. Even with "--disable-everything", this comparison is |
|
|
69 | a bit unfair, as many features unique to urxvt (locale, encoding |
|
|
70 | conversion, iso14755 etc.) are already in use in this mode. |
|
|
71 | |
|
|
72 | text data bss drs rss filename |
|
|
73 | 98398 1664 24 15695 1824 rxvt --disable-everything |
|
|
74 | 188985 9048 66616 18222 1788 urxvt --disable-everything |
|
|
75 | |
|
|
76 | When you "--enable-everything" (which _is_ unfair, as this involves |
|
|
77 | xft and full locale/XIM support which are quite bloaty inside libX11 |
|
|
78 | and my libc), the two diverge, but not unreasnobaly so. |
|
|
79 | |
|
|
80 | text data bss drs rss filename |
|
|
81 | 163431 2152 24 20123 2060 rxvt --enable-everything |
|
|
82 | 1035683 49680 66648 29096 3680 urxvt --enable-everything |
|
|
83 | |
|
|
84 | The very large size of the text section is explained by the |
|
|
85 | east-asian encoding tables, which, if unused, take up disk space but |
|
|
86 | nothing else and can be compiled out unless you rely on X11 core |
|
|
87 | fonts that use those encodings. The BSS size comes from the 64k |
|
|
88 | emergency buffer that my c++ compiler allocates (but of course |
|
|
89 | doesn't use unless you are out of memory). Also, using an xft font |
|
|
90 | instead of a core font immediately adds a few megabytes of RSS. Xft |
|
|
91 | indeed is responsible for a lot of RSS even when not used. |
|
|
92 | |
|
|
93 | Of course, due to every character using two or four bytes instead of |
|
|
94 | one, a large scrollback buffer will ultimately make rxvt-unicode use |
|
|
95 | more memory. |
|
|
96 | |
|
|
97 | Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), |
|
|
98 | this still fares rather well. And compared to some monsters like |
|
|
99 | gnome-terminal (21152k + extra 4204k in separate processes) or |
|
|
100 | konsole (22200k + extra 43180k in daemons that stay around after |
|
|
101 | exit, plus half a minute of startup time, including the hundreds of |
|
|
102 | warnings it spits out), it fares extremely well *g*. |
|
|
103 | |
|
|
104 | Why C++, isn't that unportable/bloated/uncool? |
|
|
105 | Is this a question? :) It comes up very often. The simple answer is: |
|
|
106 | I had to write it, and C++ allowed me to write and maintain it in a |
|
|
107 | fraction of the time and effort (which is a scarce resource for me). |
|
|
108 | Put even shorter: It simply wouldn't exist without C++. |
|
|
109 | |
|
|
110 | My personal stance on this is that C++ is less portable than C, but |
|
|
111 | in the case of rxvt-unicode this hardly matters, as its portability |
|
|
112 | limits are defined by things like X11, pseudo terminals, locale |
|
|
113 | support and unix domain sockets, which are all less portable than |
|
|
114 | C++ itself. |
|
|
115 | |
|
|
116 | Regarding the bloat, see the above question: It's easy to write |
|
|
117 | programs in C that use gobs of memory, an certainly possible to |
|
|
118 | write programs in C++ that don't. C++ also often comes with large |
|
|
119 | libraries, but this is not necessarily the case with GCC. Here is |
|
|
120 | what rxvt links against on my system with a minimal config: |
|
|
121 | |
|
|
122 | libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
|
|
123 | libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000) |
|
|
124 | libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000) |
|
|
125 | /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
|
|
126 | |
|
|
127 | And here is rxvt-unicode: |
|
|
128 | |
|
|
129 | libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
|
|
130 | libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000) |
|
|
131 | libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000) |
|
|
132 | libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000) |
|
|
133 | /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
|
|
134 | |
|
|
135 | No large bloated libraries (of course, none were linked in |
|
|
136 | statically), except maybe libX11 :) |
|
|
137 | |
|
|
138 | Does it support tabs, can I have a tabbed rxvt-unicode? |
|
|
139 | rxvt-unicode does not directly support tabs. It will work fine with |
|
|
140 | tabbing functionality of many window managers or similar tabbing |
|
|
141 | programs, and its embedding-features allow it to be embedded into |
|
|
142 | other programs, as witnessed by doc/rxvt-tabbed or the upcoming |
|
|
143 | "Gtk2::URxvt" perl module, which features a tabbed urxvt (murxvt) |
|
|
144 | terminal as an example embedding application. |
|
|
145 | |
23 | How do I know which rxvt-unicode version I'm using? |
146 | How do I know which rxvt-unicode version I'm using? |
24 | The version number is displayed with the usage (-h). Also the escape |
147 | The version number is displayed with the usage (-h). Also the escape |
25 | sequence "ESC [ 8 n" sets the window title to the version number. |
148 | sequence "ESC [ 8 n" sets the window title to the version number. |
|
|
149 | When using the rxvtc client, the version displayed is that of the |
|
|
150 | daemon. |
26 | |
151 | |
27 | I am using Debian GNU/Linux and have a problem... |
152 | I am using Debian GNU/Linux and have a problem... |
28 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
153 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
29 | patches that considerably change the behaviour of rxvt-unicode. |
154 | patches that considerably change the behaviour of rxvt-unicode. |
30 | Before reporting a bug to the original rxvt-unicode author please |
155 | Before reporting a bug to the original rxvt-unicode author please |
… | |
… | |
36 | |
161 | |
37 | For other problems that also affect the Debian package, you can and |
162 | For other problems that also affect the Debian package, you can and |
38 | probably should use the Debian BTS, too, because, after all, it's |
163 | probably should use the Debian BTS, too, because, after all, it's |
39 | also a bug in the Debian version and it serves as a reminder for |
164 | also a bug in the Debian version and it serves as a reminder for |
40 | other users that might encounter the same issue. |
165 | other users that might encounter the same issue. |
|
|
166 | |
|
|
167 | I am maintaining rxvt-unicode for distribution/OS XXX, any |
|
|
168 | recommendation? |
|
|
169 | You should build one binary with the default options. configure now |
|
|
170 | enables most useful options, and the trend goes to making them |
|
|
171 | runtime-switchable, too, so there is usually no drawback to enbaling |
|
|
172 | them, except higher disk and possibly memory usage. The perl |
|
|
173 | interpreter should be enabled, as important functionality (menus, |
|
|
174 | selection, likely more in the future) depends on it. |
|
|
175 | |
|
|
176 | You should not overwrite the "perl-ext-common" snd "perl-ext" |
|
|
177 | resources system-wide (except maybe with "defaults"). This will |
|
|
178 | result in useful behaviour. If your distribution aims at low memory, |
|
|
179 | add an empty "perl-ext-common" resource to the app-defaults file. |
|
|
180 | This will keep the perl interpreter disabled until the user enables |
|
|
181 | it. |
|
|
182 | |
|
|
183 | If you can/want build more binaries, I recommend building a minimal |
|
|
184 | one with "--disable-everything" (very useful) and a maximal one with |
|
|
185 | "--enable-everything" (less useful, it will be very big due to a lot |
|
|
186 | of encodings built-in that increase download times and are rarely |
|
|
187 | used). |
|
|
188 | |
|
|
189 | I need to make it setuid/setgid to support utmp/ptys on my OS, is this |
|
|
190 | safe? |
|
|
191 | Likely not. While I honestly try to make it secure, and am probably |
|
|
192 | not bad at it, I think it is simply unreasonable to expect all of |
|
|
193 | freetype + fontconfig + xft + xlib + perl + ... + rxvt-unicode |
|
|
194 | itself to all be secure. Also, rxvt-unicode disables some options |
|
|
195 | when it detects that it runs setuid or setgid, which is not nice. |
|
|
196 | Besides, with the embedded perl interpreter the possibility for |
|
|
197 | security problems easily multiplies. |
|
|
198 | |
|
|
199 | Elevated privileges are only required for utmp and pty operations on |
|
|
200 | some systems (for example, GNU/Linux doesn't need any extra |
|
|
201 | privileges for ptys, but some need it for utmp support). It is |
|
|
202 | planned to mvoe this into a forked handler process, but this is not |
|
|
203 | yet done. |
|
|
204 | |
|
|
205 | So, while setuid/setgid operation is supported and not a problem on |
|
|
206 | your typical single-user-no-other-logins unix desktop, always |
|
|
207 | remember that its an awful lot of code, most of which isn't checked |
|
|
208 | for security issues regularly. |
41 | |
209 | |
42 | When I log-in to another system it tells me about missing terminfo data? |
210 | When I log-in to another system it tells me about missing terminfo data? |
43 | The terminal description used by rxvt-unicode is not as widely |
211 | The terminal description used by rxvt-unicode is not as widely |
44 | available as that for xterm, or even rxvt (for which the same |
212 | available as that for xterm, or even rxvt (for which the same |
45 | problem often arises). |
213 | problem often arises). |
… | |
… | |
433 | |
601 | |
434 | My input method wants <some encoding> but I want UTF-8, what can I do? |
602 | My input method wants <some encoding> but I want UTF-8, what can I do? |
435 | You can specify separate locales for the input method and the rest |
603 | You can specify separate locales for the input method and the rest |
436 | of the terminal, using the resource "imlocale": |
604 | of the terminal, using the resource "imlocale": |
437 | |
605 | |
438 | URxvt*imlocale: ja_JP.EUC-JP |
606 | URxvt.imlocale: ja_JP.EUC-JP |
439 | |
607 | |
440 | Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and |
608 | Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and |
441 | still use your input method. Please note, however, that you will not |
609 | still use your input method. Please note, however, that you will not |
442 | be able to input characters outside "EUC-JP" in a normal way then, |
610 | be able to input characters outside "EUC-JP" in a normal way then, |
443 | as your input method limits you. |
611 | as your input method limits you. |
… | |
… | |
486 | Mouse cut/paste suddenly no longer works. |
654 | Mouse cut/paste suddenly no longer works. |
487 | Make sure that mouse reporting is actually turned off since killing |
655 | Make sure that mouse reporting is actually turned off since killing |
488 | some editors prematurely may leave the mouse in mouse report mode. |
656 | some editors prematurely may leave the mouse in mouse report mode. |
489 | I've heard that tcsh may use mouse reporting unless it otherwise |
657 | I've heard that tcsh may use mouse reporting unless it otherwise |
490 | specified. A quick check is to see if cut/paste works when the Alt |
658 | specified. A quick check is to see if cut/paste works when the Alt |
491 | or Shift keys are depressed. See rxvt(7) |
659 | or Shift keys are depressed. |
492 | |
660 | |
493 | What's with this bold/blink stuff? |
661 | What's with this bold/blink stuff? |
494 | If no bold colour is set via "colorBD:", bold will invert text using |
662 | If no bold colour is set via "colorBD:", bold will invert text using |
495 | the standard foreground colour. |
663 | the standard foreground colour. |
496 | |
664 | |
… | |
… | |
582 | |
750 | |
583 | # use Backspace = ^? |
751 | # use Backspace = ^? |
584 | $ stty erase ^? |
752 | $ stty erase ^? |
585 | $ rxvt |
753 | $ rxvt |
586 | |
754 | |
587 | Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7). |
755 | Toggle with "ESC [ 36 h" / "ESC [ 36 l". |
588 | |
756 | |
589 | For an existing rxvt-unicode: |
757 | For an existing rxvt-unicode: |
590 | |
758 | |
591 | # use Backspace = ^H |
759 | # use Backspace = ^H |
592 | $ stty erase ^H |
760 | $ stty erase ^H |
… | |
… | |
1084 | |
1252 | |
1085 | "Ps = 9" X10 XTerm |
1253 | "Ps = 9" X10 XTerm |
1086 | h Send Mouse X & Y on button press. |
1254 | h Send Mouse X & Y on button press. |
1087 | l No mouse reporting. |
1255 | l No mouse reporting. |
1088 | |
1256 | |
1089 | "Ps = 10" (rxvt) |
|
|
1090 | h menuBar visible |
|
|
1091 | l menuBar invisible |
|
|
1092 | |
|
|
1093 | "Ps = 25" |
1257 | "Ps = 25" |
1094 | h Visible cursor {cnorm/cvvis} |
1258 | h Visible cursor {cnorm/cvvis} |
1095 | l Invisible cursor {civis} |
1259 | l Invisible cursor {civis} |
1096 | |
1260 | |
1097 | "Ps = 30" |
1261 | "Ps = 30" |
… | |
… | |
1145 | l Scroll to bottom on TTY output |
1309 | l Scroll to bottom on TTY output |
1146 | |
1310 | |
1147 | "Ps = 1011" (rxvt) |
1311 | "Ps = 1011" (rxvt) |
1148 | h Scroll to bottom when a key is pressed |
1312 | h Scroll to bottom when a key is pressed |
1149 | l Don't scroll to bottom when a key is pressed |
1313 | l Don't scroll to bottom when a key is pressed |
|
|
1314 | |
|
|
1315 | "Ps = 1021" (rxvt) |
|
|
1316 | h Bold/italic implies high intensity (see option -is) |
|
|
1317 | l Font styles have no effect on intensity (Compile styles) |
1150 | |
1318 | |
1151 | "Ps = 1047" |
1319 | "Ps = 1047" |
1152 | h Use Alternate Screen Buffer |
1320 | h Use Alternate Screen Buffer |
1153 | l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it |
1321 | l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it |
1154 | |
1322 | |
… | |
… | |
1177 | Ps = 10 Change colour of text foreground to Pt (NB: may change in future) |
1345 | Ps = 10 Change colour of text foreground to Pt (NB: may change in future) |
1178 | Ps = 11 Change colour of text background to Pt (NB: may change in future) |
1346 | Ps = 11 Change colour of text background to Pt (NB: may change in future) |
1179 | Ps = 12 Change colour of text cursor foreground to Pt |
1347 | Ps = 12 Change colour of text cursor foreground to Pt |
1180 | Ps = 13 Change colour of mouse foreground to Pt |
1348 | Ps = 13 Change colour of mouse foreground to Pt |
1181 | Ps = 17 Change colour of highlight characters to Pt |
1349 | Ps = 17 Change colour of highlight characters to Pt |
1182 | Ps = 18 Change colour of bold characters to Pt |
1350 | Ps = 18 Change colour of bold characters to Pt [deprecated, see 706] |
1183 | Ps = 19 Change colour of underlined characters to Pt |
1351 | Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707] |
1184 | Ps = 20 Change default background to Pt |
1352 | Ps = 20 Change default background to Pt |
1185 | Ps = 39 Change default foreground colour to Pt. |
1353 | Ps = 39 Change default foreground colour to Pt. |
1186 | Ps = 46 Change Log File to Pt unimplemented |
1354 | Ps = 46 Change Log File to Pt unimplemented |
1187 | Ps = 49 Change default background colour to Pt. |
1355 | Ps = 49 Change default background colour to Pt. |
1188 | Ps = 50 Set fontset to Pt, with the following special values of Pt (rxvt) #+n change up n #-n change down n if n is missing of 0, a value of 1 is used empty change to font0 n change to font n |
1356 | Ps = 50 Set fontset to Pt, with the following special values of Pt (rxvt) #+n change up n #-n change down n if n is missing of 0, a value of 1 is used empty change to font0 n change to font n |
1189 | Ps = 55 Log all scrollback buffer and all of screen to Pt |
1357 | Ps = 55 Log all scrollback buffer and all of screen to Pt |
1190 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). |
1358 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). |
1191 | Ps = 703 Menubar command Pt (Compile menubar). |
|
|
1192 | Ps = 704 Change colour of italic characters to Pt |
1359 | Ps = 704 Change colour of italic characters to Pt |
1193 | Ps = 705 Change background pixmap tint colour to Pt (Compile transparency). |
1360 | Ps = 705 Change background pixmap tint colour to Pt (Compile transparency). |
|
|
1361 | Ps = 706 Change colour of bold characters to Pt |
|
|
1362 | Ps = 707 Change colour of underlined characters to Pt |
1194 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
1363 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
1195 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). |
1364 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). |
1196 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1365 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1197 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1366 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1198 | Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
1367 | Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
1199 | Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
1368 | Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
|
|
1369 | Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl). |
1200 | |
1370 | |
1201 | |
1371 | |
1202 | |
|
|
1203 | menuBar |
|
|
1204 | The exact syntax used is *almost* solidified. In the menus, DON'T try to |
|
|
1205 | use menuBar commands that add or remove a menuBar. |
|
|
1206 | |
|
|
1207 | Note that in all of the commands, the */path/* *cannot* be omitted: use |
|
|
1208 | ./ to specify a menu relative to the current menu. |
|
|
1209 | |
|
|
1210 | Overview of menuBar operation |
|
|
1211 | For the menuBar XTerm escape sequence "ESC ] 703 ; Pt ST", the syntax of |
|
|
1212 | "Pt" can be used for a variety of tasks: |
|
|
1213 | |
|
|
1214 | At the top level is the current menuBar which is a member of a circular |
|
|
1215 | linked-list of other such menuBars. |
|
|
1216 | |
|
|
1217 | The menuBar acts as a parent for the various drop-down menus, which in |
|
|
1218 | turn, may have labels, separator lines, menuItems and subMenus. |
|
|
1219 | |
|
|
1220 | The menuItems are the useful bits: you can use them to mimic keyboard |
|
|
1221 | input or even to send text or escape sequences back to rxvt. |
|
|
1222 | |
|
|
1223 | The menuBar syntax is intended to provide a simple yet robust method of |
|
|
1224 | constructing and manipulating menus and navigating through the menuBars. |
|
|
1225 | |
|
|
1226 | The first step is to use the tag [menu:*name*] which creates the menuBar |
|
|
1227 | called *name* and allows access. You may now or menus, subMenus, and |
|
|
1228 | menuItems. Finally, use the tag [done] to set the menuBar access as |
|
|
1229 | readonly to prevent accidental corruption of the menus. To re-access the |
|
|
1230 | current menuBar for alterations, use the tag [menu], make the |
|
|
1231 | alterations and then use [done] |
|
|
1232 | |
|
|
1233 | |
|
|
1234 | |
|
|
1235 | Commands |
|
|
1236 | [menu:+*name*] |
|
|
1237 | access the named menuBar for creation or alteration. If a new |
|
|
1238 | menuBar is created, it is called *name* (max of 15 chars) and the |
|
|
1239 | current menuBar is pushed onto the stack |
|
|
1240 | |
|
|
1241 | [menu] |
|
|
1242 | access the current menuBar for alteration |
|
|
1243 | |
|
|
1244 | [title:+*string*] |
|
|
1245 | set the current menuBar's title to *string*, which may contain the |
|
|
1246 | following format specifiers: |
|
|
1247 | |
|
|
1248 | B<%n> rxvt name (as per the B<-name> command-line option) |
|
|
1249 | B<%v> rxvt version |
|
|
1250 | B<%%> literal B<%> character |
|
|
1251 | |
|
|
1252 | [done] |
|
|
1253 | set menuBar access as readonly. End-of-file tag for [read:+*file*] |
|
|
1254 | operations. |
|
|
1255 | |
|
|
1256 | [read:+*file*] |
|
|
1257 | read menu commands directly from *file* (extension ".menu" will be |
|
|
1258 | appended if required.) Start reading at a line with [menu] or |
|
|
1259 | [menu:+*name* and continuing until [done] is encountered. |
|
|
1260 | |
|
|
1261 | Blank and comment lines (starting with #) are ignored. Actually, |
|
|
1262 | since any invalid menu commands are also ignored, almost anything |
|
|
1263 | could be construed as a comment line, but this may be tightened up |
|
|
1264 | in the future ... so don't count on it!. |
|
|
1265 | |
|
|
1266 | [read:+*file*;+*name*] |
|
|
1267 | The same as [read:+*file*], but start reading at a line with |
|
|
1268 | [menu:+*name*] and continuing until [done:+*name*] or [done] is |
|
|
1269 | encountered. |
|
|
1270 | |
|
|
1271 | [dump] |
|
|
1272 | dump all menuBars to the file /tmp/rxvt-PID in a format suitable for |
|
|
1273 | later rereading. |
|
|
1274 | |
|
|
1275 | [rm:name] |
|
|
1276 | remove the named menuBar |
|
|
1277 | |
|
|
1278 | [rm] [rm:] |
|
|
1279 | remove the current menuBar |
|
|
1280 | |
|
|
1281 | [rm*] [rm:*] |
|
|
1282 | remove all menuBars |
|
|
1283 | |
|
|
1284 | [swap] |
|
|
1285 | swap the top two menuBars |
|
|
1286 | |
|
|
1287 | [prev] |
|
|
1288 | access the previous menuBar |
|
|
1289 | |
|
|
1290 | [next] |
|
|
1291 | access the next menuBar |
|
|
1292 | |
|
|
1293 | [show] |
|
|
1294 | Enable display of the menuBar |
|
|
1295 | |
|
|
1296 | [hide] |
|
|
1297 | Disable display of the menuBar |
|
|
1298 | |
|
|
1299 | [pixmap:+*name*] |
|
|
1300 | [pixmap:+*name*;*scaling*] |
|
|
1301 | (set the background pixmap globally |
|
|
1302 | |
|
|
1303 | A Future implementation *may* make this local to the menubar) |
|
|
1304 | |
|
|
1305 | [:+*command*:] |
|
|
1306 | ignore the menu readonly status and issue a *command* to or a menu |
|
|
1307 | or menuitem or change the ; a useful shortcut for setting the quick |
|
|
1308 | arrows from a menuBar. |
|
|
1309 | |
|
|
1310 | |
|
|
1311 | |
|
|
1312 | Adding and accessing menus |
|
|
1313 | The following commands may also be + prefixed. |
|
|
1314 | |
|
|
1315 | /+ access menuBar top level |
|
|
1316 | |
|
|
1317 | ./+ access current menu level |
|
|
1318 | |
|
|
1319 | ../+ |
|
|
1320 | access parent menu (1 level up) |
|
|
1321 | |
|
|
1322 | ../../ |
|
|
1323 | access parent menu (multiple levels up) |
|
|
1324 | |
|
|
1325 | */path/*menu |
|
|
1326 | add/access menu |
|
|
1327 | |
|
|
1328 | */path/*menu/* |
|
|
1329 | add/access menu and clear it if it exists |
|
|
1330 | |
|
|
1331 | */path/*{-} |
|
|
1332 | add separator |
|
|
1333 | |
|
|
1334 | */path/*{item} |
|
|
1335 | add item as a label |
|
|
1336 | |
|
|
1337 | */path/*{item} action |
|
|
1338 | add/alter *menuitem* with an associated *action* |
|
|
1339 | |
|
|
1340 | */path/*{item}{right-text} |
|
|
1341 | add/alter *menuitem* with right-text as the right-justified text and |
|
|
1342 | as the associated *action* |
|
|
1343 | |
|
|
1344 | */path/*{item}{rtext} action |
|
|
1345 | add/alter *menuitem* with an associated *action* and with rtext as |
|
|
1346 | the right-justified text. |
|
|
1347 | |
|
|
1348 | Special characters in *action* must be backslash-escaped: |
|
|
1349 | \a \b \E \e \n \r \t \octal |
|
|
1350 | |
|
|
1351 | or in control-character notation: |
|
|
1352 | ^@, ^A .. ^Z .. ^_, ^? |
|
|
1353 | |
|
|
1354 | To send a string starting with a NUL (^@) character to the program, |
|
|
1355 | start *action* with a pair of NUL characters (^@^@), the first of which |
|
|
1356 | will be stripped off and the balance directed to the program. Otherwise |
|
|
1357 | if *action* begins with NUL followed by non-+NUL characters, the leading |
|
|
1358 | NUL is stripped off and the balance is sent back to rxvt. |
|
|
1359 | |
|
|
1360 | As a convenience for the many Emacs-type editors, *action* may start |
|
|
1361 | with M- (eg, M-$ is equivalent to \E$) and a CR will be appended if |
|
|
1362 | missed from M-x commands. |
|
|
1363 | |
|
|
1364 | As a convenience for issuing XTerm ESC ] sequences from a menubar (or |
|
|
1365 | quick arrow), a BEL (^G) will be appended if needed. |
|
|
1366 | |
|
|
1367 | For example, |
|
|
1368 | M-xapropos is equivalent to \Exapropos\r |
|
|
1369 | |
|
|
1370 | and \E]703;mona;100 is equivalent to \E]703;mona;100\a |
|
|
1371 | |
|
|
1372 | The option {*right-rtext*} will be right-justified. In the absence of a |
|
|
1373 | specified action, this text will be used as the *action* as well. |
|
|
1374 | |
|
|
1375 | For example, |
|
|
1376 | /File/{Open}{^X^F} is equivalent to /File/{Open}{^X^F} ^X^F |
|
|
1377 | |
|
|
1378 | The left label *is* necessary, since it's used for matching, but |
|
|
1379 | implicitly hiding the left label (by using same name for both left and |
|
|
1380 | right labels), or explicitly hiding the left label (by preceeding it |
|
|
1381 | with a dot), makes it possible to have right-justified text only. |
|
|
1382 | |
|
|
1383 | For example, |
|
|
1384 | /File/{Open}{Open} Open-File-Action |
|
|
1385 | |
|
|
1386 | or hiding it |
|
|
1387 | /File/{.anylabel}{Open} Open-File-Action |
|
|
1388 | |
|
|
1389 | |
|
|
1390 | |
|
|
1391 | Removing menus |
|
|
1392 | -/*+ |
|
|
1393 | remove all menus from the menuBar, the same as [clear] |
|
|
1394 | |
|
|
1395 | -+*/path*menu+ |
|
|
1396 | remove menu |
|
|
1397 | |
|
|
1398 | -+*/path*{item}+ |
|
|
1399 | remove item |
|
|
1400 | |
|
|
1401 | -+*/path*{-} |
|
|
1402 | remove separator) |
|
|
1403 | |
|
|
1404 | -/path/menu/* |
|
|
1405 | remove all items, separators and submenus from menu |
|
|
1406 | |
|
|
1407 | |
|
|
1408 | |
|
|
1409 | Quick Arrows |
|
|
1410 | The menus also provide a hook for *quick arrows* to provide easier user |
|
|
1411 | access. If nothing has been explicitly set, the default is to emulate |
|
|
1412 | the curror keys. The syntax permits each arrow to be altered |
|
|
1413 | individually or all four at once without re-entering their common |
|
|
1414 | beginning/end text. For example, to explicitly associate cursor actions |
|
|
1415 | with the arrows, any of the following forms could be used: |
|
|
1416 | |
|
|
1417 | <r>+*Right* |
|
|
1418 | <l>+*Left* |
|
|
1419 | <u>+*Up* |
|
|
1420 | <d>+*Down* |
|
|
1421 | Define actions for the respective arrow buttons |
|
|
1422 | |
|
|
1423 | <b>+*Begin* |
|
|
1424 | <e>+*End* |
|
|
1425 | Define common beginning/end parts for *quick arrows* which used in |
|
|
1426 | conjunction with the above <r> <l> <u> <d> constructs |
|
|
1427 | |
|
|
1428 | For example, define arrows individually, |
|
|
1429 | <u>\E[A |
|
|
1430 | |
|
|
1431 | <d>\E[B |
|
|
1432 | |
|
|
1433 | <r>\E[C |
|
|
1434 | |
|
|
1435 | <l>\E[D |
|
|
1436 | |
|
|
1437 | or all at once |
|
|
1438 | <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D |
|
|
1439 | |
|
|
1440 | or more compactly (factoring out common parts) |
|
|
1441 | <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D |
|
|
1442 | |
|
|
1443 | |
|
|
1444 | |
|
|
1445 | Command Summary |
|
|
1446 | A short summary of the most *common* commands: |
|
|
1447 | |
|
|
1448 | [menu:name] |
|
|
1449 | use an existing named menuBar or start a new one |
|
|
1450 | |
|
|
1451 | [menu] |
|
|
1452 | use the current menuBar |
|
|
1453 | |
|
|
1454 | [title:string] |
|
|
1455 | set menuBar title |
|
|
1456 | |
|
|
1457 | [done] |
|
|
1458 | set menu access to readonly and, if reading from a file, signal EOF |
|
|
1459 | |
|
|
1460 | [done:name] |
|
|
1461 | if reading from a file using [read:file;name] signal EOF |
|
|
1462 | |
|
|
1463 | [rm:name] |
|
|
1464 | remove named menuBar(s) |
|
|
1465 | |
|
|
1466 | [rm] [rm:] |
|
|
1467 | remove current menuBar |
|
|
1468 | |
|
|
1469 | [rm*] [rm:*] |
|
|
1470 | remove all menuBar(s) |
|
|
1471 | |
|
|
1472 | [swap] |
|
|
1473 | swap top two menuBars |
|
|
1474 | |
|
|
1475 | [prev] |
|
|
1476 | access the previous menuBar |
|
|
1477 | |
|
|
1478 | [next] |
|
|
1479 | access the next menuBar |
|
|
1480 | |
|
|
1481 | [show] |
|
|
1482 | map menuBar |
|
|
1483 | |
|
|
1484 | [hide] |
|
|
1485 | unmap menuBar |
|
|
1486 | |
|
|
1487 | [pixmap;file] |
|
|
1488 | [pixmap;file;scaling] |
|
|
1489 | set a background pixmap |
|
|
1490 | |
|
|
1491 | [read:file] |
|
|
1492 | [read:file;name] |
|
|
1493 | read in a menu from a file |
|
|
1494 | |
|
|
1495 | [dump] |
|
|
1496 | dump out all menuBars to /tmp/rxvt-PID |
|
|
1497 | |
|
|
1498 | / access menuBar top level |
|
|
1499 | |
|
|
1500 | ./ |
|
|
1501 | ../ |
|
|
1502 | ../../ |
|
|
1503 | access current or parent menu level |
|
|
1504 | |
|
|
1505 | /path/menu |
|
|
1506 | add/access menu |
|
|
1507 | |
|
|
1508 | /path/{-} |
|
|
1509 | add separator |
|
|
1510 | |
|
|
1511 | /path/{item}{rtext} action |
|
|
1512 | add/alter menu item |
|
|
1513 | |
|
|
1514 | -/* remove all menus from the menuBar |
|
|
1515 | |
|
|
1516 | -/path/menu |
|
|
1517 | remove menu items, separators and submenus from menu |
|
|
1518 | |
|
|
1519 | -/path/menu |
|
|
1520 | remove menu |
|
|
1521 | |
|
|
1522 | -/path/{item} |
|
|
1523 | remove item |
|
|
1524 | |
|
|
1525 | -/path/{-} |
|
|
1526 | remove separator |
|
|
1527 | |
|
|
1528 | <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End |
|
|
1529 | menu quick arrows |
|
|
1530 | |
1372 | |
1531 | XPM |
1373 | XPM |
1532 | For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt" |
1374 | For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt" |
1533 | can be the name of the background pixmap followed by a sequence of |
1375 | can be the name of the background pixmap followed by a sequence of |
1534 | scaling/positioning commands separated by semi-colons. The |
1376 | scaling/positioning commands separated by semi-colons. The |
… | |
… | |
1775 | --enable-lastlog (default: on) |
1617 | --enable-lastlog (default: on) |
1776 | Write user and tty to lastlog file (used by programs like lastlogin) |
1618 | Write user and tty to lastlog file (used by programs like lastlogin) |
1777 | at start of rxvt execution. This option requires --enable-utmp to |
1619 | at start of rxvt execution. This option requires --enable-utmp to |
1778 | also be specified. |
1620 | also be specified. |
1779 | |
1621 | |
1780 | --enable-xpm-background (default: off) |
1622 | --enable-xpm-background (default: on) |
1781 | Add support for XPM background pixmaps. |
1623 | Add support for XPM background pixmaps. |
1782 | |
1624 | |
1783 | --enable-transparency (default: off) |
1625 | --enable-transparency (default: on) |
1784 | Add support for inheriting parent backgrounds thus giving a fake |
1626 | Add support for inheriting parent backgrounds thus giving a fake |
1785 | transparency to the term. |
1627 | transparency to the term. |
1786 | |
1628 | |
1787 | --enable-fading (default: on) |
1629 | --enable-fading (default: on) |
1788 | Add support for fading the text when focus is lost (requires |
1630 | Add support for fading the text when focus is lost (requires |
1789 | "--enable-transparency"). |
1631 | "--enable-transparency"). |
1790 | |
1632 | |
1791 | --enable-tinting (default: on) |
1633 | --enable-tinting (default: on) |
1792 | Add support for tinting of transparent backgrounds (requires |
1634 | Add support for tinting of transparent backgrounds (requires |
1793 | "--enable-transparency"). |
1635 | "--enable-transparency"). |
1794 | |
|
|
1795 | --enable-menubar (default: off) |
|
|
1796 | Add support for our menu bar system (this interacts badly with |
|
|
1797 | dynamic locale switching currently). |
|
|
1798 | |
1636 | |
1799 | --enable-rxvt-scroll (default: on) |
1637 | --enable-rxvt-scroll (default: on) |
1800 | Add support for the original rxvt scrollbar. |
1638 | Add support for the original rxvt scrollbar. |
1801 | |
1639 | |
1802 | --enable-next-scroll (default: on) |
1640 | --enable-next-scroll (default: on) |
… | |
… | |
1827 | it. |
1665 | it. |
1828 | |
1666 | |
1829 | --disable-resources |
1667 | --disable-resources |
1830 | Removes any support for resource checking. |
1668 | Removes any support for resource checking. |
1831 | |
1669 | |
1832 | --enable-xgetdefault |
|
|
1833 | Make resources checking via XGetDefault() instead of our small |
|
|
1834 | version which only checks ~/.Xdefaults, or if that doesn't exist |
|
|
1835 | then ~/.Xresources. |
|
|
1836 | |
|
|
1837 | Please note that nowadays, things like XIM will automatically pull |
|
|
1838 | in and use the full X resource manager, so the overhead of using it |
|
|
1839 | might be very small, if nonexistant. |
|
|
1840 | |
|
|
1841 | --enable-strings (default: off) |
|
|
1842 | Add support for our possibly faster memset() function and other |
|
|
1843 | various routines, overriding your system's versions which may have |
|
|
1844 | been hand-crafted in assembly or may require extra libraries to link |
|
|
1845 | in. (this breaks ANSI-C rules and has problems on many GNU/Linux |
|
|
1846 | systems). |
|
|
1847 | |
|
|
1848 | --disable-swapscreen |
1670 | --disable-swapscreen |
1849 | Remove support for secondary/swap screen. |
1671 | Remove support for secondary/swap screen. |
1850 | |
1672 | |
1851 | --enable-frills (default: on) |
1673 | --enable-frills (default: on) |
1852 | Add support for many small features that are not essential but nice |
1674 | Add support for many small features that are not essential but nice |
… | |
… | |
1856 | A non-exhaustive list of features enabled by "--enable-frills" |
1678 | A non-exhaustive list of features enabled by "--enable-frills" |
1857 | (possibly in combination with other switches) is: |
1679 | (possibly in combination with other switches) is: |
1858 | |
1680 | |
1859 | MWM-hints |
1681 | MWM-hints |
1860 | EWMH-hints (pid, utf8 names) and protocols (ping) |
1682 | EWMH-hints (pid, utf8 names) and protocols (ping) |
1861 | seperate underline colour |
1683 | seperate underline colour (-underlineColor) |
1862 | settable border widths and borderless switch |
1684 | settable border widths and borderless switch (-w, -b, -bl) |
1863 | settable extra linespacing |
1685 | settable extra linespacing /-lsp) |
1864 | iso-14755-2 and -3, and visual feedback |
1686 | iso-14755-2 and -3, and visual feedback |
1865 | backindex and forwardindex escape sequence |
1687 | backindex and forwardindex escape sequence |
1866 | window op and some xterm/OSC escape sequences |
1688 | window op and some xterm/OSC escape sequences |
1867 | tripleclickwords |
1689 | tripleclickwords (-tcw) |
1868 | settable insecure mode |
1690 | settable insecure mode (-insecure) |
1869 | keysym remapping support |
1691 | keysym remapping support |
1870 | cursor blinking and underline cursor |
1692 | cursor blinking and underline cursor (-cb, -uc) |
1871 | -embed and -pty-fd options |
1693 | XEmbed support (-embed) |
|
|
1694 | user-pty (-pty-fd) |
|
|
1695 | hold on exit (-hold) |
|
|
1696 | skip builtin block graphics (-sbg) |
|
|
1697 | sgr modes 90..97 and 100..107 |
1872 | |
1698 | |
1873 | --enable-iso14755 (default: on) |
1699 | --enable-iso14755 (default: on) |
1874 | Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt). |
1700 | Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt). |
1875 | Basic support (section 5.1) is enabled by "--enable-frills", while |
1701 | Basic support (section 5.1) is enabled by "--enable-frills", while |
1876 | support for 5.2, 5.3 and 5.4 is enabled with this switch. |
1702 | support for 5.2, 5.3 and 5.4 is enabled with this switch. |
… | |
… | |
1902 | --enable-dlmalloc (default: off) |
1728 | --enable-dlmalloc (default: off) |
1903 | Use Doug Lea's malloc - which is good for a production version See |
1729 | Use Doug Lea's malloc - which is good for a production version See |
1904 | <http://g.oswego.edu/dl/html/malloc.html> for details. |
1730 | <http://g.oswego.edu/dl/html/malloc.html> for details. |
1905 | |
1731 | |
1906 | --enable-smart-resize (default: on) |
1732 | --enable-smart-resize (default: on) |
1907 | Add smart growth/shrink behaviour when changing font size via from |
1733 | Add smart growth/shrink behaviour when changing font size via hot |
1908 | hot keys. This should keep in a fixed position the rxvt corner which |
1734 | keys. This should keep the window corner which is closest to a |
1909 | is closest to a corner of the screen. |
1735 | corner of the screen in a fixed position. |
1910 | |
1736 | |
1911 | --enable-pointer-blank (default: on) |
1737 | --enable-pointer-blank (default: on) |
1912 | Add support to have the pointer disappear when typing or inactive. |
1738 | Add support to have the pointer disappear when typing or inactive. |
|
|
1739 | |
|
|
1740 | --enable-perl (default: off) |
|
|
1741 | Enable an embedded perl interpreter. See the rxvtperl(3) manpage |
|
|
1742 | (doc/rxvtperl.txt) for more info on this feature, or the files in |
|
|
1743 | src/perl-ext/ for the extensions that are installed by default. The |
|
|
1744 | perl interpreter that is used can be specified via the "PERL" |
|
|
1745 | environment variable when running configure. |
1913 | |
1746 | |
1914 | --with-name=NAME (default: urxvt) |
1747 | --with-name=NAME (default: urxvt) |
1915 | Set the basename for the installed binaries, resulting in "urxvt", |
1748 | Set the basename for the installed binaries, resulting in "urxvt", |
1916 | "urxvtd" etc.). Specify "--with-name=rxvt" to replace with "rxvt". |
1749 | "urxvtd" etc.). Specify "--with-name=rxvt" to replace with "rxvt". |
1917 | |
1750 | |