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