*** empty log message ***
[dana/urxvt.git] / README.FAQ
1 FREQUENTLY ASKED QUESTIONS
2     How do I know which rxvt-unicode version I'm using?
3         The version number is displayed with the usage (-h). Also the escape
4         sequence "ESC[8n" sets the window title to the version number.
5
6     When I log-in to another system it tells me about missing terminfo data?
7         The terminal description used by rxvt-unicode is not as widely
8         available as that for xterm, or even rxvt (for which the same
9         problem often arises).
10
11         The correct solution for this problem is to install the terminfo,
12         this can be done like this (with ncurses' infocmp):
13
14            REMOTE=remotesystem.domain
15            infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti"
16
17         ... or by installing rxvt-unicode normally on the remote system,
18
19         If you cannot or do not want to do this, then you can simply set
20         "TERM=rxvt" or even "TERM=xterm", and live with the small number of
21         problems arising, which includes wrong keymapping, less and
22         different colours and some refresh errors in fullscreen
23         applications. It's a nice quick-and-dirty workaround for rare cases,
24         though.
25
26         If you always want to do this you can either recompile rxvt-unicode
27         with the desired TERM value or use a resource to set it:
28
29            URxvt.termName: rxvt
30
31         If you don't plan to use rxvt (quite common...) you could also
32         replace the rxvt terminfo file with the rxvt-unicode one.
33
34     I need a termcap file entry.
35         You could use rxvt's termcap entry with resonable results in many
36         cases. You can also create a termcap entry by using terminfo's
37         infocmp program like this:
38
39            infocmp -C rxvt-unicode
40
41         OR you could this termcap entry:
42
43            rxvt-unicode|rxvt-unicode terminal (X Window System):\
44                    :am:bw:eo:km:mi:ms:xn:xo:\
45                    :co#80:it#8:li#24:\
46                    :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
47                    :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
48                    :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\
49                    :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\
50                    :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
51                    :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\
52                    :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
53                    :k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\
54                    :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
55                    :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\
56                    :ke=\E[?1l\E>:kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
57                    :ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\
58                    :nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:\
59                    :st=\EH:ta=^I:te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:\
60                    :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
61                    :vs=\E[?25h:
62
63     Why does "ls" no longer have coloured output?
64         The "ls" in the GNU coreutils unfortunately doesn't use terminfo to
65         decide wether a terminal has colour, but uses it's own configuration
66         file. Needless to say, "rxvt-unicode" is not in it's default file
67         (among with most other terminals supporting colour). Either add:
68
69            TERM rxvt-unicode
70
71         to "/etc/DIR_COLORS" or simply add:
72
73            alias ls='ls --color=auto'
74
75         to your ".profile" or ".bashrc".
76
77     Why doesn't vim/emacs etc. use the 88 colour mode?
78     Why doesn't vim/emacs etc. make use of italic?
79     Why are the secondary screen-related options not working properly?
80         Make sure you are using "TERM=rxvt-unicode". Some pre-packaged
81         distributions (most notably Debian GNU/Linux) break rxvt-unicode by
82         setting "TERM" to "rxvt", which doesn't have these extra features.
83         Unfortunately, some of these (most notably, again, Debian GNU/Linux)
84         furthermore fail to even install the "rxvt-unicode" terminfo file,
85         so you will need to install it on your own (See the question When I
86         log-in to another system it tells me about missing terminfo data? on
87         how to do this).
88
89     Rxvt-unicode does not seem to understand the selected encoding?
90     Unicode does not seem to work?
91         If you encounter strange problems like typing an accented character
92         but getting two unrelated other characters or similar, or if program
93         output is subtly garbled, then you should check your locale
94         settings.
95
96         Rxvt-unicode must be started with the same "LC_CTYPE" setting as the
97         programs. Often rxvt-unicode is started in the "C" locale, while the
98         login script running within the rxvt-unicode window changes the
99         locale to sth. else, e.h. "en_GB.UTF-8". Needless to say, this is
100         not going to work.
101
102         The best thing is to fix your startup environment, as you will
103         likely run into other problems. If nothing works you can try this in
104         your .profile.
105
106           printf '\e]701;%s\007' "$LC_CTYPE"
107
108         If this doesn't work, then maybe you use a "LC_CTYPE" specification
109         not supported on your systems. Some systems have a "locale" command
110         which displays this. If it displays sth. like:
111
112           locale: Cannot set LC_CTYPE to default locale: ...
113
114         Then the locale you specified is not supported on your system.
115
116         If nothing works and you are sure that everything is set correctly
117         then you will need to remember a little known fact: Some programs
118         just don't support locales :(
119
120     Why do some characters look so much different than others?
121     How does rxvt-unicode choose fonts?
122         Most fonts do not contain the full range of Unicode, which is fine.
123         Chances are that the font you (or the admin/package maintainer of
124         your system/os) have specified does not cover all the characters you
125         want to display.
126
127         rxvt-unicode makes a best-effort try at finding a replacement font.
128         Often the result is fine, but sometimes the chosen font looks bad.
129         Many fonts have totally strange characters that don't resemble the
130         correct glyph at all, and rxvt-unicode lacks the artificial
131         intelligence to detect that a specific glyph is wrong: it has to
132         believe the font that the characters it contains indeed look
133         correct.
134
135         In that case, select a font of your taste and add it to the font
136         list, e.g.:
137
138            rxvt -fn basefont,font2,font3...
139
140         When rxvt-unicode sees a character, it will first look at the base
141         font. If the base font does not contain the character, it will go to
142         the next font, and so on. Specifying your own fonts will also speed
143         up this search and use less resources within rxvt-unicode and the
144         X-server.
145
146         The only limitation is that all the fonts must not be larger than
147         the base font, as the base font defines the principal cell size,
148         which must be the same due to the way terminals work.
149
150     Why do some chinese characters look so different than others?
151         This is because there is a difference between script and language --
152         rxvt-unicode does not know which language the text that is output
153         is, as it only knows the unicode character codes. If rxvt-unicode
154         first sees a japanese character, it might choose a japanese font for
155         it. Subsequent japanese characters will take that font. Now, many
156         chinese characters aren't represented in japanese fonts, so when the
157         first non-japanese character comes up, rxvt-unicode will look for a
158         chinese font -- unfortunately at this point, it will still use the
159         japanese font for japanese characters that are also chinese.
160
161         The workaround is easy: just tag a chinese font at the end of your
162         font list (see the previous question). The key is to view the font
163         list as a preference list: If you expect more japanese, list a
164         japanese font first. If you expect more chinese, put a chinese font
165         first.
166
167         In the future it might be possible to switch preferences at runtime
168         (the internal data structure has no problem with using different
169         fonts for the same character at the same time, but no interface for
170         this has been designed yet).
171
172     Why does rxvt-unicode sometimes leave pixel droppings?
173         Most fonts were not designed for terminal use, which means that
174         character size varies a lot. A font that is otherwise fine for
175         terminal use might contain some characters that are simply too wide.
176         Rxvt-unicode will avoid these characters. For characters that are
177         just "a bit" too wide a special "careful" rendering mode is used
178         that redraws adjacent characters.
179
180         All of this requires that fonts do not lie about character sizes,
181         however: Xft fonts often draw glyphs larger than their acclaimed
182         bounding box, and rxvt-unicode has no way of detecting this (the
183         correct way is to ask for the character bounding box, which
184         unfortunately is wrong in these cases).
185
186         It's not clear (to me at least), wether this is a bug in Xft,
187         freetype, or the respective font. If you encounter this problem you
188         might try using the "-lsp" option to give the font more height. If
189         that doesn't work, you might be forced to use a different font.
190
191         All of this is not a problem when using X11 core fonts, as their
192         bounding box data is correct.
193
194     My Compose (Multi_key) key is no longer working.
195         The most common causes for this are that either your locale is not
196         set correctly, or you specified a preeditStyle that is not supported
197         by your input method. For example, if you specified OverTheSpot and
198         your input method (e.g. the default input method handling Compose
199         keys) does not support this (for instance because it is not visual),
200         then rxvt-unicode will continue without an input method.
201
202         In this case either do not specify a preeditStyle or specify more
203         than one pre-edit style, such as OverTheSpot,Root,None.
204
205     I cannot type "Ctrl-Shift-2" to get an ASCII NUL character due to ISO
206     14755
207         Either try "Ctrl-2" alone (it often is mapped to ASCII NUL even on
208         international keyboards) or simply use ISO 14755 support to your
209         advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for
210         other codes, too, such as "Ctrl-Shift-1-d" to type the default
211         telnet escape character and so on.
212
213     How can I keep rxvt-unicode from using reverse video so much?
214         First of all, make sure you are running with the right terminfo
215         ("urxvt"), which will get rid of most of these effects. Then make
216         sure you have specified colours for italic and bold, as otherwise
217         rxvt-unicode might use reverse video to simulate the effect:
218
219            URxvt*colorBD:  white
220            URxvt*colorIT:  green
221
222     Some programs assume totally weird colours (red instead of blue), how
223     can I fix that?
224         For some unexplainable reason, some programs (i.e. irssi) assume a
225         very weird colour palette when confronted with a terminal with more
226         than the standard 8 colours (rxvt-unicode supports 88). The right
227         fix is, of course, to fix these programs not to assume non-ISO
228         colours without very good reasons.
229
230         In the meantime, you can either edit your "urxvt" terminfo
231         definition to only claim 8 colour support or use "TERM=rxvt", which
232         will fix colours but keep you from using other rxvt-unicode
233         features.
234
235     I am on FreeBSD and rxvt-unicode does not seem to work at all.
236         Rxvt-unicode requires the symbol "__STDC_ISO_10646__" to be defined
237         in your compile environment, or an implementation that implements
238         it, wether it defines the symbol or not. "__STDC_ISO_10646__"
239         requires that wchar_t is represented as unicode.
240
241         As you might have guessed, FreeBSD does neither define this symobl
242         nor does it support it. Instead, it uses it's own internal
243         representation of wchar_t. This is, of course, completely legal.
244
245         However, "__STDC_ISO_10646__" is the only sane way to support
246         multi-language apps in an OS, as using a locale-dependent (and
247         non-standardized) representation of wchar_t makes it impossible to
248         convert between wchar_t (as used by X11 and your applications) and
249         any other encoding without implementing OS-specific-wrappers for
250         each and every locale. There simply are no APIs to convert wchar_t
251         into anything except the current locale encoding.
252
253         Some applications (such as the formidable mlterm) work around this
254         by carrying their own replacement functions for character set
255         handling with them, and either implementing OS-dependent hacks or
256         doing multiple conversions (which is slow and unreliable in case the
257         OS implements encodings slightly different than the terminal
258         emulator).
259
260         The rxvt-unicode author insists that the right way to fix this is in
261         the system libraries once and for all, instead of forcing every app
262         to carry complete replacements.
263
264     How does rxvt-unicode determine the encoding to use?
265     Is there an option to switch encodings?
266         Unlike some other terminals, rxvt-unicode has no encoding switch,
267         and no specific "utf-8" mode, such as xterm. In fact, it doesn't
268         even know about UTF-8 or any other encodings with respect to
269         terminal I/O.
270
271         The reasons is that there exists a perfectly fine mechanism for
272         selecting the encoding, doing I/O and (most important) communicating
273         this to all applications so everybody agrees on character properties
274         such as width and code number. This mechanism is the *locale*.
275
276         Rxvt-unicode uses the "LC_CTYPE" locale category to select encoding.
277         All programs doing the same (that is, most) will automatically agree
278         in the interpretation of characters.
279
280         Unfortunately, there is no system-independent way to select locales,
281         nor is there a standard on how locale specifiers will look like.
282
283         On most systems, the content of the "LC_CTYPE" environment variable
284         contains an arbitrary string which corresponds to an
285         already-installed locale. Common names for locales are
286         "en_US.UTF-8", "de_DE.ISO-8859-15", "ja_JP.EUC-JP", i.e.
287         "language_country.encoding", but other forms (i.e. "de" or "german")
288         are also common.
289
290         Rxvt-unicode ignores all other locale categories, and except for the
291         encoding, ignores country or language-specific settings, i.e.
292         "de_DE.UTF-8" and "ja_JP.UTF-8" are the same for rxvt-unicode.
293
294         If you want to use a specific encoding you have to make sure you
295         start rxvt-unicode with the correct "LC_CTYPE" category.
296
297     Can I switch locales at runtime?
298         Yes, using an escape sequence. Try sth. like this, which sets
299         rxvt-unicode's idea of "LC_CTYPE".
300
301           printf '\e]701;%s\007' ja_JP.SJIS
302
303         See also the previous question.
304
305         Sometimes this capability is rather handy when you want to work in
306         one locale (e.g. "de_DE.UTF-8") but some programs don't support
307         UTF-8. For example, I use this script to start "xjdic", which first
308         switches to a locale supported by xjdic and back later:
309
310            printf '\e]701;%s\007' ja_JP.SJIS
311            xjdic -js
312            printf '\e]701;%s\007' de_DE.UTF-8
313
314     Can I switch the fonts at runtime?
315         Yes, using an escape sequence. Try sth. like this, which has the
316         same effect as using the "-fn" switch, and takes effect immediately:
317
318            printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
319
320         This is useful if you e.g. work primarily with japanese (and prefer
321         a japanese font), but you have to switch to chinese temporarily,
322         where japanese fonts would only be in your way.
323
324         You can think of this as a kind of manual ISO-2022 switching.
325
326     Why do italic characters look as if clipped?
327         Many fonts have difficulties with italic characters and hinting. For
328         example, the otherwise very nicely hinted font "xft:Bitstream Vera
329         Sans Mono" completely fails in it's italic face. A workaround is to
330         enable freetype autohinting, i.e. like this:
331
332            URxvt*italicFont:        xft:Bitstream Vera Sans Mono:italic:autohint=true
333            URxvt*boldItalicFont:    xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
334
335     My input method wants <some encoding> but I want UTF-8, what can I do?
336         You can specify separate locales for the input method and the rest
337         of the terminal, using the resource "imlocale":
338
339            URxvt*imlocale: ja_JP.EUC-JP
340
341         Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and
342         still use your input method. Please note, however, that you will not
343         be able to input characters outside "EUC-JP" in a normal way then,
344         as your input method limits you.
345
346     Rxvt-unicode uses gobs of memory, how can I reduce that?
347         Rxvt-unicode tries to obey the rule of not charging you for sth. you
348         don't use. One thing you should try is to configure out all settings
349         that you don't need, for example, Xft support is a resource hog by
350         design, when used. Compiling it out ensures that no Xft font will be
351         loaded accidentally when rxvt-unicode tries to find a font for your
352         characters.
353
354         Also, many people (me included) like large windows and even larger
355         scrollback buffers: Without "--enable-unicode3", rxvt-unicode will
356         use 6 bytes per screen cell. For a 160x?? window this amounts to
357         almost a kilobyte per line. A scrollback buffer of 10000 lines will
358         then (if full) use 10 Megabytes of memory. With "--enable-unicode3"
359         it gets worse, as rxvt-unicode then uses 8 bytes per screen cell.
360
361     Can I speed up Xft rendering somehow?
362         Yes, the most obvious way to speed it up is to avoid Xft entirely,
363         as it is simply slow. If you still want Xft fonts you might try to
364         disable antialiasing (by appending ":antialiasing=false"), which
365         saves lots of memory and also speeds up rendering considerably.
366
367     Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
368         Rxvt-unicode will use whatever you specify as a font. If it needs to
369         fall back to it's default font search list it will prefer X11 core
370         fonts, because they are small and fast, and then use Xft fonts. It
371         has antialiasing disabled for most of them, because the author
372         thinks they look best that way.
373
374         If you want antialiasing, you have to specify the fonts manually.
375
376     Mouse cut/paste suddenly no longer works.
377         Make sure that mouse reporting is actually turned off since killing
378         some editors prematurely may leave the mouse in mouse report mode.
379         I've heard that tcsh may use mouse reporting unless it otherwise
380         specified. A quick check is to see if cut/paste works when the Alt
381         or Shift keys are depressed. See rxvt(7)
382
383     What's with this bold/blink stuff?
384         If no bold colour is set via "colorBD:", bold will invert text using
385         the standard foreground colour.
386
387         For the standard background colour, blinking will actually make the
388         text blink when compiled with "--enable-blinking". with standard
389         colours. Without "--enable-blinking", the blink attribute will be
390         ignored.
391
392         On ANSI colours, bold/blink attributes are used to set
393         high-intensity foreground/background colors.
394
395         color0-7 are the low-intensity colors.
396
397         color8-15 are the corresponding high-intensity colors.
398
399     I don't like the screen colors. How do I change them?
400         You can change the screen colors at run-time using ~/.Xdefaults
401         resources (or as long-options).
402
403         Here are values that are supposed to resemble a VGA screen,
404         including the murky brown that passes for low-intensity yellow:
405
406            URxvt*color0:   #000000
407            URxvt*color1:   #A80000
408            URxvt*color2:   #00A800
409            URxvt*color3:   #A8A800
410            URxvt*color4:   #0000A8
411            URxvt*color5:   #A800A8
412            URxvt*color6:   #00A8A8
413            URxvt*color7:   #A8A8A8
414
415            URxvt*color8:   #000054
416            URxvt*color9:   #FF0054
417            URxvt*color10:  #00FF54
418            URxvt*color11:  #FFFF54
419            URxvt*color12:  #0000FF
420            URxvt*color13:  #FF00FF
421            URxvt*color14:  #00FFFF
422            URxvt*color15:  #FFFFFF
423
424         And here is a more complete set of non-standard colors described as
425         "pretty girly":
426
427            URxvt.cursorColor:  #dc74d1
428            URxvt.pointerColor: #dc74d1
429            URxvt.background:   #0e0e0e
430            URxvt.foreground:   #4ad5e1
431            URxvt.color0:       #000000
432            URxvt.color8:       #8b8f93
433            URxvt.color1:       #dc74d1
434            URxvt.color9:       #dc74d1
435            URxvt.color2:       #0eb8c7
436            URxvt.color10:      #0eb8c7
437            URxvt.color3:       #dfe37e
438            URxvt.color11:      #dfe37e
439            URxvt.color5:       #9e88f0
440            URxvt.color13:      #9e88f0
441            URxvt.color6:       #73f7ff
442            URxvt.color14:      #73f7ff
443            URxvt.color7:       #e1dddd
444            URxvt.color15:      #e1dddd
445
446     What's with the strange Backspace/Delete key behaviour?
447         Assuming that the physical Backspace key corresponds to the
448         BackSpace keysym (not likely for Linux ... see the following
449         question) there are two standard values that can be used for
450         Backspace: "^H" and "^?".
451
452         Historically, either value is correct, but rxvt-unicode adopts the
453         debian policy of using "^?" when unsure, because it's the one only
454         only correct choice :).
455
456         Rxvt-unicode tries to inherit the current stty settings and uses the
457         value of `erase' to guess the value for backspace. If rxvt-unicode
458         wasn't started from a terminal (say, from a menu or by remote
459         shell), then the system value of `erase', which corresponds to
460         CERASE in <termios.h>, will be used (which may not be the same as
461         your stty setting).
462
463         For starting a new rxvt-unicode:
464
465            # use Backspace = ^H
466            $ stty erase ^H
467            $ rxvt
468
469            # use Backspace = ^?
470            $ stty erase ^?
471            $ rxvt
472
473         Toggle with "ESC[36h" / "ESC[36l" as documented in rxvt(7).
474
475         For an existing rxvt-unicode:
476
477            # use Backspace = ^H
478            $ stty erase ^H
479            $ echo -n "^[[36h"
480
481            # use Backspace = ^?
482            $ stty erase ^?
483            $ echo -n "^[[36l"
484
485         This helps satisfy some of the Backspace discrepancies that occur,
486         but if you use Backspace = "^H", make sure that the termcap/terminfo
487         value properly reflects that.
488
489         The Delete key is a another casualty of the ill-defined Backspace
490         problem. To avoid confusion between the Backspace and Delete keys,
491         the Delete key has been assigned an escape sequence to match the
492         vt100 for Execute (ESC[3~) and is in the supplied termcap/terminfo.
493
494         Some other Backspace problems:
495
496         some editors use termcap/terminfo, some editors (vim I'm told)
497         expect Backspace = ^H, GNU Emacs (and Emacs-like editors) use ^H for
498         help.
499
500         Perhaps someday this will all be resolved in a consistent manner.
501
502     I don't like the key-bindings. How do I change them?
503         There are some compile-time selections available via configure.
504         Unless you have run "configure" with the "--disable-resources"
505         option you can use the `keysym' resource to alter the keystrings
506         associated with keysyms.
507
508         Here's an example for a URxvt session started using `rxvt -name
509         URxvt'
510
511                 URxvt*keysym.Home:          \e[1~
512                 URxvt*keysym.End:           \e[4~
513                 URxvt*keysym.C-apostrophe:  \e<C-'>
514                 URxvt*keysym.C-slash:       \e<C-/>
515                 URxvt*keysym.C-semicolon:   \e<C-;>
516                 URxvt*keysym.C-grave:       \e<C-`>
517                 URxvt*keysym.C-comma:       \e<C-,>
518                 URxvt*keysym.C-period:      \e<C-.>
519                 URxvt*keysym.C-0x60:        \e<C-`>
520                 URxvt*keysym.C-Tab:         \e<C-Tab>
521                 URxvt*keysym.C-Return:      \e<C-Return>
522                 URxvt*keysym.S-Return:      \e<S-Return>
523                 URxvt*keysym.S-space:       \e<S-Space>
524                 URxvt*keysym.M-Up:          \e<M-Up>
525                 URxvt*keysym.M-Down:        \e<M-Down>
526                 URxvt*keysym.M-Left:        \e<M-Left>
527                 URxvt*keysym.M-Right:       \e<M-Right>
528                 URxvt*keysym.M-C-0:         list.0123456789.\e<M-C-.>
529                 URxvt*keysym.M-C-a:         list.abcdefghijklmnopqrstuvwxyz.\033<M-C-.>
530                 URxvt*keysym.F12:           proto:\033]701;zh_CN.GBK\007
531
532     I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How
533     do I make use of them? For example, the Sun Keyboard type 4 has the
534     following mappings that rxvt-unicode doesn't recognize.
535            KP_Insert == Insert
536            F22 == Print
537            F27 == Home
538            F29 == Prior
539            F33 == End
540            F35 == Next
541
542         Rather than have rxvt-unicode try to accommodate all the various
543         possible keyboard mappings, it is better to use `xmodmap' to remap
544         the keys as required for your particular machine.
545
546     How do I distinguish if I'm running rxvt-unicode or a regular xterm? I
547     need this to decide about setting colors etc.
548         rxvt and rxvt-unicode always export the variable "COLORTERM", so you
549         can check and see if that is set. Note that several programs, JED,
550         slrn, Midnight Commander automatically check this variable to decide
551         whether or not to use color.
552
553     How do I set the correct, full IP address for the DISPLAY variable?
554         If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled
555         insecure mode then it is possible to use the following shell script
556         snippets to correctly set the display. If your version of
557         rxvt-unicode wasn't also compiled with ESCZ_ANSWER (as assumed in
558         these snippets) then the COLORTERM variable can be used to
559         distinguish rxvt-unicode from a regular xterm.
560
561         Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell
562         script snippets:
563
564            # Bourne/Korn/POSIX family of shells:
565            [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
566            if [ ${TERM:-foo} = xterm ]; then
567               stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
568               echo -n '^[Z'
569               read term_id
570               stty icanon echo
571               if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
572                  echo -n '^[[7n'        # query the rxvt we are in for the DISPLAY string
573                  read DISPLAY           # set it in our local shell
574               fi
575            fi
576
577     How do I compile the manual pages for myself?
578         You need to have a recent version of perl installed as
579         /usr/bin/perl, one that comes with pod2man, pod2text and pod2html.
580         Then go to the doc subdirectory and enter "make alldoc".
581
582     My question isn't answered here, can I ask a human?
583         Before sending me mail, you could go to IRC: "irc.freenode.net",
584         channel "#rxvt-unicode" has some rxvt-unicode enthusiasts that might
585         be interested in learning about new and exciting problems (but not
586         FAQs :).
587