1 | NAME |
1 | NAME |
2 | RXVT REFERENCE - FAQ, command sequences and other background information |
2 | RXVT REFERENCE - FAQ, command sequences and other background information |
3 | |
3 | |
|
|
4 | SYNOPSIS |
|
|
5 | # set a new font set |
|
|
6 | printf '\33]50;%s\007' 9x15,xft:Kochi" Mincho" |
|
|
7 | |
|
|
8 | # change the locale and tell rxvt-unicode about it |
|
|
9 | export LC_CTYPE=ja_JP.EUC-JP; printf "\33]701;$LC_CTYPE\007" |
|
|
10 | |
|
|
11 | # set window title |
|
|
12 | printf '\33]2;%s\007' "new window title" |
|
|
13 | |
|
|
14 | DESCRIPTION |
|
|
15 | This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting |
|
|
16 | all escape sequences, and other background information. |
|
|
17 | |
|
|
18 | The newest version of this document is also available on the World Wide |
|
|
19 | Web at |
|
|
20 | <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. |
|
|
21 | |
4 | 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 | |
5 | How do I know which rxvt-unicode version I'm using? |
146 | How do I know which rxvt-unicode version I'm using? |
6 | 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 |
7 | sequence "ESC[8n" 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. |
|
|
151 | |
|
|
152 | I am using Debian GNU/Linux and have a problem... |
|
|
153 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
|
|
154 | patches that considerably change the behaviour of rxvt-unicode. |
|
|
155 | Before reporting a bug to the original rxvt-unicode author please |
|
|
156 | download and install the genuine version |
|
|
157 | (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the |
|
|
158 | problem. If you cannot, chances are that the problems are specific |
|
|
159 | to Debian GNU/Linux, in which case it should be reported via the |
|
|
160 | Debian Bug Tracking System (use "reportbug" to report the bug). |
|
|
161 | |
|
|
162 | For other problems that also affect the Debian package, you can and |
|
|
163 | probably should use the Debian BTS, too, because, after all, it's |
|
|
164 | also a bug in the Debian version and it serves as a reminder for |
|
|
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. |
8 | |
209 | |
9 | 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? |
10 | The terminal description used by rxvt-unicode is not as widely |
211 | The terminal description used by rxvt-unicode is not as widely |
11 | 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 |
12 | problem often arises). |
213 | problem often arises). |
… | |
… | |
24 | problems arising, which includes wrong keymapping, less and |
225 | problems arising, which includes wrong keymapping, less and |
25 | different colours and some refresh errors in fullscreen |
226 | different colours and some refresh errors in fullscreen |
26 | applications. It's a nice quick-and-dirty workaround for rare cases, |
227 | applications. It's a nice quick-and-dirty workaround for rare cases, |
27 | though. |
228 | though. |
28 | |
229 | |
29 | If you always want to do this you can either recompile rxvt-unicode |
230 | If you always want to do this (and are fine with the consequences) |
30 | with the desired TERM value or use a resource to set it: |
231 | you can either recompile rxvt-unicode with the desired TERM value or |
|
|
232 | use a resource to set it: |
31 | |
233 | |
32 | URxvt.termName: rxvt |
234 | URxvt.termName: rxvt |
33 | |
235 | |
34 | If you don't plan to use rxvt (quite common...) you could also |
236 | If you don't plan to use rxvt (quite common...) you could also |
35 | replace the rxvt terminfo file with the rxvt-unicode one. |
237 | replace the rxvt terminfo file with the rxvt-unicode one. |
36 | |
238 | |
|
|
239 | "tic" outputs some error when compiling the terminfo entry. |
|
|
240 | Most likely it's the empty definition for "enacs=". Just replace it |
|
|
241 | by "enacs=\E[0@" and try again. |
|
|
242 | |
|
|
243 | "bash"'s readline does not work correctly under rxvt. |
37 | I need a termcap file entry. |
244 | I need a termcap file entry. |
|
|
245 | One reason you might want this is that some distributions or |
|
|
246 | operating systems still compile some programs using the |
|
|
247 | long-obsoleted termcap library (Fedora Core's bash is one example) |
|
|
248 | and rely on a termcap entry for "rxvt-unicode". |
|
|
249 | |
38 | You could use rxvt's termcap entry with resonable results in many |
250 | You could use rxvt's termcap entry with resonable results in many |
39 | cases. You can also create a termcap entry by using terminfo's |
251 | cases. You can also create a termcap entry by using terminfo's |
40 | infocmp program like this: |
252 | infocmp program like this: |
41 | |
253 | |
42 | infocmp -C rxvt-unicode |
254 | infocmp -C rxvt-unicode |
43 | |
255 | |
44 | OR you could this termcap entry: |
256 | Or you could use this termcap entry, generated by the command above: |
45 | |
257 | |
46 | rxvt-unicode|rxvt-unicode terminal (X Window System):\ |
258 | rxvt-unicode|rxvt-unicode terminal (X Window System):\ |
47 | :am:bw:eo:km:mi:ms:xn:xo:\ |
259 | :am:bw:eo:km:mi:ms:xn:xo:\ |
48 | :co#80:it#8:li#24:\ |
260 | :co#80:it#8:li#24:lm#0:\ |
49 | :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ |
261 | :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ |
50 | :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ |
262 | :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ |
51 | :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\ |
263 | :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\ |
52 | :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ |
264 | :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\ |
53 | :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ |
265 | :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ |
54 | :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\ |
266 | :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ |
|
|
267 | :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\ |
55 | :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ |
268 | :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ |
56 | :k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\ |
269 | :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ |
57 | :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ |
270 | :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ |
58 | :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\ |
271 | :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ |
59 | :ke=\E[?1l\E>:kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\ |
272 | :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ |
60 | :ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\ |
273 | :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ |
61 | :nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:\ |
274 | :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ |
62 | :st=\EH:ta=^I:te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:\ |
275 | :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\ |
63 | :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ |
276 | :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ |
64 | :vs=\E[?25h: |
277 | :vs=\E[?25h: |
65 | |
278 | |
66 | Why does "ls" no longer have coloured output? |
279 | Why does "ls" no longer have coloured output? |
67 | The "ls" in the GNU coreutils unfortunately doesn't use terminfo to |
280 | The "ls" in the GNU coreutils unfortunately doesn't use terminfo to |
68 | decide wether a terminal has colour, but uses it's own configuration |
281 | decide wether a terminal has colour, but uses it's own configuration |
… | |
… | |
87 | furthermore fail to even install the "rxvt-unicode" terminfo file, |
300 | furthermore fail to even install the "rxvt-unicode" terminfo file, |
88 | so you will need to install it on your own (See the question When I |
301 | so you will need to install it on your own (See the question When I |
89 | log-in to another system it tells me about missing terminfo data? on |
302 | log-in to another system it tells me about missing terminfo data? on |
90 | how to do this). |
303 | how to do this). |
91 | |
304 | |
|
|
305 | My numerical keypad acts weird and generates differing output? |
|
|
306 | Some Debian GNUL/Linux users seem to have this problem, although no |
|
|
307 | specific details were reported so far. It is possible that this is |
|
|
308 | caused by the wrong "TERM" setting, although the details of wether |
|
|
309 | and how this can happen are unknown, as "TERM=rxvt" should offer a |
|
|
310 | compatible keymap. See the answer to the previous question, and |
|
|
311 | please report if that helped. |
|
|
312 | |
92 | Rxvt-unicode does not seem to understand the selected encoding? |
313 | Rxvt-unicode does not seem to understand the selected encoding? |
93 | Unicode does not seem to work? |
314 | Unicode does not seem to work? |
94 | If you encounter strange problems like typing an accented character |
315 | If you encounter strange problems like typing an accented character |
95 | but getting two unrelated other characters or similar, or if program |
316 | but getting two unrelated other characters or similar, or if program |
96 | output is subtly garbled, then you should check your locale |
317 | output is subtly garbled, then you should check your locale |
97 | settings. |
318 | settings. |
98 | |
319 | |
99 | Rxvt-unicode must be started with the same "LC_CTYPE" setting as the |
320 | Rxvt-unicode must be started with the same "LC_CTYPE" setting as the |
100 | programs. Often rxvt-unicode is started in the "C" locale, while the |
321 | programs. Often rxvt-unicode is started in the "C" locale, while the |
101 | login script running within the rxvt-unicode window changes the |
322 | login script running within the rxvt-unicode window changes the |
102 | locale to sth. else, e.h. "en_GB.UTF-8". Needless to say, this is |
323 | locale to something else, e.g. "en_GB.UTF-8". Needless to say, this |
103 | not going to work. |
324 | is not going to work. |
104 | |
325 | |
105 | The best thing is to fix your startup environment, as you will |
326 | The best thing is to fix your startup environment, as you will |
106 | likely run into other problems. If nothing works you can try this in |
327 | likely run into other problems. If nothing works you can try this in |
107 | your .profile. |
328 | your .profile. |
108 | |
329 | |
109 | printf '\e]701;%s\007' "$LC_CTYPE" |
330 | printf '\e]701;%s\007' "$LC_CTYPE" |
110 | |
331 | |
111 | If this doesn't work, then maybe you use a "LC_CTYPE" specification |
332 | If this doesn't work, then maybe you use a "LC_CTYPE" specification |
112 | not supported on your systems. Some systems have a "locale" command |
333 | not supported on your systems. Some systems have a "locale" command |
113 | which displays this. If it displays sth. like: |
334 | which displays this (also, "perl -e0" can be used to check locale |
|
|
335 | settings, as it will complain loudly if it cannot set the locale). |
|
|
336 | If it displays something like: |
114 | |
337 | |
115 | locale: Cannot set LC_CTYPE to default locale: ... |
338 | locale: Cannot set LC_CTYPE to default locale: ... |
116 | |
339 | |
117 | Then the locale you specified is not supported on your system. |
340 | Then the locale you specified is not supported on your system. |
118 | |
341 | |
… | |
… | |
126 | Chances are that the font you (or the admin/package maintainer of |
349 | Chances are that the font you (or the admin/package maintainer of |
127 | your system/os) have specified does not cover all the characters you |
350 | your system/os) have specified does not cover all the characters you |
128 | want to display. |
351 | want to display. |
129 | |
352 | |
130 | rxvt-unicode makes a best-effort try at finding a replacement font. |
353 | rxvt-unicode makes a best-effort try at finding a replacement font. |
131 | Often the result is fine, but sometimes the chosen font looks bad. |
354 | Often the result is fine, but sometimes the chosen font looks |
132 | Many fonts have totally strange characters that don't resemble the |
355 | bad/ugly/wrong. Some fonts have totally strange characters that |
133 | correct glyph at all, and rxvt-unicode lacks the artificial |
356 | don't resemble the correct glyph at all, and rxvt-unicode lacks the |
134 | intelligence to detect that a specific glyph is wrong: it has to |
357 | artificial intelligence to detect that a specific glyph is wrong: it |
135 | believe the font that the characters it contains indeed look |
358 | has to believe the font that the characters it claims to contain |
136 | correct. |
359 | indeed look correct. |
137 | |
360 | |
138 | In that case, select a font of your taste and add it to the font |
361 | In that case, select a font of your taste and add it to the font |
139 | list, e.g.: |
362 | list, e.g.: |
140 | |
363 | |
141 | rxvt -fn basefont,font2,font3... |
364 | rxvt -fn basefont,font2,font3... |
… | |
… | |
144 | font. If the base font does not contain the character, it will go to |
367 | font. If the base font does not contain the character, it will go to |
145 | the next font, and so on. Specifying your own fonts will also speed |
368 | the next font, and so on. Specifying your own fonts will also speed |
146 | up this search and use less resources within rxvt-unicode and the |
369 | up this search and use less resources within rxvt-unicode and the |
147 | X-server. |
370 | X-server. |
148 | |
371 | |
149 | The only limitation is that all the fonts must not be larger than |
372 | The only limitation is that none of the fonts may be larger than the |
150 | the base font, as the base font defines the principal cell size, |
373 | base font, as the base font defines the terminal character cell |
151 | which must be the same due to the way terminals work. |
374 | size, which must be the same due to the way terminals work. |
152 | |
375 | |
153 | Why do some chinese characters look so different than others? |
376 | Why do some chinese characters look so different than others? |
154 | This is because there is a difference between script and language -- |
377 | This is because there is a difference between script and language -- |
155 | rxvt-unicode does not know which language the text that is output |
378 | rxvt-unicode does not know which language the text that is output |
156 | is, as it only knows the unicode character codes. If rxvt-unicode |
379 | is, as it only knows the unicode character codes. If rxvt-unicode |
157 | first sees a japanese character, it might choose a japanese font for |
380 | first sees a japanese/chinese character, it might choose a japanese |
158 | it. Subsequent japanese characters will take that font. Now, many |
381 | font for display. Subsequent japanese characters will use that font. |
159 | chinese characters aren't represented in japanese fonts, so when the |
382 | Now, many chinese characters aren't represented in japanese fonts, |
160 | first non-japanese character comes up, rxvt-unicode will look for a |
383 | so when the first non-japanese character comes up, rxvt-unicode will |
161 | chinese font -- unfortunately at this point, it will still use the |
384 | look for a chinese font -- unfortunately at this point, it will |
162 | japanese font for japanese characters that are also chinese. |
385 | still use the japanese font for chinese characters that are also in |
|
|
386 | the japanese font. |
163 | |
387 | |
164 | The workaround is easy: just tag a chinese font at the end of your |
388 | The workaround is easy: just tag a chinese font at the end of your |
165 | font list (see the previous question). The key is to view the font |
389 | font list (see the previous question). The key is to view the font |
166 | list as a preference list: If you expect more japanese, list a |
390 | list as a preference list: If you expect more japanese, list a |
167 | japanese font first. If you expect more chinese, put a chinese font |
391 | japanese font first. If you expect more chinese, put a chinese font |
168 | first. |
392 | first. |
169 | |
393 | |
170 | In the future it might be possible to switch preferences at runtime |
394 | In the future it might be possible to switch language preferences at |
171 | (the internal data structure has no problem with using different |
395 | runtime (the internal data structure has no problem with using |
172 | fonts for the same character at the same time, but no interface for |
396 | different fonts for the same character at the same time, but no |
173 | this has been designed yet). |
397 | interface for this has been designed yet). |
|
|
398 | |
|
|
399 | Until then, you might get away with switching fonts at runtime (see |
|
|
400 | "Can I switch the fonts at runtime?" later in this document). |
174 | |
401 | |
175 | Why does rxvt-unicode sometimes leave pixel droppings? |
402 | Why does rxvt-unicode sometimes leave pixel droppings? |
176 | Most fonts were not designed for terminal use, which means that |
403 | Most fonts were not designed for terminal use, which means that |
177 | character size varies a lot. A font that is otherwise fine for |
404 | character size varies a lot. A font that is otherwise fine for |
178 | terminal use might contain some characters that are simply too wide. |
405 | terminal use might contain some characters that are simply too wide. |
… | |
… | |
192 | that doesn't work, you might be forced to use a different font. |
419 | that doesn't work, you might be forced to use a different font. |
193 | |
420 | |
194 | All of this is not a problem when using X11 core fonts, as their |
421 | All of this is not a problem when using X11 core fonts, as their |
195 | bounding box data is correct. |
422 | bounding box data is correct. |
196 | |
423 | |
|
|
424 | On Solaris 9, many line-drawing characters are too wide. |
|
|
425 | Seems to be a known bug, read |
|
|
426 | <http://nixdoc.net/files/forum/about34198.html>. Some people use the |
|
|
427 | following ugly workaround to get non-double-wide-characters working: |
|
|
428 | |
|
|
429 | #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x) |
|
|
430 | |
197 | My Compose (Multi_key) key is no longer working. |
431 | My Compose (Multi_key) key is no longer working. |
198 | The most common causes for this are that either your locale is not |
432 | The most common causes for this are that either your locale is not |
199 | set correctly, or you specified a preeditStyle that is not supported |
433 | set correctly, or you specified a preeditStyle that is not supported |
200 | by your input method. For example, if you specified OverTheSpot and |
434 | by your input method. For example, if you specified OverTheSpot and |
201 | your input method (e.g. the default input method handling Compose |
435 | your input method (e.g. the default input method handling Compose |
… | |
… | |
212 | advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for |
446 | advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for |
213 | other codes, too, such as "Ctrl-Shift-1-d" to type the default |
447 | other codes, too, such as "Ctrl-Shift-1-d" to type the default |
214 | telnet escape character and so on. |
448 | telnet escape character and so on. |
215 | |
449 | |
216 | How can I keep rxvt-unicode from using reverse video so much? |
450 | How can I keep rxvt-unicode from using reverse video so much? |
217 | First of all, make sure you are running with the right terminfo |
451 | First of all, make sure you are running with the right terminal |
218 | ("urxvt"), which will get rid of most of these effects. Then make |
452 | settings ("TERM=rxvt-unicode"), which will get rid of most of these |
219 | sure you have specified colours for italic and bold, as otherwise |
453 | effects. Then make sure you have specified colours for italic and |
220 | rxvt-unicode might use reverse video to simulate the effect: |
454 | bold, as otherwise rxvt-unicode might use reverse video to simulate |
|
|
455 | the effect: |
221 | |
456 | |
222 | URxvt*colorBD: white |
457 | URxvt.colorBD: white |
223 | URxvt*colorIT: green |
458 | URxvt.colorIT: green |
224 | |
459 | |
225 | Some programs assume totally weird colours (red instead of blue), how |
460 | Some programs assume totally weird colours (red instead of blue), how |
226 | can I fix that? |
461 | can I fix that? |
227 | For some unexplainable reason, some programs (i.e. irssi) assume a |
462 | For some unexplainable reason, some rare programs assume a very |
228 | very weird colour palette when confronted with a terminal with more |
463 | weird colour palette when confronted with a terminal with more than |
229 | than the standard 8 colours (rxvt-unicode supports 88). The right |
464 | the standard 8 colours (rxvt-unicode supports 88). The right fix is, |
230 | fix is, of course, to fix these programs not to assume non-ISO |
465 | of course, to fix these programs not to assume non-ISO colours |
231 | colours without very good reasons. |
466 | without very good reasons. |
232 | |
467 | |
233 | In the meantime, you can either edit your "urxvt" terminfo |
468 | In the meantime, you can either edit your "rxvt-unicode" terminfo |
234 | definition to only claim 8 colour support or use "TERM=rxvt", which |
469 | definition to only claim 8 colour support or use "TERM=rxvt", which |
235 | will fix colours but keep you from using other rxvt-unicode |
470 | will fix colours but keep you from using other rxvt-unicode |
236 | features. |
471 | features. |
237 | |
472 | |
238 | I am on FreeBSD and rxvt-unicode does not seem to work at all. |
473 | I am on FreeBSD and rxvt-unicode does not seem to work at all. |
… | |
… | |
241 | it, wether it defines the symbol or not. "__STDC_ISO_10646__" |
476 | it, wether it defines the symbol or not. "__STDC_ISO_10646__" |
242 | requires that wchar_t is represented as unicode. |
477 | requires that wchar_t is represented as unicode. |
243 | |
478 | |
244 | As you might have guessed, FreeBSD does neither define this symobl |
479 | As you might have guessed, FreeBSD does neither define this symobl |
245 | nor does it support it. Instead, it uses it's own internal |
480 | nor does it support it. Instead, it uses it's own internal |
246 | representation of wchar_t. This is, of course, completely legal. |
481 | representation of wchar_t. This is, of course, completely fine with |
|
|
482 | respect to standards. |
247 | |
483 | |
|
|
484 | However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1" |
|
|
485 | and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t. |
|
|
486 | |
248 | However, "__STDC_ISO_10646__" is the only sane way to support |
487 | "__STDC_ISO_10646__" is the only sane way to support multi-language |
249 | multi-language apps in an OS, as using a locale-dependent (and |
488 | apps in an OS, as using a locale-dependent (and non-standardized) |
250 | non-standardized) representation of wchar_t makes it impossible to |
489 | representation of wchar_t makes it impossible to convert between |
251 | convert between wchar_t (as used by X11 and your applications) and |
490 | wchar_t (as used by X11 and your applications) and any other |
252 | any other encoding without implementing OS-specific-wrappers for |
491 | encoding without implementing OS-specific-wrappers for each and |
253 | each and every locale. There simply are no APIs to convert wchar_t |
492 | every locale. There simply are no APIs to convert wchar_t into |
254 | into anything except the current locale encoding. |
493 | anything except the current locale encoding. |
255 | |
494 | |
256 | Some applications (such as the formidable mlterm) work around this |
495 | Some applications (such as the formidable mlterm) work around this |
257 | by carrying their own replacement functions for character set |
496 | by carrying their own replacement functions for character set |
258 | handling with them, and either implementing OS-dependent hacks or |
497 | handling with them, and either implementing OS-dependent hacks or |
259 | doing multiple conversions (which is slow and unreliable in case the |
498 | doing multiple conversions (which is slow and unreliable in case the |
260 | OS implements encodings slightly different than the terminal |
499 | OS implements encodings slightly different than the terminal |
261 | emulator). |
500 | emulator). |
262 | |
501 | |
263 | The rxvt-unicode author insists that the right way to fix this is in |
502 | The rxvt-unicode author insists that the right way to fix this is in |
264 | the system libraries once and for all, instead of forcing every app |
503 | the system libraries once and for all, instead of forcing every app |
265 | to carry complete replacements. |
504 | to carry complete replacements for them :) |
|
|
505 | |
|
|
506 | I use Solaris 9 and it doesn't compile/work/etc. |
|
|
507 | Try the diff in doc/solaris9.patch as a base. It fixes the worst |
|
|
508 | problems with "wcwidth" and a compile problem. |
|
|
509 | |
|
|
510 | How can I use rxvt-unicode under cygwin? |
|
|
511 | rxvt-unicode should compile and run out of the box on cygwin, using |
|
|
512 | the X11 libraries that come with cygwin. libW11 emulation is no |
|
|
513 | longer supported (and makes no sense, either, as it only supported a |
|
|
514 | single font). I recommend starting the X-server in "-multiwindow" or |
|
|
515 | "-rootless" mode instead, which will result in similar look&feel as |
|
|
516 | the old libW11 emulation. |
|
|
517 | |
|
|
518 | At the time of this writing, cygwin didn't seem to support any |
|
|
519 | multi-byte encodings (you might try "LC_CTYPE=C-UTF-8"), so you are |
|
|
520 | likely limited to 8-bit encodings. |
266 | |
521 | |
267 | How does rxvt-unicode determine the encoding to use? |
522 | How does rxvt-unicode determine the encoding to use? |
268 | Is there an option to switch encodings? |
523 | Is there an option to switch encodings? |
269 | Unlike some other terminals, rxvt-unicode has no encoding switch, |
524 | Unlike some other terminals, rxvt-unicode has no encoding switch, |
270 | and no specific "utf-8" mode, such as xterm. In fact, it doesn't |
525 | and no specific "utf-8" mode, such as xterm. In fact, it doesn't |
… | |
… | |
273 | |
528 | |
274 | The reasons is that there exists a perfectly fine mechanism for |
529 | The reasons is that there exists a perfectly fine mechanism for |
275 | selecting the encoding, doing I/O and (most important) communicating |
530 | selecting the encoding, doing I/O and (most important) communicating |
276 | this to all applications so everybody agrees on character properties |
531 | this to all applications so everybody agrees on character properties |
277 | such as width and code number. This mechanism is the *locale*. |
532 | such as width and code number. This mechanism is the *locale*. |
|
|
533 | Applications not using that info will have problems (for example, |
|
|
534 | "xterm" gets the width of characters wrong as it uses it's own, |
|
|
535 | locale-independent table under all locales). |
278 | |
536 | |
279 | Rxvt-unicode uses the "LC_CTYPE" locale category to select encoding. |
537 | Rxvt-unicode uses the "LC_CTYPE" locale category to select encoding. |
280 | All programs doing the same (that is, most) will automatically agree |
538 | All programs doing the same (that is, most) will automatically agree |
281 | in the interpretation of characters. |
539 | in the interpretation of characters. |
282 | |
540 | |
… | |
… | |
290 | "language_country.encoding", but other forms (i.e. "de" or "german") |
548 | "language_country.encoding", but other forms (i.e. "de" or "german") |
291 | are also common. |
549 | are also common. |
292 | |
550 | |
293 | Rxvt-unicode ignores all other locale categories, and except for the |
551 | Rxvt-unicode ignores all other locale categories, and except for the |
294 | encoding, ignores country or language-specific settings, i.e. |
552 | encoding, ignores country or language-specific settings, i.e. |
295 | "de_DE.UTF-8" and "ja_JP.UTF-8" are the same for rxvt-unicode. |
553 | "de_DE.UTF-8" and "ja_JP.UTF-8" are the normally same to |
|
|
554 | rxvt-unicode. |
296 | |
555 | |
297 | If you want to use a specific encoding you have to make sure you |
556 | If you want to use a specific encoding you have to make sure you |
298 | start rxvt-unicode with the correct "LC_CTYPE" category. |
557 | start rxvt-unicode with the correct "LC_CTYPE" category. |
299 | |
558 | |
300 | Can I switch locales at runtime? |
559 | Can I switch locales at runtime? |
301 | Yes, using an escape sequence. Try sth. like this, which sets |
560 | Yes, using an escape sequence. Try something like this, which sets |
302 | rxvt-unicode's idea of "LC_CTYPE". |
561 | rxvt-unicode's idea of "LC_CTYPE". |
303 | |
562 | |
304 | printf '\e]701;%s\007' ja_JP.SJIS |
563 | printf '\e]701;%s\007' ja_JP.SJIS |
305 | |
564 | |
306 | See also the previous question. |
565 | See also the previous answer. |
307 | |
566 | |
308 | Sometimes this capability is rather handy when you want to work in |
567 | Sometimes this capability is rather handy when you want to work in |
309 | one locale (e.g. "de_DE.UTF-8") but some programs don't support |
568 | one locale (e.g. "de_DE.UTF-8") but some programs don't support it |
310 | UTF-8. For example, I use this script to start "xjdic", which first |
569 | (e.g. UTF-8). For example, I use this script to start "xjdic", which |
311 | switches to a locale supported by xjdic and back later: |
570 | first switches to a locale supported by xjdic and back later: |
312 | |
571 | |
313 | printf '\e]701;%s\007' ja_JP.SJIS |
572 | printf '\e]701;%s\007' ja_JP.SJIS |
314 | xjdic -js |
573 | xjdic -js |
315 | printf '\e]701;%s\007' de_DE.UTF-8 |
574 | printf '\e]701;%s\007' de_DE.UTF-8 |
316 | |
575 | |
|
|
576 | You can also use xterm's "luit" program, which usually works fine, |
|
|
577 | except for some locales where character width differs between |
|
|
578 | program- and rxvt-unicode-locales. |
|
|
579 | |
317 | Can I switch the fonts at runtime? |
580 | Can I switch the fonts at runtime? |
318 | Yes, using an escape sequence. Try sth. like this, which has the |
581 | Yes, using an escape sequence. Try something like this, which has |
319 | same effect as using the "-fn" switch, and takes effect immediately: |
582 | the same effect as using the "-fn" switch, and takes effect |
|
|
583 | immediately: |
320 | |
584 | |
321 | printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic" |
585 | printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic" |
322 | |
586 | |
323 | This is useful if you e.g. work primarily with japanese (and prefer |
587 | This is useful if you e.g. work primarily with japanese (and prefer |
324 | a japanese font), but you have to switch to chinese temporarily, |
588 | a japanese font), but you have to switch to chinese temporarily, |
… | |
… | |
327 | You can think of this as a kind of manual ISO-2022 switching. |
591 | You can think of this as a kind of manual ISO-2022 switching. |
328 | |
592 | |
329 | Why do italic characters look as if clipped? |
593 | Why do italic characters look as if clipped? |
330 | Many fonts have difficulties with italic characters and hinting. For |
594 | Many fonts have difficulties with italic characters and hinting. For |
331 | example, the otherwise very nicely hinted font "xft:Bitstream Vera |
595 | example, the otherwise very nicely hinted font "xft:Bitstream Vera |
332 | Sans Mono" completely fails in it's italic face. A workaround is to |
596 | Sans Mono" completely fails in it's italic face. A workaround might |
333 | enable freetype autohinting, i.e. like this: |
597 | be to enable freetype autohinting, i.e. like this: |
334 | |
598 | |
335 | URxvt*italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true |
599 | URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true |
336 | URxvt*boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true |
600 | URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true |
337 | |
601 | |
338 | 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? |
339 | 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 |
340 | of the terminal, using the resource "imlocale": |
604 | of the terminal, using the resource "imlocale": |
341 | |
605 | |
342 | URxvt*imlocale: ja_JP.EUC-JP |
606 | URxvt.imlocale: ja_JP.EUC-JP |
343 | |
607 | |
344 | 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 |
345 | 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 |
346 | 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, |
347 | as your input method limits you. |
611 | as your input method limits you. |
348 | |
612 | |
|
|
613 | Rxvt-unicode crashes when the X Input Method changes or exits. |
|
|
614 | Unfortunately, this is unavoidable, as the XIM protocol is racy by |
|
|
615 | design. Applications can avoid some crashes at the expense of memory |
|
|
616 | leaks, and Input Methods can avoid some crashes by careful ordering |
|
|
617 | at exit time. kinput2 (and derived input methods) generally |
|
|
618 | succeeds, while SCIM (or similar input methods) fails. In the end, |
|
|
619 | however, crashes cannot be completely avoided even if both sides |
|
|
620 | cooperate. |
|
|
621 | |
|
|
622 | So the only workaround is not to kill your Input Method Servers. |
|
|
623 | |
349 | Rxvt-unicode uses gobs of memory, how can I reduce that? |
624 | Rxvt-unicode uses gobs of memory, how can I reduce that? |
350 | Rxvt-unicode tries to obey the rule of not charging you for sth. you |
625 | Rxvt-unicode tries to obey the rule of not charging you for |
351 | don't use. One thing you should try is to configure out all settings |
626 | something you don't use. One thing you should try is to configure |
352 | that you don't need, for example, Xft support is a resource hog by |
627 | out all settings that you don't need, for example, Xft support is a |
353 | design, when used. Compiling it out ensures that no Xft font will be |
628 | resource hog by design, when used. Compiling it out ensures that no |
354 | loaded accidentally when rxvt-unicode tries to find a font for your |
629 | Xft font will be loaded accidentally when rxvt-unicode tries to find |
355 | characters. |
630 | a font for your characters. |
356 | |
631 | |
357 | Also, many people (me included) like large windows and even larger |
632 | Also, many people (me included) like large windows and even larger |
358 | scrollback buffers: Without "--enable-unicode3", rxvt-unicode will |
633 | scrollback buffers: Without "--enable-unicode3", rxvt-unicode will |
359 | use 6 bytes per screen cell. For a 160x?? window this amounts to |
634 | use 6 bytes per screen cell. For a 160x?? window this amounts to |
360 | almost a kilobyte per line. A scrollback buffer of 10000 lines will |
635 | almost a kilobyte per line. A scrollback buffer of 10000 lines will |
… | |
… | |
362 | it gets worse, as rxvt-unicode then uses 8 bytes per screen cell. |
637 | it gets worse, as rxvt-unicode then uses 8 bytes per screen cell. |
363 | |
638 | |
364 | Can I speed up Xft rendering somehow? |
639 | Can I speed up Xft rendering somehow? |
365 | Yes, the most obvious way to speed it up is to avoid Xft entirely, |
640 | Yes, the most obvious way to speed it up is to avoid Xft entirely, |
366 | as it is simply slow. If you still want Xft fonts you might try to |
641 | as it is simply slow. If you still want Xft fonts you might try to |
367 | disable antialiasing (by appending ":antialiasing=false"), which |
642 | disable antialiasing (by appending ":antialias=false"), which saves |
368 | saves lots of memory and also speeds up rendering considerably. |
643 | lots of memory and also speeds up rendering considerably. |
369 | |
644 | |
370 | Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? |
645 | Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? |
371 | Rxvt-unicode will use whatever you specify as a font. If it needs to |
646 | Rxvt-unicode will use whatever you specify as a font. If it needs to |
372 | fall back to it's default font search list it will prefer X11 core |
647 | fall back to it's default font search list it will prefer X11 core |
373 | fonts, because they are small and fast, and then use Xft fonts. It |
648 | fonts, because they are small and fast, and then use Xft fonts. It |
… | |
… | |
379 | Mouse cut/paste suddenly no longer works. |
654 | Mouse cut/paste suddenly no longer works. |
380 | Make sure that mouse reporting is actually turned off since killing |
655 | Make sure that mouse reporting is actually turned off since killing |
381 | some editors prematurely may leave the mouse in mouse report mode. |
656 | some editors prematurely may leave the mouse in mouse report mode. |
382 | 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 |
383 | 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 |
384 | or Shift keys are depressed. See rxvt(7) |
659 | or Shift keys are depressed. |
385 | |
660 | |
386 | What's with this bold/blink stuff? |
661 | What's with this bold/blink stuff? |
387 | 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 |
388 | the standard foreground colour. |
663 | the standard foreground colour. |
389 | |
664 | |
… | |
… | |
404 | resources (or as long-options). |
679 | resources (or as long-options). |
405 | |
680 | |
406 | Here are values that are supposed to resemble a VGA screen, |
681 | Here are values that are supposed to resemble a VGA screen, |
407 | including the murky brown that passes for low-intensity yellow: |
682 | including the murky brown that passes for low-intensity yellow: |
408 | |
683 | |
409 | URxvt*color0: #000000 |
684 | URxvt.color0: #000000 |
410 | URxvt*color1: #A80000 |
685 | URxvt.color1: #A80000 |
411 | URxvt*color2: #00A800 |
686 | URxvt.color2: #00A800 |
412 | URxvt*color3: #A8A800 |
687 | URxvt.color3: #A8A800 |
413 | URxvt*color4: #0000A8 |
688 | URxvt.color4: #0000A8 |
414 | URxvt*color5: #A800A8 |
689 | URxvt.color5: #A800A8 |
415 | URxvt*color6: #00A8A8 |
690 | URxvt.color6: #00A8A8 |
416 | URxvt*color7: #A8A8A8 |
691 | URxvt.color7: #A8A8A8 |
417 | |
692 | |
418 | URxvt*color8: #000054 |
693 | URxvt.color8: #000054 |
419 | URxvt*color9: #FF0054 |
694 | URxvt.color9: #FF0054 |
420 | URxvt*color10: #00FF54 |
695 | URxvt.color10: #00FF54 |
421 | URxvt*color11: #FFFF54 |
696 | URxvt.color11: #FFFF54 |
422 | URxvt*color12: #0000FF |
697 | URxvt.color12: #0000FF |
423 | URxvt*color13: #FF00FF |
698 | URxvt.color13: #FF00FF |
424 | URxvt*color14: #00FFFF |
699 | URxvt.color14: #00FFFF |
425 | URxvt*color15: #FFFFFF |
700 | URxvt.color15: #FFFFFF |
426 | |
701 | |
427 | And here is a more complete set of non-standard colors described as |
702 | And here is a more complete set of non-standard colors described |
428 | "pretty girly": |
703 | (not by me) as "pretty girly". |
429 | |
704 | |
430 | URxvt.cursorColor: #dc74d1 |
705 | URxvt.cursorColor: #dc74d1 |
431 | URxvt.pointerColor: #dc74d1 |
706 | URxvt.pointerColor: #dc74d1 |
432 | URxvt.background: #0e0e0e |
707 | URxvt.background: #0e0e0e |
433 | URxvt.foreground: #4ad5e1 |
708 | URxvt.foreground: #4ad5e1 |
… | |
… | |
444 | URxvt.color6: #73f7ff |
719 | URxvt.color6: #73f7ff |
445 | URxvt.color14: #73f7ff |
720 | URxvt.color14: #73f7ff |
446 | URxvt.color7: #e1dddd |
721 | URxvt.color7: #e1dddd |
447 | URxvt.color15: #e1dddd |
722 | URxvt.color15: #e1dddd |
448 | |
723 | |
|
|
724 | How can I start rxvtd in a race-free way? |
|
|
725 | Try "rxvtd -f -o", which tells rxvtd to open the display, create the |
|
|
726 | listening socket and then fork. |
|
|
727 | |
449 | What's with the strange Backspace/Delete key behaviour? |
728 | What's with the strange Backspace/Delete key behaviour? |
450 | Assuming that the physical Backspace key corresponds to the |
729 | Assuming that the physical Backspace key corresponds to the |
451 | BackSpace keysym (not likely for Linux ... see the following |
730 | BackSpace keysym (not likely for Linux ... see the following |
452 | question) there are two standard values that can be used for |
731 | question) there are two standard values that can be used for |
453 | Backspace: "^H" and "^?". |
732 | Backspace: "^H" and "^?". |
… | |
… | |
471 | |
750 | |
472 | # use Backspace = ^? |
751 | # use Backspace = ^? |
473 | $ stty erase ^? |
752 | $ stty erase ^? |
474 | $ rxvt |
753 | $ rxvt |
475 | |
754 | |
476 | Toggle with "ESC[36h" / "ESC[36l" as documented in rxvt(7). |
755 | Toggle with "ESC [ 36 h" / "ESC [ 36 l". |
477 | |
756 | |
478 | For an existing rxvt-unicode: |
757 | For an existing rxvt-unicode: |
479 | |
758 | |
480 | # use Backspace = ^H |
759 | # use Backspace = ^H |
481 | $ stty erase ^H |
760 | $ stty erase ^H |
… | |
… | |
490 | value properly reflects that. |
769 | value properly reflects that. |
491 | |
770 | |
492 | The Delete key is a another casualty of the ill-defined Backspace |
771 | The Delete key is a another casualty of the ill-defined Backspace |
493 | problem. To avoid confusion between the Backspace and Delete keys, |
772 | problem. To avoid confusion between the Backspace and Delete keys, |
494 | the Delete key has been assigned an escape sequence to match the |
773 | the Delete key has been assigned an escape sequence to match the |
495 | vt100 for Execute (ESC[3~) and is in the supplied termcap/terminfo. |
774 | vt100 for Execute ("ESC [ 3 ~") and is in the supplied |
|
|
775 | termcap/terminfo. |
496 | |
776 | |
497 | Some other Backspace problems: |
777 | Some other Backspace problems: |
498 | |
778 | |
499 | some editors use termcap/terminfo, some editors (vim I'm told) |
779 | some editors use termcap/terminfo, some editors (vim I'm told) |
500 | expect Backspace = ^H, GNU Emacs (and Emacs-like editors) use ^H for |
780 | expect Backspace = ^H, GNU Emacs (and Emacs-like editors) use ^H for |
… | |
… | |
506 | There are some compile-time selections available via configure. |
786 | There are some compile-time selections available via configure. |
507 | Unless you have run "configure" with the "--disable-resources" |
787 | Unless you have run "configure" with the "--disable-resources" |
508 | option you can use the `keysym' resource to alter the keystrings |
788 | option you can use the `keysym' resource to alter the keystrings |
509 | associated with keysyms. |
789 | associated with keysyms. |
510 | |
790 | |
511 | Here's an example for a URxvt session started using `rxvt -name |
791 | Here's an example for a URxvt session started using "rxvt -name |
512 | URxvt' |
792 | URxvt" |
513 | |
793 | |
514 | URxvt.keysym.Home: \e[1~ |
794 | URxvt.keysym.Home: \033[1~ |
515 | URxvt.keysym.End: \e[4~ |
795 | URxvt.keysym.End: \033[4~ |
516 | URxvt.keysym.C-apostrophe: \e<C-'> |
796 | URxvt.keysym.C-apostrophe: \033<C-'> |
517 | URxvt.keysym.C-slash: \e<C-/> |
797 | URxvt.keysym.C-slash: \033<C-/> |
518 | URxvt.keysym.C-semicolon: \e<C-;> |
798 | URxvt.keysym.C-semicolon: \033<C-;> |
519 | URxvt.keysym.C-grave: \e<C-`> |
799 | URxvt.keysym.C-grave: \033<C-`> |
520 | URxvt.keysym.C-comma: \e<C-,> |
800 | URxvt.keysym.C-comma: \033<C-,> |
521 | URxvt.keysym.C-period: \e<C-.> |
801 | URxvt.keysym.C-period: \033<C-.> |
522 | URxvt.keysym.C-0x60: \e<C-`> |
802 | URxvt.keysym.C-0x60: \033<C-`> |
523 | URxvt.keysym.C-Tab: \e<C-Tab> |
803 | URxvt.keysym.C-Tab: \033<C-Tab> |
524 | URxvt.keysym.C-Return: \e<C-Return> |
804 | URxvt.keysym.C-Return: \033<C-Return> |
525 | URxvt.keysym.S-Return: \e<S-Return> |
805 | URxvt.keysym.S-Return: \033<S-Return> |
526 | URxvt.keysym.S-space: \e<S-Space> |
806 | URxvt.keysym.S-space: \033<S-Space> |
527 | URxvt.keysym.M-Up: \e<M-Up> |
807 | URxvt.keysym.M-Up: \033<M-Up> |
528 | URxvt.keysym.M-Down: \e<M-Down> |
808 | URxvt.keysym.M-Down: \033<M-Down> |
529 | URxvt.keysym.M-Left: \e<M-Left> |
809 | URxvt.keysym.M-Left: \033<M-Left> |
530 | URxvt.keysym.M-Right: \e<M-Right> |
810 | URxvt.keysym.M-Right: \033<M-Right> |
531 | URxvt.keysym.M-C-0: list \e<M-C- 0123456789 > |
811 | URxvt.keysym.M-C-0: list \033<M-C- 0123456789 > |
532 | URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz > |
812 | URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz > |
533 | URxvt.keysym.F12: proto:\033]701;zh_CN.GBK\007 |
813 | URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007 |
534 | |
814 | |
535 | See some more examples in the documentation for the keysym resource. |
815 | See some more examples in the documentation for the keysym resource. |
536 | |
816 | |
537 | I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How |
817 | I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How |
538 | do I make use of them? For example, the Sun Keyboard type 4 has the |
818 | do I make use of them? For example, the Sun Keyboard type 4 has the |
… | |
… | |
546 | |
826 | |
547 | Rather than have rxvt-unicode try to accommodate all the various |
827 | Rather than have rxvt-unicode try to accommodate all the various |
548 | possible keyboard mappings, it is better to use `xmodmap' to remap |
828 | possible keyboard mappings, it is better to use `xmodmap' to remap |
549 | the keys as required for your particular machine. |
829 | the keys as required for your particular machine. |
550 | |
830 | |
551 | How do I distinguish if I'm running rxvt-unicode or a regular xterm? I |
831 | How do I distinguish wether I'm running rxvt-unicode or a regular xterm? |
552 | need this to decide about setting colors etc. |
832 | I need this to decide about setting colors etc. |
553 | rxvt and rxvt-unicode always export the variable "COLORTERM", so you |
833 | rxvt and rxvt-unicode always export the variable "COLORTERM", so you |
554 | can check and see if that is set. Note that several programs, JED, |
834 | can check and see if that is set. Note that several programs, JED, |
555 | slrn, Midnight Commander automatically check this variable to decide |
835 | slrn, Midnight Commander automatically check this variable to decide |
556 | whether or not to use color. |
836 | whether or not to use color. |
557 | |
837 | |
… | |
… | |
588 | Before sending me mail, you could go to IRC: "irc.freenode.net", |
868 | Before sending me mail, you could go to IRC: "irc.freenode.net", |
589 | channel "#rxvt-unicode" has some rxvt-unicode enthusiasts that might |
869 | channel "#rxvt-unicode" has some rxvt-unicode enthusiasts that might |
590 | be interested in learning about new and exciting problems (but not |
870 | be interested in learning about new and exciting problems (but not |
591 | FAQs :). |
871 | FAQs :). |
592 | |
872 | |
593 | SYNOPSIS |
873 | RXVT TECHNICAL REFERENCE |
594 | # set a new font set |
|
|
595 | printf '\33]50;%s\007' 9x15,xft:Kochi" Mincho" |
|
|
596 | |
|
|
597 | # change the locale and tell rxvt-unicode about it |
|
|
598 | export LC_CTYPE=ja_JP.EUC-JP; printf "\33]701;$LC_CTYPE\007" |
|
|
599 | |
|
|
600 | # set window title |
|
|
601 | printf '\33]2;%s\007' "new window title" |
|
|
602 | |
|
|
603 | DESCRIPTION |
874 | DESCRIPTION |
604 | The rest of this document describes various technical aspects of |
875 | The rest of this document describes various technical aspects of |
605 | rxvt-unicode. First the description of supported command sequences, |
876 | rxvt-unicode. First the description of supported command sequences, |
606 | followed by menu and pixmap support and last by a description of all |
877 | followed by pixmap support and last by a description of all features |
607 | features selectable at "configure" time. |
878 | selectable at "configure" time. |
608 | |
879 | |
609 | RXVT TECHNICAL REFERENCE |
|
|
610 | Definitions |
880 | Definitions |
611 | "c" The literal character c. |
881 | "c" The literal character c. |
612 | |
882 | |
613 | "C" A single (required) character. |
883 | "C" A single (required) character. |
614 | |
884 | |
… | |
… | |
699 | "ESC O" |
969 | "ESC O" |
700 | Single Shift Select of G3 Character Set (SS3): affects next |
970 | Single Shift Select of G3 Character Set (SS3): affects next |
701 | character only *unimplemented* |
971 | character only *unimplemented* |
702 | |
972 | |
703 | "ESC Z" |
973 | "ESC Z" |
704 | Obsolete form of returns: "ESC[?1;2C" *rxvt-unicode compile-time |
974 | Obsolete form of returns: "ESC [ ? 1 ; 2 C" *rxvt-unicode |
705 | option* |
975 | compile-time option* |
706 | |
976 | |
707 | "ESC c" |
977 | "ESC c" |
708 | Full reset (RIS) |
978 | Full reset (RIS) |
709 | |
979 | |
710 | "ESC n" |
980 | "ESC n" |
711 | Invoke the G2 Character Set (LS2) |
981 | Invoke the G2 Character Set (LS2) |
712 | |
982 | |
713 | "ESC o" |
983 | "ESC o" |
714 | Invoke the G3 Character Set (LS3) |
984 | Invoke the G3 Character Set (LS3) |
715 | |
985 | |
716 | "ESC" ( C> |
986 | "ESC ( C" |
717 | Designate G0 Character Set (ISO 2022), see below for values of "C". |
987 | Designate G0 Character Set (ISO 2022), see below for values of "C". |
718 | |
988 | |
719 | "ESC" ) C> |
989 | "ESC ) C" |
720 | Designate G1 Character Set (ISO 2022), see below for values of "C". |
990 | Designate G1 Character Set (ISO 2022), see below for values of "C". |
721 | |
991 | |
722 | "ESC * C" |
992 | "ESC * C" |
723 | Designate G2 Character Set (ISO 2022), see below for values of "C". |
993 | Designate G2 Character Set (ISO 2022), see below for values of "C". |
724 | |
994 | |
… | |
… | |
817 | "ESC [ Ps a" |
1087 | "ESC [ Ps a" |
818 | See "ESC [ Ps C" |
1088 | See "ESC [ Ps C" |
819 | |
1089 | |
820 | "ESC [ Ps c" |
1090 | "ESC [ Ps c" |
821 | Send Device Attributes (DA) "Ps = 0" (or omitted): request |
1091 | Send Device Attributes (DA) "Ps = 0" (or omitted): request |
822 | attributes from terminal returns: "ESC[?1;2c" (``I am a VT100 with |
1092 | attributes from terminal returns: "ESC [ ? 1 ; 2 c" (``I am a VT100 |
823 | Advanced Video Option'') |
1093 | with Advanced Video Option'') |
824 | |
1094 | |
825 | "ESC [ Ps d" |
1095 | "ESC [ Ps d" |
826 | Cursor to Line "Ps" (VPA) |
1096 | Cursor to Line "Ps" (VPA) |
827 | |
1097 | |
828 | "ESC [ Ps e" |
1098 | "ESC [ Ps e" |
… | |
… | |
908 | Window Operations |
1178 | Window Operations |
909 | |
1179 | |
910 | Ps = 1 Deiconify (map) window |
1180 | Ps = 1 Deiconify (map) window |
911 | Ps = 2 Iconify window |
1181 | Ps = 2 Iconify window |
912 | Ps = 3 ESC [ 3 ; X ; Y t Move window to (X|Y) |
1182 | Ps = 3 ESC [ 3 ; X ; Y t Move window to (X|Y) |
913 | Ps = 4 ESC [ 4 ; W ; H t Resize to WxH pixels |
1183 | Ps = 4 ESC [ 4 ; H ; W t Resize to WxH pixels |
914 | Ps = 5 Raise window |
1184 | Ps = 5 Raise window |
915 | Ps = 6 Lower window |
1185 | Ps = 6 Lower window |
916 | Ps = 7 Refresh screen once |
1186 | Ps = 7 Refresh screen once |
917 | Ps = 8 ESC [ 4 ; C ; R t Resize to C columns and R rows |
1187 | Ps = 8 ESC [ 8 ; R ; C t Resize to R rows and C columns |
918 | Ps = 11 Report window state (responds with Ps = 1 or Ps = 2 |
1188 | Ps = 11 Report window state (responds with Ps = 1 or Ps = 2) |
919 | Ps = 13 Report window position (responds with Ps = 3) |
1189 | Ps = 13 Report window position (responds with Ps = 3) |
920 | Ps = 14 Report window pixel size (responds with Ps = 4) |
1190 | Ps = 14 Report window pixel size (responds with Ps = 4) |
921 | Ps = 18 Report window text size (responds with Ps = 7) |
1191 | Ps = 18 Report window text size (responds with Ps = 7) |
922 | Ps = 19 Currently the same as Ps = 18, but responds with Ps = 9 |
1192 | Ps = 19 Currently the same as Ps = 18, but responds with Ps = 9 |
923 | Ps = 20 Reports icon label (ESC ] L NAME \234) |
1193 | Ps = 20 Reports icon label (ESC ] L NAME \234) |
… | |
… | |
982 | |
1252 | |
983 | "Ps = 9" X10 XTerm |
1253 | "Ps = 9" X10 XTerm |
984 | h Send Mouse X & Y on button press. |
1254 | h Send Mouse X & Y on button press. |
985 | l No mouse reporting. |
1255 | l No mouse reporting. |
986 | |
1256 | |
987 | "Ps = 10" (rxvt) |
|
|
988 | h menuBar visible |
|
|
989 | l menuBar invisible |
|
|
990 | |
|
|
991 | "Ps = 25" |
1257 | "Ps = 25" |
992 | h Visible cursor {cnorm/cvvis} |
1258 | h Visible cursor {cnorm/cvvis} |
993 | l Invisible cursor {civis} |
1259 | l Invisible cursor {civis} |
994 | |
1260 | |
995 | "Ps = 30" |
1261 | "Ps = 30" |
… | |
… | |
1043 | l Scroll to bottom on TTY output |
1309 | l Scroll to bottom on TTY output |
1044 | |
1310 | |
1045 | "Ps = 1011" (rxvt) |
1311 | "Ps = 1011" (rxvt) |
1046 | h Scroll to bottom when a key is pressed |
1312 | h Scroll to bottom when a key is pressed |
1047 | 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) |
1048 | |
1318 | |
1049 | "Ps = 1047" |
1319 | "Ps = 1047" |
1050 | h Use Alternate Screen Buffer |
1320 | h Use Alternate Screen Buffer |
1051 | 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 |
1052 | |
1322 | |
… | |
… | |
1075 | 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) |
1076 | 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) |
1077 | Ps = 12 Change colour of text cursor foreground to Pt |
1347 | Ps = 12 Change colour of text cursor foreground to Pt |
1078 | Ps = 13 Change colour of mouse foreground to Pt |
1348 | Ps = 13 Change colour of mouse foreground to Pt |
1079 | Ps = 17 Change colour of highlight characters to Pt |
1349 | Ps = 17 Change colour of highlight characters to Pt |
1080 | Ps = 18 Change colour of bold characters to Pt |
1350 | Ps = 18 Change colour of bold characters to Pt [deprecated, see 706] |
1081 | Ps = 19 Change colour of underlined characters to Pt |
1351 | Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707] |
1082 | Ps = 20 Change default background to Pt |
1352 | Ps = 20 Change default background to Pt |
1083 | Ps = 39 Change default foreground colour to Pt rxvt compile-time option |
1353 | Ps = 39 Change default foreground colour to Pt. |
1084 | Ps = 46 Change Log File to Pt unimplemented |
1354 | Ps = 46 Change Log File to Pt unimplemented |
1085 | Ps = 49 Change default background colour to Pt rxvt compile-time option |
1355 | Ps = 49 Change default background colour to Pt. |
1086 | 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 |
1087 | 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 |
1088 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (rxvt extension) |
1358 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). |
1089 | Ps = 703 Menubar command Pt rxvt compile-time option (rxvt-unicode extension) |
|
|
1090 | Ps = 704 Change colour of italic characters to Pt |
1359 | Ps = 704 Change colour of italic characters to Pt |
1091 | Ps = 705 Change background pixmap tint colour to Pt |
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 |
1092 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
1363 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
1093 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50. |
1364 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). |
1094 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50. |
1365 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1095 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50. |
1366 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
|
|
1367 | Ps = 720 Move viewing window up 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). |
1096 | |
1370 | |
1097 | |
1371 | |
1098 | |
|
|
1099 | menuBar |
|
|
1100 | The exact syntax used is *almost* solidified. In the menus, DON'T try to |
|
|
1101 | use menuBar commands that add or remove a menuBar. |
|
|
1102 | |
|
|
1103 | Note that in all of the commands, the */path/* *cannot* be omitted: use |
|
|
1104 | ./ to specify a menu relative to the current menu. |
|
|
1105 | |
|
|
1106 | Overview of menuBar operation |
|
|
1107 | For the menuBar XTerm escape sequence "ESC ] 703 ; Pt ST", the syntax of |
|
|
1108 | "Pt" can be used for a variety of tasks: |
|
|
1109 | |
|
|
1110 | At the top level is the current menuBar which is a member of a circular |
|
|
1111 | linked-list of other such menuBars. |
|
|
1112 | |
|
|
1113 | The menuBar acts as a parent for the various drop-down menus, which in |
|
|
1114 | turn, may have labels, separator lines, menuItems and subMenus. |
|
|
1115 | |
|
|
1116 | The menuItems are the useful bits: you can use them to mimic keyboard |
|
|
1117 | input or even to send text or escape sequences back to rxvt. |
|
|
1118 | |
|
|
1119 | The menuBar syntax is intended to provide a simple yet robust method of |
|
|
1120 | constructing and manipulating menus and navigating through the menuBars. |
|
|
1121 | |
|
|
1122 | The first step is to use the tag [menu:*name*] which creates the menuBar |
|
|
1123 | called *name* and allows access. You may now or menus, subMenus, and |
|
|
1124 | menuItems. Finally, use the tag [done] to set the menuBar access as |
|
|
1125 | readonly to prevent accidental corruption of the menus. To re-access the |
|
|
1126 | current menuBar for alterations, use the tag [menu], make the |
|
|
1127 | alterations and then use [done] |
|
|
1128 | |
|
|
1129 | |
|
|
1130 | |
|
|
1131 | Commands |
|
|
1132 | [menu:+*name*] |
|
|
1133 | access the named menuBar for creation or alteration. If a new |
|
|
1134 | menuBar is created, it is called *name* (max of 15 chars) and the |
|
|
1135 | current menuBar is pushed onto the stack |
|
|
1136 | |
|
|
1137 | [menu] |
|
|
1138 | access the current menuBar for alteration |
|
|
1139 | |
|
|
1140 | [title:+*string*] |
|
|
1141 | set the current menuBar's title to *string*, which may contain the |
|
|
1142 | following format specifiers: %% : literal % character %n : rxvt name |
|
|
1143 | (as per the -name command-line option) %v : rxvt version |
|
|
1144 | |
|
|
1145 | [done] |
|
|
1146 | set menuBar access as readonly. End-of-file tag for [read:+*file*] |
|
|
1147 | operations. |
|
|
1148 | |
|
|
1149 | [read:+*file*] |
|
|
1150 | read menu commands directly from *file* (extension ".menu" will be |
|
|
1151 | appended if required.) Start reading at a line with [menu] or |
|
|
1152 | [menu:+*name* and continuing until [done] is encountered. |
|
|
1153 | |
|
|
1154 | Blank and comment lines (starting with #) are ignored. Actually, |
|
|
1155 | since any invalid menu commands are also ignored, almost anything |
|
|
1156 | could be construed as a comment line, but this may be tightened up |
|
|
1157 | in the future ... so don't count on it!. |
|
|
1158 | |
|
|
1159 | [read:+*file*;+*name*] |
|
|
1160 | The same as [read:+*file*], but start reading at a line with |
|
|
1161 | [menu:+*name*] and continuing until [done:+*name*] or [done] is |
|
|
1162 | encountered. |
|
|
1163 | |
|
|
1164 | [dump] |
|
|
1165 | dump all menuBars to the file /tmp/rxvt-PID in a format suitable for |
|
|
1166 | later rereading. |
|
|
1167 | |
|
|
1168 | [rm:name] |
|
|
1169 | remove the named menuBar |
|
|
1170 | |
|
|
1171 | [rm] [rm:] |
|
|
1172 | remove the current menuBar |
|
|
1173 | |
|
|
1174 | [rm*] [rm:*] |
|
|
1175 | remove all menuBars |
|
|
1176 | |
|
|
1177 | [swap] |
|
|
1178 | swap the top two menuBars |
|
|
1179 | |
|
|
1180 | [prev] |
|
|
1181 | access the previous menuBar |
|
|
1182 | |
|
|
1183 | [next] |
|
|
1184 | access the next menuBar |
|
|
1185 | |
|
|
1186 | [show] |
|
|
1187 | Enable display of the menuBar |
|
|
1188 | |
|
|
1189 | [hide] |
|
|
1190 | Disable display of the menuBar |
|
|
1191 | |
|
|
1192 | [pixmap:+*name*] |
|
|
1193 | [pixmap:+*name*;*scaling*] |
|
|
1194 | (set the background pixmap globally |
|
|
1195 | |
|
|
1196 | A Future implementation *may* make this local to the menubar) |
|
|
1197 | |
|
|
1198 | [:+*command*:] |
|
|
1199 | ignore the menu readonly status and issue a *command* to or a menu |
|
|
1200 | or menuitem or change the ; a useful shortcut for setting the quick |
|
|
1201 | arrows from a menuBar. |
|
|
1202 | |
|
|
1203 | |
|
|
1204 | |
|
|
1205 | Adding and accessing menus |
|
|
1206 | The following commands may also be + prefixed. |
|
|
1207 | |
|
|
1208 | /+ access menuBar top level |
|
|
1209 | |
|
|
1210 | ./+ access current menu level |
|
|
1211 | |
|
|
1212 | ../+ |
|
|
1213 | access parent menu (1 level up) |
|
|
1214 | |
|
|
1215 | ../../ |
|
|
1216 | access parent menu (multiple levels up) |
|
|
1217 | |
|
|
1218 | */path/*menu |
|
|
1219 | add/access menu |
|
|
1220 | |
|
|
1221 | */path/*menu/* |
|
|
1222 | add/access menu and clear it if it exists |
|
|
1223 | |
|
|
1224 | */path/*{-} |
|
|
1225 | add separator |
|
|
1226 | |
|
|
1227 | */path/*{item} |
|
|
1228 | add item as a label |
|
|
1229 | |
|
|
1230 | */path/*{item} action |
|
|
1231 | add/alter *menuitem* with an associated *action* |
|
|
1232 | |
|
|
1233 | */path/*{item}{right-text} |
|
|
1234 | add/alter *menuitem* with right-text as the right-justified text and |
|
|
1235 | as the associated *action* |
|
|
1236 | |
|
|
1237 | */path/*{item}{rtext} action |
|
|
1238 | add/alter *menuitem* with an associated *action* and with rtext as |
|
|
1239 | the right-justified text. |
|
|
1240 | |
|
|
1241 | Special characters in *action* must be backslash-escaped: |
|
|
1242 | \a \b \E \e \n \r \t \octal |
|
|
1243 | |
|
|
1244 | or in control-character notation: |
|
|
1245 | ^@, ^A .. ^Z .. ^_, ^? |
|
|
1246 | |
|
|
1247 | To send a string starting with a NUL (^@) character to the program, |
|
|
1248 | start *action* with a pair of NUL characters (^@^@), the first of which |
|
|
1249 | will be stripped off and the balance directed to the program. Otherwise |
|
|
1250 | if *action* begins with NUL followed by non-+NUL characters, the leading |
|
|
1251 | NUL is stripped off and the balance is sent back to rxvt. |
|
|
1252 | |
|
|
1253 | As a convenience for the many Emacs-type editors, *action* may start |
|
|
1254 | with M- (eg, M-$ is equivalent to \E$) and a CR will be appended if |
|
|
1255 | missed from M-x commands. |
|
|
1256 | |
|
|
1257 | As a convenience for issuing XTerm ESC] sequences from a menubar (or |
|
|
1258 | quick arrow), a BEL (^G) will be appended if needed. |
|
|
1259 | |
|
|
1260 | For example, |
|
|
1261 | M-xapropos is equivalent to \Exapropos\r |
|
|
1262 | |
|
|
1263 | and \E]703;mona;100 is equivalent to \E]703;mona;100\a |
|
|
1264 | |
|
|
1265 | The option {*right-rtext*} will be right-justified. In the absence of a |
|
|
1266 | specified action, this text will be used as the *action* as well. |
|
|
1267 | |
|
|
1268 | For example, |
|
|
1269 | /File/{Open}{^X^F} is equivalent to /File/{Open}{^X^F} ^X^F |
|
|
1270 | |
|
|
1271 | The left label *is* necessary, since it's used for matching, but |
|
|
1272 | implicitly hiding the left label (by using same name for both left and |
|
|
1273 | right labels), or explicitly hiding the left label (by preceeding it |
|
|
1274 | with a dot), makes it possible to have right-justified text only. |
|
|
1275 | |
|
|
1276 | For example, |
|
|
1277 | /File/{Open}{Open} Open-File-Action |
|
|
1278 | |
|
|
1279 | or hiding it |
|
|
1280 | /File/{.anylabel}{Open} Open-File-Action |
|
|
1281 | |
|
|
1282 | |
|
|
1283 | |
|
|
1284 | Removing menus |
|
|
1285 | -/*+ |
|
|
1286 | remove all menus from the menuBar, the same as [clear] |
|
|
1287 | |
|
|
1288 | -+*/path*menu+ |
|
|
1289 | remove menu |
|
|
1290 | |
|
|
1291 | -+*/path*{item}+ |
|
|
1292 | remove item |
|
|
1293 | |
|
|
1294 | -+*/path*{-} |
|
|
1295 | remove separator) |
|
|
1296 | |
|
|
1297 | -/path/menu/* |
|
|
1298 | remove all items, separators and submenus from menu |
|
|
1299 | |
|
|
1300 | |
|
|
1301 | |
|
|
1302 | Quick Arrows |
|
|
1303 | The menus also provide a hook for *quick arrows* to provide easier user |
|
|
1304 | access. If nothing has been explicitly set, the default is to emulate |
|
|
1305 | the curror keys. The syntax permits each arrow to be altered |
|
|
1306 | individually or all four at once without re-entering their common |
|
|
1307 | beginning/end text. For example, to explicitly associate cursor actions |
|
|
1308 | with the arrows, any of the following forms could be used: |
|
|
1309 | |
|
|
1310 | <r>+*Right* |
|
|
1311 | <l>+*Left* |
|
|
1312 | <u>+*Up* |
|
|
1313 | <d>+*Down* |
|
|
1314 | Define actions for the respective arrow buttons |
|
|
1315 | |
|
|
1316 | <b>+*Begin* |
|
|
1317 | <e>+*End* |
|
|
1318 | Define common beginning/end parts for *quick arrows* which used in |
|
|
1319 | conjunction with the above <r> <l> <u> <d> constructs |
|
|
1320 | |
|
|
1321 | For example, define arrows individually, |
|
|
1322 | <u>\E[A |
|
|
1323 | |
|
|
1324 | <d>\E[B |
|
|
1325 | |
|
|
1326 | <r>\E[C |
|
|
1327 | |
|
|
1328 | <l>\E[D |
|
|
1329 | |
|
|
1330 | or all at once |
|
|
1331 | <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D |
|
|
1332 | |
|
|
1333 | or more compactly (factoring out common parts) |
|
|
1334 | <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D |
|
|
1335 | |
|
|
1336 | |
|
|
1337 | |
|
|
1338 | Command Summary |
|
|
1339 | A short summary of the most *common* commands: |
|
|
1340 | |
|
|
1341 | [menu:name] |
|
|
1342 | use an existing named menuBar or start a new one |
|
|
1343 | |
|
|
1344 | [menu] |
|
|
1345 | use the current menuBar |
|
|
1346 | |
|
|
1347 | [title:string] |
|
|
1348 | set menuBar title |
|
|
1349 | |
|
|
1350 | [done] |
|
|
1351 | set menu access to readonly and, if reading from a file, signal EOF |
|
|
1352 | |
|
|
1353 | [done:name] |
|
|
1354 | if reading from a file using [read:file;name] signal EOF |
|
|
1355 | |
|
|
1356 | [rm:name] |
|
|
1357 | remove named menuBar(s) |
|
|
1358 | |
|
|
1359 | [rm] [rm:] |
|
|
1360 | remove current menuBar |
|
|
1361 | |
|
|
1362 | [rm*] [rm:*] |
|
|
1363 | remove all menuBar(s) |
|
|
1364 | |
|
|
1365 | [swap] |
|
|
1366 | swap top two menuBars |
|
|
1367 | |
|
|
1368 | [prev] |
|
|
1369 | access the previous menuBar |
|
|
1370 | |
|
|
1371 | [next] |
|
|
1372 | access the next menuBar |
|
|
1373 | |
|
|
1374 | [show] |
|
|
1375 | map menuBar |
|
|
1376 | |
|
|
1377 | [hide] |
|
|
1378 | unmap menuBar |
|
|
1379 | |
|
|
1380 | [pixmap;file] |
|
|
1381 | [pixmap;file;scaling] |
|
|
1382 | set a background pixmap |
|
|
1383 | |
|
|
1384 | [read:file] |
|
|
1385 | [read:file;name] |
|
|
1386 | read in a menu from a file |
|
|
1387 | |
|
|
1388 | [dump] |
|
|
1389 | dump out all menuBars to /tmp/rxvt-PID |
|
|
1390 | |
|
|
1391 | / access menuBar top level |
|
|
1392 | |
|
|
1393 | ./ |
|
|
1394 | ../ |
|
|
1395 | ../../ |
|
|
1396 | access current or parent menu level |
|
|
1397 | |
|
|
1398 | /path/menu |
|
|
1399 | add/access menu |
|
|
1400 | |
|
|
1401 | /path/{-} |
|
|
1402 | add separator |
|
|
1403 | |
|
|
1404 | /path/{item}{rtext} action |
|
|
1405 | add/alter menu item |
|
|
1406 | |
|
|
1407 | -/* remove all menus from the menuBar |
|
|
1408 | |
|
|
1409 | -/path/menu |
|
|
1410 | remove menu items, separators and submenus from menu |
|
|
1411 | |
|
|
1412 | -/path/menu |
|
|
1413 | remove menu |
|
|
1414 | |
|
|
1415 | -/path/{item} |
|
|
1416 | remove item |
|
|
1417 | |
|
|
1418 | -/path/{-} |
|
|
1419 | remove separator |
|
|
1420 | |
|
|
1421 | <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End |
|
|
1422 | menu quick arrows |
|
|
1423 | |
1372 | |
1424 | XPM |
1373 | XPM |
1425 | 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" |
1426 | 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 |
1427 | scaling/positioning commands separated by semi-colons. The |
1376 | scaling/positioning commands separated by semi-colons. The |
… | |
… | |
1562 | XK_KP_8 8 ESC O x |
1511 | XK_KP_8 8 ESC O x |
1563 | XK_KP_9 9 ESC O y |
1512 | XK_KP_9 9 ESC O y |
1564 | |
1513 | |
1565 | CONFIGURE OPTIONS |
1514 | CONFIGURE OPTIONS |
1566 | General hint: if you get compile errors, then likely your configuration |
1515 | General hint: if you get compile errors, then likely your configuration |
1567 | hasn't been tested well. Either try with --enable-everything or use the |
1516 | hasn't been tested well. Either try with "--enable-everything" or use |
1568 | ./reconf script as a base for experiments. ./reconf is used by myself, |
1517 | the ./reconf script as a base for experiments. ./reconf is used by |
1569 | so it should generally be a working config. Of course, you should always |
1518 | myself, so it should generally be a working config. Of course, you |
1570 | report when a combination doesn't work, so it can be fixed. Marc Lehmann |
1519 | should always report when a combination doesn't work, so it can be |
1571 | <rxvt@schmorp.de>. |
1520 | fixed. Marc Lehmann <rxvt@schmorp.de>. |
|
|
1521 | |
|
|
1522 | All |
1572 | |
1523 | |
1573 | --enable-everything |
1524 | --enable-everything |
1574 | Add support for all non-multichoice options listed in "./configure |
1525 | Add (or remove) support for all non-multichoice options listed in |
1575 | --help". Note that unlike other enable options this is order |
1526 | "./configure --help". |
1576 | dependant. You can specify this and then disable options which this |
|
|
1577 | enables by *following* this with the appropriate commands. |
|
|
1578 | |
1527 | |
1579 | --enable-xft |
1528 | You can specify this and then disable options you do not like by |
|
|
1529 | *following* this with the appropriate "--disable-..." arguments, or |
|
|
1530 | you can start with a minimal configuration by specifying |
|
|
1531 | "--disable-everything" and than adding just the "--enable-..." |
|
|
1532 | arguments you want. |
|
|
1533 | |
|
|
1534 | --enable-xft (default: enabled) |
1580 | Add support for Xft (anti-aliases, among others) fonts. Xft fonts |
1535 | Add support for Xft (anti-aliases, among others) fonts. Xft fonts |
1581 | are slower and require lots of memory, but as long as you don't use |
1536 | are slower and require lots of memory, but as long as you don't use |
1582 | them, you don't pay for them. |
1537 | them, you don't pay for them. |
1583 | |
1538 | |
1584 | --enable-font-styles |
1539 | --enable-font-styles (default: on) |
1585 | Add support for bold, *italic* and *bold italic* font styles. The |
1540 | Add support for bold, *italic* and *bold italic* font styles. The |
1586 | fonts can be set manually or automatically. |
1541 | fonts can be set manually or automatically. |
1587 | |
1542 | |
1588 | --with-codesets=NAME,... |
1543 | --with-codesets=NAME,... (default: all) |
1589 | Compile in support for additional codeset (encoding) groups (eu, vn |
1544 | Compile in support for additional codeset (encoding) groups ("eu", |
1590 | are always compiled in, which includes most 8-bit character sets). |
1545 | "vn" are always compiled in, which includes most 8-bit character |
1591 | These codeset tables are currently only used for driving X11 core |
1546 | sets). These codeset tables are used for driving X11 core fonts, |
1592 | fonts, they are not required for Xft fonts. Compiling them in will |
1547 | they are not required for Xft fonts, although having them compiled |
1593 | make your binary bigger (together about 700kB), but it doesn't |
1548 | in lets rxvt-unicode choose replacement fonts more intelligently. |
1594 | increase memory usage unless you use an X11 font requiring one of |
1549 | Compiling them in will make your binary bigger (all of together cost |
1595 | these encodings. |
1550 | about 700kB), but it doesn't increase memory usage unless you use a |
|
|
1551 | font requiring one of these encodings. |
1596 | |
1552 | |
1597 | all all available codeset groups |
1553 | all all available codeset groups |
1598 | zh common chinese encodings |
1554 | zh common chinese encodings |
1599 | zh_ext rarely used but very big chinese encodigs |
1555 | zh_ext rarely used but very big chinese encodigs |
1600 | jp common japanese encodings |
1556 | jp common japanese encodings |
1601 | jp_ext rarely used but big japanese encodings |
1557 | jp_ext rarely used but big japanese encodings |
1602 | kr korean encodings |
1558 | kr korean encodings |
1603 | |
1559 | |
1604 | --enable-xim |
1560 | --enable-xim (default: on) |
1605 | Add support for XIM (X Input Method) protocol. This allows using |
1561 | Add support for XIM (X Input Method) protocol. This allows using |
1606 | alternative input methods (e.g. kinput2) and will also correctly set |
1562 | alternative input methods (e.g. kinput2) and will also correctly set |
1607 | up the input for people using dead keys or compose keys. |
1563 | up the input for people using dead keys or compose keys. |
1608 | |
1564 | |
1609 | --enable-unicode3 |
1565 | --enable-unicode3 (default: off) |
1610 | Enable direct support for displaying unicode codepoints above 65535 |
1566 | Enable direct support for displaying unicode codepoints above 65535 |
1611 | (the basic multilingual page). This increases storage requirements |
1567 | (the basic multilingual page). This increases storage requirements |
1612 | per character from 2 to 4 bytes. X11 fonts do not yet support these |
1568 | per character from 2 to 4 bytes. X11 fonts do not yet support these |
1613 | extra characters, but Xft does. |
1569 | extra characters, but Xft does. |
1614 | |
1570 | |
… | |
… | |
1616 | even without this flag, but the number of such characters is limited |
1572 | even without this flag, but the number of such characters is limited |
1617 | to a view thousand (shared with combining characters, see next |
1573 | to a view thousand (shared with combining characters, see next |
1618 | switch), and right now rxvt-unicode cannot display them |
1574 | switch), and right now rxvt-unicode cannot display them |
1619 | (input/output and cut&paste still work, though). |
1575 | (input/output and cut&paste still work, though). |
1620 | |
1576 | |
1621 | --enable-combining |
1577 | --enable-combining (default: on) |
1622 | Enable automatic composition of combining characters into composite |
1578 | Enable automatic composition of combining characters into composite |
1623 | characters. This is required for proper viewing of text where |
1579 | characters. This is required for proper viewing of text where |
1624 | accents are encoded as seperate unicode characters. This is done by |
1580 | accents are encoded as seperate unicode characters. This is done by |
1625 | using precomposited characters when available or creating new |
1581 | using precomposited characters when available or creating new |
1626 | pseudo-characters when no precomposed form exists. |
1582 | pseudo-characters when no precomposed form exists. |
1627 | |
1583 | |
1628 | Without --enable-unicode3, the number of additional precomposed |
1584 | Without --enable-unicode3, the number of additional precomposed |
1629 | characters is rather limited (2048, if this is full, rxvt will use |
1585 | characters is rather limited (2048, if this is full, rxvt-unicode |
1630 | the private use area, extending the number of combinations to 8448). |
1586 | will use the private use area, extending the number of combinations |
1631 | With --enable-unicode3, no practical limit exists. This will also |
1587 | to 8448). With --enable-unicode3, no practical limit exists. |
1632 | enable storage of characters >65535. |
1588 | |
|
|
1589 | This option will also enable storage (but not display) of characters |
|
|
1590 | beyond plane 0 (>65535) when --enable-unicode3 was not specified. |
1633 | |
1591 | |
1634 | The combining table also contains entries for arabic presentation |
1592 | The combining table also contains entries for arabic presentation |
1635 | forms, but these are not currently used. Bug me if you want these to |
1593 | forms, but these are not currently used. Bug me if you want these to |
1636 | be used. |
1594 | be used (and tell me how these are to be used...). |
1637 | |
1595 | |
1638 | --enable-fallback(=CLASS) |
1596 | --enable-fallback(=CLASS) (default: Rxvt) |
1639 | When reading resource settings, also read settings for class CLASS |
1597 | When reading resource settings, also read settings for class CLASS. |
1640 | (default: Rxvt). To disable resource fallback use |
1598 | To disable resource fallback use --disable-fallback. |
1641 | --disable-fallback. |
|
|
1642 | |
1599 | |
1643 | --with-res-name=NAME |
1600 | --with-res-name=NAME (default: urxvt) |
1644 | Use the given name (default: urxvt) as default application name when |
1601 | Use the given name as default application name when reading |
1645 | reading resources. Specify --with-res-name=rxvt to replace rxvt. |
1602 | resources. Specify --with-res-name=rxvt to replace rxvt. |
1646 | |
1603 | |
1647 | --with-res-class=CLASS |
1604 | --with-res-class=CLASS /default: URxvt) |
1648 | Use the given class (default: URxvt) as default application class |
1605 | Use the given class as default application class when reading |
1649 | when reading resources. Specify --with-res-class=Rxvt to replace |
1606 | resources. Specify --with-res-class=Rxvt to replace rxvt. |
1650 | rxvt. |
|
|
1651 | |
1607 | |
1652 | --enable-utmp |
1608 | --enable-utmp (default: on) |
1653 | Write user and tty to utmp file (used by programs like w) at start |
1609 | Write user and tty to utmp file (used by programs like w) at start |
1654 | of rxvt execution and delete information when rxvt exits. |
1610 | of rxvt execution and delete information when rxvt exits. |
1655 | |
1611 | |
1656 | --enable-wtmp |
1612 | --enable-wtmp (default: on) |
1657 | Write user and tty to wtmp file (used by programs like last) at |
1613 | Write user and tty to wtmp file (used by programs like last) at |
1658 | start of rxvt execution and write logout when rxvt exits. This |
1614 | start of rxvt execution and write logout when rxvt exits. This |
1659 | option requires --enable-utmp to also be specified. |
1615 | option requires --enable-utmp to also be specified. |
1660 | |
1616 | |
1661 | --enable-lastlog |
1617 | --enable-lastlog (default: on) |
1662 | 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) |
1663 | at start of rxvt execution. This option requires --enable-utmp to |
1619 | at start of rxvt execution. This option requires --enable-utmp to |
1664 | also be specified. |
1620 | also be specified. |
1665 | |
1621 | |
1666 | --enable-xpm-background |
1622 | --enable-xpm-background (default: on) |
1667 | Add support for XPM background pixmaps. |
1623 | Add support for XPM background pixmaps. |
1668 | |
1624 | |
1669 | --enable-transparency |
1625 | --enable-transparency (default: on) |
1670 | Add support for inheriting parent backgrounds thus giving a fake |
1626 | Add support for inheriting parent backgrounds thus giving a fake |
1671 | transparency to the term. |
1627 | transparency to the term. |
1672 | |
1628 | |
1673 | --enable-fading |
1629 | --enable-fading (default: on) |
1674 | Add support for fading the text when focus is lost. |
1630 | Add support for fading the text when focus is lost (requires |
|
|
1631 | "--enable-transparency"). |
1675 | |
1632 | |
1676 | --enable-tinting |
1633 | --enable-tinting (default: on) |
1677 | Add support for tinting of transparent backgrounds. |
1634 | Add support for tinting of transparent backgrounds (requires |
|
|
1635 | "--enable-transparency"). |
1678 | |
1636 | |
1679 | --enable-menubar |
|
|
1680 | Add support for our menu bar system (this interacts badly with |
|
|
1681 | dynamic locale switching currently). |
|
|
1682 | |
|
|
1683 | --enable-rxvt-scroll |
1637 | --enable-rxvt-scroll (default: on) |
1684 | Add support for the original rxvt scrollbar. |
1638 | Add support for the original rxvt scrollbar. |
1685 | |
1639 | |
1686 | --enable-next-scroll |
1640 | --enable-next-scroll (default: on) |
1687 | Add support for a NeXT-like scrollbar. |
1641 | Add support for a NeXT-like scrollbar. |
1688 | |
1642 | |
1689 | --enable-xterm-scroll |
1643 | --enable-xterm-scroll (default: on) |
1690 | Add support for an Xterm-like scrollbar. |
1644 | Add support for an Xterm-like scrollbar. |
1691 | |
1645 | |
1692 | --enable-plain-scroll |
1646 | --enable-plain-scroll (default: on) |
1693 | Add support for a very unobtrusive, plain-looking scrollbar that is |
1647 | Add support for a very unobtrusive, plain-looking scrollbar that is |
1694 | the favourite of the rxvt-unicode author, having used it for many |
1648 | the favourite of the rxvt-unicode author, having used it for many |
1695 | years. |
1649 | years. |
1696 | |
1650 | |
1697 | --enable-half-shadow |
1651 | --enable-half-shadow (default: off) |
1698 | Make shadows on the scrollbar only half the normal width & height. |
1652 | Make shadows on the scrollbar only half the normal width & height. |
1699 | only applicable to rxvt scrollbars. |
1653 | only applicable to rxvt scrollbars. |
1700 | |
1654 | |
1701 | --enable-ttygid |
1655 | --enable-ttygid (default: off) |
1702 | Change tty device setting to group "tty" - only use this if your |
1656 | Change tty device setting to group "tty" - only use this if your |
1703 | system uses this type of security. |
1657 | system uses this type of security. |
1704 | |
1658 | |
1705 | --disable-backspace-key |
1659 | --disable-backspace-key |
1706 | Disable any handling of the backspace key by us - let the X server |
1660 | Removes any handling of the backspace key by us - let the X server |
1707 | do it. |
1661 | do it. |
1708 | |
1662 | |
1709 | --disable-delete-key |
1663 | --disable-delete-key |
1710 | Disable any handling of the delete key by us - let the X server do |
1664 | Removes any handling of the delete key by us - let the X server do |
1711 | it. |
1665 | it. |
1712 | |
1666 | |
1713 | --disable-resources |
1667 | --disable-resources |
1714 | Remove all resources checking. |
1668 | Removes any support for resource checking. |
1715 | |
|
|
1716 | --enable-xgetdefault |
|
|
1717 | Make resources checking via XGetDefault() instead of our small |
|
|
1718 | version which only checks ~/.Xdefaults, or if that doesn't exist |
|
|
1719 | then ~/.Xresources. |
|
|
1720 | |
|
|
1721 | --enable-strings |
|
|
1722 | Add support for our possibly faster memset() function and other |
|
|
1723 | various routines, overriding your system's versions which may have |
|
|
1724 | been hand-crafted in assembly or may require extra libraries to link |
|
|
1725 | in. (this breaks ANSI-C rules and has problems on many GNU/Linux |
|
|
1726 | systems). |
|
|
1727 | |
1669 | |
1728 | --disable-swapscreen |
1670 | --disable-swapscreen |
1729 | Remove support for swap screen. |
1671 | Remove support for secondary/swap screen. |
1730 | |
1672 | |
1731 | --enable-frills |
1673 | --enable-frills (default: on) |
1732 | 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 |
1733 | to have. Normally you want this, but for very small binaries you may |
1675 | to have. Normally you want this, but for very small binaries you may |
1734 | want to disable this. |
1676 | want to disable this. |
1735 | |
1677 | |
1736 | A non-exhaustive list of features enabled by "--enable-frills" |
1678 | A non-exhaustive list of features enabled by "--enable-frills" |
1737 | (possibly in combination with other switches) is: |
1679 | (possibly in combination with other switches) is: |
1738 | |
1680 | |
1739 | MWM-hints |
1681 | MWM-hints |
|
|
1682 | EWMH-hints (pid, utf8 names) and protocols (ping) |
1740 | seperate underline colour |
1683 | seperate underline colour (-underlineColor) |
1741 | settable border widths and borderless switch |
1684 | settable border widths and borderless switch (-w, -b, -bl) |
1742 | settable extra linespacing |
1685 | settable extra linespacing /-lsp) |
1743 | extra window properties (e.g. UTF-8 window names and PID) |
|
|
1744 | iso-14755-2 and -3, and visual feedback |
1686 | iso-14755-2 and -3, and visual feedback |
1745 | backindex and forwardindex escape sequence |
1687 | backindex and forwardindex escape sequence |
1746 | window op and locale change escape sequences |
1688 | window op and some xterm/OSC escape sequences |
1747 | tripleclickwords |
1689 | tripleclickwords (-tcw) |
1748 | settable insecure mode |
1690 | settable insecure mode (-insecure) |
|
|
1691 | keysym remapping support |
|
|
1692 | cursor blinking and underline cursor (-cb, -uc) |
|
|
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 |
1749 | |
1698 | |
1750 | --enable-iso14755 |
1699 | --enable-iso14755 (default: on) |
1751 | 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). |
1752 | Basic support (section 5.1) is enabled by "--enable-frills", while |
1701 | Basic support (section 5.1) is enabled by "--enable-frills", while |
1753 | 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. |
1754 | |
1703 | |
1755 | --enable-keepscrolling |
1704 | --enable-keepscrolling (default: on) |
1756 | Add support for continual scrolling of the display when you hold the |
1705 | Add support for continual scrolling of the display when you hold the |
1757 | mouse button down on a scrollbar arrow. |
1706 | mouse button down on a scrollbar arrow. |
1758 | |
1707 | |
1759 | --enable-mousewheel |
1708 | --enable-mousewheel (default: on) |
1760 | Add support for scrolling via mouse wheel or buttons 4 & 5. |
1709 | Add support for scrolling via mouse wheel or buttons 4 & 5. |
1761 | |
1710 | |
1762 | --enable-slipwheeling |
1711 | --enable-slipwheeling (default: on) |
1763 | Add support for continual scrolling (using the mouse wheel as an |
1712 | Add support for continual scrolling (using the mouse wheel as an |
1764 | accelerator) while the control key is held down. This option |
1713 | accelerator) while the control key is held down. This option |
1765 | requires --enable-mousewheel to also be specified. |
1714 | requires --enable-mousewheel to also be specified. |
1766 | |
1715 | |
1767 | --disable-new-selection |
1716 | --disable-new-selection |
1768 | Remove support for mouse selection style like that of xterm. |
1717 | Remove support for mouse selection style like that of xterm. |
1769 | |
1718 | |
1770 | --enable-dmalloc |
1719 | --enable-dmalloc (default: off) |
1771 | Use Gray Watson's malloc - which is good for debugging See |
1720 | Use Gray Watson's malloc - which is good for debugging See |
1772 | http://www.letters.com/dmalloc/ for details If you use either this |
1721 | http://www.letters.com/dmalloc/ for details If you use either this |
1773 | or the next option, you may need to edit src/Makefile after |
1722 | or the next option, you may need to edit src/Makefile after |
1774 | compiling to point DINCLUDE and DLIB to the right places. |
1723 | compiling to point DINCLUDE and DLIB to the right places. |
1775 | |
1724 | |
1776 | You can only use either this option and the following (should you |
1725 | You can only use either this option and the following (should you |
1777 | use either) . |
1726 | use either) . |
1778 | |
1727 | |
1779 | --enable-dlmalloc |
1728 | --enable-dlmalloc (default: off) |
1780 | 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 |
1781 | <http://g.oswego.edu/dl/html/malloc.html> for details. |
1730 | <http://g.oswego.edu/dl/html/malloc.html> for details. |
1782 | |
1731 | |
1783 | --enable-smart-resize |
1732 | --enable-smart-resize (default: on) |
1784 | Add smart growth/shrink behaviour when changing font size via from |
1733 | Add smart growth/shrink behaviour when changing font size via hot |
1785 | 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 |
1786 | is closest to a corner of the screen. |
1735 | corner of the screen in a fixed position. |
1787 | |
1736 | |
1788 | --enable-cursor-blink |
|
|
1789 | Add support for a blinking cursor. |
|
|
1790 | |
|
|
1791 | --enable-pointer-blank |
1737 | --enable-pointer-blank (default: on) |
1792 | Add support to have the pointer disappear when typing or inactive. |
1738 | Add support to have the pointer disappear when typing or inactive. |
1793 | |
1739 | |
1794 | --with-name=NAME |
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. |
|
|
1746 | |
|
|
1747 | --with-name=NAME (default: urxvt) |
1795 | Set the basename for the installed binaries (default: "urxvt", |
1748 | Set the basename for the installed binaries, resulting in "urxvt", |
1796 | resulting in "urxvt", "urxvtd" etc.). Specify "--with-name=rxvt" to |
1749 | "urxvtd" etc.). Specify "--with-name=rxvt" to replace with "rxvt". |
1797 | replace with "rxvt". |
|
|
1798 | |
1750 | |
1799 | --with-term=NAME |
1751 | --with-term=NAME (default: rxvt-unicode) |
1800 | Change the environmental variable for the terminal to NAME (default |
1752 | Change the environmental variable for the terminal to NAME. |
1801 | "rxvt-unicode") |
|
|
1802 | |
1753 | |
1803 | --with-terminfo=PATH |
1754 | --with-terminfo=PATH |
1804 | Change the environmental variable for the path to the terminfo tree |
1755 | Change the environmental variable for the path to the terminfo tree |
1805 | to PATH. |
1756 | to PATH. |
1806 | |
1757 | |