ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.7.txt
Revision: 1.20
Committed: Thu Jun 30 14:00:49 2005 UTC (19 years ago) by root
Content type: text/plain
Branch: MAIN
Changes since 1.19: +11 -0 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 NAME
2 RXVT REFERENCE - FAQ, command sequences and other background information
3
4 SYNOPSIS
5 # set a new font set
6 printf '\33]50;%s\007' 9x15,xft:Kochi" Mincho"
7
8 # change the locale and tell rxvt-unicode about it
9 export LC_CTYPE=ja_JP.EUC-JP; printf "\33]701;$LC_CTYPE\007"
10
11 # set window title
12 printf '\33]2;%s\007' "new window title"
13
14 DESCRIPTION
15 This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
16 all escape sequences, and other background information.
17
18 The newest version of this document is also available on the World Wide
19 Web at
20 <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
21
22 FREQUENTLY ASKED QUESTIONS
23 How do I know which rxvt-unicode version I'm using?
24 The version number is displayed with the usage (-h). Also the escape
25 sequence "ESC [ 8 n" sets the window title to the version number.
26
27 I am using Debian GNU/Linux and have a problem...
28 The Debian GNU/Linux package of rxvt-unicode contains large patches
29 that considerably change the behaviour of rxvt-unicode. Before
30 reporting a bug to the original rxvt-unicode author please download
31 and install the genuine version
32 (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the
33 problem. If you cannot, chances are that the problems are specific
34 to Debian GNU/Linux, in which case it should be reported via the
35 Debian Bug Tracking System (use "reportbug" to report the bug).
36
37 For other problems that also affect the Debian package, you can and
38 probably should use the Debian BTS, too, because, after all, it's
39 also a bug in the Debian version and it serves as a reminder for
40 other users that might encounter the same issue.
41
42 When I log-in to another system it tells me about missing terminfo data?
43 The terminal description used by rxvt-unicode is not as widely
44 available as that for xterm, or even rxvt (for which the same
45 problem often arises).
46
47 The correct solution for this problem is to install the terminfo,
48 this can be done like this (with ncurses' infocmp):
49
50 REMOTE=remotesystem.domain
51 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti"
52
53 ... or by installing rxvt-unicode normally on the remote system,
54
55 If you cannot or do not want to do this, then you can simply set
56 "TERM=rxvt" or even "TERM=xterm", and live with the small number of
57 problems arising, which includes wrong keymapping, less and
58 different colours and some refresh errors in fullscreen
59 applications. It's a nice quick-and-dirty workaround for rare cases,
60 though.
61
62 If you always want to do this (and are fine with the consequences)
63 you can either recompile rxvt-unicode with the desired TERM value or
64 use a resource to set it:
65
66 URxvt.termName: rxvt
67
68 If you don't plan to use rxvt (quite common...) you could also
69 replace the rxvt terminfo file with the rxvt-unicode one.
70
71 "bash"'s readline does not work correctly under rxvt.
72 I need a termcap file entry.
73 One reason you might want this is that some distributions or
74 operating systems still compile some programs using the
75 long-obsoleted termcap library (Fedora Core's bash is one example)
76 and rely on a termcap entry for "rxvt-unicode".
77
78 You could use rxvt's termcap entry with resonable results in many
79 cases. You can also create a termcap entry by using terminfo's
80 infocmp program like this:
81
82 infocmp -C rxvt-unicode
83
84 Or you could use this termcap entry, generated by the command above:
85
86 rxvt-unicode|rxvt-unicode terminal (X Window System):\
87 :am:bw:eo:km:mi:ms:xn:xo:\
88 :co#80:it#8:li#24:lm#0:\
89 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
90 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
91 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
92 :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
93 :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
94 :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
95 :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
96 :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
97 :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
98 :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
99 :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
100 :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
101 :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
102 :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
103 :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
104 :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
105 :vs=\E[?25h:
106
107 Why does "ls" no longer have coloured output?
108 The "ls" in the GNU coreutils unfortunately doesn't use terminfo to
109 decide wether a terminal has colour, but uses it's own configuration
110 file. Needless to say, "rxvt-unicode" is not in it's default file
111 (among with most other terminals supporting colour). Either add:
112
113 TERM rxvt-unicode
114
115 to "/etc/DIR_COLORS" or simply add:
116
117 alias ls='ls --color=auto'
118
119 to your ".profile" or ".bashrc".
120
121 Why doesn't vim/emacs etc. use the 88 colour mode?
122 Why doesn't vim/emacs etc. make use of italic?
123 Why are the secondary screen-related options not working properly?
124 Make sure you are using "TERM=rxvt-unicode". Some pre-packaged
125 distributions (most notably Debian GNU/Linux) break rxvt-unicode by
126 setting "TERM" to "rxvt", which doesn't have these extra features.
127 Unfortunately, some of these (most notably, again, Debian GNU/Linux)
128 furthermore fail to even install the "rxvt-unicode" terminfo file,
129 so you will need to install it on your own (See the question When I
130 log-in to another system it tells me about missing terminfo data? on
131 how to do this).
132
133 My numerical keypad acts weird and generates differing output?
134 Some Debian GNUL/Linux users seem to have this problem, although no
135 specific details were reported so far. It is possible that this is
136 caused by the wrong "TERM" setting, although the details of wether
137 and how this can happen are unknown, as "TERM=rxvt" should offer a
138 compatible keymap. See the answer to the previous question, and
139 please report if that helped.
140
141 Rxvt-unicode does not seem to understand the selected encoding?
142 Unicode does not seem to work?
143 If you encounter strange problems like typing an accented character
144 but getting two unrelated other characters or similar, or if program
145 output is subtly garbled, then you should check your locale
146 settings.
147
148 Rxvt-unicode must be started with the same "LC_CTYPE" setting as the
149 programs. Often rxvt-unicode is started in the "C" locale, while the
150 login script running within the rxvt-unicode window changes the
151 locale to something else, e.g. "en_GB.UTF-8". Needless to say, this
152 is not going to work.
153
154 The best thing is to fix your startup environment, as you will
155 likely run into other problems. If nothing works you can try this in
156 your .profile.
157
158 printf '\e]701;%s\007' "$LC_CTYPE"
159
160 If this doesn't work, then maybe you use a "LC_CTYPE" specification
161 not supported on your systems. Some systems have a "locale" command
162 which displays this (also, "perl -e0" can be used to check locale
163 settings, as it will complain loudly if it cannot set the locale).
164 If it displays something like:
165
166 locale: Cannot set LC_CTYPE to default locale: ...
167
168 Then the locale you specified is not supported on your system.
169
170 If nothing works and you are sure that everything is set correctly
171 then you will need to remember a little known fact: Some programs
172 just don't support locales :(
173
174 Why do some characters look so much different than others?
175 How does rxvt-unicode choose fonts?
176 Most fonts do not contain the full range of Unicode, which is fine.
177 Chances are that the font you (or the admin/package maintainer of
178 your system/os) have specified does not cover all the characters you
179 want to display.
180
181 rxvt-unicode makes a best-effort try at finding a replacement font.
182 Often the result is fine, but sometimes the chosen font looks
183 bad/ugly/wrong. Some fonts have totally strange characters that
184 don't resemble the correct glyph at all, and rxvt-unicode lacks the
185 artificial intelligence to detect that a specific glyph is wrong: it
186 has to believe the font that the characters it claims to contain
187 indeed look correct.
188
189 In that case, select a font of your taste and add it to the font
190 list, e.g.:
191
192 rxvt -fn basefont,font2,font3...
193
194 When rxvt-unicode sees a character, it will first look at the base
195 font. If the base font does not contain the character, it will go to
196 the next font, and so on. Specifying your own fonts will also speed
197 up this search and use less resources within rxvt-unicode and the
198 X-server.
199
200 The only limitation is that none of the fonts may be larger than the
201 base font, as the base font defines the terminal character cell
202 size, which must be the same due to the way terminals work.
203
204 Why do some chinese characters look so different than others?
205 This is because there is a difference between script and language --
206 rxvt-unicode does not know which language the text that is output
207 is, as it only knows the unicode character codes. If rxvt-unicode
208 first sees a japanese/chinese character, it might choose a japanese
209 font for display. Subsequent japanese characters will use that font.
210 Now, many chinese characters aren't represented in japanese fonts,
211 so when the first non-japanese character comes up, rxvt-unicode will
212 look for a chinese font -- unfortunately at this point, it will
213 still use the japanese font for chinese characters that are also in
214 the japanese font.
215
216 The workaround is easy: just tag a chinese font at the end of your
217 font list (see the previous question). The key is to view the font
218 list as a preference list: If you expect more japanese, list a
219 japanese font first. If you expect more chinese, put a chinese font
220 first.
221
222 In the future it might be possible to switch language preferences at
223 runtime (the internal data structure has no problem with using
224 different fonts for the same character at the same time, but no
225 interface for this has been designed yet).
226
227 Until then, you might get away with switching fonts at runtime (see
228 "Can I switch the fonts at runtime?" later in this document).
229
230 Why does rxvt-unicode sometimes leave pixel droppings?
231 Most fonts were not designed for terminal use, which means that
232 character size varies a lot. A font that is otherwise fine for
233 terminal use might contain some characters that are simply too wide.
234 Rxvt-unicode will avoid these characters. For characters that are
235 just "a bit" too wide a special "careful" rendering mode is used
236 that redraws adjacent characters.
237
238 All of this requires that fonts do not lie about character sizes,
239 however: Xft fonts often draw glyphs larger than their acclaimed
240 bounding box, and rxvt-unicode has no way of detecting this (the
241 correct way is to ask for the character bounding box, which
242 unfortunately is wrong in these cases).
243
244 It's not clear (to me at least), wether this is a bug in Xft,
245 freetype, or the respective font. If you encounter this problem you
246 might try using the "-lsp" option to give the font more height. If
247 that doesn't work, you might be forced to use a different font.
248
249 All of this is not a problem when using X11 core fonts, as their
250 bounding box data is correct.
251
252 On Solaris 9, many line-drawing characters are too wide.
253 Seems to be a known bug, read
254 <http://nixdoc.net/files/forum/about34198.html>. Some people use the
255 following ugly workaround to get non-double-wide-characters working:
256
257 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
258
259 My Compose (Multi_key) key is no longer working.
260 The most common causes for this are that either your locale is not
261 set correctly, or you specified a preeditStyle that is not supported
262 by your input method. For example, if you specified OverTheSpot and
263 your input method (e.g. the default input method handling Compose
264 keys) does not support this (for instance because it is not visual),
265 then rxvt-unicode will continue without an input method.
266
267 In this case either do not specify a preeditStyle or specify more
268 than one pre-edit style, such as OverTheSpot,Root,None.
269
270 I cannot type "Ctrl-Shift-2" to get an ASCII NUL character due to ISO
271 14755
272 Either try "Ctrl-2" alone (it often is mapped to ASCII NUL even on
273 international keyboards) or simply use ISO 14755 support to your
274 advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for
275 other codes, too, such as "Ctrl-Shift-1-d" to type the default
276 telnet escape character and so on.
277
278 How can I keep rxvt-unicode from using reverse video so much?
279 First of all, make sure you are running with the right terminal
280 settings ("TERM=rxvt-unicode"), which will get rid of most of these
281 effects. Then make sure you have specified colours for italic and
282 bold, as otherwise rxvt-unicode might use reverse video to simulate
283 the effect:
284
285 URxvt.colorBD: white
286 URxvt.colorIT: green
287
288 Some programs assume totally weird colours (red instead of blue), how
289 can I fix that?
290 For some unexplainable reason, some rare programs assume a very
291 weird colour palette when confronted with a terminal with more than
292 the standard 8 colours (rxvt-unicode supports 88). The right fix is,
293 of course, to fix these programs not to assume non-ISO colours
294 without very good reasons.
295
296 In the meantime, you can either edit your "rxvt-unicode" terminfo
297 definition to only claim 8 colour support or use "TERM=rxvt", which
298 will fix colours but keep you from using other rxvt-unicode
299 features.
300
301 I am on FreeBSD and rxvt-unicode does not seem to work at all.
302 Rxvt-unicode requires the symbol "__STDC_ISO_10646__" to be defined
303 in your compile environment, or an implementation that implements
304 it, wether it defines the symbol or not. "__STDC_ISO_10646__"
305 requires that wchar_t is represented as unicode.
306
307 As you might have guessed, FreeBSD does neither define this symobl
308 nor does it support it. Instead, it uses it's own internal
309 representation of wchar_t. This is, of course, completely fine with
310 respect to standards.
311
312 However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1"
313 and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
314
315 "__STDC_ISO_10646__" is the only sane way to support multi-language
316 apps in an OS, as using a locale-dependent (and non-standardized)
317 representation of wchar_t makes it impossible to convert between
318 wchar_t (as used by X11 and your applications) and any other
319 encoding without implementing OS-specific-wrappers for each and
320 every locale. There simply are no APIs to convert wchar_t into
321 anything except the current locale encoding.
322
323 Some applications (such as the formidable mlterm) work around this
324 by carrying their own replacement functions for character set
325 handling with them, and either implementing OS-dependent hacks or
326 doing multiple conversions (which is slow and unreliable in case the
327 OS implements encodings slightly different than the terminal
328 emulator).
329
330 The rxvt-unicode author insists that the right way to fix this is in
331 the system libraries once and for all, instead of forcing every app
332 to carry complete replacements for them :)
333
334 I use Solaris 9 and it doesn't compile/work/etc.
335 Try the diff in doc/solaris9.patch as a base. It fixes the worst
336 problems with "wcwidth" and a compile problem.
337
338 How does rxvt-unicode determine the encoding to use?
339 Is there an option to switch encodings?
340 Unlike some other terminals, rxvt-unicode has no encoding switch,
341 and no specific "utf-8" mode, such as xterm. In fact, it doesn't
342 even know about UTF-8 or any other encodings with respect to
343 terminal I/O.
344
345 The reasons is that there exists a perfectly fine mechanism for
346 selecting the encoding, doing I/O and (most important) communicating
347 this to all applications so everybody agrees on character properties
348 such as width and code number. This mechanism is the *locale*.
349 Applications not using that info will have problems (for example,
350 "xterm" gets the width of characters wrong as it uses it's own,
351 locale-independent table under all locales).
352
353 Rxvt-unicode uses the "LC_CTYPE" locale category to select encoding.
354 All programs doing the same (that is, most) will automatically agree
355 in the interpretation of characters.
356
357 Unfortunately, there is no system-independent way to select locales,
358 nor is there a standard on how locale specifiers will look like.
359
360 On most systems, the content of the "LC_CTYPE" environment variable
361 contains an arbitrary string which corresponds to an
362 already-installed locale. Common names for locales are
363 "en_US.UTF-8", "de_DE.ISO-8859-15", "ja_JP.EUC-JP", i.e.
364 "language_country.encoding", but other forms (i.e. "de" or "german")
365 are also common.
366
367 Rxvt-unicode ignores all other locale categories, and except for the
368 encoding, ignores country or language-specific settings, i.e.
369 "de_DE.UTF-8" and "ja_JP.UTF-8" are the normally same to
370 rxvt-unicode.
371
372 If you want to use a specific encoding you have to make sure you
373 start rxvt-unicode with the correct "LC_CTYPE" category.
374
375 Can I switch locales at runtime?
376 Yes, using an escape sequence. Try something like this, which sets
377 rxvt-unicode's idea of "LC_CTYPE".
378
379 printf '\e]701;%s\007' ja_JP.SJIS
380
381 See also the previous answer.
382
383 Sometimes this capability is rather handy when you want to work in
384 one locale (e.g. "de_DE.UTF-8") but some programs don't support it
385 (e.g. UTF-8). For example, I use this script to start "xjdic", which
386 first switches to a locale supported by xjdic and back later:
387
388 printf '\e]701;%s\007' ja_JP.SJIS
389 xjdic -js
390 printf '\e]701;%s\007' de_DE.UTF-8
391
392 You can also use xterm's "luit" program, which usually works fine,
393 except for some locales where character width differs between
394 program- and rxvt-unicode-locales.
395
396 Can I switch the fonts at runtime?
397 Yes, using an escape sequence. Try something like this, which has
398 the same effect as using the "-fn" switch, and takes effect
399 immediately:
400
401 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
402
403 This is useful if you e.g. work primarily with japanese (and prefer
404 a japanese font), but you have to switch to chinese temporarily,
405 where japanese fonts would only be in your way.
406
407 You can think of this as a kind of manual ISO-2022 switching.
408
409 Why do italic characters look as if clipped?
410 Many fonts have difficulties with italic characters and hinting. For
411 example, the otherwise very nicely hinted font "xft:Bitstream Vera
412 Sans Mono" completely fails in it's italic face. A workaround might
413 be to enable freetype autohinting, i.e. like this:
414
415 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
416 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
417
418 My input method wants <some encoding> but I want UTF-8, what can I do?
419 You can specify separate locales for the input method and the rest
420 of the terminal, using the resource "imlocale":
421
422 URxvt*imlocale: ja_JP.EUC-JP
423
424 Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and
425 still use your input method. Please note, however, that you will not
426 be able to input characters outside "EUC-JP" in a normal way then,
427 as your input method limits you.
428
429 Rxvt-unicode crashes when the X Input Method changes or exits.
430 Unfortunately, this is unavoidable, as the XIM protocol is racy by
431 design. Applications can avoid some crashes at the expense of memory
432 leaks, and Input Methods can avoid some crashes by careful ordering
433 at exit time. kinput2 (and derived input methods) generally
434 succeeds, while SCIM (or similar input methods) fails. In the end,
435 however, crashes cannot be completely avoided even if both sides
436 cooperate.
437
438 So the only workaround is not to kill your Input Method Servers.
439
440 Rxvt-unicode uses gobs of memory, how can I reduce that?
441 Rxvt-unicode tries to obey the rule of not charging you for
442 something you don't use. One thing you should try is to configure
443 out all settings that you don't need, for example, Xft support is a
444 resource hog by design, when used. Compiling it out ensures that no
445 Xft font will be loaded accidentally when rxvt-unicode tries to find
446 a font for your characters.
447
448 Also, many people (me included) like large windows and even larger
449 scrollback buffers: Without "--enable-unicode3", rxvt-unicode will
450 use 6 bytes per screen cell. For a 160x?? window this amounts to
451 almost a kilobyte per line. A scrollback buffer of 10000 lines will
452 then (if full) use 10 Megabytes of memory. With "--enable-unicode3"
453 it gets worse, as rxvt-unicode then uses 8 bytes per screen cell.
454
455 Can I speed up Xft rendering somehow?
456 Yes, the most obvious way to speed it up is to avoid Xft entirely,
457 as it is simply slow. If you still want Xft fonts you might try to
458 disable antialiasing (by appending ":antialiasing=false"), which
459 saves lots of memory and also speeds up rendering considerably.
460
461 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
462 Rxvt-unicode will use whatever you specify as a font. If it needs to
463 fall back to it's default font search list it will prefer X11 core
464 fonts, because they are small and fast, and then use Xft fonts. It
465 has antialiasing disabled for most of them, because the author
466 thinks they look best that way.
467
468 If you want antialiasing, you have to specify the fonts manually.
469
470 Mouse cut/paste suddenly no longer works.
471 Make sure that mouse reporting is actually turned off since killing
472 some editors prematurely may leave the mouse in mouse report mode.
473 I've heard that tcsh may use mouse reporting unless it otherwise
474 specified. A quick check is to see if cut/paste works when the Alt
475 or Shift keys are depressed. See rxvt(7)
476
477 What's with this bold/blink stuff?
478 If no bold colour is set via "colorBD:", bold will invert text using
479 the standard foreground colour.
480
481 For the standard background colour, blinking will actually make the
482 text blink when compiled with "--enable-blinking". with standard
483 colours. Without "--enable-blinking", the blink attribute will be
484 ignored.
485
486 On ANSI colours, bold/blink attributes are used to set
487 high-intensity foreground/background colors.
488
489 color0-7 are the low-intensity colors.
490
491 color8-15 are the corresponding high-intensity colors.
492
493 I don't like the screen colors. How do I change them?
494 You can change the screen colors at run-time using ~/.Xdefaults
495 resources (or as long-options).
496
497 Here are values that are supposed to resemble a VGA screen,
498 including the murky brown that passes for low-intensity yellow:
499
500 URxvt.color0: #000000
501 URxvt.color1: #A80000
502 URxvt.color2: #00A800
503 URxvt.color3: #A8A800
504 URxvt.color4: #0000A8
505 URxvt.color5: #A800A8
506 URxvt.color6: #00A8A8
507 URxvt.color7: #A8A8A8
508
509 URxvt.color8: #000054
510 URxvt.color9: #FF0054
511 URxvt.color10: #00FF54
512 URxvt.color11: #FFFF54
513 URxvt.color12: #0000FF
514 URxvt.color13: #FF00FF
515 URxvt.color14: #00FFFF
516 URxvt.color15: #FFFFFF
517
518 And here is a more complete set of non-standard colors described
519 (not by me) as "pretty girly".
520
521 URxvt.cursorColor: #dc74d1
522 URxvt.pointerColor: #dc74d1
523 URxvt.background: #0e0e0e
524 URxvt.foreground: #4ad5e1
525 URxvt.color0: #000000
526 URxvt.color8: #8b8f93
527 URxvt.color1: #dc74d1
528 URxvt.color9: #dc74d1
529 URxvt.color2: #0eb8c7
530 URxvt.color10: #0eb8c7
531 URxvt.color3: #dfe37e
532 URxvt.color11: #dfe37e
533 URxvt.color5: #9e88f0
534 URxvt.color13: #9e88f0
535 URxvt.color6: #73f7ff
536 URxvt.color14: #73f7ff
537 URxvt.color7: #e1dddd
538 URxvt.color15: #e1dddd
539
540 How can I start rxvtd in a race-free way?
541 Despite it's name, rxvtd is not a real daemon, but more like a
542 server that answers rxvtc's requests, so it doesn't background
543 itself.
544
545 To ensure rxvtd is listening on it's socket, you can use the
546 following method to wait for the startup message before continuing:
547
548 { rxvtd & } | read
549
550 What's with the strange Backspace/Delete key behaviour?
551 Assuming that the physical Backspace key corresponds to the
552 BackSpace keysym (not likely for Linux ... see the following
553 question) there are two standard values that can be used for
554 Backspace: "^H" and "^?".
555
556 Historically, either value is correct, but rxvt-unicode adopts the
557 debian policy of using "^?" when unsure, because it's the one only
558 only correct choice :).
559
560 Rxvt-unicode tries to inherit the current stty settings and uses the
561 value of `erase' to guess the value for backspace. If rxvt-unicode
562 wasn't started from a terminal (say, from a menu or by remote
563 shell), then the system value of `erase', which corresponds to
564 CERASE in <termios.h>, will be used (which may not be the same as
565 your stty setting).
566
567 For starting a new rxvt-unicode:
568
569 # use Backspace = ^H
570 $ stty erase ^H
571 $ rxvt
572
573 # use Backspace = ^?
574 $ stty erase ^?
575 $ rxvt
576
577 Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7).
578
579 For an existing rxvt-unicode:
580
581 # use Backspace = ^H
582 $ stty erase ^H
583 $ echo -n "^[[36h"
584
585 # use Backspace = ^?
586 $ stty erase ^?
587 $ echo -n "^[[36l"
588
589 This helps satisfy some of the Backspace discrepancies that occur,
590 but if you use Backspace = "^H", make sure that the termcap/terminfo
591 value properly reflects that.
592
593 The Delete key is a another casualty of the ill-defined Backspace
594 problem. To avoid confusion between the Backspace and Delete keys,
595 the Delete key has been assigned an escape sequence to match the
596 vt100 for Execute ("ESC [ 3 ~") and is in the supplied
597 termcap/terminfo.
598
599 Some other Backspace problems:
600
601 some editors use termcap/terminfo, some editors (vim I'm told)
602 expect Backspace = ^H, GNU Emacs (and Emacs-like editors) use ^H for
603 help.
604
605 Perhaps someday this will all be resolved in a consistent manner.
606
607 I don't like the key-bindings. How do I change them?
608 There are some compile-time selections available via configure.
609 Unless you have run "configure" with the "--disable-resources"
610 option you can use the `keysym' resource to alter the keystrings
611 associated with keysyms.
612
613 Here's an example for a URxvt session started using "rxvt -name
614 URxvt"
615
616 URxvt.keysym.Home: \033[1~
617 URxvt.keysym.End: \033[4~
618 URxvt.keysym.C-apostrophe: \033<C-'>
619 URxvt.keysym.C-slash: \033<C-/>
620 URxvt.keysym.C-semicolon: \033<C-;>
621 URxvt.keysym.C-grave: \033<C-`>
622 URxvt.keysym.C-comma: \033<C-,>
623 URxvt.keysym.C-period: \033<C-.>
624 URxvt.keysym.C-0x60: \033<C-`>
625 URxvt.keysym.C-Tab: \033<C-Tab>
626 URxvt.keysym.C-Return: \033<C-Return>
627 URxvt.keysym.S-Return: \033<S-Return>
628 URxvt.keysym.S-space: \033<S-Space>
629 URxvt.keysym.M-Up: \033<M-Up>
630 URxvt.keysym.M-Down: \033<M-Down>
631 URxvt.keysym.M-Left: \033<M-Left>
632 URxvt.keysym.M-Right: \033<M-Right>
633 URxvt.keysym.M-C-0: list \033<M-C- 0123456789 >
634 URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz >
635 URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007
636
637 See some more examples in the documentation for the keysym resource.
638
639 I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How
640 do I make use of them? For example, the Sun Keyboard type 4 has the
641 following mappings that rxvt-unicode doesn't recognize.
642 KP_Insert == Insert
643 F22 == Print
644 F27 == Home
645 F29 == Prior
646 F33 == End
647 F35 == Next
648
649 Rather than have rxvt-unicode try to accommodate all the various
650 possible keyboard mappings, it is better to use `xmodmap' to remap
651 the keys as required for your particular machine.
652
653 How do I distinguish wether I'm running rxvt-unicode or a regular xterm?
654 I need this to decide about setting colors etc.
655 rxvt and rxvt-unicode always export the variable "COLORTERM", so you
656 can check and see if that is set. Note that several programs, JED,
657 slrn, Midnight Commander automatically check this variable to decide
658 whether or not to use color.
659
660 How do I set the correct, full IP address for the DISPLAY variable?
661 If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled
662 insecure mode then it is possible to use the following shell script
663 snippets to correctly set the display. If your version of
664 rxvt-unicode wasn't also compiled with ESCZ_ANSWER (as assumed in
665 these snippets) then the COLORTERM variable can be used to
666 distinguish rxvt-unicode from a regular xterm.
667
668 Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell
669 script snippets:
670
671 # Bourne/Korn/POSIX family of shells:
672 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
673 if [ ${TERM:-foo} = xterm ]; then
674 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
675 echo -n '^[Z'
676 read term_id
677 stty icanon echo
678 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
679 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
680 read DISPLAY # set it in our local shell
681 fi
682 fi
683
684 How do I compile the manual pages for myself?
685 You need to have a recent version of perl installed as
686 /usr/bin/perl, one that comes with pod2man, pod2text and pod2html.
687 Then go to the doc subdirectory and enter "make alldoc".
688
689 My question isn't answered here, can I ask a human?
690 Before sending me mail, you could go to IRC: "irc.freenode.net",
691 channel "#rxvt-unicode" has some rxvt-unicode enthusiasts that might
692 be interested in learning about new and exciting problems (but not
693 FAQs :).
694
695 RXVT TECHNICAL REFERENCE
696 DESCRIPTION
697 The rest of this document describes various technical aspects of
698 rxvt-unicode. First the description of supported command sequences,
699 followed by menu and pixmap support and last by a description of all
700 features selectable at "configure" time.
701
702 Definitions
703 "c" The literal character c.
704
705 "C" A single (required) character.
706
707 "Ps"
708 A single (usually optional) numeric parameter, composed of one or
709 more digits.
710
711 "Pm"
712 A multiple numeric parameter composed of any number of single
713 numeric parameters, separated by ";" character(s).
714
715 "Pt"
716 A text parameter composed of printable characters.
717
718 Values
719 "ENQ"
720 Enquiry (Ctrl-E) = Send Device Attributes (DA) request attributes
721 from terminal. See "ESC [ Ps c".
722
723 "BEL"
724 Bell (Ctrl-G)
725
726 "BS"
727 Backspace (Ctrl-H)
728
729 "TAB"
730 Horizontal Tab (HT) (Ctrl-I)
731
732 "LF"
733 Line Feed or New Line (NL) (Ctrl-J)
734
735 "VT"
736 Vertical Tab (Ctrl-K) same as "LF"
737
738 "FF"
739 Form Feed or New Page (NP) (Ctrl-L) same as "LF"
740
741 "CR"
742 Carriage Return (Ctrl-M)
743
744 "SO"
745 Shift Out (Ctrl-N), invokes the G1 character set. Switch to
746 Alternate Character Set
747
748 "SI"
749 Shift In (Ctrl-O), invokes the G0 character set (the default).
750 Switch to Standard Character Set
751
752 "SPC"
753 Space Character
754
755 Escape Sequences
756 "ESC # 8"
757 DEC Screen Alignment Test (DECALN)
758
759 "ESC 7"
760 Save Cursor (SC)
761
762 "ESC 8"
763 Restore Cursor
764
765 "ESC ="
766 Application Keypad (SMKX). See also next sequence.
767
768 "ESC"
769 Normal Keypad (RMKX)
770
771 Note: If the numeric keypad is activated, eg, Num_Lock has been
772 pressed, numbers or control functions are generated by the numeric
773 keypad (see Key Codes).
774
775 "ESC D"
776 Index (IND)
777
778 "ESC E"
779 Next Line (NEL)
780
781 "ESC H"
782 Tab Set (HTS)
783
784 "ESC M"
785 Reverse Index (RI)
786
787 "ESC N"
788 Single Shift Select of G2 Character Set (SS2): affects next
789 character only *unimplemented*
790
791 "ESC O"
792 Single Shift Select of G3 Character Set (SS3): affects next
793 character only *unimplemented*
794
795 "ESC Z"
796 Obsolete form of returns: "ESC [ ? 1 ; 2 C" *rxvt-unicode
797 compile-time option*
798
799 "ESC c"
800 Full reset (RIS)
801
802 "ESC n"
803 Invoke the G2 Character Set (LS2)
804
805 "ESC o"
806 Invoke the G3 Character Set (LS3)
807
808 "ESC ( C"
809 Designate G0 Character Set (ISO 2022), see below for values of "C".
810
811 "ESC ) C"
812 Designate G1 Character Set (ISO 2022), see below for values of "C".
813
814 "ESC * C"
815 Designate G2 Character Set (ISO 2022), see below for values of "C".
816
817 "ESC + C"
818 Designate G3 Character Set (ISO 2022), see below for values of "C".
819
820 "ESC $ C"
821 Designate Kanji Character Set
822
823 Where "C" is one of:
824
825 C = 0 DEC Special Character and Line Drawing Set
826 C = A United Kingdom (UK)
827 C = B United States (USASCII)
828 C = < Multinational character set unimplemented
829 C = 5 Finnish character set unimplemented
830 C = C Finnish character set unimplemented
831 C = K German character set unimplemented
832
833
834
835 CSI (Command Sequence Introducer) Sequences
836 "ESC [ Ps @"
837 Insert "Ps" (Blank) Character(s) [default: 1] (ICH)
838
839 "ESC [ Ps A"
840 Cursor Up "Ps" Times [default: 1] (CUU)
841
842 "ESC [ Ps B"
843 Cursor Down "Ps" Times [default: 1] (CUD)
844
845 "ESC [ Ps C"
846 Cursor Forward "Ps" Times [default: 1] (CUF)
847
848 "ESC [ Ps D"
849 Cursor Backward "Ps" Times [default: 1] (CUB)
850
851 "ESC [ Ps E"
852 Cursor Down "Ps" Times [default: 1] and to first column
853
854 "ESC [ Ps F"
855 Cursor Up "Ps" Times [default: 1] and to first column
856
857 "ESC [ Ps G"
858 Cursor to Column "Ps" (HPA)
859
860 "ESC [ Ps;Ps H"
861 Cursor Position [row;column] [default: 1;1] (CUP)
862
863 "ESC [ Ps I"
864 Move forward "Ps" tab stops [default: 1]
865
866 "ESC [ Ps J"
867 Erase in Display (ED)
868
869 Ps = 0 Clear Below (default)
870 Ps = 1 Clear Above
871 Ps = 2 Clear All
872
873 "ESC [ Ps K"
874 Erase in Line (EL)
875
876 Ps = 0 Clear to Right (default)
877 Ps = 1 Clear to Left
878 Ps = 2 Clear All
879
880 "ESC [ Ps L"
881 Insert "Ps" Line(s) [default: 1] (IL)
882
883 "ESC [ Ps M"
884 Delete "Ps" Line(s) [default: 1] (DL)
885
886 "ESC [ Ps P"
887 Delete "Ps" Character(s) [default: 1] (DCH)
888
889 "ESC [ Ps;Ps;Ps;Ps;Ps T"
890 Initiate . *unimplemented* Parameters are
891 [func;startx;starty;firstrow;lastrow].
892
893 "ESC [ Ps W"
894 Tabulator functions
895
896 Ps = 0 Tab Set (HTS)
897 Ps = 2 Tab Clear (TBC), Clear Current Column (default)
898 Ps = 5 Tab Clear (TBC), Clear All
899
900 "ESC [ Ps X"
901 Erase "Ps" Character(s) [default: 1] (ECH)
902
903 "ESC [ Ps Z"
904 Move backward "Ps" [default: 1] tab stops
905
906 "ESC [ Ps '"
907 See "ESC [ Ps G"
908
909 "ESC [ Ps a"
910 See "ESC [ Ps C"
911
912 "ESC [ Ps c"
913 Send Device Attributes (DA) "Ps = 0" (or omitted): request
914 attributes from terminal returns: "ESC [ ? 1 ; 2 c" (``I am a VT100
915 with Advanced Video Option'')
916
917 "ESC [ Ps d"
918 Cursor to Line "Ps" (VPA)
919
920 "ESC [ Ps e"
921 See "ESC [ Ps A"
922
923 "ESC [ Ps;Ps f"
924 Horizontal and Vertical Position [row;column] (HVP) [default: 1;1]
925
926 "ESC [ Ps g"
927 Tab Clear (TBC)
928
929 Ps = 0 Clear Current Column (default)
930 Ps = 3 Clear All (TBC)
931
932 "ESC [ Pm h"
933 Set Mode (SM). See "ESC [ Pm l" sequence for description of "Pm".
934
935 "ESC [ Ps i"
936 Printing. See also the "print-pipe" resource.
937
938 Ps = 0 print screen (MC0)
939 Ps = 4 disable transparent print mode (MC4)
940 Ps = 5 enable transparent print mode (MC5)
941
942 "ESC [ Pm l"
943 Reset Mode (RM)
944
945 "Ps = 4"
946 h Insert Mode (SMIR)
947 l Replace Mode (RMIR)
948
949 "Ps = 20" (partially implemented)
950 h Automatic Newline (LNM)
951 l Normal Linefeed (LNM)
952
953 "ESC [ Pm m"
954 Character Attributes (SGR)
955
956 Ps = 0 Normal (default)
957 Ps = 1 / 21 On / Off Bold (bright fg)
958 Ps = 3 / 23 On / Off Italic
959 Ps = 4 / 24 On / Off Underline
960 Ps = 5 / 25 On / Off Slow Blink (bright bg)
961 Ps = 6 / 26 On / Off Rapid Blink (bright bg)
962 Ps = 7 / 27 On / Off Inverse
963 Ps = 8 / 27 On / Off Invisible (NYI)
964 Ps = 30 / 40 fg/bg Black
965 Ps = 31 / 41 fg/bg Red
966 Ps = 32 / 42 fg/bg Green
967 Ps = 33 / 43 fg/bg Yellow
968 Ps = 34 / 44 fg/bg Blue
969 Ps = 35 / 45 fg/bg Magenta
970 Ps = 36 / 46 fg/bg Cyan
971 Ps = 38;5 / 48;5 set fg/bg to color #m (ISO 8613-6)
972 Ps = 37 / 47 fg/bg White
973 Ps = 39 / 49 fg/bg Default
974 Ps = 90 / 100 fg/bg Bright Black
975 Ps = 91 / 101 fg/bg Bright Red
976 Ps = 92 / 102 fg/bg Bright Green
977 Ps = 93 / 103 fg/bg Bright Yellow
978 Ps = 94 / 104 fg/bg Bright Blue
979 Ps = 95 / 105 fg/bg Bright Magenta
980 Ps = 96 / 106 fg/bg Bright Cyan
981 Ps = 97 / 107 fg/bg Bright White
982 Ps = 99 / 109 fg/bg Bright Default
983
984 "ESC [ Ps n"
985 Device Status Report (DSR)
986
987 Ps = 5 Status Report ESC [ 0 n (``OK'')
988 Ps = 6 Report Cursor Position (CPR) [row;column] as ESC [ r ; c R
989 Ps = 7 Request Display Name
990 Ps = 8 Request Version Number (place in window title)
991
992 "ESC [ Ps;Ps r"
993 Set Scrolling Region [top;bottom] [default: full size of window]
994 (CSR)
995
996 "ESC [ s"
997 Save Cursor (SC)
998
999 "ESC [ Ps;Pt t"
1000 Window Operations
1001
1002 Ps = 1 Deiconify (map) window
1003 Ps = 2 Iconify window
1004 Ps = 3 ESC [ 3 ; X ; Y t Move window to (X|Y)
1005 Ps = 4 ESC [ 4 ; H ; W t Resize to WxH pixels
1006 Ps = 5 Raise window
1007 Ps = 6 Lower window
1008 Ps = 7 Refresh screen once
1009 Ps = 8 ESC [ 8 ; R ; C t Resize to R rows and C columns
1010 Ps = 11 Report window state (responds with Ps = 1 or Ps = 2)
1011 Ps = 13 Report window position (responds with Ps = 3)
1012 Ps = 14 Report window pixel size (responds with Ps = 4)
1013 Ps = 18 Report window text size (responds with Ps = 7)
1014 Ps = 19 Currently the same as Ps = 18, but responds with Ps = 9
1015 Ps = 20 Reports icon label (ESC ] L NAME \234)
1016 Ps = 21 Reports window title (ESC ] l NAME \234)
1017 Ps = 24.. Set window height to Ps rows
1018
1019 "ESC [ u"
1020 Restore Cursor
1021
1022 "ESC [ Ps x"
1023 Request Terminal Parameters (DECREQTPARM)
1024
1025
1026
1027 DEC Private Modes
1028 "ESC [ ? Pm h"
1029 DEC Private Mode Set (DECSET)
1030
1031 "ESC [ ? Pm l"
1032 DEC Private Mode Reset (DECRST)
1033
1034 "ESC [ ? Pm r"
1035 Restore previously saved DEC Private Mode Values.
1036
1037 "ESC [ ? Pm s"
1038 Save DEC Private Mode Values.
1039
1040 "ESC [ ? Pm t"
1041 Toggle DEC Private Mode Values (rxvt extension). *where*
1042
1043 "Ps = 1" (DECCKM)
1044 h Application Cursor Keys
1045 l Normal Cursor Keys
1046
1047 "Ps = 2" (ANSI/VT52 mode)
1048 h Enter VT52 mode
1049 l Enter VT52 mode
1050
1051 "Ps = 3"
1052 h 132 Column Mode (DECCOLM)
1053 l 80 Column Mode (DECCOLM)
1054
1055 "Ps = 4"
1056 h Smooth (Slow) Scroll (DECSCLM)
1057 l Jump (Fast) Scroll (DECSCLM)
1058
1059 "Ps = 5"
1060 h Reverse Video (DECSCNM)
1061 l Normal Video (DECSCNM)
1062
1063 "Ps = 6"
1064 h Origin Mode (DECOM)
1065 l Normal Cursor Mode (DECOM)
1066
1067 "Ps = 7"
1068 h Wraparound Mode (DECAWM)
1069 l No Wraparound Mode (DECAWM)
1070
1071 "Ps = 8" *unimplemented*
1072 h Auto-repeat Keys (DECARM)
1073 l No Auto-repeat Keys (DECARM)
1074
1075 "Ps = 9" X10 XTerm
1076 h Send Mouse X & Y on button press.
1077 l No mouse reporting.
1078
1079 "Ps = 10" (rxvt)
1080 h menuBar visible
1081 l menuBar invisible
1082
1083 "Ps = 25"
1084 h Visible cursor {cnorm/cvvis}
1085 l Invisible cursor {civis}
1086
1087 "Ps = 30"
1088 h scrollBar visisble
1089 l scrollBar invisisble
1090
1091 "Ps = 35" (rxvt)
1092 h Allow XTerm Shift+key sequences
1093 l Disallow XTerm Shift+key sequences
1094
1095 "Ps = 38" *unimplemented*
1096 Enter Tektronix Mode (DECTEK)
1097
1098 "Ps = 40"
1099 h Allow 80/132 Mode
1100 l Disallow 80/132 Mode
1101
1102 "Ps = 44" *unimplemented*
1103 h Turn On Margin Bell
1104 l Turn Off Margin Bell
1105
1106 "Ps = 45" *unimplemented*
1107 h Reverse-wraparound Mode
1108 l No Reverse-wraparound Mode
1109
1110 "Ps = 46" *unimplemented*
1111 "Ps = 47"
1112 h Use Alternate Screen Buffer
1113 l Use Normal Screen Buffer
1114
1115
1116
1117 "Ps = 66"
1118 h Application Keypad (DECPAM) == ESC =
1119 l Normal Keypad (DECPNM) == ESC >
1120
1121 "Ps = 67"
1122 h Backspace key sends BS (DECBKM)
1123 l Backspace key sends DEL
1124
1125 "Ps = 1000" (X11 XTerm)
1126 h Send Mouse X & Y on button press and release.
1127 l No mouse reporting.
1128
1129 "Ps = 1001" (X11 XTerm) *unimplemented*
1130 h Use Hilite Mouse Tracking.
1131 l No mouse reporting.
1132
1133 "Ps = 1010" (rxvt)
1134 h Don't scroll to bottom on TTY output
1135 l Scroll to bottom on TTY output
1136
1137 "Ps = 1011" (rxvt)
1138 h Scroll to bottom when a key is pressed
1139 l Don't scroll to bottom when a key is pressed
1140
1141 "Ps = 1047"
1142 h Use Alternate Screen Buffer
1143 l Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
1144
1145 "Ps = 1048"
1146 h Save cursor position
1147 l Restore cursor position
1148
1149 "Ps = 1049"
1150 h Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1151 l Use Normal Screen Buffer
1152
1153
1154
1155 XTerm Operating System Commands
1156 "ESC ] Ps;Pt ST"
1157 Set XTerm Parameters. 8-bit ST: 0x9c, 7-bit ST sequence: ESC \
1158 (0x1b, 0x5c), backwards compatible terminator BEL (0x07) is also
1159 accepted. any octet can be escaped by prefixing it with SYN (0x16,
1160 ^V).
1161
1162 Ps = 0 Change Icon Name and Window Title to Pt
1163 Ps = 1 Change Icon Name to Pt
1164 Ps = 2 Change Window Title to Pt
1165 Ps = 3 If Pt starts with a ?, query the (STRING) property of the window and return it. If Pt contains a =, set the named property to the given value, else delete the specified property.
1166 Ps = 4 Pt is a semi-colon separated sequence of one or more semi-colon separated number/name pairs, where number is an index to a colour and name is the name of a colour. Each pair causes the numbered colour to be changed to name. Numbers 0-7 corresponds to low-intensity (normal) colours and 8-15 corresponds to high-intensity colours. 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white
1167 Ps = 10 Change colour of text foreground to Pt (NB: may change in future)
1168 Ps = 11 Change colour of text background to Pt (NB: may change in future)
1169 Ps = 12 Change colour of text cursor foreground to Pt
1170 Ps = 13 Change colour of mouse foreground to Pt
1171 Ps = 17 Change colour of highlight characters to Pt
1172 Ps = 18 Change colour of bold characters to Pt
1173 Ps = 19 Change colour of underlined characters to Pt
1174 Ps = 20 Change default background to Pt
1175 Ps = 39 Change default foreground colour to Pt.
1176 Ps = 46 Change Log File to Pt unimplemented
1177 Ps = 49 Change default background colour to Pt.
1178 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
1179 Ps = 55 Log all scrollback buffer and all of screen to Pt
1180 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills).
1181 Ps = 703 Menubar command Pt (Compile menubar).
1182 Ps = 704 Change colour of italic characters to Pt
1183 Ps = 705 Change background pixmap tint colour to Pt (Compile transparency).
1184 Ps = 710 Set normal fontset to Pt. Same as Ps = 50.
1185 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles).
1186 Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1187 Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1188 Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1189 Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1190
1191
1192
1193 menuBar
1194 The exact syntax used is *almost* solidified. In the menus, DON'T try to
1195 use menuBar commands that add or remove a menuBar.
1196
1197 Note that in all of the commands, the */path/* *cannot* be omitted: use
1198 ./ to specify a menu relative to the current menu.
1199
1200 Overview of menuBar operation
1201 For the menuBar XTerm escape sequence "ESC ] 703 ; Pt ST", the syntax of
1202 "Pt" can be used for a variety of tasks:
1203
1204 At the top level is the current menuBar which is a member of a circular
1205 linked-list of other such menuBars.
1206
1207 The menuBar acts as a parent for the various drop-down menus, which in
1208 turn, may have labels, separator lines, menuItems and subMenus.
1209
1210 The menuItems are the useful bits: you can use them to mimic keyboard
1211 input or even to send text or escape sequences back to rxvt.
1212
1213 The menuBar syntax is intended to provide a simple yet robust method of
1214 constructing and manipulating menus and navigating through the menuBars.
1215
1216 The first step is to use the tag [menu:*name*] which creates the menuBar
1217 called *name* and allows access. You may now or menus, subMenus, and
1218 menuItems. Finally, use the tag [done] to set the menuBar access as
1219 readonly to prevent accidental corruption of the menus. To re-access the
1220 current menuBar for alterations, use the tag [menu], make the
1221 alterations and then use [done]
1222
1223
1224
1225 Commands
1226 [menu:+*name*]
1227 access the named menuBar for creation or alteration. If a new
1228 menuBar is created, it is called *name* (max of 15 chars) and the
1229 current menuBar is pushed onto the stack
1230
1231 [menu]
1232 access the current menuBar for alteration
1233
1234 [title:+*string*]
1235 set the current menuBar's title to *string*, which may contain the
1236 following format specifiers:
1237
1238 B<%n> rxvt name (as per the B<-name> command-line option)
1239 B<%v> rxvt version
1240 B<%%> literal B<%> character
1241
1242 [done]
1243 set menuBar access as readonly. End-of-file tag for [read:+*file*]
1244 operations.
1245
1246 [read:+*file*]
1247 read menu commands directly from *file* (extension ".menu" will be
1248 appended if required.) Start reading at a line with [menu] or
1249 [menu:+*name* and continuing until [done] is encountered.
1250
1251 Blank and comment lines (starting with #) are ignored. Actually,
1252 since any invalid menu commands are also ignored, almost anything
1253 could be construed as a comment line, but this may be tightened up
1254 in the future ... so don't count on it!.
1255
1256 [read:+*file*;+*name*]
1257 The same as [read:+*file*], but start reading at a line with
1258 [menu:+*name*] and continuing until [done:+*name*] or [done] is
1259 encountered.
1260
1261 [dump]
1262 dump all menuBars to the file /tmp/rxvt-PID in a format suitable for
1263 later rereading.
1264
1265 [rm:name]
1266 remove the named menuBar
1267
1268 [rm] [rm:]
1269 remove the current menuBar
1270
1271 [rm*] [rm:*]
1272 remove all menuBars
1273
1274 [swap]
1275 swap the top two menuBars
1276
1277 [prev]
1278 access the previous menuBar
1279
1280 [next]
1281 access the next menuBar
1282
1283 [show]
1284 Enable display of the menuBar
1285
1286 [hide]
1287 Disable display of the menuBar
1288
1289 [pixmap:+*name*]
1290 [pixmap:+*name*;*scaling*]
1291 (set the background pixmap globally
1292
1293 A Future implementation *may* make this local to the menubar)
1294
1295 [:+*command*:]
1296 ignore the menu readonly status and issue a *command* to or a menu
1297 or menuitem or change the ; a useful shortcut for setting the quick
1298 arrows from a menuBar.
1299
1300
1301
1302 Adding and accessing menus
1303 The following commands may also be + prefixed.
1304
1305 /+ access menuBar top level
1306
1307 ./+ access current menu level
1308
1309 ../+
1310 access parent menu (1 level up)
1311
1312 ../../
1313 access parent menu (multiple levels up)
1314
1315 */path/*menu
1316 add/access menu
1317
1318 */path/*menu/*
1319 add/access menu and clear it if it exists
1320
1321 */path/*{-}
1322 add separator
1323
1324 */path/*{item}
1325 add item as a label
1326
1327 */path/*{item} action
1328 add/alter *menuitem* with an associated *action*
1329
1330 */path/*{item}{right-text}
1331 add/alter *menuitem* with right-text as the right-justified text and
1332 as the associated *action*
1333
1334 */path/*{item}{rtext} action
1335 add/alter *menuitem* with an associated *action* and with rtext as
1336 the right-justified text.
1337
1338 Special characters in *action* must be backslash-escaped:
1339 \a \b \E \e \n \r \t \octal
1340
1341 or in control-character notation:
1342 ^@, ^A .. ^Z .. ^_, ^?
1343
1344 To send a string starting with a NUL (^@) character to the program,
1345 start *action* with a pair of NUL characters (^@^@), the first of which
1346 will be stripped off and the balance directed to the program. Otherwise
1347 if *action* begins with NUL followed by non-+NUL characters, the leading
1348 NUL is stripped off and the balance is sent back to rxvt.
1349
1350 As a convenience for the many Emacs-type editors, *action* may start
1351 with M- (eg, M-$ is equivalent to \E$) and a CR will be appended if
1352 missed from M-x commands.
1353
1354 As a convenience for issuing XTerm ESC ] sequences from a menubar (or
1355 quick arrow), a BEL (^G) will be appended if needed.
1356
1357 For example,
1358 M-xapropos is equivalent to \Exapropos\r
1359
1360 and \E]703;mona;100 is equivalent to \E]703;mona;100\a
1361
1362 The option {*right-rtext*} will be right-justified. In the absence of a
1363 specified action, this text will be used as the *action* as well.
1364
1365 For example,
1366 /File/{Open}{^X^F} is equivalent to /File/{Open}{^X^F} ^X^F
1367
1368 The left label *is* necessary, since it's used for matching, but
1369 implicitly hiding the left label (by using same name for both left and
1370 right labels), or explicitly hiding the left label (by preceeding it
1371 with a dot), makes it possible to have right-justified text only.
1372
1373 For example,
1374 /File/{Open}{Open} Open-File-Action
1375
1376 or hiding it
1377 /File/{.anylabel}{Open} Open-File-Action
1378
1379
1380
1381 Removing menus
1382 -/*+
1383 remove all menus from the menuBar, the same as [clear]
1384
1385 -+*/path*menu+
1386 remove menu
1387
1388 -+*/path*{item}+
1389 remove item
1390
1391 -+*/path*{-}
1392 remove separator)
1393
1394 -/path/menu/*
1395 remove all items, separators and submenus from menu
1396
1397
1398
1399 Quick Arrows
1400 The menus also provide a hook for *quick arrows* to provide easier user
1401 access. If nothing has been explicitly set, the default is to emulate
1402 the curror keys. The syntax permits each arrow to be altered
1403 individually or all four at once without re-entering their common
1404 beginning/end text. For example, to explicitly associate cursor actions
1405 with the arrows, any of the following forms could be used:
1406
1407 <r>+*Right*
1408 <l>+*Left*
1409 <u>+*Up*
1410 <d>+*Down*
1411 Define actions for the respective arrow buttons
1412
1413 <b>+*Begin*
1414 <e>+*End*
1415 Define common beginning/end parts for *quick arrows* which used in
1416 conjunction with the above <r> <l> <u> <d> constructs
1417
1418 For example, define arrows individually,
1419 <u>\E[A
1420
1421 <d>\E[B
1422
1423 <r>\E[C
1424
1425 <l>\E[D
1426
1427 or all at once
1428 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1429
1430 or more compactly (factoring out common parts)
1431 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
1432
1433
1434
1435 Command Summary
1436 A short summary of the most *common* commands:
1437
1438 [menu:name]
1439 use an existing named menuBar or start a new one
1440
1441 [menu]
1442 use the current menuBar
1443
1444 [title:string]
1445 set menuBar title
1446
1447 [done]
1448 set menu access to readonly and, if reading from a file, signal EOF
1449
1450 [done:name]
1451 if reading from a file using [read:file;name] signal EOF
1452
1453 [rm:name]
1454 remove named menuBar(s)
1455
1456 [rm] [rm:]
1457 remove current menuBar
1458
1459 [rm*] [rm:*]
1460 remove all menuBar(s)
1461
1462 [swap]
1463 swap top two menuBars
1464
1465 [prev]
1466 access the previous menuBar
1467
1468 [next]
1469 access the next menuBar
1470
1471 [show]
1472 map menuBar
1473
1474 [hide]
1475 unmap menuBar
1476
1477 [pixmap;file]
1478 [pixmap;file;scaling]
1479 set a background pixmap
1480
1481 [read:file]
1482 [read:file;name]
1483 read in a menu from a file
1484
1485 [dump]
1486 dump out all menuBars to /tmp/rxvt-PID
1487
1488 / access menuBar top level
1489
1490 ./
1491 ../
1492 ../../
1493 access current or parent menu level
1494
1495 /path/menu
1496 add/access menu
1497
1498 /path/{-}
1499 add separator
1500
1501 /path/{item}{rtext} action
1502 add/alter menu item
1503
1504 -/* remove all menus from the menuBar
1505
1506 -/path/menu
1507 remove menu items, separators and submenus from menu
1508
1509 -/path/menu
1510 remove menu
1511
1512 -/path/{item}
1513 remove item
1514
1515 -/path/{-}
1516 remove separator
1517
1518 <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
1519 menu quick arrows
1520
1521 XPM
1522 For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt"
1523 can be the name of the background pixmap followed by a sequence of
1524 scaling/positioning commands separated by semi-colons. The
1525 scaling/positioning commands are as follows:
1526
1527 query scale/position
1528 ?
1529
1530 change scale and position
1531 WxH+X+Y
1532
1533 WxH+X (== WxH+X+X)
1534
1535 WxH (same as WxH+50+50)
1536
1537 W+X+Y (same as WxW+X+Y)
1538
1539 W+X (same as WxW+X+X)
1540
1541 W (same as WxW+50+50)
1542
1543 change position (absolute)
1544 =+X+Y
1545
1546 =+X (same as =+X+Y)
1547
1548 change position (relative)
1549 +X+Y
1550
1551 +X (same as +X+Y)
1552
1553 rescale (relative)
1554 Wx0 -> W *= (W/100)
1555
1556 0xH -> H *= (H/100)
1557
1558 For example:
1559
1560 \E]20;funky\a
1561 load funky.xpm as a tiled image
1562
1563 \E]20;mona;100\a
1564 load mona.xpm with a scaling of 100%
1565
1566 \E]20;;200;?\a
1567 rescale the current pixmap to 200% and display the image geometry in
1568 the title
1569
1570 Mouse Reporting
1571 "ESC [ M <b> <x> <y>"
1572 report mouse position
1573
1574 The lower 2 bits of "<b>" indicate the button:
1575
1576 Button = "(<b> - SPACE) & 3"
1577 0 Button1 pressed
1578 1 Button2 pressed
1579 2 Button3 pressed
1580 3 button released (X11 mouse report)
1581
1582 The upper bits of "<b>" indicate the modifiers when the button was
1583 pressed and are added together (X11 mouse report only):
1584
1585 State = "(<b> - SPACE) & 60"
1586 4 Shift
1587 8 Meta
1588 16 Control
1589 32 Double Click (Rxvt extension)
1590
1591 Col = "<x> - SPACE"
1592
1593 Row = "<y> - SPACE"
1594
1595 Key Codes
1596 Note: Shift + F1-F10 generates F11-F20
1597
1598 For the keypad, use Shift to temporarily override Application-Keypad
1599 setting use Num_Lock to toggle Application-Keypad setting if Num_Lock is
1600 off, toggle Application-Keypad setting. Also note that values of Home,
1601 End, Delete may have been compiled differently on your system.
1602
1603 Normal Shift Control Ctrl+Shift
1604 Tab ^I ESC [ Z ^I ESC [ Z
1605 BackSpace ^H ^? ^? ^?
1606 Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @
1607 Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @
1608 Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
1609 Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @
1610 Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @
1611 Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @
1612 Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @
1613 End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @
1614 Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
1615 F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^
1616 F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^
1617 F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^
1618 F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^
1619 F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^
1620 F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^
1621 F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^
1622 F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^
1623 F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^
1624 F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^
1625 F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @
1626 F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @
1627 F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @
1628 F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @
1629 F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @
1630 F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @
1631 F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @
1632 F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @
1633 F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @
1634 F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @
1635 Application
1636 Up ESC [ A ESC [ a ESC O a ESC O A
1637 Down ESC [ B ESC [ b ESC O b ESC O B
1638 Right ESC [ C ESC [ c ESC O c ESC O C
1639 Left ESC [ D ESC [ d ESC O d ESC O D
1640 KP_Enter ^M ESC O M
1641 KP_F1 ESC O P ESC O P
1642 KP_F2 ESC O Q ESC O Q
1643 KP_F3 ESC O R ESC O R
1644 KP_F4 ESC O S ESC O S
1645 XK_KP_Multiply * ESC O j
1646 XK_KP_Add + ESC O k
1647 XK_KP_Separator , ESC O l
1648 XK_KP_Subtract - ESC O m
1649 XK_KP_Decimal . ESC O n
1650 XK_KP_Divide / ESC O o
1651 XK_KP_0 0 ESC O p
1652 XK_KP_1 1 ESC O q
1653 XK_KP_2 2 ESC O r
1654 XK_KP_3 3 ESC O s
1655 XK_KP_4 4 ESC O t
1656 XK_KP_5 5 ESC O u
1657 XK_KP_6 6 ESC O v
1658 XK_KP_7 7 ESC O w
1659 XK_KP_8 8 ESC O x
1660 XK_KP_9 9 ESC O y
1661
1662 CONFIGURE OPTIONS
1663 General hint: if you get compile errors, then likely your configuration
1664 hasn't been tested well. Either try with --enable-everything or use the
1665 ./reconf script as a base for experiments. ./reconf is used by myself,
1666 so it should generally be a working config. Of course, you should always
1667 report when a combination doesn't work, so it can be fixed. Marc Lehmann
1668 <rxvt@schmorp.de>.
1669
1670 --enable-everything
1671 Add support for all non-multichoice options listed in "./configure
1672 --help". Note that unlike other enable options this is order
1673 dependant. You can specify this and then disable options which this
1674 enables by *following* this with the appropriate commands.
1675
1676 --enable-xft
1677 Add support for Xft (anti-aliases, among others) fonts. Xft fonts
1678 are slower and require lots of memory, but as long as you don't use
1679 them, you don't pay for them.
1680
1681 --enable-font-styles
1682 Add support for bold, *italic* and *bold italic* font styles. The
1683 fonts can be set manually or automatically.
1684
1685 --with-codesets=NAME,...
1686 Compile in support for additional codeset (encoding) groups ("eu",
1687 "vn" are always compiled in, which includes most 8-bit character
1688 sets). These codeset tables are used for driving X11 core fonts,
1689 they are not required for Xft fonts, although having them compiled
1690 in lets rxvt-unicode choose replacement fonts more intelligently.
1691 Compiling them in will make your binary bigger (all of together cost
1692 about 700kB), but it doesn't increase memory usage unless you use a
1693 font requiring one of these encodings.
1694
1695 all all available codeset groups
1696 zh common chinese encodings
1697 zh_ext rarely used but very big chinese encodigs
1698 jp common japanese encodings
1699 jp_ext rarely used but big japanese encodings
1700 kr korean encodings
1701
1702 --enable-xim
1703 Add support for XIM (X Input Method) protocol. This allows using
1704 alternative input methods (e.g. kinput2) and will also correctly set
1705 up the input for people using dead keys or compose keys.
1706
1707 --enable-unicode3
1708 Enable direct support for displaying unicode codepoints above 65535
1709 (the basic multilingual page). This increases storage requirements
1710 per character from 2 to 4 bytes. X11 fonts do not yet support these
1711 extra characters, but Xft does.
1712
1713 Please note that rxvt-unicode can store unicode code points >65535
1714 even without this flag, but the number of such characters is limited
1715 to a view thousand (shared with combining characters, see next
1716 switch), and right now rxvt-unicode cannot display them
1717 (input/output and cut&paste still work, though).
1718
1719 --enable-combining
1720 Enable automatic composition of combining characters into composite
1721 characters. This is required for proper viewing of text where
1722 accents are encoded as seperate unicode characters. This is done by
1723 using precomposited characters when available or creating new
1724 pseudo-characters when no precomposed form exists.
1725
1726 Without --enable-unicode3, the number of additional precomposed
1727 characters is rather limited (2048, if this is full, rxvt-unicode
1728 will use the private use area, extending the number of combinations
1729 to 8448). With --enable-unicode3, no practical limit exists.
1730
1731 This option will also enable storage (but not display) of characters
1732 beyond plane 0 (>65535) when --enable-unicode3 was not specified.
1733
1734 The combining table also contains entries for arabic presentation
1735 forms, but these are not currently used. Bug me if you want these to
1736 be used (and tell me how these are to be used...).
1737
1738 --enable-fallback(=CLASS)
1739 When reading resource settings, also read settings for class CLASS
1740 (default: Rxvt). To disable resource fallback use
1741 --disable-fallback.
1742
1743 --with-res-name=NAME
1744 Use the given name (default: urxvt) as default application name when
1745 reading resources. Specify --with-res-name=rxvt to replace rxvt.
1746
1747 --with-res-class=CLASS
1748 Use the given class (default: URxvt) as default application class
1749 when reading resources. Specify --with-res-class=Rxvt to replace
1750 rxvt.
1751
1752 --enable-utmp
1753 Write user and tty to utmp file (used by programs like w) at start
1754 of rxvt execution and delete information when rxvt exits.
1755
1756 --enable-wtmp
1757 Write user and tty to wtmp file (used by programs like last) at
1758 start of rxvt execution and write logout when rxvt exits. This
1759 option requires --enable-utmp to also be specified.
1760
1761 --enable-lastlog
1762 Write user and tty to lastlog file (used by programs like lastlogin)
1763 at start of rxvt execution. This option requires --enable-utmp to
1764 also be specified.
1765
1766 --enable-xpm-background
1767 Add support for XPM background pixmaps.
1768
1769 --enable-transparency
1770 Add support for inheriting parent backgrounds thus giving a fake
1771 transparency to the term.
1772
1773 --enable-fading
1774 Add support for fading the text when focus is lost.
1775
1776 --enable-tinting
1777 Add support for tinting of transparent backgrounds.
1778
1779 --enable-menubar
1780 Add support for our menu bar system (this interacts badly with
1781 dynamic locale switching currently).
1782
1783 --enable-rxvt-scroll
1784 Add support for the original rxvt scrollbar.
1785
1786 --enable-next-scroll
1787 Add support for a NeXT-like scrollbar.
1788
1789 --enable-xterm-scroll
1790 Add support for an Xterm-like scrollbar.
1791
1792 --enable-plain-scroll
1793 Add support for a very unobtrusive, plain-looking scrollbar that is
1794 the favourite of the rxvt-unicode author, having used it for many
1795 years.
1796
1797 --enable-half-shadow
1798 Make shadows on the scrollbar only half the normal width & height.
1799 only applicable to rxvt scrollbars.
1800
1801 --enable-ttygid
1802 Change tty device setting to group "tty" - only use this if your
1803 system uses this type of security.
1804
1805 --disable-backspace-key
1806 Disable any handling of the backspace key by us - let the X server
1807 do it.
1808
1809 --disable-delete-key
1810 Disable any handling of the delete key by us - let the X server do
1811 it.
1812
1813 --disable-resources
1814 Remove all resources checking.
1815
1816 --enable-xgetdefault
1817 Make resources checking via XGetDefault() instead of our small
1818 version which only checks ~/.Xdefaults, or if that doesn't exist
1819 then ~/.Xresources.
1820
1821 Please note that nowadays, things like XIM will automatically pull
1822 in and use the full X resource manager, so the overhead of using it
1823 might be very small, if nonexistant.
1824
1825 --enable-strings
1826 Add support for our possibly faster memset() function and other
1827 various routines, overriding your system's versions which may have
1828 been hand-crafted in assembly or may require extra libraries to link
1829 in. (this breaks ANSI-C rules and has problems on many GNU/Linux
1830 systems).
1831
1832 --disable-swapscreen
1833 Remove support for swap screen.
1834
1835 --enable-frills
1836 Add support for many small features that are not essential but nice
1837 to have. Normally you want this, but for very small binaries you may
1838 want to disable this.
1839
1840 A non-exhaustive list of features enabled by "--enable-frills"
1841 (possibly in combination with other switches) is:
1842
1843 MWM-hints
1844 EWMH-hints (pid, utf8 names) and protocols (ping)
1845 seperate underline colour
1846 settable border widths and borderless switch
1847 settable extra linespacing
1848 iso-14755-2 and -3, and visual feedback
1849 backindex and forwardindex escape sequence
1850 window op and some xterm/OSC escape sequences
1851 tripleclickwords
1852 settable insecure mode
1853 keysym remapping support
1854 cursor blinking and underline cursor
1855 -embed and -pty-fd options
1856
1857 --enable-iso14755
1858 Enable extended ISO 14755 support (see rxvt(1), or doc/rxvt.1.txt).
1859 Basic support (section 5.1) is enabled by "--enable-frills", while
1860 support for 5.2, 5.3 and 5.4 is enabled with this switch.
1861
1862 --enable-keepscrolling
1863 Add support for continual scrolling of the display when you hold the
1864 mouse button down on a scrollbar arrow.
1865
1866 --enable-mousewheel
1867 Add support for scrolling via mouse wheel or buttons 4 & 5.
1868
1869 --enable-slipwheeling
1870 Add support for continual scrolling (using the mouse wheel as an
1871 accelerator) while the control key is held down. This option
1872 requires --enable-mousewheel to also be specified.
1873
1874 --disable-new-selection
1875 Remove support for mouse selection style like that of xterm.
1876
1877 --enable-dmalloc
1878 Use Gray Watson's malloc - which is good for debugging See
1879 http://www.letters.com/dmalloc/ for details If you use either this
1880 or the next option, you may need to edit src/Makefile after
1881 compiling to point DINCLUDE and DLIB to the right places.
1882
1883 You can only use either this option and the following (should you
1884 use either) .
1885
1886 --enable-dlmalloc
1887 Use Doug Lea's malloc - which is good for a production version See
1888 <http://g.oswego.edu/dl/html/malloc.html> for details.
1889
1890 --enable-smart-resize
1891 Add smart growth/shrink behaviour when changing font size via from
1892 hot keys. This should keep in a fixed position the rxvt corner which
1893 is closest to a corner of the screen.
1894
1895 --enable-pointer-blank
1896 Add support to have the pointer disappear when typing or inactive.
1897
1898 --with-name=NAME
1899 Set the basename for the installed binaries (default: "urxvt",
1900 resulting in "urxvt", "urxvtd" etc.). Specify "--with-name=rxvt" to
1901 replace with "rxvt".
1902
1903 --with-term=NAME
1904 Change the environmental variable for the terminal to NAME (default
1905 "rxvt-unicode")
1906
1907 --with-terminfo=PATH
1908 Change the environmental variable for the path to the terminfo tree
1909 to PATH.
1910
1911 --with-x
1912 Use the X Window System (pretty much default, eh?).
1913
1914 --with-xpm-includes=DIR
1915 Look for the XPM includes in DIR.
1916
1917 --with-xpm-library=DIR
1918 Look for the XPM library in DIR.
1919
1920 --with-xpm
1921 Not needed - define via --enable-xpm-background.
1922
1923 AUTHORS
1924 Marc Lehmann <rxvt@schmorp.de> converted this document to pod and
1925 reworked it from the original Rxvt documentation, which was done by
1926 Geoff Wing <gcw@pobox.com>, who in turn used the XTerm documentation and
1927 other sources.
1928