ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.1.pod
(Generate patch)

Comparing rxvt-unicode/doc/rxvt.1.pod (file contents):
Revision 1.5 by root, Sat Aug 14 03:00:32 2004 UTC vs.
Revision 1.75 by root, Tue Dec 27 01:50:00 2005 UTC

11B<rxvt-unicode>, version B<@@RXVT_VERSION@@>, is a colour vt102 terminal 11B<rxvt-unicode>, version B<@@RXVT_VERSION@@>, is a colour vt102 terminal
12emulator intended as an I<xterm>(1) replacement for users who do not 12emulator intended as an I<xterm>(1) replacement for users who do not
13require features such as Tektronix 4014 emulation and toolkit-style 13require features such as Tektronix 4014 emulation and toolkit-style
14configurability. As a result, B<rxvt-unicode> uses much less swap space -- 14configurability. As a result, B<rxvt-unicode> uses much less swap space --
15a significant advantage on a machine serving many X sessions. 15a significant advantage on a machine serving many X sessions.
16
17=head1 FREQUENTLY ASKED QUESTIONS
18
19See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of
20frequently asked questions and answer to them and some common
21problems. That document is also accessible on the World-Wide-Web at
22L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
16 23
17=head1 RXVT-UNICODE VS. RXVT 24=head1 RXVT-UNICODE VS. RXVT
18 25
19Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode 26Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
20internally. That means it can store and display most scripts in the 27internally. That means it can store and display most scripts in the
24like tibetan or devenagari. Don't expect pretty output when using these 31like tibetan or devenagari. Don't expect pretty output when using these
25scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work 32scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
26fine, though. A somewhat difficult case are left-to-right scripts, such 33fine, though. A somewhat difficult case are left-to-right scripts, such
27as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms 34as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
28belong into the application, not the terminal emulator (too many things -- 35belong into the application, not the terminal emulator (too many things --
29such as cursor-movement -- break othwerwise). 36such as cursor-movement while editing -- break otherwise), but that might
37change.
30 38
39If you are looking for a terminal that supports more exotic scripts, let
40me recommend C<mlterm>, which is a very userfriendly, lean and clean
41terminal emulator. In fact, the reason rxvt-unicode was born was solely
42because the author couldn't get C<mlterm> to use one font for latin1 and
43another for japanese.
44
31Another design rationale was the use of multiple fonts to display 45Therefore another design rationale was the use of multiple fonts to
32characters: The idea of a single unicode font which many other programs 46display characters: The idea of a single unicode font which many other
33force onto it's users never made sense to me: You should be able to choose 47programs force onto it's users never made sense to me: You should be able
34any font for any script. 48to choose any font for any script freely.
35 49
36Apart from that, rxvt-unicode is also much better internationalised than 50Apart from that, rxvt-unicode is also much better internationalised than
37it's predecessor, supports things such as XFT and ISO 14755 that are handy 51it's predecessor, supports things such as XFT and ISO 14755 that are handy
38in i18n-environments, is faster, and has a lot less bugs than the original 52in i18n-environments, is faster, and has a lot less bugs than the original
39rxvt. This all in addition to dozens of other small improvements. 53rxvt. This all in addition to dozens of other small improvements.
46drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and 60drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
47@@RXVT_NAME@@c(1) (client). 61@@RXVT_NAME@@c(1) (client).
48 62
49It also makes technical information about escape sequences (which have 63It also makes technical information about escape sequences (which have
50been extended) easier accessible: see @@RXVT_NAME@@(7) for technical 64been extended) easier accessible: see @@RXVT_NAME@@(7) for technical
51reference documentation (escape sequences etc.) and the FAQ section at the 65reference documentation (escape sequences etc.).
52end of this document.
53 66
54=head1 OPTIONS 67=head1 OPTIONS
55 68
56The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed 69The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed
57below. In keeping with the smaller-is-better philosophy, options may be 70below. In keeping with the smaller-is-better philosophy, options may be
92 105
93=item B<-j>|B<+j> 106=item B<-j>|B<+j>
94 107
95Turn on/off jump scrolling; resource B<jumpScroll>. 108Turn on/off jump scrolling; resource B<jumpScroll>.
96 109
97=item B<-ip>|B<+ip> 110=item B<-ip>|B<+ip> | B<-tr>|B<+tr>
98 111
99Turn on/off inheriting parent window's pixmap. Alternative form is 112Turn on/off inheriting parent window's pixmap. Alternative form is
100B<-tr>; resource B<inheritPixmap>. 113B<-tr>; resource B<inheritPixmap>.
101 114
102=item B<-fade> I<number> 115=item B<-fade> I<number>
103 116
104Fade the text by the given percentage when focus is lost. 117Fade the text by the given percentage when focus is lost. Small values
118fade a little only, 100 completely replaces all colours by the fade
119colour; resource B<fading>.
120
121=item B<-fadecolor> I<colour>
122
123Fade to this colour when fading is used (see B<-fade>). The default colour
124is black. resource B<fadeColor>.
105 125
106=item B<-tint> I<colour> 126=item B<-tint> I<colour>
107 127
108Tint the transparent background pixmap with the given colour when 128Tint the transparent background pixmap with the given colour when
109transparency is enabled with B<-tr> or B<-ip>. See also the B<-sh> 129transparency is enabled with B<-tr> or B<-ip>. This only works for
110option that can be used to brighten or darken the image in addition to 130non-tiled backgrounds, currently. See also the B<-sh> option that can be
111tinting it. 131used to brighten or darken the image in addition to tinting it; resource
132I<tintColor>. Example:
133
134 @@RXVT_NAME@@ -tr -tint blue -sh 40
112 135
113=item B<-sh> 136=item B<-sh>
114 137
115I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent 138I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent
116background image in addition to tinting it (i.e. B<-tint> must be 139background image in addition to tinting it (i.e. B<-tint> must be
117specified, too). 140specified, too, e.g. C<-tint white>).
118 141
119=item B<-bg> I<colour> 142=item B<-bg> I<colour>
120 143
121Window background colour; resource B<background>. 144Window background colour; resource B<background>.
122 145
125Window foreground colour; resource B<foreground>. 148Window foreground colour; resource B<foreground>.
126 149
127=item B<-pixmap> I<file[;geom]> 150=item B<-pixmap> I<file[;geom]>
128 151
129Compile I<XPM>: Specify XPM file for the background and also optionally 152Compile I<XPM>: Specify XPM file for the background and also optionally
130specify its scaling with a geometry string. Note you may need to add 153specify its scaling with a geometry string. Note you may need to
131quotes to avoid special shell interpretation of the `;' in the 154add quotes to avoid special shell interpretation of the C<;> in the
132command-line; resource B<backgroundPixmap>. 155command-line; resource B<backgroundPixmap>.
133 156
134=item B<-cr> I<colour> 157=item B<-cr> I<colour>
135 158
136The cursor colour; resource B<cursorColor>. 159The cursor colour; resource B<cursorColor>.
143 166
144The mouse pointer background colour; resource B<pointerColor2>. 167The mouse pointer background colour; resource B<pointerColor2>.
145 168
146=item B<-bd> I<colour> 169=item B<-bd> I<colour>
147 170
148The colour of the border between the xterm scrollbar and the text; 171The colour of the border around the text area and between the scrollbar and the text;
149resource B<borderColor>. 172resource B<borderColor>.
150 173
151=item B<-fn> I<fontname> 174=item B<-fn> I<fontlist>
152 175
153Select the fonts to be used. This is a comma seperated list of font 176Select the fonts to be used. This is a comma separated list of font names
154names that are used in turn when trying to display Unicode characters. 177that are used in turn when trying to display Unicode characters. The
155The first font defines the cell size for characters; other fonts might 178first font defines the cell size for characters; other fonts might be
156be smaller, but not larger. A reasonable default font list is always 179smaller, but not (in general) larger. A (hopefully) reasonable default
157appended to it. resource B<font>. 180font list is always appended to it. See resource B<font> for more details.
181
182In short, to specify an X11 core font, just specify it's name or prefix it
183with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
184e.g.:
185
186 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
187 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
158 188
159See also the question "How does rxvt-unicode choose fonts?" in the FAQ 189See also the question "How does rxvt-unicode choose fonts?" in the FAQ
160section. 190section of @@RXVT_NAME@@(7).
161 191
162=item B<-rb>|B<+rb> 192=item B<-fb> I<fontlist>
163 193
164Enable "real bold" support. When this option is on, bold text will be 194Compile font-styles: The bold font list to use when bold characters are to
165displayed using the first available bold font in the font list. Bold 195be printed. See resource B<boldFont> for details.
166fonts should thus be specified in the font list after their 196
167corresponding regular fonts. If no bold font can be found, a regular 197=item B<-fi> I<fontlist>
168font will be used. resource B<realBold>. 198
199Compile font-styles: The italic font list to use when bold characters are to
200be printed. See resource B<italicFont> for details.
201
202=item B<-fbi> I<fontlist>
203
204Compile font-styles: The bold italic font list to use when bold characters are to
205be printed. See resource B<boldItalicFont> for details.
169 206
170=item B<-name> I<name> 207=item B<-name> I<name>
171 208
172Specify the application name under which resources are to be obtained, 209Specify the application name under which resources are to be obtained,
173rather than the default executable file name. Name should not contain 210rather than the default executable file name. Name should not contain
211 248
212Put scrollbar on right/left; resource B<scrollBar_right>. 249Put scrollbar on right/left; resource B<scrollBar_right>.
213 250
214=item B<-st>|B<+st> 251=item B<-st>|B<+st>
215 252
216Display normal (non XTerm/NeXT) scrollbar without/with a trough; 253Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
217resource B<scrollBar_floating>. 254resource B<scrollBar_floating>.
255
256=item B<-ptab>|B<+ptab>
257
258If enabled (default), "Horizontal Tab" characters are being stored as
259actual wide characters in the screen buffer, which makes it possible to
260select and paste them. Since a horizontal tab is a cursor movement and
261not an actual glyph, this can sometimes be visually annoying as the cursor
262on a tab character is displayed as a wide cursor; resource B<pastableTabs>.
218 263
219=item B<-bc>|B<+bc> 264=item B<-bc>|B<+bc>
220 265
221Blink the cursor; resource B<cursorBlink>. 266Blink the cursor; resource B<cursorBlink>.
222 267
247if honoured by the WM, the rxvt-unicode window will not have window 292if honoured by the WM, the rxvt-unicode window will not have window
248decorations; resource B<borderLess>. 293decorations; resource B<borderLess>.
249 294
250=item B<-lsp> I<number> 295=item B<-lsp> I<number>
251 296
252Compile I<linespace>: Lines (pixel height) to insert between each row 297Compile I<frills>: Lines (pixel height) to insert between each row of
253of the display; resource B<linespace>. 298the display. Useful to work around font rendering problems; resource
299B<linespace>.
254 300
255=item B<-tn> I<termname> 301=item B<-tn> I<termname>
256 302
257This option specifies the name of the terminal type to be set in the 303This option specifies the name of the terminal type to be set in the
258B<TERM> environment variable. This terminal type must exist in the 304B<TERM> environment variable. This terminal type must exist in the
267given on the command line. If this option is used, it must be the last 313given on the command line. If this option is used, it must be the last
268on the command-line. If there is no B<-e> option then the default is to 314on the command-line. If there is no B<-e> option then the default is to
269run the program specified by the B<SHELL> environment variable or, 315run the program specified by the B<SHELL> environment variable or,
270failing that, I<sh(1)>. 316failing that, I<sh(1)>.
271 317
318Please note that you must specify a program with arguments. If you want to
319run shell commands, you have to specify the shell, like this:
320
321 @@RXVT_NAME@@ -e sh -c "shell commands"
322
272=item B<-title> I<text> 323=item B<-title> I<text>
273 324
274Window title (B<-T> still respected); the default title is the basename 325Window title (B<-T> still respected); the default title is the basename
275of the program specified after the B<-e> option, if any, otherwise the 326of the program specified after the B<-e> option, if any, otherwise the
276application name; resource B<title>. 327application name; resource B<title>.
294 345
295Compile I<XIM>: input method name. resource B<inputMethod>. 346Compile I<XIM>: input method name. resource B<inputMethod>.
296 347
297=item B<-imlocale> I<string> 348=item B<-imlocale> I<string>
298 349
299The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 350The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
300de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 351C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
301extension to be able to input japanese characters while staying in 352input extension to be able to input japanese characters while staying in
302another locale. 353another locale. resource B<imLocale>.
354
355=item B<-imfont> I<fontset>
356
357Set the font set to use for the X Input Method, see resource B<imFont>
358for more info.
359
360=item B<-tcw>
361
362Change the meaning of triple-click selection with the left mouse
363button. Instead of selecting a full line it will extend the selection the
364end of the logical line only. resource B<tripleclickwords>.
303 365
304=item B<-insecure> 366=item B<-insecure>
305 367
306Enable "insecure" mode, which currently enables most of the escape 368Enable "insecure" mode, which currently enables most of the escape
307sequences that echo strings. See the resource B<insecure> for more 369sequences that echo strings. See the resource B<insecure> for more
321=item B<-ssr>|B<+ssr> 383=item B<-ssr>|B<+ssr>
322 384
323Turn on/off secondary screen scroll (default enabled); resource 385Turn on/off secondary screen scroll (default enabled); resource
324B<secondaryScroll>. 386B<secondaryScroll>.
325 387
326=item B<-xrm> I<resourcestring> 388=item B<-hold>|B<+hold>
327 389
328No effect on rxvt-unicode. Simply passes through an argument to be made 390Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
329available in the instance's argument list. Appears in I<WM_COMMAND> in 391will not immediately destroy its window when the program executed within
330some window managers. 392it exits. Instead, it will wait till it is being killed or closed by the
393user; resource B<hold>.
394
395=item B<-keysym.>I<sym> I<string>
396
397Remap a key symbol. See resource B<keysym>.
398
399=item B<-embed> I<windowid>
400
401Tells @@RXVT_NAME@@ to embed it's windows into an already-existing window,
402which enables applications to easily embed a terminal.
403
404Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
405shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
406quite a bit, so don't expect it to keep some specific state. It's best to
407create an extra subwindow for @@RXVT_NAME@@ and leave it alone.
408
409The window will not be destroyed when @@RXVT_NAME@@ exits.
410
411It might be useful to know that @@RXVT_NAME@@ will not close file
412descriptors passed to it (except for stdin/out/err, of course), so you
413can use file descriptors to communicate with the programs within the
414terminal. This works regardless of wether the C<-embed> option was used or
415not.
416
417Here is a short Gtk2-perl snippet that illustrates how this option can be
418used (a longer example is in F<doc/embed>):
419
420 my $rxvt = new Gtk2::Socket;
421 $rxvt->signal_connect_after (realize => sub {
422 my $xid = $_[0]->window->get_xid;
423 system "@@RXVT_NAME@@ -embed $xid &";
424 });
425
426=item B<-pty-fd> I<fileno>
427
428Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty
429pair but instead use the given filehandle as the tty master. This is
430useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
431without having to run a program within it.
432
433If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
434entries and will not tinker with pty/tty permissions - you have to do that
435yourself if you want that.
436
437Here is a example in perl that illustrates how this option can be used (a
438longer example is in F<doc/pty-fd>):
439
440 use IO::Pty;
441 use Fcntl;
442
443 my $pty = new IO::Pty;
444 fcntl $pty, F_SETFD, 0; # clear close-on-exec
445 system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&";
446 close $pty;
447
448 # now communicate with rxvt
449 my $slave = $pty->slave;
450 while (<$slave>) { print $slave "got <$_>\n" }
331 451
332=back 452=back
333 453
334=head1 RESOURCES (available also as long-options) 454=head1 RESOURCES (available also as long-options)
335 455
338 458
339There are two different methods that @@RXVT_NAME@@ can use to get the 459There are two different methods that @@RXVT_NAME@@ can use to get the
340Xresource data: using the X libraries (Xrm*-functions) or internal 460Xresource data: using the X libraries (Xrm*-functions) or internal
341Xresources reader (B<~/.Xdefaults>). For the first method (ie. 461Xresources reader (B<~/.Xdefaults>). For the first method (ie.
342B<@@RXVT_NAME@@ -h> lists B<XGetDefaults>), you can set and change the 462B<@@RXVT_NAME@@ -h> lists B<XGetDefaults>), you can set and change the
343resources using X11 tools like B<xset>. Many distribution do also load 463resources using X11 tools like B<xrdb>. Many distribution do also load
344settings from the B<~/.Xresources> file when X starts. 464settings from the B<~/.Xresources> file when X starts. @@RXVT_NAME@@
465will consult the following files/resources in order, with later settings
466overwriting earlier ones:
467
468 1. system-wide app-defaults file, either locale-dependent OR global
469 2. app-defaults file in $XAPPLRESDIR
470 3. RESOURCE_MANAGER property on root-window OR $HOME/.Xdefaults
471 4. SCREEN_RESOURCES for the current screen
472 5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
345 473
346If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h> 474If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h>
347lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults 475lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults
348set in XAPPLOADDIR/URxvt (compile-time defined: usually 476set in XAPPLOADDIR/URxvt (compile-time defined: usually
349B</usr/lib/X11/app-defaults/URxvt>) and resources set in 477B</usr/lib/X11/app-defaults/URxvt>) and resources set in
382high-intensity (bold = bright foreground, blink = bright background) 510high-intensity (bold = bright foreground, blink = bright background)
383colours. The canonical names are as follows: 0=black, 1=red, 2=green, 511colours. The canonical names are as follows: 0=black, 1=red, 2=green,
3843=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour 5123=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
385names used are listed in the B<COLORS AND GRAPHICS> section. 513names used are listed in the B<COLORS AND GRAPHICS> section.
386 514
515Colours higher than 15 cannot be set using resources (yet), but can be
516changed using an escape command (see @@RXVT_NAME@@(7)).
517
518Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
51988 colour support). Colours 80-87 are evenly spaces grey steps.
520
387=item B<colorBD:> I<colour> 521=item B<colorBD:> I<colour>
388 522
523=item B<colorIT:> I<colour>
524
389Use the specified colour to display bold characters when the foreground 525Use the specified colour to display bold or italic characters when the
390colour is the default. This option will be ignored if B<realBold> is 526foreground colour is the default. If font styles are not available
391enabled. 527(Compile I<styles>) and this option is unset, reverse video is used instead.
392 528
393=item B<colorUL:> I<colour> 529=item B<colorUL:> I<colour>
394 530
395Use the specified colour to display underlined characters when the 531Use the specified colour to display underlined characters when the
396foreground colour is the default. 532foreground colour is the default.
397 533
398=item B<colorRV:> I<colour> 534=item B<colorRV:> I<colour>
399 535
400Use the specified colour as the background for reverse video 536Use the specified colour as the background for reverse video
401characters. 537characters.
538
539=item B<underlineColor:> I<colour>
540
541If set, use the specified colour as the colour for the underline
542itself. If unset, use the foreground colour.
402 543
403=item B<cursorColor:> I<colour> 544=item B<cursorColor:> I<colour>
404 545
405Use the specified colour for the cursor. The default is to use the 546Use the specified colour for the cursor. The default is to use the
406foreground colour; option B<-cr>. 547foreground colour; option B<-cr>.
429artificial transparency. B<False>: do not inherit the parent windows' 570artificial transparency. B<False>: do not inherit the parent windows'
430pixmap. 571pixmap.
431 572
432=item B<fading:> I<number> 573=item B<fading:> I<number>
433 574
434Fade the text by the given percentage when focus is lost. 575Fade the text by the given percentage when focus is lost; option B<-fade>.
576
577=item B<fadeColor:> I<colour>
578
579Fade to this colour, when fading is used (see B<fading:>). The default
580colour is black; option B<-fadecolor>.
435 581
436=item B<tintColor:> I<colour> 582=item B<tintColor:> I<colour>
437 583
438Tint the transparent background pixmap with the given colour. 584Tint the transparent background pixmap with the given colour; option
585B<-tint>.
439 586
440=item B<shading:> I<number> 587=item B<shading:> I<number>
441 588
442Darken (0 .. 100) or lighten (-1 .. -100) the transparent background 589Darken (0 .. 100) or lighten (-1 .. -100) the transparent background
443image in addition to tinting it. 590image in addition to tinting it.
444 591
445=item B<fading:> I<number>
446
447Scale the tint colour by the given percentage.
448
449=item B<scrollColor:> I<colour> 592=item B<scrollColor:> I<colour>
450 593
451Use the specified colour for the scrollbar [default #B2B2B2]. 594Use the specified colour for the scrollbar [default #B2B2B2].
452 595
453=item B<troughColor:> I<colour> 596=item B<troughColor:> I<colour>
454 597
455Use the specified colour for the scrollbar's trough area [default 598Use the specified colour for the scrollbar's trough area [default
456#969696]. Only relevant for normal (non XTerm/NeXT) scrollbar. 599#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar.
600
601=item B<borderColor:> I<colour>
602
603The colour of the border around the text area and between the scrollbar
604and the text.
457 605
458=item B<backgroundPixmap:> I<file[;geom]> 606=item B<backgroundPixmap:> I<file[;geom]>
459 607
460Use the specified XPM file (note the `.xpm' extension is optional) for 608Use the specified XPM file (note the `.xpm' extension is optional) for
461the background and also optionally specify its scaling with a geometry 609the background and also optionally specify its scaling with a geometry
477 625
478Specify the colon-delimited search path for finding files (XPM and 626Specify the colon-delimited search path for finding files (XPM and
479menus), in addition to the paths specified by the B<RXVTPATH> and 627menus), in addition to the paths specified by the B<RXVTPATH> and
480B<PATH> environment variables. 628B<PATH> environment variables.
481 629
482=item B<font:> I<fontname> 630=item B<font:> I<fontlist>
483 631
484Select the fonts to be used. This is a comma seperated list of font 632Select the fonts to be used. This is a comma separated list of font
485names that are used in turn when trying to display Unicode characters. 633names that are used in turn when trying to display Unicode characters.
486The first font defines the cell size for characters; other fonts might 634The first font defines the cell size for characters; other fonts might
487be smaller, but not larger. A reasonable default font list is always 635be smaller, but not larger. A reasonable default font list is always
488appended to it. option B<-fn>. 636appended to it. option B<-fn>.
489 637
490=item B<realBold:> I<boolean> 638Each font can either be a standard X11 core font (XLFD) name, with
639optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>.
491 640
492B<True>: Enable "real bold" support. When this option is on, bold text 641In addition, each font can be prefixed with additional hints and
493will be displayed using the first available bold font in the font list. 642specifications enclosed in square brackets (C<[]>). The only available
494Bold fonts should thus be specified in the font list after their 643hint currently is C<codeset=codeset-name>, and this is only used for Xft
495corresponding regular fonts. If no bold font can be found, a regular 644fonts.
496font will be used. option B<-rb>. B<False>: Display bold text in a 645
497regular font, using the color specified with B<colorBD>; option B<+rb>. 646For example, this font resource
647
648 URxvt*font: 9x15bold,\
649 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
650 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
651 [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \
652 xft:Code2000:antialias=false
653
654specifies five fonts to be used. The first one is C<9x15bold> (actually
655the iso8859-1 version of the second font), which is the base font (because
656it is named first) and thus defines the character cell grid to be 9 pixels
657wide and 15 pixels high.
658
659The second font is just used to add additional unicode characters not in
660the base font, likewise the third, which is unfortunately non-bold, but
661the bold version of the font does contain less characters, so this is a
662useful supplement.
663
664The third font is an Xft font with aliasing turned off, and the characters
665are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
666contains other characters, but we are not interested in them.
667
668The last font is a useful catch-all font that supplies most of the
669remaining unicode characters.
670
671=item B<boldFont:> I<fontlist>
672
673=item B<italicFont:> I<fontlist>
674
675=item B<boldItalicFont:> I<fontlist>
676
677The font list to use for displaying B<bold>, I<italic> or B<< I<bold
678italic> >> characters, respectively.
679
680If specified and non-empty, then the syntax is the same as for the
681B<font>-resource, and the given font list will be used as is, which makes
682it possible to substitute completely different font styles for bold and
683italic.
684
685If unset (the default), a suitable font list will be synthesized by
686"morphing" the normal text font list into the desired shape. If that is
687not possible, replacement fonts of the desired shape will be tried.
688
689If set, but empty, then this specific style is disabled and the normal
690text font will being used for the given style.
498 691
499=item B<selectstyle:> I<mode> 692=item B<selectstyle:> I<mode>
500 693
501Set mouse selection style to B<old> which is 2.20, B<oldword> which is 694Set mouse selection style to B<old> which is 2.20, B<oldword> which is
502xterm style with 2.20 old word selection, or anything else which gives 695xterm style with 2.20 old word selection, or anything else which gives
503xterm style selection. 696xterm style selection.
504 697
505=item B<scrollstyle:> I<mode> 698=item B<scrollstyle:> I<mode>
506 699
507Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is 700Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
508the author's favourite.. 701the author's favourite.
509 702
510=item B<title:> I<string> 703=item B<title:> I<string>
511 704
512Set window title string, the default title is the command-line 705Set window title string, the default title is the command-line
513specified after the B<-e> option, if any, otherwise the application 706specified after the B<-e> option, if any, otherwise the application
545 738
546Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use 739Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
547B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or 740B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or
548B<Shift-Print> to include the scrollback as well. 741B<Shift-Print> to include the scrollback as well.
549 742
743The string will be interpreted as if typed into the shell as-is.
744
745Example:
746
747 URxvt*print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
748
749This creates a new file in your home directory with the screen contents
750everytime you hit C<Print>.
751
550=item B<scrollBar:> I<boolean> 752=item B<scrollBar:> I<boolean>
551 753
552B<True>: enable the scrollbar [default]; option B<-sb>. B<False>: 754B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
553disable the scrollbar; option B<+sb>. 755disable the scrollbar; option B<+sb>.
554 756
573B<False>: do not scroll to bottom when tty receives output; option 775B<False>: do not scroll to bottom when tty receives output; option
574B<+si>. 776B<+si>.
575 777
576=item B<scrollWithBuffer:> I<boolean> 778=item B<scrollWithBuffer:> I<boolean>
577 779
578B<True>: scroll with scrollback buffer when tty recieves new lines (and 780B<True>: scroll with scrollback buffer when tty receives new lines (and
579B<scrollTtyOutput> is False); option B<+sw>. B<False>: do not scroll 781B<scrollTtyOutput> is False); option B<-sw>. B<False>: do not scroll
580with scrollback buffer when tty recieves new lines; option B<-sw>. 782with scrollback buffer when tty recieves new lines; option B<+sw>.
581 783
582=item B<scrollTtyKeypress:> I<boolean> 784=item B<scrollTtyKeypress:> I<boolean>
583 785
584B<True>: scroll to bottom when a non-special key is pressed. Special keys 786B<True>: scroll to bottom when a non-special key is pressed. Special keys
585are those which are intercepted by rxvt-unicode for special handling and 787are those which are intercepted by rxvt-unicode for special handling and
586are not passed onto the shell; option B<-sk>. B<False>: do not scroll to 788are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
587bottom when a non-special key is pressed; option B<+sk>. 789bottom when a non-special key is pressed; option B<+sk>.
588 790
589=item B<smallfont_key:> I<keysym>
590
591If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a smaller font
592[default B<@@HOTKEY@@-@@SMALLFONT@@>]
593
594=item B<bigfont_key:> I<keysym>
595
596If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a bigger font
597[default B<@@HOTKEY@@-@@BIGFONT@@>]
598
599=item B<saveLines:> I<number> 791=item B<saveLines:> I<number>
600 792
601Save I<number> lines in the scrollback buffer [default 64]. This 793Save I<number> lines in the scrollback buffer [default 64]. This
602resource is limited on most machines to 65535; option B<-sl>. 794resource is limited on most machines to 65535; option B<-sl>.
603 795
633 825
634=item B<mouseWheelScrollPage:> I<boolean> 826=item B<mouseWheelScrollPage:> I<boolean>
635 827
636B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel 828B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel
637scrolls five lines [default]. 829scrolls five lines [default].
830
831=item B<pastableTabs:> I<boolean>
832
833B<True>: store tabs as wide characters. B<False>: interpret tabs as cursor
834movement only; option C<-ptab>.
638 835
639=item B<cursorBlink:> I<boolean> 836=item B<cursorBlink:> I<boolean>
640 837
641B<True>: blink the cursor. B<False>: do not blink the cursor [default]; 838B<True>: blink the cursor. B<False>: do not blink the cursor [default];
642option B<-bc>. 839option B<-bc>.
655 852
656Mouse pointer background colour. 853Mouse pointer background colour.
657 854
658=item B<pointerBlankDelay:> I<number> 855=item B<pointerBlankDelay:> I<number>
659 856
660Specifies number of seconds before blanking the pointer [default 2]. 857Specifies number of seconds before blanking the pointer [default 2]. Use a
858large number (e.g. C<987654321>) to effectively disable the timeout.
661 859
662=item B<backspacekey:> I<string> 860=item B<backspacekey:> I<string>
663 861
664The string to send when the backspace key is pressed. If set to B<DEC> 862The string to send when the backspace key is pressed. If set to B<DEC>
665or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace> 863or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace>
687 885
688I<name> of inputMethod to use; option B<-im>. 886I<name> of inputMethod to use; option B<-im>.
689 887
690=item B<imLocale:> I<name> 888=item B<imLocale:> I<name>
691 889
692The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 890The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
693de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 891C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
694extension to be able to input japanese characters while staying in 892input extension to be able to input japanese characters while staying in
695another locale. option B<-imlocale>. 893another locale. option B<-imlocale>.
696 894
697=item B<insecure> 895=item B<imFont:> I<fontset>
896
897Specify the font-set used for XIM styles C<OverTheSpot> or
898C<OffTheSpot>. It must be a standard X font set (XLFD patterns separated
899by commas), i.e. it's not in the same format as the other font lists used
900in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
901found, preferably one or two pixels differing in size to the base font.
902option B<-imfont>.
903
904=item B<tripleclickwords:> I<boolean>
905
906Change the meaning of triple-click selection with the left mouse
907button. Instead of selecting a full line it will extend the selection to
908the end of the logical line only. option B<-tcw>.
909
910=item B<insecure:> I<boolean>
698 911
699Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 912Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
700echo arbitrary strings like the icon name or the locale. This could be 913echo arbitrary strings like the icon name or the locale. This could be
701abused if somebody gets 8-bit-clean access to your display, wether 914abused if somebody gets 8-bit-clean access to your display, whether
702throuh a mail client displaying mail bodies unfiltered or though 915through a mail client displaying mail bodies unfiltered or through
703write(1). Therefore, these sequences are disabled by default. (Note 916write(1) or any other means. Therefore, these sequences are disabled by
704that other terminals, including xterm, have these sequences 917default. (Note that many other terminals, including xterm, have these
705enabled by default). You can enable them by setting this boolean 918sequences enabled by default, which doesn't make it safer, though).
706resource or specifying B<-insecure> as an option. At the moment, this 919
707enabled display-answer, locale, findfont, icon label and window title 920You can enable them by setting this boolean resource or specifying
708requests as well as dynamic menubar dispatch. 921B<-insecure> as an option. At the moment, this enables display-answer,
922locale, findfont, icon label and window title requests as well as dynamic
923menubar dispatch.
709 924
710=item B<modifier:> I<modifier> 925=item B<modifier:> I<modifier>
711 926
712Set the key to be interpreted as the Meta key to: B<alt>, B<meta>, 927Set the key to be interpreted as the Meta key to: B<alt>, B<meta>,
713B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option 928B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option
728Turn on/off secondary screen scroll (default enabled). If the this 943Turn on/off secondary screen scroll (default enabled). If the this
729option is enabled, scrolls on the secondary screen will change the 944option is enabled, scrolls on the secondary screen will change the
730scrollback buffer and switching to/from the secondary screen will 945scrollback buffer and switching to/from the secondary screen will
731instead scroll the screen up. 946instead scroll the screen up.
732 947
948=item B<hold>: I<bool>
949
950Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
951will not immediately destroy its window when the program executed within
952it exits. Instead, it will wait till it is being killed or closed by the
953user.
954
733=item B<keysym.>I<sym>: I<string> 955=item B<keysym.>I<sym>: I<string>
734 956
735Associate I<string> with keysym I<sym> (B<0xFF00 - 0xFFFF>). It may 957Compile I<frills>: Associate I<string> with keysym I<sym>. The
736contain escape values (\a: bell, \b: backspace, \e, \E: escape, \n: 958intervening resource name B<keysym.> cannot be omitted.
737newline, \r: return, \t: 959
960The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be
961any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>,
962B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>,
963and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>,
964B<2>, B<3>, B<4>, B<5>.
965
966The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
967whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
968keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
969current application keymap mode state.
970
971The spellings of I<key> can be obtained by using B<xev>(1) command or
972searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and
973omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex
974keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not
975performed in an exact manner; however, the closest match is assured.
976
977I<string> may contain escape values (C<\a>: bell, C<\b>: backspace,
978C<\e>, C<\E>: escape, C<\n>: newline, C<\r>: carriage return, C<\t>: tab,
738tab, \000: octal number) or control characters (^?: delete, ^@: null, 979C<\000>: octal number) or verbatim control characters (C<^?>: delete,
739^A ...) and may enclosed with double quotes so that it can start or end 980C<^@>: null, C<^A> ...) and may be enclosed with double quotes so that it
740with whitespace. The intervening resource name B<keysym.> cannot be 981can start or end with whitespace.
741omitted. This resource is only available when compiled with 982
742KEYSYM_RESOURCE. 983Please note that you need to double the C<\> when using
984C<--enable-xgetdefault>, as X itself does it's own de-escaping (you can
985use C<\033> instead of C<\e> (and so on), which will work with both Xt and
986@@RXVT_NAME@@'s own processing).
987
988You can define a range of keysyms in one shot by providing a I<string>
989with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimeter `/'
990should be a character not used by the strings.
991
992Its usage can be demonstrated by an example:
993
994 URxvt.keysym.M-C-0x61: list|\033<M-C-|abc|>
995
996The above line is equivalent to the following three lines:
997
998 URxvt.keysym.Meta-Control-0x61: \033<M-C-a>
999 URxvt.keysym.Meta-Control-0x62: \033<M-C-b>
1000 URxvt.keysym.Meta-Control-0x63: \033<M-C-c>
1001
1002If I<string> takes the form of C<command:STRING>, the specified B<STRING>
1003is interpreted and executed as @@RXVT_NAME@@'s control sequence. For
1004example the following means "change the current locale to C<zh_CN.GBK>
1005when Control-Meta-c is being pressed":
1006
1007 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1008
1009Due the the large number of modifier combinations, a defined key mapping
1010will match if at I<at least> the specified identifiers are being set, and
1011no other key mappings with those and more bits are being defined. That
1012means that defining a key map for C<a> will automatically provide
1013definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1014mappings themselves.
1015
1016Unfortunately, this will override built-in key mappings. For example
1017if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s
1018C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the
1019user-defined keymap using the C<builtin:> replacement:
1020
1021 URxvt.keysym.Insert: <my insert key sequence>
1022 URxvt.keysym.S-Insert: builtin:
1023
1024The first line defines a mapping for C<Insert> and I<any> combination
1025of modifiers. The second line re-establishes the default mapping for
1026C<Shift-Insert>.
1027
1028The following example will map Control-Meta-1 and Control-Meta-2 to
1029the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1030font-switching at runtime:
1031
1032 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1033 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1034
1035Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1036info):
1037
1038 URxvt.keysym.M-C-3: command:\033[8;25;80t
1039 URxvt.keysym.M-C-4: command:\033[8;48;110t
743 1040
744=back 1041=back
745 1042
746=head1 THE SCROLLBAR 1043=head1 THE SCROLLBAR
747 1044
761the normal text selection/insertion, hold either the Shift or the Meta 1058the normal text selection/insertion, hold either the Shift or the Meta
762(Alt) key while performing the desired mouse action. 1059(Alt) key while performing the desired mouse action.
763 1060
764If mouse reporting mode is active, the normal scrollbar actions are 1061If mouse reporting mode is active, the normal scrollbar actions are
765disabled -- on the assumption that we are using a fullscreen 1062disabled -- on the assumption that we are using a fullscreen
766application. Instead, pressing Button1 and Button3 sends B<ESC[6~> 1063application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
767(Next) and B<ESC[5~> (Prior), respectively. Similarly, clicking on the 1064(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
768up and down arrows sends B<ESC[A> (Up) and B<ESC[B> (Down), 1065up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
769respectively. 1066respectively.
770 1067
771=head1 TEXT SELECTION AND INSERTION 1068=head1 TEXT SELECTION AND INSERTION
772 1069
773The behaviour of text selection and insertion mechanism is similar to 1070The behaviour of text selection and insertion mechanism is similar to
775 1072
776=over 4 1073=over 4
777 1074
778=item B<Selection>: 1075=item B<Selection>:
779 1076
780Left click at the beginning of the region, drag to the end of the 1077Left click at the beginning of the region, drag to the end of the region
781region and release; Right click to extend the marked region; Left 1078and release; Right click to extend the marked region; Left double-click
782double-click to select a word; Left triple-click to select the entire 1079to select a word; Left triple-click to select the entire logical line
783line. 1080(which can span multiple screen lines), unless modified by resource
1081B<tripleclickwords>.
1082
1083Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
1084(Compile: I<frills>) will create a rectangular selection instead of a
1085normal one. In this mode, every selected row becomes its own line in the
1086selection, and trailing whitespace is visually underlined and removed from
1087the selection.
784 1088
785=item B<Insertion>: 1089=item B<Insertion>:
786 1090
787Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in 1091Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in
788an B<@@RXVT_NAME@@> window causes the current text selection to be 1092an B<@@RXVT_NAME@@> window causes the current text selection to be
790 1094
791=back 1095=back
792 1096
793=head1 CHANGING FONTS 1097=head1 CHANGING FONTS
794 1098
795You can change fonts on-the-fly, which is to say cycle through the 1099Changing fonts (or font sizes, respectively) via the keypad is not yet
796default font and others of various sizes, by using B<Shift-KP_Add> and 1100supported in rxvt-unicode. Bug me if you need this.
797B<Shift-KP_Subtract>. Or, alternatively (if enabled) with 1101
798B<@@HOTKEY@@-@@BIGFONT@@> and B<@@HOTKEY@@-@@SMALLFONT@@>, where the 1102You can, however, switch fonts at runtime using escape sequences (and
799actual key can be selected using resources 1103therefore using the menubar), e.g.:
800B<smallfont_key>/B<bigfont_key>. 1104
1105 printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic"
1106
1107rxvt-unicode will automatically re-apply these fonts to the output so far.
801 1108
802=head1 ISO 14755 SUPPORT 1109=head1 ISO 14755 SUPPORT
803 1110
804Partial ISO 14755-support is implemented. that means that pressing 1111ISO 14755 is a standard for entering and viewing unicode characters
1112and character codes using the keyboard. It consists of 4 parts. The
1113first part is available rxvt-unicode has been compiled with
1114C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1115with C<--enable-iso14755>.
805 1116
806Section 5.1: Control and Shift together enters unicode input 1117=over 4
807mode. Entering hex digits composes a Unicode character, pressing space or
808releasing the modifiers commits the keycode and every other key cancels
809the current input character.
810 1118
811Section 5.2: Pressing and immediately releasing Control and Shift together 1119=item * 5.1: Basic method
812enters keycap entry mode for the next key: pressing a function key (tab, 1120
813return etc..) will enter the unicode character corresponding to the given 1121This allows you to enter unicode characters using their hexcode.
814key. 1122
1123Start by pressing and holding both C<Control> and C<Shift>, then enter
1124hex-digits (between one and six). Releasing C<Control> and C<Shift> will
1125commit the character as if it were typed directly. While holding down
1126C<Control> and C<Shift> you can also enter multiple characters by pressing
1127C<Space>, which will commit the current character and lets you start a new
1128one.
1129
1130As an example of use, imagine a business card with a japanese e-mail
1131address, which you cannot type. Fortunately, the card has the e-mail
1132address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
1133by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
1134followed by releasing the modifier keys.
1135
1136=item * 5.2: Keyboard symbols entry method
1137
1138This mode lets you input characters representing the keycap symbols of
1139your keyboard, if representable in the current locale encoding.
1140
1141Start by pressing C<Control> and C<Shift> together, then releasing
1142them. The next special key (cursor keys, home etc.) you enter will not
1143invoke it's usual function but instead will insert the corresponding
1144keycap symbol. The symbol will only be entered when the key has been
1145released, otherwise pressing e.g. C<Shift> would enter the symbol for
1146C<ISO Level 2 Switch>, although your intention might have been to enter a
1147reverse tab (Shift-Tab).
1148
1149=item * 5.3: Screen-selection entry method
1150
1151While this is implemented already (it's basically the selection
1152mechanism), it could be extended by displaying a unicode character map.
1153
1154=item * 5.4: Feedback method for identifying displayed characters for later input
1155
1156This method lets you display the unicode character code associated with
1157characters already displayed.
1158
1159You enter this mode by holding down C<Control> and C<Shift> together, then
1160pressing and holding the left mouse button and moving around. The unicode
1161hex code(s) (it might be a combining character) of the character under the
1162pointer is displayed until you release C<Control> and C<Shift>.
1163
1164In addition to the hex codes it will display the font used to draw this
1165character - due to implementation reasons, characters combined with
1166combining characters, line drawing characters and unknown characters will
1167always be drawn using the built-in support font.
1168
1169=back
1170
1171With respect to conformance, rxvt-unicode is supposed to be compliant to
1172both scenario A and B of ISO 14755, including part 5.2.
815 1173
816=head1 LOGIN STAMP 1174=head1 LOGIN STAMP
817 1175
818B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so 1176B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
819that it can be seen via the I<who(1)> command, and can accept messages. 1177it can be seen via the I<who(1)> command, and can accept messages. To
820To allow this feature, B<@@RXVT_NAME@@> must be installed setuid root on 1178allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
821some systems. 1179on some systems or setgid to root or to some other group on others.
822 1180
823=head1 COLORS AND GRAPHICS 1181=head1 COLORS AND GRAPHICS
824 1182
825In addition to the default foreground and background colours, 1183In addition to the default foreground and background colours,
826B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus 1184B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus
867would yield White on Black, while on I<xterm>(1) it would yield Black 1225would yield White on Black, while on I<xterm>(1) it would yield Black
868on White. 1226on White.
869 1227
870=back 1228=back
871 1229
872=head1 FREQUENTLY ASKED QUESTIONS (FAQ) 1230=head1 ENVIRONMENT
1231
1232B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
873 1233
874=over 4 1234=over 4
875 1235
876=item How do I know which rxvt-unicode version I'm using? 1236=item B<TERM>
877 1237
878The version number is displayed with the usage (-h). For rxvt-unicode 1238Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
879version 2.14 and later, the escape sequence C<ESC[8n> sets the window 1239resources or on the commandline.
880title to the version number.
881 1240
882=item Why do the characters look ugly? 1241=item B<COLORTERM>
883 1242
884=item How does rxvt-unicode choose fonts? 1243Either C<rxvt>, C<rxvt-xpm>, depending on wether @@RXVT_NAME@@ was
1244compiled with XPM support, and optionally with the added extension
1245C<-mono> to indicate that rxvt-unicode runs on a monochrome screen.
885 1246
886Most fonts do not contain the full range of Unicode, which is 1247=item B<COLORFGBG>
887fine. Chances are that the font you (or the admin/package maintainer of
888your system/os) have specified does not cover all the characters you want
889to display.
890 1248
891B<rxvt-unicode> makes a best-effort try at finding a replacement 1249Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
892font. Often the result is fine, but sometimes the chosen font looks 1250the colour code used as default foreground/text colour (or the string
893bad. In that case, select a font of your taste and add it to the font 1251C<default> to indicate that the default-colour escape sequence is to be
894list, e.g.: 1252used), C<bg> is the colour code used as default background colour (or the
1253string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1254was compiled with XPM support. Libraries like C<ncurses> and C<slang> can
1255(and do) use this information to optimize screen output.
895 1256
896 @@RXVT_NAME@@ -fn basefont,font2,font3... 1257=item B<WINDOWID>
897 1258
898When rxvt-unicode sees a character, it will first look at the base 1259Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
899font. If the base font does not contain the character, it will go to the 1260window, which usually has subwindows for the scrollbar, the terminal
900next font, and so on. 1261window and so on).
901 1262
902The only limitation is that all the fonts must not be larger than the base 1263=item B<TERMINFO>
903font, as the base font defines the principial cell size, which must be the
904same due to the way terminals work.
905 1264
906=item Why do some chinese characters look so different than others? 1265Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1266C<--with-terminfo=PATH>.
907 1267
908This is because there is a difference between script and language -- 1268=item B<DISPLAY>
909rxvt-unicode does not know which language the text that is output
910is, as it only knows the unicode character codes. If rxvt-unicode
911first sees a japanese character, it might choose a japanese font for
912it. Subseqzuent japanese characters will take that font. Now, many chinese
913characters aren't represented in japanese fonts, so when the first
914non-japanese character comes up, rxvt-unicode will look for a chinese font
915-- unfortunately at this point, it will still use the japanese font for
916japanese characters that are also chinese.
917 1269
918The workaround is easy: just tag a chinese font at the end of your font 1270Used by @@RXVT_NAME@@ to connect to the display and set to the correct
919list (see the previous question). The key is to view the font list as 1271display in it's child processes.
920a preference list: If you expect more japanese, list a japanese font
921first. If you expect more chinese, put a chinese font first.
922 1272
923In the future it might be possible to switch preferences at runtime (the 1273=item B<SHELL>
924internal data structure has no problem with using different fonts for
925the same character at the same time, but no interface for this has been
926designed yet).
927 1274
928=item Mouse cut/paste suddenly no longer works. 1275The shell to be used for command execution, defaults to C</bin/sh>.
929 1276
930Make sure that mouse reporting is actually turned off since killing 1277=item B<RXVTPATH>
931some editors prematurely may leave the mouse in mouse report mode. I've
932heard that tcsh may use mouse reporting unless it otherwise specified. A
933quick check is to see if cut/paste works when the Alt or Shift keys are
934depressed. See @@RXVT_NAME@@(7)
935 1278
936=item What's with this bold/blink stuff? 1279The path where @@RXVT_NAME@@ looks for support files such as menu and xpm
1280files.
937 1281
938If no bold colour is set via C<colorBD:>, bold will invert text using the 1282=item B<PATH>
939standard foreground colour.
940 1283
941For the standard background colour, blinking will actually make the 1284Used in the same way as C<RXVTPATH>.
942text blink when compiled with C<--enable-blinking>. with standard
943colours. Without C<--enable-blinking>, the blink attribute will be
944ignored.
945 1285
946On ANSI colours, bold/blink attributes are used to set high-intensity 1286=item B<RXVT_SOCKET>
947foreground/background colors.
948 1287
949color0-7 are the low-intensity colors. 1288The unix domain socket path used by @@RXVT_NAME@@c(1) and
1289@@RXVT_NAME@@d(1).
950 1290
951color8-15 are the corresponding high-intensity colors. 1291Default F<<< $HOME/.rxvt-unicode-I<< <nodename >> >>>.
952 1292
953=item I don't like the screen colors. How do I change them? 1293=item B<HOME>
954 1294
955You can change the screen colors at run-time using F<~/.Xdefaults> 1295Used to locate the default directory for the unix domain socket for
956resources (or as long-options). 1296daemon communications and to locate various resource files (such as
1297C<.Xdefaults>)
957 1298
958Here are values that are supposed to resemble a VGA screen, 1299=item B<XAPPLRESDIR>
959including the murky brown that passes for low-intensity yellow:
960 1300
961 Rxvt*color0: #000000 1301Directory where various X resource files are being located.
962 Rxvt*color1: #A80000
963 Rxvt*color2: #00A800
964 Rxvt*color3: #A8A800
965 Rxvt*color4: #0000A8
966 Rxvt*color5: #A800A8
967 Rxvt*color6: #00A8A8
968 Rxvt*color7: #A8A8A8
969
970 Rxvt*color8: #000054
971 Rxvt*color9: #FF0054
972 Rxvt*color10: #00FF54
973 Rxvt*color11: #FFFF54
974 Rxvt*color12: #0000FF
975 Rxvt*color13: #FF00FF
976 Rxvt*color14: #00FFFF
977 Rxvt*color15: #FFFFFF
978 1302
979=item What's with the strange Backspace/Delete key behaviour? 1303=item B<XENVIRONMENT>
980 1304
981Assuming that the physical Backspace key corresponds to the 1305If set and accessible, gives the name of a X resource file to be loaded by
982BackSpace keysym (not likely for Linux ... see the following
983question) there are two standard values that can be used for
984Backspace: C<^H> and C<^?>.
985
986Historically, either value is correct, but rxvt-unicode adopts the debian
987policy of using C<^?> when unsure, because it's the one only only correct
988choice :).
989
990Rxvt-unicode tries to inherit the current stty settings and uses the value
991of `erase' to guess the value for backspace. If rxvt-unicode wasn't
992started from a terminal (say, from a menu or by remote shell), then the
993system value of `erase', which corresponds to CERASE in <termios.h>, will
994be used (which may not be the same as your stty setting).
995
996For starting a new rxvt-unicode:
997
998 # use Backspace = ^H
999 $ stty erase ^H
1000 $ @@RXVT_NAME@@ 1306@@RXVT_NAME@@.
1001
1002 # use Backspace = ^?
1003 $ stty erase ^?
1004 $ @@RXVT_NAME@@
1005
1006Toggle with "ESC[36h" / "ESC[36l" as documented in @@RXVT_NAME@@(7).
1007
1008For an existing rxvt-unicode:
1009
1010 # use Backspace = ^H
1011 $ stty erase ^H
1012 $ echo -n "^[[36h"
1013
1014 # use Backspace = ^?
1015 $ stty erase ^?
1016 $ echo -n "^[[36l"
1017
1018This helps satisfy some of the Backspace discrepancies that occur, but
1019if you use Backspace = C<^H>, make sure that the termcap/terminfo value
1020properly reflects that.
1021
1022The Delete key is a another casualty of the ill-defined Backspace problem.
1023To avoid confusion between the Backspace and Delete keys, the Delete
1024key has been assigned an escape sequence to match the vt100 for Execute
1025(ESC[3~) and is in the supplied termcap/terminfo.
1026
1027Some other Backspace problems:
1028
1029some editors use termcap/terminfo,
1030some editors (vim I'm told) expect Backspace = ^H,
1031GNU Emacs (and Emacs-like editors) use ^H for help.
1032
1033Perhaps someday this will all be resolved in a consistent manner.
1034
1035=item I don't like the key-bindings. How do I change them?
1036
1037There are some compile-time selections available via configure. Unless
1038you have run "configure" with the C<--disable-resources> option you can
1039use the `keysym' resource to alter the keystrings associated with keysym
10400xFF00 - 0xFFFF (function, cursor keys, etc).
1041
1042Here's an example for a tn3270 session started using `@@RXVT_NAME@@ -name tn3270'
1043
1044 !# ----- special uses ------:
1045 ! tn3270 login, remap function and arrow keys.
1046 tn3270*font: *clean-bold-*-*--15-*
1047
1048 ! keysym - used by rxvt only
1049 ! Delete - ^D
1050 tn3270*keysym.0xFFFF: \004
1051
1052 ! Home - ^A
1053 tn3270*keysym.0xFF50: \001
1054 ! Left - ^B
1055 tn3270*keysym.0xFF51: \002
1056 ! Up - ^P
1057 tn3270*keysym.0xFF52: \020
1058 ! Right - ^F
1059 tn3270*keysym.0xFF53: \006
1060 ! Down - ^N
1061 tn3270*keysym.0xFF54: \016
1062 ! End - ^E
1063 tn3270*keysym.0xFF57: \005
1064
1065 ! F1 - F12
1066 tn3270*keysym.0xFFBE: \e1
1067 tn3270*keysym.0xFFBF: \e2
1068 tn3270*keysym.0xFFC0: \e3
1069 tn3270*keysym.0xFFC1: \e4
1070 tn3270*keysym.0xFFC2: \e5
1071 tn3270*keysym.0xFFC3: \e6
1072 tn3270*keysym.0xFFC4: \e7
1073 tn3270*keysym.0xFFC5: \e8
1074 tn3270*keysym.0xFFC6: \e9
1075 tn3270*keysym.0xFFC7: \e0
1076 tn3270*keysym.0xFFC8: \e-
1077 tn3270*keysym.0xFFC9: \e=
1078
1079 ! map Prior/Next to F7/F8
1080 tn3270*keysym.0xFF55: \e7
1081 tn3270*keysym.0xFF56: \e8
1082
1083=item I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
1084How do I make use of them? For example, the Sun Keyboard type 4
1085has the following mappings that rxvt-unicode doesn't recognize.
1086
1087 KP_Insert == Insert
1088 F22 == Print
1089 F27 == Home
1090 F29 == Prior
1091 F33 == End
1092 F35 == Next
1093
1094Rather than have rxvt-unicode try to accomodate all the various possible keyboard
1095mappings, it is better to use `xmodmap' to remap the keys as required for
1096your particular machine.
1097
1098=item How do I distinguish if I'm running rxvt-unicode or a regular xterm?
1099I need this to decide about setting colors etc.
1100
1101rxvt and rxvt-unicode always export the variable "COLORTERM", so you can
1102check and see if that is set. Note that several programs, JED, slrn,
1103Midnight Commander automatically check this variable to decide whether or
1104not to use color.
1105
1106=item How do I set the correct, full IP address for the DISPLAY variable?
1107
1108If you've compiled rxvt-unicode with DISPLAY_IS_IP and ahve enabled
1109insecure mode then it is possible to use the following shell script
1110snippets to correctly set the display. If your version of rxvt-unicode
1111wasn't also compiled with ESCZ_ANSWER (as assumed in these snippets) then
1112the COLORTERM variable can be used to distinguish rxvt-unicode from a
1113regular xterm.
1114
1115Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
1116snippets:
1117
1118 # Bourne/Korn/POSIX family of shells:
1119 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
1120 if [ ${TERM:-foo} = xterm ]; then
1121 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
1122 echo -n '^[Z'
1123 read term_id
1124 stty icanon echo
1125 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
1126 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
1127 read DISPLAY # set it in our local shell
1128 fi
1129 fi
1130
1131=item How do I compile the manual pages for myself?
1132
1133You need to have a recent version of perl installed as F</usr/bin/perl>,
1134one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to
1135the doc subdirectory and enter C<make alldoc>.
1136 1307
1137=back 1308=back
1138 1309
1139=head1 ENVIRONMENT
1140
1141B<@@RXVT_NAME@@> sets the environment variables B<TERM>, B<COLORTERM>
1142and B<COLORFGBG>. The environment variable B<WINDOWID> is set to the X
1143window id number of the B<@@RXVT_NAME@@> window and it also uses and
1144sets the environment variable B<DISPLAY> to specify which display
1145terminal to use. B<@@RXVT_NAME@@> uses the environment variables
1146B<RXVTPATH> and B<PATH> to find XPM files.
1147
1148=head1 FILES 1310=head1 FILES
1149 1311
1150=over 4 1312=over 4
1151 1313
1152=item B</etc/utmp>
1153
1154System file for login records.
1155
1156=item B</usr/lib/X11/rgb.txt> 1314=item B</usr/lib/X11/rgb.txt>
1157 1315
1158Color names. 1316Color names.
1159 1317
1160=back 1318=back
1161 1319
1162=head1 SEE ALSO 1320=head1 SEE ALSO
1163 1321
1164@@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5) 1322@@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)
1165
1166=head1 BUGS
1167
1168Check the BUGS file for an up-to-date list.
1169
1170Cursor change support is not yet implemented.
1171
1172Click-and-drag doesn't work with X11 mouse report overriding.
1173 1323
1174=head1 CURRENT PROJECT COORDINATOR 1324=head1 CURRENT PROJECT COORDINATOR
1175 1325
1176=over 4 1326=over 4
1177 1327
1178=item Project Coordinator 1328=item Project Coordinator
1179 1329
1180@@RXVTMAINT@@ L<@@RXVT_MAINTEMAIL@@> 1330Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >>
1181 1331
1182=item Web page maintainter 1332L<http://software.schmorp.de/#rxvt-unicode>
1183
1184@@RXVTWEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@>
1185
1186L<@@RXVT_WEBPAGE@@>
1187 1333
1188=back 1334=back
1189 1335
1190=head1 AUTHORS 1336=head1 AUTHORS
1191 1337
1216=item Geoff Wing L<< <gcw@pobox.com> >> 1362=item Geoff Wing L<< <gcw@pobox.com> >>
1217 1363
1218Rewrote screen display and text selection routines. Project Coordinator 1364Rewrote screen display and text selection routines. Project Coordinator
1219(changes.txt 2.4.6 - rxvt-unicode) 1365(changes.txt 2.4.6 - rxvt-unicode)
1220 1366
1221=item Marc Alexander Lehmann L<< <rxvt@schmorp.de> >> 1367=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >>
1222 1368
1223Forked rxvt-unicode, rewrote most of the display code and internal 1369Forked rxvt-unicode, rewrote most of the display code and internal
1224character handling to store text in unicode, improve xterm 1370character handling to store text in unicode, improve xterm
1225compatibility and apply numerous other bugfixes and extensions. 1371compatibility and apply numerous other bugfixes and extensions.
1226 1372

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines