… | |
… | |
127 | .\} |
127 | .\} |
128 | .rm #[ #] #H #V #F C |
128 | .rm #[ #] #H #V #F C |
129 | .\" ======================================================================== |
129 | .\" ======================================================================== |
130 | .\" |
130 | .\" |
131 | .IX Title "rxvt 7" |
131 | .IX Title "rxvt 7" |
132 | .TH rxvt 7 "2006-01-04" "6.3" "RXVT-UNICODE" |
132 | .TH rxvt 7 "2006-02-02" "7.5" "RXVT-UNICODE" |
133 | .SH "NAME" |
133 | .SH "NAME" |
134 | RXVT REFERENCE \- FAQ, command sequences and other background information |
134 | RXVT REFERENCE \- FAQ, command sequences and other background information |
135 | .SH "SYNOPSIS" |
135 | .SH "SYNOPSIS" |
136 | .IX Header "SYNOPSIS" |
136 | .IX Header "SYNOPSIS" |
137 | .Vb 2 |
137 | .Vb 2 |
… | |
… | |
151 | .SH "DESCRIPTION" |
151 | .SH "DESCRIPTION" |
152 | .IX Header "DESCRIPTION" |
152 | .IX Header "DESCRIPTION" |
153 | This document contains the \s-1FAQ\s0, the \s-1RXVT\s0 \s-1TECHNICAL\s0 \s-1REFERENCE\s0 documenting |
153 | This document contains the \s-1FAQ\s0, the \s-1RXVT\s0 \s-1TECHNICAL\s0 \s-1REFERENCE\s0 documenting |
154 | all escape sequences, and other background information. |
154 | all escape sequences, and other background information. |
155 | .PP |
155 | .PP |
156 | The newest version of this document is |
156 | The newest version of this document is also available on the World Wide Web at |
157 | also available on the World Wide Web at |
|
|
158 | <http://cvs.schmorp.de/browse/*checkout*/rxvt\-unicode/doc/rxvt.7.html>. |
157 | <http://cvs.schmorp.de/browse/*checkout*/rxvt\-unicode/doc/rxvt.7.html>. |
159 | .SH "FREQUENTLY ASKED QUESTIONS" |
158 | .SH "RXVT\-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS" |
160 | .IX Header "FREQUENTLY ASKED QUESTIONS" |
159 | .IX Header "RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS" |
|
|
160 | .Sh "Meta, Features & Commandline Issues" |
|
|
161 | .IX Subsection "Meta, Features & Commandline Issues" |
|
|
162 | \fIMy question isn't answered here, can I ask a human?\fR |
|
|
163 | .IX Subsection "My question isn't answered here, can I ask a human?" |
|
|
164 | .PP |
|
|
165 | Before sending me mail, you could go to \s-1IRC:\s0 \f(CW\*(C`irc.freenode.net\*(C'\fR, |
|
|
166 | channel \f(CW\*(C`#rxvt\-unicode\*(C'\fR has some rxvt-unicode enthusiasts that might be |
|
|
167 | interested in learning about new and exciting problems (but not FAQs :). |
|
|
168 | .PP |
|
|
169 | \fIDoes it support tabs, can I have a tabbed rxvt\-unicode?\fR |
|
|
170 | .IX Subsection "Does it support tabs, can I have a tabbed rxvt-unicode?" |
|
|
171 | .PP |
|
|
172 | Beginning with version 7.3, there is a perl extension that implements a |
|
|
173 | simple tabbed terminal. It is installed by default, so any of these should |
|
|
174 | give you tabs: |
|
|
175 | .PP |
|
|
176 | .Vb 1 |
|
|
177 | \& @@URXVT_NAME@@ -pe tabbed |
|
|
178 | .Ve |
|
|
179 | .PP |
|
|
180 | .Vb 1 |
|
|
181 | \& URxvt.perl-ext-common: default,tabbed |
|
|
182 | .Ve |
|
|
183 | .PP |
|
|
184 | It will also work fine with tabbing functionality of many window managers |
|
|
185 | or similar tabbing programs, and its embedding-features allow it to be |
|
|
186 | embedded into other programs, as witnessed by \fIdoc/rxvt\-tabbed\fR or |
|
|
187 | the upcoming \f(CW\*(C`Gtk2::URxvt\*(C'\fR perl module, which features a tabbed urxvt |
|
|
188 | (murxvt) terminal as an example embedding application. |
|
|
189 | .PP |
|
|
190 | \fIHow do I know which rxvt-unicode version I'm using?\fR |
|
|
191 | .IX Subsection "How do I know which rxvt-unicode version I'm using?" |
|
|
192 | .PP |
|
|
193 | The version number is displayed with the usage (\-h). Also the escape |
|
|
194 | sequence \f(CW\*(C`ESC [ 8 n\*(C'\fR sets the window title to the version number. When |
|
|
195 | using the @@URXVT_NAME@@c client, the version displayed is that of the |
|
|
196 | daemon. |
|
|
197 | .PP |
|
|
198 | \fIRxvt-unicode uses gobs of memory, how can I reduce that?\fR |
|
|
199 | .IX Subsection "Rxvt-unicode uses gobs of memory, how can I reduce that?" |
|
|
200 | .PP |
|
|
201 | Rxvt-unicode tries to obey the rule of not charging you for something you |
|
|
202 | don't use. One thing you should try is to configure out all settings that |
|
|
203 | you don't need, for example, Xft support is a resource hog by design, |
|
|
204 | when used. Compiling it out ensures that no Xft font will be loaded |
|
|
205 | accidentally when rxvt-unicode tries to find a font for your characters. |
|
|
206 | .PP |
|
|
207 | Also, many people (me included) like large windows and even larger |
|
|
208 | scrollback buffers: Without \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR, rxvt-unicode will use |
|
|
209 | 6 bytes per screen cell. For a 160x?? window this amounts to almost a |
|
|
210 | kilobyte per line. A scrollback buffer of 10000 lines will then (if full) |
|
|
211 | use 10 Megabytes of memory. With \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR it gets worse, as |
|
|
212 | rxvt-unicode then uses 8 bytes per screen cell. |
|
|
213 | .PP |
|
|
214 | \fIHow can I start @@URXVT_NAME@@d in a race-free way?\fR |
|
|
215 | .IX Subsection "How can I start @@URXVT_NAME@@d in a race-free way?" |
|
|
216 | .PP |
|
|
217 | Try \f(CW\*(C`@@URXVT_NAME@@d \-f \-o\*(C'\fR, which tells @@URXVT_NAME@@d to open the |
|
|
218 | display, create the listening socket and then fork. |
|
|
219 | .PP |
|
|
220 | \fIHow can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c?\fR |
|
|
221 | .IX Subsection "How can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c?" |
|
|
222 | .PP |
|
|
223 | If you want to start @@URXVT_NAME@@d automatically whenever you run |
|
|
224 | @@URXVT_NAME@@c and the daemon isn't running yet, use this script: |
|
|
225 | .PP |
|
|
226 | .Vb 6 |
|
|
227 | \& #!/bin/sh |
|
|
228 | \& @@URXVT_NAME@@c "$@" |
|
|
229 | \& if [ $? -eq 2 ]; then |
|
|
230 | \& @@URXVT_NAME@@d -q -o -f |
|
|
231 | \& @@URXVT_NAME@@c "$@" |
|
|
232 | \& fi |
|
|
233 | .Ve |
|
|
234 | .PP |
|
|
235 | This tries to create a new terminal, and if fails with exit status 2, |
|
|
236 | meaning it couldn't connect to the daemon, it will start the daemon and |
|
|
237 | re-run the command. Subsequent invocations of the script will re-use the |
|
|
238 | existing daemon. |
|
|
239 | .PP |
|
|
240 | \fIHow do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc.\fR |
|
|
241 | .IX Subsection "How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc." |
|
|
242 | .PP |
|
|
243 | The original rxvt and rxvt-unicode always export the variable \*(L"\s-1COLORTERM\s0\*(R", |
|
|
244 | so you can check and see if that is set. Note that several programs, \s-1JED\s0, |
|
|
245 | slrn, Midnight Commander automatically check this variable to decide |
|
|
246 | whether or not to use color. |
|
|
247 | .PP |
|
|
248 | \fIHow do I set the correct, full \s-1IP\s0 address for the \s-1DISPLAY\s0 variable?\fR |
|
|
249 | .IX Subsection "How do I set the correct, full IP address for the DISPLAY variable?" |
|
|
250 | .PP |
|
|
251 | If you've compiled rxvt-unicode with \s-1DISPLAY_IS_IP\s0 and have enabled |
|
|
252 | insecure mode then it is possible to use the following shell script |
|
|
253 | snippets to correctly set the display. If your version of rxvt-unicode |
|
|
254 | wasn't also compiled with \s-1ESCZ_ANSWER\s0 (as assumed in these snippets) then |
|
|
255 | the \s-1COLORTERM\s0 variable can be used to distinguish rxvt-unicode from a |
|
|
256 | regular xterm. |
|
|
257 | .PP |
|
|
258 | Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script |
|
|
259 | snippets: |
|
|
260 | .PP |
|
|
261 | .Vb 12 |
|
|
262 | \& # Bourne/Korn/POSIX family of shells: |
|
|
263 | \& [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know |
|
|
264 | \& if [ ${TERM:-foo} = xterm ]; then |
|
|
265 | \& stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not |
|
|
266 | \& echo -n '^[Z' |
|
|
267 | \& read term_id |
|
|
268 | \& stty icanon echo |
|
|
269 | \& if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then |
|
|
270 | \& echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string |
|
|
271 | \& read DISPLAY # set it in our local shell |
|
|
272 | \& fi |
|
|
273 | \& fi |
|
|
274 | .Ve |
|
|
275 | .PP |
|
|
276 | \fIHow do I compile the manual pages on my own?\fR |
|
|
277 | .IX Subsection "How do I compile the manual pages on my own?" |
|
|
278 | .PP |
|
|
279 | You need to have a recent version of perl installed as \fI/usr/bin/perl\fR, |
|
|
280 | one that comes with \fIpod2man\fR, \fIpod2text\fR and \fIpod2html\fR. Then go to |
|
|
281 | the doc subdirectory and enter \f(CW\*(C`make alldoc\*(C'\fR. |
|
|
282 | .PP |
161 | .IP "Isn't rxvt supposed to be small? Don't all those features bloat?" 4 |
283 | \fIIsn't rxvt-unicode supposed to be small? Don't all those features bloat?\fR |
162 | .IX Item "Isn't rxvt supposed to be small? Don't all those features bloat?" |
284 | .IX Subsection "Isn't rxvt-unicode supposed to be small? Don't all those features bloat?" |
|
|
285 | .PP |
163 | I often get asked about this, and I think, no, they didn't cause extra |
286 | I often get asked about this, and I think, no, they didn't cause extra |
164 | bloat. If you compare a minimal rxvt and a minimal urxvt, you can see |
287 | bloat. If you compare a minimal rxvt and a minimal urxvt, you can see |
165 | that the urxvt binary is larger (due to some encoding tables always being |
288 | that the urxvt binary is larger (due to some encoding tables always being |
166 | compiled in), but it actually uses less memory (\s-1RSS\s0) after startup. Even |
289 | compiled in), but it actually uses less memory (\s-1RSS\s0) after startup. Even |
167 | with \f(CW\*(C`\-\-disable\-everything\*(C'\fR, this comparison is a bit unfair, as many |
290 | with \f(CW\*(C`\-\-disable\-everything\*(C'\fR, this comparison is a bit unfair, as many |
168 | features unique to urxvt (locale, encoding conversion, iso14755 etc.) are |
291 | features unique to urxvt (locale, encoding conversion, iso14755 etc.) are |
169 | already in use in this mode. |
292 | already in use in this mode. |
170 | .Sp |
293 | .PP |
171 | .Vb 3 |
294 | .Vb 3 |
172 | \& text data bss drs rss filename |
295 | \& text data bss drs rss filename |
173 | \& 98398 1664 24 15695 1824 rxvt --disable-everything |
296 | \& 98398 1664 24 15695 1824 rxvt --disable-everything |
174 | \& 188985 9048 66616 18222 1788 urxvt --disable-everything |
297 | \& 188985 9048 66616 18222 1788 urxvt --disable-everything |
175 | .Ve |
298 | .Ve |
176 | .Sp |
299 | .PP |
177 | When you \f(CW\*(C`\-\-enable\-everything\*(C'\fR (which _is_ unfair, as this involves xft |
300 | When you \f(CW\*(C`\-\-enable\-everything\*(C'\fR (which \fIis\fR unfair, as this involves xft |
178 | and full locale/XIM support which are quite bloaty inside libX11 and my |
301 | and full locale/XIM support which are quite bloaty inside libX11 and my |
179 | libc), the two diverge, but not unreasnobaly so. |
302 | libc), the two diverge, but not unreasnobaly so. |
180 | .Sp |
303 | .PP |
181 | .Vb 3 |
304 | .Vb 3 |
182 | \& text data bss drs rss filename |
305 | \& text data bss drs rss filename |
183 | \& 163431 2152 24 20123 2060 rxvt --enable-everything |
306 | \& 163431 2152 24 20123 2060 rxvt --enable-everything |
184 | \& 1035683 49680 66648 29096 3680 urxvt --enable-everything |
307 | \& 1035683 49680 66648 29096 3680 urxvt --enable-everything |
185 | .Ve |
308 | .Ve |
186 | .Sp |
309 | .PP |
187 | The very large size of the text section is explained by the east-asian |
310 | The very large size of the text section is explained by the east-asian |
188 | encoding tables, which, if unused, take up disk space but nothing else |
311 | encoding tables, which, if unused, take up disk space but nothing else |
189 | and can be compiled out unless you rely on X11 core fonts that use those |
312 | and can be compiled out unless you rely on X11 core fonts that use those |
190 | encodings. The \s-1BSS\s0 size comes from the 64k emergency buffer that my c++ |
313 | encodings. The \s-1BSS\s0 size comes from the 64k emergency buffer that my c++ |
191 | compiler allocates (but of course doesn't use unless you are out of |
314 | compiler allocates (but of course doesn't use unless you are out of |
192 | memory). Also, using an xft font instead of a core font immediately adds a |
315 | memory). Also, using an xft font instead of a core font immediately adds a |
193 | few megabytes of \s-1RSS\s0. Xft indeed is responsible for a lot of \s-1RSS\s0 even when |
316 | few megabytes of \s-1RSS\s0. Xft indeed is responsible for a lot of \s-1RSS\s0 even when |
194 | not used. |
317 | not used. |
195 | .Sp |
318 | .PP |
196 | Of course, due to every character using two or four bytes instead of one, |
319 | Of course, due to every character using two or four bytes instead of one, |
197 | a large scrollback buffer will ultimately make rxvt-unicode use more |
320 | a large scrollback buffer will ultimately make rxvt-unicode use more |
198 | memory. |
321 | memory. |
199 | .Sp |
322 | .PP |
200 | Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this |
323 | Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k), this |
201 | still fares rather well. And compared to some monsters like gnome-terminal |
324 | still fares rather well. And compared to some monsters like gnome-terminal |
202 | (21152k + extra 4204k in separate processes) or konsole (22200k + extra |
325 | (21152k + extra 4204k in separate processes) or konsole (22200k + extra |
203 | 43180k in daemons that stay around after exit, plus half aminute of |
326 | 43180k in daemons that stay around after exit, plus half a minute of |
204 | startup time, including the hundreds of warnings it spits out), it fares |
327 | startup time, including the hundreds of warnings it spits out), it fares |
205 | extremely well *g*. |
328 | extremely well *g*. |
|
|
329 | .PP |
206 | .IP "Why \*(C+, isn't that unportable/bloated/uncool?" 4 |
330 | \fIWhy \*(C+, isn't that unportable/bloated/uncool?\fR |
207 | .IX Item "Why , isn't that unportable/bloated/uncool?" |
331 | .IX Subsection "Why , isn't that unportable/bloated/uncool?" |
|
|
332 | .PP |
208 | Is this a question? :) It comes up very often. The simple answer is: I had |
333 | Is this a question? :) It comes up very often. The simple answer is: I had |
209 | to write it, and \*(C+ allowed me to write and maintain it in a fraction |
334 | to write it, and \*(C+ allowed me to write and maintain it in a fraction |
210 | of the time and effort (which is a scarce resource for me). Put even |
335 | of the time and effort (which is a scarce resource for me). Put even |
211 | shorter: It simply wouldn't exist without \*(C+. |
336 | shorter: It simply wouldn't exist without \*(C+. |
212 | .Sp |
337 | .PP |
213 | My personal stance on this is that \*(C+ is less portable than C, but in |
338 | My personal stance on this is that \*(C+ is less portable than C, but in |
214 | the case of rxvt-unicode this hardly matters, as its portability limits |
339 | the case of rxvt-unicode this hardly matters, as its portability limits |
215 | are defined by things like X11, pseudo terminals, locale support and unix |
340 | are defined by things like X11, pseudo terminals, locale support and unix |
216 | domain sockets, which are all less portable than \*(C+ itself. |
341 | domain sockets, which are all less portable than \*(C+ itself. |
217 | .Sp |
342 | .PP |
218 | Regarding the bloat, see the above question: It's easy to write programs |
343 | Regarding the bloat, see the above question: It's easy to write programs |
219 | in C that use gobs of memory, an certainly possible to write programs in |
344 | in C that use gobs of memory, an certainly possible to write programs in |
220 | \&\*(C+ that don't. \*(C+ also often comes with large libraries, but this is |
345 | \&\*(C+ that don't. \*(C+ also often comes with large libraries, but this is |
221 | not necessarily the case with \s-1GCC\s0. Here is what rxvt links against on my |
346 | not necessarily the case with \s-1GCC\s0. Here is what rxvt links against on my |
222 | system with a minimal config: |
347 | system with a minimal config: |
223 | .Sp |
348 | .PP |
224 | .Vb 4 |
349 | .Vb 4 |
225 | \& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
350 | \& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
226 | \& libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000) |
351 | \& libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000) |
227 | \& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000) |
352 | \& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000) |
228 | \& /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
353 | \& /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
229 | .Ve |
354 | .Ve |
230 | .Sp |
355 | .PP |
231 | And here is rxvt\-unicode: |
356 | And here is rxvt\-unicode: |
232 | .Sp |
357 | .PP |
233 | .Vb 5 |
358 | .Vb 5 |
234 | \& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
359 | \& libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) |
235 | \& libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000) |
360 | \& libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000) |
236 | \& libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000) |
361 | \& libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000) |
237 | \& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000) |
362 | \& libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000) |
238 | \& /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
363 | \& /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) |
239 | .Ve |
364 | .Ve |
240 | .Sp |
365 | .PP |
241 | No large bloated libraries (of course, none were linked in statically), |
366 | No large bloated libraries (of course, none were linked in statically), |
242 | except maybe libX11 :) |
367 | except maybe libX11 :) |
243 | .IP "Does it support tabs, can I have a tabbed rxvt\-unicode?" 4 |
368 | .Sh "Rendering, Font & Look and Feel Issues" |
244 | .IX Item "Does it support tabs, can I have a tabbed rxvt-unicode?" |
369 | .IX Subsection "Rendering, Font & Look and Feel Issues" |
245 | rxvt-unicode does not directly support tabs. It will work fine with |
370 | \fII can't get transparency working, what am I doing wrong?\fR |
246 | tabbing functionality of many window managers or similar tabbing programs, |
371 | .IX Subsection "I can't get transparency working, what am I doing wrong?" |
247 | and its embedding-features allow it to be embedded into other programs, |
372 | .PP |
248 | as witnessed by \fIdoc/rxvt\-tabbed\fR or the upcoming \f(CW\*(C`Gtk2::URxvt\*(C'\fR perl |
373 | First of all, transparency isn't officially supported in rxvt\-unicode, so |
249 | module, which features a tabbed urxvt (murxvt) terminal as an example |
374 | you are mostly on your own. Do not bug the author about it (but you may |
250 | embedding application. |
375 | bug everybody else). Also, if you can't get it working consider it a rite |
251 | .IP "How do I know which rxvt-unicode version I'm using?" 4 |
376 | of passage: ... and you failed. |
252 | .IX Item "How do I know which rxvt-unicode version I'm using?" |
377 | .PP |
253 | The version number is displayed with the usage (\-h). Also the escape |
378 | Here are four ways to get transparency. \fBDo\fR read the manpage and option |
254 | sequence \f(CW\*(C`ESC [ 8 n\*(C'\fR sets the window title to the version number. When |
379 | descriptions for the programs mentioned and rxvt\-unicode. Really, do it! |
255 | using the @@RXVT_NAME@@c client, the version displayed is that of the |
380 | .PP |
256 | daemon. |
381 | 1. Use inheritPixmap: |
257 | .IP "I am using Debian GNU/Linux and have a problem..." 4 |
382 | .PP |
258 | .IX Item "I am using Debian GNU/Linux and have a problem..." |
383 | .Vb 2 |
259 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
384 | \& Esetroot wallpaper.jpg |
260 | patches that considerably change the behaviour of rxvt\-unicode. Before |
385 | \& @@URXVT_NAME@@ -ip -tint red -sh 40 |
261 | reporting a bug to the original rxvt-unicode author please download and |
386 | .Ve |
262 | install the genuine version (<http://software.schmorp.de#rxvt\-unicode>) |
387 | .PP |
263 | and try to reproduce the problem. If you cannot, chances are that the |
388 | That works. If you think it doesn't, you lack transparency and tinting |
264 | problems are specific to Debian GNU/Linux, in which case it should be |
389 | support, or you are unable to read. |
265 | reported via the Debian Bug Tracking System (use \f(CW\*(C`reportbug\*(C'\fR to report |
390 | .PP |
266 | the bug). |
391 | 2. Use a simple pixmap and emulate pseudo\-transparency. This enables you |
267 | .Sp |
392 | to use effects other than tinting and shading: Just shade/tint/whatever |
268 | For other problems that also affect the Debian package, you can and |
393 | your picture with gimp or any other tool: |
269 | probably should use the Debian \s-1BTS\s0, too, because, after all, it's also a |
394 | .PP |
270 | bug in the Debian version and it serves as a reminder for other users that |
395 | .Vb 2 |
271 | might encounter the same issue. |
396 | \& convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm |
|
|
397 | \& @@URXVT_NAME@@ -pixmap background.xpm -pe automove-background |
|
|
398 | .Ve |
|
|
399 | .PP |
|
|
400 | That works. If you think it doesn't, you lack \s-1XPM\s0 and Perl support, or you |
|
|
401 | are unable to read. |
|
|
402 | .PP |
|
|
403 | 3. Use an \s-1ARGB\s0 visual: |
|
|
404 | .PP |
|
|
405 | .Vb 1 |
|
|
406 | \& @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc |
|
|
407 | .Ve |
|
|
408 | .PP |
|
|
409 | This requires \s-1XFT\s0 support, and the support of your X\-server. If that |
|
|
410 | doesn't work for you, blame Xorg and Keith Packard. \s-1ARGB\s0 visuals aren't |
|
|
411 | there yet, no matter what they claim. Rxvt-Unicode contains the neccessary |
|
|
412 | bugfixes and workarounds for Xft and Xlib to make it work, but that |
|
|
413 | doesn't mean that your \s-1WM\s0 has the required kludges in place. |
|
|
414 | .PP |
|
|
415 | 4. Use xcompmgr and let it do the job: |
|
|
416 | .PP |
|
|
417 | .Vb 2 |
|
|
418 | \& xprop -frame -f _NET_WM_WINDOW_OPACITY 32c \e |
|
|
419 | \& -set _NET_WM_WINDOW_OPACITY 0xc0000000 |
|
|
420 | .Ve |
|
|
421 | .PP |
|
|
422 | Then click on a window you want to make transparent. Replace \f(CW0xc0000000\fR |
|
|
423 | by other values to change the degree of opacity. If it doesn't work and |
|
|
424 | your server crashes, you got to keep the pieces. |
|
|
425 | .PP |
|
|
426 | \fIWhy does rxvt-unicode sometimes leave pixel droppings?\fR |
|
|
427 | .IX Subsection "Why does rxvt-unicode sometimes leave pixel droppings?" |
|
|
428 | .PP |
|
|
429 | Most fonts were not designed for terminal use, which means that character |
|
|
430 | size varies a lot. A font that is otherwise fine for terminal use might |
|
|
431 | contain some characters that are simply too wide. Rxvt-unicode will avoid |
|
|
432 | these characters. For characters that are just \*(L"a bit\*(R" too wide a special |
|
|
433 | \&\*(L"careful\*(R" rendering mode is used that redraws adjacent characters. |
|
|
434 | .PP |
|
|
435 | All of this requires that fonts do not lie about character sizes, |
|
|
436 | however: Xft fonts often draw glyphs larger than their acclaimed bounding |
|
|
437 | box, and rxvt-unicode has no way of detecting this (the correct way is to |
|
|
438 | ask for the character bounding box, which unfortunately is wrong in these |
|
|
439 | cases). |
|
|
440 | .PP |
|
|
441 | It's not clear (to me at least), wether this is a bug in Xft, freetype, |
|
|
442 | or the respective font. If you encounter this problem you might try using |
|
|
443 | the \f(CW\*(C`\-lsp\*(C'\fR option to give the font more height. If that doesn't work, you |
|
|
444 | might be forced to use a different font. |
|
|
445 | .PP |
|
|
446 | All of this is not a problem when using X11 core fonts, as their bounding |
|
|
447 | box data is correct. |
|
|
448 | .PP |
|
|
449 | \fIHow can I keep rxvt-unicode from using reverse video so much?\fR |
|
|
450 | .IX Subsection "How can I keep rxvt-unicode from using reverse video so much?" |
|
|
451 | .PP |
|
|
452 | First of all, make sure you are running with the right terminal settings |
|
|
453 | (\f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR), which will get rid of most of these effects. Then |
|
|
454 | make sure you have specified colours for italic and bold, as otherwise |
|
|
455 | rxvt-unicode might use reverse video to simulate the effect: |
|
|
456 | .PP |
|
|
457 | .Vb 2 |
|
|
458 | \& URxvt.colorBD: white |
|
|
459 | \& URxvt.colorIT: green |
|
|
460 | .Ve |
|
|
461 | .PP |
|
|
462 | \fISome programs assume totally weird colours (red instead of blue), how can I fix that?\fR |
|
|
463 | .IX Subsection "Some programs assume totally weird colours (red instead of blue), how can I fix that?" |
|
|
464 | .PP |
|
|
465 | For some unexplainable reason, some rare programs assume a very weird |
|
|
466 | colour palette when confronted with a terminal with more than the standard |
|
|
467 | 8 colours (rxvt\-unicode supports 88). The right fix is, of course, to fix |
|
|
468 | these programs not to assume non-ISO colours without very good reasons. |
|
|
469 | .PP |
|
|
470 | In the meantime, you can either edit your \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo |
|
|
471 | definition to only claim 8 colour support or use \f(CW\*(C`TERM=rxvt\*(C'\fR, which will |
|
|
472 | fix colours but keep you from using other rxvt-unicode features. |
|
|
473 | .PP |
|
|
474 | \fICan I switch the fonts at runtime?\fR |
|
|
475 | .IX Subsection "Can I switch the fonts at runtime?" |
|
|
476 | .PP |
|
|
477 | Yes, using an escape sequence. Try something like this, which has the same |
|
|
478 | effect as using the \f(CW\*(C`\-fn\*(C'\fR switch, and takes effect immediately: |
|
|
479 | .PP |
|
|
480 | .Vb 1 |
|
|
481 | \& printf '\ee]50;%s\e007' "9x15bold,xft:Kochi Gothic" |
|
|
482 | .Ve |
|
|
483 | .PP |
|
|
484 | This is useful if you e.g. work primarily with japanese (and prefer a |
|
|
485 | japanese font), but you have to switch to chinese temporarily, where |
|
|
486 | japanese fonts would only be in your way. |
|
|
487 | .PP |
|
|
488 | You can think of this as a kind of manual \s-1ISO\-2022\s0 switching. |
|
|
489 | .PP |
|
|
490 | \fIWhy do italic characters look as if clipped?\fR |
|
|
491 | .IX Subsection "Why do italic characters look as if clipped?" |
|
|
492 | .PP |
|
|
493 | Many fonts have difficulties with italic characters and hinting. For |
|
|
494 | example, the otherwise very nicely hinted font \f(CW\*(C`xft:Bitstream Vera Sans |
|
|
495 | Mono\*(C'\fR completely fails in it's italic face. A workaround might be to |
|
|
496 | enable freetype autohinting, i.e. like this: |
|
|
497 | .PP |
|
|
498 | .Vb 2 |
|
|
499 | \& URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true |
|
|
500 | \& URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true |
|
|
501 | .Ve |
|
|
502 | .PP |
|
|
503 | \fICan I speed up Xft rendering somehow?\fR |
|
|
504 | .IX Subsection "Can I speed up Xft rendering somehow?" |
|
|
505 | .PP |
|
|
506 | Yes, the most obvious way to speed it up is to avoid Xft entirely, as |
|
|
507 | it is simply slow. If you still want Xft fonts you might try to disable |
|
|
508 | antialiasing (by appending \f(CW\*(C`:antialias=false\*(C'\fR), which saves lots of |
|
|
509 | memory and also speeds up rendering considerably. |
|
|
510 | .PP |
|
|
511 | \fIRxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?\fR |
|
|
512 | .IX Subsection "Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?" |
|
|
513 | .PP |
|
|
514 | Rxvt-unicode will use whatever you specify as a font. If it needs to |
|
|
515 | fall back to it's default font search list it will prefer X11 core |
|
|
516 | fonts, because they are small and fast, and then use Xft fonts. It has |
|
|
517 | antialiasing disabled for most of them, because the author thinks they |
|
|
518 | look best that way. |
|
|
519 | .PP |
|
|
520 | If you want antialiasing, you have to specify the fonts manually. |
|
|
521 | .PP |
|
|
522 | \fIWhat's with this bold/blink stuff?\fR |
|
|
523 | .IX Subsection "What's with this bold/blink stuff?" |
|
|
524 | .PP |
|
|
525 | If no bold colour is set via \f(CW\*(C`colorBD:\*(C'\fR, bold will invert text using the |
|
|
526 | standard foreground colour. |
|
|
527 | .PP |
|
|
528 | For the standard background colour, blinking will actually make the |
|
|
529 | text blink when compiled with \f(CW\*(C`\-\-enable\-blinking\*(C'\fR. with standard |
|
|
530 | colours. Without \f(CW\*(C`\-\-enable\-blinking\*(C'\fR, the blink attribute will be |
|
|
531 | ignored. |
|
|
532 | .PP |
|
|
533 | On \s-1ANSI\s0 colours, bold/blink attributes are used to set high-intensity |
|
|
534 | foreground/background colors. |
|
|
535 | .PP |
|
|
536 | color0\-7 are the low-intensity colors. |
|
|
537 | .PP |
|
|
538 | color8\-15 are the corresponding high-intensity colors. |
|
|
539 | .PP |
|
|
540 | \fII don't like the screen colors. How do I change them?\fR |
|
|
541 | .IX Subsection "I don't like the screen colors. How do I change them?" |
|
|
542 | .PP |
|
|
543 | You can change the screen colors at run-time using \fI~/.Xdefaults\fR |
|
|
544 | resources (or as long\-options). |
|
|
545 | .PP |
|
|
546 | Here are values that are supposed to resemble a \s-1VGA\s0 screen, |
|
|
547 | including the murky brown that passes for low-intensity yellow: |
|
|
548 | .PP |
|
|
549 | .Vb 8 |
|
|
550 | \& URxvt.color0: #000000 |
|
|
551 | \& URxvt.color1: #A80000 |
|
|
552 | \& URxvt.color2: #00A800 |
|
|
553 | \& URxvt.color3: #A8A800 |
|
|
554 | \& URxvt.color4: #0000A8 |
|
|
555 | \& URxvt.color5: #A800A8 |
|
|
556 | \& URxvt.color6: #00A8A8 |
|
|
557 | \& URxvt.color7: #A8A8A8 |
|
|
558 | .Ve |
|
|
559 | .PP |
|
|
560 | .Vb 8 |
|
|
561 | \& URxvt.color8: #000054 |
|
|
562 | \& URxvt.color9: #FF0054 |
|
|
563 | \& URxvt.color10: #00FF54 |
|
|
564 | \& URxvt.color11: #FFFF54 |
|
|
565 | \& URxvt.color12: #0000FF |
|
|
566 | \& URxvt.color13: #FF00FF |
|
|
567 | \& URxvt.color14: #00FFFF |
|
|
568 | \& URxvt.color15: #FFFFFF |
|
|
569 | .Ve |
|
|
570 | .PP |
|
|
571 | And here is a more complete set of non-standard colors. |
|
|
572 | .PP |
|
|
573 | .Vb 18 |
|
|
574 | \& URxvt.cursorColor: #dc74d1 |
|
|
575 | \& URxvt.pointerColor: #dc74d1 |
|
|
576 | \& URxvt.background: #0e0e0e |
|
|
577 | \& URxvt.foreground: #4ad5e1 |
|
|
578 | \& URxvt.color0: #000000 |
|
|
579 | \& URxvt.color8: #8b8f93 |
|
|
580 | \& URxvt.color1: #dc74d1 |
|
|
581 | \& URxvt.color9: #dc74d1 |
|
|
582 | \& URxvt.color2: #0eb8c7 |
|
|
583 | \& URxvt.color10: #0eb8c7 |
|
|
584 | \& URxvt.color3: #dfe37e |
|
|
585 | \& URxvt.color11: #dfe37e |
|
|
586 | \& URxvt.color5: #9e88f0 |
|
|
587 | \& URxvt.color13: #9e88f0 |
|
|
588 | \& URxvt.color6: #73f7ff |
|
|
589 | \& URxvt.color14: #73f7ff |
|
|
590 | \& URxvt.color7: #e1dddd |
|
|
591 | \& URxvt.color15: #e1dddd |
|
|
592 | .Ve |
|
|
593 | .PP |
|
|
594 | They have been described (not by me) as \*(L"pretty girly\*(R". |
|
|
595 | .PP |
|
|
596 | \fIWhy do some characters look so much different than others?\fR |
|
|
597 | .IX Subsection "Why do some characters look so much different than others?" |
|
|
598 | .PP |
|
|
599 | See next entry. |
|
|
600 | .PP |
|
|
601 | \fIHow does rxvt-unicode choose fonts?\fR |
|
|
602 | .IX Subsection "How does rxvt-unicode choose fonts?" |
|
|
603 | .PP |
|
|
604 | Most fonts do not contain the full range of Unicode, which is |
|
|
605 | fine. Chances are that the font you (or the admin/package maintainer of |
|
|
606 | your system/os) have specified does not cover all the characters you want |
|
|
607 | to display. |
|
|
608 | .PP |
|
|
609 | \&\fBrxvt-unicode\fR makes a best-effort try at finding a replacement |
|
|
610 | font. Often the result is fine, but sometimes the chosen font looks |
|
|
611 | bad/ugly/wrong. Some fonts have totally strange characters that don't |
|
|
612 | resemble the correct glyph at all, and rxvt-unicode lacks the artificial |
|
|
613 | intelligence to detect that a specific glyph is wrong: it has to believe |
|
|
614 | the font that the characters it claims to contain indeed look correct. |
|
|
615 | .PP |
|
|
616 | In that case, select a font of your taste and add it to the font list, |
|
|
617 | e.g.: |
|
|
618 | .PP |
|
|
619 | .Vb 1 |
|
|
620 | \& @@URXVT_NAME@@ -fn basefont,font2,font3... |
|
|
621 | .Ve |
|
|
622 | .PP |
|
|
623 | When rxvt-unicode sees a character, it will first look at the base |
|
|
624 | font. If the base font does not contain the character, it will go to the |
|
|
625 | next font, and so on. Specifying your own fonts will also speed up this |
|
|
626 | search and use less resources within rxvt-unicode and the X\-server. |
|
|
627 | .PP |
|
|
628 | The only limitation is that none of the fonts may be larger than the base |
|
|
629 | font, as the base font defines the terminal character cell size, which |
|
|
630 | must be the same due to the way terminals work. |
|
|
631 | .PP |
|
|
632 | \fIWhy do some chinese characters look so different than others?\fR |
|
|
633 | .IX Subsection "Why do some chinese characters look so different than others?" |
|
|
634 | .PP |
|
|
635 | This is because there is a difference between script and language \*(-- |
|
|
636 | rxvt-unicode does not know which language the text that is output is, |
|
|
637 | as it only knows the unicode character codes. If rxvt-unicode first |
|
|
638 | sees a japanese/chinese character, it might choose a japanese font for |
|
|
639 | display. Subsequent japanese characters will use that font. Now, many |
|
|
640 | chinese characters aren't represented in japanese fonts, so when the first |
|
|
641 | non-japanese character comes up, rxvt-unicode will look for a chinese font |
|
|
642 | \&\*(-- unfortunately at this point, it will still use the japanese font for |
|
|
643 | chinese characters that are also in the japanese font. |
|
|
644 | .PP |
|
|
645 | The workaround is easy: just tag a chinese font at the end of your font |
|
|
646 | list (see the previous question). The key is to view the font list as |
|
|
647 | a preference list: If you expect more japanese, list a japanese font |
|
|
648 | first. If you expect more chinese, put a chinese font first. |
|
|
649 | .PP |
|
|
650 | In the future it might be possible to switch language preferences at |
|
|
651 | runtime (the internal data structure has no problem with using different |
|
|
652 | fonts for the same character at the same time, but no interface for this |
|
|
653 | has been designed yet). |
|
|
654 | .PP |
|
|
655 | Until then, you might get away with switching fonts at runtime (see \*(L"Can I switch the fonts at runtime?\*(R" later in this document). |
|
|
656 | .Sh "Keyboard, Mouse & User Interaction" |
|
|
657 | .IX Subsection "Keyboard, Mouse & User Interaction" |
|
|
658 | \fIThe new selection selects pieces that are too big, how can I select single words?\fR |
|
|
659 | .IX Subsection "The new selection selects pieces that are too big, how can I select single words?" |
|
|
660 | .PP |
|
|
661 | If you want to select e.g. alphanumeric words, you can use the following |
|
|
662 | setting: |
|
|
663 | .PP |
|
|
664 | .Vb 1 |
|
|
665 | \& URxvt.selection.pattern-0: ([[:word:]]+) |
|
|
666 | .Ve |
|
|
667 | .PP |
|
|
668 | If you click more than twice, the selection will be extended |
|
|
669 | more and more. |
|
|
670 | .PP |
|
|
671 | To get a selection that is very similar to the old code, try this pattern: |
|
|
672 | .PP |
|
|
673 | .Vb 1 |
|
|
674 | \& URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\e\e\e\e]^`{|})]+) |
|
|
675 | .Ve |
|
|
676 | .PP |
|
|
677 | Please also note that the \fILeftClick Shift-LeftClik\fR combination also |
|
|
678 | selects words like the old code. |
|
|
679 | .PP |
|
|
680 | \fII don't like the new selection/popups/hotkeys/perl, how do I change/disable it?\fR |
|
|
681 | .IX Subsection "I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?" |
|
|
682 | .PP |
|
|
683 | You can disable the perl extension completely by setting the |
|
|
684 | \&\fBperl-ext-common\fR resource to the empty string, which also keeps |
|
|
685 | rxvt-unicode from initialising perl, saving memory. |
|
|
686 | .PP |
|
|
687 | If you only want to disable specific features, you first have to |
|
|
688 | identify which perl extension is responsible. For this, read the section |
|
|
689 | \&\fB\s-1PREPACKAGED\s0 \s-1EXTENSIONS\s0\fR in the @@URXVT_NAME@@\fIperl\fR\|(3) manpage. For |
|
|
690 | example, to disable the \fBselection-popup\fR and \fBoption-popup\fR, specify |
|
|
691 | this \fBperl-ext-common\fR resource: |
|
|
692 | .PP |
|
|
693 | .Vb 1 |
|
|
694 | \& URxvt.perl-ext-common: default,-selection-popup,-option-popup |
|
|
695 | .Ve |
|
|
696 | .PP |
|
|
697 | This will keep the default extensions, but disable the two popup |
|
|
698 | extensions. Some extensions can also be configured, for example, |
|
|
699 | scrollback search mode is triggered by \fBM\-s\fR. You can move it to any |
|
|
700 | other combination either by setting the \fBsearchable-scrollback\fR resource: |
|
|
701 | .PP |
|
|
702 | .Vb 1 |
|
|
703 | \& URxvt.searchable-scrollback: CM-s |
|
|
704 | .Ve |
|
|
705 | .PP |
|
|
706 | \fIThe cursor moves when selecting text in the current input line, how do I switch this off?\fR |
|
|
707 | .IX Subsection "The cursor moves when selecting text in the current input line, how do I switch this off?" |
|
|
708 | .PP |
|
|
709 | See next entry. |
|
|
710 | .PP |
|
|
711 | \fIDuring rlogin/ssh/telnet/etc. sessions, clicking near the cursor outputs strange escape sequences, how do I fix this?\fR |
|
|
712 | .IX Subsection "During rlogin/ssh/telnet/etc. sessions, clicking near the cursor outputs strange escape sequences, how do I fix this?" |
|
|
713 | .PP |
|
|
714 | These are caused by the \f(CW\*(C`readline\*(C'\fR perl extension. Under normal |
|
|
715 | circumstances, it will move your cursor around when you click into the |
|
|
716 | line that contains it. It tries hard not to do this at the wrong moment, |
|
|
717 | but when running a program that doesn't parse cursor movements or in some |
|
|
718 | cases during rlogin sessions, it fails to detect this properly. |
|
|
719 | .PP |
|
|
720 | You can permamently switch this feature off by disabling the \f(CW\*(C`readline\*(C'\fR |
|
|
721 | extension: |
|
|
722 | .PP |
|
|
723 | .Vb 1 |
|
|
724 | \& URxvt.perl-ext-common: default,-readline |
|
|
725 | .Ve |
|
|
726 | .PP |
|
|
727 | \fIMy numerical keypad acts weird and generates differing output?\fR |
|
|
728 | .IX Subsection "My numerical keypad acts weird and generates differing output?" |
|
|
729 | .PP |
|
|
730 | Some Debian GNUL/Linux users seem to have this problem, although no |
|
|
731 | specific details were reported so far. It is possible that this is caused |
|
|
732 | by the wrong \f(CW\*(C`TERM\*(C'\fR setting, although the details of wether and how |
|
|
733 | this can happen are unknown, as \f(CW\*(C`TERM=rxvt\*(C'\fR should offer a compatible |
|
|
734 | keymap. See the answer to the previous question, and please report if that |
|
|
735 | helped. |
|
|
736 | .PP |
|
|
737 | \fIMy Compose (Multi_key) key is no longer working.\fR |
|
|
738 | .IX Subsection "My Compose (Multi_key) key is no longer working." |
|
|
739 | .PP |
|
|
740 | The most common causes for this are that either your locale is not set |
|
|
741 | correctly, or you specified a \fBpreeditStyle\fR that is not supported by |
|
|
742 | your input method. For example, if you specified \fBOverTheSpot\fR and |
|
|
743 | your input method (e.g. the default input method handling Compose keys) |
|
|
744 | does not support this (for instance because it is not visual), then |
|
|
745 | rxvt-unicode will continue without an input method. |
|
|
746 | .PP |
|
|
747 | In this case either do not specify a \fBpreeditStyle\fR or specify more than |
|
|
748 | one pre-edit style, such as \fBOverTheSpot,Root,None\fR. |
|
|
749 | .PP |
|
|
750 | \fII cannot type \f(CI\*(C`Ctrl\-Shift\-2\*(C'\fI to get an \s-1ASCII\s0 \s-1NUL\s0 character due to \s-1ISO\s0 14755\fR |
|
|
751 | .IX Subsection "I cannot type Ctrl-Shift-2 to get an ASCII NUL character due to ISO 14755" |
|
|
752 | .PP |
|
|
753 | Either try \f(CW\*(C`Ctrl\-2\*(C'\fR alone (it often is mapped to \s-1ASCII\s0 \s-1NUL\s0 even on |
|
|
754 | international keyboards) or simply use \s-1ISO\s0 14755 support to your |
|
|
755 | advantage, typing <Ctrl\-Shift\-0> to get a \s-1ASCII\s0 \s-1NUL\s0. This works for other |
|
|
756 | codes, too, such as \f(CW\*(C`Ctrl\-Shift\-1\-d\*(C'\fR to type the default telnet escape |
|
|
757 | character and so on. |
|
|
758 | .PP |
|
|
759 | \fIMouse cut/paste suddenly no longer works.\fR |
|
|
760 | .IX Subsection "Mouse cut/paste suddenly no longer works." |
|
|
761 | .PP |
|
|
762 | Make sure that mouse reporting is actually turned off since killing |
|
|
763 | some editors prematurely may leave the mouse in mouse report mode. I've |
|
|
764 | heard that tcsh may use mouse reporting unless it otherwise specified. A |
|
|
765 | quick check is to see if cut/paste works when the Alt or Shift keys are |
|
|
766 | depressed. |
|
|
767 | .PP |
|
|
768 | \fIWhat's with the strange Backspace/Delete key behaviour?\fR |
|
|
769 | .IX Subsection "What's with the strange Backspace/Delete key behaviour?" |
|
|
770 | .PP |
|
|
771 | Assuming that the physical Backspace key corresponds to the |
|
|
772 | BackSpace keysym (not likely for Linux ... see the following |
|
|
773 | question) there are two standard values that can be used for |
|
|
774 | Backspace: \f(CW\*(C`^H\*(C'\fR and \f(CW\*(C`^?\*(C'\fR. |
|
|
775 | .PP |
|
|
776 | Historically, either value is correct, but rxvt-unicode adopts the debian |
|
|
777 | policy of using \f(CW\*(C`^?\*(C'\fR when unsure, because it's the one only only correct |
|
|
778 | choice :). |
|
|
779 | .PP |
|
|
780 | Rxvt-unicode tries to inherit the current stty settings and uses the value |
|
|
781 | of `erase' to guess the value for backspace. If rxvt-unicode wasn't |
|
|
782 | started from a terminal (say, from a menu or by remote shell), then the |
|
|
783 | system value of `erase', which corresponds to \s-1CERASE\s0 in <termios.h>, will |
|
|
784 | be used (which may not be the same as your stty setting). |
|
|
785 | .PP |
|
|
786 | For starting a new rxvt\-unicode: |
|
|
787 | .PP |
|
|
788 | .Vb 3 |
|
|
789 | \& # use Backspace = ^H |
|
|
790 | \& $ stty erase ^H |
|
|
791 | \& $ @@URXVT_NAME@@ |
|
|
792 | .Ve |
|
|
793 | .PP |
|
|
794 | .Vb 3 |
|
|
795 | \& # use Backspace = ^? |
|
|
796 | \& $ stty erase ^? |
|
|
797 | \& $ @@URXVT_NAME@@ |
|
|
798 | .Ve |
|
|
799 | .PP |
|
|
800 | Toggle with \f(CW\*(C`ESC [ 36 h\*(C'\fR / \f(CW\*(C`ESC [ 36 l\*(C'\fR. |
|
|
801 | .PP |
|
|
802 | For an existing rxvt\-unicode: |
|
|
803 | .PP |
|
|
804 | .Vb 3 |
|
|
805 | \& # use Backspace = ^H |
|
|
806 | \& $ stty erase ^H |
|
|
807 | \& $ echo -n "^[[36h" |
|
|
808 | .Ve |
|
|
809 | .PP |
|
|
810 | .Vb 3 |
|
|
811 | \& # use Backspace = ^? |
|
|
812 | \& $ stty erase ^? |
|
|
813 | \& $ echo -n "^[[36l" |
|
|
814 | .Ve |
|
|
815 | .PP |
|
|
816 | This helps satisfy some of the Backspace discrepancies that occur, but |
|
|
817 | if you use Backspace = \f(CW\*(C`^H\*(C'\fR, make sure that the termcap/terminfo value |
|
|
818 | properly reflects that. |
|
|
819 | .PP |
|
|
820 | The Delete key is a another casualty of the ill-defined Backspace problem. |
|
|
821 | To avoid confusion between the Backspace and Delete keys, the Delete |
|
|
822 | key has been assigned an escape sequence to match the vt100 for Execute |
|
|
823 | (\f(CW\*(C`ESC [ 3 ~\*(C'\fR) and is in the supplied termcap/terminfo. |
|
|
824 | .PP |
|
|
825 | Some other Backspace problems: |
|
|
826 | .PP |
|
|
827 | some editors use termcap/terminfo, |
|
|
828 | some editors (vim I'm told) expect Backspace = ^H, |
|
|
829 | \&\s-1GNU\s0 Emacs (and Emacs-like editors) use ^H for help. |
|
|
830 | .PP |
|
|
831 | Perhaps someday this will all be resolved in a consistent manner. |
|
|
832 | .PP |
|
|
833 | \fII don't like the key\-bindings. How do I change them?\fR |
|
|
834 | .IX Subsection "I don't like the key-bindings. How do I change them?" |
|
|
835 | .PP |
|
|
836 | There are some compile-time selections available via configure. Unless |
|
|
837 | you have run \*(L"configure\*(R" with the \f(CW\*(C`\-\-disable\-resources\*(C'\fR option you can |
|
|
838 | use the `keysym' resource to alter the keystrings associated with keysyms. |
|
|
839 | .PP |
|
|
840 | Here's an example for a URxvt session started using \f(CW\*(C`@@URXVT_NAME@@ \-name URxvt\*(C'\fR |
|
|
841 | .PP |
|
|
842 | .Vb 20 |
|
|
843 | \& URxvt.keysym.Home: \e033[1~ |
|
|
844 | \& URxvt.keysym.End: \e033[4~ |
|
|
845 | \& URxvt.keysym.C-apostrophe: \e033<C-'> |
|
|
846 | \& URxvt.keysym.C-slash: \e033<C-/> |
|
|
847 | \& URxvt.keysym.C-semicolon: \e033<C-;> |
|
|
848 | \& URxvt.keysym.C-grave: \e033<C-`> |
|
|
849 | \& URxvt.keysym.C-comma: \e033<C-,> |
|
|
850 | \& URxvt.keysym.C-period: \e033<C-.> |
|
|
851 | \& URxvt.keysym.C-0x60: \e033<C-`> |
|
|
852 | \& URxvt.keysym.C-Tab: \e033<C-Tab> |
|
|
853 | \& URxvt.keysym.C-Return: \e033<C-Return> |
|
|
854 | \& URxvt.keysym.S-Return: \e033<S-Return> |
|
|
855 | \& URxvt.keysym.S-space: \e033<S-Space> |
|
|
856 | \& URxvt.keysym.M-Up: \e033<M-Up> |
|
|
857 | \& URxvt.keysym.M-Down: \e033<M-Down> |
|
|
858 | \& URxvt.keysym.M-Left: \e033<M-Left> |
|
|
859 | \& URxvt.keysym.M-Right: \e033<M-Right> |
|
|
860 | \& URxvt.keysym.M-C-0: list \e033<M-C- 0123456789 > |
|
|
861 | \& URxvt.keysym.M-C-a: list \e033<M-C- abcdefghijklmnopqrstuvwxyz > |
|
|
862 | \& URxvt.keysym.F12: command:\e033]701;zh_CN.GBK\e007 |
|
|
863 | .Ve |
|
|
864 | .PP |
|
|
865 | See some more examples in the documentation for the \fBkeysym\fR resource. |
|
|
866 | .PP |
|
|
867 | \fII'm using keyboard model \s-1XXX\s0 that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map\fR |
|
|
868 | .IX Subsection "I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map" |
|
|
869 | .PP |
|
|
870 | .Vb 6 |
|
|
871 | \& KP_Insert == Insert |
|
|
872 | \& F22 == Print |
|
|
873 | \& F27 == Home |
|
|
874 | \& F29 == Prior |
|
|
875 | \& F33 == End |
|
|
876 | \& F35 == Next |
|
|
877 | .Ve |
|
|
878 | .PP |
|
|
879 | Rather than have rxvt-unicode try to accommodate all the various possible |
|
|
880 | keyboard mappings, it is better to use `xmodmap' to remap the keys as |
|
|
881 | required for your particular machine. |
|
|
882 | .Sh "Terminal Configuration" |
|
|
883 | .IX Subsection "Terminal Configuration" |
|
|
884 | \fIWhy doesn't rxvt-unicode read my resources?\fR |
|
|
885 | .IX Subsection "Why doesn't rxvt-unicode read my resources?" |
|
|
886 | .PP |
|
|
887 | Well, why, indeed? It does, in a way very similar to other X |
|
|
888 | applications. Most importantly, this means that if you or your \s-1OS\s0 loads |
|
|
889 | resources into the X display (the right way to do it), rxvt-unicode will |
|
|
890 | ignore any resource files in your home directory. It will only read |
|
|
891 | \&\fI$HOME/.Xdefaults\fR when no resources are attached to the display. |
|
|
892 | .PP |
|
|
893 | If you have or use an \fI$HOME/.Xresources\fR file, chances are that |
|
|
894 | resources are loaded into your X\-server. In this case, you have to |
|
|
895 | re-login after every change (or run \fIxrdb \-merge \f(CI$HOME\fI/.Xresources\fR). |
|
|
896 | .PP |
|
|
897 | Also consider the form resources have to use: |
|
|
898 | .PP |
|
|
899 | .Vb 1 |
|
|
900 | \& URxvt.resource: value |
|
|
901 | .Ve |
|
|
902 | .PP |
|
|
903 | If you want to use another form (there are lots of different ways of |
|
|
904 | specifying resources), make sure you understand wether and why it |
|
|
905 | works. If unsure, use the form above. |
|
|
906 | .PP |
272 | .IP "When I log-in to another system it tells me about missing terminfo data?" 4 |
907 | \fIWhen I log-in to another system it tells me about missing terminfo data?\fR |
273 | .IX Item "When I log-in to another system it tells me about missing terminfo data?" |
908 | .IX Subsection "When I log-in to another system it tells me about missing terminfo data?" |
|
|
909 | .PP |
274 | The terminal description used by rxvt-unicode is not as widely available |
910 | The terminal description used by rxvt-unicode is not as widely available |
275 | as that for xterm, or even rxvt (for which the same problem often arises). |
911 | as that for xterm, or even rxvt (for which the same problem often arises). |
276 | .Sp |
912 | .PP |
277 | The correct solution for this problem is to install the terminfo, this can |
913 | The correct solution for this problem is to install the terminfo, this can |
278 | be done like this (with ncurses' infocmp): |
914 | be done like this (with ncurses' infocmp): |
279 | .Sp |
915 | .PP |
280 | .Vb 2 |
916 | .Vb 2 |
281 | \& REMOTE=remotesystem.domain |
917 | \& REMOTE=remotesystem.domain |
282 | \& infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" |
918 | \& infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" |
283 | .Ve |
919 | .Ve |
284 | .Sp |
920 | .PP |
285 | \&... or by installing rxvt-unicode normally on the remote system, |
921 | \&... or by installing rxvt-unicode normally on the remote system, |
286 | .Sp |
922 | .PP |
287 | If you cannot or do not want to do this, then you can simply set |
923 | If you cannot or do not want to do this, then you can simply set |
288 | \&\f(CW\*(C`TERM=rxvt\*(C'\fR or even \f(CW\*(C`TERM=xterm\*(C'\fR, and live with the small number of |
924 | \&\f(CW\*(C`TERM=rxvt\*(C'\fR or even \f(CW\*(C`TERM=xterm\*(C'\fR, and live with the small number of |
289 | problems arising, which includes wrong keymapping, less and different |
925 | problems arising, which includes wrong keymapping, less and different |
290 | colours and some refresh errors in fullscreen applications. It's a nice |
926 | colours and some refresh errors in fullscreen applications. It's a nice |
291 | quick-and-dirty workaround for rare cases, though. |
927 | quick-and-dirty workaround for rare cases, though. |
292 | .Sp |
928 | .PP |
293 | If you always want to do this (and are fine with the consequences) you |
929 | If you always want to do this (and are fine with the consequences) you |
294 | can either recompile rxvt-unicode with the desired \s-1TERM\s0 value or use a |
930 | can either recompile rxvt-unicode with the desired \s-1TERM\s0 value or use a |
295 | resource to set it: |
931 | resource to set it: |
296 | .Sp |
932 | .PP |
297 | .Vb 1 |
933 | .Vb 1 |
298 | \& URxvt.termName: rxvt |
934 | \& URxvt.termName: rxvt |
299 | .Ve |
935 | .Ve |
300 | .Sp |
936 | .PP |
301 | If you don't plan to use \fBrxvt\fR (quite common...) you could also replace |
937 | If you don't plan to use \fBrxvt\fR (quite common...) you could also replace |
302 | the rxvt terminfo file with the rxvt-unicode one. |
938 | the rxvt terminfo file with the rxvt-unicode one and use \f(CW\*(C`TERM=rxvt\*(C'\fR. |
303 | .ie n .IP """tic"" outputs some error when compiling the terminfo entry." 4 |
939 | .PP |
304 | .el .IP "\f(CWtic\fR outputs some error when compiling the terminfo entry." 4 |
940 | \fI\f(CI\*(C`tic\*(C'\fI outputs some error when compiling the terminfo entry.\fR |
305 | .IX Item "tic outputs some error when compiling the terminfo entry." |
941 | .IX Subsection "tic outputs some error when compiling the terminfo entry." |
|
|
942 | .PP |
306 | Most likely it's the empty definition for \f(CW\*(C`enacs=\*(C'\fR. Just replace it by |
943 | Most likely it's the empty definition for \f(CW\*(C`enacs=\*(C'\fR. Just replace it by |
307 | \&\f(CW\*(C`enacs=\eE[0@\*(C'\fR and try again. |
944 | \&\f(CW\*(C`enacs=\eE[0@\*(C'\fR and try again. |
308 | .ie n .IP """bash""'s readline does not work correctly under @@RXVT_NAME@@." 4 |
945 | .PP |
309 | .el .IP "\f(CWbash\fR's readline does not work correctly under @@RXVT_NAME@@." 4 |
946 | \fI\f(CI\*(C`bash\*(C'\fI's readline does not work correctly under @@URXVT_NAME@@.\fR |
310 | .IX Item "bash's readline does not work correctly under @@RXVT_NAME@@." |
947 | .IX Subsection "bash's readline does not work correctly under @@URXVT_NAME@@." |
311 | .PD 0 |
948 | .PP |
|
|
949 | See next entry. |
|
|
950 | .PP |
312 | .IP "I need a termcap file entry." 4 |
951 | \fII need a termcap file entry.\fR |
313 | .IX Item "I need a termcap file entry." |
952 | .IX Subsection "I need a termcap file entry." |
314 | .PD |
953 | .PP |
315 | One reason you might want this is that some distributions or operating |
954 | One reason you might want this is that some distributions or operating |
316 | systems still compile some programs using the long-obsoleted termcap |
955 | systems still compile some programs using the long-obsoleted termcap |
317 | library (Fedora Core's bash is one example) and rely on a termcap entry |
956 | library (Fedora Core's bash is one example) and rely on a termcap entry |
318 | for \f(CW\*(C`rxvt\-unicode\*(C'\fR. |
957 | for \f(CW\*(C`rxvt\-unicode\*(C'\fR. |
319 | .Sp |
958 | .PP |
320 | You could use rxvt's termcap entry with resonable results in many cases. |
959 | You could use rxvt's termcap entry with resonable results in many cases. |
321 | You can also create a termcap entry by using terminfo's infocmp program |
960 | You can also create a termcap entry by using terminfo's infocmp program |
322 | like this: |
961 | like this: |
323 | .Sp |
962 | .PP |
324 | .Vb 1 |
963 | .Vb 1 |
325 | \& infocmp -C rxvt-unicode |
964 | \& infocmp -C rxvt-unicode |
326 | .Ve |
965 | .Ve |
327 | .Sp |
966 | .PP |
328 | Or you could use this termcap entry, generated by the command above: |
967 | Or you could use this termcap entry, generated by the command above: |
329 | .Sp |
968 | .PP |
330 | .Vb 20 |
969 | .Vb 20 |
331 | \& rxvt-unicode|rxvt-unicode terminal (X Window System):\e |
970 | \& rxvt-unicode|rxvt-unicode terminal (X Window System):\e |
332 | \& :am:bw:eo:km:mi:ms:xn:xo:\e |
971 | \& :am:bw:eo:km:mi:ms:xn:xo:\e |
333 | \& :co#80:it#8:li#24:lm#0:\e |
972 | \& :co#80:it#8:li#24:lm#0:\e |
334 | \& :AL=\eE[%dL:DC=\eE[%dP:DL=\eE[%dM:DO=\eE[%dB:IC=\eE[%d@:\e |
973 | \& :AL=\eE[%dL:DC=\eE[%dP:DL=\eE[%dM:DO=\eE[%dB:IC=\eE[%d@:\e |
… | |
… | |
347 | \& :sc=\eE7:se=\eE[27m:sf=^J:so=\eE[7m:sr=\eEM:st=\eEH:ta=^I:\e |
986 | \& :sc=\eE7:se=\eE[27m:sf=^J:so=\eE[7m:sr=\eEM:st=\eEH:ta=^I:\e |
348 | \& :te=\eE[r\eE[?1049l:ti=\eE[?1049h:ue=\eE[24m:up=\eE[A:\e |
987 | \& :te=\eE[r\eE[?1049l:ti=\eE[?1049h:ue=\eE[24m:up=\eE[A:\e |
349 | \& :us=\eE[4m:vb=\eE[?5h\eE[?5l:ve=\eE[?25h:vi=\eE[?25l:\e |
988 | \& :us=\eE[4m:vb=\eE[?5h\eE[?5l:ve=\eE[?25h:vi=\eE[?25l:\e |
350 | \& :vs=\eE[?25h: |
989 | \& :vs=\eE[?25h: |
351 | .Ve |
990 | .Ve |
352 | .ie n .IP "Why does ""ls"" no longer have coloured output?" 4 |
991 | .PP |
353 | .el .IP "Why does \f(CWls\fR no longer have coloured output?" 4 |
992 | \fIWhy does \f(CI\*(C`ls\*(C'\fI no longer have coloured output?\fR |
354 | .IX Item "Why does ls no longer have coloured output?" |
993 | .IX Subsection "Why does ls no longer have coloured output?" |
|
|
994 | .PP |
355 | The \f(CW\*(C`ls\*(C'\fR in the \s-1GNU\s0 coreutils unfortunately doesn't use terminfo to |
995 | The \f(CW\*(C`ls\*(C'\fR in the \s-1GNU\s0 coreutils unfortunately doesn't use terminfo to |
356 | decide wether a terminal has colour, but uses it's own configuration |
996 | decide wether a terminal has colour, but uses it's own configuration |
357 | file. Needless to say, \f(CW\*(C`rxvt\-unicode\*(C'\fR is not in it's default file (among |
997 | file. Needless to say, \f(CW\*(C`rxvt\-unicode\*(C'\fR is not in it's default file (among |
358 | with most other terminals supporting colour). Either add: |
998 | with most other terminals supporting colour). Either add: |
359 | .Sp |
999 | .PP |
360 | .Vb 1 |
1000 | .Vb 1 |
361 | \& TERM rxvt-unicode |
1001 | \& TERM rxvt-unicode |
362 | .Ve |
1002 | .Ve |
363 | .Sp |
1003 | .PP |
364 | to \f(CW\*(C`/etc/DIR_COLORS\*(C'\fR or simply add: |
1004 | to \f(CW\*(C`/etc/DIR_COLORS\*(C'\fR or simply add: |
365 | .Sp |
1005 | .PP |
366 | .Vb 1 |
1006 | .Vb 1 |
367 | \& alias ls='ls --color=auto' |
1007 | \& alias ls='ls --color=auto' |
368 | .Ve |
1008 | .Ve |
369 | .Sp |
1009 | .PP |
370 | to your \f(CW\*(C`.profile\*(C'\fR or \f(CW\*(C`.bashrc\*(C'\fR. |
1010 | to your \f(CW\*(C`.profile\*(C'\fR or \f(CW\*(C`.bashrc\*(C'\fR. |
|
|
1011 | .PP |
371 | .IP "Why doesn't vim/emacs etc. use the 88 colour mode?" 4 |
1012 | \fIWhy doesn't vim/emacs etc. use the 88 colour mode?\fR |
372 | .IX Item "Why doesn't vim/emacs etc. use the 88 colour mode?" |
1013 | .IX Subsection "Why doesn't vim/emacs etc. use the 88 colour mode?" |
373 | .PD 0 |
1014 | .PP |
|
|
1015 | See next entry. |
|
|
1016 | .PP |
374 | .IP "Why doesn't vim/emacs etc. make use of italic?" 4 |
1017 | \fIWhy doesn't vim/emacs etc. make use of italic?\fR |
375 | .IX Item "Why doesn't vim/emacs etc. make use of italic?" |
1018 | .IX Subsection "Why doesn't vim/emacs etc. make use of italic?" |
|
|
1019 | .PP |
|
|
1020 | See next entry. |
|
|
1021 | .PP |
376 | .IP "Why are the secondary screen-related options not working properly?" 4 |
1022 | \fIWhy are the secondary screen-related options not working properly?\fR |
377 | .IX Item "Why are the secondary screen-related options not working properly?" |
1023 | .IX Subsection "Why are the secondary screen-related options not working properly?" |
378 | .PD |
1024 | .PP |
379 | Make sure you are using \f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR. Some pre-packaged |
1025 | Make sure you are using \f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR. Some pre-packaged |
380 | distributions (most notably Debian GNU/Linux) break rxvt-unicode |
1026 | distributions (most notably Debian GNU/Linux) break rxvt-unicode |
381 | by setting \f(CW\*(C`TERM\*(C'\fR to \f(CW\*(C`rxvt\*(C'\fR, which doesn't have these extra |
1027 | by setting \f(CW\*(C`TERM\*(C'\fR to \f(CW\*(C`rxvt\*(C'\fR, which doesn't have these extra |
382 | features. Unfortunately, some of these (most notably, again, Debian |
1028 | features. Unfortunately, some of these (most notably, again, Debian |
383 | GNU/Linux) furthermore fail to even install the \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo |
1029 | GNU/Linux) furthermore fail to even install the \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo |
384 | file, so you will need to install it on your own (See the question \fBWhen |
1030 | file, so you will need to install it on your own (See the question \fBWhen |
385 | I log-in to another system it tells me about missing terminfo data?\fR on |
1031 | I log-in to another system it tells me about missing terminfo data?\fR on |
386 | how to do this). |
1032 | how to do this). |
387 | .IP "My numerical keypad acts weird and generates differing output?" 4 |
1033 | .Sh "Encoding / Locale / Input Method Issues" |
388 | .IX Item "My numerical keypad acts weird and generates differing output?" |
1034 | .IX Subsection "Encoding / Locale / Input Method Issues" |
389 | Some Debian GNUL/Linux users seem to have this problem, although no |
|
|
390 | specific details were reported so far. It is possible that this is caused |
|
|
391 | by the wrong \f(CW\*(C`TERM\*(C'\fR setting, although the details of wether and how |
|
|
392 | this can happen are unknown, as \f(CW\*(C`TERM=rxvt\*(C'\fR should offer a compatible |
|
|
393 | keymap. See the answer to the previous question, and please report if that |
|
|
394 | helped. |
|
|
395 | .IP "Rxvt-unicode does not seem to understand the selected encoding?" 4 |
1035 | \fIRxvt-unicode does not seem to understand the selected encoding?\fR |
396 | .IX Item "Rxvt-unicode does not seem to understand the selected encoding?" |
1036 | .IX Subsection "Rxvt-unicode does not seem to understand the selected encoding?" |
397 | .PD 0 |
1037 | .PP |
|
|
1038 | See next entry. |
|
|
1039 | .PP |
398 | .IP "Unicode does not seem to work?" 4 |
1040 | \fIUnicode does not seem to work?\fR |
399 | .IX Item "Unicode does not seem to work?" |
1041 | .IX Subsection "Unicode does not seem to work?" |
400 | .PD |
1042 | .PP |
401 | If you encounter strange problems like typing an accented character but |
1043 | If you encounter strange problems like typing an accented character but |
402 | getting two unrelated other characters or similar, or if program output is |
1044 | getting two unrelated other characters or similar, or if program output is |
403 | subtly garbled, then you should check your locale settings. |
1045 | subtly garbled, then you should check your locale settings. |
404 | .Sp |
1046 | .PP |
405 | Rxvt-unicode must be started with the same \f(CW\*(C`LC_CTYPE\*(C'\fR setting as the |
1047 | Rxvt-unicode must be started with the same \f(CW\*(C`LC_CTYPE\*(C'\fR setting as the |
406 | programs. Often rxvt-unicode is started in the \f(CW\*(C`C\*(C'\fR locale, while the |
1048 | programs. Often rxvt-unicode is started in the \f(CW\*(C`C\*(C'\fR locale, while the |
407 | login script running within the rxvt-unicode window changes the locale to |
1049 | login script running within the rxvt-unicode window changes the locale to |
408 | something else, e.g. \f(CW\*(C`en_GB.UTF\-8\*(C'\fR. Needless to say, this is not going to work. |
1050 | something else, e.g. \f(CW\*(C`en_GB.UTF\-8\*(C'\fR. Needless to say, this is not going to work. |
409 | .Sp |
1051 | .PP |
410 | The best thing is to fix your startup environment, as you will likely run |
1052 | The best thing is to fix your startup environment, as you will likely run |
411 | into other problems. If nothing works you can try this in your .profile. |
1053 | into other problems. If nothing works you can try this in your .profile. |
412 | .Sp |
1054 | .PP |
413 | .Vb 1 |
1055 | .Vb 1 |
414 | \& printf '\ee]701;%s\e007' "$LC_CTYPE" |
1056 | \& printf '\ee]701;%s\e007' "$LC_CTYPE" |
415 | .Ve |
1057 | .Ve |
416 | .Sp |
1058 | .PP |
417 | If this doesn't work, then maybe you use a \f(CW\*(C`LC_CTYPE\*(C'\fR specification not |
1059 | If this doesn't work, then maybe you use a \f(CW\*(C`LC_CTYPE\*(C'\fR specification not |
418 | supported on your systems. Some systems have a \f(CW\*(C`locale\*(C'\fR command which |
1060 | supported on your systems. Some systems have a \f(CW\*(C`locale\*(C'\fR command which |
419 | displays this (also, \f(CW\*(C`perl \-e0\*(C'\fR can be used to check locale settings, as |
1061 | displays this (also, \f(CW\*(C`perl \-e0\*(C'\fR can be used to check locale settings, as |
420 | it will complain loudly if it cannot set the locale). If it displays something |
1062 | it will complain loudly if it cannot set the locale). If it displays something |
421 | like: |
1063 | like: |
422 | .Sp |
1064 | .PP |
423 | .Vb 1 |
1065 | .Vb 1 |
424 | \& locale: Cannot set LC_CTYPE to default locale: ... |
1066 | \& locale: Cannot set LC_CTYPE to default locale: ... |
425 | .Ve |
1067 | .Ve |
426 | .Sp |
1068 | .PP |
427 | Then the locale you specified is not supported on your system. |
1069 | Then the locale you specified is not supported on your system. |
428 | .Sp |
1070 | .PP |
429 | If nothing works and you are sure that everything is set correctly then |
1071 | If nothing works and you are sure that everything is set correctly then |
430 | you will need to remember a little known fact: Some programs just don't |
1072 | you will need to remember a little known fact: Some programs just don't |
431 | support locales :( |
1073 | support locales :( |
432 | .IP "Why do some characters look so much different than others?" 4 |
1074 | .PP |
433 | .IX Item "Why do some characters look so much different than others?" |
1075 | \fIHow does rxvt-unicode determine the encoding to use?\fR |
|
|
1076 | .IX Subsection "How does rxvt-unicode determine the encoding to use?" |
|
|
1077 | .PP |
|
|
1078 | See next entry. |
|
|
1079 | .PP |
|
|
1080 | \fIIs there an option to switch encodings?\fR |
|
|
1081 | .IX Subsection "Is there an option to switch encodings?" |
|
|
1082 | .PP |
|
|
1083 | Unlike some other terminals, rxvt-unicode has no encoding switch, and no |
|
|
1084 | specific \*(L"utf\-8\*(R" mode, such as xterm. In fact, it doesn't even know about |
|
|
1085 | \&\s-1UTF\-8\s0 or any other encodings with respect to terminal I/O. |
|
|
1086 | .PP |
|
|
1087 | The reasons is that there exists a perfectly fine mechanism for selecting |
|
|
1088 | the encoding, doing I/O and (most important) communicating this to all |
|
|
1089 | applications so everybody agrees on character properties such as width |
|
|
1090 | and code number. This mechanism is the \fIlocale\fR. Applications not using |
|
|
1091 | that info will have problems (for example, \f(CW\*(C`xterm\*(C'\fR gets the width of |
|
|
1092 | characters wrong as it uses it's own, locale-independent table under all |
|
|
1093 | locales). |
|
|
1094 | .PP |
|
|
1095 | Rxvt-unicode uses the \f(CW\*(C`LC_CTYPE\*(C'\fR locale category to select encoding. All |
|
|
1096 | programs doing the same (that is, most) will automatically agree in the |
|
|
1097 | interpretation of characters. |
|
|
1098 | .PP |
|
|
1099 | Unfortunately, there is no system-independent way to select locales, nor |
|
|
1100 | is there a standard on how locale specifiers will look like. |
|
|
1101 | .PP |
|
|
1102 | On most systems, the content of the \f(CW\*(C`LC_CTYPE\*(C'\fR environment variable |
|
|
1103 | contains an arbitrary string which corresponds to an already-installed |
|
|
1104 | locale. Common names for locales are \f(CW\*(C`en_US.UTF\-8\*(C'\fR, \f(CW\*(C`de_DE.ISO\-8859\-15\*(C'\fR, |
|
|
1105 | \&\f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR, i.e. \f(CW\*(C`language_country.encoding\*(C'\fR, but other forms |
|
|
1106 | (i.e. \f(CW\*(C`de\*(C'\fR or \f(CW\*(C`german\*(C'\fR) are also common. |
|
|
1107 | .PP |
|
|
1108 | Rxvt-unicode ignores all other locale categories, and except for |
|
|
1109 | the encoding, ignores country or language-specific settings, |
|
|
1110 | i.e. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR and \f(CW\*(C`ja_JP.UTF\-8\*(C'\fR are the normally same to |
|
|
1111 | rxvt\-unicode. |
|
|
1112 | .PP |
|
|
1113 | If you want to use a specific encoding you have to make sure you start |
|
|
1114 | rxvt-unicode with the correct \f(CW\*(C`LC_CTYPE\*(C'\fR category. |
|
|
1115 | .PP |
|
|
1116 | \fICan I switch locales at runtime?\fR |
|
|
1117 | .IX Subsection "Can I switch locales at runtime?" |
|
|
1118 | .PP |
|
|
1119 | Yes, using an escape sequence. Try something like this, which sets |
|
|
1120 | rxvt\-unicode's idea of \f(CW\*(C`LC_CTYPE\*(C'\fR. |
|
|
1121 | .PP |
|
|
1122 | .Vb 1 |
|
|
1123 | \& printf '\ee]701;%s\e007' ja_JP.SJIS |
|
|
1124 | .Ve |
|
|
1125 | .PP |
|
|
1126 | See also the previous answer. |
|
|
1127 | .PP |
|
|
1128 | Sometimes this capability is rather handy when you want to work in |
|
|
1129 | one locale (e.g. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR) but some programs don't support it |
|
|
1130 | (e.g. \s-1UTF\-8\s0). For example, I use this script to start \f(CW\*(C`xjdic\*(C'\fR, which |
|
|
1131 | first switches to a locale supported by xjdic and back later: |
|
|
1132 | .PP |
|
|
1133 | .Vb 3 |
|
|
1134 | \& printf '\ee]701;%s\e007' ja_JP.SJIS |
|
|
1135 | \& xjdic -js |
|
|
1136 | \& printf '\ee]701;%s\e007' de_DE.UTF-8 |
|
|
1137 | .Ve |
|
|
1138 | .PP |
|
|
1139 | You can also use xterm's \f(CW\*(C`luit\*(C'\fR program, which usually works fine, except |
|
|
1140 | for some locales where character width differs between program\- and |
|
|
1141 | rxvt\-unicode\-locales. |
|
|
1142 | .PP |
|
|
1143 | \fII have problems getting my input method working.\fR |
|
|
1144 | .IX Subsection "I have problems getting my input method working." |
|
|
1145 | .PP |
|
|
1146 | Try a search engine, as this is slightly different for every input method server. |
|
|
1147 | .PP |
|
|
1148 | Here is a checklist: |
|
|
1149 | .IP "\- Make sure your locale \fIand\fR the imLocale are supported on your \s-1OS\s0." 4 |
|
|
1150 | .IX Item "- Make sure your locale and the imLocale are supported on your OS." |
|
|
1151 | Try \f(CW\*(C`locale \-a\*(C'\fR or check the documentation for your \s-1OS\s0. |
|
|
1152 | .IP "\- Make sure your locale or imLocale matches a locale supported by your \s-1XIM\s0." 4 |
|
|
1153 | .IX Item "- Make sure your locale or imLocale matches a locale supported by your XIM." |
|
|
1154 | For example, \fBkinput2\fR does not support \s-1UTF\-8\s0 locales, you should use |
|
|
1155 | \&\f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR or equivalent. |
|
|
1156 | .IP "\- Make sure your \s-1XIM\s0 server is actually running." 4 |
|
|
1157 | .IX Item "- Make sure your XIM server is actually running." |
434 | .PD 0 |
1158 | .PD 0 |
435 | .IP "How does rxvt-unicode choose fonts?" 4 |
1159 | .ie n .IP "\- Make sure the ""XMODIFIERS""\fR environment variable is set correctly when \fIstarting rxvt\-unicode." 4 |
436 | .IX Item "How does rxvt-unicode choose fonts?" |
1160 | .el .IP "\- Make sure the \f(CWXMODIFIERS\fR environment variable is set correctly when \fIstarting\fR rxvt\-unicode." 4 |
|
|
1161 | .IX Item "- Make sure the XMODIFIERS environment variable is set correctly when starting rxvt-unicode." |
437 | .PD |
1162 | .PD |
438 | Most fonts do not contain the full range of Unicode, which is |
1163 | When you want to use e.g. \fBkinput2\fR, it must be set to |
439 | fine. Chances are that the font you (or the admin/package maintainer of |
1164 | \&\f(CW\*(C`@im=kinput2\*(C'\fR. For \fBscim\fR, use \f(CW\*(C`@im=SCIM\*(C'\fR. Youc an see what input |
440 | your system/os) have specified does not cover all the characters you want |
1165 | method servers are running with this command: |
441 | to display. |
|
|
442 | .Sp |
|
|
443 | \&\fBrxvt-unicode\fR makes a best-effort try at finding a replacement |
|
|
444 | font. Often the result is fine, but sometimes the chosen font looks |
|
|
445 | bad/ugly/wrong. Some fonts have totally strange characters that don't |
|
|
446 | resemble the correct glyph at all, and rxvt-unicode lacks the artificial |
|
|
447 | intelligence to detect that a specific glyph is wrong: it has to believe |
|
|
448 | the font that the characters it claims to contain indeed look correct. |
|
|
449 | .Sp |
|
|
450 | In that case, select a font of your taste and add it to the font list, |
|
|
451 | e.g.: |
|
|
452 | .Sp |
1166 | .Sp |
453 | .Vb 1 |
1167 | .Vb 1 |
454 | \& @@RXVT_NAME@@ -fn basefont,font2,font3... |
1168 | \& xprop -root XIM_SERVERS |
455 | .Ve |
1169 | .Ve |
456 | .Sp |
1170 | .IP "*" 4 |
457 | When rxvt-unicode sees a character, it will first look at the base |
1171 | .PP |
458 | font. If the base font does not contain the character, it will go to the |
1172 | \fIMy input method wants <some encoding> but I want \s-1UTF\-8\s0, what can I do?\fR |
459 | next font, and so on. Specifying your own fonts will also speed up this |
1173 | .IX Subsection "My input method wants <some encoding> but I want UTF-8, what can I do?" |
460 | search and use less resources within rxvt-unicode and the X\-server. |
1174 | .PP |
461 | .Sp |
1175 | You can specify separate locales for the input method and the rest of the |
462 | The only limitation is that none of the fonts may be larger than the base |
1176 | terminal, using the resource \f(CW\*(C`imlocale\*(C'\fR: |
463 | font, as the base font defines the terminal character cell size, which |
1177 | .PP |
464 | must be the same due to the way terminals work. |
1178 | .Vb 1 |
465 | .IP "Why do some chinese characters look so different than others?" 4 |
1179 | \& URxvt.imlocale: ja_JP.EUC-JP |
466 | .IX Item "Why do some chinese characters look so different than others?" |
1180 | .Ve |
467 | This is because there is a difference between script and language \*(-- |
1181 | .PP |
468 | rxvt-unicode does not know which language the text that is output is, |
1182 | Now you can start your terminal with \f(CW\*(C`LC_CTYPE=ja_JP.UTF\-8\*(C'\fR and still |
469 | as it only knows the unicode character codes. If rxvt-unicode first |
1183 | use your input method. Please note, however, that, depending on your Xlib |
470 | sees a japanese/chinese character, it might choose a japanese font for |
1184 | version, you may not be able to input characters outside \f(CW\*(C`EUC\-JP\*(C'\fR in a |
471 | display. Subsequent japanese characters will use that font. Now, many |
1185 | normal way then, as your input method limits you. |
472 | chinese characters aren't represented in japanese fonts, so when the first |
1186 | .PP |
473 | non-japanese character comes up, rxvt-unicode will look for a chinese font |
1187 | \fIRxvt-unicode crashes when the X Input Method changes or exits.\fR |
474 | \&\*(-- unfortunately at this point, it will still use the japanese font for |
1188 | .IX Subsection "Rxvt-unicode crashes when the X Input Method changes or exits." |
475 | chinese characters that are also in the japanese font. |
1189 | .PP |
476 | .Sp |
1190 | Unfortunately, this is unavoidable, as the \s-1XIM\s0 protocol is racy by |
477 | The workaround is easy: just tag a chinese font at the end of your font |
1191 | design. Applications can avoid some crashes at the expense of memory |
478 | list (see the previous question). The key is to view the font list as |
1192 | leaks, and Input Methods can avoid some crashes by careful ordering at |
479 | a preference list: If you expect more japanese, list a japanese font |
1193 | exit time. \fBkinput2\fR (and derived input methods) generally succeeds, |
480 | first. If you expect more chinese, put a chinese font first. |
1194 | while \fB\s-1SCIM\s0\fR (or similar input methods) fails. In the end, however, |
481 | .Sp |
1195 | crashes cannot be completely avoided even if both sides cooperate. |
482 | In the future it might be possible to switch language preferences at |
1196 | .PP |
483 | runtime (the internal data structure has no problem with using different |
1197 | So the only workaround is not to kill your Input Method Servers. |
484 | fonts for the same character at the same time, but no interface for this |
1198 | .Sh "Operating Systems / Package Maintaining" |
485 | has been designed yet). |
1199 | .IX Subsection "Operating Systems / Package Maintaining" |
486 | .Sp |
1200 | \fII am using Debian GNU/Linux and have a problem...\fR |
487 | Until then, you might get away with switching fonts at runtime (see \*(L"Can I switch the fonts at runtime?\*(R" later in this document). |
1201 | .IX Subsection "I am using Debian GNU/Linux and have a problem..." |
488 | .IP "Why does rxvt-unicode sometimes leave pixel droppings?" 4 |
1202 | .PP |
489 | .IX Item "Why does rxvt-unicode sometimes leave pixel droppings?" |
1203 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
490 | Most fonts were not designed for terminal use, which means that character |
1204 | patches that considerably change the behaviour of rxvt-unicode (but |
491 | size varies a lot. A font that is otherwise fine for terminal use might |
1205 | unfortunately this notice has been removed). Before reporting a bug to |
492 | contain some characters that are simply too wide. Rxvt-unicode will avoid |
1206 | the original rxvt-unicode author please download and install the genuine |
493 | these characters. For characters that are just \*(L"a bit\*(R" too wide a special |
1207 | version (<http://software.schmorp.de#rxvt\-unicode>) and try to reproduce |
494 | \&\*(L"careful\*(R" rendering mode is used that redraws adjacent characters. |
1208 | the problem. If you cannot, chances are that the problems are specific to |
495 | .Sp |
1209 | Debian GNU/Linux, in which case it should be reported via the Debian Bug |
496 | All of this requires that fonts do not lie about character sizes, |
1210 | Tracking System (use \f(CW\*(C`reportbug\*(C'\fR to report the bug). |
497 | however: Xft fonts often draw glyphs larger than their acclaimed bounding |
1211 | .PP |
498 | box, and rxvt-unicode has no way of detecting this (the correct way is to |
1212 | For other problems that also affect the Debian package, you can and |
499 | ask for the character bounding box, which unfortunately is wrong in these |
1213 | probably should use the Debian \s-1BTS\s0, too, because, after all, it's also a |
500 | cases). |
1214 | bug in the Debian version and it serves as a reminder for other users that |
501 | .Sp |
1215 | might encounter the same issue. |
502 | It's not clear (to me at least), wether this is a bug in Xft, freetype, |
1216 | .PP |
503 | or the respective font. If you encounter this problem you might try using |
1217 | \fII am maintaining rxvt-unicode for distribution/OS \s-1XXX\s0, any recommendation?\fR |
504 | the \f(CW\*(C`\-lsp\*(C'\fR option to give the font more height. If that doesn't work, you |
1218 | .IX Subsection "I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation?" |
505 | might be forced to use a different font. |
1219 | .PP |
506 | .Sp |
1220 | You should build one binary with the default options. \fIconfigure\fR |
507 | All of this is not a problem when using X11 core fonts, as their bounding |
1221 | now enables most useful options, and the trend goes to making them |
508 | box data is correct. |
1222 | runtime\-switchable, too, so there is usually no drawback to enbaling them, |
|
|
1223 | except higher disk and possibly memory usage. The perl interpreter should |
|
|
1224 | be enabled, as important functionality (menus, selection, likely more in |
|
|
1225 | the future) depends on it. |
|
|
1226 | .PP |
|
|
1227 | You should not overwrite the \f(CW\*(C`perl\-ext\-common\*(C'\fR snd \f(CW\*(C`perl\-ext\*(C'\fR resources |
|
|
1228 | system-wide (except maybe with \f(CW\*(C`defaults\*(C'\fR). This will result in useful |
|
|
1229 | behaviour. If your distribution aims at low memory, add an empty |
|
|
1230 | \&\f(CW\*(C`perl\-ext\-common\*(C'\fR resource to the app-defaults file. This will keep the |
|
|
1231 | perl interpreter disabled until the user enables it. |
|
|
1232 | .PP |
|
|
1233 | If you can/want build more binaries, I recommend building a minimal |
|
|
1234 | one with \f(CW\*(C`\-\-disable\-everything\*(C'\fR (very useful) and a maximal one with |
|
|
1235 | \&\f(CW\*(C`\-\-enable\-everything\*(C'\fR (less useful, it will be very big due to a lot of |
|
|
1236 | encodings built-in that increase download times and are rarely used). |
|
|
1237 | .PP |
|
|
1238 | \fII need to make it setuid/setgid to support utmp/ptys on my \s-1OS\s0, is this safe?\fR |
|
|
1239 | .IX Subsection "I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe?" |
|
|
1240 | .PP |
|
|
1241 | It should be, starting with release 7.1. You are encouraged to properly |
|
|
1242 | install urxvt with privileges necessary for your \s-1OS\s0 now. |
|
|
1243 | .PP |
|
|
1244 | When rxvt-unicode detects that it runs setuid or setgid, it will fork |
|
|
1245 | into a helper process for privileged operations (pty handling on some |
|
|
1246 | systems, utmp/wtmp/lastlog handling on others) and drop privileges |
|
|
1247 | immediately. This is much safer than most other terminals that keep |
|
|
1248 | privileges while running (but is more relevant to urxvt, as it contains |
|
|
1249 | things as perl interpreters, which might be \*(L"helpful\*(R" to attackers). |
|
|
1250 | .PP |
|
|
1251 | This forking is done as the very first within \fImain()\fR, which is very early |
|
|
1252 | and reduces possible bugs to initialisation code run before \fImain()\fR, or |
|
|
1253 | things like the dynamic loader of your system, which should result in very |
|
|
1254 | little risk. |
|
|
1255 | .PP |
509 | .IP "On Solaris 9, many line-drawing characters are too wide." 4 |
1256 | \fIOn Solaris 9, many line-drawing characters are too wide.\fR |
510 | .IX Item "On Solaris 9, many line-drawing characters are too wide." |
1257 | .IX Subsection "On Solaris 9, many line-drawing characters are too wide." |
|
|
1258 | .PP |
511 | Seems to be a known bug, read |
1259 | Seems to be a known bug, read |
512 | <http://nixdoc.net/files/forum/about34198.html>. Some people use the |
1260 | <http://nixdoc.net/files/forum/about34198.html>. Some people use the |
513 | following ugly workaround to get non-double-wide-characters working: |
1261 | following ugly workaround to get non-double-wide-characters working: |
514 | .Sp |
1262 | .PP |
515 | .Vb 1 |
1263 | .Vb 1 |
516 | \& #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x) |
1264 | \& #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x) |
517 | .Ve |
1265 | .Ve |
518 | .IP "My Compose (Multi_key) key is no longer working." 4 |
1266 | .PP |
519 | .IX Item "My Compose (Multi_key) key is no longer working." |
|
|
520 | The most common causes for this are that either your locale is not set |
|
|
521 | correctly, or you specified a \fBpreeditStyle\fR that is not supported by |
|
|
522 | your input method. For example, if you specified \fBOverTheSpot\fR and |
|
|
523 | your input method (e.g. the default input method handling Compose keys) |
|
|
524 | does not support this (for instance because it is not visual), then |
|
|
525 | rxvt-unicode will continue without an input method. |
|
|
526 | .Sp |
|
|
527 | In this case either do not specify a \fBpreeditStyle\fR or specify more than |
|
|
528 | one pre-edit style, such as \fBOverTheSpot,Root,None\fR. |
|
|
529 | .ie n .IP "I cannot type ""Ctrl\-Shift\-2"" to get an \s-1ASCII\s0 \s-1NUL\s0 character due to \s-1ISO\s0 14755" 4 |
|
|
530 | .el .IP "I cannot type \f(CWCtrl\-Shift\-2\fR to get an \s-1ASCII\s0 \s-1NUL\s0 character due to \s-1ISO\s0 14755" 4 |
|
|
531 | .IX Item "I cannot type Ctrl-Shift-2 to get an ASCII NUL character due to ISO 14755" |
|
|
532 | Either try \f(CW\*(C`Ctrl\-2\*(C'\fR alone (it often is mapped to \s-1ASCII\s0 \s-1NUL\s0 even on |
|
|
533 | international keyboards) or simply use \s-1ISO\s0 14755 support to your |
|
|
534 | advantage, typing <Ctrl\-Shift\-0> to get a \s-1ASCII\s0 \s-1NUL\s0. This works for other |
|
|
535 | codes, too, such as \f(CW\*(C`Ctrl\-Shift\-1\-d\*(C'\fR to type the default telnet escape |
|
|
536 | character and so on. |
|
|
537 | .IP "How can I keep rxvt-unicode from using reverse video so much?" 4 |
|
|
538 | .IX Item "How can I keep rxvt-unicode from using reverse video so much?" |
|
|
539 | First of all, make sure you are running with the right terminal settings |
|
|
540 | (\f(CW\*(C`TERM=rxvt\-unicode\*(C'\fR), which will get rid of most of these effects. Then |
|
|
541 | make sure you have specified colours for italic and bold, as otherwise |
|
|
542 | rxvt-unicode might use reverse video to simulate the effect: |
|
|
543 | .Sp |
|
|
544 | .Vb 2 |
|
|
545 | \& URxvt.colorBD: white |
|
|
546 | \& URxvt.colorIT: green |
|
|
547 | .Ve |
|
|
548 | .IP "Some programs assume totally weird colours (red instead of blue), how can I fix that?" 4 |
|
|
549 | .IX Item "Some programs assume totally weird colours (red instead of blue), how can I fix that?" |
|
|
550 | For some unexplainable reason, some rare programs assume a very weird |
|
|
551 | colour palette when confronted with a terminal with more than the standard |
|
|
552 | 8 colours (rxvt\-unicode supports 88). The right fix is, of course, to fix |
|
|
553 | these programs not to assume non-ISO colours without very good reasons. |
|
|
554 | .Sp |
|
|
555 | In the meantime, you can either edit your \f(CW\*(C`rxvt\-unicode\*(C'\fR terminfo |
|
|
556 | definition to only claim 8 colour support or use \f(CW\*(C`TERM=rxvt\*(C'\fR, which will |
|
|
557 | fix colours but keep you from using other rxvt-unicode features. |
|
|
558 | .IP "I am on FreeBSD and rxvt-unicode does not seem to work at all." 4 |
1267 | \fII am on FreeBSD and rxvt-unicode does not seem to work at all.\fR |
559 | .IX Item "I am on FreeBSD and rxvt-unicode does not seem to work at all." |
1268 | .IX Subsection "I am on FreeBSD and rxvt-unicode does not seem to work at all." |
|
|
1269 | .PP |
560 | Rxvt-unicode requires the symbol \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR to be defined |
1270 | Rxvt-unicode requires the symbol \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR to be defined |
561 | in your compile environment, or an implementation that implements it, |
1271 | in your compile environment, or an implementation that implements it, |
562 | wether it defines the symbol or not. \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR requires that |
1272 | wether it defines the symbol or not. \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR requires that |
563 | \&\fBwchar_t\fR is represented as unicode. |
1273 | \&\fBwchar_t\fR is represented as unicode. |
564 | .Sp |
1274 | .PP |
565 | As you might have guessed, FreeBSD does neither define this symobl nor |
1275 | As you might have guessed, FreeBSD does neither define this symobl nor |
566 | does it support it. Instead, it uses it's own internal representation of |
1276 | does it support it. Instead, it uses it's own internal representation of |
567 | \&\fBwchar_t\fR. This is, of course, completely fine with respect to standards. |
1277 | \&\fBwchar_t\fR. This is, of course, completely fine with respect to standards. |
568 | .Sp |
1278 | .PP |
569 | However, that means rxvt-unicode only works in \f(CW\*(C`POSIX\*(C'\fR, \f(CW\*(C`ISO\-8859\-1\*(C'\fR and |
1279 | However, that means rxvt-unicode only works in \f(CW\*(C`POSIX\*(C'\fR, \f(CW\*(C`ISO\-8859\-1\*(C'\fR and |
570 | \&\f(CW\*(C`UTF\-8\*(C'\fR locales under FreeBSD (which all use Unicode as \fBwchar_t\fR. |
1280 | \&\f(CW\*(C`UTF\-8\*(C'\fR locales under FreeBSD (which all use Unicode as \fBwchar_t\fR. |
571 | .Sp |
1281 | .PP |
572 | \&\f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR is the only sane way to support multi-language |
1282 | \&\f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR is the only sane way to support multi-language |
573 | apps in an \s-1OS\s0, as using a locale-dependent (and non\-standardized) |
1283 | apps in an \s-1OS\s0, as using a locale-dependent (and non\-standardized) |
574 | representation of \fBwchar_t\fR makes it impossible to convert between |
1284 | representation of \fBwchar_t\fR makes it impossible to convert between |
575 | \&\fBwchar_t\fR (as used by X11 and your applications) and any other encoding |
1285 | \&\fBwchar_t\fR (as used by X11 and your applications) and any other encoding |
576 | without implementing OS-specific-wrappers for each and every locale. There |
1286 | without implementing OS-specific-wrappers for each and every locale. There |
577 | simply are no APIs to convert \fBwchar_t\fR into anything except the current |
1287 | simply are no APIs to convert \fBwchar_t\fR into anything except the current |
578 | locale encoding. |
1288 | locale encoding. |
579 | .Sp |
1289 | .PP |
580 | Some applications (such as the formidable \fBmlterm\fR) work around this |
1290 | Some applications (such as the formidable \fBmlterm\fR) work around this |
581 | by carrying their own replacement functions for character set handling |
1291 | by carrying their own replacement functions for character set handling |
582 | with them, and either implementing OS-dependent hacks or doing multiple |
1292 | with them, and either implementing OS-dependent hacks or doing multiple |
583 | conversions (which is slow and unreliable in case the \s-1OS\s0 implements |
1293 | conversions (which is slow and unreliable in case the \s-1OS\s0 implements |
584 | encodings slightly different than the terminal emulator). |
1294 | encodings slightly different than the terminal emulator). |
585 | .Sp |
1295 | .PP |
586 | The rxvt-unicode author insists that the right way to fix this is in the |
1296 | The rxvt-unicode author insists that the right way to fix this is in the |
587 | system libraries once and for all, instead of forcing every app to carry |
1297 | system libraries once and for all, instead of forcing every app to carry |
588 | complete replacements for them :) |
1298 | complete replacements for them :) |
|
|
1299 | .PP |
589 | .IP "I use Solaris 9 and it doesn't compile/work/etc." 4 |
1300 | \fII use Solaris 9 and it doesn't compile/work/etc.\fR |
590 | .IX Item "I use Solaris 9 and it doesn't compile/work/etc." |
1301 | .IX Subsection "I use Solaris 9 and it doesn't compile/work/etc." |
|
|
1302 | .PP |
591 | Try the diff in \fIdoc/solaris9.patch\fR as a base. It fixes the worst |
1303 | Try the diff in \fIdoc/solaris9.patch\fR as a base. It fixes the worst |
592 | problems with \f(CW\*(C`wcwidth\*(C'\fR and a compile problem. |
1304 | problems with \f(CW\*(C`wcwidth\*(C'\fR and a compile problem. |
|
|
1305 | .PP |
593 | .IP "How can I use rxvt-unicode under cygwin?" 4 |
1306 | \fIHow can I use rxvt-unicode under cygwin?\fR |
594 | .IX Item "How can I use rxvt-unicode under cygwin?" |
1307 | .IX Subsection "How can I use rxvt-unicode under cygwin?" |
|
|
1308 | .PP |
595 | rxvt-unicode should compile and run out of the box on cygwin, using |
1309 | rxvt-unicode should compile and run out of the box on cygwin, using |
596 | the X11 libraries that come with cygwin. libW11 emulation is no |
1310 | the X11 libraries that come with cygwin. libW11 emulation is no |
597 | longer supported (and makes no sense, either, as it only supported a |
1311 | longer supported (and makes no sense, either, as it only supported a |
598 | single font). I recommend starting the X\-server in \f(CW\*(C`\-multiwindow\*(C'\fR or |
1312 | single font). I recommend starting the X\-server in \f(CW\*(C`\-multiwindow\*(C'\fR or |
599 | \&\f(CW\*(C`\-rootless\*(C'\fR mode instead, which will result in similar look&feel as the |
1313 | \&\f(CW\*(C`\-rootless\*(C'\fR mode instead, which will result in similar look&feel as the |
600 | old libW11 emulation. |
1314 | old libW11 emulation. |
601 | .Sp |
1315 | .PP |
602 | At the time of this writing, cygwin didn't seem to support any multi-byte |
1316 | At the time of this writing, cygwin didn't seem to support any multi-byte |
603 | encodings (you might try \f(CW\*(C`LC_CTYPE=C\-UTF\-8\*(C'\fR), so you are likely limited |
1317 | encodings (you might try \f(CW\*(C`LC_CTYPE=C\-UTF\-8\*(C'\fR), so you are likely limited |
604 | to 8\-bit encodings. |
1318 | to 8\-bit encodings. |
605 | .IP "How does rxvt-unicode determine the encoding to use?" 4 |
|
|
606 | .IX Item "How does rxvt-unicode determine the encoding to use?" |
|
|
607 | .PD 0 |
|
|
608 | .IP "Is there an option to switch encodings?" 4 |
|
|
609 | .IX Item "Is there an option to switch encodings?" |
|
|
610 | .PD |
|
|
611 | Unlike some other terminals, rxvt-unicode has no encoding switch, and no |
|
|
612 | specific \*(L"utf\-8\*(R" mode, such as xterm. In fact, it doesn't even know about |
|
|
613 | \&\s-1UTF\-8\s0 or any other encodings with respect to terminal I/O. |
|
|
614 | .Sp |
|
|
615 | The reasons is that there exists a perfectly fine mechanism for selecting |
|
|
616 | the encoding, doing I/O and (most important) communicating this to all |
|
|
617 | applications so everybody agrees on character properties such as width |
|
|
618 | and code number. This mechanism is the \fIlocale\fR. Applications not using |
|
|
619 | that info will have problems (for example, \f(CW\*(C`xterm\*(C'\fR gets the width of |
|
|
620 | characters wrong as it uses it's own, locale-independent table under all |
|
|
621 | locales). |
|
|
622 | .Sp |
|
|
623 | Rxvt-unicode uses the \f(CW\*(C`LC_CTYPE\*(C'\fR locale category to select encoding. All |
|
|
624 | programs doing the same (that is, most) will automatically agree in the |
|
|
625 | interpretation of characters. |
|
|
626 | .Sp |
|
|
627 | Unfortunately, there is no system-independent way to select locales, nor |
|
|
628 | is there a standard on how locale specifiers will look like. |
|
|
629 | .Sp |
|
|
630 | On most systems, the content of the \f(CW\*(C`LC_CTYPE\*(C'\fR environment variable |
|
|
631 | contains an arbitrary string which corresponds to an already-installed |
|
|
632 | locale. Common names for locales are \f(CW\*(C`en_US.UTF\-8\*(C'\fR, \f(CW\*(C`de_DE.ISO\-8859\-15\*(C'\fR, |
|
|
633 | \&\f(CW\*(C`ja_JP.EUC\-JP\*(C'\fR, i.e. \f(CW\*(C`language_country.encoding\*(C'\fR, but other forms |
|
|
634 | (i.e. \f(CW\*(C`de\*(C'\fR or \f(CW\*(C`german\*(C'\fR) are also common. |
|
|
635 | .Sp |
|
|
636 | Rxvt-unicode ignores all other locale categories, and except for |
|
|
637 | the encoding, ignores country or language-specific settings, |
|
|
638 | i.e. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR and \f(CW\*(C`ja_JP.UTF\-8\*(C'\fR are the normally same to |
|
|
639 | rxvt\-unicode. |
|
|
640 | .Sp |
|
|
641 | If you want to use a specific encoding you have to make sure you start |
|
|
642 | rxvt-unicode with the correct \f(CW\*(C`LC_CTYPE\*(C'\fR category. |
|
|
643 | .IP "Can I switch locales at runtime?" 4 |
|
|
644 | .IX Item "Can I switch locales at runtime?" |
|
|
645 | Yes, using an escape sequence. Try something like this, which sets |
|
|
646 | rxvt\-unicode's idea of \f(CW\*(C`LC_CTYPE\*(C'\fR. |
|
|
647 | .Sp |
|
|
648 | .Vb 1 |
|
|
649 | \& printf '\ee]701;%s\e007' ja_JP.SJIS |
|
|
650 | .Ve |
|
|
651 | .Sp |
|
|
652 | See also the previous answer. |
|
|
653 | .Sp |
|
|
654 | Sometimes this capability is rather handy when you want to work in |
|
|
655 | one locale (e.g. \f(CW\*(C`de_DE.UTF\-8\*(C'\fR) but some programs don't support it |
|
|
656 | (e.g. \s-1UTF\-8\s0). For example, I use this script to start \f(CW\*(C`xjdic\*(C'\fR, which |
|
|
657 | first switches to a locale supported by xjdic and back later: |
|
|
658 | .Sp |
|
|
659 | .Vb 3 |
|
|
660 | \& printf '\ee]701;%s\e007' ja_JP.SJIS |
|
|
661 | \& xjdic -js |
|
|
662 | \& printf '\ee]701;%s\e007' de_DE.UTF-8 |
|
|
663 | .Ve |
|
|
664 | .Sp |
|
|
665 | You can also use xterm's \f(CW\*(C`luit\*(C'\fR program, which usually works fine, except |
|
|
666 | for some locales where character width differs between program\- and |
|
|
667 | rxvt\-unicode\-locales. |
|
|
668 | .IP "Can I switch the fonts at runtime?" 4 |
|
|
669 | .IX Item "Can I switch the fonts at runtime?" |
|
|
670 | Yes, using an escape sequence. Try something like this, which has the same |
|
|
671 | effect as using the \f(CW\*(C`\-fn\*(C'\fR switch, and takes effect immediately: |
|
|
672 | .Sp |
|
|
673 | .Vb 1 |
|
|
674 | \& printf '\ee]50;%s\e007' "9x15bold,xft:Kochi Gothic" |
|
|
675 | .Ve |
|
|
676 | .Sp |
|
|
677 | This is useful if you e.g. work primarily with japanese (and prefer a |
|
|
678 | japanese font), but you have to switch to chinese temporarily, where |
|
|
679 | japanese fonts would only be in your way. |
|
|
680 | .Sp |
|
|
681 | You can think of this as a kind of manual \s-1ISO\-2022\s0 switching. |
|
|
682 | .IP "Why do italic characters look as if clipped?" 4 |
|
|
683 | .IX Item "Why do italic characters look as if clipped?" |
|
|
684 | Many fonts have difficulties with italic characters and hinting. For |
|
|
685 | example, the otherwise very nicely hinted font \f(CW\*(C`xft:Bitstream Vera Sans |
|
|
686 | Mono\*(C'\fR completely fails in it's italic face. A workaround might be to |
|
|
687 | enable freetype autohinting, i.e. like this: |
|
|
688 | .Sp |
|
|
689 | .Vb 2 |
|
|
690 | \& URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true |
|
|
691 | \& URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true |
|
|
692 | .Ve |
|
|
693 | .IP "My input method wants <some encoding> but I want \s-1UTF\-8\s0, what can I do?" 4 |
|
|
694 | .IX Item "My input method wants <some encoding> but I want UTF-8, what can I do?" |
|
|
695 | You can specify separate locales for the input method and the rest of the |
|
|
696 | terminal, using the resource \f(CW\*(C`imlocale\*(C'\fR: |
|
|
697 | .Sp |
|
|
698 | .Vb 1 |
|
|
699 | \& URxvt*imlocale: ja_JP.EUC-JP |
|
|
700 | .Ve |
|
|
701 | .Sp |
|
|
702 | Now you can start your terminal with \f(CW\*(C`LC_CTYPE=ja_JP.UTF\-8\*(C'\fR and still |
|
|
703 | use your input method. Please note, however, that you will not be able to |
|
|
704 | input characters outside \f(CW\*(C`EUC\-JP\*(C'\fR in a normal way then, as your input |
|
|
705 | method limits you. |
|
|
706 | .IP "Rxvt-unicode crashes when the X Input Method changes or exits." 4 |
|
|
707 | .IX Item "Rxvt-unicode crashes when the X Input Method changes or exits." |
|
|
708 | Unfortunately, this is unavoidable, as the \s-1XIM\s0 protocol is racy by |
|
|
709 | design. Applications can avoid some crashes at the expense of memory |
|
|
710 | leaks, and Input Methods can avoid some crashes by careful ordering at |
|
|
711 | exit time. \fBkinput2\fR (and derived input methods) generally succeeds, |
|
|
712 | while \fB\s-1SCIM\s0\fR (or similar input methods) fails. In the end, however, |
|
|
713 | crashes cannot be completely avoided even if both sides cooperate. |
|
|
714 | .Sp |
|
|
715 | So the only workaround is not to kill your Input Method Servers. |
|
|
716 | .IP "Rxvt-unicode uses gobs of memory, how can I reduce that?" 4 |
|
|
717 | .IX Item "Rxvt-unicode uses gobs of memory, how can I reduce that?" |
|
|
718 | Rxvt-unicode tries to obey the rule of not charging you for something you |
|
|
719 | don't use. One thing you should try is to configure out all settings that |
|
|
720 | you don't need, for example, Xft support is a resource hog by design, |
|
|
721 | when used. Compiling it out ensures that no Xft font will be loaded |
|
|
722 | accidentally when rxvt-unicode tries to find a font for your characters. |
|
|
723 | .Sp |
|
|
724 | Also, many people (me included) like large windows and even larger |
|
|
725 | scrollback buffers: Without \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR, rxvt-unicode will use |
|
|
726 | 6 bytes per screen cell. For a 160x?? window this amounts to almost a |
|
|
727 | kilobyte per line. A scrollback buffer of 10000 lines will then (if full) |
|
|
728 | use 10 Megabytes of memory. With \f(CW\*(C`\-\-enable\-unicode3\*(C'\fR it gets worse, as |
|
|
729 | rxvt-unicode then uses 8 bytes per screen cell. |
|
|
730 | .IP "Can I speed up Xft rendering somehow?" 4 |
|
|
731 | .IX Item "Can I speed up Xft rendering somehow?" |
|
|
732 | Yes, the most obvious way to speed it up is to avoid Xft entirely, as |
|
|
733 | it is simply slow. If you still want Xft fonts you might try to disable |
|
|
734 | antialiasing (by appending \f(CW\*(C`:antialias=false\*(C'\fR), which saves lots of |
|
|
735 | memory and also speeds up rendering considerably. |
|
|
736 | .IP "Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?" 4 |
|
|
737 | .IX Item "Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?" |
|
|
738 | Rxvt-unicode will use whatever you specify as a font. If it needs to |
|
|
739 | fall back to it's default font search list it will prefer X11 core |
|
|
740 | fonts, because they are small and fast, and then use Xft fonts. It has |
|
|
741 | antialiasing disabled for most of them, because the author thinks they |
|
|
742 | look best that way. |
|
|
743 | .Sp |
|
|
744 | If you want antialiasing, you have to specify the fonts manually. |
|
|
745 | .IP "Mouse cut/paste suddenly no longer works." 4 |
|
|
746 | .IX Item "Mouse cut/paste suddenly no longer works." |
|
|
747 | Make sure that mouse reporting is actually turned off since killing |
|
|
748 | some editors prematurely may leave the mouse in mouse report mode. I've |
|
|
749 | heard that tcsh may use mouse reporting unless it otherwise specified. A |
|
|
750 | quick check is to see if cut/paste works when the Alt or Shift keys are |
|
|
751 | depressed. See @@RXVT_NAME@@(7) |
|
|
752 | .IP "What's with this bold/blink stuff?" 4 |
|
|
753 | .IX Item "What's with this bold/blink stuff?" |
|
|
754 | If no bold colour is set via \f(CW\*(C`colorBD:\*(C'\fR, bold will invert text using the |
|
|
755 | standard foreground colour. |
|
|
756 | .Sp |
|
|
757 | For the standard background colour, blinking will actually make the |
|
|
758 | text blink when compiled with \f(CW\*(C`\-\-enable\-blinking\*(C'\fR. with standard |
|
|
759 | colours. Without \f(CW\*(C`\-\-enable\-blinking\*(C'\fR, the blink attribute will be |
|
|
760 | ignored. |
|
|
761 | .Sp |
|
|
762 | On \s-1ANSI\s0 colours, bold/blink attributes are used to set high-intensity |
|
|
763 | foreground/background colors. |
|
|
764 | .Sp |
|
|
765 | color0\-7 are the low-intensity colors. |
|
|
766 | .Sp |
|
|
767 | color8\-15 are the corresponding high-intensity colors. |
|
|
768 | .IP "I don't like the screen colors. How do I change them?" 4 |
|
|
769 | .IX Item "I don't like the screen colors. How do I change them?" |
|
|
770 | You can change the screen colors at run-time using \fI~/.Xdefaults\fR |
|
|
771 | resources (or as long\-options). |
|
|
772 | .Sp |
|
|
773 | Here are values that are supposed to resemble a \s-1VGA\s0 screen, |
|
|
774 | including the murky brown that passes for low-intensity yellow: |
|
|
775 | .Sp |
|
|
776 | .Vb 8 |
|
|
777 | \& URxvt.color0: #000000 |
|
|
778 | \& URxvt.color1: #A80000 |
|
|
779 | \& URxvt.color2: #00A800 |
|
|
780 | \& URxvt.color3: #A8A800 |
|
|
781 | \& URxvt.color4: #0000A8 |
|
|
782 | \& URxvt.color5: #A800A8 |
|
|
783 | \& URxvt.color6: #00A8A8 |
|
|
784 | \& URxvt.color7: #A8A8A8 |
|
|
785 | .Ve |
|
|
786 | .Sp |
|
|
787 | .Vb 8 |
|
|
788 | \& URxvt.color8: #000054 |
|
|
789 | \& URxvt.color9: #FF0054 |
|
|
790 | \& URxvt.color10: #00FF54 |
|
|
791 | \& URxvt.color11: #FFFF54 |
|
|
792 | \& URxvt.color12: #0000FF |
|
|
793 | \& URxvt.color13: #FF00FF |
|
|
794 | \& URxvt.color14: #00FFFF |
|
|
795 | \& URxvt.color15: #FFFFFF |
|
|
796 | .Ve |
|
|
797 | .Sp |
|
|
798 | And here is a more complete set of non-standard colors described (not by |
|
|
799 | me) as \*(L"pretty girly\*(R". |
|
|
800 | .Sp |
|
|
801 | .Vb 18 |
|
|
802 | \& URxvt.cursorColor: #dc74d1 |
|
|
803 | \& URxvt.pointerColor: #dc74d1 |
|
|
804 | \& URxvt.background: #0e0e0e |
|
|
805 | \& URxvt.foreground: #4ad5e1 |
|
|
806 | \& URxvt.color0: #000000 |
|
|
807 | \& URxvt.color8: #8b8f93 |
|
|
808 | \& URxvt.color1: #dc74d1 |
|
|
809 | \& URxvt.color9: #dc74d1 |
|
|
810 | \& URxvt.color2: #0eb8c7 |
|
|
811 | \& URxvt.color10: #0eb8c7 |
|
|
812 | \& URxvt.color3: #dfe37e |
|
|
813 | \& URxvt.color11: #dfe37e |
|
|
814 | \& URxvt.color5: #9e88f0 |
|
|
815 | \& URxvt.color13: #9e88f0 |
|
|
816 | \& URxvt.color6: #73f7ff |
|
|
817 | \& URxvt.color14: #73f7ff |
|
|
818 | \& URxvt.color7: #e1dddd |
|
|
819 | \& URxvt.color15: #e1dddd |
|
|
820 | .Ve |
|
|
821 | .IP "How can I start @@RXVT_NAME@@d in a race-free way?" 4 |
|
|
822 | .IX Item "How can I start @@RXVT_NAME@@d in a race-free way?" |
|
|
823 | Try \f(CW\*(C`@@RXVT_NAME@@d \-f \-o\*(C'\fR, which tells @@RXVT_NAME@@d to open the |
|
|
824 | display, create the listening socket and then fork. |
|
|
825 | .IP "What's with the strange Backspace/Delete key behaviour?" 4 |
|
|
826 | .IX Item "What's with the strange Backspace/Delete key behaviour?" |
|
|
827 | Assuming that the physical Backspace key corresponds to the |
|
|
828 | BackSpace keysym (not likely for Linux ... see the following |
|
|
829 | question) there are two standard values that can be used for |
|
|
830 | Backspace: \f(CW\*(C`^H\*(C'\fR and \f(CW\*(C`^?\*(C'\fR. |
|
|
831 | .Sp |
|
|
832 | Historically, either value is correct, but rxvt-unicode adopts the debian |
|
|
833 | policy of using \f(CW\*(C`^?\*(C'\fR when unsure, because it's the one only only correct |
|
|
834 | choice :). |
|
|
835 | .Sp |
|
|
836 | Rxvt-unicode tries to inherit the current stty settings and uses the value |
|
|
837 | of `erase' to guess the value for backspace. If rxvt-unicode wasn't |
|
|
838 | started from a terminal (say, from a menu or by remote shell), then the |
|
|
839 | system value of `erase', which corresponds to \s-1CERASE\s0 in <termios.h>, will |
|
|
840 | be used (which may not be the same as your stty setting). |
|
|
841 | .Sp |
|
|
842 | For starting a new rxvt\-unicode: |
|
|
843 | .Sp |
|
|
844 | .Vb 3 |
|
|
845 | \& # use Backspace = ^H |
|
|
846 | \& $ stty erase ^H |
|
|
847 | \& $ @@RXVT_NAME@@ |
|
|
848 | .Ve |
|
|
849 | .Sp |
|
|
850 | .Vb 3 |
|
|
851 | \& # use Backspace = ^? |
|
|
852 | \& $ stty erase ^? |
|
|
853 | \& $ @@RXVT_NAME@@ |
|
|
854 | .Ve |
|
|
855 | .Sp |
|
|
856 | Toggle with \f(CW\*(C`ESC [ 36 h\*(C'\fR / \f(CW\*(C`ESC [ 36 l\*(C'\fR as documented in @@RXVT_NAME@@(7). |
|
|
857 | .Sp |
|
|
858 | For an existing rxvt\-unicode: |
|
|
859 | .Sp |
|
|
860 | .Vb 3 |
|
|
861 | \& # use Backspace = ^H |
|
|
862 | \& $ stty erase ^H |
|
|
863 | \& $ echo -n "^[[36h" |
|
|
864 | .Ve |
|
|
865 | .Sp |
|
|
866 | .Vb 3 |
|
|
867 | \& # use Backspace = ^? |
|
|
868 | \& $ stty erase ^? |
|
|
869 | \& $ echo -n "^[[36l" |
|
|
870 | .Ve |
|
|
871 | .Sp |
|
|
872 | This helps satisfy some of the Backspace discrepancies that occur, but |
|
|
873 | if you use Backspace = \f(CW\*(C`^H\*(C'\fR, make sure that the termcap/terminfo value |
|
|
874 | properly reflects that. |
|
|
875 | .Sp |
|
|
876 | The Delete key is a another casualty of the ill-defined Backspace problem. |
|
|
877 | To avoid confusion between the Backspace and Delete keys, the Delete |
|
|
878 | key has been assigned an escape sequence to match the vt100 for Execute |
|
|
879 | (\f(CW\*(C`ESC [ 3 ~\*(C'\fR) and is in the supplied termcap/terminfo. |
|
|
880 | .Sp |
|
|
881 | Some other Backspace problems: |
|
|
882 | .Sp |
|
|
883 | some editors use termcap/terminfo, |
|
|
884 | some editors (vim I'm told) expect Backspace = ^H, |
|
|
885 | \&\s-1GNU\s0 Emacs (and Emacs-like editors) use ^H for help. |
|
|
886 | .Sp |
|
|
887 | Perhaps someday this will all be resolved in a consistent manner. |
|
|
888 | .IP "I don't like the key\-bindings. How do I change them?" 4 |
|
|
889 | .IX Item "I don't like the key-bindings. How do I change them?" |
|
|
890 | There are some compile-time selections available via configure. Unless |
|
|
891 | you have run \*(L"configure\*(R" with the \f(CW\*(C`\-\-disable\-resources\*(C'\fR option you can |
|
|
892 | use the `keysym' resource to alter the keystrings associated with keysyms. |
|
|
893 | .Sp |
|
|
894 | Here's an example for a URxvt session started using \f(CW\*(C`@@RXVT_NAME@@ \-name URxvt\*(C'\fR |
|
|
895 | .Sp |
|
|
896 | .Vb 20 |
|
|
897 | \& URxvt.keysym.Home: \e033[1~ |
|
|
898 | \& URxvt.keysym.End: \e033[4~ |
|
|
899 | \& URxvt.keysym.C-apostrophe: \e033<C-'> |
|
|
900 | \& URxvt.keysym.C-slash: \e033<C-/> |
|
|
901 | \& URxvt.keysym.C-semicolon: \e033<C-;> |
|
|
902 | \& URxvt.keysym.C-grave: \e033<C-`> |
|
|
903 | \& URxvt.keysym.C-comma: \e033<C-,> |
|
|
904 | \& URxvt.keysym.C-period: \e033<C-.> |
|
|
905 | \& URxvt.keysym.C-0x60: \e033<C-`> |
|
|
906 | \& URxvt.keysym.C-Tab: \e033<C-Tab> |
|
|
907 | \& URxvt.keysym.C-Return: \e033<C-Return> |
|
|
908 | \& URxvt.keysym.S-Return: \e033<S-Return> |
|
|
909 | \& URxvt.keysym.S-space: \e033<S-Space> |
|
|
910 | \& URxvt.keysym.M-Up: \e033<M-Up> |
|
|
911 | \& URxvt.keysym.M-Down: \e033<M-Down> |
|
|
912 | \& URxvt.keysym.M-Left: \e033<M-Left> |
|
|
913 | \& URxvt.keysym.M-Right: \e033<M-Right> |
|
|
914 | \& URxvt.keysym.M-C-0: list \e033<M-C- 0123456789 > |
|
|
915 | \& URxvt.keysym.M-C-a: list \e033<M-C- abcdefghijklmnopqrstuvwxyz > |
|
|
916 | \& URxvt.keysym.F12: command:\e033]701;zh_CN.GBK\e007 |
|
|
917 | .Ve |
|
|
918 | .Sp |
|
|
919 | See some more examples in the documentation for the \fBkeysym\fR resource. |
|
|
920 | .IP "I'm using keyboard model \s-1XXX\s0 that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following mappings that rxvt-unicode doesn't recognize." 4 |
|
|
921 | .IX Item "I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following mappings that rxvt-unicode doesn't recognize." |
|
|
922 | .Vb 6 |
|
|
923 | \& KP_Insert == Insert |
|
|
924 | \& F22 == Print |
|
|
925 | \& F27 == Home |
|
|
926 | \& F29 == Prior |
|
|
927 | \& F33 == End |
|
|
928 | \& F35 == Next |
|
|
929 | .Ve |
|
|
930 | .Sp |
|
|
931 | Rather than have rxvt-unicode try to accommodate all the various possible |
|
|
932 | keyboard mappings, it is better to use `xmodmap' to remap the keys as |
|
|
933 | required for your particular machine. |
|
|
934 | .IP "How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc." 4 |
|
|
935 | .IX Item "How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc." |
|
|
936 | rxvt and rxvt-unicode always export the variable \*(L"\s-1COLORTERM\s0\*(R", so you can |
|
|
937 | check and see if that is set. Note that several programs, \s-1JED\s0, slrn, |
|
|
938 | Midnight Commander automatically check this variable to decide whether or |
|
|
939 | not to use color. |
|
|
940 | .IP "How do I set the correct, full \s-1IP\s0 address for the \s-1DISPLAY\s0 variable?" 4 |
|
|
941 | .IX Item "How do I set the correct, full IP address for the DISPLAY variable?" |
|
|
942 | If you've compiled rxvt-unicode with \s-1DISPLAY_IS_IP\s0 and have enabled |
|
|
943 | insecure mode then it is possible to use the following shell script |
|
|
944 | snippets to correctly set the display. If your version of rxvt-unicode |
|
|
945 | wasn't also compiled with \s-1ESCZ_ANSWER\s0 (as assumed in these snippets) then |
|
|
946 | the \s-1COLORTERM\s0 variable can be used to distinguish rxvt-unicode from a |
|
|
947 | regular xterm. |
|
|
948 | .Sp |
|
|
949 | Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script |
|
|
950 | snippets: |
|
|
951 | .Sp |
|
|
952 | .Vb 12 |
|
|
953 | \& # Bourne/Korn/POSIX family of shells: |
|
|
954 | \& [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know |
|
|
955 | \& if [ ${TERM:-foo} = xterm ]; then |
|
|
956 | \& stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not |
|
|
957 | \& echo -n '^[Z' |
|
|
958 | \& read term_id |
|
|
959 | \& stty icanon echo |
|
|
960 | \& if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then |
|
|
961 | \& echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string |
|
|
962 | \& read DISPLAY # set it in our local shell |
|
|
963 | \& fi |
|
|
964 | \& fi |
|
|
965 | .Ve |
|
|
966 | .IP "How do I compile the manual pages for myself?" 4 |
|
|
967 | .IX Item "How do I compile the manual pages for myself?" |
|
|
968 | You need to have a recent version of perl installed as \fI/usr/bin/perl\fR, |
|
|
969 | one that comes with \fIpod2man\fR, \fIpod2text\fR and \fIpod2html\fR. Then go to |
|
|
970 | the doc subdirectory and enter \f(CW\*(C`make alldoc\*(C'\fR. |
|
|
971 | .IP "My question isn't answered here, can I ask a human?" 4 |
|
|
972 | .IX Item "My question isn't answered here, can I ask a human?" |
|
|
973 | Before sending me mail, you could go to \s-1IRC:\s0 \f(CW\*(C`irc.freenode.net\*(C'\fR, |
|
|
974 | channel \f(CW\*(C`#rxvt\-unicode\*(C'\fR has some rxvt-unicode enthusiasts that might be |
|
|
975 | interested in learning about new and exciting problems (but not FAQs :). |
|
|
976 | .SH "RXVT TECHNICAL REFERENCE" |
1319 | .SH "RXVT-UNICODE TECHNICAL REFERENCE" |
977 | .IX Header "RXVT TECHNICAL REFERENCE" |
1320 | .IX Header "RXVT-UNICODE TECHNICAL REFERENCE" |
978 | .SH "DESCRIPTION" |
|
|
979 | .IX Header "DESCRIPTION" |
|
|
980 | The rest of this document describes various technical aspects of |
1321 | The rest of this document describes various technical aspects of |
981 | \&\fBrxvt-unicode\fR. First the description of supported command sequences, |
1322 | \&\fBrxvt-unicode\fR. First the description of supported command sequences, |
982 | followed by menu and pixmap support and last by a description of all |
1323 | followed by pixmap support and last by a description of all features |
983 | features selectable at \f(CW\*(C`configure\*(C'\fR time. |
1324 | selectable at \f(CW\*(C`configure\*(C'\fR time. |
984 | .SH "Definitions" |
1325 | .Sh "Definitions" |
985 | .IX Header "Definitions" |
1326 | .IX Subsection "Definitions" |
986 | .ie n .IP "\fB\fB""c""\fB\fR" 4 |
1327 | .ie n .IP "\fB\fB""c""\fB\fR" 4 |
987 | .el .IP "\fB\f(CBc\fB\fR" 4 |
1328 | .el .IP "\fB\f(CBc\fB\fR" 4 |
988 | .IX Item "c" |
1329 | .IX Item "c" |
989 | The literal character c. |
1330 | The literal character c. |
990 | .ie n .IP "\fB\fB""C""\fB\fR" 4 |
1331 | .ie n .IP "\fB\fB""C""\fB\fR" 4 |
… | |
… | |
1003 | parameters, separated by \f(CW\*(C`;\*(C'\fR character(s). |
1344 | parameters, separated by \f(CW\*(C`;\*(C'\fR character(s). |
1004 | .ie n .IP "\fB\fB""Pt""\fB\fR" 4 |
1345 | .ie n .IP "\fB\fB""Pt""\fB\fR" 4 |
1005 | .el .IP "\fB\f(CBPt\fB\fR" 4 |
1346 | .el .IP "\fB\f(CBPt\fB\fR" 4 |
1006 | .IX Item "Pt" |
1347 | .IX Item "Pt" |
1007 | A text parameter composed of printable characters. |
1348 | A text parameter composed of printable characters. |
1008 | .SH "Values" |
1349 | .Sh "Values" |
1009 | .IX Header "Values" |
1350 | .IX Subsection "Values" |
1010 | .ie n .IP "\fB\fB""ENQ""\fB\fR" 4 |
1351 | .ie n .IP "\fB\fB""ENQ""\fB\fR" 4 |
1011 | .el .IP "\fB\f(CBENQ\fB\fR" 4 |
1352 | .el .IP "\fB\f(CBENQ\fB\fR" 4 |
1012 | .IX Item "ENQ" |
1353 | .IX Item "ENQ" |
1013 | Enquiry (Ctrl\-E) = Send Device Attributes (\s-1DA\s0) |
1354 | Enquiry (Ctrl\-E) = Send Device Attributes (\s-1DA\s0) |
1014 | request attributes from terminal. See \fB\f(CB\*(C`ESC [ Ps c\*(C'\fB\fR. |
1355 | request attributes from terminal. See \fB\f(CB\*(C`ESC [ Ps c\*(C'\fB\fR. |
… | |
… | |
1052 | Switch to Standard Character Set |
1393 | Switch to Standard Character Set |
1053 | .ie n .IP "\fB\fB""SPC""\fB\fR" 4 |
1394 | .ie n .IP "\fB\fB""SPC""\fB\fR" 4 |
1054 | .el .IP "\fB\f(CBSPC\fB\fR" 4 |
1395 | .el .IP "\fB\f(CBSPC\fB\fR" 4 |
1055 | .IX Item "SPC" |
1396 | .IX Item "SPC" |
1056 | Space Character |
1397 | Space Character |
1057 | .SH "Escape Sequences" |
1398 | .Sh "Escape Sequences" |
1058 | .IX Header "Escape Sequences" |
1399 | .IX Subsection "Escape Sequences" |
1059 | .ie n .IP "\fB\fB""ESC # 8""\fB\fR" 4 |
1400 | .ie n .IP "\fB\fB""ESC # 8""\fB\fR" 4 |
1060 | .el .IP "\fB\f(CBESC # 8\fB\fR" 4 |
1401 | .el .IP "\fB\f(CBESC # 8\fB\fR" 4 |
1061 | .IX Item "ESC # 8" |
1402 | .IX Item "ESC # 8" |
1062 | \&\s-1DEC\s0 Screen Alignment Test (\s-1DECALN\s0) |
1403 | \&\s-1DEC\s0 Screen Alignment Test (\s-1DECALN\s0) |
1063 | .ie n .IP "\fB\fB""ESC 7""\fB\fR" 4 |
1404 | .ie n .IP "\fB\fB""ESC 7""\fB\fR" 4 |
… | |
… | |
1156 | .TE |
1497 | .TE |
1157 | |
1498 | |
1158 | .PP |
1499 | .PP |
1159 | |
1500 | |
1160 | .IX Xref "CSI" |
1501 | .IX Xref "CSI" |
1161 | .SH "CSI (Command Sequence Introducer) Sequences" |
1502 | .Sh "\s-1CSI\s0 (Command Sequence Introducer) Sequences" |
1162 | .IX Header "CSI (Command Sequence Introducer) Sequences" |
1503 | .IX Subsection "CSI (Command Sequence Introducer) Sequences" |
1163 | .ie n .IP "\fB\fB""ESC [ Ps @""\fB\fR" 4 |
1504 | .ie n .IP "\fB\fB""ESC [ Ps @""\fB\fR" 4 |
1164 | .el .IP "\fB\f(CBESC [ Ps @\fB\fR" 4 |
1505 | .el .IP "\fB\f(CBESC [ Ps @\fB\fR" 4 |
1165 | .IX Item "ESC [ Ps @" |
1506 | .IX Item "ESC [ Ps @" |
1166 | Insert \fB\f(CB\*(C`Ps\*(C'\fB\fR (Blank) Character(s) [default: 1] (\s-1ICH\s0) |
1507 | Insert \fB\f(CB\*(C`Ps\*(C'\fB\fR (Blank) Character(s) [default: 1] (\s-1ICH\s0) |
1167 | .IX Xref "ESCOBPsA" |
1508 | .IX Xref "ESCOBPsA" |
… | |
… | |
1430 | .IX Item "ESC [ Ps x" |
1771 | .IX Item "ESC [ Ps x" |
1431 | Request Terminal Parameters (\s-1DECREQTPARM\s0) |
1772 | Request Terminal Parameters (\s-1DECREQTPARM\s0) |
1432 | .PP |
1773 | .PP |
1433 | |
1774 | |
1434 | .IX Xref "PrivateModes" |
1775 | .IX Xref "PrivateModes" |
1435 | .SH "DEC Private Modes" |
1776 | .Sh "\s-1DEC\s0 Private Modes" |
1436 | .IX Header "DEC Private Modes" |
1777 | .IX Subsection "DEC Private Modes" |
1437 | .ie n .IP "\fB\fB""ESC [ ? Pm h""\fB\fR" 4 |
1778 | .ie n .IP "\fB\fB""ESC [ ? Pm h""\fB\fR" 4 |
1438 | .el .IP "\fB\f(CBESC [ ? Pm h\fB\fR" 4 |
1779 | .el .IP "\fB\f(CBESC [ ? Pm h\fB\fR" 4 |
1439 | .IX Item "ESC [ ? Pm h" |
1780 | .IX Item "ESC [ ? Pm h" |
1440 | \&\s-1DEC\s0 Private Mode Set (\s-1DECSET\s0) |
1781 | \&\s-1DEC\s0 Private Mode Set (\s-1DECSET\s0) |
1441 | .ie n .IP "\fB\fB""ESC [ ? Pm l""\fB\fR" 4 |
1782 | .ie n .IP "\fB\fB""ESC [ ? Pm l""\fB\fR" 4 |
… | |
… | |
1535 | l l . |
1876 | l l . |
1536 | h Send Mouse X & Y on button press. |
1877 | h Send Mouse X & Y on button press. |
1537 | l No mouse reporting. |
1878 | l No mouse reporting. |
1538 | .TE |
1879 | .TE |
1539 | |
1880 | |
1540 | .ie n .IP "\fB\fB""Ps = 10""\fB\fR (\fBrxvt\fR)" 4 |
|
|
1541 | .el .IP "\fB\f(CBPs = 10\fB\fR (\fBrxvt\fR)" 4 |
|
|
1542 | .IX Item "Ps = 10 (rxvt)" |
|
|
1543 | .TS |
|
|
1544 | l l . |
|
|
1545 | h menuBar visible |
|
|
1546 | l menuBar invisible |
|
|
1547 | .TE |
|
|
1548 | |
|
|
1549 | .ie n .IP "\fB\fB""Ps = 25""\fB\fR" 4 |
1881 | .ie n .IP "\fB\fB""Ps = 25""\fB\fR" 4 |
1550 | .el .IP "\fB\f(CBPs = 25\fB\fR" 4 |
1882 | .el .IP "\fB\f(CBPs = 25\fB\fR" 4 |
1551 | .IX Item "Ps = 25" |
1883 | .IX Item "Ps = 25" |
1552 | .TS |
1884 | .TS |
1553 | l l . |
1885 | l l . |
… | |
… | |
1717 | .RE |
2049 | .RE |
1718 | .PD |
2050 | .PD |
1719 | .PP |
2051 | .PP |
1720 | |
2052 | |
1721 | .IX Xref "XTerm" |
2053 | .IX Xref "XTerm" |
1722 | .SH "XTerm Operating System Commands" |
2054 | .Sh "XTerm Operating System Commands" |
1723 | .IX Header "XTerm Operating System Commands" |
2055 | .IX Subsection "XTerm Operating System Commands" |
1724 | .ie n .IP "\fB\fB""ESC ] Ps;Pt ST""\fB\fR" 4 |
2056 | .ie n .IP "\fB\fB""ESC ] Ps;Pt ST""\fB\fR" 4 |
1725 | .el .IP "\fB\f(CBESC ] Ps;Pt ST\fB\fR" 4 |
2057 | .el .IP "\fB\f(CBESC ] Ps;Pt ST\fB\fR" 4 |
1726 | .IX Item "ESC ] Ps;Pt ST" |
2058 | .IX Item "ESC ] Ps;Pt ST" |
1727 | Set XTerm Parameters. 8\-bit \s-1ST:\s0 0x9c, 7\-bit \s-1ST\s0 sequence: \s-1ESC\s0 \e (0x1b, |
2059 | Set XTerm Parameters. 8\-bit \s-1ST:\s0 0x9c, 7\-bit \s-1ST\s0 sequence: \s-1ESC\s0 \e (0x1b, |
1728 | 0x5c), backwards compatible terminator \s-1BEL\s0 (0x07) is also accepted. any |
2060 | 0x5c), backwards compatible terminator \s-1BEL\s0 (0x07) is also accepted. any |
… | |
… | |
1737 | Ps = 10 Change colour of text foreground to Pt (NB: may change in future) |
2069 | Ps = 10 Change colour of text foreground to Pt (NB: may change in future) |
1738 | Ps = 11 Change colour of text background to Pt (NB: may change in future) |
2070 | Ps = 11 Change colour of text background to Pt (NB: may change in future) |
1739 | Ps = 12 Change colour of text cursor foreground to Pt |
2071 | Ps = 12 Change colour of text cursor foreground to Pt |
1740 | Ps = 13 Change colour of mouse foreground to Pt |
2072 | Ps = 13 Change colour of mouse foreground to Pt |
1741 | Ps = 17 Change colour of highlight characters to Pt |
2073 | Ps = 17 Change colour of highlight characters to Pt |
1742 | Ps = 18 Change colour of bold characters to Pt |
2074 | Ps = 18 Change colour of bold characters to Pt [deprecated, see 706] |
1743 | Ps = 19 Change colour of underlined characters to Pt |
2075 | Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707] |
1744 | Ps = 20 Change default background to Pt |
2076 | Ps = 20 Change background pixmap parameters (see section XPM) (Compile XPM). |
1745 | Ps = 39 Change default foreground colour to Pt. |
2077 | Ps = 39 Change default foreground colour to Pt. |
1746 | Ps = 46 Change Log File to Pt unimplemented |
2078 | Ps = 46 Change Log File to Pt unimplemented |
1747 | Ps = 49 Change default background colour to Pt. |
2079 | Ps = 49 Change default background colour to Pt. |
1748 | 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 |
2080 | 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 |
1749 | Ps = 55 Log all scrollback buffer and all of screen to Pt |
2081 | Ps = 55 Log all scrollback buffer and all of screen to Pt |
1750 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). |
2082 | Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). |
1751 | Ps = 703 Menubar command Pt (Compile menubar). |
2083 | Ps = 702 Request version if Pt is ?, returning rxvt-unicode, the resource name, the major and minor version numbers, e.g. ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST. |
1752 | Ps = 704 Change colour of italic characters to Pt |
2084 | Ps = 704 Change colour of italic characters to Pt |
1753 | Ps = 705 Change background pixmap tint colour to Pt (Compile transparency). |
2085 | Ps = 705 Change background pixmap tint colour to Pt (Compile transparency). |
|
|
2086 | Ps = 706 Change colour of bold characters to Pt |
|
|
2087 | Ps = 707 Change colour of underlined characters to Pt |
1754 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
2088 | Ps = 710 Set normal fontset to Pt. Same as Ps = 50. |
1755 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). |
2089 | Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). |
1756 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
2090 | Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1757 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
2091 | Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). |
1758 | Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
2092 | Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
1759 | Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
2093 | Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). |
1760 | Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl). |
2094 | Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl). |
1761 | .TE |
2095 | .TE |
1762 | |
2096 | |
1763 | .PP |
|
|
1764 | |
|
|
1765 | .IX Xref "menuBar" |
|
|
1766 | .SH "menuBar" |
|
|
1767 | .IX Header "menuBar" |
|
|
1768 | \&\fBThe exact syntax used is \f(BIalmost\fB solidified.\fR |
|
|
1769 | In the menus, \fB\s-1DON\s0'T\fR try to use menuBar commands that add or remove a |
|
|
1770 | menuBar. |
|
|
1771 | .PP |
|
|
1772 | Note that in all of the commands, the \fB\f(BI/path/\fB\fR \fIcannot\fR be |
|
|
1773 | omitted: use \fB./\fR to specify a menu relative to the current menu. |
|
|
1774 | .Sh "Overview of menuBar operation" |
|
|
1775 | .IX Subsection "Overview of menuBar operation" |
|
|
1776 | For the menuBar XTerm escape sequence \f(CW\*(C`ESC ] 703 ; Pt ST\*(C'\fR, the syntax |
|
|
1777 | of \f(CW\*(C`Pt\*(C'\fR can be used for a variety of tasks: |
|
|
1778 | .PP |
|
|
1779 | At the top level is the current menuBar which is a member of a circular |
|
|
1780 | linked-list of other such menuBars. |
|
|
1781 | .PP |
|
|
1782 | The menuBar acts as a parent for the various drop-down menus, which in |
|
|
1783 | turn, may have labels, separator lines, menuItems and subMenus. |
|
|
1784 | .PP |
|
|
1785 | The menuItems are the useful bits: you can use them to mimic keyboard |
|
|
1786 | input or even to send text or escape sequences back to rxvt. |
|
|
1787 | .PP |
|
|
1788 | The menuBar syntax is intended to provide a simple yet robust method of |
|
|
1789 | constructing and manipulating menus and navigating through the |
|
|
1790 | menuBars. |
|
|
1791 | .PP |
|
|
1792 | The first step is to use the tag \fB[menu:\f(BIname\fB]\fR which creates |
|
|
1793 | the menuBar called \fIname\fR and allows access. You may now or menus, |
|
|
1794 | subMenus, and menuItems. Finally, use the tag \fB[done]\fR to set the |
|
|
1795 | menuBar access as \fBreadonly\fR to prevent accidental corruption of the |
|
|
1796 | menus. To re-access the current menuBar for alterations, use the tag |
|
|
1797 | \&\fB[menu]\fR, make the alterations and then use \fB[done]\fR |
|
|
1798 | .PP |
|
|
1799 | |
|
|
1800 | .IX Xref "menuBarCommands" |
|
|
1801 | .Sh "Commands" |
|
|
1802 | .IX Subsection "Commands" |
|
|
1803 | .IP "\fB[menu:+\f(BIname\fB]\fR" 4 |
|
|
1804 | .IX Item "[menu:+name]" |
|
|
1805 | access the named menuBar for creation or alteration. If a new menuBar |
|
|
1806 | is created, it is called \fIname\fR (max of 15 chars) and the current |
|
|
1807 | menuBar is pushed onto the stack |
|
|
1808 | .IP "\fB[menu]\fR" 4 |
|
|
1809 | .IX Item "[menu]" |
|
|
1810 | access the current menuBar for alteration |
|
|
1811 | .IP "\fB[title:+\f(BIstring\fB]\fR" 4 |
|
|
1812 | .IX Item "[title:+string]" |
|
|
1813 | set the current menuBar's title to \fIstring\fR, which may contain the |
|
|
1814 | following format specifiers: |
|
|
1815 | .Sp |
|
|
1816 | .Vb 3 |
|
|
1817 | \& B<%n> rxvt name (as per the B<-name> command-line option) |
|
|
1818 | \& B<%v> rxvt version |
|
|
1819 | \& B<%%> literal B<%> character |
|
|
1820 | .Ve |
|
|
1821 | .IP "\fB[done]\fR" 4 |
|
|
1822 | .IX Item "[done]" |
|
|
1823 | set menuBar access as \fBreadonly\fR. |
|
|
1824 | End-of-file tag for \fB[read:+\f(BIfile\fB]\fR operations. |
|
|
1825 | .IP "\fB[read:+\f(BIfile\fB]\fR" 4 |
|
|
1826 | .IX Item "[read:+file]" |
|
|
1827 | read menu commands directly from \fIfile\fR (extension \*(L".menu\*(R" will be |
|
|
1828 | appended if required.) Start reading at a line with \fB[menu]\fR or \fB[menu:+\f(BIname\fB\fR and continuing until \fB[done]\fR is encountered. |
|
|
1829 | .Sp |
|
|
1830 | Blank and comment lines (starting with \fB#\fR) are ignored. Actually, |
|
|
1831 | since any invalid menu commands are also ignored, almost anything could |
|
|
1832 | be construed as a comment line, but this may be tightened up in the |
|
|
1833 | future ... so don't count on it!. |
|
|
1834 | .IP "\fB[read:+\f(BIfile\fB;+\f(BIname\fB]\fR" 4 |
|
|
1835 | .IX Item "[read:+file;+name]" |
|
|
1836 | The same as \fB[read:+\f(BIfile\fB]\fR, but start reading at a line with |
|
|
1837 | \&\fB[menu:+\f(BIname\fB]\fR and continuing until \fB[done:+\f(BIname\fB]\fR or |
|
|
1838 | \&\fB[done]\fR is encountered. |
|
|
1839 | .IP "\fB[dump]\fR" 4 |
|
|
1840 | .IX Item "[dump]" |
|
|
1841 | dump all menuBars to the file \fB/tmp/rxvt\-PID\fR in a format suitable for |
|
|
1842 | later rereading. |
|
|
1843 | .IP "\fB[rm:name]\fR" 4 |
|
|
1844 | .IX Item "[rm:name]" |
|
|
1845 | remove the named menuBar |
|
|
1846 | .IP "\fB[rm] [rm:]\fR" 4 |
|
|
1847 | .IX Item "[rm] [rm:]" |
|
|
1848 | remove the current menuBar |
|
|
1849 | .IP "\fB[rm*] [rm:*]\fR" 4 |
|
|
1850 | .IX Item "[rm*] [rm:*]" |
|
|
1851 | remove all menuBars |
|
|
1852 | .IP "\fB[swap]\fR" 4 |
|
|
1853 | .IX Item "[swap]" |
|
|
1854 | swap the top two menuBars |
|
|
1855 | .IP "\fB[prev]\fR" 4 |
|
|
1856 | .IX Item "[prev]" |
|
|
1857 | access the previous menuBar |
|
|
1858 | .IP "\fB[next]\fR" 4 |
|
|
1859 | .IX Item "[next]" |
|
|
1860 | access the next menuBar |
|
|
1861 | .IP "\fB[show]\fR" 4 |
|
|
1862 | .IX Item "[show]" |
|
|
1863 | Enable display of the menuBar |
|
|
1864 | .IP "\fB[hide]\fR" 4 |
|
|
1865 | .IX Item "[hide]" |
|
|
1866 | Disable display of the menuBar |
|
|
1867 | .IP "\fB[pixmap:+\f(BIname\fB]\fR" 4 |
|
|
1868 | .IX Item "[pixmap:+name]" |
|
|
1869 | .PD 0 |
|
|
1870 | .IP "\fB[pixmap:+\f(BIname\fB;\f(BIscaling\fB]\fR" 4 |
|
|
1871 | .IX Item "[pixmap:+name;scaling]" |
|
|
1872 | .PD |
|
|
1873 | (set the background pixmap globally |
|
|
1874 | .Sp |
|
|
1875 | \&\fBA Future implementation \f(BImay\fB make this local to the menubar\fR) |
|
|
1876 | .IP "\fB[:+\f(BIcommand\fB:]\fR" 4 |
|
|
1877 | .IX Item "[:+command:]" |
|
|
1878 | ignore the menu readonly status and issue a \fIcommand\fR to or a menu or |
|
|
1879 | menuitem or change the ; a useful shortcut for setting the quick arrows |
|
|
1880 | from a menuBar. |
|
|
1881 | .PP |
|
|
1882 | |
|
|
1883 | .IX Xref "menuBarAdd" |
|
|
1884 | .Sh "Adding and accessing menus" |
|
|
1885 | .IX Subsection "Adding and accessing menus" |
|
|
1886 | The following commands may also be \fB+\fR prefixed. |
|
|
1887 | .IP "\fB/+\fR" 4 |
|
|
1888 | .IX Item "/+" |
|
|
1889 | access menuBar top level |
|
|
1890 | .IP "\fB./+\fR" 4 |
|
|
1891 | .IX Item "./+" |
|
|
1892 | access current menu level |
|
|
1893 | .IP "\fB../+\fR" 4 |
|
|
1894 | .IX Item "../+" |
|
|
1895 | access parent menu (1 level up) |
|
|
1896 | .IP "\fB../../\fR" 4 |
|
|
1897 | .IX Item "../../" |
|
|
1898 | access parent menu (multiple levels up) |
|
|
1899 | .IP "\fB\f(BI/path/\fBmenu\fR" 4 |
|
|
1900 | .IX Item "/path/menu" |
|
|
1901 | add/access menu |
|
|
1902 | .IP "\fB\f(BI/path/\fBmenu/*\fR" 4 |
|
|
1903 | .IX Item "/path/menu/*" |
|
|
1904 | add/access menu and clear it if it exists |
|
|
1905 | .IP "\fB\f(BI/path/\fB{\-}\fR" 4 |
|
|
1906 | .IX Item "/path/{-}" |
|
|
1907 | add separator |
|
|
1908 | .IP "\fB\f(BI/path/\fB{item}\fR" 4 |
|
|
1909 | .IX Item "/path/{item}" |
|
|
1910 | add \fBitem\fR as a label |
|
|
1911 | .IP "\fB\f(BI/path/\fB{item} action\fR" 4 |
|
|
1912 | .IX Item "/path/{item} action" |
|
|
1913 | add/alter \fImenuitem\fR with an associated \fIaction\fR |
|
|
1914 | .IP "\fB\f(BI/path/\fB{item}{right\-text}\fR" 4 |
|
|
1915 | .IX Item "/path/{item}{right-text}" |
|
|
1916 | add/alter \fImenuitem\fR with \fBright-text\fR as the right-justified text |
|
|
1917 | and as the associated \fIaction\fR |
|
|
1918 | .IP "\fB\f(BI/path/\fB{item}{rtext} action\fR" 4 |
|
|
1919 | .IX Item "/path/{item}{rtext} action" |
|
|
1920 | add/alter \fImenuitem\fR with an associated \fIaction\fR and with \fBrtext\fR as |
|
|
1921 | the right-justified text. |
|
|
1922 | .IP "Special characters in \fIaction\fR must be backslash\-escaped:" 4 |
|
|
1923 | .IX Item "Special characters in action must be backslash-escaped:" |
|
|
1924 | \&\fB\ea \eb \eE \ee \en \er \et \eoctal\fR |
|
|
1925 | .IP "or in control-character notation:" 4 |
|
|
1926 | .IX Item "or in control-character notation:" |
|
|
1927 | \&\fB^@, ^A .. ^Z .. ^_, ^?\fR |
|
|
1928 | .PP |
|
|
1929 | To send a string starting with a \fB\s-1NUL\s0\fR (\fB^@\fR) character to the |
|
|
1930 | program, start \fIaction\fR with a pair of \fB\s-1NUL\s0\fR characters (\fB^@^@\fR), |
|
|
1931 | the first of which will be stripped off and the balance directed to the |
|
|
1932 | program. Otherwise if \fIaction\fR begins with \fB\s-1NUL\s0\fR followed by |
|
|
1933 | non\-+\fB\s-1NUL\s0\fR characters, the leading \fB\s-1NUL\s0\fR is stripped off and the |
|
|
1934 | balance is sent back to rxvt. |
|
|
1935 | .PP |
|
|
1936 | As a convenience for the many Emacs-type editors, \fIaction\fR may start |
|
|
1937 | with \fBM\-\fR (eg, \fBM\-$\fR is equivalent to \fB\eE$\fR) and a \fB\s-1CR\s0\fR will be |
|
|
1938 | appended if missed from \fBM\-x\fR commands. |
|
|
1939 | .PP |
|
|
1940 | As a convenience for issuing XTerm \fB\s-1ESC\s0 ]\fR sequences from a menubar (or |
|
|
1941 | quick arrow), a \fB\s-1BEL\s0\fR (\fB^G\fR) will be appended if needed. |
|
|
1942 | .IP "For example," 4 |
|
|
1943 | .IX Item "For example," |
|
|
1944 | \&\fBM\-xapropos\fR is equivalent to \fB\eExapropos\er\fR |
|
|
1945 | .IP "and" 4 |
|
|
1946 | .IX Item "and" |
|
|
1947 | \&\fB\eE]703;mona;100\fR is equivalent to \fB\eE]703;mona;100\ea\fR |
|
|
1948 | .PP |
|
|
1949 | The option \fB{\f(BIright-rtext\fB}\fR will be right\-justified. In the |
|
|
1950 | absence of a specified action, this text will be used as the \fIaction\fR |
|
|
1951 | as well. |
|
|
1952 | .IP "For example," 4 |
|
|
1953 | .IX Item "For example," |
|
|
1954 | \&\fB/File/{Open}{^X^F}\fR is equivalent to \fB/File/{Open}{^X^F} ^X^F\fR |
|
|
1955 | .PP |
|
|
1956 | The left label \fIis\fR necessary, since it's used for matching, but |
|
|
1957 | implicitly hiding the left label (by using same name for both left and |
|
|
1958 | right labels), or explicitly hiding the left label (by preceeding it |
|
|
1959 | with a dot), makes it possible to have right-justified text only. |
|
|
1960 | .IP "For example," 4 |
|
|
1961 | .IX Item "For example," |
|
|
1962 | \&\fB/File/{Open}{Open} Open-File-Action\fR |
|
|
1963 | .IP "or hiding it" 4 |
|
|
1964 | .IX Item "or hiding it" |
|
|
1965 | \&\fB/File/{.anylabel}{Open} Open-File-Action\fR |
|
|
1966 | .PP |
|
|
1967 | |
|
|
1968 | .IX Xref "menuBarRemove" |
|
|
1969 | .Sh "Removing menus" |
|
|
1970 | .IX Subsection "Removing menus" |
|
|
1971 | .IP "\fB\-/*+\fR" 4 |
|
|
1972 | .IX Item "-/*+" |
|
|
1973 | remove all menus from the menuBar, the same as \fB[clear]\fR |
|
|
1974 | .IP "\fB\-+\f(BI/path\fBmenu+\fR" 4 |
|
|
1975 | .IX Item "-+/pathmenu+" |
|
|
1976 | remove menu |
|
|
1977 | .IP "\fB\-+\f(BI/path\fB{item}+\fR" 4 |
|
|
1978 | .IX Item "-+/path{item}+" |
|
|
1979 | remove item |
|
|
1980 | .IP "\fB\-+\f(BI/path\fB{\-}\fR" 4 |
|
|
1981 | .IX Item "-+/path{-}" |
|
|
1982 | remove separator) |
|
|
1983 | .IP "\fB\-/path/menu/*\fR" 4 |
|
|
1984 | .IX Item "-/path/menu/*" |
|
|
1985 | remove all items, separators and submenus from menu |
|
|
1986 | .PP |
|
|
1987 | |
|
|
1988 | .IX Xref "menuBarArrows" |
|
|
1989 | .Sh "Quick Arrows" |
|
|
1990 | .IX Subsection "Quick Arrows" |
|
|
1991 | The menus also provide a hook for \fIquick arrows\fR to provide easier |
|
|
1992 | user access. If nothing has been explicitly set, the default is to |
|
|
1993 | emulate the curror keys. The syntax permits each arrow to be altered |
|
|
1994 | individually or all four at once without re-entering their common |
|
|
1995 | beginning/end text. For example, to explicitly associate cursor actions |
|
|
1996 | with the arrows, any of the following forms could be used: |
|
|
1997 | .IP "\fB<r>+\f(BIRight\fB\fR" 4 |
|
|
1998 | .IX Item "<r>+Right" |
|
|
1999 | .PD 0 |
|
|
2000 | .IP "\fB<l>+\f(BILeft\fB\fR" 4 |
|
|
2001 | .IX Item "<l>+Left" |
|
|
2002 | .IP "\fB<u>+\f(BIUp\fB\fR" 4 |
|
|
2003 | .IX Item "<u>+Up" |
|
|
2004 | .IP "\fB<d>+\f(BIDown\fB\fR" 4 |
|
|
2005 | .IX Item "<d>+Down" |
|
|
2006 | .PD |
|
|
2007 | Define actions for the respective arrow buttons |
|
|
2008 | .IP "\fB<b>+\f(BIBegin\fB\fR" 4 |
|
|
2009 | .IX Item "<b>+Begin" |
|
|
2010 | .PD 0 |
|
|
2011 | .IP "\fB<e>+\f(BIEnd\fB\fR" 4 |
|
|
2012 | .IX Item "<e>+End" |
|
|
2013 | .PD |
|
|
2014 | Define common beginning/end parts for \fIquick arrows\fR which used in |
|
|
2015 | conjunction with the above <r> <l> <u> <d> constructs |
|
|
2016 | .IP "For example, define arrows individually," 4 |
|
|
2017 | .IX Item "For example, define arrows individually," |
|
|
2018 | .Vb 1 |
|
|
2019 | \& <u>\eE[A |
|
|
2020 | .Ve |
|
|
2021 | .Sp |
|
|
2022 | .Vb 1 |
|
|
2023 | \& <d>\eE[B |
|
|
2024 | .Ve |
|
|
2025 | .Sp |
|
|
2026 | .Vb 1 |
|
|
2027 | \& <r>\eE[C |
|
|
2028 | .Ve |
|
|
2029 | .Sp |
|
|
2030 | .Vb 1 |
|
|
2031 | \& <l>\eE[D |
|
|
2032 | .Ve |
|
|
2033 | .IP "or all at once" 4 |
|
|
2034 | .IX Item "or all at once" |
|
|
2035 | .Vb 1 |
|
|
2036 | \& <u>\eE[AZ<><d>\eE[BZ<><r>\eE[CZ<><l>\eE[D |
|
|
2037 | .Ve |
|
|
2038 | .IP "or more compactly (factoring out common parts)" 4 |
|
|
2039 | .IX Item "or more compactly (factoring out common parts)" |
|
|
2040 | .Vb 1 |
|
|
2041 | \& <b>\eE[<u>AZ<><d>BZ<><r>CZ<><l>D |
|
|
2042 | .Ve |
|
|
2043 | .PP |
|
|
2044 | |
|
|
2045 | .IX Xref "menuBarSummary" |
|
|
2046 | .Sh "Command Summary" |
|
|
2047 | .IX Subsection "Command Summary" |
|
|
2048 | A short summary of the most \fIcommon\fR commands: |
|
|
2049 | .IP "[menu:name]" 4 |
|
|
2050 | .IX Item "[menu:name]" |
|
|
2051 | use an existing named menuBar or start a new one |
|
|
2052 | .IP "[menu]" 4 |
|
|
2053 | .IX Item "[menu]" |
|
|
2054 | use the current menuBar |
|
|
2055 | .IP "[title:string]" 4 |
|
|
2056 | .IX Item "[title:string]" |
|
|
2057 | set menuBar title |
|
|
2058 | .IP "[done]" 4 |
|
|
2059 | .IX Item "[done]" |
|
|
2060 | set menu access to readonly and, if reading from a file, signal \s-1EOF\s0 |
|
|
2061 | .IP "[done:name]" 4 |
|
|
2062 | .IX Item "[done:name]" |
|
|
2063 | if reading from a file using [read:file;name] signal \s-1EOF\s0 |
|
|
2064 | .IP "[rm:name]" 4 |
|
|
2065 | .IX Item "[rm:name]" |
|
|
2066 | remove named menuBar(s) |
|
|
2067 | .IP "[rm] [rm:]" 4 |
|
|
2068 | .IX Item "[rm] [rm:]" |
|
|
2069 | remove current menuBar |
|
|
2070 | .IP "[rm*] [rm:*]" 4 |
|
|
2071 | .IX Item "[rm*] [rm:*]" |
|
|
2072 | remove all menuBar(s) |
|
|
2073 | .IP "[swap]" 4 |
|
|
2074 | .IX Item "[swap]" |
|
|
2075 | swap top two menuBars |
|
|
2076 | .IP "[prev]" 4 |
|
|
2077 | .IX Item "[prev]" |
|
|
2078 | access the previous menuBar |
|
|
2079 | .IP "[next]" 4 |
|
|
2080 | .IX Item "[next]" |
|
|
2081 | access the next menuBar |
|
|
2082 | .IP "[show]" 4 |
|
|
2083 | .IX Item "[show]" |
|
|
2084 | map menuBar |
|
|
2085 | .IP "[hide]" 4 |
|
|
2086 | .IX Item "[hide]" |
|
|
2087 | unmap menuBar |
|
|
2088 | .IP "[pixmap;file]" 4 |
|
|
2089 | .IX Item "[pixmap;file]" |
|
|
2090 | .PD 0 |
|
|
2091 | .IP "[pixmap;file;scaling]" 4 |
|
|
2092 | .IX Item "[pixmap;file;scaling]" |
|
|
2093 | .PD |
|
|
2094 | set a background pixmap |
|
|
2095 | .IP "[read:file]" 4 |
|
|
2096 | .IX Item "[read:file]" |
|
|
2097 | .PD 0 |
|
|
2098 | .IP "[read:file;name]" 4 |
|
|
2099 | .IX Item "[read:file;name]" |
|
|
2100 | .PD |
|
|
2101 | read in a menu from a file |
|
|
2102 | .IP "[dump]" 4 |
|
|
2103 | .IX Item "[dump]" |
|
|
2104 | dump out all menuBars to /tmp/rxvt\-PID |
|
|
2105 | .IP "/" 4 |
|
|
2106 | access menuBar top level |
|
|
2107 | .IP "./" 4 |
|
|
2108 | .PD 0 |
|
|
2109 | .IP "../" 4 |
|
|
2110 | .IP "../../" 4 |
|
|
2111 | .PD |
|
|
2112 | access current or parent menu level |
|
|
2113 | .IP "/path/menu" 4 |
|
|
2114 | .IX Item "/path/menu" |
|
|
2115 | add/access menu |
|
|
2116 | .IP "/path/{\-}" 4 |
|
|
2117 | .IX Item "/path/{-}" |
|
|
2118 | add separator |
|
|
2119 | .IP "/path/{item}{rtext} action" 4 |
|
|
2120 | .IX Item "/path/{item}{rtext} action" |
|
|
2121 | add/alter menu item |
|
|
2122 | .IP "\-/*" 4 |
|
|
2123 | remove all menus from the menuBar |
|
|
2124 | .IP "\-/path/menu" 4 |
|
|
2125 | .IX Item "-/path/menu" |
|
|
2126 | remove menu items, separators and submenus from menu |
|
|
2127 | .IP "\-/path/menu" 4 |
|
|
2128 | .IX Item "-/path/menu" |
|
|
2129 | remove menu |
|
|
2130 | .IP "\-/path/{item}" 4 |
|
|
2131 | .IX Item "-/path/{item}" |
|
|
2132 | remove item |
|
|
2133 | .IP "\-/path/{\-}" 4 |
|
|
2134 | .IX Item "-/path/{-}" |
|
|
2135 | remove separator |
|
|
2136 | .IP "<b>Begin<r>Right<l>Left<u>Up<d>Down<e>End" 4 |
|
|
2137 | .IX Item "<b>Begin<r>Right<l>Left<u>Up<d>Down<e>End" |
|
|
2138 | menu quick arrows |
|
|
2139 | .SH "XPM" |
2097 | .SH "XPM" |
2140 | .IX Header "XPM" |
2098 | .IX Header "XPM" |
2141 | For the \s-1XPM\s0 XTerm escape sequence \fB\f(CB\*(C`ESC ] 20 ; Pt ST\*(C'\fB\fR then value |
2099 | For the \s-1XPM\s0 XTerm escape sequence \fB\f(CB\*(C`ESC ] 20 ; Pt ST\*(C'\fB\fR then value |
2142 | of \fB\f(CB\*(C`Pt\*(C'\fB\fR can be the name of the background pixmap followed by a |
2100 | of \fB\f(CB\*(C`Pt\*(C'\fB\fR can be the name of the background pixmap followed by a |
2143 | sequence of scaling/positioning commands separated by semi\-colons. The |
2101 | sequence of scaling/positioning commands separated by semi\-colons. The |
… | |
… | |
2213 | .TS |
2171 | .TS |
2214 | l l . |
2172 | l l . |
2215 | 4 Shift |
2173 | 4 Shift |
2216 | 8 Meta |
2174 | 8 Meta |
2217 | 16 Control |
2175 | 16 Control |
2218 | 32 Double Click (Rxvt extension) |
2176 | 32 Double Click (rxvt extension) |
2219 | .TE |
2177 | .TE |
2220 | |
2178 | |
2221 | Col = \fB\f(CB\*(C`<x> \- SPACE\*(C'\fB\fR |
2179 | Col = \fB\f(CB\*(C`<x> \- SPACE\*(C'\fB\fR |
2222 | .Sp |
2180 | .Sp |
2223 | Row = \fB\f(CB\*(C`<y> \- SPACE\*(C'\fB\fR |
2181 | Row = \fB\f(CB\*(C`<y> \- SPACE\*(C'\fB\fR |
… | |
… | |
2345 | Add support for \s-1XIM\s0 (X Input Method) protocol. This allows using |
2303 | Add support for \s-1XIM\s0 (X Input Method) protocol. This allows using |
2346 | alternative input methods (e.g. kinput2) and will also correctly |
2304 | alternative input methods (e.g. kinput2) and will also correctly |
2347 | set up the input for people using dead keys or compose keys. |
2305 | set up the input for people using dead keys or compose keys. |
2348 | .IP "\-\-enable\-unicode3 (default: off)" 4 |
2306 | .IP "\-\-enable\-unicode3 (default: off)" 4 |
2349 | .IX Item "--enable-unicode3 (default: off)" |
2307 | .IX Item "--enable-unicode3 (default: off)" |
|
|
2308 | Recommended to stay off unless you really need non-BMP characters. |
|
|
2309 | .Sp |
2350 | Enable direct support for displaying unicode codepoints above |
2310 | Enable direct support for displaying unicode codepoints above |
2351 | 65535 (the basic multilingual page). This increases storage |
2311 | 65535 (the basic multilingual page). This increases storage |
2352 | requirements per character from 2 to 4 bytes. X11 fonts do not yet |
2312 | requirements per character from 2 to 4 bytes. X11 fonts do not yet |
2353 | support these extra characters, but Xft does. |
2313 | support these extra characters, but Xft does. |
2354 | .Sp |
2314 | .Sp |
… | |
… | |
2363 | composite characters. This is required for proper viewing of text |
2323 | composite characters. This is required for proper viewing of text |
2364 | where accents are encoded as seperate unicode characters. This is |
2324 | where accents are encoded as seperate unicode characters. This is |
2365 | done by using precomposited characters when available or creating |
2325 | done by using precomposited characters when available or creating |
2366 | new pseudo-characters when no precomposed form exists. |
2326 | new pseudo-characters when no precomposed form exists. |
2367 | .Sp |
2327 | .Sp |
2368 | Without \-\-enable\-unicode3, the number of additional precomposed characters |
2328 | Without \-\-enable\-unicode3, the number of additional precomposed |
2369 | is rather limited (2048, if this is full, rxvt-unicode will use the |
2329 | characters is somewhat limited (the 6400 private use characters will be |
2370 | private use area, extending the number of combinations to 8448). With |
|
|
2371 | \&\-\-enable\-unicode3, no practical limit exists. |
2330 | (ab\-)used). With \-\-enable\-unicode3, no practical limit exists. |
2372 | .Sp |
2331 | .Sp |
2373 | This option will also enable storage (but not display) of characters |
2332 | This option will also enable storage (but not display) of characters |
2374 | beyond plane 0 (>65535) when \-\-enable\-unicode3 was not specified. |
2333 | beyond plane 0 (>65535) when \-\-enable\-unicode3 was not specified. |
2375 | .Sp |
2334 | .Sp |
2376 | The combining table also contains entries for arabic presentation forms, |
2335 | The combining table also contains entries for arabic presentation forms, |
2377 | but these are not currently used. Bug me if you want these to be used (and |
2336 | but these are not currently used. Bug me if you want these to be used (and |
2378 | tell me how these are to be used...). |
2337 | tell me how these are to be used...). |
2379 | .IP "\-\-enable\-fallback(=CLASS) (default: Rxvt)" 4 |
2338 | .IP "\-\-enable\-fallback(=CLASS) (default: Rxvt)" 4 |
2380 | .IX Item "--enable-fallback(=CLASS) (default: Rxvt)" |
2339 | .IX Item "--enable-fallback(=CLASS) (default: Rxvt)" |
2381 | When reading resource settings, also read settings for class \s-1CLASS\s0. To disable resource fallback use \-\-disable\-fallback. |
2340 | When reading resource settings, also read settings for class \s-1CLASS\s0. To |
|
|
2341 | disable resource fallback use \-\-disable\-fallback. |
2382 | .IP "\-\-with\-res\-name=NAME (default: urxvt)" 4 |
2342 | .IP "\-\-with\-res\-name=NAME (default: urxvt)" 4 |
2383 | .IX Item "--with-res-name=NAME (default: urxvt)" |
2343 | .IX Item "--with-res-name=NAME (default: urxvt)" |
2384 | Use the given name as default application name when |
2344 | Use the given name as default application name when |
2385 | reading resources. Specify \-\-with\-res\-name=rxvt to replace rxvt. |
2345 | reading resources. Specify \-\-with\-res\-name=rxvt to replace rxvt. |
2386 | .IP "\-\-with\-res\-class=CLASS /default: URxvt)" 4 |
2346 | .IP "\-\-with\-res\-class=CLASS /default: URxvt)" 4 |
… | |
… | |
2400 | .IP "\-\-enable\-lastlog (default: on)" 4 |
2360 | .IP "\-\-enable\-lastlog (default: on)" 4 |
2401 | .IX Item "--enable-lastlog (default: on)" |
2361 | .IX Item "--enable-lastlog (default: on)" |
2402 | Write user and tty to lastlog file (used by programs like |
2362 | Write user and tty to lastlog file (used by programs like |
2403 | \&\fIlastlogin\fR) at start of rxvt execution. This option requires |
2363 | \&\fIlastlogin\fR) at start of rxvt execution. This option requires |
2404 | \&\-\-enable\-utmp to also be specified. |
2364 | \&\-\-enable\-utmp to also be specified. |
2405 | .IP "\-\-enable\-xpm\-background (default: off)" 4 |
2365 | .IP "\-\-enable\-xpm\-background (default: on)" 4 |
2406 | .IX Item "--enable-xpm-background (default: off)" |
2366 | .IX Item "--enable-xpm-background (default: on)" |
2407 | Add support for \s-1XPM\s0 background pixmaps. |
2367 | Add support for \s-1XPM\s0 background pixmaps. |
2408 | .IP "\-\-enable\-transparency (default: off)" 4 |
2368 | .IP "\-\-enable\-transparency (default: on)" 4 |
2409 | .IX Item "--enable-transparency (default: off)" |
2369 | .IX Item "--enable-transparency (default: on)" |
2410 | Add support for inheriting parent backgrounds thus giving a fake |
2370 | Add support for inheriting parent backgrounds thus giving a fake |
2411 | transparency to the term. |
2371 | transparency to the term. |
2412 | .IP "\-\-enable\-fading (default: on)" 4 |
2372 | .IP "\-\-enable\-fading (default: on)" 4 |
2413 | .IX Item "--enable-fading (default: on)" |
2373 | .IX Item "--enable-fading (default: on)" |
2414 | Add support for fading the text when focus is lost (requires \f(CW\*(C`\-\-enable\-transparency\*(C'\fR). |
2374 | Add support for fading the text when focus is lost (requires \f(CW\*(C`\-\-enable\-transparency\*(C'\fR). |
2415 | .IP "\-\-enable\-tinting (default: on)" 4 |
2375 | .IP "\-\-enable\-tinting (default: on)" 4 |
2416 | .IX Item "--enable-tinting (default: on)" |
2376 | .IX Item "--enable-tinting (default: on)" |
2417 | Add support for tinting of transparent backgrounds (requires \f(CW\*(C`\-\-enable\-transparency\*(C'\fR). |
2377 | Add support for tinting of transparent backgrounds (requires \f(CW\*(C`\-\-enable\-transparency\*(C'\fR). |
2418 | .IP "\-\-enable\-menubar (default: off)" 4 |
|
|
2419 | .IX Item "--enable-menubar (default: off)" |
|
|
2420 | Add support for our menu bar system (this interacts badly with |
|
|
2421 | dynamic locale switching currently). |
|
|
2422 | .IP "\-\-enable\-rxvt\-scroll (default: on)" 4 |
2378 | .IP "\-\-enable\-rxvt\-scroll (default: on)" 4 |
2423 | .IX Item "--enable-rxvt-scroll (default: on)" |
2379 | .IX Item "--enable-rxvt-scroll (default: on)" |
2424 | Add support for the original rxvt scrollbar. |
2380 | Add support for the original rxvt scrollbar. |
2425 | .IP "\-\-enable\-next\-scroll (default: on)" 4 |
2381 | .IP "\-\-enable\-next\-scroll (default: on)" 4 |
2426 | .IX Item "--enable-next-scroll (default: on)" |
2382 | .IX Item "--enable-next-scroll (default: on)" |
… | |
… | |
2431 | .IP "\-\-enable\-plain\-scroll (default: on)" 4 |
2387 | .IP "\-\-enable\-plain\-scroll (default: on)" 4 |
2432 | .IX Item "--enable-plain-scroll (default: on)" |
2388 | .IX Item "--enable-plain-scroll (default: on)" |
2433 | Add support for a very unobtrusive, plain-looking scrollbar that |
2389 | Add support for a very unobtrusive, plain-looking scrollbar that |
2434 | is the favourite of the rxvt-unicode author, having used it for |
2390 | is the favourite of the rxvt-unicode author, having used it for |
2435 | many years. |
2391 | many years. |
2436 | .IP "\-\-enable\-half\-shadow (default: off)" 4 |
|
|
2437 | .IX Item "--enable-half-shadow (default: off)" |
|
|
2438 | Make shadows on the scrollbar only half the normal width & height. |
|
|
2439 | only applicable to rxvt scrollbars. |
|
|
2440 | .IP "\-\-enable\-ttygid (default: off)" 4 |
2392 | .IP "\-\-enable\-ttygid (default: off)" 4 |
2441 | .IX Item "--enable-ttygid (default: off)" |
2393 | .IX Item "--enable-ttygid (default: off)" |
2442 | Change tty device setting to group \*(L"tty\*(R" \- only use this if |
2394 | Change tty device setting to group \*(L"tty\*(R" \- only use this if |
2443 | your system uses this type of security. |
2395 | your system uses this type of security. |
2444 | .IP "\-\-disable\-backspace\-key" 4 |
2396 | .IP "\-\-disable\-backspace\-key" 4 |
… | |
… | |
2449 | Removes any handling of the delete key by us \- let the X server |
2401 | Removes any handling of the delete key by us \- let the X server |
2450 | do it. |
2402 | do it. |
2451 | .IP "\-\-disable\-resources" 4 |
2403 | .IP "\-\-disable\-resources" 4 |
2452 | .IX Item "--disable-resources" |
2404 | .IX Item "--disable-resources" |
2453 | Removes any support for resource checking. |
2405 | Removes any support for resource checking. |
2454 | .IP "\-\-enable\-xgetdefault" 4 |
|
|
2455 | .IX Item "--enable-xgetdefault" |
|
|
2456 | Make resources checking via \fIXGetDefault()\fR instead of our small |
|
|
2457 | version which only checks ~/.Xdefaults, or if that doesn't exist then |
|
|
2458 | ~/.Xresources. |
|
|
2459 | .Sp |
|
|
2460 | Please note that nowadays, things like \s-1XIM\s0 will automatically pull in and |
|
|
2461 | use the full X resource manager, so the overhead of using it might be very |
|
|
2462 | small, if nonexistant. |
|
|
2463 | .IP "\-\-enable\-strings (default: off)" 4 |
|
|
2464 | .IX Item "--enable-strings (default: off)" |
|
|
2465 | Add support for our possibly faster \fImemset()\fR function and other |
|
|
2466 | various routines, overriding your system's versions which may |
|
|
2467 | have been hand-crafted in assembly or may require extra libraries |
|
|
2468 | to link in. (this breaks ANSI-C rules and has problems on many |
|
|
2469 | GNU/Linux systems). |
|
|
2470 | .IP "\-\-disable\-swapscreen" 4 |
2406 | .IP "\-\-disable\-swapscreen" 4 |
2471 | .IX Item "--disable-swapscreen" |
2407 | .IX Item "--disable-swapscreen" |
2472 | Remove support for secondary/swap screen. |
2408 | Remove support for secondary/swap screen. |
2473 | .IP "\-\-enable\-frills (default: on)" 4 |
2409 | .IP "\-\-enable\-frills (default: on)" 4 |
2474 | .IX Item "--enable-frills (default: on)" |
2410 | .IX Item "--enable-frills (default: on)" |
… | |
… | |
2477 | disable this. |
2413 | disable this. |
2478 | .Sp |
2414 | .Sp |
2479 | A non-exhaustive list of features enabled by \f(CW\*(C`\-\-enable\-frills\*(C'\fR (possibly |
2415 | A non-exhaustive list of features enabled by \f(CW\*(C`\-\-enable\-frills\*(C'\fR (possibly |
2480 | in combination with other switches) is: |
2416 | in combination with other switches) is: |
2481 | .Sp |
2417 | .Sp |
2482 | .Vb 17 |
2418 | .Vb 15 |
2483 | \& MWM-hints |
2419 | \& MWM-hints |
2484 | \& EWMH-hints (pid, utf8 names) and protocols (ping) |
2420 | \& EWMH-hints (pid, utf8 names) and protocols (ping) |
2485 | \& seperate underline colour (-underlineColor) |
2421 | \& seperate underline colour (-underlineColor) |
2486 | \& settable border widths and borderless switch (-w, -b, -bl) |
2422 | \& settable border widths and borderless switch (-w, -b, -bl) |
|
|
2423 | \& visual depth selection (-depth) |
2487 | \& settable extra linespacing /-lsp) |
2424 | \& settable extra linespacing /-lsp) |
2488 | \& iso-14755-2 and -3, and visual feedback |
2425 | \& iso-14755-2 and -3, and visual feedback |
2489 | \& backindex and forwardindex escape sequence |
|
|
2490 | \& window op and some xterm/OSC escape sequences |
|
|
2491 | \& tripleclickwords (-tcw) |
2426 | \& tripleclickwords (-tcw) |
2492 | \& settable insecure mode (-insecure) |
2427 | \& settable insecure mode (-insecure) |
2493 | \& keysym remapping support |
2428 | \& keysym remapping support |
2494 | \& cursor blinking and underline cursor (-cb, -uc) |
2429 | \& cursor blinking and underline cursor (-cb, -uc) |
2495 | \& XEmbed support (-embed) |
2430 | \& XEmbed support (-embed) |
2496 | \& user-pty (-pty-fd) |
2431 | \& user-pty (-pty-fd) |
2497 | \& hold on exit (-hold) |
2432 | \& hold on exit (-hold) |
2498 | \& skip builtin block graphics (-sbg) |
2433 | \& skip builtin block graphics (-sbg) |
|
|
2434 | .Ve |
|
|
2435 | .Sp |
|
|
2436 | It also enabled some non-essential features otherwise disabled, such as: |
|
|
2437 | .Sp |
|
|
2438 | .Vb 11 |
|
|
2439 | \& some round-trip time optimisations |
|
|
2440 | \& nearest color allocation on pseudocolor screens |
|
|
2441 | \& UTF8_STRING supporr for selection |
2499 | \& sgr modes 90..97 and 100..107 |
2442 | \& sgr modes 90..97 and 100..107 |
|
|
2443 | \& backindex and forwardindex escape sequences |
|
|
2444 | \& view change/zero scorllback esacpe sequences |
|
|
2445 | \& locale switching escape sequence |
|
|
2446 | \& window op and some xterm/OSC escape sequences |
|
|
2447 | \& rectangular selections |
|
|
2448 | \& trailing space removal for selections |
|
|
2449 | \& verbose X error handling |
2500 | .Ve |
2450 | .Ve |
2501 | .IP "\-\-enable\-iso14755 (default: on)" 4 |
2451 | .IP "\-\-enable\-iso14755 (default: on)" 4 |
2502 | .IX Item "--enable-iso14755 (default: on)" |
2452 | .IX Item "--enable-iso14755 (default: on)" |
2503 | Enable extended \s-1ISO\s0 14755 support (see @@RXVT_NAME@@(1), or |
2453 | Enable extended \s-1ISO\s0 14755 support (see @@RXVT_NAME@@(1), or |
2504 | \&\fIdoc/rxvt.1.txt\fR). Basic support (section 5.1) is enabled by |
2454 | \&\fIdoc/rxvt.1.txt\fR). Basic support (section 5.1) is enabled by |
… | |
… | |
2520 | .IX Item "--disable-new-selection" |
2470 | .IX Item "--disable-new-selection" |
2521 | Remove support for mouse selection style like that of xterm. |
2471 | Remove support for mouse selection style like that of xterm. |
2522 | .IP "\-\-enable\-dmalloc (default: off)" 4 |
2472 | .IP "\-\-enable\-dmalloc (default: off)" 4 |
2523 | .IX Item "--enable-dmalloc (default: off)" |
2473 | .IX Item "--enable-dmalloc (default: off)" |
2524 | Use Gray Watson's malloc \- which is good for debugging See |
2474 | Use Gray Watson's malloc \- which is good for debugging See |
2525 | http://www.letters.com/dmalloc/ for details If you use either this or the |
2475 | <http://www.letters.com/dmalloc/> for details If you use either this or the |
2526 | next option, you may need to edit src/Makefile after compiling to point |
2476 | next option, you may need to edit src/Makefile after compiling to point |
2527 | \&\s-1DINCLUDE\s0 and \s-1DLIB\s0 to the right places. |
2477 | \&\s-1DINCLUDE\s0 and \s-1DLIB\s0 to the right places. |
2528 | .Sp |
2478 | .Sp |
2529 | You can only use either this option and the following (should |
2479 | You can only use either this option and the following (should |
2530 | you use either) . |
2480 | you use either) . |
… | |
… | |
2538 | keys. This should keep the window corner which is closest to a corner of |
2488 | keys. This should keep the window corner which is closest to a corner of |
2539 | the screen in a fixed position. |
2489 | the screen in a fixed position. |
2540 | .IP "\-\-enable\-pointer\-blank (default: on)" 4 |
2490 | .IP "\-\-enable\-pointer\-blank (default: on)" 4 |
2541 | .IX Item "--enable-pointer-blank (default: on)" |
2491 | .IX Item "--enable-pointer-blank (default: on)" |
2542 | Add support to have the pointer disappear when typing or inactive. |
2492 | Add support to have the pointer disappear when typing or inactive. |
2543 | .IP "\-\-enable\-perl (default: off)" 4 |
2493 | .IP "\-\-enable\-perl (default: on)" 4 |
2544 | .IX Item "--enable-perl (default: off)" |
2494 | .IX Item "--enable-perl (default: on)" |
2545 | Enable an embedded perl interpreter. See the \fB@@RXVT_NAME@@\f(BIperl\fB\|(3)\fR |
2495 | Enable an embedded perl interpreter. See the \fB@@RXVT_NAME@@\f(BIperl\fB\|(3)\fR |
2546 | manpage (\fIdoc/rxvtperl.txt\fR) for more info on this feature, or the files |
2496 | manpage (\fIdoc/rxvtperl.txt\fR) for more info on this feature, or the files |
2547 | in \fIsrc/perl\-ext/\fR for the extensions that are installed by default. The |
2497 | in \fIsrc/perl\-ext/\fR for the extensions that are installed by default. The |
2548 | perl interpreter that is used can be specified via the \f(CW\*(C`PERL\*(C'\fR environment |
2498 | perl interpreter that is used can be specified via the \f(CW\*(C`PERL\*(C'\fR environment |
2549 | variable when running configure. |
2499 | variable when running configure. |