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.3 by root, Thu Aug 12 22:22:30 2004 UTC vs.
Revision 1.91 by root, Mon Jan 9 23:00:07 2006 UTC

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 16
17See also @@RXVT_NAME@@(7) for technical reference documentation (escape 17=head1 FREQUENTLY ASKED QUESTIONS
18sequences etc.) and the FAQ section at the end of this document. 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>.
23
24=head1 RXVT-UNICODE VS. RXVT
25
26Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
27internally. That means it can store and display most scripts in the
28world. Being a terminal emulator, however, some things are very difficult,
29especially cursive scripts such as arabic, vertically written scripts
30like mongolian or scripts requiring extremely complex combining rules,
31like tibetan or devenagari. Don't expect pretty output when using these
32scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
33fine, though. A somewhat difficult case are left-to-right scripts, such
34as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
35belong into the application, not the terminal emulator (too many things --
36such as cursor-movement while editing -- break otherwise), but that might
37change.
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
45Therefore another design rationale was the use of multiple fonts to
46display characters: The idea of a single unicode font which many other
47programs force onto it's users never made sense to me: You should be able
48to choose any font for any script freely.
49
50Apart from that, rxvt-unicode is also much better internationalised than
51it's predecessor, supports things such as XFT and ISO 14755 that are handy
52in i18n-environments, is faster, and has a lot less bugs than the original
53rxvt. This all in addition to dozens of other small improvements.
54
55It is still faithfully following the original rxvt idea of being lean
56and nice on resources: for example, you can still configure rxvt-unicode
57without most of it's features to get a lean binary. It also comes with
58a client/daemon pair that lets you open any number of terminal windows
59from within a single process, which makes startup time very fast and
60drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
61@@RXVT_NAME@@c(1) (client).
62
63It also makes technical information about escape sequences (which have
64been extended) easier accessible: see @@RXVT_NAME@@(7) for technical
65reference documentation (escape sequences etc.).
19 66
20=head1 OPTIONS 67=head1 OPTIONS
21 68
22The 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
23below. In keeping with the smaller-is-better philosophy, options may be 70below. In keeping with the smaller-is-better philosophy, options may be
58 105
59=item B<-j>|B<+j> 106=item B<-j>|B<+j>
60 107
61Turn on/off jump scrolling; resource B<jumpScroll>. 108Turn on/off jump scrolling; resource B<jumpScroll>.
62 109
63=item B<-ip>|B<+ip> 110=item B<-ip>|B<+ip> | B<-tr>|B<+tr>
64 111
65Turn on/off inheriting parent window's pixmap. Alternative form is 112Turn on/off inheriting parent window's pixmap. Alternative form is
66B<-tr>; resource B<inheritPixmap>. 113B<-tr>; resource B<inheritPixmap>.
67 114
68=item B<-fade> I<number> 115=item B<-fade> I<number>
69 116
70Fade 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>.
71 125
72=item B<-tint> I<colour> 126=item B<-tint> I<colour>
73 127
74Tint the transparent background pixmap with the given colour when 128Tint the transparent background pixmap with the given colour when
75transparency 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
76option 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
77tinting 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
78 135
79=item B<-sh> 136=item B<-sh>
80 137
81I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent 138I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent
82background 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
83specified, too). 140specified, too, e.g. C<-tint white>).
84 141
85=item B<-bg> I<colour> 142=item B<-bg> I<colour>
86 143
87Window background colour; resource B<background>. 144Window background colour; resource B<background>.
88 145
91Window foreground colour; resource B<foreground>. 148Window foreground colour; resource B<foreground>.
92 149
93=item B<-pixmap> I<file[;geom]> 150=item B<-pixmap> I<file[;geom]>
94 151
95Compile I<XPM>: Specify XPM file for the background and also optionally 152Compile I<XPM>: Specify XPM file for the background and also optionally
96specify its scaling with a geometry string. Note you may need to add 153specify its scaling with a geometry string. Note you may need to
97quotes to avoid special shell interpretation of the `;' in the 154add quotes to avoid special shell interpretation of the C<;> in the
98command-line; resource B<backgroundPixmap>. 155command-line; resource B<backgroundPixmap>.
99 156
100=item B<-cr> I<colour> 157=item B<-cr> I<colour>
101 158
102The cursor colour; resource B<cursorColor>. 159The cursor colour; resource B<cursorColor>.
109 166
110The mouse pointer background colour; resource B<pointerColor2>. 167The mouse pointer background colour; resource B<pointerColor2>.
111 168
112=item B<-bd> I<colour> 169=item B<-bd> I<colour>
113 170
114The 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;
115resource B<borderColor>. 172resource B<borderColor>.
116 173
117=item B<-fn> I<fontname> 174=item B<-fn> I<fontlist>
118 175
119Select 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
120names that are used in turn when trying to display Unicode characters. 177that are used in turn when trying to display Unicode characters. The
121The first font defines the cell size for characters; other fonts might 178first font defines the cell size for characters; other fonts might be
122be smaller, but not larger. A reasonable default font list is always 179smaller, but not (in general) larger. A (hopefully) reasonable default
123appended to it. resource B<font>. 180font list is always appended to it. See resource B<font> for more details.
124 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"
188
189See also the question "How does rxvt-unicode choose fonts?" in the FAQ
190section of @@RXVT_NAME@@(7).
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
125=item B<-rb>|B<+rb> 208=item B<-is>|B<+is>
126 209
127Enable "real bold" support. When this option is on, bold text will be 210Compile I<font-styles>: Bold/Italic font styles imply high intensity
128displayed using the first available bold font in the font list. Bold 211foreground/background (default). See resource B<intensityStyles> for
129fonts should thus be specified in the font list after their 212details.
130corresponding regular fonts. If no bold font can be found, a regular
131font will be used. resource B<realBold>.
132 213
133=item B<-name> I<name> 214=item B<-name> I<name>
134 215
135Specify the application name under which resources are to be obtained, 216Specify the application name under which resources are to be obtained,
136rather than the default executable file name. Name should not contain 217rather than the default executable file name. Name should not contain
174 255
175Put scrollbar on right/left; resource B<scrollBar_right>. 256Put scrollbar on right/left; resource B<scrollBar_right>.
176 257
177=item B<-st>|B<+st> 258=item B<-st>|B<+st>
178 259
179Display normal (non XTerm/NeXT) scrollbar without/with a trough; 260Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
180resource 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>.
181 270
182=item B<-bc>|B<+bc> 271=item B<-bc>|B<+bc>
183 272
184Blink the cursor; resource B<cursorBlink>. 273Blink the cursor; resource B<cursorBlink>.
185 274
208 297
209Compile 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.
210if 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
211decorations; resource B<borderLess>. 300decorations; resource B<borderLess>.
212 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
213=item B<-lsp> I<number> 309=item B<-lsp> I<number>
214 310
215Compile I<linespace>: Lines (pixel height) to insert between each row 311Compile I<frills>: Lines (pixel height) to insert between each row of
216of the display; resource B<linespace>. 312the display. Useful to work around font rendering problems; resource
313B<linespace>.
217 314
218=item B<-tn> I<termname> 315=item B<-tn> I<termname>
219 316
220This 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
221B<TERM> environment variable. This terminal type must exist in the 318B<TERM> environment variable. This terminal type must exist in the
230given 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
231on 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
232run the program specified by the B<SHELL> environment variable or, 329run the program specified by the B<SHELL> environment variable or,
233failing that, I<sh(1)>. 330failing that, I<sh(1)>.
234 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
235=item B<-title> I<text> 337=item B<-title> I<text>
236 338
237Window title (B<-T> still respected); the default title is the basename 339Window title (B<-T> still respected); the default title is the basename
238of 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
239application name; resource B<title>. 341application name; resource B<title>.
257 359
258Compile I<XIM>: input method name. resource B<inputMethod>. 360Compile I<XIM>: input method name. resource B<inputMethod>.
259 361
260=item B<-imlocale> I<string> 362=item B<-imlocale> I<string>
261 363
262The 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.
263de_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
264extension to be able to input japanese characters while staying in 366input extension to be able to input japanese characters while staying in
265another 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>.
266 379
267=item B<-insecure> 380=item B<-insecure>
268 381
269Enable "insecure" mode, which currently enables most of the escape 382Enable "insecure" mode, which currently enables most of the escape
270sequences that echo strings. See the resource B<insecure> for more 383sequences that echo strings. See the resource B<insecure> for more
284=item B<-ssr>|B<+ssr> 397=item B<-ssr>|B<+ssr>
285 398
286Turn on/off secondary screen scroll (default enabled); resource 399Turn on/off secondary screen scroll (default enabled); resource
287B<secondaryScroll>. 400B<secondaryScroll>.
288 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
289=item B<-xrm> I<resourcestring> 469=item B<-pe> I<string>
290 470
291No 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
292available in the instance's argument list. Appears in I<WM_COMMAND> in 472this terminal instance. See resource B<perl-ext> for details.
293some window managers.
294 473
295=back 474=back
296 475
297=head1 RESOURCES (available also as long-options) 476=head1 RESOURCES (available also as long-options)
298 477
301 480
302There 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
303Xresource data: using the X libraries (Xrm*-functions) or internal 482Xresource data: using the X libraries (Xrm*-functions) or internal
304Xresources reader (B<~/.Xdefaults>). For the first method (ie. 483Xresources reader (B<~/.Xdefaults>). For the first method (ie.
305B<@@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
306resources using X11 tools like B<xset>. Many distribution do also load 485resources using X11 tools like B<xrdb>. Many distribution do also load
307settings 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>
308 495
309If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h> 496If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h>
310lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults 497lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults
311set in XAPPLOADDIR/URxvt (compile-time defined: usually 498set in XAPPLOADDIR/URxvt (compile-time defined: usually
312B</usr/lib/X11/app-defaults/URxvt>) and resources set in 499B</usr/lib/X11/app-defaults/URxvt>) and resources set in
345high-intensity (bold = bright foreground, blink = bright background) 532high-intensity (bold = bright foreground, blink = bright background)
346colours. 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,
3473=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
348names used are listed in the B<COLORS AND GRAPHICS> section. 535names used are listed in the B<COLORS AND GRAPHICS> section.
349 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
350=item B<colorBD:> I<colour> 543=item B<colorBD:> I<colour>
351 544
545=item B<colorIT:> I<colour>
546
352Use the specified colour to display bold characters when the foreground 547Use the specified colour to display bold or italic characters when the
353colour is the default. This option will be ignored if B<realBold> is 548foreground colour is the default. If font styles are not available
354enabled. 549(Compile I<styles>) and this option is unset, reverse video is used instead.
355 550
356=item B<colorUL:> I<colour> 551=item B<colorUL:> I<colour>
357 552
358Use the specified colour to display underlined characters when the 553Use the specified colour to display underlined characters when the
359foreground colour is the default. 554foreground colour is the default.
360 555
361=item B<colorRV:> I<colour> 556=item B<colorRV:> I<colour>
362 557
363Use the specified colour as the background for reverse video 558Use the specified colour as the background for reverse video
364characters. 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.
365 565
366=item B<cursorColor:> I<colour> 566=item B<cursorColor:> I<colour>
367 567
368Use 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
369foreground colour; option B<-cr>. 569foreground colour; option B<-cr>.
392artificial transparency. B<False>: do not inherit the parent windows' 592artificial transparency. B<False>: do not inherit the parent windows'
393pixmap. 593pixmap.
394 594
395=item B<fading:> I<number> 595=item B<fading:> I<number>
396 596
397Fade 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>.
398 603
399=item B<tintColor:> I<colour> 604=item B<tintColor:> I<colour>
400 605
401Tint the transparent background pixmap with the given colour. 606Tint the transparent background pixmap with the given colour; option
607B<-tint>.
402 608
403=item B<shading:> I<number> 609=item B<shading:> I<number>
404 610
405Darken (0 .. 100) or lighten (-1 .. -100) the transparent background 611Darken (0 .. 100) or lighten (-1 .. -100) the transparent background
406image in addition to tinting it. 612image in addition to tinting it.
407 613
408=item B<fading:> I<number>
409
410Scale the tint colour by the given percentage.
411
412=item B<scrollColor:> I<colour> 614=item B<scrollColor:> I<colour>
413 615
414Use the specified colour for the scrollbar [default #B2B2B2]. 616Use the specified colour for the scrollbar [default #B2B2B2].
415 617
416=item B<troughColor:> I<colour> 618=item B<troughColor:> I<colour>
417 619
418Use the specified colour for the scrollbar's trough area [default 620Use the specified colour for the scrollbar's trough area [default
419#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.
420 627
421=item B<backgroundPixmap:> I<file[;geom]> 628=item B<backgroundPixmap:> I<file[;geom]>
422 629
423Use the specified XPM file (note the `.xpm' extension is optional) for 630Use the specified XPM file (note the `.xpm' extension is optional) for
424the background and also optionally specify its scaling with a geometry 631the background and also optionally specify its scaling with a geometry
440 647
441Specify the colon-delimited search path for finding files (XPM and 648Specify the colon-delimited search path for finding files (XPM and
442menus), in addition to the paths specified by the B<RXVTPATH> and 649menus), in addition to the paths specified by the B<RXVTPATH> and
443B<PATH> environment variables. 650B<PATH> environment variables.
444 651
445=item B<font:> I<fontname> 652=item B<font:> I<fontlist>
446 653
447Select 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
448names that are used in turn when trying to display Unicode characters. 655names that are used in turn when trying to display Unicode characters.
449The first font defines the cell size for characters; other fonts might 656The first font defines the cell size for characters; other fonts might
450be smaller, but not larger. A reasonable default font list is always 657be smaller, but not larger. A reasonable default font list is always
451appended to it. option B<-fn>. 658appended to it; option B<-fn>.
452 659
453=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:>.
454 662
455B<True>: Enable "real bold" support. When this option is on, bold text 663In addition, each font can be prefixed with additional hints and
456will be displayed using the first available bold font in the font list. 664specifications enclosed in square brackets (C<[]>). The only available
457Bold 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
458corresponding regular fonts. If no bold font can be found, a regular 666fonts.
459font will be used. option B<-rb>. B<False>: Display bold text in a 667
460regular 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.
461 721
462=item B<selectstyle:> I<mode> 722=item B<selectstyle:> I<mode>
463 723
464Set 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
465xterm 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
466xterm style selection. 726xterm style selection.
467 727
468=item B<scrollstyle:> I<mode> 728=item B<scrollstyle:> I<mode>
469 729
470Set 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
471the author's favourite.. 731the author's favourite.
472 732
473=item B<title:> I<string> 733=item B<title:> I<string>
474 734
475Set window title string, the default title is the command-line 735Set window title string, the default title is the command-line
476specified after the B<-e> option, if any, otherwise the application 736specified after the B<-e> option, if any, otherwise the application
508 768
509Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use 769Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
510B<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
511B<Shift-Print> to include the scrollback as well. 771B<Shift-Print> to include the scrollback as well.
512 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
513=item B<scrollBar:> I<boolean> 782=item B<scrollBar:> I<boolean>
514 783
515B<True>: enable the scrollbar [default]; option B<-sb>. B<False>: 784B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
516disable the scrollbar; option B<+sb>. 785disable the scrollbar; option B<+sb>.
517 786
530Align the B<top>, B<bottom> or B<centre> [default] of the scrollbar 799Align the B<top>, B<bottom> or B<centre> [default] of the scrollbar
531thumb with the pointer on middle button press/drag. 800thumb with the pointer on middle button press/drag.
532 801
533=item B<scrollTtyOutput:> I<boolean> 802=item B<scrollTtyOutput:> I<boolean>
534 803
535B<True>: scroll to bottom when tty receives output; option B<+si>. 804B<True>: scroll to bottom when tty receives output; option B<-si>.
536B<False>: do not scroll to bottom when tty receives output; option 805B<False>: do not scroll to bottom when tty receives output; option
537B<-si>. 806B<+si>.
538 807
539=item B<scrollWithBuffer:> I<boolean> 808=item B<scrollWithBuffer:> I<boolean>
540 809
541B<True>: scroll with scrollback buffer when tty recieves new lines (and 810B<True>: scroll with scrollback buffer when tty receives new lines (and
542B<scrollTtyOutput> is False); option B<+sw>. B<False>: do not scroll 811B<scrollTtyOutput> is False); option B<-sw>. B<False>: do not scroll
543with scrollback buffer when tty recieves new lines; option B<-sw>. 812with scrollback buffer when tty recieves new lines; option B<+sw>.
544 813
545=item B<scrollTtyKeypress:> I<boolean> 814=item B<scrollTtyKeypress:> I<boolean>
546 815
547B<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
548are those which are intercepted by rxvt-unicode for special handling and 817are those which are intercepted by rxvt-unicode for special handling and
549are not passed onto the shell; option B<-sk>. B<False>: do not scroll to 818are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
550bottom when a non-special key is pressed; option B<+sk>. 819bottom when a non-special key is pressed; option B<+sk>.
551 820
552=item B<smallfont_key:> I<keysym>
553
554If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a smaller font
555[default B<@@HOTKEY@@-@@SMALLFONT@@>]
556
557=item B<bigfont_key:> I<keysym>
558
559If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a bigger font
560[default B<@@HOTKEY@@-@@BIGFONT@@>]
561
562=item B<saveLines:> I<number> 821=item B<saveLines:> I<number>
563 822
564Save I<number> lines in the scrollback buffer [default 64]. This 823Save I<number> lines in the scrollback buffer [default 64]. This
565resource is limited on most machines to 65535; option B<-sl>. 824resource is limited on most machines to 65535; option B<-sl>.
566 825
577=item B<borderLess:> I<boolean> 836=item B<borderLess:> I<boolean>
578 837
579Set 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
580WM, 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>.
581 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
582=item B<termName:> I<termname> 848=item B<termName:> I<termname>
583 849
584Specifies 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
585variable; option B<-tn>. 851variable; option B<-tn>.
586 852
596 862
597=item B<mouseWheelScrollPage:> I<boolean> 863=item B<mouseWheelScrollPage:> I<boolean>
598 864
599B<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
600scrolls 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>.
601 872
602=item B<cursorBlink:> I<boolean> 873=item B<cursorBlink:> I<boolean>
603 874
604B<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];
605option B<-bc>. 876option B<-bc>.
618 889
619Mouse pointer background colour. 890Mouse pointer background colour.
620 891
621=item B<pointerBlankDelay:> I<number> 892=item B<pointerBlankDelay:> I<number>
622 893
623Specifies 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.
624 896
625=item B<backspacekey:> I<string> 897=item B<backspacekey:> I<string>
626 898
627The 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>
628or 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>
650 922
651I<name> of inputMethod to use; option B<-im>. 923I<name> of inputMethod to use; option B<-im>.
652 924
653=item B<imLocale:> I<name> 925=item B<imLocale:> I<name>
654 926
655The 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.
656de_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
657extension to be able to input japanese characters while staying in 929input extension to be able to input japanese characters while staying in
658another locale. option B<-imlocale>. 930another locale; option B<-imlocale>.
659 931
660=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>
661 948
662Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 949Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
663echo 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
664abused if somebody gets 8-bit-clean access to your display, wether 951abused if somebody gets 8-bit-clean access to your display, whether
665throuh a mail client displaying mail bodies unfiltered or though 952through a mail client displaying mail bodies unfiltered or through
666write(1). Therefore, these sequences are disabled by default. (Note 953write(1) or any other means. Therefore, these sequences are disabled by
667that other terminals, including xterm, have these sequences 954default. (Note that many other terminals, including xterm, have these
668enabled by default). You can enable them by setting this boolean 955sequences enabled by default, which doesn't make it safer, though).
669resource or specifying B<-insecure> as an option. At the moment, this 956
670enabled display-answer, locale, findfont, icon label and window title 957You can enable them by setting this boolean resource or specifying
671requests 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.
672 961
673=item B<modifier:> I<modifier> 962=item B<modifier:> I<modifier>
674 963
675Set 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>,
676B<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
691Turn on/off secondary screen scroll (default enabled). If the this 980Turn on/off secondary screen scroll (default enabled). If the this
692option is enabled, scrolls on the secondary screen will change the 981option is enabled, scrolls on the secondary screen will change the
693scrollback buffer and switching to/from the secondary screen will 982scrollback buffer and switching to/from the secondary screen will
694instead scroll the screen up. 983instead scroll the screen up.
695 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
696=item B<keysym.>I<sym>: I<string> 992=item B<keysym.>I<sym>: I<string>
697 993
698Associate I<string> with keysym I<sym> (B<0xFF00 - 0xFFFF>). It may 994Compile I<frills>: Associate I<string> with keysym I<sym>. The
699contain escape values (\a: bell, \b: backspace, \e, \E: escape, \n: 995intervening resource name B<keysym.> cannot be omitted.
700newline, \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,
701tab, \000: octal number) or control characters (^?: delete, ^@: null, 1016C<\000>: octal number) or verbatim control characters (C<^?>: delete,
702^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
703with whitespace. The intervening resource name B<keysym.> cannot be 1018can start or end with whitespace.
704omitted. This resource is only available when compiled with 1019
705KEYSYM_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
1093them. 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
1098Extension names can also be followed by an argument in angle brackets
1099(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for
1100searchable scorllback to Alt/Meta-s). Mentioning the same extension
1101multiple times with different arguments will pass multiple arguments to
1102the extension.
1103
1104Each extension is looked up in the library directories, loaded if
1105necessary, and bound to the current terminal instance.
1106
1107If both of these resources are the empty string, then the perl
1108interpreter will not be initialized. The idea behind two options is that
1109B<perl-ext-common> will be used for extensions that should be available to
1110all instances, while B<perl-ext> is used for specific instances.
1111
1112=item B<perl-eval>: I<string>
1113
1114Perl code to be evaluated when all extensions have been registered. See
1115the @@RXVT_NAME@@perl(3) manpage. Due to security reasons, this resource
1116will be ignored when running setuid/setgid.
1117
1118=item B<perl-lib>: I<path>
1119
1120Colon-separated list of additional directories that hold extension
1121scripts. When looking for extensions specified by the C<perl> resource,
1122@@RXVT_NAME@@ will first look in these directories and then in
1123F<@@RXVT_LIBDIR@@/urxvt/perl/>. Due to security reasons, this resource
1124will be ignored when running setuid/setgid.
1125
1126See the @@RXVT_NAME@@perl(3) manpage.
1127
1128=item B<transient-for>: I<windowid>
1129
1130Sets the WM_TRANSIENT_FOR property to the given window iw.
706 1131
707=back 1132=back
708 1133
709=head1 THE SCROLLBAR 1134=head1 THE SCROLLBAR
710 1135
724the normal text selection/insertion, hold either the Shift or the Meta 1149the normal text selection/insertion, hold either the Shift or the Meta
725(Alt) key while performing the desired mouse action. 1150(Alt) key while performing the desired mouse action.
726 1151
727If mouse reporting mode is active, the normal scrollbar actions are 1152If mouse reporting mode is active, the normal scrollbar actions are
728disabled -- on the assumption that we are using a fullscreen 1153disabled -- on the assumption that we are using a fullscreen
729application. Instead, pressing Button1 and Button3 sends B<ESC[6~> 1154application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
730(Next) and B<ESC[5~> (Prior), respectively. Similarly, clicking on the 1155(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
731up and down arrows sends B<ESC[A> (Up) and B<ESC[B> (Down), 1156up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
732respectively. 1157respectively.
733 1158
734=head1 TEXT SELECTION AND INSERTION 1159=head1 TEXT SELECTION AND INSERTION
735 1160
736The behaviour of text selection and insertion mechanism is similar to 1161The behaviour of text selection and insertion mechanism is similar to
738 1163
739=over 4 1164=over 4
740 1165
741=item B<Selection>: 1166=item B<Selection>:
742 1167
743Left click at the beginning of the region, drag to the end of the 1168Left click at the beginning of the region, drag to the end of the region
744region and release; Right click to extend the marked region; Left 1169and release; Right click to extend the marked region; Left double-click
745double-click to select a word; Left triple-click to select the entire 1170to select a word; Left triple-click to select the entire logical line
746line. 1171(which can span multiple screen lines), unless modified by resource
1172B<tripleclickwords>.
1173
1174Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
1175(Compile: I<frills>) will create a rectangular selection instead of a
1176normal one. In this mode, every selected row becomes its own line in the
1177selection, and trailing whitespace is visually underlined and removed from
1178the selection.
747 1179
748=item B<Insertion>: 1180=item B<Insertion>:
749 1181
750Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in 1182Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in
751an B<@@RXVT_NAME@@> window causes the current text selection to be 1183an B<@@RXVT_NAME@@> window causes the current text selection to be
753 1185
754=back 1186=back
755 1187
756=head1 CHANGING FONTS 1188=head1 CHANGING FONTS
757 1189
758You can change fonts on-the-fly, which is to say cycle through the 1190Changing fonts (or font sizes, respectively) via the keypad is not yet
759default font and others of various sizes, by using B<Shift-KP_Add> and 1191supported in rxvt-unicode. Bug me if you need this.
760B<Shift-KP_Subtract>. Or, alternatively (if enabled) with 1192
761B<@@HOTKEY@@-@@BIGFONT@@> and B<@@HOTKEY@@-@@SMALLFONT@@>, where the 1193You can, however, switch fonts at runtime using escape sequences (and
762actual key can be selected using resources 1194therefore using the menubar), e.g.:
763B<smallfont_key>/B<bigfont_key>. 1195
1196 printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic"
1197
1198rxvt-unicode will automatically re-apply these fonts to the output so far.
764 1199
765=head1 ISO 14755 SUPPORT 1200=head1 ISO 14755 SUPPORT
766 1201
767Partial ISO 14755-support is implemented. that means that pressing 1202ISO 14755 is a standard for entering and viewing unicode characters
1203and character codes using the keyboard. It consists of 4 parts. The
1204first part is available rxvt-unicode has been compiled with
1205C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1206with C<--enable-iso14755>.
768 1207
769Section 5.1: Control and Shift together enters unicode input 1208=over 4
770mode. Entering hex digits composes a Unicode character, pressing space or
771releasing the modifiers commits the keycode and every other key cancels
772the current input character.
773 1209
774Section 5.2: Pressing and immediately releasing Control and Shift together 1210=item * 5.1: Basic method
775enters keycap entry mode for the next key: pressing a function key (tab, 1211
776return etc..) will enter the unicode character corresponding to the given 1212This allows you to enter unicode characters using their hexcode.
777key. 1213
1214Start by pressing and holding both C<Control> and C<Shift>, then enter
1215hex-digits (between one and six). Releasing C<Control> and C<Shift> will
1216commit the character as if it were typed directly. While holding down
1217C<Control> and C<Shift> you can also enter multiple characters by pressing
1218C<Space>, which will commit the current character and lets you start a new
1219one.
1220
1221As an example of use, imagine a business card with a japanese e-mail
1222address, which you cannot type. Fortunately, the card has the e-mail
1223address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
1224by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
1225followed by releasing the modifier keys.
1226
1227=item * 5.2: Keyboard symbols entry method
1228
1229This mode lets you input characters representing the keycap symbols of
1230your keyboard, if representable in the current locale encoding.
1231
1232Start by pressing C<Control> and C<Shift> together, then releasing
1233them. The next special key (cursor keys, home etc.) you enter will not
1234invoke it's usual function but instead will insert the corresponding
1235keycap symbol. The symbol will only be entered when the key has been
1236released, otherwise pressing e.g. C<Shift> would enter the symbol for
1237C<ISO Level 2 Switch>, although your intention might have been to enter a
1238reverse tab (Shift-Tab).
1239
1240=item * 5.3: Screen-selection entry method
1241
1242While this is implemented already (it's basically the selection
1243mechanism), it could be extended by displaying a unicode character map.
1244
1245=item * 5.4: Feedback method for identifying displayed characters for later input
1246
1247This method lets you display the unicode character code associated with
1248characters already displayed.
1249
1250You enter this mode by holding down C<Control> and C<Shift> together, then
1251pressing and holding the left mouse button and moving around. The unicode
1252hex code(s) (it might be a combining character) of the character under the
1253pointer is displayed until you release C<Control> and C<Shift>.
1254
1255In addition to the hex codes it will display the font used to draw this
1256character - due to implementation reasons, characters combined with
1257combining characters, line drawing characters and unknown characters will
1258always be drawn using the built-in support font.
1259
1260=back
1261
1262With respect to conformance, rxvt-unicode is supposed to be compliant to
1263both scenario A and B of ISO 14755, including part 5.2.
778 1264
779=head1 LOGIN STAMP 1265=head1 LOGIN STAMP
780 1266
781B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so 1267B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
782that it can be seen via the I<who(1)> command, and can accept messages. 1268it can be seen via the I<who(1)> command, and can accept messages. To
783To allow this feature, B<@@RXVT_NAME@@> must be installed setuid root on 1269allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
784some systems. 1270on some systems or setgid to root or to some other group on others.
785 1271
786=head1 COLORS AND GRAPHICS 1272=head1 COLORS AND GRAPHICS
787 1273
788In addition to the default foreground and background colours, 1274In addition to the default foreground and background colours,
789B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus 1275B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus
832 1318
833=back 1319=back
834 1320
835=head1 ENVIRONMENT 1321=head1 ENVIRONMENT
836 1322
837B<@@RXVT_NAME@@> sets the environment variables B<TERM>, B<COLORTERM> 1323B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
838and B<COLORFGBG>. The environment variable B<WINDOWID> is set to the X 1324
839window id number of the B<@@RXVT_NAME@@> window and it also uses and 1325=over 4
840sets the environment variable B<DISPLAY> to specify which display 1326
841terminal to use. B<@@RXVT_NAME@@> uses the environment variables 1327=item B<TERM>
842B<RXVTPATH> and B<PATH> to find XPM files. 1328
1329Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1330resources or on the commandline.
1331
1332=item B<COLORTERM>
1333
1334Either C<rxvt>, C<rxvt-xpm>, depending on wether @@RXVT_NAME@@ was
1335compiled with XPM support, and optionally with the added extension
1336C<-mono> to indicate that rxvt-unicode runs on a monochrome screen.
1337
1338=item B<COLORFGBG>
1339
1340Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
1341the colour code used as default foreground/text colour (or the string
1342C<default> to indicate that the default-colour escape sequence is to be
1343used), C<bg> is the colour code used as default background colour (or the
1344string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1345was compiled with XPM support. Libraries like C<ncurses> and C<slang> can
1346(and do) use this information to optimize screen output.
1347
1348=item B<WINDOWID>
1349
1350Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1351window, which usually has subwindows for the scrollbar, the terminal
1352window and so on).
1353
1354=item B<TERMINFO>
1355
1356Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1357C<--with-terminfo=PATH>.
1358
1359=item B<DISPLAY>
1360
1361Used by @@RXVT_NAME@@ to connect to the display and set to the correct
1362display in it's child processes.
1363
1364=item B<SHELL>
1365
1366The shell to be used for command execution, defaults to C</bin/sh>.
1367
1368=item B<RXVTPATH>
1369
1370The path where @@RXVT_NAME@@ looks for support files such as menu and xpm
1371files.
1372
1373=item B<PATH>
1374
1375Used in the same way as C<RXVTPATH>.
1376
1377=item B<RXVT_SOCKET>
1378
1379The unix domain socket path used by @@RXVT_NAME@@c(1) and
1380@@RXVT_NAME@@d(1).
1381
1382Default F<<< $HOME/.rxvt-unicode-I<< <nodename >> >>>.
1383
1384=item B<HOME>
1385
1386Used to locate the default directory for the unix domain socket for
1387daemon communications and to locate various resource files (such as
1388C<.Xdefaults>)
1389
1390=item B<XAPPLRESDIR>
1391
1392Directory where various X resource files are being located.
1393
1394=item B<XENVIRONMENT>
1395
1396If set and accessible, gives the name of a X resource file to be loaded by
1397@@RXVT_NAME@@.
1398
1399=back
843 1400
844=head1 FILES 1401=head1 FILES
845 1402
846=over 4 1403=over 4
847 1404
848=item B</etc/utmp>
849
850System file for login records.
851
852=item B</usr/lib/X11/rgb.txt> 1405=item B</usr/lib/X11/rgb.txt>
853 1406
854Color names. 1407Color names.
855 1408
856=back 1409=back
857 1410
858=head1 FREQUENTLY ASKED QUESTIONS (FAQ) 1411=head1 SEE ALSO
1412
1413@@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)
1414
1415=head1 CURRENT PROJECT COORDINATOR
859 1416
860=over 4 1417=over 4
861 1418
862=item How do I know which rxvt-unicode version I'm using?
863
864The version number is displayed with the usage (-h). For rxvt-unicode
865version 2.14 and later, the escape sequence C<ESC[8n> sets the window
866title to the version number.
867
868=item Mouse cut/paste suddenly no longer works.
869
870Make sure that mouse reporting is actually turned off since killing
871some editors prematurely may leave the mouse in mouse report mode. I've
872heard that tcsh may use mouse reporting unless it otherwise specified. A
873quick check is to see if cut/paste works when the Alt or Shift keys are
874depressed. See @@RXVT_NAME@@(7)
875
876=item What's with this bold/blink stuff?
877
878If no bold colour is set via C<colorBD:>, bold will invert text using the
879standard foreground colour.
880
881For the standard background colour, blinking will actually make the
882text blink when compiled with C<--enable-blinking>. with standard
883colours. Without C<--enable-blinking>, the blink attribute will be
884ignored.
885
886On ANSI colours, bold/blink attributes are used to set high-intensity
887foreground/background colors.
888
889color0-7 are the low-intensity colors.
890
891color8-15 are the corresponding high-intensity colors.
892
893=item I don't like the screen colors. How do I change them?
894
895You can change the screen colors at run-time using F<~/.Xdefaults>
896resources (or as long-options).
897
898Here are values that are supposed to resemble a VGA screen,
899including the murky brown that passes for low-intensity yellow:
900
901 Rxvt*color0: #000000
902 Rxvt*color1: #A80000
903 Rxvt*color2: #00A800
904 Rxvt*color3: #A8A800
905 Rxvt*color4: #0000A8
906 Rxvt*color5: #A800A8
907 Rxvt*color6: #00A8A8
908 Rxvt*color7: #A8A8A8
909
910 Rxvt*color8: #000054
911 Rxvt*color9: #FF0054
912 Rxvt*color10: #00FF54
913 Rxvt*color11: #FFFF54
914 Rxvt*color12: #0000FF
915 Rxvt*color13: #FF00FF
916 Rxvt*color14: #00FFFF
917 Rxvt*color15: #FFFFFF
918
919=item What's with the strange Backspace/Delete key behaviour?
920
921Assuming that the physical Backspace key corresponds to the
922BackSpace keysym (not likely for Linux ... see the following
923question) there are two standard values that can be used for
924Backspace: C<^H> and C<^?>.
925
926Historically, either value is correct, but rxvt-unicode adopts the debian
927policy of using C<^?> when unsure, because it's the one only only correct
928choice :).
929
930Rxvt-unicode tries to inherit the current stty settings and uses the value
931of `erase' to guess the value for backspace. If rxvt-unicode wasn't
932started from a terminal (say, from a menu or by remote shell), then the
933system value of `erase', which corresponds to CERASE in <termios.h>, will
934be used (which may not be the same as your stty setting).
935
936For starting a new rxvt-unicode:
937
938 # use Backspace = ^H
939 $ stty erase ^H
940 $ @@RXVT_NAME@@
941
942 # use Backspace = ^?
943 $ stty erase ^?
944 $ @@RXVT_NAME@@
945
946Toggle with "ESC[36h" / "ESC[36l" as documented in @@RXVT_NAME@@(7).
947
948For an existing rxvt-unicode:
949
950 # use Backspace = ^H
951 $ stty erase ^H
952 $ echo -n "^[[36h"
953
954 # use Backspace = ^?
955 $ stty erase ^?
956 $ echo -n "^[[36l"
957
958This helps satisfy some of the Backspace discrepancies that occur, but
959if you use Backspace = C<^H>, make sure that the termcap/terminfo value
960properly reflects that.
961
962The Delete key is a another casualty of the ill-defined Backspace problem.
963To avoid confusion between the Backspace and Delete keys, the Delete
964key has been assigned an escape sequence to match the vt100 for Execute
965(ESC[3~) and is in the supplied termcap/terminfo.
966
967Some other Backspace problems:
968
969some editors use termcap/terminfo,
970some editors (vim I'm told) expect Backspace = ^H,
971GNU Emacs (and Emacs-like editors) use ^H for help.
972
973Perhaps someday this will all be resolved in a consistent manner.
974
975=item I don't like the key-bindings. How do I change them?
976
977There are some compile-time selections available via configure. Unless
978you have run "configure" with the C<--disable-resources> option you can
979use the `keysym' resource to alter the keystrings associated with keysym
9800xFF00 - 0xFFFF (function, cursor keys, etc).
981
982Here's an example for a tn3270 session started using `@@RXVT_NAME@@ -name tn3270'
983
984 !# ----- special uses ------:
985 ! tn3270 login, remap function and arrow keys.
986 tn3270*font: *clean-bold-*-*--15-*
987
988 ! keysym - used by rxvt only
989 ! Delete - ^D
990 tn3270*keysym.0xFFFF: \004
991
992 ! Home - ^A
993 tn3270*keysym.0xFF50: \001
994 ! Left - ^B
995 tn3270*keysym.0xFF51: \002
996 ! Up - ^P
997 tn3270*keysym.0xFF52: \020
998 ! Right - ^F
999 tn3270*keysym.0xFF53: \006
1000 ! Down - ^N
1001 tn3270*keysym.0xFF54: \016
1002 ! End - ^E
1003 tn3270*keysym.0xFF57: \005
1004
1005 ! F1 - F12
1006 tn3270*keysym.0xFFBE: \e1
1007 tn3270*keysym.0xFFBF: \e2
1008 tn3270*keysym.0xFFC0: \e3
1009 tn3270*keysym.0xFFC1: \e4
1010 tn3270*keysym.0xFFC2: \e5
1011 tn3270*keysym.0xFFC3: \e6
1012 tn3270*keysym.0xFFC4: \e7
1013 tn3270*keysym.0xFFC5: \e8
1014 tn3270*keysym.0xFFC6: \e9
1015 tn3270*keysym.0xFFC7: \e0
1016 tn3270*keysym.0xFFC8: \e-
1017 tn3270*keysym.0xFFC9: \e=
1018
1019 ! map Prior/Next to F7/F8
1020 tn3270*keysym.0xFF55: \e7
1021 tn3270*keysym.0xFF56: \e8
1022
1023=item I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
1024How do I make use of them? For example, the Sun Keyboard type 4
1025has the following mappings that rxvt-unicode doesn't recognize.
1026
1027 KP_Insert == Insert
1028 F22 == Print
1029 F27 == Home
1030 F29 == Prior
1031 F33 == End
1032 F35 == Next
1033
1034Rather than have rxvt-unicode try to accomodate all the various possible keyboard
1035mappings, it is better to use `xmodmap' to remap the keys as required for
1036your particular machine.
1037
1038=item How do I distinguish if I'm running rxvt-unicode or a regular xterm?
1039I need this to decide about setting colors etc.
1040
1041rxvt and rxvt-unicode always export the variable "COLORTERM", so you can
1042check and see if that is set. Note that several programs, JED, slrn,
1043Midnight Commander automatically check this variable to decide whether or
1044not to use color.
1045
1046=item How do I set the correct, full IP address for the DISPLAY variable?
1047
1048If you've compiled rxvt-unicode with DISPLAY_IS_IP and ahve enabled
1049insecure mode then it is possible to use the following shell script
1050snippets to correctly set the display. If your version of rxvt-unicode
1051wasn't also compiled with ESCZ_ANSWER (as assumed in these snippets) then
1052the COLORTERM variable can be used to distinguish rxvt-unicode from a
1053regular xterm.
1054
1055Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
1056snippets:
1057
1058 # Bourne/Korn/POSIX family of shells:
1059 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
1060 if [ ${TERM:-foo} = xterm ]; then
1061 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
1062 echo -n '^[Z'
1063 read term_id
1064 stty icanon echo
1065 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
1066 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
1067 read DISPLAY # set it in our local shell
1068 fi
1069 fi
1070
1071=item How do I compile the manual pages for myself?
1072
1073You need to have a recent version of perl installed as F</usr/bin/perl>,
1074one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to
1075the doc subdirectory and enter C<make alldoc>.
1076
1077=back
1078
1079=head1 SEE ALSO
1080
1081@@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1082
1083=head1 BUGS
1084
1085Check the BUGS file for an up-to-date list.
1086
1087Cursor change support is not yet implemented.
1088
1089Click-and-drag doesn't work with X11 mouse report overriding.
1090
1091=head1 CURRENT PROJECT COORDINATOR
1092
1093=over 4
1094
1095=item Project Coordinator 1419=item Project Coordinator
1096 1420
1097@@RXVTMAINT@@ L<@@RXVT_MAINTEMAIL@@> 1421Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >>
1098 1422
1099=item Web page maintainter 1423L<http://software.schmorp.de/#rxvt-unicode>
1100
1101@@RXVTWEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@>
1102
1103L<@@RXVT_WEBPAGE@@>
1104 1424
1105=back 1425=back
1106 1426
1107=head1 AUTHORS 1427=head1 AUTHORS
1108 1428
1133=item Geoff Wing L<< <gcw@pobox.com> >> 1453=item Geoff Wing L<< <gcw@pobox.com> >>
1134 1454
1135Rewrote screen display and text selection routines. Project Coordinator 1455Rewrote screen display and text selection routines. Project Coordinator
1136(changes.txt 2.4.6 - rxvt-unicode) 1456(changes.txt 2.4.6 - rxvt-unicode)
1137 1457
1138=item Marc Alexander Lehmann L<< <rxvt@schmorp.de> >> 1458=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >>
1139 1459
1140Forked rxvt-unicode, rewrote most of the display code and internal 1460Forked rxvt-unicode, rewrote most of the display code and internal
1141character handling to store text in unicode, improve xterm 1461character handling to store text in unicode, improve xterm
1142compatibility and apply numerous other bugfixes and extensions. 1462compatibility and apply numerous other bugfixes and extensions.
1143 1463

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines