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

Comparing rxvt-unicode/doc/rxvt.1.pod (file contents):
Revision 1.5 by root, Sat Aug 14 03:00:32 2004 UTC vs.
Revision 1.85 by root, Wed Jan 4 20:43:37 2006 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines