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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines