ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.1.pod
Revision: 1.147
Committed: Fri Nov 23 11:18:04 2007 UTC (16 years, 7 months ago) by root
Branch: MAIN
CVS Tags: rel-8_6, rel-8_7
Changes since 1.146: +14 -0 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 =head1 NAME
2    
3     rxvt-unicode (ouR XVT, unicode) - (a VT102 emulator for the X window system)
4    
5     =head1 SYNOPSIS
6    
7 root 1.2 B<@@RXVT_NAME@@> [options] [-e command [ args ]]
8 root 1.1
9     =head1 DESCRIPTION
10    
11 root 1.3 B<rxvt-unicode>, version B<@@RXVT_VERSION@@>, is a colour vt102 terminal
12 root 1.1 emulator intended as an I<xterm>(1) replacement for users who do not
13     require features such as Tektronix 4014 emulation and toolkit-style
14     configurability. As a result, B<rxvt-unicode> uses much less swap space --
15     a significant advantage on a machine serving many X sessions.
16    
17 root 1.30 =head1 FREQUENTLY ASKED QUESTIONS
18    
19 root 1.53 See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of
20     frequently asked questions and answer to them and some common
21     problems. That document is also accessible on the World-Wide-Web at
22 root 1.121 L<http://cvs.schmorp.de/browse/rxvt-unicode/doc/rxvt.7.html>.
23 root 1.30
24 root 1.5 =head1 RXVT-UNICODE VS. RXVT
25    
26     Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
27     internally. That means it can store and display most scripts in the
28     world. Being a terminal emulator, however, some things are very difficult,
29     especially cursive scripts such as arabic, vertically written scripts
30     like mongolian or scripts requiring extremely complex combining rules,
31 root 1.136 like tibetan or devanagari. Don't expect pretty output when using these
32 root 1.5 scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
33 root 1.115 fine, though. A somewhat difficult case are right-to-left scripts, such
34 root 1.5 as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
35     belong into the application, not the terminal emulator (too many things --
36 root 1.30 such as cursor-movement while editing -- break otherwise), but that might
37 root 1.12 change.
38 root 1.5
39 root 1.12 If you are looking for a terminal that supports more exotic scripts, let
40 root 1.118 me recommend C<mlterm>, which is a very user friendly, lean and clean
41 root 1.12 terminal emulator. In fact, the reason rxvt-unicode was born was solely
42     because the author couldn't get C<mlterm> to use one font for latin1 and
43     another for japanese.
44    
45     Therefore another design rationale was the use of multiple fonts to
46     display characters: The idea of a single unicode font which many other
47 root 1.114 programs force onto its users never made sense to me: You should be able
48 root 1.12 to choose any font for any script freely.
49 root 1.5
50     Apart from that, rxvt-unicode is also much better internationalised than
51 root 1.114 its predecessor, supports things such as XFT and ISO 14755 that are handy
52 root 1.116 in i18n-environments, is faster, and has a lot bugs less than the original
53 root 1.5 rxvt. This all in addition to dozens of other small improvements.
54    
55     It is still faithfully following the original rxvt idea of being lean
56     and nice on resources: for example, you can still configure rxvt-unicode
57 root 1.114 without most of its features to get a lean binary. It also comes with
58 root 1.5 a client/daemon pair that lets you open any number of terminal windows
59     from within a single process, which makes startup time very fast and
60     drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
61     @@RXVT_NAME@@c(1) (client).
62    
63     It also makes technical information about escape sequences (which have
64 root 1.116 been extended) more accessible: see @@RXVT_NAME@@(7) for technical
65 root 1.30 reference documentation (escape sequences etc.).
66 root 1.2
67 root 1.1 =head1 OPTIONS
68    
69 root 1.2 The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed
70 root 1.1 below. In keeping with the smaller-is-better philosophy, options may be
71     eliminated or default values chosen at compile-time, so options and
72     defaults listed may not accurately reflect the version installed on
73 root 1.3 your system. `@@RXVT_NAME@@ -h' gives a list of major compile-time options on
74 root 1.1 the I<Options> line. Option descriptions may be prefixed with which
75     compile option each is dependent upon. e.g. `Compile I<XIM>:' requires
76 root 1.3 I<XIM> on the I<Options> line. Note: `@@RXVT_NAME@@ -help' gives a list of all
77 root 1.1 command-line options compiled into your version.
78    
79 root 1.2 Note that B<@@RXVT_NAME@@> permits the resource name to be used as a
80 root 1.1 long-option (--/++ option) so the potential command-line options are
81 root 1.3 far greater than those listed. For example: `@@RXVT_NAME@@ --loginShell --color1
82 root 1.1 Orange'.
83    
84     The following options are available:
85    
86     =over 4
87    
88     =item B<-help>, B<--help>
89    
90     Print out a message describing available options.
91    
92     =item B<-display> I<displayname>
93    
94     Attempt to open a window on the named X display (B<-d> still
95     respected). In the absence of this option, the display specified by the
96     B<DISPLAY> environment variable is used.
97    
98 root 1.106 =item B<-depth> I<bitdepth>
99    
100 root 1.109 Compile I<xft>: Attempt to find a visual with the given bit depth;
101 root 1.106 resource B<depth>.
102    
103 root 1.1 =item B<-geometry> I<geom>
104    
105     Window geometry (B<-g> still respected); resource B<geometry>.
106    
107     =item B<-rv>|B<+rv>
108    
109     Turn on/off simulated reverse video; resource B<reverseVideo>.
110    
111     =item B<-j>|B<+j>
112    
113 root 1.132 Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>.
114    
115     =item B<-ss>|B<+ss>
116    
117     Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>.
118 root 1.1
119 sasha 1.140 =item B<-tr>|B<+tr>
120 root 1.1
121 sasha 1.140 Turn on/off illusion of a transparent window background. Obsolete form of it is
122     B<-ip> and it should not be used anymore; resource B<transparent>.
123    
124 ayin 1.143 I<Please note that old resource name of B<inheritPixmap> is obsolete and should be
125     changed to B<transparent>. Backwards compatibility support for B<inheritPixmap> will
126 sasha 1.140 be phased out in future versions of rxvt!>
127 root 1.1
128 ayin 1.143 I<Please address all transparency related issues to Sasha Vasko at
129 sasha 1.138 sasha@aftercode.net. Read the FAQ (man 7 @@RXVT_NAME@@)!>
130 root 1.110
131 root 1.1 =item B<-fade> I<number>
132    
133 root 1.68 Fade the text by the given percentage when focus is lost. Small values
134     fade a little only, 100 completely replaces all colours by the fade
135     colour; resource B<fading>.
136    
137     =item B<-fadecolor> I<colour>
138    
139     Fade to this colour when fading is used (see B<-fade>). The default colour
140 root 1.110 is opaque black. resource B<fadeColor>.
141 root 1.1
142     =item B<-tint> I<colour>
143    
144     Tint the transparent background pixmap with the given colour when
145 sasha 1.140 transparency is enabled with B<-tr>. This only works for
146 root 1.70 non-tiled backgrounds, currently. See also the B<-sh> option that can be
147 sasha 1.134 used to brighten or darken the image in addition to tinting it.
148 ayin 1.135 Please note that certain tint colours can be applied on the server-side,
149     thus yielding performance gain of two orders of magnitude. These colours are:
150 ayin 1.143 blue, red, green, cyan, magenta, yellow, and those close to them. Also
151 ayin 1.142 pure black and pure white colors essentially mean no tinting; resource
152 root 1.70 I<tintColor>. Example:
153 root 1.69
154     @@RXVT_NAME@@ -tr -tint blue -sh 40
155 root 1.1
156 sasha 1.134 =item B<-sh> I<number>
157 root 1.1
158 sasha 1.141 Darken (0 .. 100) or lighten (100 .. 200) the transparent
159 sasha 1.134 background image in addition to (or instead of) tinting it;
160 sasha 1.130 resource I<shading>.
161    
162     =item B<-blt> I<string>
163    
164 sasha 1.134 Specify background blending type. If background pixmap is specified
165     at the same time as transparency - such pixmap will be blended over
166 sasha 1.130 transparency image, using method specified. Supported values are :
167 sasha 1.134 B<add>, B<alphablend>, B<allanon> - color values averaging, B<colorize>,
168     B<darken>, B<diff>, B<dissipate>, B<hue>, B<lighten>, B<overlay>,
169     B<saturate>, B<screen>, B<sub>, B<tint>, B<value>. The default is
170 sasha 1.140 alpha-blending. Compile I<afterimage>; resource I<blendType>.
171 sasha 1.130
172 sasha 1.134 =item B<-blr> I<HxV>
173 sasha 1.130
174 sasha 1.134 Apply Gaussian Blur with the specified radii to the transparent
175     background image. If single number is specified - both vertical and
176     horizontal radii are considered to be the same. Setting one of the
177     radii to 1 and another to a large number creates interesting effects
178 sasha 1.140 on some backgrounds. Maximum radius value is 128. Compile I<afterimage>;
179     resource I<blurRadius>.
180 root 1.1
181     =item B<-bg> I<colour>
182    
183     Window background colour; resource B<background>.
184    
185     =item B<-fg> I<colour>
186    
187     Window foreground colour; resource B<foreground>.
188    
189 sasha 1.144 =item B<-pixmap> I<file[;geom[:op1][:op2][...]]>
190 root 1.1
191 ayin 1.143 Compile I<afterimage>: Specify image file for the background and also
192 sasha 1.130 optionally specify its scaling with a geometry string. Note you may need to
193 root 1.43 add quotes to avoid special shell interpretation of the C<;> in the
194 sasha 1.130 command-line; for more details see resource B<backgroundPixmap>.
195 root 1.1
196     =item B<-cr> I<colour>
197    
198     The cursor colour; resource B<cursorColor>.
199    
200     =item B<-pr> I<colour>
201    
202     The mouse pointer foreground colour; resource B<pointerColor>.
203    
204     =item B<-pr2> I<colour>
205    
206     The mouse pointer background colour; resource B<pointerColor2>.
207    
208     =item B<-bd> I<colour>
209    
210 root 1.22 The colour of the border around the text area and between the scrollbar and the text;
211 root 1.1 resource B<borderColor>.
212    
213 root 1.22 =item B<-fn> I<fontlist>
214 root 1.1
215 root 1.22 Select the fonts to be used. This is a comma separated list of font names
216 root 1.96 that are checked in order when trying to find glyphs for characters. The
217 root 1.22 first font defines the cell size for characters; other fonts might be
218 root 1.34 smaller, but not (in general) larger. A (hopefully) reasonable default
219     font list is always appended to it. See resource B<font> for more details.
220    
221 root 1.114 In short, to specify an X11 core font, just specify its name or prefix it
222 root 1.34 with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
223     e.g.:
224    
225     @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
226     @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
227 root 1.1
228 root 1.5 See also the question "How does rxvt-unicode choose fonts?" in the FAQ
229 root 1.30 section of @@RXVT_NAME@@(7).
230 root 1.5
231 root 1.22 =item B<-fb> I<fontlist>
232    
233 root 1.85 Compile I<font-styles>: The bold font list to use when B<bold> characters
234     are to be printed. See resource B<boldFont> for details.
235 root 1.22
236     =item B<-fi> I<fontlist>
237    
238 root 1.85 Compile I<font-styles>: The italic font list to use when I<italic>
239     characters are to be printed. See resource B<italicFont> for details.
240 root 1.22
241     =item B<-fbi> I<fontlist>
242 root 1.1
243 root 1.85 Compile I<font-styles>: The bold italic font list to use when B<< I<bold
244 root 1.83 italic> >> characters are to be printed. See resource B<boldItalicFont>
245     for details.
246 root 1.1
247 root 1.76 =item B<-is>|B<+is>
248    
249 root 1.85 Compile I<font-styles>: Bold/Italic font styles imply high intensity
250 root 1.76 foreground/background (default). See resource B<intensityStyles> for
251     details.
252    
253 root 1.1 =item B<-name> I<name>
254    
255     Specify the application name under which resources are to be obtained,
256     rather than the default executable file name. Name should not contain
257     `.' or `*' characters. Also sets the icon and title name.
258    
259     =item B<-ls>|B<+ls>
260    
261     Start as a login-shell/sub-shell; resource B<loginShell>.
262    
263     =item B<-ut>|B<+ut>
264    
265     Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
266     B<utmpInhibit>.
267    
268     =item B<-vb>|B<+vb>
269    
270     Turn on/off visual bell on receipt of a bell character; resource
271     B<visualBell>.
272    
273     =item B<-sb>|B<+sb>
274    
275     Turn on/off scrollbar; resource B<scrollBar>.
276    
277     =item B<-si>|B<+si>
278    
279     Turn on/off scroll-to-bottom on TTY output inhibit; resource
280     B<scrollTtyOutput> has opposite effect.
281    
282     =item B<-sk>|B<+sk>
283    
284     Turn on/off scroll-to-bottom on keypress; resource
285     B<scrollTtyKeypress>.
286    
287     =item B<-sw>|B<+sw>
288    
289     Turn on/off scrolling with the scrollback buffer as new lines appear.
290     This only takes effect if B<-si> is also given; resource
291     B<scrollWithBuffer>.
292    
293     =item B<-sr>|B<+sr>
294    
295     Put scrollbar on right/left; resource B<scrollBar_right>.
296    
297     =item B<-st>|B<+st>
298    
299 root 1.64 Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
300 root 1.1 resource B<scrollBar_floating>.
301    
302 root 1.34 =item B<-ptab>|B<+ptab>
303    
304     If enabled (default), "Horizontal Tab" characters are being stored as
305     actual wide characters in the screen buffer, which makes it possible to
306     select and paste them. Since a horizontal tab is a cursor movement and
307     not an actual glyph, this can sometimes be visually annoying as the cursor
308     on a tab character is displayed as a wide cursor; resource B<pastableTabs>.
309    
310 root 1.1 =item B<-bc>|B<+bc>
311    
312     Blink the cursor; resource B<cursorBlink>.
313    
314     =item B<-iconic>
315    
316     Start iconified, if the window manager supports that option.
317     Alternative form is B<-ic>.
318    
319     =item B<-sl> I<number>
320    
321     Save I<number> lines in the scrollback buffer. See resource entry for
322     limits; resource B<saveLines>.
323    
324     =item B<-b> I<number>
325    
326     Compile I<frills>: Internal border of I<number> pixels. See resource
327     entry for limits; resource B<internalBorder>.
328    
329     =item B<-w> I<number>
330    
331     Compile I<frills>: External border of I<number> pixels. Also, B<-bw>
332     and B<-borderwidth>. See resource entry for limits; resource
333     B<externalBorder>.
334    
335     =item B<-bl>
336    
337     Compile I<frills>: Set MWM hints to request a borderless window, i.e.
338 root 1.3 if honoured by the WM, the rxvt-unicode window will not have window
339 root 1.1 decorations; resource B<borderLess>.
340    
341 root 1.99 =item B<-override-redirect>
342    
343     Compile I<frills>: Sets override-redirect on the window; resource
344     B<override-redirect>.
345    
346 root 1.85 =item B<-sbg>
347    
348     Compile I<frills>: Disable the usage of the built-in block graphics/line
349     drawing characters and just rely on what the specified fonts provide. Use
350     this if you have a good font and want to use its block graphic glyphs;
351     resource B<skipBuiltinGlyphs>.
352    
353 root 1.1 =item B<-lsp> I<number>
354    
355 root 1.43 Compile I<frills>: Lines (pixel height) to insert between each row of
356     the display. Useful to work around font rendering problems; resource
357 root 1.137 B<lineSpace>.
358 root 1.1
359     =item B<-tn> I<termname>
360    
361     This option specifies the name of the terminal type to be set in the
362     B<TERM> environment variable. This terminal type must exist in the
363     I<termcap(5)> database and should have I<li#> and I<co#> entries;
364     resource B<termName>.
365    
366     =item B<-e> I<command [arguments]>
367    
368 root 1.2 Run the command with its command-line arguments in the B<@@RXVT_NAME@@>
369 root 1.1 window; also sets the window title and icon name to be the basename of
370     the program being executed if neither I<-title> (I<-T>) nor I<-n> are
371     given on the command line. If this option is used, it must be the last
372     on the command-line. If there is no B<-e> option then the default is to
373     run the program specified by the B<SHELL> environment variable or,
374     failing that, I<sh(1)>.
375    
376 root 1.74 Please note that you must specify a program with arguments. If you want to
377     run shell commands, you have to specify the shell, like this:
378    
379     @@RXVT_NAME@@ -e sh -c "shell commands"
380    
381 root 1.1 =item B<-title> I<text>
382    
383     Window title (B<-T> still respected); the default title is the basename
384     of the program specified after the B<-e> option, if any, otherwise the
385     application name; resource B<title>.
386    
387     =item B<-n> I<text>
388    
389     Icon name; the default name is the basename of the program specified
390     after the B<-e> option, if any, otherwise the application name;
391     resource B<iconName>.
392    
393     =item B<-C>
394    
395     Capture system console messages.
396    
397     =item B<-pt> I<style>
398    
399     Compile I<XIM>: input style for input method; B<OverTheSpot>,
400     B<OffTheSpot>, B<Root>; resource B<preeditType>.
401    
402     =item B<-im> I<text>
403    
404     Compile I<XIM>: input method name. resource B<inputMethod>.
405    
406     =item B<-imlocale> I<string>
407    
408 root 1.48 The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
409     C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
410     input extension to be able to input japanese characters while staying in
411     another locale. resource B<imLocale>.
412    
413     =item B<-imfont> I<fontset>
414    
415     Set the font set to use for the X Input Method, see resource B<imFont>
416     for more info.
417    
418     =item B<-tcw>
419    
420     Change the meaning of triple-click selection with the left mouse
421 root 1.129 button. Only effective when the original (non-perl) selection code is
422     in-use. Instead of selecting a full line it will extend the selection the
423 root 1.48 end of the logical line only. resource B<tripleclickwords>.
424 root 1.1
425     =item B<-insecure>
426    
427     Enable "insecure" mode, which currently enables most of the escape
428     sequences that echo strings. See the resource B<insecure> for more
429     info.
430    
431     =item B<-mod> I<modifier>
432    
433     Override detection of Meta modifier with specified key: B<alt>,
434     B<meta>, B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>,
435     B<mod5>; resource I<modifier>.
436    
437     =item B<-ssc>|B<+ssc>
438    
439     Turn on/off secondary screen (default enabled); resource
440     B<secondaryScreen>.
441    
442     =item B<-ssr>|B<+ssr>
443    
444     Turn on/off secondary screen scroll (default enabled); resource
445     B<secondaryScroll>.
446    
447 root 1.74 =item B<-hold>|B<+hold>
448    
449     Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
450     will not immediately destroy its window when the program executed within
451     it exits. Instead, it will wait till it is being killed or closed by the
452     user; resource B<hold>.
453    
454 root 1.147 =item B<-xrm> I<string>
455    
456     Works like the X Toolkit option of the same name, by adding the I<string>
457     as if it were specified in a resource file. Resource values specified this
458     way take precedence over all other resource specifications.
459    
460     Note that you need to use the I<same> syntax as in the .Xdefaults file,
461     e.g. C<*.background: black>. Also note that all @@RXVT_NAME@@-specific
462     options can be specified as long-options on the commandline, so use
463     of B<-xrm> is mostly limited to cases where you want to specify other
464     resources (e.g. for input methods) or for compatibility with other
465     programs.
466    
467 root 1.59 =item B<-keysym.>I<sym> I<string>
468 root 1.53
469     Remap a key symbol. See resource B<keysym>.
470    
471 root 1.59 =item B<-embed> I<windowid>
472 root 1.1
473 root 1.114 Tells @@RXVT_NAME@@ to embed its windows into an already-existing window,
474 root 1.56 which enables applications to easily embed a terminal.
475    
476     Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
477     shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
478     quite a bit, so don't expect it to keep some specific state. It's best to
479     create an extra subwindow for @@RXVT_NAME@@ and leave it alone.
480    
481 root 1.57 The window will not be destroyed when @@RXVT_NAME@@ exits.
482    
483 root 1.56 It might be useful to know that @@RXVT_NAME@@ will not close file
484     descriptors passed to it (except for stdin/out/err, of course), so you
485     can use file descriptors to communicate with the programs within the
486 root 1.118 terminal. This works regardless of whether the C<-embed> option was used or
487 root 1.56 not.
488 root 1.1
489 root 1.59 Here is a short Gtk2-perl snippet that illustrates how this option can be
490     used (a longer example is in F<doc/embed>):
491    
492 root 1.61 my $rxvt = new Gtk2::Socket;
493     $rxvt->signal_connect_after (realize => sub {
494     my $xid = $_[0]->window->get_xid;
495     system "@@RXVT_NAME@@ -embed $xid &";
496     });
497 root 1.59
498 root 1.86 =item B<-pty-fd> I<file descriptor>
499 root 1.59
500     Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty
501 root 1.119 pair but instead use the given file descriptor as the tty master. This is
502 root 1.59 useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
503     without having to run a program within it.
504    
505     If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
506     entries and will not tinker with pty/tty permissions - you have to do that
507     yourself if you want that.
508    
509 root 1.86 As an extremely special case, specifying C<-1> will completely suppress
510     pty/tty operations.
511    
512 root 1.59 Here is a example in perl that illustrates how this option can be used (a
513     longer example is in F<doc/pty-fd>):
514    
515     use IO::Pty;
516     use Fcntl;
517    
518     my $pty = new IO::Pty;
519     fcntl $pty, F_SETFD, 0; # clear close-on-exec
520     system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&";
521 root 1.60 close $pty;
522 root 1.59
523     # now communicate with rxvt
524     my $slave = $pty->slave;
525     while (<$slave>) { print $slave "got <$_>\n" }
526    
527 root 1.78 =item B<-pe> I<string>
528 root 1.77
529 root 1.88 Comma-separated list of perl extension scripts to use (or not to use) in
530     this terminal instance. See resource B<perl-ext> for details.
531 root 1.77
532 root 1.1 =back
533    
534     =head1 RESOURCES (available also as long-options)
535    
536 root 1.2 Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long
537 root 1.1 options) compiled into your version.
538    
539 root 1.93 You can set and change the resources using X11 tools like B<xrdb>. Many
540     distribution do also load settings from the B<~/.Xresources> file when X
541     starts. @@RXVT_NAME@@ will consult the following files/resources in order,
542     with later settings overwriting earlier ones:
543 root 1.53
544     1. system-wide app-defaults file, either locale-dependent OR global
545     2. app-defaults file in $XAPPLRESDIR
546     3. RESOURCE_MANAGER property on root-window OR $HOME/.Xdefaults
547     4. SCREEN_RESOURCES for the current screen
548     5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
549 root 1.147 6. resources specified via -xrm on the commandline
550 root 1.1
551 root 1.93 Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class
552     names: B<Rxvt> and B<URxvt>. The class name B<Rxvt> allows resources
553     common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be easily
554     configured, while the class name B<URxvt> allows resources unique to
555     B<@@RXVT_NAME@@>, to be shared between different B<@@RXVT_NAME@@>
556     configurations. If no resources are specified, suitable defaults will
557     be used. Command-line arguments can be used to override resource
558     settings. The following resources are supported (you might want to
559     check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl
560     extensions not documented here):
561 root 1.1
562     =over 4
563    
564 root 1.106 =item B<depth:> I<bitdepth>
565    
566 root 1.109 Compile I<xft>: Attempt to find a visual with the given bit depth;
567 root 1.106 option B<-depth>.
568    
569 root 1.1 =item B<geometry:> I<geom>
570    
571     Create the window with the specified X window geometry [default 80x24];
572     option B<-geometry>.
573    
574     =item B<background:> I<colour>
575    
576     Use the specified colour as the window's background colour [default
577     White]; option B<-bg>.
578    
579     =item B<foreground:> I<colour>
580    
581     Use the specified colour as the window's foreground colour [default
582     Black]; option B<-fg>.
583    
584     =item B<color>I<n>B<:> I<colour>
585    
586     Use the specified colour for the colour value I<n>, where 0-7
587     corresponds to low-intensity (normal) colours and 8-15 corresponds to
588     high-intensity (bold = bright foreground, blink = bright background)
589     colours. The canonical names are as follows: 0=black, 1=red, 2=green,
590     3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
591     names used are listed in the B<COLORS AND GRAPHICS> section.
592    
593 root 1.22 Colours higher than 15 cannot be set using resources (yet), but can be
594     changed using an escape command (see @@RXVT_NAME@@(7)).
595    
596     Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
597     88 colour support). Colours 80-87 are evenly spaces grey steps.
598    
599 root 1.1 =item B<colorBD:> I<colour>
600    
601 root 1.22 =item B<colorIT:> I<colour>
602    
603     Use the specified colour to display bold or italic characters when the
604     foreground colour is the default. If font styles are not available
605 root 1.43 (Compile I<styles>) and this option is unset, reverse video is used instead.
606 root 1.1
607     =item B<colorUL:> I<colour>
608    
609     Use the specified colour to display underlined characters when the
610     foreground colour is the default.
611    
612     =item B<colorRV:> I<colour>
613    
614 root 1.125 Use the specified colour as the background for reverse video characters
615     when OPTION_HC is disabled (--disable-frills).
616 root 1.1
617 root 1.35 =item B<underlineColor:> I<colour>
618    
619     If set, use the specified colour as the colour for the underline
620     itself. If unset, use the foreground colour.
621    
622 root 1.1 =item B<cursorColor:> I<colour>
623    
624     Use the specified colour for the cursor. The default is to use the
625     foreground colour; option B<-cr>.
626    
627     =item B<cursorColor2:> I<colour>
628    
629     Use the specified colour for the colour of the cursor text. For this to
630     take effect, B<cursorColor> must also be specified. The default is to
631     use the background colour.
632    
633     =item B<reverseVideo:> I<boolean>
634    
635     B<True>: simulate reverse video by foreground and background colours;
636     option B<-rv>. B<False>: regular screen colours [default]; option
637     B<+rv>. See note in B<COLORS AND GRAPHICS> section.
638    
639     =item B<jumpScroll:> I<boolean>
640    
641 root 1.132 B<True>: specify that jump scrolling should be used. When receiving lots
642     of lines, @@RXVT_NAME@@ will only scroll once a whole screen height of lines
643     has been read, resulting in fewer updates while still displaying every
644     received line; option B<-j>.
645    
646     B<False>: specify that smooth scrolling should be used. @@RXVT_NAME@@ will
647     force a screen refresh on each new line it received; option B<+j>.
648    
649     =item B<skipScroll:> I<boolean>
650    
651     B<True>: (the default) specify that skip scrolling should be used. When
652     receiving lots of lines, @@RXVT_NAME@@ will only scroll once in a while
653     (around 60 times per second), resulting in far fewer updates. This can
654     result in @@RXVT_NAME@@ not ever displaying some of the lines it receives;
655     option B<-ss>.
656    
657     B<False>: specify that everything is to be displayed, even
658     if the refresh is too fast for the human eye to read anything (or the
659     monitor to display anything); option B<+ss>.
660 root 1.1
661     =item B<inheritPixmap:> I<boolean>
662    
663     B<True>: make the background inherit the parent windows' pixmap, giving
664     artificial transparency. B<False>: do not inherit the parent windows'
665     pixmap.
666    
667 root 1.110 I<Please note that transparency of any kind if completely unsupported by
668     the author. Don't bug him with installation questions!>
669    
670 root 1.1 =item B<fading:> I<number>
671    
672 root 1.68 Fade the text by the given percentage when focus is lost; option B<-fade>.
673    
674     =item B<fadeColor:> I<colour>
675    
676     Fade to this colour, when fading is used (see B<fading:>). The default
677     colour is black; option B<-fadecolor>.
678 root 1.1
679     =item B<tintColor:> I<colour>
680    
681 root 1.68 Tint the transparent background pixmap with the given colour; option
682     B<-tint>.
683 root 1.1
684     =item B<shading:> I<number>
685    
686 root 1.124 Darken (0 .. 100) or lighten (-1 .. -100) the transparent background image
687     in addition to tinting it; option B<-sh>.
688 root 1.1
689 sasha 1.130 =item B<blendType:> I<string>
690    
691     Specify background blending type; option B<-blt>.
692    
693     =item B<blurRadius:> I<number>
694    
695 ayin 1.143 Apply Gaussian Blurr with the specified radius to the transparent
696 sasha 1.130 background image; option B<-blr>.
697    
698 root 1.1 =item B<scrollColor:> I<colour>
699    
700     Use the specified colour for the scrollbar [default #B2B2B2].
701    
702     =item B<troughColor:> I<colour>
703    
704     Use the specified colour for the scrollbar's trough area [default
705 root 1.64 #969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar.
706 root 1.1
707 root 1.22 =item B<borderColor:> I<colour>
708    
709     The colour of the border around the text area and between the scrollbar
710     and the text.
711    
712 sasha 1.144 =item B<backgroundPixmap:> I<file[;geom[:op1][:op2][...]]>
713 root 1.1
714 root 1.145 Use the specified image file for the background and also
715     optionally specify its scaling with a geometry string B<WxH+X+Y>,
716     (default C<0x0+50+50>) in which B<"W" / "H"> specify the
717     horizontal/vertical scale (percent), and B<"X" / "Y"> locate the image
718     centre (percent). A scale of 0 displays the image with tiling. A scale
719     of 1 displays the image without any scaling. A scale of 2 to 9 specifies
720     an integer number of images in that direction. No image will be magnified
721     beyond 10 times its original size. The maximum permitted scale is 1000.
722     Additional operations can be specified after colon B<:op1:op2...>.
723     Supported operations are:
724    
725     tile force background image to be tiled and not scaled. Equivalent to 0x0,
726     propscale will scale image keeping proportions,
727     auto will scale image to match window size. Equivalent to 100x100;
728     hscale will scale image horizontally to the window size;
729     vscale will scale image vertically to the window size;
730     scale will scale image to match window size;
731     root will tile image as if it was a root window background, auto-adjusting
732     whenever terminal window moves.
733 sasha 1.144
734 root 1.145 If used in conjunction with B<-tr> option, the specified pixmap will be
735 ayin 1.143 blended over transparency image using either alpha-blending, or any
736 sasha 1.130 other blending type, specified with B<-blt "type"> option.
737 root 1.1
738     =item B<path:> I<path>
739    
740 sasha 1.138 Specify the colon-delimited search path for finding background image files.
741 root 1.1
742 root 1.22 =item B<font:> I<fontlist>
743 root 1.1
744 root 1.96 Select the fonts to be used. This is a comma separated list of font names
745     that are checked in order when trying to find glyphs for characters. The
746     first font defines the cell size for characters; other fonts might be
747     smaller, but not (in general) larger. A (hopefully) reasonable default
748     font list is always appended to it; option B<-fn>.
749 root 1.1
750 root 1.22 Each font can either be a standard X11 core font (XLFD) name, with
751 root 1.43 optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>.
752 root 1.22
753     In addition, each font can be prefixed with additional hints and
754     specifications enclosed in square brackets (C<[]>). The only available
755     hint currently is C<codeset=codeset-name>, and this is only used for Xft
756     fonts.
757    
758     For example, this font resource
759 root 1.1
760 root 1.97 URxvt.font: 9x15bold,\
761 root 1.22 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
762     -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
763     [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \
764     xft:Code2000:antialias=false
765    
766     specifies five fonts to be used. The first one is C<9x15bold> (actually
767     the iso8859-1 version of the second font), which is the base font (because
768     it is named first) and thus defines the character cell grid to be 9 pixels
769     wide and 15 pixels high.
770    
771 root 1.34 The second font is just used to add additional unicode characters not in
772 root 1.22 the base font, likewise the third, which is unfortunately non-bold, but
773     the bold version of the font does contain less characters, so this is a
774     useful supplement.
775    
776     The third font is an Xft font with aliasing turned off, and the characters
777     are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
778     contains other characters, but we are not interested in them.
779    
780     The last font is a useful catch-all font that supplies most of the
781     remaining unicode characters.
782    
783     =item B<boldFont:> I<fontlist>
784    
785     =item B<italicFont:> I<fontlist>
786    
787     =item B<boldItalicFont:> I<fontlist>
788    
789     The font list to use for displaying B<bold>, I<italic> or B<< I<bold
790     italic> >> characters, respectively.
791    
792     If specified and non-empty, then the syntax is the same as for the
793     B<font>-resource, and the given font list will be used as is, which makes
794     it possible to substitute completely different font styles for bold and
795     italic.
796    
797     If unset (the default), a suitable font list will be synthesized by
798     "morphing" the normal text font list into the desired shape. If that is
799     not possible, replacement fonts of the desired shape will be tried.
800    
801     If set, but empty, then this specific style is disabled and the normal
802     text font will being used for the given style.
803 root 1.1
804 root 1.76 =item B<intensityStyles:> I<boolean>
805    
806     When font styles are not enabled, or this option is enabled (B<True>,
807     option B<-is>, the default), bold and italic font styles imply high
808 root 1.118 intensity foreground/background colours. Disabling this option (B<False>,
809 root 1.76 option B<+is>) disables this behaviour, the high intensity colours are not
810     reachable.
811    
812 root 1.1 =item B<selectstyle:> I<mode>
813    
814 root 1.129 Set mouse selection style to B<old> which is 2.20, B<oldword> which
815     is xterm style with 2.20 old word selection, or anything else which
816     gives xterm style selection. Only effective when the original (non-perl)
817     selection code is in use.
818 root 1.1
819     =item B<scrollstyle:> I<mode>
820    
821 root 1.3 Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
822 root 1.64 the author's favourite.
823 root 1.1
824     =item B<title:> I<string>
825    
826     Set window title string, the default title is the command-line
827     specified after the B<-e> option, if any, otherwise the application
828     name; option B<-title>.
829    
830     =item B<iconName:> I<string>
831    
832     Set the name used to label the window's icon or displayed in an icon
833     manager window, it also sets the window's title unless it is explicitly
834     set; option B<-n>.
835    
836     =item B<mapAlert:> I<boolean>
837    
838     B<True>: de-iconify (map) on receipt of a bell character. B<False>: no
839     de-iconify (map) on receipt of a bell character [default].
840    
841 ayin 1.127 =item B<urgentOnBell:> I<boolean>
842    
843     B<True>: set the urgency hint for the wm on receipt of a bell character.
844     B<False>: do not set the urgency hint [default].
845    
846 root 1.1 =item B<visualBell:> I<boolean>
847    
848     B<True>: use visual bell on receipt of a bell character; option B<-vb>.
849     B<False>: no visual bell [default]; option B<+vb>.
850    
851     =item B<loginShell:> I<boolean>
852    
853     B<True>: start as a login shell by prepending a `-' to B<argv[0]> of
854     the shell; option B<-ls>. B<False>: start as a normal sub-shell
855     [default]; option B<+ls>.
856    
857     =item B<utmpInhibit:> I<boolean>
858    
859     B<True>: inhibit writing record into the system log file B<utmp>;
860     option B<-ut>. B<False>: write record into the system log file B<utmp>
861     [default]; option B<+ut>.
862    
863     =item B<print-pipe:> I<string>
864    
865     Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
866     B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or
867     B<Shift-Print> to include the scrollback as well.
868    
869 root 1.65 The string will be interpreted as if typed into the shell as-is.
870    
871 root 1.66 Example:
872    
873 root 1.97 URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
874 root 1.66
875     This creates a new file in your home directory with the screen contents
876 root 1.118 every time you hit C<Print>.
877 root 1.66
878 root 1.1 =item B<scrollBar:> I<boolean>
879    
880     B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
881     disable the scrollbar; option B<+sb>.
882    
883     =item B<scrollBar_right:> I<boolean>
884    
885     B<True>: place the scrollbar on the right of the window; option B<-sr>.
886     B<False>: place the scrollbar on the left of the window; option B<+sr>.
887    
888     =item B<scrollBar_floating:> I<boolean>
889    
890     B<True>: display an rxvt scrollbar without a trough; option B<-st>.
891     B<False>: display an rxvt scrollbar with a trough; option B<+st>.
892    
893     =item B<scrollBar_align:> I<mode>
894    
895     Align the B<top>, B<bottom> or B<centre> [default] of the scrollbar
896     thumb with the pointer on middle button press/drag.
897    
898     =item B<scrollTtyOutput:> I<boolean>
899    
900 root 1.4 B<True>: scroll to bottom when tty receives output; option B<-si>.
901 root 1.1 B<False>: do not scroll to bottom when tty receives output; option
902 root 1.4 B<+si>.
903 root 1.1
904     =item B<scrollWithBuffer:> I<boolean>
905    
906 root 1.30 B<True>: scroll with scrollback buffer when tty receives new lines (and
907 root 1.58 B<scrollTtyOutput> is False); option B<-sw>. B<False>: do not scroll
908 root 1.118 with scrollback buffer when tty receives new lines; option B<+sw>.
909 root 1.1
910     =item B<scrollTtyKeypress:> I<boolean>
911    
912 root 1.3 B<True>: scroll to bottom when a non-special key is pressed. Special keys
913     are those which are intercepted by rxvt-unicode for special handling and
914     are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
915     bottom when a non-special key is pressed; option B<+sk>.
916 root 1.1
917     =item B<saveLines:> I<number>
918    
919     Save I<number> lines in the scrollback buffer [default 64]. This
920     resource is limited on most machines to 65535; option B<-sl>.
921    
922     =item B<internalBorder:> I<number>
923    
924     Internal border of I<number> pixels. This resource is limited to 100;
925     option B<-b>.
926    
927     =item B<externalBorder:> I<number>
928    
929     External border of I<number> pixels. This resource is limited to 100;
930     option B<-w>, B<-bw>, B<-borderwidth>.
931    
932     =item B<borderLess:> I<boolean>
933    
934     Set MWM hints to request a borderless window, i.e. if honoured by the
935 root 1.3 WM, the rxvt-unicode window will not have window decorations; option B<-bl>.
936 root 1.1
937 root 1.85 =item B<skipBuiltinGlyphs:> I<boolean>
938    
939     Compile I<frills>: Disable the usage of the built-in block graphics/line
940     drawing characters and just rely on what the specified fonts provide. Use
941     this if you have a good font and want to use its block graphic glyphs;
942     option B<-sbg>.
943    
944 root 1.1 =item B<termName:> I<termname>
945    
946     Specifies the terminal type name to be set in the B<TERM> environment
947     variable; option B<-tn>.
948    
949 root 1.137 =item B<lineSpace:> I<number>
950 root 1.1
951     Specifies number of lines (pixel height) to insert between each row of
952     the display [default 0]; option B<-lsp>.
953    
954     =item B<meta8:> I<boolean>
955    
956     B<True>: handle Meta (Alt) + keypress to set the 8th bit. B<False>:
957     handle Meta (Alt) + keypress as an escape prefix [default].
958    
959     =item B<mouseWheelScrollPage:> I<boolean>
960    
961     B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel
962     scrolls five lines [default].
963    
964 root 1.34 =item B<pastableTabs:> I<boolean>
965    
966     B<True>: store tabs as wide characters. B<False>: interpret tabs as cursor
967     movement only; option C<-ptab>.
968    
969 root 1.1 =item B<cursorBlink:> I<boolean>
970    
971     B<True>: blink the cursor. B<False>: do not blink the cursor [default];
972     option B<-bc>.
973    
974     =item B<pointerBlank:> I<boolean>
975    
976     B<True>: blank the pointer when a key is pressed or after a set number
977     of seconds of inactivity. B<False>: the pointer is always visible
978     [default].
979    
980     =item B<pointerColor:> I<colour>
981    
982     Mouse pointer foreground colour.
983    
984     =item B<pointerColor2:> I<colour>
985    
986     Mouse pointer background colour.
987    
988     =item B<pointerBlankDelay:> I<number>
989    
990 root 1.62 Specifies number of seconds before blanking the pointer [default 2]. Use a
991     large number (e.g. C<987654321>) to effectively disable the timeout.
992 root 1.1
993     =item B<backspacekey:> I<string>
994    
995     The string to send when the backspace key is pressed. If set to B<DEC>
996     or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace>
997     (code 8) - which can be reversed with the appropriate DEC private mode
998     escape sequence.
999    
1000     =item B<deletekey:> I<string>
1001    
1002     The string to send when the delete key (not the keypad delete key) is
1003     pressed. If unset it will send the sequence traditionally associated
1004     with the B<Execute> key.
1005    
1006     =item B<cutchars:> I<string>
1007    
1008 root 1.105 The characters used as delimiters for double-click word selection
1009     (whitespace delimiting is added automatically if resource is given).
1010 root 1.104
1011 root 1.129 When the perl selection extension is in use (the default if compiled
1012     in, see the @@RXVT_NAME@@perl(3) manpage), a suitable regex using these
1013     characters will be created (if the resource exists, otherwise, no regex
1014     will be created). In this mode, characters outside ISO-8859-1 can be used.
1015 root 1.104
1016     When the selection extension is not used, only ISO-8859-1 characters can
1017     be used. If not specified, the built-in default is used:
1018 root 1.1
1019 ayin 1.146 B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
1020 root 1.1
1021     =item B<preeditType:> I<style>
1022    
1023     B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
1024    
1025     =item B<inputMethod:> I<name>
1026    
1027     I<name> of inputMethod to use; option B<-im>.
1028    
1029     =item B<imLocale:> I<name>
1030    
1031 root 1.48 The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
1032     C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
1033     input extension to be able to input japanese characters while staying in
1034 root 1.77 another locale; option B<-imlocale>.
1035 root 1.1
1036 root 1.48 =item B<imFont:> I<fontset>
1037    
1038     Specify the font-set used for XIM styles C<OverTheSpot> or
1039     C<OffTheSpot>. It must be a standard X font set (XLFD patterns separated
1040     by commas), i.e. it's not in the same format as the other font lists used
1041     in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
1042     found, preferably one or two pixels differing in size to the base font.
1043     option B<-imfont>.
1044    
1045     =item B<tripleclickwords:> I<boolean>
1046    
1047     Change the meaning of triple-click selection with the left mouse
1048     button. Instead of selecting a full line it will extend the selection to
1049 root 1.77 the end of the logical line only; option B<-tcw>.
1050 root 1.48
1051 root 1.22 =item B<insecure:> I<boolean>
1052 root 1.1
1053     Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
1054     echo arbitrary strings like the icon name or the locale. This could be
1055 root 1.30 abused if somebody gets 8-bit-clean access to your display, whether
1056 root 1.73 through a mail client displaying mail bodies unfiltered or through
1057     write(1) or any other means. Therefore, these sequences are disabled by
1058     default. (Note that many other terminals, including xterm, have these
1059     sequences enabled by default, which doesn't make it safer, though).
1060    
1061     You can enable them by setting this boolean resource or specifying
1062     B<-insecure> as an option. At the moment, this enables display-answer,
1063 root 1.97 locale, findfont, icon label and window title requests.
1064 root 1.1
1065     =item B<modifier:> I<modifier>
1066    
1067     Set the key to be interpreted as the Meta key to: B<alt>, B<meta>,
1068     B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option
1069     B<-mod>.
1070    
1071     =item B<answerbackString:> I<string>
1072    
1073 root 1.3 Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E)
1074 root 1.1 character is passed through. It may contain escape values as described
1075     in the entry on B<keysym> following.
1076    
1077 root 1.99 =item B<secondaryScreen:> I<boolean>
1078 root 1.1
1079     Turn on/off secondary screen (default enabled).
1080    
1081 root 1.99 =item B<secondaryScroll:> I<boolean>
1082 root 1.1
1083 ayin 1.126 Turn on/off secondary screen scroll (default enabled). If this
1084 root 1.1 option is enabled, scrolls on the secondary screen will change the
1085     scrollback buffer and switching to/from the secondary screen will
1086     instead scroll the screen up.
1087    
1088 root 1.99 =item B<hold>: I<boolean>
1089 root 1.74
1090     Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
1091     will not immediately destroy its window when the program executed within
1092     it exits. Instead, it will wait till it is being killed or closed by the
1093     user.
1094    
1095 root 1.1 =item B<keysym.>I<sym>: I<string>
1096    
1097 root 1.43 Compile I<frills>: Associate I<string> with keysym I<sym>. The
1098     intervening resource name B<keysym.> cannot be omitted.
1099    
1100     The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be
1101     any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>,
1102     B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>,
1103     and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>,
1104     B<2>, B<3>, B<4>, B<5>.
1105    
1106     The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
1107     whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
1108 root 1.48 keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1109 root 1.43 current application keymap mode state.
1110    
1111     The spellings of I<key> can be obtained by using B<xev>(1) command or
1112     searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and
1113     omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex
1114     keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not
1115     performed in an exact manner; however, the closest match is assured.
1116    
1117 ayin 1.139 I<string> may contain escape values (C<\n>: newline, C<\000>: octal
1118     number), see RESOURCES in C<man 7 X> for futher details.
1119 root 1.48
1120 root 1.43 You can define a range of keysyms in one shot by providing a I<string>
1121 root 1.118 with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/'
1122 root 1.43 should be a character not used by the strings.
1123    
1124     Its usage can be demonstrated by an example:
1125    
1126 root 1.48 URxvt.keysym.M-C-0x61: list|\033<M-C-|abc|>
1127 root 1.43
1128     The above line is equivalent to the following three lines:
1129    
1130 root 1.48 URxvt.keysym.Meta-Control-0x61: \033<M-C-a>
1131     URxvt.keysym.Meta-Control-0x62: \033<M-C-b>
1132     URxvt.keysym.Meta-Control-0x63: \033<M-C-c>
1133    
1134     If I<string> takes the form of C<command:STRING>, the specified B<STRING>
1135     is interpreted and executed as @@RXVT_NAME@@'s control sequence. For
1136     example the following means "change the current locale to C<zh_CN.GBK>
1137     when Control-Meta-c is being pressed":
1138    
1139     URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1140    
1141 root 1.80 If I<string> takes the form C<perl:STRING>, then the specified B<STRING>
1142 root 1.81 is passed to the C<on_keyboard_command> perl handler. See the @@RXVT_NAME@@perl(3)
1143 root 1.80 manpage. For example, the F<selection> extension (activated via
1144     C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1145    
1146     URxvt.keysym.M-C-c: perl:selection:rot13
1147    
1148 root 1.63 Due the the large number of modifier combinations, a defined key mapping
1149     will match if at I<at least> the specified identifiers are being set, and
1150     no other key mappings with those and more bits are being defined. That
1151     means that defining a key map for C<a> will automatically provide
1152     definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1153     mappings themselves.
1154    
1155     Unfortunately, this will override built-in key mappings. For example
1156     if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s
1157     C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the
1158     user-defined keymap using the C<builtin:> replacement:
1159    
1160     URxvt.keysym.Insert: <my insert key sequence>
1161     URxvt.keysym.S-Insert: builtin:
1162    
1163     The first line defines a mapping for C<Insert> and I<any> combination
1164     of modifiers. The second line re-establishes the default mapping for
1165     C<Shift-Insert>.
1166    
1167 root 1.48 The following example will map Control-Meta-1 and Control-Meta-2 to
1168     the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1169     font-switching at runtime:
1170    
1171     URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1172     URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1173    
1174     Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1175     info):
1176    
1177     URxvt.keysym.M-C-3: command:\033[8;25;80t
1178     URxvt.keysym.M-C-4: command:\033[8;48;110t
1179 root 1.1
1180 root 1.84 =item B<perl-ext-common>: I<string>
1181    
1182 root 1.78 =item B<perl-ext>: I<string>
1183 root 1.77
1184 root 1.88 Comma-separated list(s) of perl extension scripts (default: C<default>) to
1185     use in this terminal instance; option B<-pe>.
1186    
1187     Extension names can be prefixed with a C<-> sign to prohibit using
1188 root 1.91 them. This can be useful to selectively disable some extensions loaded
1189 root 1.88 by default, or specified via the C<perl-ext-common> resource. For
1190     example, C<default,-selection> will use all the default extension except
1191     C<selection>.
1192    
1193 root 1.91 Extension names can also be followed by an argument in angle brackets
1194     (e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for
1195 root 1.118 searchable scrollback to Alt/Meta-s). Mentioning the same extension
1196 root 1.91 multiple times with different arguments will pass multiple arguments to
1197     the extension.
1198    
1199 root 1.88 Each extension is looked up in the library directories, loaded if
1200     necessary, and bound to the current terminal instance.
1201    
1202     If both of these resources are the empty string, then the perl
1203     interpreter will not be initialized. The idea behind two options is that
1204     B<perl-ext-common> will be used for extensions that should be available to
1205     all instances, while B<perl-ext> is used for specific instances.
1206 root 1.77
1207     =item B<perl-eval>: I<string>
1208    
1209 root 1.89 Perl code to be evaluated when all extensions have been registered. See
1210     the @@RXVT_NAME@@perl(3) manpage. Due to security reasons, this resource
1211     will be ignored when running setuid/setgid.
1212 root 1.77
1213     =item B<perl-lib>: I<path>
1214    
1215 root 1.78 Colon-separated list of additional directories that hold extension
1216     scripts. When looking for extensions specified by the C<perl> resource,
1217     @@RXVT_NAME@@ will first look in these directories and then in
1218 root 1.89 F<@@RXVT_LIBDIR@@/urxvt/perl/>. Due to security reasons, this resource
1219     will be ignored when running setuid/setgid.
1220 root 1.77
1221 root 1.81 See the @@RXVT_NAME@@perl(3) manpage.
1222 root 1.77
1223 root 1.95 =item B<< selection.pattern-I<idx> >>: I<perl-regex>
1224    
1225     Additional selection patterns, see the @@RXVT_NAME@@perl(3) manpage for
1226     details.
1227    
1228     =item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1229    
1230     Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1231     for details.
1232    
1233 root 1.94 =item B<searchable-scrollback:> I<keysym>
1234    
1235     Sets the hotkey that starts the incremental scrollback buffer search
1236     (default: C<M-s>).
1237    
1238 root 1.92 =item B<urlLauncher>: I<string>
1239    
1240     Specifies the program to be started with a URL argument. Used by the
1241 root 1.122 C<selection-popup> and C<matcher> perl extensions.
1242 root 1.92
1243 root 1.90 =item B<transient-for>: I<windowid>
1244    
1245 root 1.99 Compile I<frills>: Sets the WM_TRANSIENT_FOR property to the given window id.
1246    
1247     =item B<override-redirect>: I<boolean>
1248    
1249     Compile I<frills>: Sets override-redirect for the terminal window, making
1250     it almost invisible to window managers; option B<-override-redirect>.
1251 root 1.90
1252 ayin 1.131 =item B<iso14755_52:> I<boolean>
1253    
1254     Turn on/off ISO 14755 5.2 mode (default enabled).
1255    
1256 root 1.1 =back
1257    
1258     =head1 THE SCROLLBAR
1259    
1260 root 1.2 Lines of text that scroll off the top of the B<@@RXVT_NAME@@> window
1261 root 1.1 (resource: B<saveLines>) and can be scrolled back using the scrollbar
1262 root 1.2 or by keystrokes. The normal B<@@RXVT_NAME@@> scrollbar has arrows and
1263 root 1.1 its behaviour is fairly intuitive. The B<xterm-scrollbar> is without
1264     arrows and its behaviour mimics that of I<xterm>
1265    
1266     Scroll down with B<Button1> (B<xterm-scrollbar>) or B<Shift-Next>.
1267     Scroll up with B<Button3> (B<xterm-scrollbar>) or B<Shift-Prior>.
1268     Continuous scroll with B<Button2>.
1269    
1270     =head1 MOUSE REPORTING
1271    
1272     To temporarily override mouse reporting, for either the scrollbar or
1273     the normal text selection/insertion, hold either the Shift or the Meta
1274     (Alt) key while performing the desired mouse action.
1275    
1276     If mouse reporting mode is active, the normal scrollbar actions are
1277     disabled -- on the assumption that we are using a fullscreen
1278 root 1.53 application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
1279     (Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
1280     up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
1281 root 1.1 respectively.
1282    
1283 root 1.128 =head1 THE SELECTION: SELECTING AND PASTING TEXT
1284 root 1.1
1285 root 1.128 The behaviour of text selection and insertion/pasting mechanism is similar
1286     to I<xterm>(1).
1287 root 1.1
1288     =over 4
1289    
1290 root 1.128 =item B<Selecting>:
1291 root 1.1
1292 root 1.48 Left click at the beginning of the region, drag to the end of the region
1293     and release; Right click to extend the marked region; Left double-click
1294     to select a word; Left triple-click to select the entire logical line
1295     (which can span multiple screen lines), unless modified by resource
1296     B<tripleclickwords>.
1297 root 1.1
1298 root 1.30 Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
1299 root 1.75 (Compile: I<frills>) will create a rectangular selection instead of a
1300     normal one. In this mode, every selected row becomes its own line in the
1301     selection, and trailing whitespace is visually underlined and removed from
1302     the selection.
1303 root 1.30
1304 root 1.128 =item B<Pasting>:
1305 root 1.1
1306 root 1.103 Pressing and releasing the Middle mouse button in an B<@@RXVT_NAME@@>
1307     window causes the value of the PRIMARY selection (or CLIPBOARD with the
1308 root 1.128 B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1309 root 1.103
1310     Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1311     inserted too.
1312 root 1.1
1313     =back
1314    
1315     =head1 CHANGING FONTS
1316    
1317 root 1.12 Changing fonts (or font sizes, respectively) via the keypad is not yet
1318     supported in rxvt-unicode. Bug me if you need this.
1319    
1320 root 1.97 You can, however, switch fonts at runtime using escape sequences, e.g.:
1321 root 1.12
1322 root 1.72 printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic"
1323 root 1.12
1324 root 1.97 You can use keyboard shortcuts, too:
1325    
1326     URxvt.keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007
1327     URxvt.keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
1328    
1329 root 1.12 rxvt-unicode will automatically re-apply these fonts to the output so far.
1330 root 1.1
1331 root 1.2 =head1 ISO 14755 SUPPORT
1332    
1333 root 1.12 ISO 14755 is a standard for entering and viewing unicode characters
1334     and character codes using the keyboard. It consists of 4 parts. The
1335 ayin 1.133 first part is available if rxvt-unicode has been compiled with
1336 root 1.12 C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1337     with C<--enable-iso14755>.
1338    
1339     =over 4
1340    
1341 root 1.48 =item * 5.1: Basic method
1342 root 1.12
1343     This allows you to enter unicode characters using their hexcode.
1344 root 1.2
1345 root 1.12 Start by pressing and holding both C<Control> and C<Shift>, then enter
1346     hex-digits (between one and six). Releasing C<Control> and C<Shift> will
1347     commit the character as if it were typed directly. While holding down
1348     C<Control> and C<Shift> you can also enter multiple characters by pressing
1349     C<Space>, which will commit the current character and lets you start a new
1350     one.
1351    
1352     As an example of use, imagine a business card with a japanese e-mail
1353     address, which you cannot type. Fortunately, the card has the e-mail
1354     address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
1355     by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
1356     followed by releasing the modifier keys.
1357    
1358 root 1.48 =item * 5.2: Keyboard symbols entry method
1359 root 1.12
1360     This mode lets you input characters representing the keycap symbols of
1361     your keyboard, if representable in the current locale encoding.
1362    
1363     Start by pressing C<Control> and C<Shift> together, then releasing
1364     them. The next special key (cursor keys, home etc.) you enter will not
1365 root 1.114 invoke its usual function but instead will insert the corresponding
1366 root 1.12 keycap symbol. The symbol will only be entered when the key has been
1367     released, otherwise pressing e.g. C<Shift> would enter the symbol for
1368 root 1.30 C<ISO Level 2 Switch>, although your intention might have been to enter a
1369 root 1.12 reverse tab (Shift-Tab).
1370    
1371 root 1.48 =item * 5.3: Screen-selection entry method
1372 root 1.12
1373     While this is implemented already (it's basically the selection
1374     mechanism), it could be extended by displaying a unicode character map.
1375    
1376 root 1.48 =item * 5.4: Feedback method for identifying displayed characters for later input
1377 root 1.12
1378     This method lets you display the unicode character code associated with
1379     characters already displayed.
1380    
1381     You enter this mode by holding down C<Control> and C<Shift> together, then
1382     pressing and holding the left mouse button and moving around. The unicode
1383     hex code(s) (it might be a combining character) of the character under the
1384     pointer is displayed until you release C<Control> and C<Shift>.
1385    
1386 root 1.22 In addition to the hex codes it will display the font used to draw this
1387     character - due to implementation reasons, characters combined with
1388     combining characters, line drawing characters and unknown characters will
1389     always be drawn using the built-in support font.
1390    
1391 root 1.12 =back
1392    
1393     With respect to conformance, rxvt-unicode is supposed to be compliant to
1394     both scenario A and B of ISO 14755, including part 5.2.
1395 root 1.2
1396 root 1.1 =head1 LOGIN STAMP
1397    
1398 root 1.48 B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
1399     it can be seen via the I<who(1)> command, and can accept messages. To
1400     allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
1401     on some systems or setgid to root or to some other group on others.
1402 root 1.1
1403     =head1 COLORS AND GRAPHICS
1404    
1405     In addition to the default foreground and background colours,
1406 root 1.2 B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus
1407 root 1.1 high-intensity bold/blink versions of the same). Here is a list of the
1408 root 1.107 colours with their names.
1409 root 1.1
1410     =begin table
1411    
1412     B<color0> (black) = Black
1413     B<color1> (red) = Red3
1414     B<color2> (green) = Green3
1415     B<color3> (yellow) = Yellow3
1416     B<color4> (blue) = Blue3
1417     B<color5> (magenta) = Magenta3
1418     B<color6> (cyan) = Cyan3
1419     B<color7> (white) = AntiqueWhite
1420     B<color8> (bright black) = Grey25
1421     B<color9> (bright red) = Red
1422     B<color10> (bright green) = Green
1423     B<color11> (bright yellow) = Yellow
1424     B<color12> (bright blue) = Blue
1425     B<color13> (bright magenta) = Magenta
1426     B<color14> (bright cyan) = Cyan
1427     B<color15> (bright white) = White
1428     B<foreground> = Black
1429     B<background> = White
1430    
1431     =end table
1432    
1433     It is also possible to specify the colour values of B<foreground>,
1434     B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as
1435     a number 0-15, as a convenient shorthand to reference the colour name of
1436     color0-color15.
1437    
1438 root 1.112 In addition to the colours defined above, @@RXVT_NAME@@ offers an
1439     additional 72 colours. The first 64 of those (with indices 16 to 79)
1440     consist of a 4*4*4 RGB colour cube (i.e. I<index = r * 16 + g * 4 + b +
1441     16>), followed by 8 additional shades of gray (with indices 80 to 87).
1442    
1443     Together, all those colours implement the 88 colour xterm colours. Only
1444     the first 16 can be changed using resources currently, the rest can only
1445     be changed via command sequences ("escape codes").
1446    
1447 root 1.1 Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by
1448     always swapping the foreground/background colours. This is in contrast to
1449     I<xterm>(1) where the colours are only swapped if they have not otherwise
1450     been specified. For example,
1451    
1452     =over 4
1453    
1454 root 1.3 =item B<@@RXVT_NAME@@ -fg Black -bg White -rv>
1455 root 1.1
1456     would yield White on Black, while on I<xterm>(1) it would yield Black
1457     on White.
1458    
1459     =back
1460    
1461 root 1.111 =head2 ALPHA CHANNEL SUPPORT
1462    
1463     If Xft support has been compiled in and as long as Xft/Xrender/X don't get
1464     their act together, rxvt-unicode will support C<rgba:rrrr/gggg/bbbb/aaaa>
1465     (recommended, but B<MUST> have 4 digits/component) colour specifications,
1466     in addition to the ones provided by X, where the additional A component
1467     specifies opacity (alpha) values. The minimum value of C<0> is completely
1468 root 1.123 transparent). You can also prefix any color with C<[percent]>, where
1469     C<percent> is a decimal percentage (0-100) that specifies the opacity of
1470     the color, where C<0> is completely transparent and C<100> is completelxy
1471     opaque.
1472 root 1.111
1473     You probably need to specify B<"-depth 32">, too, and have the luck that
1474     your X-server uses ARGB pixel layout, as X is far from just supporting
1475     ARGB visuals out of the box, and rxvt-unicode just fudges around.
1476    
1477     For example, the following selects an almost completely transparent red
1478     background, and an almost opaque pink foreground:
1479    
1480 root 1.123 @@RXVT_NAME@@ -depth 32 -bg rgba:0000/0000/0000/aaaa -fg "[80]pink"
1481 root 1.111
1482     I<Please note that transparency of any kind if completely unsupported by
1483     the author. Don't bug him with installation questions!>
1484    
1485 root 1.5 =head1 ENVIRONMENT
1486    
1487 root 1.53 B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1488    
1489     =over 4
1490    
1491     =item B<TERM>
1492    
1493     Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1494 root 1.118 resources or on the command line.
1495 root 1.53
1496     =item B<COLORTERM>
1497    
1498 root 1.118 Either C<rxvt>, C<rxvt-xpm>, depending on whether @@RXVT_NAME@@ was
1499 ayin 1.143 compiled with background image support, and optionally with the added
1500     extension C<-mono> to indicate that rxvt-unicode runs on a monochrome
1501 sasha 1.138 screen.
1502 root 1.53
1503     =item B<COLORFGBG>
1504    
1505     Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
1506     the colour code used as default foreground/text colour (or the string
1507     C<default> to indicate that the default-colour escape sequence is to be
1508     used), C<bg> is the colour code used as default background colour (or the
1509     string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1510 ayin 1.143 was compiled with background image support. Libraries like C<ncurses>
1511 sasha 1.138 and C<slang> can (and do) use this information to optimize screen output.
1512 root 1.53
1513     =item B<WINDOWID>
1514    
1515     Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1516     window, which usually has subwindows for the scrollbar, the terminal
1517     window and so on).
1518    
1519     =item B<TERMINFO>
1520    
1521     Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1522     C<--with-terminfo=PATH>.
1523    
1524     =item B<DISPLAY>
1525    
1526     Used by @@RXVT_NAME@@ to connect to the display and set to the correct
1527 root 1.114 display in its child processes.
1528 root 1.53
1529     =item B<SHELL>
1530    
1531     The shell to be used for command execution, defaults to C</bin/sh>.
1532    
1533     =item B<RXVT_SOCKET>
1534    
1535     The unix domain socket path used by @@RXVT_NAME@@c(1) and
1536     @@RXVT_NAME@@d(1).
1537    
1538 root 1.67 Default F<<< $HOME/.rxvt-unicode-I<< <nodename >> >>>.
1539 root 1.53
1540     =item B<HOME>
1541    
1542     Used to locate the default directory for the unix domain socket for
1543     daemon communications and to locate various resource files (such as
1544     C<.Xdefaults>)
1545    
1546     =item B<XAPPLRESDIR>
1547    
1548     Directory where various X resource files are being located.
1549    
1550     =item B<XENVIRONMENT>
1551    
1552     If set and accessible, gives the name of a X resource file to be loaded by
1553     @@RXVT_NAME@@.
1554    
1555     =back
1556 root 1.5
1557     =head1 FILES
1558    
1559     =over 4
1560    
1561     =item B</usr/lib/X11/rgb.txt>
1562    
1563     Color names.
1564 root 1.3
1565     =back
1566    
1567     =head1 SEE ALSO
1568 root 1.1
1569 root 1.67 @@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1570 root 1.1
1571     =head1 CURRENT PROJECT COORDINATOR
1572    
1573     =over 4
1574    
1575     =item Project Coordinator
1576    
1577 root 1.55 Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >>
1578 root 1.1
1579 root 1.113 L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1580 root 1.1
1581     =back
1582    
1583     =head1 AUTHORS
1584    
1585     =over 4
1586    
1587     =item John Bovey
1588    
1589     University of Kent, 1992, wrote the original Xvt.
1590    
1591     =item Rob Nation L<< <nation@rocket.sanders.lockheed.com> >>
1592    
1593     very heavily modified Xvt and came up with Rxvt
1594    
1595     =item Angelo Haritsis L<< <ah@doc.ic.ac.uk> >>
1596    
1597     wrote the Greek Keyboard Input (no longer in code)
1598    
1599     =item mj olesen L<< <olesen@me.QueensU.CA> >>
1600    
1601     Wrote the menu system.
1602    
1603     Project Coordinator (changes.txt 2.11 to 2.21)
1604    
1605     =item Oezguer Kesim L<< <kesim@math.fu-berlin.de> >>
1606    
1607     Project Coordinator (changes.txt 2.21a to 2.4.5)
1608    
1609     =item Geoff Wing L<< <gcw@pobox.com> >>
1610    
1611 root 1.100 Rewrote screen display and text selection routines.
1612 ayin 1.143
1613 root 1.100 Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1614 root 1.1
1615 root 1.55 =item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >>
1616 root 1.1
1617 root 1.100 Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1618     extension, random hacks, numerous bugfixes and extensions.
1619 root 1.1
1620     Project Coordinator (Changes 1.0 -)
1621    
1622 root 1.100 =item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >>
1623    
1624 ayin 1.101 Pty/tty/utmp/wtmp rewrite, lots of random hacking and bugfixing.
1625 root 1.100
1626 root 1.1 =back
1627