ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.7.pod
(Generate patch)

Comparing rxvt-unicode/doc/rxvt.7.pod (file contents):
Revision 1.1 by root, Thu Aug 12 20:42:12 2004 UTC vs.
Revision 1.34 by root, Thu Feb 3 10:24:10 2005 UTC

1=head1 Rxvt Technical Reference 1=head1 NAME
2 2
3Marc Lehmann <rxvt@schmorp.de>, converted to pod and reworked from the 3RXVT REFERENCE - FAQ, command sequences and other background information
4original Rxvt documentation by Geoff Wing <gcw@pobox.com>, who in turn used 4
5the XTerm documentation and other sources. 5=head1 FREQUENTLY ASKED QUESTIONS
6
7=over 4
8
9=item How do I know which rxvt-unicode version I'm using?
10
11The version number is displayed with the usage (-h). Also the escape
12sequence C<ESC[8n> sets the window title to the version number.
13
14=item When I log-in to another system it tells me about missing terminfo data?
15
16The terminal description used by rxvt-unicode is not as widely available
17as that for xterm, or even rxvt (for which the same problem often arises).
18
19The correct solution for this problem is to install the terminfo, this can
20be done like this (with ncurses' infocmp):
21
22 REMOTE=remotesystem.domain
23 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti"
24
25... or by installing rxvt-unicode normally on the remote system,
26
27If you cannot or do not want to do this, then you can simply set
28C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
29problems arising, which includes wrong keymapping, less and different
30colours and some refresh errors in fullscreen applications. It's a nice
31quick-and-dirty workaround for rare cases, though.
32
33If you always want to do this you can either recompile rxvt-unicode with
34the desired TERM value or use a resource to set it:
35
36 URxvt.termName: rxvt
37
38If you don't plan to use B<rxvt> (quite common...) you could also replace
39the rxvt terminfo file with the rxvt-unicode one.
40
41=item I need a termcap file entry.
42
43You could use rxvt's termcap entry with resonable results in many cases.
44You can also create a termcap entry by using terminfo's infocmp program
45like this:
46
47 infocmp -C rxvt-unicode
48
49OR you could this termcap entry:
50
51 rxvt-unicode|rxvt-unicode terminal (X Window System):\
52 :am:bw:eo:km:mi:ms:xn:xo:\
53 :co#80:it#8:li#24:\
54 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
55 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
56 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\
57 :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\
58 :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
59 :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\
60 :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
61 :k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\
62 :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
63 :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\
64 :ke=\E[?1l\E>:kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
65 :ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\
66 :nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:\
67 :st=\EH:ta=^I:te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:\
68 :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
69 :vs=\E[?25h:
70
71=item Why does C<ls> no longer have coloured output?
72
73The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
74decide wether a terminal has colour, but uses it's own configuration
75file. Needless to say, C<rxvt-unicode> is not in it's default file (among
76with most other terminals supporting colour). Either add:
77
78 TERM rxvt-unicode
79
80to C</etc/DIR_COLORS> or simply add:
81
82 alias ls='ls --color=auto'
83
84to your C<.profile> or C<.bashrc>.
85
86=item Why doesn't vim/emacs etc. use the 88 colour mode?
87
88=item Why doesn't vim/emacs etc. make use of italic?
89
90=item Why are the secondary screen-related options not working properly?
91
92Make sure you are using C<TERM=rxvt-unicode>. Some pre-packaged
93distributions (most notably Debian GNU/Linux) break rxvt-unicode
94by setting C<TERM> to C<rxvt>, which doesn't have these extra
95features. Unfortunately, some of these (most notably, again, Debian
96GNU/Linux) furthermore fail to even install the C<rxvt-unicode> terminfo
97file, so you will need to install it on your own (See the question B<When
98I log-in to another system it tells me about missing terminfo data?> on
99how to do this).
100
101=item Rxvt-unicode does not seem to understand the selected encoding?
102
103=item Unicode does not seem to work?
104
105If you encounter strange problems like typing an accented character but
106getting two unrelated other characters or similar, or if program output is
107subtly garbled, then you should check your locale settings.
108
109Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
110programs. Often rxvt-unicode is started in the C<C> locale, while the
111login script running within the rxvt-unicode window changes the locale to
112sth. else, e.h. C<en_GB.UTF-8>. Needless to say, this is not going to work.
113
114The best thing is to fix your startup environment, as you will likely run
115into other problems. If nothing works you can try this in your .profile.
116
117 printf '\e]701;%s\007' "$LC_CTYPE"
118
119If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
120supported on your systems. Some systems have a C<locale> command which
121displays this. If it displays sth. like:
122
123 locale: Cannot set LC_CTYPE to default locale: ...
124
125Then the locale you specified is not supported on your system.
126
127If nothing works and you are sure that everything is set correctly then
128you will need to remember a little known fact: Some programs just don't
129support locales :(
130
131=item Why do some characters look so much different than others?
132
133=item How does rxvt-unicode choose fonts?
134
135Most fonts do not contain the full range of Unicode, which is
136fine. Chances are that the font you (or the admin/package maintainer of
137your system/os) have specified does not cover all the characters you want
138to display.
139
140B<rxvt-unicode> makes a best-effort try at finding a replacement
141font. Often the result is fine, but sometimes the chosen font looks
142bad. Many fonts have totally strange characters that don't resemble the
143correct glyph at all, and rxvt-unicode lacks the artificial intelligence
144to detect that a specific glyph is wrong: it has to believe the font that
145the characters it contains indeed look correct.
146
147In that case, select a font of your taste and add it to the font list,
148e.g.:
149
150 @@RXVT_NAME@@ -fn basefont,font2,font3...
151
152When rxvt-unicode sees a character, it will first look at the base
153font. If the base font does not contain the character, it will go to the
154next font, and so on. Specifying your own fonts will also speed up this
155search and use less resources within rxvt-unicode and the X-server.
156
157The only limitation is that all the fonts must not be larger than the base
158font, as the base font defines the principal cell size, which must be the
159same due to the way terminals work.
160
161=item Why do some chinese characters look so different than others?
162
163This is because there is a difference between script and language --
164rxvt-unicode does not know which language the text that is output
165is, as it only knows the unicode character codes. If rxvt-unicode
166first sees a japanese character, it might choose a japanese font for
167it. Subsequent japanese characters will take that font. Now, many chinese
168characters aren't represented in japanese fonts, so when the first
169non-japanese character comes up, rxvt-unicode will look for a chinese font
170-- unfortunately at this point, it will still use the japanese font for
171japanese characters that are also chinese.
172
173The workaround is easy: just tag a chinese font at the end of your font
174list (see the previous question). The key is to view the font list as
175a preference list: If you expect more japanese, list a japanese font
176first. If you expect more chinese, put a chinese font first.
177
178In the future it might be possible to switch preferences at runtime (the
179internal data structure has no problem with using different fonts for
180the same character at the same time, but no interface for this has been
181designed yet).
182
183=item Why does rxvt-unicode sometimes leave pixel droppings?
184
185Most fonts were not designed for terminal use, which means that character
186size varies a lot. A font that is otherwise fine for terminal use might
187contain some characters that are simply too wide. Rxvt-unicode will avoid
188these characters. For characters that are just "a bit" too wide a special
189"careful" rendering mode is used that redraws adjacent characters.
190
191All of this requires that fonts do not lie about character sizes,
192however: Xft fonts often draw glyphs larger than their acclaimed bounding
193box, and rxvt-unicode has no way of detecting this (the correct way is to
194ask for the character bounding box, which unfortunately is wrong in these
195cases).
196
197It's not clear (to me at least), wether this is a bug in Xft, freetype,
198or the respective font. If you encounter this problem you might try using
199the C<-lsp> option to give the font more height. If that doesn't work, you
200might be forced to use a different font.
201
202All of this is not a problem when using X11 core fonts, as their bounding
203box data is correct.
204
205=item My Compose (Multi_key) key is no longer working.
206
207The most common causes for this are that either your locale is not set
208correctly, or you specified a B<preeditStyle> that is not supported by
209your input method. For example, if you specified B<OverTheSpot> and
210your input method (e.g. the default input method handling Compose keys)
211does not support this (for instance because it is not visual), then
212rxvt-unicode will continue without an input method.
213
214In this case either do not specify a B<preeditStyle> or specify more than
215one pre-edit style, such as B<OverTheSpot,Root,None>.
216
217=item I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755
218
219Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on
220international keyboards) or simply use ISO 14755 support to your
221advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for other
222codes, too, such as C<Ctrl-Shift-1-d> to type the default telnet escape
223character and so on.
224
225=item How can I keep rxvt-unicode from using reverse video so much?
226
227First of all, make sure you are running with the right terminfo
228(C<urxvt>), which will get rid of most of these effects. Then make sure
229you have specified colours for italic and bold, as otherwise rxvt-unicode
230might use reverse video to simulate the effect:
231
232 URxvt*colorBD: white
233 URxvt*colorIT: green
234
235=item Some programs assume totally weird colours (red instead of blue), how can I fix that?
236
237For some unexplainable reason, some programs (i.e. irssi) assume a very
238weird colour palette when confronted with a terminal with more than the
239standard 8 colours (rxvt-unicode supports 88). The right fix is, of
240course, to fix these programs not to assume non-ISO colours without very
241good reasons.
242
243In the meantime, you can either edit your C<urxvt> terminfo definition to
244only claim 8 colour support or use C<TERM=rxvt>, which will fix colours
245but keep you from using other rxvt-unicode features.
246
247=item I am on FreeBSD and rxvt-unicode does not seem to work at all.
248
249Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
250in your compile environment, or an implementation that implements it,
251wether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
252B<wchar_t> is represented as unicode.
253
254As you might have guessed, FreeBSD does neither define this symobl nor
255does it support it. Instead, it uses it's own internal representation of
256B<wchar_t>. This is, of course, completely legal.
257
258However, C<__STDC_ISO_10646__> is the only sane way to support
259multi-language apps in an OS, as using a locale-dependent (and
260non-standardized) representation of B<wchar_t> makes it impossible to
261convert between B<wchar_t> (as used by X11 and your applications) and any
262other encoding without implementing OS-specific-wrappers for each and
263every locale. There simply are no APIs to convert B<wchar_t> into anything
264except the current locale encoding.
265
266Some applications (such as the formidable B<mlterm>) work around this
267by carrying their own replacement functions for character set handling
268with them, and either implementing OS-dependent hacks or doing multiple
269conversions (which is slow and unreliable in case the OS implements
270encodings slightly different than the terminal emulator).
271
272The rxvt-unicode author insists that the right way to fix this is in the
273system libraries once and for all, instead of forcing every app to carry
274complete replacements.
275
276=item How does rxvt-unicode determine the encoding to use?
277
278=item Is there an option to switch encodings?
279
280Unlike some other terminals, rxvt-unicode has no encoding switch, and no
281specific "utf-8" mode, such as xterm. In fact, it doesn't even know about
282UTF-8 or any other encodings with respect to terminal I/O.
283
284The reasons is that there exists a perfectly fine mechanism for selecting
285the encoding, doing I/O and (most important) communicating this to all
286applications so everybody agrees on character properties such as width and
287code number. This mechanism is the I<locale>.
288
289Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
290programs doing the same (that is, most) will automatically agree in the
291interpretation of characters.
292
293Unfortunately, there is no system-independent way to select locales, nor
294is there a standard on how locale specifiers will look like.
295
296On most systems, the content of the C<LC_CTYPE> environment variable
297contains an arbitrary string which corresponds to an already-installed
298locale. Common names for locales are C<en_US.UTF-8>, C<de_DE.ISO-8859-15>,
299C<ja_JP.EUC-JP>, i.e. C<language_country.encoding>, but other forms
300(i.e. C<de> or C<german>) are also common.
301
302Rxvt-unicode ignores all other locale categories, and except for
303the encoding, ignores country or language-specific settings,
304i.e. C<de_DE.UTF-8> and C<ja_JP.UTF-8> are the same for rxvt-unicode.
305
306If you want to use a specific encoding you have to make sure you start
307rxvt-unicode with the correct C<LC_CTYPE> category.
308
309=item Can I switch locales at runtime?
310
311Yes, using an escape sequence. Try sth. like this, which sets
312rxvt-unicode's idea of C<LC_CTYPE>.
313
314 printf '\e]701;%s\007' ja_JP.SJIS
315
316See also the previous question.
317
318Sometimes this capability is rather handy when you want to work in one
319locale (e.g. C<de_DE.UTF-8>) but some programs don't support UTF-8. For
320example, I use this script to start C<xjdic>, which first switches to a
321locale supported by xjdic and back later:
322
323 printf '\e]701;%s\007' ja_JP.SJIS
324 xjdic -js
325 printf '\e]701;%s\007' de_DE.UTF-8
326
327=item Can I switch the fonts at runtime?
328
329Yes, using an escape sequence. Try sth. like this, which has the same
330effect as using the C<-fn> switch, and takes effect immediately:
331
332 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
333
334This is useful if you e.g. work primarily with japanese (and prefer a
335japanese font), but you have to switch to chinese temporarily, where
336japanese fonts would only be in your way.
337
338You can think of this as a kind of manual ISO-2022 switching.
339
340=item Why do italic characters look as if clipped?
341
342Many fonts have difficulties with italic characters and hinting. For
343example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans
344Mono> completely fails in it's italic face. A workaround is to enable
345freetype autohinting, i.e. like this:
346
347 URxvt*italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
348 URxvt*boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
349
350=item My input method wants <some encoding> but I want UTF-8, what can I do?
351
352You can specify separate locales for the input method and the rest of the
353terminal, using the resource C<imlocale>:
354
355 URxvt*imlocale: ja_JP.EUC-JP
356
357Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still
358use your input method. Please note, however, that you will not be able to
359input characters outside C<EUC-JP> in a normal way then, as your input
360method limits you.
361
362=item Rxvt-unicode uses gobs of memory, how can I reduce that?
363
364Rxvt-unicode tries to obey the rule of not charging you for sth. you
365don't use. One thing you should try is to configure out all settings that
366you don't need, for example, Xft support is a resource hog by design,
367when used. Compiling it out ensures that no Xft font will be loaded
368accidentally when rxvt-unicode tries to find a font for your characters.
369
370Also, many people (me included) like large windows and even larger
371scrollback buffers: Without C<--enable-unicode3>, rxvt-unicode will use
3726 bytes per screen cell. For a 160x?? window this amounts to almost a
373kilobyte per line. A scrollback buffer of 10000 lines will then (if full)
374use 10 Megabytes of memory. With C<--enable-unicode3> it gets worse, as
375rxvt-unicode then uses 8 bytes per screen cell.
376
377=item Can I speed up Xft rendering somehow?
378
379Yes, the most obvious way to speed it up is to avoid Xft entirely, as
380it is simply slow. If you still want Xft fonts you might try to disable
381antialiasing (by appending C<:antialiasing=false>), which saves lots of
382memory and also speeds up rendering considerably.
383
384=item Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
385
386Rxvt-unicode will use whatever you specify as a font. If it needs to
387fall back to it's default font search list it will prefer X11 core
388fonts, because they are small and fast, and then use Xft fonts. It has
389antialiasing disabled for most of them, because the author thinks they
390look best that way.
391
392If you want antialiasing, you have to specify the fonts manually.
393
394=item Mouse cut/paste suddenly no longer works.
395
396Make sure that mouse reporting is actually turned off since killing
397some editors prematurely may leave the mouse in mouse report mode. I've
398heard that tcsh may use mouse reporting unless it otherwise specified. A
399quick check is to see if cut/paste works when the Alt or Shift keys are
400depressed. See @@RXVT_NAME@@(7)
401
402=item What's with this bold/blink stuff?
403
404If no bold colour is set via C<colorBD:>, bold will invert text using the
405standard foreground colour.
406
407For the standard background colour, blinking will actually make the
408text blink when compiled with C<--enable-blinking>. with standard
409colours. Without C<--enable-blinking>, the blink attribute will be
410ignored.
411
412On ANSI colours, bold/blink attributes are used to set high-intensity
413foreground/background colors.
414
415color0-7 are the low-intensity colors.
416
417color8-15 are the corresponding high-intensity colors.
418
419=item I don't like the screen colors. How do I change them?
420
421You can change the screen colors at run-time using F<~/.Xdefaults>
422resources (or as long-options).
423
424Here are values that are supposed to resemble a VGA screen,
425including the murky brown that passes for low-intensity yellow:
426
427 URxvt*color0: #000000
428 URxvt*color1: #A80000
429 URxvt*color2: #00A800
430 URxvt*color3: #A8A800
431 URxvt*color4: #0000A8
432 URxvt*color5: #A800A8
433 URxvt*color6: #00A8A8
434 URxvt*color7: #A8A8A8
435
436 URxvt*color8: #000054
437 URxvt*color9: #FF0054
438 URxvt*color10: #00FF54
439 URxvt*color11: #FFFF54
440 URxvt*color12: #0000FF
441 URxvt*color13: #FF00FF
442 URxvt*color14: #00FFFF
443 URxvt*color15: #FFFFFF
444
445And here is a more complete set of non-standard colors described as
446"pretty girly":
447
448 URxvt.cursorColor: #dc74d1
449 URxvt.pointerColor: #dc74d1
450 URxvt.background: #0e0e0e
451 URxvt.foreground: #4ad5e1
452 URxvt.color0: #000000
453 URxvt.color8: #8b8f93
454 URxvt.color1: #dc74d1
455 URxvt.color9: #dc74d1
456 URxvt.color2: #0eb8c7
457 URxvt.color10: #0eb8c7
458 URxvt.color3: #dfe37e
459 URxvt.color11: #dfe37e
460 URxvt.color5: #9e88f0
461 URxvt.color13: #9e88f0
462 URxvt.color6: #73f7ff
463 URxvt.color14: #73f7ff
464 URxvt.color7: #e1dddd
465 URxvt.color15: #e1dddd
466
467=item What's with the strange Backspace/Delete key behaviour?
468
469Assuming that the physical Backspace key corresponds to the
470BackSpace keysym (not likely for Linux ... see the following
471question) there are two standard values that can be used for
472Backspace: C<^H> and C<^?>.
473
474Historically, either value is correct, but rxvt-unicode adopts the debian
475policy of using C<^?> when unsure, because it's the one only only correct
476choice :).
477
478Rxvt-unicode tries to inherit the current stty settings and uses the value
479of `erase' to guess the value for backspace. If rxvt-unicode wasn't
480started from a terminal (say, from a menu or by remote shell), then the
481system value of `erase', which corresponds to CERASE in <termios.h>, will
482be used (which may not be the same as your stty setting).
483
484For starting a new rxvt-unicode:
485
486 # use Backspace = ^H
487 $ stty erase ^H
488 $ @@RXVT_NAME@@
489
490 # use Backspace = ^?
491 $ stty erase ^?
492 $ @@RXVT_NAME@@
493
494Toggle with "ESC[36h" / "ESC[36l" as documented in @@RXVT_NAME@@(7).
495
496For an existing rxvt-unicode:
497
498 # use Backspace = ^H
499 $ stty erase ^H
500 $ echo -n "^[[36h"
501
502 # use Backspace = ^?
503 $ stty erase ^?
504 $ echo -n "^[[36l"
505
506This helps satisfy some of the Backspace discrepancies that occur, but
507if you use Backspace = C<^H>, make sure that the termcap/terminfo value
508properly reflects that.
509
510The Delete key is a another casualty of the ill-defined Backspace problem.
511To avoid confusion between the Backspace and Delete keys, the Delete
512key has been assigned an escape sequence to match the vt100 for Execute
513(ESC[3~) and is in the supplied termcap/terminfo.
514
515Some other Backspace problems:
516
517some editors use termcap/terminfo,
518some editors (vim I'm told) expect Backspace = ^H,
519GNU Emacs (and Emacs-like editors) use ^H for help.
520
521Perhaps someday this will all be resolved in a consistent manner.
522
523=item I don't like the key-bindings. How do I change them?
524
525There are some compile-time selections available via configure. Unless
526you have run "configure" with the C<--disable-resources> option you can
527use the `keysym' resource to alter the keystrings associated with keysyms.
528
529Here's an example for a URxvt session started using `@@RXVT_NAME@@ -name URxvt'
530
531 URxvt.keysym.Home: \033[1~
532 URxvt.keysym.End: \033[4~
533 URxvt.keysym.C-apostrophe: \033<C-'>
534 URxvt.keysym.C-slash: \033<C-/>
535 URxvt.keysym.C-semicolon: \033<C-;>
536 URxvt.keysym.C-grave: \033<C-`>
537 URxvt.keysym.C-comma: \033<C-,>
538 URxvt.keysym.C-period: \033<C-.>
539 URxvt.keysym.C-0x60: \033<C-`>
540 URxvt.keysym.C-Tab: \033<C-Tab>
541 URxvt.keysym.C-Return: \033<C-Return>
542 URxvt.keysym.S-Return: \033<S-Return>
543 URxvt.keysym.S-space: \033<S-Space>
544 URxvt.keysym.M-Up: \033<M-Up>
545 URxvt.keysym.M-Down: \033<M-Down>
546 URxvt.keysym.M-Left: \033<M-Left>
547 URxvt.keysym.M-Right: \033<M-Right>
548 URxvt.keysym.M-C-0: list \033<M-C- 0123456789 >
549 URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz >
550 URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007
551
552See some more examples in the documentation for the B<keysym> resource.
553
554=item I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
555How do I make use of them? For example, the Sun Keyboard type 4
556has the following mappings that rxvt-unicode doesn't recognize.
557
558 KP_Insert == Insert
559 F22 == Print
560 F27 == Home
561 F29 == Prior
562 F33 == End
563 F35 == Next
564
565Rather than have rxvt-unicode try to accommodate all the various possible
566keyboard mappings, it is better to use `xmodmap' to remap the keys as
567required for your particular machine.
568
569=item How do I distinguish if I'm running rxvt-unicode or a regular xterm?
570I need this to decide about setting colors etc.
571
572rxvt and rxvt-unicode always export the variable "COLORTERM", so you can
573check and see if that is set. Note that several programs, JED, slrn,
574Midnight Commander automatically check this variable to decide whether or
575not to use color.
576
577=item How do I set the correct, full IP address for the DISPLAY variable?
578
579If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled
580insecure mode then it is possible to use the following shell script
581snippets to correctly set the display. If your version of rxvt-unicode
582wasn't also compiled with ESCZ_ANSWER (as assumed in these snippets) then
583the COLORTERM variable can be used to distinguish rxvt-unicode from a
584regular xterm.
585
586Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
587snippets:
588
589 # Bourne/Korn/POSIX family of shells:
590 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
591 if [ ${TERM:-foo} = xterm ]; then
592 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
593 echo -n '^[Z'
594 read term_id
595 stty icanon echo
596 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
597 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
598 read DISPLAY # set it in our local shell
599 fi
600 fi
601
602=item How do I compile the manual pages for myself?
603
604You need to have a recent version of perl installed as F</usr/bin/perl>,
605one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to
606the doc subdirectory and enter C<make alldoc>.
607
608=item My question isn't answered here, can I ask a human?
609
610Before sending me mail, you could go to IRC: C<irc.freenode.net>,
611channel C<#rxvt-unicode> has some rxvt-unicode enthusiasts that might be
612interested in learning about new and exciting problems (but not FAQs :).
613
614=back
615
616=head1 SYNOPSIS
617
618 # set a new font set
619 printf '\33]50;%s\007' 9x15,xft:Kochi" Mincho"
620
621 # change the locale and tell rxvt-unicode about it
622 export LC_CTYPE=ja_JP.EUC-JP; printf "\33]701;$LC_CTYPE\007"
623
624 # set window title
625 printf '\33]2;%s\007' "new window title"
626
627=head1 DESCRIPTION
628
629The rest of this document describes various technical aspects of
630B<rxvt-unicode>. First the description of supported command sequences,
631followed by menu and pixmap support and last by a description of all
632features selectable at C<configure> time.
633
634=head1 RXVT TECHNICAL REFERENCE
6 635
7=head1 Definitions 636=head1 Definitions
8 637
9=over 4 638=over 4
10 639
37=over 4 666=over 4
38 667
39=item B<< C<ENQ> >> 668=item B<< C<ENQ> >>
40 669
41Enquiry (Ctrl-E) = Send Device Attributes (DA) 670Enquiry (Ctrl-E) = Send Device Attributes (DA)
42request attributes from terminal == 671request attributes from terminal. See B<< C<ESC [ Ps c> >>.
43 672
44=item B<< C<BEL> >> 673=item B<< C<BEL> >>
45 674
46Bell (Ctrl-G) 675Bell (Ctrl-G)
47 676
139Single Shift Select of G3 Character Set (SS3): affects next character 768Single Shift Select of G3 Character Set (SS3): affects next character
140only I<unimplemented> 769only I<unimplemented>
141 770
142=item B<< C<ESC Z> >> 771=item B<< C<ESC Z> >>
143 772
144Obsolete form of returns: B<< C<ESC[?1;2C> >> I<rxvt compile-time option> 773Obsolete form of returns: B<< C<ESC[?1;2C> >> I<rxvt-unicode compile-time option>
145 774
146=item B<< C<ESC c> >> 775=item B<< C<ESC c> >>
147 776
148Full reset (RIS) 777Full reset (RIS)
149 778
153 782
154=item B<< C<ESC o> >> 783=item B<< C<ESC o> >>
155 784
156Invoke the G3 Character Set (LS3) 785Invoke the G3 Character Set (LS3)
157 786
158=item B<< C<ESC>(C<C> >> 787=item B<< C<ESC> ( C> >>
159 788
160Designate G0 Character Set (ISO 2022), see below for values of C<C>. 789Designate G0 Character Set (ISO 2022), see below for values of C<C>.
161 790
162=item B<< C<ESC>)C<C> >> 791=item B<< C<ESC> ) C> >>
163 792
164Designate G1 Character Set (ISO 2022), see below for values of C<C>. 793Designate G1 Character Set (ISO 2022), see below for values of C<C>.
165 794
166=item B<< C<ESC * C> >> 795=item B<< C<ESC * C> >>
167 796
191 820
192=back 821=back
193 822
194X<CSI> 823X<CSI>
195 824
196=head1 CSI (Code Sequence Introducer) Sequences 825=head1 CSI (Command Sequence Introducer) Sequences
197 826
198=over 4 827=over 4
199 828
200=item B<< C<ESC [ Ps @> >> 829=item B<< C<ESC [ Ps @> >>
201 830
298 927
299Move backward B<< C<Ps> >> [default: 1] tab stops 928Move backward B<< C<Ps> >> [default: 1] tab stops
300 929
301=item B<< C<ESC [ Ps '> >> 930=item B<< C<ESC [ Ps '> >>
302 931
303== 932See B<< C<ESC [ Ps G> >>
304 933
305=item B<< C<ESC [ Ps a> >> 934=item B<< C<ESC [ Ps a> >>
306 935
307==X<ESCOBPsc> 936See B<< C<ESC [ Ps C> >>
308 937
309=item B<< C<ESC [ Ps c> >> 938=item B<< C<ESC [ Ps c> >>
310 939
311Send Device Attributes (DA) 940Send Device Attributes (DA)
312B<< C<Ps = 0> >> (or omitted): request attributes from terminal 941B<< C<Ps = 0> >> (or omitted): request attributes from terminal
317 946
318Cursor to Line B<< C<Ps> >> (VPA) 947Cursor to Line B<< C<Ps> >> (VPA)
319 948
320=item B<< C<ESC [ Ps e> >> 949=item B<< C<ESC [ Ps e> >>
321 950
322== 951See B<< C<ESC [ Ps A> >>
323 952
324=item B<< C<ESC [ Ps;Ps f> >> 953=item B<< C<ESC [ Ps;Ps f> >>
325 954
326Horizontal and Vertical Position [row;column] (HVP) [default: 1;1] 955Horizontal and Vertical Position [row;column] (HVP) [default: 1;1]
327 956
334 B<< C<Ps = 0> >> Clear Current Column (default) 963 B<< C<Ps = 0> >> Clear Current Column (default)
335 B<< C<Ps = 3> >> Clear All (TBC) 964 B<< C<Ps = 3> >> Clear All (TBC)
336 965
337=end table 966=end table
338 967
968=item B<< C<ESC [ Pm h> >>
969
970Set Mode (SM). See B<< C<ESC [ Pm l> >> sequence for description of C<Pm>.
971
339=item B<< C<ESC [ Ps i> >> 972=item B<< C<ESC [ Ps i> >>
340 973
341Printing 974Printing. See also the C<print-pipe> resource.
342 975
343=begin table 976=begin table
344 977
978 B<< C<Ps = 0> >> print screen (MC0)
345 B<< C<Ps = 4> >> disable transparent print mode (MC4) 979 B<< C<Ps = 4> >> disable transparent print mode (MC4)
346 B<< C<Ps = 5> >> enable transparent print mode (MC5) I<unimplemented> 980 B<< C<Ps = 5> >> enable transparent print mode (MC5)
347 981
348=end table 982=end table
349
350=item B<< C<ESC [ Pm h> >>
351
352Set Mode (SM). See next sequence for description of C<Pm>.
353 983
354=item B<< C<ESC [ Pm l> >> 984=item B<< C<ESC [ Pm l> >>
355 985
356Reset Mode (RM) 986Reset Mode (RM)
357 987
364 B<< C<h> >> Insert Mode (SMIR) 994 B<< C<h> >> Insert Mode (SMIR)
365 B<< C<l> >> Replace Mode (RMIR) 995 B<< C<l> >> Replace Mode (RMIR)
366 996
367=end table 997=end table
368 998
369=item B<< C<Ps = 20> >> I<unimplemented> 999=item B<< C<Ps = 20> >> (partially implemented)
370 1000
371=begin table 1001=begin table
372 1002
373 B<< C<h> >> Automatic Newline (LNM) 1003 B<< C<h> >> Automatic Newline (LNM)
374 B<< C<h> >> Normal Linefeed (LNM) 1004 B<< C<l> >> Normal Linefeed (LNM)
375 1005
376=end table 1006=end table
377 1007
378=back 1008=back
379 1009
382Character Attributes (SGR) 1012Character Attributes (SGR)
383 1013
384=begin table 1014=begin table
385 1015
386 B<< C<Ps = 0> >> Normal (default) 1016 B<< C<Ps = 0> >> Normal (default)
387 B<< C<Ps = 1 / 22> >> On / Off Bold (bright fg) 1017 B<< C<Ps = 1 / 21> >> On / Off Bold (bright fg)
1018 B<< C<Ps = 3 / 23> >> On / Off Italic
388 B<< C<Ps = 4 / 24> >> On / Off Underline 1019 B<< C<Ps = 4 / 24> >> On / Off Underline
389 B<< C<Ps = 5 / 25> >> On / Off Blink (bright bg) 1020 B<< C<Ps = 5 / 25> >> On / Off Slow Blink (bright bg)
1021 B<< C<Ps = 6 / 26> >> On / Off Rapid Blink (bright bg)
390 B<< C<Ps = 7 / 27> >> On / Off Inverse 1022 B<< C<Ps = 7 / 27> >> On / Off Inverse
1023 B<< C<Ps = 8 / 27> >> On / Off Invisible (NYI)
391 B<< C<Ps = 30 / 40> >> fg/bg Black 1024 B<< C<Ps = 30 / 40> >> fg/bg Black
392 B<< C<Ps = 31 / 41> >> fg/bg Red 1025 B<< C<Ps = 31 / 41> >> fg/bg Red
393 B<< C<Ps = 32 / 42> >> fg/bg Green 1026 B<< C<Ps = 32 / 42> >> fg/bg Green
394 B<< C<Ps = 33 / 43> >> fg/bg Yellow 1027 B<< C<Ps = 33 / 43> >> fg/bg Yellow
395 B<< C<Ps = 34 / 44> >> fg/bg Blue 1028 B<< C<Ps = 34 / 44> >> fg/bg Blue
396 B<< C<Ps = 35 / 45> >> fg/bg Magenta 1029 B<< C<Ps = 35 / 45> >> fg/bg Magenta
397 B<< C<Ps = 36 / 46> >> fg/bg Cyan 1030 B<< C<Ps = 36 / 46> >> fg/bg Cyan
1031 B<< C<Ps = 38;5 / 48;5> >> set fg/bg to color #m (ISO 8613-6)
398 B<< C<Ps = 37 / 47> >> fg/bg White 1032 B<< C<Ps = 37 / 47> >> fg/bg White
399 B<< C<Ps = 39 / 49> >> fg/bg Default 1033 B<< C<Ps = 39 / 49> >> fg/bg Default
1034 B<< C<Ps = 90 / 100> >> fg/bg Bright Black
1035 B<< C<Ps = 91 / 101> >> fg/bg Bright Red
1036 B<< C<Ps = 92 / 102> >> fg/bg Bright Green
1037 B<< C<Ps = 93 / 103> >> fg/bg Bright Yellow
1038 B<< C<Ps = 94 / 104> >> fg/bg Bright Blue
1039 B<< C<Ps = 95 / 105> >> fg/bg Bright Magenta
1040 B<< C<Ps = 96 / 106> >> fg/bg Bright Cyan
1041 B<< C<Ps = 97 / 107> >> fg/bg Bright White
1042 B<< C<Ps = 99 / 109> >> fg/bg Bright Default
400 1043
401=end table 1044=end table
402 1045
403=item B<< C<ESC [ Ps n> >> 1046=item B<< C<ESC [ Ps n> >>
404 1047
420 1063
421=item B<< C<ESC [ s> >> 1064=item B<< C<ESC [ s> >>
422 1065
423Save Cursor (SC) 1066Save Cursor (SC)
424 1067
1068=item B<< C<ESC [ Ps;Pt t> >>
1069
1070Window Operations
1071
1072=begin table
1073
1074 B<< C<Ps = 1> >> Deiconify (map) window
1075 B<< C<Ps = 2> >> Iconify window
1076 B<< C<Ps = 3> >> B<< C<ESC [ 3 ; X ; Y t> >> Move window to (X|Y)
1077 B<< C<Ps = 4> >> B<< C<ESC [ 4 ; H ; W t> >> Resize to WxH pixels
1078 B<< C<Ps = 5> >> Raise window
1079 B<< C<Ps = 6> >> Lower window
1080 B<< C<Ps = 7> >> Refresh screen once
1081 B<< C<Ps = 8> >> B<< C<ESC [ 8 ; R ; C t> >> Resize to R rows and C columns
1082 B<< C<Ps = 11> >> Report window state (responds with C<Ps = 1> or C<Ps = 2>
1083 B<< C<Ps = 13> >> Report window position (responds with C<Ps = 3>)
1084 B<< C<Ps = 14> >> Report window pixel size (responds with C<Ps = 4>)
1085 B<< C<Ps = 18> >> Report window text size (responds with C<Ps = 7>)
1086 B<< C<Ps = 19> >> Currently the same as C<Ps = 18>, but responds with C<Ps = 9>
1087 B<< C<Ps = 20> >> Reports icon label (B<< C<ESC ] L NAME \234> >>)
1088 B<< C<Ps = 21> >> Reports window title (B<< C<ESC ] l NAME \234> >>)
1089 B<< C<Ps = 24..> >> Set window height to C<Ps> rows
1090
1091=end table
1092
1093=item B<< C<ESC [ u> >>
1094
1095Restore Cursor
1096
425=item B<< C<ESC [ Ps x> >> 1097=item B<< C<ESC [ Ps x> >>
426 1098
427Request Terminal Parameters (DECREQTPARM) 1099Request Terminal Parameters (DECREQTPARM)
428
429=item B<< C<ESC [ u> >>
430
431Restore Cursor
432 1100
433=back 1101=back
434 1102
435X<PrivateModes> 1103X<PrivateModes>
436 1104
539 B<< C<h> >> Send Mouse X & Y on button press. 1207 B<< C<h> >> Send Mouse X & Y on button press.
540 B<< C<l> >> No mouse reporting. 1208 B<< C<l> >> No mouse reporting.
541 1209
542=end table 1210=end table
543 1211
544)X<Priv10>
545
546=item B<< C<Ps = 10> >> (B<rxvt>) 1212=item B<< C<Ps = 10> >> (B<rxvt>)
547 1213
548=begin table 1214=begin table
549 1215
550 B<< C<h> >> visible 1216 B<< C<h> >> menuBar visible
551 B<< C<l> >> invisible 1217 B<< C<l> >> menuBar invisible
552 1218
553=end table 1219=end table
554 1220
555=item B<< C<Ps = 25> >> 1221=item B<< C<Ps = 25> >>
556 1222
625 1291
626=item B<< C<Ps = 66> >> 1292=item B<< C<Ps = 66> >>
627 1293
628=begin table 1294=begin table
629 1295
630 B<< C<h> >> Application Keypad (DECPAM) == 1296 B<< C<h> >> Application Keypad (DECPAM) == C<ESC =>
631 B<< C<l> >> Normal Keypad (DECPNM) == 1297 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >>
632 1298
633=end table 1299=end table
634 1300
635=item B<< C<Ps = 67> >> 1301=item B<< C<Ps = 67> >>
636 1302
657 B<< C<h> >> Use Hilite Mouse Tracking. 1323 B<< C<h> >> Use Hilite Mouse Tracking.
658 B<< C<l> >> No mouse reporting. 1324 B<< C<l> >> No mouse reporting.
659 1325
660=end table 1326=end table
661 1327
662=item B<< C<Ps = 1010> >> 1328=item B<< C<Ps = 1010> >> (B<rxvt>)
663 1329
664=begin table 1330=begin table
665 1331
666 B<< C<h> >> Don't scroll to bottom on TTY output 1332 B<< C<h> >> Don't scroll to bottom on TTY output
667 B<< C<l> >> Scroll to bottom on TTY output 1333 B<< C<l> >> Scroll to bottom on TTY output
668 1334
669=end table 1335=end table
670 1336
671=item B<< C<Ps = 1011> >> 1337=item B<< C<Ps = 1011> >> (B<rxvt>)
672 1338
673=begin table 1339=begin table
674 1340
675 B<< C<h> >> Scroll to bottom when a key is pressed 1341 B<< C<h> >> Scroll to bottom when a key is pressed
676 B<< C<l> >> Don't scroll to bottom when a key is pressed 1342 B<< C<l> >> Don't scroll to bottom when a key is pressed
690 1356
691=begin table 1357=begin table
692 1358
693 B<< C<h> >> Save cursor position 1359 B<< C<h> >> Save cursor position
694 B<< C<l> >> Restore cursor position 1360 B<< C<l> >> Restore cursor position
1361
1362=end table
1363
1364=item B<< C<Ps = 1049> >>
1365
1366=begin table
1367
1368 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1369 B<< C<l> >> Use Normal Screen Buffer
695 1370
696=end table 1371=end table
697 1372
698=back 1373=back
699 1374
729 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >> I<rxvt compile-time option> 1404 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >> I<rxvt compile-time option>
730 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 1405 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
731 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >> I<rxvt compile-time option> 1406 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >> I<rxvt compile-time option>
732 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >> 1407 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >>
733 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 1408 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >>
734 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (@@RXVTNAME@@ extension) 1409 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (@@RXVT_NAME@@ extension)
735 B<< C<Ps = 702> >> find font for character, used for debugging (@@RXVTNAME@@ extension)
736 B<< C<Ps = 703> >> command B<< C<Pt> >> I<rxvt compile-time option> (@@RXVTNAME@@ extension) 1410 B<< C<Ps = 703> >> Menubar command B<< C<Pt> >> I<rxvt compile-time option> (rxvt-unicode extension)
1411 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >>
1412 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >>
1413 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
1414 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50>.
1415 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50>.
1416 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50>.
737 1417
738=end table 1418=end table
739 1419
740=back 1420=back
741 1421
1320 2000
1321Row = B<< C<< <y> - SPACE >> >> 2001Row = B<< C<< <y> - SPACE >> >>
1322 2002
1323=back 2003=back
1324X<KeyCodes> 2004X<KeyCodes>
1325
1326=head1 ISO 14755 support
1327
1328Partial ISO 14755-support is implemented. that means that pressing
1329
1330section 5.1: Control and Shift together enters unicode input
1331mode. Entering hex digits composes a Unicode character, pressing space or
1332releasing the modifiers commits the keycode and every other key cancels
1333the current input character.
1334
1335section 5.2: Pressing and immediately releasing Control and Shift together
1336enters keycap entry mode for the next key: pressing a function key (tab,
1337return etc..) will enter the unicode character corresponding to the given
1338key.
1339 2005
1340=head1 Key Codes 2006=head1 Key Codes
1341 2007
1342Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20> 2008Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20>
1343 2009
1408 XK_KP_8 8 ESC O x 2074 XK_KP_8 8 ESC O x
1409 XK_KP_9 9 ESC O y 2075 XK_KP_9 9 ESC O y
1410 2076
1411=end table 2077=end table
1412 2078
2079=head1 CONFIGURE OPTIONS
2080
2081General hint: if you get compile errors, then likely your configuration
2082hasn't been tested well. Either try with --enable-everything or use the
2083./reconf script as a base for experiments. ./reconf is used by myself,
2084so it should generally be a working config. Of course, you should always
2085report when a combination doesn't work, so it can be fixed. Marc Lehmann
2086<rxvt@schmorp.de>.
2087
2088=over 4
2089
2090=item --enable-everything
2091
2092Add support for all non-multichoice options listed in "./configure
2093--help". Note that unlike other enable options this is order dependant.
2094You can specify this and then disable options which this enables by
2095I<following> this with the appropriate commands.
2096
2097=item --enable-xft
2098
2099Add support for Xft (anti-aliases, among others) fonts. Xft fonts are
2100slower and require lots of memory, but as long as you don't use them, you
2101don't pay for them.
2102
2103=item --enable-font-styles
2104
2105Add support for B<bold>, I<italic> and B<< I<bold italic> >> font
2106styles. The fonts can be set manually or automatically.
2107
2108=item --with-codesets=NAME,...
2109
2110Compile in support for additional codeset (encoding) groups (eu, vn are
2111always compiled in, which includes most 8-bit character sets). These
2112codeset tables are currently only used for driving X11 core fonts, they
2113are not required for Xft fonts. Compiling them in will make your binary
2114bigger (together about 700kB), but it doesn't increase memory usage unless
2115you use an X11 font requiring one of these encodings.
2116
2117=begin table
2118
2119 all all available codeset groups
2120 zh common chinese encodings
2121 zh_ext rarely used but very big chinese encodigs
2122 jp common japanese encodings
2123 jp_ext rarely used but big japanese encodings
2124 kr korean encodings
2125
2126=end table
2127
2128=item --enable-xim
2129
2130Add support for XIM (X Input Method) protocol. This allows using
2131alternative input methods (e.g. kinput2) and will also correctly
2132set up the input for people using dead keys or compose keys.
2133
2134=item --enable-unicode3
2135
2136Enable direct support for displaying unicode codepoints above
213765535 (the basic multilingual page). This increases storage
2138requirements per character from 2 to 4 bytes. X11 fonts do not yet
2139support these extra characters, but Xft does.
2140
2141Please note that rxvt-unicode can store unicode code points >65535
2142even without this flag, but the number of such characters is
2143limited to a view thousand (shared with combining characters,
2144see next switch), and right now rxvt-unicode cannot display them
2145(input/output and cut&paste still work, though).
2146
2147=item --enable-combining
2148
2149Enable automatic composition of combining characters into
2150composite characters. This is required for proper viewing of text
2151where accents are encoded as seperate unicode characters. This is
2152done by using precomposited characters when available or creating
2153new pseudo-characters when no precomposed form exists.
2154
2155Without --enable-unicode3, the number of additional precomposed
2156characters is rather limited (2048, if this is full, rxvt will use the
2157private use area, extending the number of combinations to 8448). With
2158--enable-unicode3, no practical limit exists. This will also enable
2159storage of characters >65535.
2160
2161The combining table also contains entries for arabic presentation forms,
2162but these are not currently used. Bug me if you want these to be used.
2163
2164=item --enable-fallback(=CLASS)
2165
2166When reading resource settings, also read settings for class CLASS
2167(default: Rxvt). To disable resource fallback use --disable-fallback.
2168
2169=item --with-res-name=NAME
2170
2171Use the given name (default: urxvt) as default application name when
2172reading resources. Specify --with-res-name=rxvt to replace rxvt.
2173
2174=item --with-res-class=CLASS
2175
2176Use the given class (default: URxvt) as default application class
2177when reading resources. Specify --with-res-class=Rxvt to replace
2178rxvt.
2179
2180=item --enable-utmp
2181
2182Write user and tty to utmp file (used by programs like F<w>) at
2183start of rxvt execution and delete information when rxvt exits.
2184
2185=item --enable-wtmp
2186
2187Write user and tty to wtmp file (used by programs like F<last>) at
2188start of rxvt execution and write logout when rxvt exits. This
2189option requires --enable-utmp to also be specified.
2190
2191=item --enable-lastlog
2192
2193Write user and tty to lastlog file (used by programs like
2194F<lastlogin>) at start of rxvt execution. This option requires
2195--enable-utmp to also be specified.
2196
2197=item --enable-xpm-background
2198
2199Add support for XPM background pixmaps.
2200
2201=item --enable-transparency
2202
2203Add support for inheriting parent backgrounds thus giving a fake
2204transparency to the term.
2205
2206=item --enable-fading
2207
2208Add support for fading the text when focus is lost.
2209
2210=item --enable-tinting
2211
2212Add support for tinting of transparent backgrounds.
2213
2214=item --enable-menubar
2215
2216Add support for our menu bar system (this interacts badly with
2217dynamic locale switching currently).
2218
2219=item --enable-rxvt-scroll
2220
2221Add support for the original rxvt scrollbar.
2222
2223=item --enable-next-scroll
2224
2225Add support for a NeXT-like scrollbar.
2226
2227=item --enable-xterm-scroll
2228
2229Add support for an Xterm-like scrollbar.
2230
2231=item --enable-plain-scroll
2232
2233Add support for a very unobtrusive, plain-looking scrollbar that
2234is the favourite of the rxvt-unicode author, having used it for
2235many years.
2236
2237=item --enable-half-shadow
2238
2239Make shadows on the scrollbar only half the normal width & height.
2240only applicable to rxvt scrollbars.
2241
2242=item --enable-ttygid
2243
2244Change tty device setting to group "tty" - only use this if
2245your system uses this type of security.
2246
2247=item --disable-backspace-key
2248
2249Disable any handling of the backspace key by us - let the X server
2250do it.
2251
2252=item --disable-delete-key
2253
2254Disable any handling of the delete key by us - let the X server
2255do it.
2256
2257=item --disable-resources
2258
2259Remove all resources checking.
2260
2261=item --enable-xgetdefault
2262
2263Make resources checking via XGetDefault() instead of our small
2264version which only checks ~/.Xdefaults, or if that doesn't exist
2265then ~/.Xresources.
2266
2267=item --enable-strings
2268
2269Add support for our possibly faster memset() function and other
2270various routines, overriding your system's versions which may
2271have been hand-crafted in assembly or may require extra libraries
2272to link in. (this breaks ANSI-C rules and has problems on many
2273GNU/Linux systems).
2274
2275=item --disable-swapscreen
2276
2277Remove support for swap screen.
2278
2279=item --enable-frills
2280
2281Add support for many small features that are not essential but nice to
2282have. Normally you want this, but for very small binaries you may want to
2283disable this.
2284
2285A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2286in combination with other switches) is:
2287
2288 MWM-hints
2289 seperate underline colour
2290 settable border widths and borderless switch
2291 settable extra linespacing
2292 extra window properties (e.g. UTF-8 window names and PID)
2293 iso-14755-2 and -3, and visual feedback
2294 backindex and forwardindex escape sequence
2295 window op and locale change escape sequences
2296 tripleclickwords
2297 settable insecure mode
2298
2299=item --enable-iso14755
2300
2301Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
2302F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
2303C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with
2304this switch.
2305
2306=item --enable-keepscrolling
2307
2308Add support for continual scrolling of the display when you hold
2309the mouse button down on a scrollbar arrow.
2310
2311=item --enable-mousewheel
2312
2313Add support for scrolling via mouse wheel or buttons 4 & 5.
2314
2315=item --enable-slipwheeling
2316
2317Add support for continual scrolling (using the mouse wheel as an
2318accelerator) while the control key is held down. This option
2319requires --enable-mousewheel to also be specified.
2320
2321=item --disable-new-selection
2322
2323Remove support for mouse selection style like that of xterm.
2324
2325=item --enable-dmalloc
2326
2327Use Gray Watson's malloc - which is good for debugging See
2328http://www.letters.com/dmalloc/ for details If you use either this or the
2329next option, you may need to edit src/Makefile after compiling to point
2330DINCLUDE and DLIB to the right places.
2331
2332You can only use either this option and the following (should
2333you use either) .
2334
2335=item --enable-dlmalloc
2336
2337Use Doug Lea's malloc - which is good for a production version
2338See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2339
2340=item --enable-smart-resize
2341
2342Add smart growth/shrink behaviour when changing font size via from hot
2343keys. This should keep in a fixed position the rxvt corner which is
2344closest to a corner of the screen.
2345
2346=item --enable-cursor-blink
2347
2348Add support for a blinking cursor.
2349
2350=item --enable-pointer-blank
2351
2352Add support to have the pointer disappear when typing or inactive.
2353
2354=item --with-name=NAME
2355
2356Set the basename for the installed binaries (default: C<urxvt>, resulting
2357in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2358C<rxvt>.
2359
2360=item --with-term=NAME
2361
2362Change the environmental variable for the terminal to NAME (default
2363C<rxvt-unicode>)
2364
2365=item --with-terminfo=PATH
2366
2367Change the environmental variable for the path to the terminfo tree to
2368PATH.
2369
2370=item --with-x
2371
2372Use the X Window System (pretty much default, eh?).
2373
2374=item --with-xpm-includes=DIR
2375
2376Look for the XPM includes in DIR.
2377
2378=item --with-xpm-library=DIR
2379
2380Look for the XPM library in DIR.
2381
2382=item --with-xpm
2383
2384Not needed - define via --enable-xpm-background.
2385
2386=back
2387
2388=head1 AUTHORS
2389
2390Marc Lehmann <rxvt@schmorp.de> converted this document to pod and
2391reworked it from the original Rxvt documentation, which was done by Geoff
2392Wing <gcw@pobox.com>, who in turn used the XTerm documentation and other
2393sources.
2394

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines