ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.1.pod
Revision: 1.100
Committed: Thu Jan 19 18:02:28 2006 UTC (18 years, 5 months ago) by root
Branch: MAIN
CVS Tags: rel-7_1
Changes since 1.99: +9 -5 lines
Log Message:
*** empty log message ***

File Contents

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