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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines