*** empty log message ***
[dana/urxvt.git] / doc / rxvt.1.pod
1 =head1 NAME
2
3 rxvt-unicode (ouR XVT, unicode) - (a VT102 emulator for the X window system)
4
5 =head1 SYNOPSIS
6
7 B<@@RXVT_NAME@@> [options] [-e command [ args ]]
8
9 =head1 DESCRIPTION
10
11 B<rxvt-unicode>, version B<@@RXVT_VERSION@@>, is a colour vt102 terminal
12 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 =head1 FREQUENTLY ASKED QUESTIONS
18
19 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 L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
23
24 =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 like tibetan or devenagari. Don't expect pretty output when using these
32 scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
33 fine, though. A somewhat difficult case are left-to-right scripts, such
34 as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
35 belong into the application, not the terminal emulator (too many things --
36 such as cursor-movement while editing -- break otherwise), but that might
37 change.
38
39 If you are looking for a terminal that supports more exotic scripts, let
40 me recommend C<mlterm>, which is a very userfriendly, lean and clean
41 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 programs force onto it's users never made sense to me: You should be able
48 to choose any font for any script freely.
49
50 Apart from that, rxvt-unicode is also much better internationalised than
51 it's predecessor, supports things such as XFT and ISO 14755 that are handy
52 in i18n-environments, is faster, and has a lot less bugs than the original
53 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 without most of it's features to get a lean binary. It also comes with
58 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 been extended) easier accessible: see @@RXVT_NAME@@(7) for technical
65 reference documentation (escape sequences etc.).
66
67 =head1 OPTIONS
68
69 The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed
70 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 your system. `@@RXVT_NAME@@ -h' gives a list of major compile-time options on
74 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 I<XIM> on the I<Options> line. Note: `@@RXVT_NAME@@ -help' gives a list of all
77 command-line options compiled into your version.
78
79 Note that B<@@RXVT_NAME@@> permits the resource name to be used as a
80 long-option (--/++ option) so the potential command-line options are
81 far greater than those listed. For example: `@@RXVT_NAME@@ --loginShell --color1
82 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 =item B<-geometry> I<geom>
99
100 Window geometry (B<-g> still respected); resource B<geometry>.
101
102 =item B<-rv>|B<+rv>
103
104 Turn on/off simulated reverse video; resource B<reverseVideo>.
105
106 =item B<-j>|B<+j>
107
108 Turn on/off jump scrolling; resource B<jumpScroll>.
109
110 =item B<-ip>|B<+ip>
111
112 Turn on/off inheriting parent window's pixmap. Alternative form is
113 B<-tr>; resource B<inheritPixmap>.
114
115 =item B<-fade> I<number>
116
117 Fade the text by the given percentage when focus is lost. resource B<fading>.
118
119 =item B<-tint> I<colour>
120
121 Tint the transparent background pixmap with the given colour when
122 transparency is enabled with B<-tr> or B<-ip>. See also the B<-sh>
123 option that can be used to brighten or darken the image in addition to
124 tinting it.
125
126 =item B<-sh>
127
128 I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent
129 background image in addition to tinting it (i.e. B<-tint> must be
130 specified, too, e.g. C<-tint white>).
131
132 =item B<-bg> I<colour>
133
134 Window background colour; resource B<background>.
135
136 =item B<-fg> I<colour>
137
138 Window foreground colour; resource B<foreground>.
139
140 =item B<-pixmap> I<file[;geom]>
141
142 Compile I<XPM>: Specify XPM file for the background and also optionally
143 specify its scaling with a geometry string. Note you may need to
144 add quotes to avoid special shell interpretation of the C<;> in the
145 command-line; resource B<backgroundPixmap>.
146
147 =item B<-cr> I<colour>
148
149 The cursor colour; resource B<cursorColor>.
150
151 =item B<-pr> I<colour>
152
153 The mouse pointer foreground colour; resource B<pointerColor>.
154
155 =item B<-pr2> I<colour>
156
157 The mouse pointer background colour; resource B<pointerColor2>.
158
159 =item B<-bd> I<colour>
160
161 The colour of the border around the text area and between the scrollbar and the text;
162 resource B<borderColor>.
163
164 =item B<-fn> I<fontlist>
165
166 Select the fonts to be used. This is a comma separated list of font names
167 that are used in turn when trying to display Unicode characters.  The
168 first font defines the cell size for characters; other fonts might be
169 smaller, but not (in general) larger. A (hopefully) reasonable default
170 font list is always appended to it. See resource B<font> for more details.
171
172 In short, to specify an X11 core font, just specify it's name or prefix it
173 with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
174 e.g.:
175
176    @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
177    @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
178
179 See also the question "How does rxvt-unicode choose fonts?" in the FAQ
180 section of @@RXVT_NAME@@(7).
181
182 =item B<-fb> I<fontlist>
183
184 Compile font-styles: The bold font list to use when bold characters are to
185 be printed. See resource B<boldFont> for details.
186
187 =item B<-fi> I<fontlist>
188
189 Compile font-styles: The italic font list to use when bold characters are to
190 be printed. See resource B<italicFont> for details.
191
192 =item B<-fbi> I<fontlist>
193
194 Compile font-styles: The bold italic font list to use when bold characters are to
195 be printed. See resource B<boldItalicFont> for details.
196
197 =item B<-name> I<name>
198
199 Specify the application name under which resources are to be obtained,
200 rather than the default executable file name. Name should not contain
201 `.' or `*' characters. Also sets the icon and title name.
202
203 =item B<-ls>|B<+ls>
204
205 Start as a login-shell/sub-shell; resource B<loginShell>.
206
207 =item B<-ut>|B<+ut>
208
209 Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
210 B<utmpInhibit>.
211
212 =item B<-vb>|B<+vb>
213
214 Turn on/off visual bell on receipt of a bell character; resource
215 B<visualBell>.
216
217 =item B<-sb>|B<+sb>
218
219 Turn on/off scrollbar; resource B<scrollBar>.
220
221 =item B<-si>|B<+si>
222
223 Turn on/off scroll-to-bottom on TTY output inhibit; resource
224 B<scrollTtyOutput> has opposite effect.
225
226 =item B<-sk>|B<+sk>
227
228 Turn on/off scroll-to-bottom on keypress; resource
229 B<scrollTtyKeypress>.
230
231 =item B<-sw>|B<+sw>
232
233 Turn on/off scrolling with the scrollback buffer as new lines appear.
234 This only takes effect if B<-si> is also given; resource
235 B<scrollWithBuffer>.
236
237 =item B<-sr>|B<+sr>
238
239 Put scrollbar on right/left; resource B<scrollBar_right>.
240
241 =item B<-st>|B<+st>
242
243 Display normal (non XTerm/NeXT) scrollbar without/with a trough;
244 resource B<scrollBar_floating>.
245
246 =item B<-ptab>|B<+ptab>
247
248 If enabled (default), "Horizontal Tab" characters are being stored as
249 actual wide characters in the screen buffer, which makes it possible to
250 select and paste them. Since a horizontal tab is a cursor movement and
251 not an actual glyph, this can sometimes be visually annoying as the cursor
252 on a tab character is displayed as a wide cursor; resource B<pastableTabs>.
253
254 =item B<-bc>|B<+bc>
255
256 Blink the cursor; resource B<cursorBlink>.
257
258 =item B<-iconic>
259
260 Start iconified, if the window manager supports that option.
261 Alternative form is B<-ic>.
262
263 =item B<-sl> I<number>
264
265 Save I<number> lines in the scrollback buffer. See resource entry for
266 limits; resource B<saveLines>.
267
268 =item B<-b> I<number>
269
270 Compile I<frills>: Internal border of I<number> pixels. See resource
271 entry for limits; resource B<internalBorder>.
272
273 =item B<-w> I<number>
274
275 Compile I<frills>: External border of I<number> pixels. Also, B<-bw>
276 and B<-borderwidth>. See resource entry for limits; resource
277 B<externalBorder>.
278
279 =item B<-bl>
280
281 Compile I<frills>: Set MWM hints to request a borderless window, i.e.
282 if honoured by the WM, the rxvt-unicode window will not have window
283 decorations; resource B<borderLess>.
284
285 =item B<-lsp> I<number>
286
287 Compile I<frills>: Lines (pixel height) to insert between each row of
288 the display. Useful to work around font rendering problems; resource
289 B<linespace>.
290
291 =item B<-tn> I<termname>
292
293 This option specifies the name of the terminal type to be set in the
294 B<TERM> environment variable. This terminal type must exist in the
295 I<termcap(5)> database and should have I<li#> and I<co#> entries;
296 resource B<termName>.
297
298 =item B<-e> I<command [arguments]>
299
300 Run the command with its command-line arguments in the B<@@RXVT_NAME@@>
301 window; also sets the window title and icon name to be the basename of
302 the program being executed if neither I<-title> (I<-T>) nor I<-n> are
303 given on the command line. If this option is used, it must be the last
304 on the command-line. If there is no B<-e> option then the default is to
305 run the program specified by the B<SHELL> environment variable or,
306 failing that, I<sh(1)>.
307
308 =item B<-title> I<text>
309
310 Window title (B<-T> still respected); the default title is the basename
311 of the program specified after the B<-e> option, if any, otherwise the
312 application name; resource B<title>.
313
314 =item B<-n> I<text>
315
316 Icon name; the default name is the basename of the program specified
317 after the B<-e> option, if any, otherwise the application name;
318 resource B<iconName>.
319
320 =item B<-C>
321
322 Capture system console messages.
323
324 =item B<-pt> I<style>
325
326 Compile I<XIM>: input style for input method; B<OverTheSpot>,
327 B<OffTheSpot>, B<Root>; resource B<preeditType>.
328
329 =item B<-im> I<text>
330
331 Compile I<XIM>: input method name. resource B<inputMethod>.
332
333 =item B<-imlocale> I<string>
334
335 The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
336 C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
337 input extension to be able to input japanese characters while staying in
338 another locale. resource B<imLocale>.
339
340 =item B<-imfont> I<fontset>
341
342 Set the font set to use for the X Input Method, see resource B<imFont>
343 for more info.
344
345 =item B<-tcw>
346
347 Change the meaning of triple-click selection with the left mouse
348 button. Instead of selecting a full line it will extend the selection the
349 end of the logical line only. resource B<tripleclickwords>.
350
351 =item B<-insecure>
352
353 Enable "insecure" mode, which currently enables most of the escape
354 sequences that echo strings. See the resource B<insecure> for more
355 info.
356
357 =item B<-mod> I<modifier>
358
359 Override detection of Meta modifier with specified key: B<alt>,
360 B<meta>, B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>,
361 B<mod5>; resource I<modifier>.
362
363 =item B<-ssc>|B<+ssc>
364
365 Turn on/off secondary screen (default enabled); resource
366 B<secondaryScreen>.
367
368 =item B<-ssr>|B<+ssr>
369
370 Turn on/off secondary screen scroll (default enabled); resource
371 B<secondaryScroll>.
372
373 =item B<-keysym.>I<sym>: I<string>
374
375 Remap a key symbol. See resource B<keysym>.
376
377 =item B<-xrm> I<resourcestring>
378
379 No effect on rxvt-unicode. Simply passes through an argument to be made
380 available in the instance's argument list. Appears in I<WM_COMMAND> in
381 some window managers.
382
383 =back
384
385 =head1 RESOURCES (available also as long-options)
386
387 Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long
388 options) compiled into your version.
389
390 There are two different methods that @@RXVT_NAME@@ can use to get the
391 Xresource data: using the X libraries (Xrm*-functions) or internal
392 Xresources reader (B<~/.Xdefaults>). For the first method (ie.
393 B<@@RXVT_NAME@@ -h> lists B<XGetDefaults>), you can set and change the
394 resources using X11 tools like B<xrdb>. Many distribution do also load
395 settings from the B<~/.Xresources> file when X starts. @@RXVT_NAME@@
396 will consult the following files/resources in order, with later settings
397 overwriting earlier ones:
398
399   1. system-wide app-defaults file, either locale-dependent OR global
400   2. app-defaults file in $XAPPLRESDIR
401   3. RESOURCE_MANAGER property on root-window OR $HOME/.Xdefaults
402   4. SCREEN_RESOURCES for the current screen
403   5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
404
405 If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h>
406 lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults
407 set in XAPPLOADDIR/URxvt (compile-time defined: usually
408 B</usr/lib/X11/app-defaults/URxvt>) and resources set in
409 B<~/.Xdefaults>, or B<~/.Xresources> if B<~/.Xdefaults> does not exist.
410 Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two
411 class names: B<XTerm> and B<URxvt>. The class name B<Rxvt> allows
412 resources common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be
413 easily configured, while the class name B<URxvt> allows resources
414 unique to B<@@RXVT_NAME@@>, notably colours and key-handling, to be
415 shared between different B<@@RXVT_NAME@@> configurations. If no
416 resources are specified, suitable defaults will be used. Command-line
417 arguments can be used to override resource settings. The following
418 resources are allowed:
419
420 =over 4
421
422 =item B<geometry:> I<geom>
423
424 Create the window with the specified X window geometry [default 80x24];
425 option B<-geometry>.
426
427 =item B<background:> I<colour>
428
429 Use the specified colour as the window's background colour [default
430 White]; option B<-bg>.
431
432 =item B<foreground:> I<colour>
433
434 Use the specified colour as the window's foreground colour [default
435 Black]; option B<-fg>.
436
437 =item B<color>I<n>B<:> I<colour>
438
439 Use the specified colour for the colour value I<n>, where 0-7
440 corresponds to low-intensity (normal) colours and 8-15 corresponds to
441 high-intensity (bold = bright foreground, blink = bright background)
442 colours. The canonical names are as follows: 0=black, 1=red, 2=green,
443 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
444 names used are listed in the B<COLORS AND GRAPHICS> section.
445
446 Colours higher than 15 cannot be set using resources (yet), but can be
447 changed using an escape command (see @@RXVT_NAME@@(7)).
448
449 Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
450 88 colour support). Colours 80-87 are evenly spaces grey steps.
451
452 =item B<colorBD:> I<colour>
453
454 =item B<colorIT:> I<colour>
455
456 Use the specified colour to display bold or italic characters when the
457 foreground colour is the default. If font styles are not available
458 (Compile I<styles>) and this option is unset, reverse video is used instead.
459
460 =item B<colorUL:> I<colour>
461
462 Use the specified colour to display underlined characters when the
463 foreground colour is the default.
464
465 =item B<colorRV:> I<colour>
466
467 Use the specified colour as the background for reverse video
468 characters.
469
470 =item B<underlineColor:> I<colour>
471
472 If set, use the specified colour as the colour for the underline
473 itself. If unset, use the foreground colour.
474
475 =item B<cursorColor:> I<colour>
476
477 Use the specified colour for the cursor. The default is to use the
478 foreground colour; option B<-cr>.
479
480 =item B<cursorColor2:> I<colour>
481
482 Use the specified colour for the colour of the cursor text. For this to
483 take effect, B<cursorColor> must also be specified. The default is to
484 use the background colour.
485
486 =item B<reverseVideo:> I<boolean>
487
488 B<True>: simulate reverse video by foreground and background colours;
489 option B<-rv>. B<False>: regular screen colours [default]; option
490 B<+rv>. See note in B<COLORS AND GRAPHICS> section.
491
492 =item B<jumpScroll:> I<boolean>
493
494 B<True>: specify that jump scrolling should be used. When scrolling
495 quickly, fewer screen updates are performed [default]; option B<-j>.
496 B<False>: specify that smooth scrolling should be used; option B<+j>.
497
498 =item B<inheritPixmap:> I<boolean>
499
500 B<True>: make the background inherit the parent windows' pixmap, giving
501 artificial transparency. B<False>: do not inherit the parent windows'
502 pixmap.
503
504 =item B<fading:> I<number>
505
506 Fade the text by the given percentage when focus is lost.
507
508 =item B<tintColor:> I<colour>
509
510 Tint the transparent background pixmap with the given colour.
511
512 =item B<shading:> I<number>
513
514 Darken (0 .. 100) or lighten (-1 .. -100) the transparent background
515 image in addition to tinting it.
516
517 =item B<scrollColor:> I<colour>
518
519 Use the specified colour for the scrollbar [default #B2B2B2].
520
521 =item B<troughColor:> I<colour>
522
523 Use the specified colour for the scrollbar's trough area [default
524 #969696]. Only relevant for normal (non XTerm/NeXT) scrollbar.
525
526 =item B<borderColor:> I<colour>
527
528 The colour of the border around the text area and between the scrollbar
529 and the text.
530
531 =item B<backgroundPixmap:> I<file[;geom]>
532
533 Use the specified XPM file (note the `.xpm' extension is optional) for
534 the background and also optionally specify its scaling with a geometry
535 string B<WxH+X+Y>, in which B<"W" / "H"> specify the
536 horizontal/vertical scale (percent) and B<"X" / "Y"> locate the image
537 centre (percent). A scale of 0 displays the image with tiling. A scale
538 of 1 displays the image without any scaling. A scale of 2 to 9
539 specifies an integer number of images in that direction. No image will
540 be magnified beyond 10 times its original size. The maximum permitted
541 scale is 1000. [default 0x0+50+50]
542
543 =item B<menu:> I<file[;tag]>
544
545 Read in the specified menu file (note the `.menu' extension is
546 optional) and also optionally specify a starting tag to find. See the
547 reference documentation for details on the syntax for the menuBar.
548
549 =item B<path:> I<path>
550
551 Specify the colon-delimited search path for finding files (XPM and
552 menus), in addition to the paths specified by the B<RXVTPATH> and
553 B<PATH> environment variables.
554
555 =item B<font:> I<fontlist>
556
557 Select the fonts to be used. This is a comma separated list of font
558 names that are used in turn when trying to display Unicode characters.
559 The first font defines the cell size for characters; other fonts might
560 be smaller, but not larger. A reasonable default font list is always
561 appended to it. option B<-fn>.
562
563 Each font can either be a standard X11 core font (XLFD) name, with
564 optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>.
565
566 In addition, each font can be prefixed with additional hints and
567 specifications enclosed in square brackets (C<[]>). The only available
568 hint currently is C<codeset=codeset-name>, and this is only used for Xft
569 fonts.
570
571 For example, this font resource
572
573    URxvt*font: 9x15bold,\
574                -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
575                -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
576                [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \
577                xft:Code2000:antialias=false
578
579 specifies five fonts to be used. The first one is C<9x15bold> (actually
580 the iso8859-1 version of the second font), which is the base font (because
581 it is named first) and thus defines the character cell grid to be 9 pixels
582 wide and 15 pixels high.
583
584 The second font is just used to add additional unicode characters not in
585 the base font, likewise the third, which is unfortunately non-bold, but
586 the bold version of the font does contain less characters, so this is a
587 useful supplement.
588
589 The third font is an Xft font with aliasing turned off, and the characters
590 are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
591 contains other characters, but we are not interested in them.
592
593 The last font is a useful catch-all font that supplies most of the
594 remaining unicode characters.
595
596 =item B<boldFont:> I<fontlist>
597
598 =item B<italicFont:> I<fontlist>
599
600 =item B<boldItalicFont:> I<fontlist>
601
602 The font list to use for displaying B<bold>, I<italic> or B<< I<bold
603 italic> >> characters, respectively.
604
605 If specified and non-empty, then the syntax is the same as for the
606 B<font>-resource, and the given font list will be used as is, which makes
607 it possible to substitute completely different font styles for bold and
608 italic.
609
610 If unset (the default), a suitable font list will be synthesized by
611 "morphing" the normal text font list into the desired shape. If that is
612 not possible, replacement fonts of the desired shape will be tried.
613
614 If set, but empty, then this specific style is disabled and the normal
615 text font will being used for the given style.
616
617 =item B<selectstyle:> I<mode>
618
619 Set mouse selection style to B<old> which is 2.20, B<oldword> which is
620 xterm style with 2.20 old word selection, or anything else which gives
621 xterm style selection.
622
623 =item B<scrollstyle:> I<mode>
624
625 Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
626 the author's favourite..
627
628 =item B<title:> I<string>
629
630 Set window title string, the default title is the command-line
631 specified after the B<-e> option, if any, otherwise the application
632 name; option B<-title>.
633
634 =item B<iconName:> I<string>
635
636 Set the name used to label the window's icon or displayed in an icon
637 manager window, it also sets the window's title unless it is explicitly
638 set; option B<-n>.
639
640 =item B<mapAlert:> I<boolean>
641
642 B<True>: de-iconify (map) on receipt of a bell character. B<False>: no
643 de-iconify (map) on receipt of a bell character [default].
644
645 =item B<visualBell:> I<boolean>
646
647 B<True>: use visual bell on receipt of a bell character; option B<-vb>.
648 B<False>: no visual bell [default]; option B<+vb>.
649
650 =item B<loginShell:> I<boolean>
651
652 B<True>: start as a login shell by prepending a `-' to B<argv[0]> of
653 the shell; option B<-ls>. B<False>: start as a normal sub-shell
654 [default]; option B<+ls>.
655
656 =item B<utmpInhibit:> I<boolean>
657
658 B<True>: inhibit writing record into the system log file B<utmp>;
659 option B<-ut>. B<False>: write record into the system log file B<utmp>
660 [default]; option B<+ut>.
661
662 =item B<print-pipe:> I<string>
663
664 Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
665 B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or
666 B<Shift-Print> to include the scrollback as well.
667
668 =item B<scrollBar:> I<boolean>
669
670 B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
671 disable the scrollbar; option B<+sb>.
672
673 =item B<scrollBar_right:> I<boolean>
674
675 B<True>: place the scrollbar on the right of the window; option B<-sr>.
676 B<False>: place the scrollbar on the left of the window; option B<+sr>.
677
678 =item B<scrollBar_floating:> I<boolean>
679
680 B<True>: display an rxvt scrollbar without a trough; option B<-st>.
681 B<False>: display an rxvt scrollbar with a trough; option B<+st>.
682
683 =item B<scrollBar_align:> I<mode>
684
685 Align the B<top>, B<bottom> or B<centre> [default] of the scrollbar
686 thumb with the pointer on middle button press/drag.
687
688 =item B<scrollTtyOutput:> I<boolean>
689
690 B<True>: scroll to bottom when tty receives output; option B<-si>.
691 B<False>: do not scroll to bottom when tty receives output; option
692 B<+si>.
693
694 =item B<scrollWithBuffer:> I<boolean>
695
696 B<True>: scroll with scrollback buffer when tty receives new lines (and
697 B<scrollTtyOutput> is False); option B<+sw>. B<False>: do not scroll
698 with scrollback buffer when tty recieves new lines; option B<-sw>.
699
700 =item B<scrollTtyKeypress:> I<boolean>
701
702 B<True>: scroll to bottom when a non-special key is pressed. Special keys
703 are those which are intercepted by rxvt-unicode for special handling and
704 are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
705 bottom when a non-special key is pressed; option B<+sk>.
706
707 =item B<saveLines:> I<number>
708
709 Save I<number> lines in the scrollback buffer [default 64]. This
710 resource is limited on most machines to 65535; option B<-sl>.
711
712 =item B<internalBorder:> I<number>
713
714 Internal border of I<number> pixels. This resource is limited to 100;
715 option B<-b>.
716
717 =item B<externalBorder:> I<number>
718
719 External border of I<number> pixels. This resource is limited to 100;
720 option B<-w>, B<-bw>, B<-borderwidth>.
721
722 =item B<borderLess:> I<boolean>
723
724 Set MWM hints to request a borderless window, i.e. if honoured by the
725 WM, the rxvt-unicode window will not have window decorations; option B<-bl>.
726
727 =item B<termName:> I<termname>
728
729 Specifies the terminal type name to be set in the B<TERM> environment
730 variable; option B<-tn>.
731
732 =item B<linespace:> I<number>
733
734 Specifies number of lines (pixel height) to insert between each row of
735 the display [default 0]; option B<-lsp>.
736
737 =item B<meta8:> I<boolean>
738
739 B<True>: handle Meta (Alt) + keypress to set the 8th bit. B<False>:
740 handle Meta (Alt) + keypress as an escape prefix [default].
741
742 =item B<mouseWheelScrollPage:> I<boolean>
743
744 B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel
745 scrolls five lines [default].
746
747 =item B<pastableTabs:> I<boolean>
748
749 B<True>: store tabs as wide characters. B<False>: interpret tabs as cursor
750 movement only; option C<-ptab>.
751
752 =item B<cursorBlink:> I<boolean>
753
754 B<True>: blink the cursor. B<False>: do not blink the cursor [default];
755 option B<-bc>.
756
757 =item B<pointerBlank:> I<boolean>
758
759 B<True>: blank the pointer when a key is pressed or after a set number
760 of seconds of inactivity. B<False>: the pointer is always visible
761 [default].
762
763 =item B<pointerColor:> I<colour>
764
765 Mouse pointer foreground colour.
766
767 =item B<pointerColor2:> I<colour>
768
769 Mouse pointer background colour.
770
771 =item B<pointerBlankDelay:> I<number>
772
773 Specifies number of seconds before blanking the pointer [default 2].
774
775 =item B<backspacekey:> I<string>
776
777 The string to send when the backspace key is pressed. If set to B<DEC>
778 or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace>
779 (code 8) - which can be reversed with the appropriate DEC private mode
780 escape sequence.
781
782 =item B<deletekey:> I<string>
783
784 The string to send when the delete key (not the keypad delete key) is
785 pressed. If unset it will send the sequence traditionally associated
786 with the B<Execute> key.
787
788 =item B<cutchars:> I<string>
789
790 The characters used as delimiters for double-click word selection. The
791 built-in default:
792
793 B<< BACKSLASH `"'&()*,;<=>?@[]{|} >>
794
795 =item B<preeditType:> I<style>
796
797 B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
798
799 =item B<inputMethod:> I<name>
800
801 I<name> of inputMethod to use; option B<-im>.
802
803 =item B<imLocale:> I<name>
804
805 The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
806 C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
807 input extension to be able to input japanese characters while staying in
808 another locale. option B<-imlocale>.
809
810 =item B<imFont:> I<fontset>
811
812 Specify the font-set used for XIM styles C<OverTheSpot> or
813 C<OffTheSpot>. It must be a standard X font set (XLFD patterns separated
814 by commas), i.e. it's not in the same format as the other font lists used
815 in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
816 found, preferably one or two pixels differing in size to the base font.
817 option B<-imfont>.
818
819 =item B<tripleclickwords:> I<boolean>
820
821 Change the meaning of triple-click selection with the left mouse
822 button. Instead of selecting a full line it will extend the selection to
823 the end of the logical line only. option B<-tcw>.
824
825 =item B<insecure:> I<boolean>
826
827 Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
828 echo arbitrary strings like the icon name or the locale. This could be
829 abused if somebody gets 8-bit-clean access to your display, whether
830 throuh a mail client displaying mail bodies unfiltered or though
831 write(1). Therefore, these sequences are disabled by default. (Note
832 that other terminals, including xterm, have these sequences
833 enabled by default). You can enable them by setting this boolean
834 resource or specifying B<-insecure> as an option. At the moment, this
835 enabled display-answer, locale, findfont, icon label and window title
836 requests as well as dynamic menubar dispatch.
837
838 =item B<modifier:> I<modifier>
839
840 Set the key to be interpreted as the Meta key to: B<alt>, B<meta>,
841 B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option
842 B<-mod>.
843
844 =item B<answerbackString:> I<string>
845
846 Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E)
847 character is passed through. It may contain escape values as described
848 in the entry on B<keysym> following.
849
850 =item B<secondaryScreen:> I<bool>
851
852 Turn on/off secondary screen (default enabled).
853
854 =item B<secondaryScroll:> I<bool>
855
856 Turn on/off secondary screen scroll (default enabled). If the this
857 option is enabled, scrolls on the secondary screen will change the
858 scrollback buffer and switching to/from the secondary screen will
859 instead scroll the screen up.
860
861 =item B<keysym.>I<sym>: I<string>
862
863 Compile I<frills>: Associate I<string> with keysym I<sym>. The
864 intervening resource name B<keysym.> cannot be omitted.
865
866 The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be
867 any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>,
868 B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>,
869 and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>,
870 B<2>, B<3>, B<4>, B<5>.
871
872 The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
873 whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
874 keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
875 current application keymap mode state.
876
877 The spellings of I<key> can be obtained by using B<xev>(1) command or
878 searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and
879 omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex
880 keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not
881 performed in an exact manner; however, the closest match is assured.
882
883 I<string> may contain escape values (C<\a>: bell, C<\b>: backspace,
884 C<\e>, C<\E>: escape, C<\n>: newline, C<\r>: carriage return, C<\t>: tab,
885 C<\000>: octal number) or verbatim control characters (C<^?>: delete,
886 C<^@>: null, C<^A> ...) and may be enclosed with double quotes so that it
887 can start or end with whitespace.
888
889 Please note that you need to double the C<\> when using
890 C<--enable-xgetdefault>, as X itself does it's own de-escaping (you can
891 use C<\033> instead of C<\e> (and so on), which will work with both Xt and
892 @@RXVT_NAME@@'s own processing).
893
894 You can define a range of keysyms in one shot by providing a I<string>
895 with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimeter `/'
896 should be a character not used by the strings.
897
898 Its usage can be demonstrated by an example:
899
900   URxvt.keysym.M-C-0x61:    list|\033<M-C-|abc|>
901
902 The above line is equivalent to the following three lines:
903
904   URxvt.keysym.Meta-Control-0x61:    \033<M-C-a>
905   URxvt.keysym.Meta-Control-0x62:    \033<M-C-b>
906   URxvt.keysym.Meta-Control-0x63:    \033<M-C-c>
907
908 If I<string> takes the form of C<command:STRING>, the specified B<STRING>
909 is interpreted and executed as @@RXVT_NAME@@'s control sequence. For
910 example the following means "change the current locale to C<zh_CN.GBK>
911 when Control-Meta-c is being pressed":
912
913   URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
914
915 The following example will map Control-Meta-1 and Control-Meta-2 to
916 the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
917 font-switching at runtime:
918
919   URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
920   URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
921
922 Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
923 info):
924
925   URxvt.keysym.M-C-3: command:\033[8;25;80t
926   URxvt.keysym.M-C-4: command:\033[8;48;110t
927
928 =back
929
930 =head1 THE SCROLLBAR
931
932 Lines of text that scroll off the top of the B<@@RXVT_NAME@@> window
933 (resource: B<saveLines>) and can be scrolled back using the scrollbar
934 or by keystrokes. The normal B<@@RXVT_NAME@@> scrollbar has arrows and
935 its behaviour is fairly intuitive. The B<xterm-scrollbar> is without
936 arrows and its behaviour mimics that of I<xterm>
937
938 Scroll down with B<Button1> (B<xterm-scrollbar>) or B<Shift-Next>.
939 Scroll up with B<Button3> (B<xterm-scrollbar>) or B<Shift-Prior>.
940 Continuous scroll with B<Button2>.
941
942 =head1 MOUSE REPORTING
943
944 To temporarily override mouse reporting, for either the scrollbar or
945 the normal text selection/insertion, hold either the Shift or the Meta
946 (Alt) key while performing the desired mouse action.
947
948 If mouse reporting mode is active, the normal scrollbar actions are
949 disabled -- on the assumption that we are using a fullscreen
950 application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
951 (Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
952 up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
953 respectively.
954
955 =head1 TEXT SELECTION AND INSERTION
956
957 The behaviour of text selection and insertion mechanism is similar to
958 I<xterm>(1).
959
960 =over 4
961
962 =item B<Selection>:
963
964 Left click at the beginning of the region, drag to the end of the region
965 and release; Right click to extend the marked region; Left double-click
966 to select a word; Left triple-click to select the entire logical line
967 (which can span multiple screen lines), unless modified by resource
968 B<tripleclickwords>.
969
970 Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
971 (Compile: I<frills>) will create a rectangular selection instead of a normal
972 one.
973
974 =item B<Insertion>:
975
976 Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in
977 an B<@@RXVT_NAME@@> window causes the current text selection to be
978 inserted as if it had been typed on the keyboard.
979
980 =back
981
982 =head1 CHANGING FONTS
983
984 Changing fonts (or font sizes, respectively) via the keypad is not yet
985 supported in rxvt-unicode. Bug me if you need this.
986
987 You can, however, switch fonts at runtime using escape sequences (and
988 therefore using the menubar), e.g.:
989
990    printf '\e]701;%s\007' "9x15bold,xft:Kochi Gothic"
991
992 rxvt-unicode will automatically re-apply these fonts to the output so far.
993
994 =head1 ISO 14755 SUPPORT
995
996 ISO 14755 is a standard for entering and viewing unicode characters
997 and character codes using the keyboard. It consists of 4 parts. The
998 first part is available rxvt-unicode has been compiled with
999 C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1000 with C<--enable-iso14755>.
1001
1002 =over 4
1003
1004 =item * 5.1: Basic method
1005
1006 This allows you to enter unicode characters using their hexcode.
1007
1008 Start by pressing and holding both C<Control> and C<Shift>, then enter
1009 hex-digits (between one and six). Releasing C<Control> and C<Shift> will
1010 commit the character as if it were typed directly. While holding down
1011 C<Control> and C<Shift> you can also enter multiple characters by pressing
1012 C<Space>, which will commit the current character and lets you start a new
1013 one.
1014
1015 As an example of use, imagine a business card with a japanese e-mail
1016 address, which you cannot type. Fortunately, the card has the e-mail
1017 address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
1018 by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
1019 followed by releasing the modifier keys.
1020
1021 =item * 5.2: Keyboard symbols entry method
1022
1023 This mode lets you input characters representing the keycap symbols of
1024 your keyboard, if representable in the current locale encoding.
1025
1026 Start by pressing C<Control> and C<Shift> together, then releasing
1027 them. The next special key (cursor keys, home etc.) you enter will not
1028 invoke it's usual function but instead will insert the corresponding
1029 keycap symbol. The symbol will only be entered when the key has been
1030 released, otherwise pressing e.g. C<Shift> would enter the symbol for
1031 C<ISO Level 2 Switch>, although your intention might have been to enter a
1032 reverse tab (Shift-Tab).
1033
1034 =item * 5.3: Screen-selection entry method
1035
1036 While this is implemented already (it's basically the selection
1037 mechanism), it could be extended by displaying a unicode character map.
1038
1039 =item * 5.4: Feedback method for identifying displayed characters for later input
1040
1041 This method lets you display the unicode character code associated with
1042 characters already displayed.
1043
1044 You enter this mode by holding down C<Control> and C<Shift> together, then
1045 pressing and holding the left mouse button and moving around. The unicode
1046 hex code(s) (it might be a combining character) of the character under the
1047 pointer is displayed until you release C<Control> and C<Shift>.
1048
1049 In addition to the hex codes it will display the font used to draw this
1050 character - due to implementation reasons, characters combined with
1051 combining characters, line drawing characters and unknown characters will
1052 always be drawn using the built-in support font.
1053
1054 =back
1055
1056 With respect to conformance, rxvt-unicode is supposed to be compliant to
1057 both scenario A and B of ISO 14755, including part 5.2.
1058
1059 =head1 LOGIN STAMP
1060
1061 B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
1062 it can be seen via the I<who(1)> command, and can accept messages.  To
1063 allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
1064 on some systems or setgid to root or to some other group on others.
1065
1066 =head1 COLORS AND GRAPHICS
1067
1068 In addition to the default foreground and background colours,
1069 B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus
1070 high-intensity bold/blink versions of the same). Here is a list of the
1071 colours with their B<rgb.txt> names.
1072
1073 =begin table
1074
1075         B<color0>       (black) = Black
1076         B<color1>       (red)   = Red3
1077         B<color2>       (green) = Green3
1078         B<color3>       (yellow)        = Yellow3
1079         B<color4>       (blue)  = Blue3
1080         B<color5>       (magenta)       = Magenta3
1081         B<color6>       (cyan)  = Cyan3
1082         B<color7>       (white) = AntiqueWhite
1083         B<color8>       (bright black)  = Grey25
1084         B<color9>       (bright red)    = Red
1085         B<color10>      (bright green)  = Green
1086         B<color11>      (bright yellow) = Yellow
1087         B<color12>      (bright blue)   = Blue
1088         B<color13>      (bright magenta)        = Magenta
1089         B<color14>      (bright cyan)   = Cyan
1090         B<color15>      (bright white)  = White
1091         B<foreground>           = Black
1092         B<background>           = White
1093
1094 =end table
1095
1096 It is also possible to specify the colour values of B<foreground>,
1097 B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as
1098 a number 0-15, as a convenient shorthand to reference the colour name of
1099 color0-color15.
1100
1101 Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by
1102 always swapping the foreground/background colours. This is in contrast to
1103 I<xterm>(1) where the colours are only swapped if they have not otherwise
1104 been specified. For example,
1105
1106 =over 4
1107
1108 =item B<@@RXVT_NAME@@ -fg Black -bg White -rv>
1109
1110 would yield White on Black, while on I<xterm>(1) it would yield Black
1111 on White.
1112
1113 =back
1114
1115 =head1 ENVIRONMENT
1116
1117 B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1118
1119 =over 4
1120
1121 =item B<TERM>
1122
1123 Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1124 resources or on the commandline.
1125
1126 =item B<COLORTERM>
1127
1128 Either C<rxvt>, C<rxvt-xpm>, depending on wether @@RXVT_NAME@@ was
1129 compiled with XPM support, and optionally with the added extension
1130 C<-mono> to indicate that rxvt-unicode runs on a monochrome screen.
1131
1132 =item B<COLORFGBG>
1133
1134 Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
1135 the colour code used as default foreground/text colour (or the string
1136 C<default> to indicate that the default-colour escape sequence is to be
1137 used), C<bg> is the colour code used as default background colour (or the
1138 string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1139 was compiled with XPM support. Libraries like C<ncurses> and C<slang> can
1140 (and do) use this information to optimize screen output.
1141
1142 =item B<WINDOWID>
1143
1144 Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1145 window, which usually has subwindows for the scrollbar, the terminal
1146 window and so on).
1147
1148 =item B<TERMINFO>
1149
1150 Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1151 C<--with-terminfo=PATH>.
1152
1153 =item B<DISPLAY>
1154
1155 Used by @@RXVT_NAME@@ to connect to the display and set to the correct
1156 display in it's child processes.
1157
1158 =item B<SHELL>
1159
1160 The shell to be used for command execution, defaults to C</bin/sh>.
1161
1162 =item B<RXVTPATH>
1163
1164 The path where @@RXVT_NAME@@ looks for support files such as menu and xpm
1165 files.
1166
1167 =item B<PATH>
1168
1169 Used in the same way as C<RXVTPATH>.
1170
1171 =item B<RXVT_SOCKET>
1172
1173 The unix domain socket path used by @@RXVT_NAME@@c(1) and
1174 @@RXVT_NAME@@d(1).
1175
1176 Default C<< $HOME/.rxvt-unicode-<nodename >>.
1177
1178 =item B<HOME>
1179
1180 Used to locate the default directory for the unix domain socket for
1181 daemon communications and to locate various resource files (such as
1182 C<.Xdefaults>)
1183
1184 =item B<XAPPLRESDIR>
1185
1186 Directory where various X resource files are being located.
1187
1188 =item B<XENVIRONMENT>
1189
1190 If set and accessible, gives the name of a X resource file to be loaded by
1191 @@RXVT_NAME@@.
1192
1193 =back
1194
1195 =head1 FILES
1196
1197 =over 4
1198
1199 =item B</usr/lib/X11/rgb.txt>
1200
1201 Color names.
1202
1203 =back
1204
1205 =head1 SEE ALSO
1206
1207 @@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1208
1209 =head1 BUGS
1210
1211 Check the BUGS file for an up-to-date list.
1212
1213 Cursor change support is not yet implemented.
1214
1215 Click-and-drag doesn't work with X11 mouse report overriding.
1216
1217 =head1 CURRENT PROJECT COORDINATOR
1218
1219 =over 4
1220
1221 =item Project Coordinator
1222
1223 @@RXVT_MAINT@@ L<@@RXVT_MAINTEMAIL@@>
1224
1225 L<@@RXVT_WEBPAGE@@>
1226
1227 =back
1228
1229 =head1 AUTHORS
1230
1231 =over 4
1232
1233 =item John Bovey
1234
1235 University of Kent, 1992, wrote the original Xvt.
1236
1237 =item Rob Nation L<< <nation@rocket.sanders.lockheed.com> >>
1238
1239 very heavily modified Xvt and came up with Rxvt
1240
1241 =item Angelo Haritsis L<< <ah@doc.ic.ac.uk> >>
1242
1243 wrote the Greek Keyboard Input (no longer in code)
1244
1245 =item mj olesen L<< <olesen@me.QueensU.CA> >>
1246
1247 Wrote the menu system.
1248
1249 Project Coordinator (changes.txt 2.11 to 2.21)
1250
1251 =item Oezguer Kesim L<< <kesim@math.fu-berlin.de> >>
1252
1253 Project Coordinator (changes.txt 2.21a to 2.4.5)
1254
1255 =item Geoff Wing L<< <gcw@pobox.com> >>
1256
1257 Rewrote screen display and text selection routines. Project Coordinator
1258 (changes.txt 2.4.6 - rxvt-unicode)
1259
1260 =item Marc Alexander Lehmann L<< <rxvt@schmorp.de> >>
1261
1262 Forked rxvt-unicode, rewrote most of the display code and internal
1263 character handling to store text in unicode, improve xterm
1264 compatibility and apply numerous other bugfixes and extensions.
1265
1266 Project Coordinator (Changes 1.0 -)
1267
1268 =back
1269