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

Comparing rxvt-unicode/doc/rxvt.1.pod (file contents):
Revision 1.12 by root, Mon Aug 16 02:09:28 2004 UTC vs.
Revision 1.169 by root, Wed Nov 5 00:14:18 2008 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
17This document is also available on the World-Wide-Web at
18L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod>.
19
20=head1 FREQUENTLY ASKED QUESTIONS
21
22See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of
23frequently asked questions and answer to them and some common
24problems. That document is also accessible on the World-Wide-Web at
25L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod>.
26
17=head1 RXVT-UNICODE VS. RXVT 27=head1 RXVT-UNICODE VS. RXVT
18 28
19Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode 29Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
20internally. That means it can store and display most scripts in the 30internally. That means it can store and display most scripts in the
21world. Being a terminal emulator, however, some things are very difficult, 31world. Being a terminal emulator, however, some things are very difficult,
22especially cursive scripts such as arabic, vertically written scripts 32especially cursive scripts such as arabic, vertically written scripts
23like mongolian or scripts requiring extremely complex combining rules, 33like mongolian or scripts requiring extremely complex combining rules,
24like tibetan or devenagari. Don't expect pretty output when using these 34like tibetan or devanagari. Don't expect pretty output when using these
25scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work 35scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
26fine, though. A somewhat difficult case are left-to-right scripts, such 36fine, though. A somewhat difficult case are right-to-left scripts, such
27as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms 37as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
28belong into the application, not the terminal emulator (too many things -- 38belong in the application, not the terminal emulator (too many things --
29such as cursor-movement while editing -- break othwerwise), but that might 39such as cursor-movement while editing -- break otherwise), but that might
30change. 40change.
31 41
32If you are looking for a terminal that supports more exotic scripts, let 42If you are looking for a terminal that supports more exotic scripts, let
33me recommend C<mlterm>, which is a very userfriendly, lean and clean 43me recommend C<mlterm>, which is a very user friendly, lean and clean
34terminal emulator. In fact, the reason rxvt-unicode was born was solely 44terminal emulator. In fact, the reason rxvt-unicode was born was solely
35because the author couldn't get C<mlterm> to use one font for latin1 and 45because the author couldn't get C<mlterm> to use one font for latin1 and
36another for japanese. 46another for japanese.
37 47
38Therefore another design rationale was the use of multiple fonts to 48Therefore another design rationale was the use of multiple fonts to
39display characters: The idea of a single unicode font which many other 49display characters: The idea of a single unicode font which many other
40programs force onto it's users never made sense to me: You should be able 50programs force onto its users never made sense to me: You should be able
41to choose any font for any script freely. 51to choose any font for any script freely.
42 52
43Apart from that, rxvt-unicode is also much better internationalised than 53Apart from that, rxvt-unicode is also much better internationalised than
44it's predecessor, supports things such as XFT and ISO 14755 that are handy 54its predecessor, supports things such as XFT and ISO 14755 that are handy
45in i18n-environments, is faster, and has a lot less bugs than the original 55in i18n-environments, is faster, and has a lot bugs less than the original
46rxvt. This all in addition to dozens of other small improvements. 56rxvt. This all in addition to dozens of other small improvements.
47 57
48It is still faithfully following the original rxvt idea of being lean 58It is still faithfully following the original rxvt idea of being lean
49and nice on resources: for example, you can still configure rxvt-unicode 59and nice on resources: for example, you can still configure rxvt-unicode
50without most of it's features to get a lean binary. It also comes with 60without most of its features to get a lean binary. It also comes with
51a client/daemon pair that lets you open any number of terminal windows 61a client/daemon pair that lets you open any number of terminal windows
52from within a single process, which makes startup time very fast and 62from within a single process, which makes startup time very fast and
53drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and 63drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
54@@RXVT_NAME@@c(1) (client). 64@@RXVT_NAME@@c(1) (client).
55 65
56It also makes technical information about escape sequences (which have 66It also makes technical information about escape sequences (which have
57been extended) easier accessible: see @@RXVT_NAME@@(7) for technical 67been extended) more accessible: see @@RXVT_NAME@@(7) for technical
58reference documentation (escape sequences etc.) and the FAQ section at the 68reference documentation (escape sequences etc.).
59end of this document.
60 69
61=head1 OPTIONS 70=head1 OPTIONS
62 71
63The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed 72The B<@@RXVT_NAME@@> options (mostly a subset of I<xterm>'s) are listed
64below. In keeping with the smaller-is-better philosophy, options may be 73below. In keeping with the smaller-is-better philosophy, options may be
83 92
84Print out a message describing available options. 93Print out a message describing available options.
85 94
86=item B<-display> I<displayname> 95=item B<-display> I<displayname>
87 96
88Attempt to open a window on the named X display (B<-d> still 97Attempt to open a window on the named X display (the older form B<-d>
89respected). In the absence of this option, the display specified by the 98is still respected. but deprecated). In the absence of this option, the
90B<DISPLAY> environment variable is used. 99display specified by the B<DISPLAY> environment variable is used.
100
101=item B<-depth> I<bitdepth>
102
103Compile I<xft>: Attempt to find a visual with the given bit depth;
104resource B<depth>.
105
106[Please note that many X servers (and libXft) are buggy with
107respect to C<-depth 32> and/or alpha channels, and will cause all sorts
108of graphical corruption. This is harmless, but we can't do anything about
109this, so watch out]
91 110
92=item B<-geometry> I<geom> 111=item B<-geometry> I<geom>
93 112
94Window geometry (B<-g> still respected); resource B<geometry>. 113Window geometry (B<-g> still respected); resource B<geometry>.
95 114
97 116
98Turn on/off simulated reverse video; resource B<reverseVideo>. 117Turn on/off simulated reverse video; resource B<reverseVideo>.
99 118
100=item B<-j>|B<+j> 119=item B<-j>|B<+j>
101 120
102Turn on/off jump scrolling; resource B<jumpScroll>. 121Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>.
103 122
104=item B<-ip>|B<+ip> 123=item B<-ss>|B<+ss>
105 124
106Turn on/off inheriting parent window's pixmap. Alternative form is 125Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>.
107B<-tr>; resource B<inheritPixmap>. 126
127=item B<-tr>|B<+tr>
128
129Turn on/off illusion of a transparent window background; resource B<transparent>.
130
131B<-ip> is still accepted as an obsolete alias but will be removed in
132future versions.
133
134I<Please address all transparency related issues to Sasha Vasko at
135sasha@aftercode.net. Read the FAQ (man 7 @@RXVT_NAME@@)!>
108 136
109=item B<-fade> I<number> 137=item B<-fade> I<number>
110 138
111Fade the text by the given percentage when focus is lost. 139Fade the text by the given percentage when focus is lost. Small values
140fade a little only, 100 completely replaces all colours by the fade
141colour; resource B<fading>.
142
143=item B<-fadecolor> I<colour>
144
145Fade to this colour when fading is used (see B<-fade>). The default colour
146is opaque black. resource B<fadeColor>.
112 147
113=item B<-tint> I<colour> 148=item B<-tint> I<colour>
114 149
115Tint the transparent background pixmap with the given colour when 150Tint the transparent background pixmap with the given colour when
116transparency is enabled with B<-tr> or B<-ip>. See also the B<-sh> 151transparency is enabled with B<-tr>. This only works for
152non-tiled backgrounds, currently. See also the B<-sh> option that can be
117option that can be used to brighten or darken the image in addition to 153used to brighten or darken the image in addition to tinting it.
118tinting it. 154Please note that certain tint colours can be applied on the server-side,
155thus yielding performance gain of two orders of magnitude. These colours are:
156blue, red, green, cyan, magenta, yellow, and those close to them. Also
157pure black and pure white colors essentially mean no tinting; resource
158I<tintColor>. Example:
119 159
120=item B<-sh> 160 @@RXVT_NAME@@ -tr -tint blue -sh 40
121 161
162=item B<-sh> I<number>
163
122I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent 164Darken (0 .. 100) or lighten (100 .. 200) the transparent
123background image in addition to tinting it (i.e. B<-tint> must be 165background image in addition to (or instead of) tinting it;
124specified, too). 166resource I<shading>.
167
168=item B<-blt> I<string>
169
170Specify background blending type. If background pixmap is specified
171at the same time as transparency - such pixmap will be blended over
172transparency image, using method specified. Supported values are :
173B<add>, B<alphablend>, B<allanon> - color values averaging, B<colorize>,
174B<darken>, B<diff>, B<dissipate>, B<hue>, B<lighten>, B<overlay>,
175B<saturate>, B<screen>, B<sub>, B<tint>, B<value>. The default is
176alpha-blending. Compile I<afterimage>; resource I<blendType>.
177
178=item B<-blr> I<HxV>
179
180Apply Gaussian Blur with the specified radii to the transparent
181background image. If single number is specified - both vertical and
182horizontal radii are considered to be the same. Setting one of the
183radii to 1 and another to a large number creates interesting effects
184on some backgrounds. Maximum radius value is 128. Compile I<afterimage>;
185resource I<blurRadius>.
186
187=item B<-icon> I<file>
188
189Compile I<afterimage>: Use the specified image as application icon. This
190is used by many window managers, taskbars and pagers to represent the
191application window; resource I<iconFile>.
125 192
126=item B<-bg> I<colour> 193=item B<-bg> I<colour>
127 194
128Window background colour; resource B<background>. 195Window background colour; resource B<background>.
129 196
130=item B<-fg> I<colour> 197=item B<-fg> I<colour>
131 198
132Window foreground colour; resource B<foreground>. 199Window foreground colour; resource B<foreground>.
133 200
134=item B<-pixmap> I<file[;geom]> 201=item B<-pixmap> I<file[;geom[:op1][:op2][...]]>
135 202
136Compile I<XPM>: Specify XPM file for the background and also optionally 203Compile I<afterimage>: Specify image file for the background and also
137specify its scaling with a geometry string. Note you may need to add 204optionally specify its scaling with a geometry string. Note you may need to
138quotes to avoid special shell interpretation of the `;' in the 205add quotes to avoid special shell interpretation of the C<;> in the
139command-line; resource B<backgroundPixmap>. 206command-line; for more details see resource B<backgroundPixmap>.
140 207
141=item B<-cr> I<colour> 208=item B<-cr> I<colour>
142 209
143The cursor colour; resource B<cursorColor>. 210The cursor colour; resource B<cursorColor>.
144 211
150 217
151The mouse pointer background colour; resource B<pointerColor2>. 218The mouse pointer background colour; resource B<pointerColor2>.
152 219
153=item B<-bd> I<colour> 220=item B<-bd> I<colour>
154 221
155The colour of the border between the xterm scrollbar and the text; 222The colour of the border around the text area and between the scrollbar and the text;
156resource B<borderColor>. 223resource B<borderColor>.
157 224
158=item B<-fn> I<fontname> 225=item B<-fn> I<fontlist>
159 226
160Select the fonts to be used. This is a comma seperated list of font 227Select the fonts to be used. This is a comma separated list of font names
161names that are used in turn when trying to display Unicode characters. 228that are checked in order when trying to find glyphs for characters. The
162The first font defines the cell size for characters; other fonts might 229first font defines the cell size for characters; other fonts might be
163be smaller, but not larger. A reasonable default font list is always 230smaller, but not (in general) larger. A (hopefully) reasonable default
164appended to it. resource B<font>. 231font list is always appended to it. See resource B<font> for more details.
232
233In short, to specify an X11 core font, just specify its name or prefix it
234with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
235e.g.:
236
237 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
238 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
165 239
166See also the question "How does rxvt-unicode choose fonts?" in the FAQ 240See also the question "How does rxvt-unicode choose fonts?" in the FAQ
167section. 241section of @@RXVT_NAME@@(7).
168 242
243=item B<-fb> I<fontlist>
244
245Compile I<font-styles>: The bold font list to use when B<bold> characters
246are to be printed. See resource B<boldFont> for details.
247
248=item B<-fi> I<fontlist>
249
250Compile I<font-styles>: The italic font list to use when I<italic>
251characters are to be printed. See resource B<italicFont> for details.
252
253=item B<-fbi> I<fontlist>
254
255Compile I<font-styles>: The bold italic font list to use when B<< I<bold
256italic> >> characters are to be printed. See resource B<boldItalicFont>
257for details.
258
169=item B<-rb>|B<+rb> 259=item B<-is>|B<+is>
170 260
171Enable "real bold" support. When this option is on, bold text will be 261Compile I<font-styles>: Bold/Blink font styles imply high intensity
172displayed using the first available bold font in the font list. Bold 262foreground/background (default). See resource B<intensityStyles> for
173fonts should thus be specified in the font list after their 263details.
174corresponding regular fonts. If no bold font can be found, a regular
175font will be used. resource B<realBold>.
176 264
177=item B<-name> I<name> 265=item B<-name> I<name>
178 266
179Specify the application name under which resources are to be obtained, 267Specify the application name under which resources are to be obtained,
180rather than the default executable file name. Name should not contain 268rather than the default executable file name. Name should not contain
196 284
197=item B<-sb>|B<+sb> 285=item B<-sb>|B<+sb>
198 286
199Turn on/off scrollbar; resource B<scrollBar>. 287Turn on/off scrollbar; resource B<scrollBar>.
200 288
289=item B<-sr>|B<+sr>
290
291Put scrollbar on right/left; resource B<scrollBar_right>.
292
293=item B<-st>|B<+st>
294
295Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
296resource B<scrollBar_floating>.
297
201=item B<-si>|B<+si> 298=item B<-si>|B<+si>
202 299
203Turn on/off scroll-to-bottom on TTY output inhibit; resource 300Turn on/off scroll-to-bottom on TTY output inhibit; resource
204B<scrollTtyOutput> has opposite effect. 301B<scrollTtyOutput> has opposite effect.
205 302
212 309
213Turn on/off scrolling with the scrollback buffer as new lines appear. 310Turn on/off scrolling with the scrollback buffer as new lines appear.
214This only takes effect if B<-si> is also given; resource 311This only takes effect if B<-si> is also given; resource
215B<scrollWithBuffer>. 312B<scrollWithBuffer>.
216 313
217=item B<-sr>|B<+sr>
218
219Put scrollbar on right/left; resource B<scrollBar_right>.
220
221=item B<-st>|B<+st> 314=item B<-ptab>|B<+ptab>
222 315
223Display normal (non XTerm/NeXT) scrollbar without/with a trough; 316If enabled (default), "Horizontal Tab" characters are being stored as
224resource B<scrollBar_floating>. 317actual wide characters in the screen buffer, which makes it possible to
318select and paste them. Since a horizontal tab is a cursor movement and
319not an actual glyph, this can sometimes be visually annoying as the cursor
320on a tab character is displayed as a wide cursor; resource B<pastableTabs>.
225 321
226=item B<-bc>|B<+bc> 322=item B<-bc>|B<+bc>
227 323
228Blink the cursor; resource B<cursorBlink>. 324Blink the cursor; resource B<cursorBlink>.
229 325
250 346
251=item B<-bl> 347=item B<-bl>
252 348
253Compile I<frills>: Set MWM hints to request a borderless window, i.e. 349Compile I<frills>: Set MWM hints to request a borderless window, i.e.
254if honoured by the WM, the rxvt-unicode window will not have window 350if honoured by the WM, the rxvt-unicode window will not have window
255decorations; resource B<borderLess>. 351decorations; resource B<borderLess>. If the window manager does not
352support MWM hints (e.g. kwin), enables override-redirect mode.
353
354=item B<-override-redirect>
355
356Compile I<frills>: Sets override-redirect on the window; resource
357B<override-redirect>.
358
359=item B<-sbg>
360
361Compile I<frills>: Disable the usage of the built-in block graphics/line
362drawing characters and just rely on what the specified fonts provide. Use
363this if you have a good font and want to use its block graphic glyphs;
364resource B<skipBuiltinGlyphs>.
256 365
257=item B<-lsp> I<number> 366=item B<-lsp> I<number>
258 367
259Compile I<linespace>: Lines (pixel height) to insert between each row 368Compile I<frills>: Lines (pixel height) to insert between each row of
260of the display; resource B<linespace>. 369the display. Useful to work around font rendering problems; resource
370B<lineSpace>.
261 371
262=item B<-tn> I<termname> 372=item B<-tn> I<termname>
263 373
264This option specifies the name of the terminal type to be set in the 374This option specifies the name of the terminal type to be set in the
265B<TERM> environment variable. This terminal type must exist in the 375B<TERM> environment variable. This terminal type must exist in the
274given on the command line. If this option is used, it must be the last 384given on the command line. If this option is used, it must be the last
275on the command-line. If there is no B<-e> option then the default is to 385on the command-line. If there is no B<-e> option then the default is to
276run the program specified by the B<SHELL> environment variable or, 386run the program specified by the B<SHELL> environment variable or,
277failing that, I<sh(1)>. 387failing that, I<sh(1)>.
278 388
389Please note that you must specify a program with arguments. If you want to
390run shell commands, you have to specify the shell, like this:
391
392 @@RXVT_NAME@@ -e sh -c "shell commands"
393
279=item B<-title> I<text> 394=item B<-title> I<text>
280 395
281Window title (B<-T> still respected); the default title is the basename 396Window title (B<-T> still respected); the default title is the basename
282of the program specified after the B<-e> option, if any, otherwise the 397of the program specified after the B<-e> option, if any, otherwise the
283application name; resource B<title>. 398application name; resource B<title>.
301 416
302Compile I<XIM>: input method name. resource B<inputMethod>. 417Compile I<XIM>: input method name. resource B<inputMethod>.
303 418
304=item B<-imlocale> I<string> 419=item B<-imlocale> I<string>
305 420
306The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 421The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
307de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 422C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
308extension to be able to input japanese characters while staying in 423input extension to be able to input japanese characters while staying in
309another locale. 424another locale. resource B<imLocale>.
425
426=item B<-imfont> I<fontset>
427
428Set the font set to use for the X Input Method, see resource B<imFont>
429for more info.
430
431=item B<-tcw>
432
433Change the meaning of triple-click selection with the left mouse
434button. Only effective when the original (non-perl) selection code is
435in-use. Instead of selecting a full line it will extend the selection to
436the end of the logical line only. resource B<tripleclickwords>.
310 437
311=item B<-insecure> 438=item B<-insecure>
312 439
313Enable "insecure" mode, which currently enables most of the escape 440Enable "insecure" mode, which currently enables most of the escape
314sequences that echo strings. See the resource B<insecure> for more 441sequences that echo strings. See the resource B<insecure> for more
328=item B<-ssr>|B<+ssr> 455=item B<-ssr>|B<+ssr>
329 456
330Turn on/off secondary screen scroll (default enabled); resource 457Turn on/off secondary screen scroll (default enabled); resource
331B<secondaryScroll>. 458B<secondaryScroll>.
332 459
460=item B<-hold>|B<+hold>
461
462Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
463will not immediately destroy its window when the program executed within
464it exits. Instead, it will wait till it is being killed or closed by the
465user; resource B<hold>.
466
467=item B<-cd> I<path>
468
469Sets the working directory for the shell (or the command specified via
470B<-e>). The I<path> must be an absolute path and it must exist for
471@@RXVT_NAME@@ to start; resource B<chdir>.
472
333=item B<-xrm> I<resourcestring> 473=item B<-xrm> I<string>
334 474
335No effect on rxvt-unicode. Simply passes through an argument to be made 475Works like the X Toolkit option of the same name, by adding the I<string>
336available in the instance's argument list. Appears in I<WM_COMMAND> in 476as if it were specified in a resource file. Resource values specified this
337some window managers. 477way take precedence over all other resource specifications.
478
479Note that you need to use the I<same> syntax as in the .Xdefaults file,
480e.g. C<*.background: black>. Also note that all @@RXVT_NAME@@-specific
481options can be specified as long-options on the commandline, so use
482of B<-xrm> is mostly limited to cases where you want to specify other
483resources (e.g. for input methods) or for compatibility with other
484programs.
485
486=item B<-keysym.>I<sym> I<string>
487
488Remap a key symbol. See resource B<keysym>.
489
490=item B<-embed> I<windowid>
491
492Tells @@RXVT_NAME@@ to embed its windows into an already-existing window,
493which enables applications to easily embed a terminal.
494
495Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
496shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
497quite a bit, so don't expect it to keep some specific state. It's best to
498create an extra subwindow for @@RXVT_NAME@@ and leave it alone.
499
500The window will not be destroyed when @@RXVT_NAME@@ exits.
501
502It might be useful to know that @@RXVT_NAME@@ will not close file
503descriptors passed to it (except for stdin/out/err, of course), so you
504can use file descriptors to communicate with the programs within the
505terminal. This works regardless of whether the C<-embed> option was used or
506not.
507
508Here is a short Gtk2-perl snippet that illustrates how this option can be
509used (a longer example is in F<doc/embed>):
510
511 my $rxvt = new Gtk2::Socket;
512 $rxvt->signal_connect_after (realize => sub {
513 my $xid = $_[0]->window->get_xid;
514 system "@@RXVT_NAME@@ -embed $xid &";
515 });
516
517=item B<-pty-fd> I<file descriptor>
518
519Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty
520pair but instead use the given file descriptor as the tty master. This is
521useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
522without having to run a program within it.
523
524If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
525entries and will not tinker with pty/tty permissions - you have to do that
526yourself if you want that.
527
528As an extremely special case, specifying C<-1> will completely suppress
529pty/tty operations, which is probably only useful in conjunction with some
530perl extension that manages the terminal.
531
532Here is a example in perl that illustrates how this option can be used (a
533longer example is in F<doc/pty-fd>):
534
535 use IO::Pty;
536 use Fcntl;
537
538 my $pty = new IO::Pty;
539 fcntl $pty, F_SETFD, 0; # clear close-on-exec
540 system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&";
541 close $pty;
542
543 # now communicate with rxvt
544 my $slave = $pty->slave;
545 while (<$slave>) { print $slave "got <$_>\n" }
546
547=item B<-pe> I<string>
548
549Comma-separated list of perl extension scripts to use (or not to use) in
550this terminal instance. See resource B<perl-ext> for details.
338 551
339=back 552=back
340 553
341=head1 RESOURCES (available also as long-options) 554=head1 RESOURCES
342 555
343Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long 556Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long
344options) compiled into your version. 557options) compiled into your version. All resources are also available as
558long-options.
345 559
346There are two different methods that @@RXVT_NAME@@ can use to get the 560You can set and change the resources using X11 tools like B<xrdb>. Many
347Xresource data: using the X libraries (Xrm*-functions) or internal 561distribution do also load settings from the B<~/.Xresources> file when X
348Xresources reader (B<~/.Xdefaults>). For the first method (ie. 562starts. @@RXVT_NAME@@ will consult the following files/resources in order,
349B<@@RXVT_NAME@@ -h> lists B<XGetDefaults>), you can set and change the 563with later settings overwriting earlier ones:
350resources using X11 tools like B<xset>. Many distribution do also load
351settings from the B<~/.Xresources> file when X starts.
352 564
353If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h> 565 1. system-wide app-defaults file, either locale-dependent OR global
354lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults 566 2. app-defaults file in $XAPPLRESDIR
355set in XAPPLOADDIR/URxvt (compile-time defined: usually 567 3. RESOURCE_MANAGER property on root-window OR $HOME/.Xdefaults
356B</usr/lib/X11/app-defaults/URxvt>) and resources set in 568 4. SCREEN_RESOURCES for the current screen
357B<~/.Xdefaults>, or B<~/.Xresources> if B<~/.Xdefaults> does not exist. 569 5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
570 6. resources specified via -xrm on the commandline
571
358Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two 572Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class
359class names: B<XTerm> and B<URxvt>. The class name B<Rxvt> allows 573names: B<Rxvt> and B<URxvt>. The class name B<Rxvt> allows resources
360resources common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be 574common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be easily
361easily configured, while the class name B<URxvt> allows resources 575configured, while the class name B<URxvt> allows resources unique to
362unique to B<@@RXVT_NAME@@>, notably colours and key-handling, to be 576B<@@RXVT_NAME@@>, to be shared between different B<@@RXVT_NAME@@>
363shared between different B<@@RXVT_NAME@@> configurations. If no 577configurations. If no resources are specified, suitable defaults will
364resources are specified, suitable defaults will be used. Command-line 578be used. Command-line arguments can be used to override resource
365arguments can be used to override resource settings. The following 579settings. The following resources are supported (you might want to
366resources are allowed: 580check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl
581extensions not documented here):
367 582
368=over 4 583=over 4
584
585=item B<depth:> I<bitdepth>
586
587Compile I<xft>: Attempt to find a visual with the given bit depth;
588option B<-depth>.
589
590=item B<buffered:> I<boolean>
591
592Compile I<xft>: Turn on/off double-buffering for xft (default enabled).
593On some card/driver combination enabling it slightly decreases
594performance, on most it greatly helps it. The slowdown is small, so it
595should normally be enabled.
369 596
370=item B<geometry:> I<geom> 597=item B<geometry:> I<geom>
371 598
372Create the window with the specified X window geometry [default 80x24]; 599Create the window with the specified X window geometry [default 80x24];
373option B<-geometry>. 600option B<-geometry>.
389high-intensity (bold = bright foreground, blink = bright background) 616high-intensity (bold = bright foreground, blink = bright background)
390colours. The canonical names are as follows: 0=black, 1=red, 2=green, 617colours. The canonical names are as follows: 0=black, 1=red, 2=green,
3913=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour 6183=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
392names used are listed in the B<COLORS AND GRAPHICS> section. 619names used are listed in the B<COLORS AND GRAPHICS> section.
393 620
621Colours higher than 15 cannot be set using resources (yet), but can be
622changed using an escape command (see @@RXVT_NAME@@(7)).
623
624Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
62588 colour support). Colours 80-87 are evenly spaces grey steps.
626
394=item B<colorBD:> I<colour> 627=item B<colorBD:> I<colour>
395 628
629=item B<colorIT:> I<colour>
630
396Use the specified colour to display bold characters when the foreground 631Use the specified colour to display bold or italic characters when the
397colour is the default. This option will be ignored if B<realBold> is 632foreground colour is the default. If font styles are not available
398enabled. 633(Compile I<styles>) and this option is unset, reverse video is used instead.
399 634
400=item B<colorUL:> I<colour> 635=item B<colorUL:> I<colour>
401 636
402Use the specified colour to display underlined characters when the 637Use the specified colour to display underlined characters when the
403foreground colour is the default. 638foreground colour is the default.
404 639
405=item B<colorRV:> I<colour> 640=item B<colorRV:> I<colour>
406 641
407Use the specified colour as the background for reverse video 642Use the specified colour as the background for reverse video characters
408characters. 643when OPTION_HC is disabled (--disable-frills).
644
645=item B<underlineColor:> I<colour>
646
647If set, use the specified colour as the colour for the underline
648itself. If unset, use the foreground colour.
409 649
410=item B<cursorColor:> I<colour> 650=item B<cursorColor:> I<colour>
411 651
412Use the specified colour for the cursor. The default is to use the 652Use the specified colour for the cursor. The default is to use the
413foreground colour; option B<-cr>. 653foreground colour; option B<-cr>.
424option B<-rv>. B<False>: regular screen colours [default]; option 664option B<-rv>. B<False>: regular screen colours [default]; option
425B<+rv>. See note in B<COLORS AND GRAPHICS> section. 665B<+rv>. See note in B<COLORS AND GRAPHICS> section.
426 666
427=item B<jumpScroll:> I<boolean> 667=item B<jumpScroll:> I<boolean>
428 668
429B<True>: specify that jump scrolling should be used. When scrolling 669B<True>: specify that jump scrolling should be used. When receiving lots
430quickly, fewer screen updates are performed [default]; option B<-j>. 670of lines, @@RXVT_NAME@@ will only scroll once a whole screen height of lines
671has been read, resulting in fewer updates while still displaying every
672received line; option B<-j>.
673
431B<False>: specify that smooth scrolling should be used; option B<+j>. 674B<False>: specify that smooth scrolling should be used. @@RXVT_NAME@@ will
675force a screen refresh on each new line it received; option B<+j>.
432 676
433=item B<inheritPixmap:> I<boolean> 677=item B<skipScroll:> I<boolean>
434 678
435B<True>: make the background inherit the parent windows' pixmap, giving 679B<True>: (the default) specify that skip scrolling should be used. When
436artificial transparency. B<False>: do not inherit the parent windows' 680receiving lots of lines, @@RXVT_NAME@@ will only scroll once in a while
437pixmap. 681(around 60 times per second), resulting in far fewer updates. This can
682result in @@RXVT_NAME@@ not ever displaying some of the lines it receives;
683option B<-ss>.
684
685B<False>: specify that everything is to be displayed, even
686if the refresh is too fast for the human eye to read anything (or the
687monitor to display anything); option B<+ss>.
688
689=item B<transparent:> I<boolean>
690
691Turn on/off illusion of a transparent window background.
692
693B<inheritPixmap> is still accepted as an obsolete alias but will be removed in
694future versions.
695
696I<Please address all transparency related issues to Sasha Vasko at
697sasha@aftercode.net. Read the FAQ (man 7 @@RXVT_NAME@@)!>
438 698
439=item B<fading:> I<number> 699=item B<fading:> I<number>
440 700
441Fade the text by the given percentage when focus is lost. 701Fade the text by the given percentage when focus is lost; option B<-fade>.
702
703=item B<fadeColor:> I<colour>
704
705Fade to this colour, when fading is used (see B<fading:>). The default
706colour is black; option B<-fadecolor>.
442 707
443=item B<tintColor:> I<colour> 708=item B<tintColor:> I<colour>
444 709
445Tint the transparent background pixmap with the given colour. 710Tint the transparent background pixmap with the given colour; option
711B<-tint>.
446 712
447=item B<shading:> I<number> 713=item B<shading:> I<number>
448 714
449Darken (0 .. 100) or lighten (-1 .. -100) the transparent background 715Darken (0 .. 100) or lighten (-1 .. -100) the transparent background image
450image in addition to tinting it. 716in addition to tinting it; option B<-sh>.
451 717
718=item B<blendType:> I<string>
719
720Specify background blending type; option B<-blt>.
721
452=item B<fading:> I<number> 722=item B<blurRadius:> I<number>
453 723
454Scale the tint colour by the given percentage. 724Apply gaussian blur with the specified radius to the transparent
725background image; option B<-blr>.
726
727=item B<iconFile:> I<file>
728
729Set the application icon pixmap; option B<-icon>.
455 730
456=item B<scrollColor:> I<colour> 731=item B<scrollColor:> I<colour>
457 732
458Use the specified colour for the scrollbar [default #B2B2B2]. 733Use the specified colour for the scrollbar [default #B2B2B2].
459 734
460=item B<troughColor:> I<colour> 735=item B<troughColor:> I<colour>
461 736
462Use the specified colour for the scrollbar's trough area [default 737Use the specified colour for the scrollbar's trough area [default
463#969696]. Only relevant for normal (non XTerm/NeXT) scrollbar. 738#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar.
464 739
740=item B<borderColor:> I<colour>
741
742The colour of the border around the text area and between the scrollbar
743and the text.
744
465=item B<backgroundPixmap:> I<file[;geom]> 745=item B<backgroundPixmap:> I<file[;geom[:op1][:op2][...]]>
466 746
467Use the specified XPM file (note the `.xpm' extension is optional) for 747Use the specified image file for the background and also
468the background and also optionally specify its scaling with a geometry 748optionally specify its scaling with a geometry string B<WxH+X+Y>,
469string B<WxH+X+Y>, in which B<"W" / "H"> specify the 749(default C<0x0+50+50>) in which B<"W" / "H"> specify the
470horizontal/vertical scale (percent) and B<"X" / "Y"> locate the image 750horizontal/vertical scale (percent), and B<"X" / "Y"> locate the image
471centre (percent). A scale of 0 displays the image with tiling. A scale 751centre (percent). A scale of 0 displays the image with tiling. A scale
472of 1 displays the image without any scaling. A scale of 2 to 9 752of 1 displays the image without any scaling. A scale of 2 to 9 specifies
473specifies an integer number of images in that direction. No image will 753an integer number of images in that direction. No image will be magnified
474be magnified beyond 10 times its original size. The maximum permitted 754beyond 10 times its original size. The maximum permitted scale is 1000.
475scale is 1000. [default 0x0+50+50] 755Additional operations can be specified after colon B<:op1:op2...>.
756Supported operations are:
476 757
477=item B<menu:> I<file[;tag]> 758 tile force background image to be tiled and not scaled. Equivalent to 0x0
759 propscale will scale image keeping proportions
760 auto will scale image to match window size. Equivalent to 100x100
761 hscale will scale image horizontally to the window size
762 vscale will scale image vertically to the window size
763 scale will scale image to match window size
764 root will tile image as if it was a root window background, auto-adjusting
765 whenever terminal window moves
478 766
479Read in the specified menu file (note the `.menu' extension is 767If used in conjunction with B<-tr> option, the specified pixmap will be
480optional) and also optionally specify a starting tag to find. See the 768blended over transparency image using either alpha-blending, or any
481reference documentation for details on the syntax for the menuBar. 769other blending type, specified with B<-blt "type"> option.
482 770
483=item B<path:> I<path> 771=item B<path:> I<path>
484 772
485Specify the colon-delimited search path for finding files (XPM and 773Specify the colon-delimited search path for finding background image files.
486menus), in addition to the paths specified by the B<RXVTPATH> and
487B<PATH> environment variables.
488 774
489=item B<font:> I<fontname> 775=item B<font:> I<fontlist>
490 776
491Select the fonts to be used. This is a comma seperated list of font 777Select the fonts to be used. This is a comma separated list of font names
492names that are used in turn when trying to display Unicode characters. 778that are checked in order when trying to find glyphs for characters. The
493The first font defines the cell size for characters; other fonts might 779first font defines the cell size for characters; other fonts might be
494be smaller, but not larger. A reasonable default font list is always 780smaller, but not (in general) larger. A (hopefully) reasonable default
495appended to it. option B<-fn>. 781font list is always appended to it; option B<-fn>.
496 782
497=item B<realBold:> I<boolean> 783Each font can either be a standard X11 core font (XLFD) name, with
784optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>.
498 785
499B<True>: Enable "real bold" support. When this option is on, bold text 786In addition, each font can be prefixed with additional hints and
500will be displayed using the first available bold font in the font list. 787specifications enclosed in square brackets (C<[]>). The only available
501Bold fonts should thus be specified in the font list after their 788hint currently is C<codeset=codeset-name>, and this is only used for Xft
502corresponding regular fonts. If no bold font can be found, a regular 789fonts.
503font will be used. option B<-rb>. B<False>: Display bold text in a
504regular font, using the color specified with B<colorBD>; option B<+rb>.
505 790
506=item B<selectstyle:> I<mode> 791For example, this font resource
507 792
508Set mouse selection style to B<old> which is 2.20, B<oldword> which is 793 URxvt.font: 9x15bold,\
509xterm style with 2.20 old word selection, or anything else which gives 794 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
510xterm style selection. 795 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
796 [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \
797 xft:Code2000:antialias=false
511 798
512=item B<scrollstyle:> I<mode> 799specifies five fonts to be used. The first one is C<9x15bold> (actually
800the iso8859-1 version of the second font), which is the base font (because
801it is named first) and thus defines the character cell grid to be 9 pixels
802wide and 15 pixels high.
513 803
514Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is 804The second font is just used to add additional unicode characters not in
515the author's favourite.. 805the base font, likewise the third, which is unfortunately non-bold, but
806the bold version of the font does contain less characters, so this is a
807useful supplement.
808
809The third font is an Xft font with aliasing turned off, and the characters
810are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
811contains other characters, but we are not interested in them.
812
813The last font is a useful catch-all font that supplies most of the
814remaining unicode characters.
815
816=item B<boldFont:> I<fontlist>
817
818=item B<italicFont:> I<fontlist>
819
820=item B<boldItalicFont:> I<fontlist>
821
822The font list to use for displaying B<bold>, I<italic> or B<< I<bold
823italic> >> characters, respectively.
824
825If specified and non-empty, then the syntax is the same as for the
826B<font>-resource, and the given font list will be used as is, which makes
827it possible to substitute completely different font styles for bold and
828italic.
829
830If unset (the default), a suitable font list will be synthesized by
831"morphing" the normal text font list into the desired shape. If that is
832not possible, replacement fonts of the desired shape will be tried.
833
834If set, but empty, then this specific style is disabled and the normal
835text font will being used for the given style.
836
837=item B<intensityStyles:> I<boolean>
838
839When font styles are not enabled, or this option is enabled (B<True>,
840option B<-is>, the default), bold/blink font styles imply high
841intensity foreground/background colours. Disabling this option (B<False>,
842option B<+is>) disables this behaviour, the high intensity colours are not
843reachable.
516 844
517=item B<title:> I<string> 845=item B<title:> I<string>
518 846
519Set window title string, the default title is the command-line 847Set window title string, the default title is the command-line
520specified after the B<-e> option, if any, otherwise the application 848specified after the B<-e> option, if any, otherwise the application
529=item B<mapAlert:> I<boolean> 857=item B<mapAlert:> I<boolean>
530 858
531B<True>: de-iconify (map) on receipt of a bell character. B<False>: no 859B<True>: de-iconify (map) on receipt of a bell character. B<False>: no
532de-iconify (map) on receipt of a bell character [default]. 860de-iconify (map) on receipt of a bell character [default].
533 861
862=item B<urgentOnBell:> I<boolean>
863
864B<True>: set the urgency hint for the wm on receipt of a bell character.
865B<False>: do not set the urgency hint [default].
866
867@@RXVT_NAME@@ resets the urgency hint on every focus change.
868
534=item B<visualBell:> I<boolean> 869=item B<visualBell:> I<boolean>
535 870
536B<True>: use visual bell on receipt of a bell character; option B<-vb>. 871B<True>: use visual bell on receipt of a bell character; option B<-vb>.
537B<False>: no visual bell [default]; option B<+vb>. 872B<False>: no visual bell [default]; option B<+vb>.
538 873
552 887
553Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use 888Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
554B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or 889B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or
555B<Shift-Print> to include the scrollback as well. 890B<Shift-Print> to include the scrollback as well.
556 891
892The string will be interpreted as if typed into the shell as-is.
893
894Example:
895
896 URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
897
898This creates a new file in your home directory with the screen contents
899every time you hit C<Print>.
900
901=item B<scrollstyle:> I<mode>
902
903Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
904the author's favourite.
905
557=item B<scrollBar:> I<boolean> 906=item B<scrollBar:> I<boolean>
558 907
559B<True>: enable the scrollbar [default]; option B<-sb>. B<False>: 908B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
560disable the scrollbar; option B<+sb>. 909disable the scrollbar; option B<+sb>.
561 910
580B<False>: do not scroll to bottom when tty receives output; option 929B<False>: do not scroll to bottom when tty receives output; option
581B<+si>. 930B<+si>.
582 931
583=item B<scrollWithBuffer:> I<boolean> 932=item B<scrollWithBuffer:> I<boolean>
584 933
585B<True>: scroll with scrollback buffer when tty recieves new lines (and 934B<True>: scroll with scrollback buffer when tty receives new lines (and
586B<scrollTtyOutput> is False); option B<+sw>. B<False>: do not scroll 935B<scrollTtyOutput> is False); option B<-sw>. B<False>: do not scroll
587with scrollback buffer when tty recieves new lines; option B<-sw>. 936with scrollback buffer when tty receives new lines; option B<+sw>.
588 937
589=item B<scrollTtyKeypress:> I<boolean> 938=item B<scrollTtyKeypress:> I<boolean>
590 939
591B<True>: scroll to bottom when a non-special key is pressed. Special keys 940B<True>: scroll to bottom when a non-special key is pressed. Special keys
592are those which are intercepted by rxvt-unicode for special handling and 941are those which are intercepted by rxvt-unicode for special handling and
611=item B<borderLess:> I<boolean> 960=item B<borderLess:> I<boolean>
612 961
613Set MWM hints to request a borderless window, i.e. if honoured by the 962Set MWM hints to request a borderless window, i.e. if honoured by the
614WM, the rxvt-unicode window will not have window decorations; option B<-bl>. 963WM, the rxvt-unicode window will not have window decorations; option B<-bl>.
615 964
965=item B<skipBuiltinGlyphs:> I<boolean>
966
967Compile I<frills>: Disable the usage of the built-in block graphics/line
968drawing characters and just rely on what the specified fonts provide. Use
969this if you have a good font and want to use its block graphic glyphs;
970option B<-sbg>.
971
616=item B<termName:> I<termname> 972=item B<termName:> I<termname>
617 973
618Specifies the terminal type name to be set in the B<TERM> environment 974Specifies the terminal type name to be set in the B<TERM> environment
619variable; option B<-tn>. 975variable; option B<-tn>.
620 976
621=item B<linespace:> I<number> 977=item B<lineSpace:> I<number>
622 978
623Specifies number of lines (pixel height) to insert between each row of 979Specifies number of lines (pixel height) to insert between each row of
624the display [default 0]; option B<-lsp>. 980the display [default 0]; option B<-lsp>.
625 981
626=item B<meta8:> I<boolean> 982=item B<meta8:> I<boolean>
630 986
631=item B<mouseWheelScrollPage:> I<boolean> 987=item B<mouseWheelScrollPage:> I<boolean>
632 988
633B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel 989B<True>: the mouse wheel scrolls a page full. B<False>: the mouse wheel
634scrolls five lines [default]. 990scrolls five lines [default].
991
992=item B<pastableTabs:> I<boolean>
993
994B<True>: store tabs as wide characters. B<False>: interpret tabs as cursor
995movement only; option C<-ptab>.
635 996
636=item B<cursorBlink:> I<boolean> 997=item B<cursorBlink:> I<boolean>
637 998
638B<True>: blink the cursor. B<False>: do not blink the cursor [default]; 999B<True>: blink the cursor. B<False>: do not blink the cursor [default];
639option B<-bc>. 1000option B<-bc>.
652 1013
653Mouse pointer background colour. 1014Mouse pointer background colour.
654 1015
655=item B<pointerBlankDelay:> I<number> 1016=item B<pointerBlankDelay:> I<number>
656 1017
657Specifies number of seconds before blanking the pointer [default 2]. 1018Specifies number of seconds before blanking the pointer [default 2]. Use a
1019large number (e.g. C<987654321>) to effectively disable the timeout.
658 1020
659=item B<backspacekey:> I<string> 1021=item B<backspacekey:> I<string>
660 1022
661The string to send when the backspace key is pressed. If set to B<DEC> 1023The string to send when the backspace key is pressed. If set to B<DEC>
662or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace> 1024or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace>
669pressed. If unset it will send the sequence traditionally associated 1031pressed. If unset it will send the sequence traditionally associated
670with the B<Execute> key. 1032with the B<Execute> key.
671 1033
672=item B<cutchars:> I<string> 1034=item B<cutchars:> I<string>
673 1035
674The characters used as delimiters for double-click word selection. The 1036The characters used as delimiters for double-click word selection
675built-in default: 1037(whitespace delimiting is added automatically if resource is given).
676 1038
1039When the perl selection extension is in use (the default if compiled
1040in, see the @@RXVT_NAME@@perl(3) manpage), a suitable regex using these
1041characters will be created (if the resource exists, otherwise, no regex
1042will be created). In this mode, characters outside ISO-8859-1 can be used.
1043
1044When the selection extension is not used, only ISO-8859-1 characters can
1045be used. If not specified, the built-in default is used:
1046
677B<< BACKSLASH `"'&()*,;<=>?@[]{|} >> 1047B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
678 1048
679=item B<preeditType:> I<style> 1049=item B<preeditType:> I<style>
680 1050
681B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 1051B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
682 1052
684 1054
685I<name> of inputMethod to use; option B<-im>. 1055I<name> of inputMethod to use; option B<-im>.
686 1056
687=item B<imLocale:> I<name> 1057=item B<imLocale:> I<name>
688 1058
689The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 1059The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
690de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 1060C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
691extension to be able to input japanese characters while staying in 1061input extension to be able to input japanese characters while staying in
692another locale. option B<-imlocale>. 1062another locale; option B<-imlocale>.
693 1063
694=item B<insecure> 1064=item B<imFont:> I<fontset>
1065
1066Specify the font-set used for XIM styles C<OverTheSpot> or
1067C<OffTheSpot>. It must be a standard X font set (XLFD patterns separated
1068by commas), i.e. it's not in the same format as the other font lists used
1069in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
1070found, preferably one or two pixels differing in size to the base font.
1071option B<-imfont>.
1072
1073=item B<tripleclickwords:> I<boolean>
1074
1075Change the meaning of triple-click selection with the left mouse
1076button. Instead of selecting a full line it will extend the selection to
1077the end of the logical line only; option B<-tcw>.
1078
1079=item B<insecure:> I<boolean>
695 1080
696Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 1081Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
697echo arbitrary strings like the icon name or the locale. This could be 1082echo arbitrary strings like the icon name or the locale. This could be
698abused if somebody gets 8-bit-clean access to your display, wether 1083abused if somebody gets 8-bit-clean access to your display, whether
699throuh a mail client displaying mail bodies unfiltered or though 1084through a mail client displaying mail bodies unfiltered or through
700write(1). Therefore, these sequences are disabled by default. (Note 1085write(1) or any other means. Therefore, these sequences are disabled by
701that other terminals, including xterm, have these sequences 1086default. (Note that many other terminals, including xterm, have these
702enabled by default). You can enable them by setting this boolean 1087sequences enabled by default, which doesn't make it safer, though).
703resource or specifying B<-insecure> as an option. At the moment, this 1088
704enabled display-answer, locale, findfont, icon label and window title 1089You can enable them by setting this boolean resource or specifying
705requests as well as dynamic menubar dispatch. 1090B<-insecure> as an option. At the moment, this enables display-answer,
1091locale, findfont, icon label and window title requests.
706 1092
707=item B<modifier:> I<modifier> 1093=item B<modifier:> I<modifier>
708 1094
709Set the key to be interpreted as the Meta key to: B<alt>, B<meta>, 1095Set the key to be interpreted as the Meta key to: B<alt>, B<meta>,
710B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option 1096B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option
714 1100
715Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E) 1101Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E)
716character is passed through. It may contain escape values as described 1102character is passed through. It may contain escape values as described
717in the entry on B<keysym> following. 1103in the entry on B<keysym> following.
718 1104
719=item B<secondaryScreen:> I<bool> 1105=item B<secondaryScreen:> I<boolean>
720 1106
721Turn on/off secondary screen (default enabled). 1107Turn on/off secondary screen (default enabled).
722 1108
723=item B<secondaryScroll:> I<bool> 1109=item B<secondaryScroll:> I<boolean>
724 1110
725Turn on/off secondary screen scroll (default enabled). If the this 1111Turn on/off secondary screen scroll (default enabled). If this
726option is enabled, scrolls on the secondary screen will change the 1112option is enabled, scrolls on the secondary screen will change the
727scrollback buffer and switching to/from the secondary screen will 1113scrollback buffer and, when secondaryScreen is off, switching
728instead scroll the screen up. 1114to/from the secondary screen will instead scroll the screen up.
1115
1116=item B<hold>: I<boolean>
1117
1118Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
1119will not immediately destroy its window when the program executed within
1120it exits. Instead, it will wait till it is being killed or closed by the
1121user.
1122
1123=item B<chdir>: I<path>
1124
1125Sets the working directory for the shell (or the command specified via
1126B<-e>). The I<path> must be an absolute path and it must exist for
1127@@RXVT_NAME@@ to start. If it isn't specified then the current working
1128directory will be used; option B<-cd>.
729 1129
730=item B<keysym.>I<sym>: I<string> 1130=item B<keysym.>I<sym>: I<string>
731 1131
732Associate I<string> with keysym I<sym> (B<0xFF00 - 0xFFFF>). It may 1132Compile I<frills>: Associate I<string> with keysym I<sym>. The
733contain escape values (\a: bell, \b: backspace, \e, \E: escape, \n:
734newline, \r: return, \t:
735tab, \000: octal number) or control characters (^?: delete, ^@: null,
736^A ...) and may enclosed with double quotes so that it can start or end
737with whitespace. The intervening resource name B<keysym.> cannot be 1133intervening resource name B<keysym.> cannot be omitted.
738omitted. This resource is only available when compiled with 1134
739KEYSYM_RESOURCE. 1135The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be
1136any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>,
1137B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>,
1138and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>,
1139B<2>, B<3>, B<4>, B<5>.
1140
1141The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
1142whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
1143keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1144current application keymap mode state.
1145
1146The spellings of I<key> can be obtained by using B<xev>(1) command or
1147searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and
1148omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex
1149keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not
1150performed in an exact manner; however, the closest match is assured.
1151
1152I<string> may contain escape values (C<\n>: newline, C<\000>: octal
1153number), see RESOURCES in C<man 7 X> for futher details.
1154
1155You can define a range of keysyms in one shot by providing a I<string>
1156with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/'
1157should be a character not used by the strings.
1158
1159Its usage can be demonstrated by an example:
1160
1161 URxvt.keysym.M-C-0x61: list|\033<M-C-|abc|>
1162
1163The above line is equivalent to the following three lines:
1164
1165 URxvt.keysym.Meta-Control-0x61: \033<M-C-a>
1166 URxvt.keysym.Meta-Control-0x62: \033<M-C-b>
1167 URxvt.keysym.Meta-Control-0x63: \033<M-C-c>
1168
1169If I<string> takes the form of C<command:STRING>, the specified B<STRING>
1170is interpreted and executed as @@RXVT_NAME@@'s control sequence. For
1171example the following means "change the current locale to C<zh_CN.GBK>
1172when Control-Meta-c is being pressed":
1173
1174 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1175
1176If I<string> takes the form C<perl:STRING>, then the specified B<STRING>
1177is passed to the C<on_keyboard_command> perl handler. See the @@RXVT_NAME@@perl(3)
1178manpage. For example, the F<selection> extension (activated via
1179C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1180
1181 URxvt.keysym.M-C-c: perl:selection:rot13
1182
1183Due the the large number of modifier combinations, a defined key mapping
1184will match if at I<at least> the specified identifiers are being set, and
1185no other key mappings with those and more bits are being defined. That
1186means that defining a key map for C<a> will automatically provide
1187definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1188mappings themselves.
1189
1190Unfortunately, this will override built-in key mappings. For example
1191if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s
1192C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the
1193user-defined keymap using the C<builtin:> replacement:
1194
1195 URxvt.keysym.Insert: <my insert key sequence>
1196 URxvt.keysym.S-Insert: builtin:
1197
1198The first line defines a mapping for C<Insert> and I<any> combination
1199of modifiers. The second line re-establishes the default mapping for
1200C<Shift-Insert>.
1201
1202The following example will map Control-Meta-1 and Control-Meta-2 to
1203the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1204font-switching at runtime:
1205
1206 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1207 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1208
1209Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1210info):
1211
1212 URxvt.keysym.M-C-3: command:\033[8;25;80t
1213 URxvt.keysym.M-C-4: command:\033[8;48;110t
1214
1215=item B<perl-ext-common>: I<string>
1216
1217=item B<perl-ext>: I<string>
1218
1219Comma-separated list(s) of perl extension scripts (default: C<default>) to
1220use in this terminal instance; option B<-pe>.
1221
1222Extension names can be prefixed with a C<-> sign to prohibit using
1223them. This can be useful to selectively disable some extensions loaded
1224by default, or specified via the C<perl-ext-common> resource. For
1225example, C<default,-selection> will use all the default extension except
1226C<selection>.
1227
1228Extension names can also be followed by an argument in angle brackets
1229(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for
1230searchable scrollback to Alt/Meta-s). Mentioning the same extension
1231multiple times with different arguments will pass multiple arguments to
1232the extension.
1233
1234Each extension is looked up in the library directories, loaded if
1235necessary, and bound to the current terminal instance.
1236
1237If both of these resources are the empty string, then the perl
1238interpreter will not be initialized. The idea behind two options is that
1239B<perl-ext-common> will be used for extensions that should be available to
1240all instances, while B<perl-ext> is used for specific instances.
1241
1242=item B<perl-eval>: I<string>
1243
1244Perl code to be evaluated when all extensions have been registered. See
1245the @@RXVT_NAME@@perl(3) manpage.
1246
1247=item B<perl-lib>: I<path>
1248
1249Colon-separated list of additional directories that hold extension
1250scripts. When looking for extensions specified by the C<perl> resource,
1251@@RXVT_NAME@@ will first look in these directories and then in
1252F<@@RXVT_LIBDIR@@/urxvt/perl/>.
1253
1254See the @@RXVT_NAME@@perl(3) manpage.
1255
1256=item B<< selection.pattern-I<idx> >>: I<perl-regex>
1257
1258Additional selection patterns, see the @@RXVT_NAME@@perl(3) manpage for
1259details.
1260
1261=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1262
1263Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1264for details.
1265
1266=item B<searchable-scrollback:> I<keysym>
1267
1268Sets the hotkey that starts the incremental scrollback buffer search
1269(default: C<M-s>).
1270
1271=item B<urlLauncher>: I<string>
1272
1273Specifies the program to be started with a URL argument. Used by the
1274C<selection-popup> and C<matcher> perl extensions.
1275
1276=item B<transient-for>: I<windowid>
1277
1278Compile I<frills>: Sets the WM_TRANSIENT_FOR property to the given window id.
1279
1280=item B<override-redirect>: I<boolean>
1281
1282Compile I<frills>: Sets override-redirect for the terminal window, making
1283it almost invisible to window managers; option B<-override-redirect>.
1284
1285=item B<iso14755_52:> I<boolean>
1286
1287Turn on/off ISO 14755 5.2 mode (default enabled).
740 1288
741=back 1289=back
742 1290
743=head1 THE SCROLLBAR 1291=head1 THE SCROLLBAR
744 1292
758the normal text selection/insertion, hold either the Shift or the Meta 1306the normal text selection/insertion, hold either the Shift or the Meta
759(Alt) key while performing the desired mouse action. 1307(Alt) key while performing the desired mouse action.
760 1308
761If mouse reporting mode is active, the normal scrollbar actions are 1309If mouse reporting mode is active, the normal scrollbar actions are
762disabled -- on the assumption that we are using a fullscreen 1310disabled -- on the assumption that we are using a fullscreen
763application. Instead, pressing Button1 and Button3 sends B<ESC[6~> 1311application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
764(Next) and B<ESC[5~> (Prior), respectively. Similarly, clicking on the 1312(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
765up and down arrows sends B<ESC[A> (Up) and B<ESC[B> (Down), 1313up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
766respectively. 1314respectively.
767 1315
768=head1 TEXT SELECTION AND INSERTION 1316=head1 THE SELECTION: SELECTING AND PASTING TEXT
769 1317
770The behaviour of text selection and insertion mechanism is similar to 1318The behaviour of text selection and insertion/pasting mechanism is similar
771I<xterm>(1). 1319to I<xterm>(1).
772 1320
773=over 4 1321=over 4
774 1322
775=item B<Selection>: 1323=item B<Selecting>:
776 1324
777Left click at the beginning of the region, drag to the end of the 1325Left click at the beginning of the region, drag to the end of the region
778region and release; Right click to extend the marked region; Left 1326and release; Right click to extend the marked region; Left double-click
779double-click to select a word; Left triple-click to select the entire 1327to select a word; Left triple-click to select the entire logical line
780line. 1328(which can span multiple screen lines), unless modified by resource
1329B<tripleclickwords>.
781 1330
1331Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
1332(Compile: I<frills>) will create a rectangular selection instead of a
1333normal one. In this mode, every selected row becomes its own line in the
1334selection, and trailing whitespace is visually underlined and removed from
1335the selection.
1336
782=item B<Insertion>: 1337=item B<Pasting>:
783 1338
784Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in 1339Pressing and releasing the Middle mouse button in an B<@@RXVT_NAME@@>
785an B<@@RXVT_NAME@@> window causes the current text selection to be 1340window causes the value of the PRIMARY selection (or CLIPBOARD with the
786inserted as if it had been typed on the keyboard. 1341B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1342
1343Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1344inserted too.
787 1345
788=back 1346=back
789 1347
790=head1 CHANGING FONTS 1348=head1 CHANGING FONTS
791 1349
792Changing fonts (or font sizes, respectively) via the keypad is not yet 1350Changing fonts (or font sizes, respectively) via the keypad is not yet
793supported in rxvt-unicode. Bug me if you need this. 1351supported in rxvt-unicode. Bug me if you need this.
794 1352
795You can, however, switch fonts at runtime using escape sequences (and 1353You can, however, switch fonts at runtime using escape sequences, e.g.:
796therefore using the menubar), e.g.:
797 1354
798 printf '\e]701;%s\007' "9x15bold,xft:Kochi Gothic" 1355 printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic"
1356
1357You can use keyboard shortcuts, too:
1358
1359 URxvt.keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007
1360 URxvt.keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
799 1361
800rxvt-unicode will automatically re-apply these fonts to the output so far. 1362rxvt-unicode will automatically re-apply these fonts to the output so far.
801 1363
802=head1 ISO 14755 SUPPORT 1364=head1 ISO 14755 SUPPORT
803 1365
804ISO 14755 is a standard for entering and viewing unicode characters 1366ISO 14755 is a standard for entering and viewing unicode characters
805and character codes using the keyboard. It consists of 4 parts. The 1367and character codes using the keyboard. It consists of 4 parts. The
806first part is available rxvt-unicode has been compiled with 1368first part is available if rxvt-unicode has been compiled with
807C<--enable-frills>, the rest is available when rxvt-unicode was compiled 1369C<--enable-frills>, the rest is available when rxvt-unicode was compiled
808with C<--enable-iso14755>. 1370with C<--enable-iso14755>.
809 1371
810=over 4 1372=over 4
811 1373
812=item 5.1: Basic method 1374=item * 5.1: Basic method
813 1375
814This allows you to enter unicode characters using their hexcode. 1376This allows you to enter unicode characters using their hexcode.
815 1377
816Start by pressing and holding both C<Control> and C<Shift>, then enter 1378Start by pressing and holding both C<Control> and C<Shift>, then enter
817hex-digits (between one and six). Releasing C<Control> and C<Shift> will 1379hex-digits (between one and six). Releasing C<Control> and C<Shift> will
824address, which you cannot type. Fortunately, the card has the e-mail 1386address, which you cannot type. Fortunately, the card has the e-mail
825address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily 1387address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
826by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>, 1388by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
827followed by releasing the modifier keys. 1389followed by releasing the modifier keys.
828 1390
829=item 5.2: Keyboard symbols entry method 1391=item * 5.2: Keyboard symbols entry method
830 1392
831This mode lets you input characters representing the keycap symbols of 1393This mode lets you input characters representing the keycap symbols of
832your keyboard, if representable in the current locale encoding. 1394your keyboard, if representable in the current locale encoding.
833 1395
834Start by pressing C<Control> and C<Shift> together, then releasing 1396Start by pressing C<Control> and C<Shift> together, then releasing
835them. The next special key (cursor keys, home etc.) you enter will not 1397them. The next special key (cursor keys, home etc.) you enter will not
836invoke it's usual function but instead will insert the corresponding 1398invoke its usual function but instead will insert the corresponding
837keycap symbol. The symbol will only be entered when the key has been 1399keycap symbol. The symbol will only be entered when the key has been
838released, otherwise pressing e.g. C<Shift> would enter the symbol for 1400released, otherwise pressing e.g. C<Shift> would enter the symbol for
839C<ISO Level 2 Switch>, although your intention might have beenm to enter a 1401C<ISO Level 2 Switch>, although your intention might have been to enter a
840reverse tab (Shift-Tab). 1402reverse tab (Shift-Tab).
841 1403
842=item 5.3: Screen-selection entry method 1404=item * 5.3: Screen-selection entry method
843 1405
844While this is implemented already (it's basically the selection 1406While this is implemented already (it's basically the selection
845mechanism), it could be extended by displaying a unicode character map. 1407mechanism), it could be extended by displaying a unicode character map.
846 1408
847=item 5.4: Feedback method for identifying displayed characters for later input 1409=item * 5.4: Feedback method for identifying displayed characters for later input
848 1410
849This method lets you display the unicode character code associated with 1411This method lets you display the unicode character code associated with
850characters already displayed. 1412characters already displayed.
851 1413
852You enter this mode by holding down C<Control> and C<Shift> together, then 1414You enter this mode by holding down C<Control> and C<Shift> together, then
853pressing and holding the left mouse button and moving around. The unicode 1415pressing and holding the left mouse button and moving around. The unicode
854hex code(s) (it might be a combining character) of the character under the 1416hex code(s) (it might be a combining character) of the character under the
855pointer is displayed until you release C<Control> and C<Shift>. 1417pointer is displayed until you release C<Control> and C<Shift>.
856 1418
1419In addition to the hex codes it will display the font used to draw this
1420character - due to implementation reasons, characters combined with
1421combining characters, line drawing characters and unknown characters will
1422always be drawn using the built-in support font.
1423
857=back 1424=back
858 1425
859With respect to conformance, rxvt-unicode is supposed to be compliant to 1426With respect to conformance, rxvt-unicode is supposed to be compliant to
860both scenario A and B of ISO 14755, including part 5.2. 1427both scenario A and B of ISO 14755, including part 5.2.
861 1428
862=head1 LOGIN STAMP 1429=head1 LOGIN STAMP
863 1430
864B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so 1431B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
865that it can be seen via the I<who(1)> command, and can accept messages. 1432it can be seen via the I<who(1)> command, and can accept messages. To
866To allow this feature, B<@@RXVT_NAME@@> must be installed setuid root on 1433allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
867some systems. 1434on some systems or setgid to root or to some other group on others.
868 1435
869=head1 COLORS AND GRAPHICS 1436=head1 COLORS AND GRAPHICS
870 1437
871In addition to the default foreground and background colours, 1438In addition to the default foreground and background colours,
872B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus 1439B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus
873high-intensity bold/blink versions of the same). Here is a list of the 1440high-intensity bold/blink versions of the same). Here is a list of the
874colours with their B<rgb.txt> names. 1441colours with their names.
875 1442
876=begin table 1443=begin table
877 1444
878 B<color0> (black) = Black 1445 B<color0> (black) = Black
879 B<color1> (red) = Red3 1446 B<color1> (red) = Red3
899It is also possible to specify the colour values of B<foreground>, 1466It is also possible to specify the colour values of B<foreground>,
900B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as 1467B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as
901a number 0-15, as a convenient shorthand to reference the colour name of 1468a number 0-15, as a convenient shorthand to reference the colour name of
902color0-color15. 1469color0-color15.
903 1470
1471In addition to the colours defined above, @@RXVT_NAME@@ offers an
1472additional 72 colours. The first 64 of those (with indices 16 to 79)
1473consist of a 4*4*4 RGB colour cube (i.e. I<index = r * 16 + g * 4 + b +
147416>), followed by 8 additional shades of gray (with indices 80 to 87).
1475
1476Together, all those colours implement the 88 colour xterm colours. Only
1477the first 16 can be changed using resources currently, the rest can only
1478be changed via command sequences ("escape codes").
1479
904Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by 1480Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by
905always swapping the foreground/background colours. This is in contrast to 1481always swapping the foreground/background colours. This is in contrast to
906I<xterm>(1) where the colours are only swapped if they have not otherwise 1482I<xterm>(1) where the colours are only swapped if they have not otherwise
907been specified. For example, 1483been specified. For example,
908 1484
913would yield White on Black, while on I<xterm>(1) it would yield Black 1489would yield White on Black, while on I<xterm>(1) it would yield Black
914on White. 1490on White.
915 1491
916=back 1492=back
917 1493
918=head1 FREQUENTLY ASKED QUESTIONS (FAQ) 1494=head2 ALPHA CHANNEL SUPPORT
1495
1496If Xft support has been compiled in and as long as Xft/Xrender/X don't get
1497their act together, rxvt-unicode will do it's own alpha channel management:
1498
1499You can prefix any color with an opaquenes percentage enclosed in
1500brackets, i.e. C<[percent]>, where C<percent> is a decimal percentage
1501(0-100) that specifies the opacity of the color, where C<0> is completely
1502transparent and C<100> is completely opaque. For example, C<[50]red> is a
1503half-transparent red, while C<[95]#00ff00> is an almost opaque green. This
1504is the recommended format to specify transparency values, and works with
1505all ways to specify a colour.
1506
1507For complete control, rxvt-unicode also supports
1508C<rgba:rrrr/gggg/bbbb/aaaa> (exactly four hex digits/component) colour
1509specifications, where the additional C<aaaa> component specifies opacity
1510(alpha) values. The minimum value of C<0000> is completely transparent,
1511while C<ffff> is completely opaque). The two example colours from
1512earlier could also be specified as C<rgba:ff00/0000/0000/8000> and
1513C<rgba:0000/ff00/0000/f332>.
1514
1515You probably need to specify B<"-depth 32">, too, to force a visual with
1516alpha channels, and have the luck that your X-server uses ARGB pixel
1517layout, as X is far from just supporting ARGB visuals out of the box, and
1518rxvt-unicode just fudges around.
1519
1520For example, the following selects an almost completely transparent black
1521background, and an almost opaque pink foreground:
1522
1523 @@RXVT_NAME@@ -depth 32 -bg rgba:0000/0000/0000/4444 -fg "[80]pink"
1524
1525When not using a background image, then the interpretation of the
1526alpha channel is up to your compositing manager (most interpret it as
1527transparency of course).
1528
1529When using a background pixmap or pseudo-transparency, then the background
1530colour will always behave as if it were completely transparent (so the
1531background image shows instead), regardless of how it was specified, while
1532other colours will either be transparent as specified (the background
1533image will show through) on servers supporting the RENDER extension, or
1534fully opaque on servers not supporting the RENDER EXTENSION.
1535
1536Please note that due to bugs in Xft, specifying alpha values might result
1537in garbage being displayed when the X-server does not support the RENDER
1538extension.
1539
1540=head1 ENVIRONMENT
1541
1542B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
919 1543
920=over 4 1544=over 4
921 1545
922=item How do I know which rxvt-unicode version I'm using? 1546=item B<TERM>
923 1547
924The version number is displayed with the usage (-h). For rxvt-unicode 1548Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
925version 2.14 and later, the escape sequence C<ESC[8n> sets the window 1549resources or on the command line.
926title to the version number.
927 1550
928=item Rxvt-unicode does not seem to understand the selected encoding? 1551=item B<COLORTERM>
929 1552
930=item Unicode does not seem to work? 1553Either C<rxvt>, C<rxvt-xpm>, depending on whether @@RXVT_NAME@@ was
1554compiled with background image support, and optionally with the added
1555extension C<-mono> to indicate that rxvt-unicode runs on a monochrome
1556screen.
931 1557
932If you encounter strange problems like typing an accented character but 1558=item B<COLORFGBG>
933getting two unrelated other characters or similar, or if program output is
934subtly garbled, then you should check your locale settings.
935 1559
936Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the 1560Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
937programs. Often rxvt-unicode is started in the C<C> locale, while the 1561the colour code used as default foreground/text colour (or the string
938login script running within the rxvt-unicode window changes the locale to 1562C<default> to indicate that the default-colour escape sequence is to be
939sth. else, e.h. C<en_GB.UTF-8>. Needless to say, this is not going to work. 1563used), C<bg> is the colour code used as default background colour (or the
1564string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1565was compiled with background image support. Libraries like C<ncurses>
1566and C<slang> can (and do) use this information to optimize screen output.
940 1567
941The best thing is to fix your startup environment, as you will likely run 1568=item B<WINDOWID>
942into other problems. If nothing works you can try this in your .profile.
943 1569
944 printf '\e]701;%s\007' "$LC_CTYPE" 1570Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1571window, which usually has subwindows for the scrollbar, the terminal
1572window and so on).
945 1573
946If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 1574=item B<TERMINFO>
947supported on your systems. Some systems have a C<locale> comamnd which
948displays this. If it displays sth. like:
949 1575
950 locale: Cannot set LC_CTYPE to default locale: ... 1576Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1577C<--with-terminfo=PATH>.
951 1578
952Then the locale you specified is not supported on your system. 1579=item B<DISPLAY>
953 1580
954If nothing works and you are sure that everything is set correctly then 1581Used by @@RXVT_NAME@@ to connect to the display and set to the correct
955you will need to remember a little known fact: Some programs just don't 1582display in its child processes if C<-display> isn't used to override. It
956support locales :( 1583defaults to C<:0> if it doesn't exist.
957 1584
958=item Why do the characters look ugly? 1585=item B<SHELL>
959 1586
960=item How does rxvt-unicode choose fonts? 1587The shell to be used for command execution, defaults to C</bin/sh>.
961 1588
962Most fonts do not contain the full range of Unicode, which is 1589=item B<RXVT_SOCKET>
963fine. Chances are that the font you (or the admin/package maintainer of
964your system/os) have specified does not cover all the characters you want
965to display.
966 1590
967B<rxvt-unicode> makes a best-effort try at finding a replacement 1591The unix domain socket path used by @@RXVT_NAME@@c(1) and
968font. Often the result is fine, but sometimes the chosen font looks 1592@@RXVT_NAME@@d(1).
969bad. In that case, select a font of your taste and add it to the font
970list, e.g.:
971 1593
972 @@RXVT_NAME@@ -fn basefont,font2,font3... 1594Default F<<< $HOME/.rxvt-unicode-I<< <nodename >> >>>.
973 1595
974When rxvt-unicode sees a character, it will first look at the base 1596=item B<HOME>
975font. If the base font does not contain the character, it will go to the
976next font, and so on.
977 1597
978The only limitation is that all the fonts must not be larger than the base 1598Used to locate the default directory for the unix domain socket for
979font, as the base font defines the principial cell size, which must be the 1599daemon communications and to locate various resource files (such as
980same due to the way terminals work. 1600C<.Xdefaults>)
981 1601
982=item Why do some chinese characters look so different than others? 1602=item B<XAPPLRESDIR>
983 1603
984This is because there is a difference between script and language -- 1604Directory where various X resource files are being located.
985rxvt-unicode does not know which language the text that is output
986is, as it only knows the unicode character codes. If rxvt-unicode
987first sees a japanese character, it might choose a japanese font for
988it. Subseqzuent japanese characters will take that font. Now, many chinese
989characters aren't represented in japanese fonts, so when the first
990non-japanese character comes up, rxvt-unicode will look for a chinese font
991-- unfortunately at this point, it will still use the japanese font for
992japanese characters that are also chinese.
993 1605
994The workaround is easy: just tag a chinese font at the end of your font 1606=item B<XENVIRONMENT>
995list (see the previous question). The key is to view the font list as
996a preference list: If you expect more japanese, list a japanese font
997first. If you expect more chinese, put a chinese font first.
998 1607
999In the future it might be possible to switch preferences at runtime (the 1608If set and accessible, gives the name of a X resource file to be loaded by
1000internal data structure has no problem with using different fonts for
1001the same character at the same time, but no interface for this has been
1002designed yet).
1003
1004=item How does rxvt-unicode determine the encoding to use?
1005
1006=item Is there an option to switch encodings?
1007
1008Unlike some other terminals, rxvt-unicode has no encoding switch, and no
1009specific "utf-8" mode, such as xterm. In fact, it doesn't even know about
1010UTF-8 or any other encodings with respect to terminal I/O.
1011
1012The reasons is that there exists a perfectly fine mechanism for selecting
1013the encoding, doing I/O and (most important) communicating this to all
1014applications so everybody agrees on character properties such as width and
1015code number. This mechanism is the I<locale>.
1016
1017Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
1018programs doing the same (that is, most) will automatically agree in the
1019interpretation of characters.
1020
1021Unfortunately, there is no system-independent way to select locales, nor
1022is there a standard on how locale specifiers will look like.
1023
1024On most systems, the content of the C<LC_CTYPE> environment variable
1025contains an arbitrary string which corresponds to an already-installed
1026locale. Common names for locales are C<en_US.UTF-8>, C<de_DE.ISO-8859-15>,
1027C<ja_JP.EUC-JP>, i.e. C<language_country.encoding>, but other forms
1028(i.e. C<de> or C<german>) are also common.
1029
1030Rxvt-unicode ignores all other locale categories, and except for
1031the encoding, ignores country or language-specific settings,
1032i.e. C<de_DE.UTF-8> and C<ja_JP.UTF-8> are the same for rxvt-unicode.
1033
1034If you want to use a specific encoding you have to make sure you start
1035rxvt-unicode with the correct C<LC_CTYPE> category.
1036
1037=item Can I switch locales at runtime?
1038
1039Yes, using an escape sequence. Try sth. like this, which sets
1040rxvt-unicode's idea of C<LC_CTYPE>.
1041
1042 printf '\e]701;%s\007' ja_JP.SJIS
1043
1044See also the previous question.
1045
1046Sometimes this capability is rather handy when you want to work in one
1047locale (e.g. C<de_DE.UTF-8>) but some programs don't support UTF-8. For
1048example, I use this script to start C<xjdic>, which first switches to a
1049locale supported by xjdic and back later:
1050
1051 printf '\e]701;%s\007' ja_JP.SJIS
1052 xjdic -js
1053 printf '\e]701;%s\007' de_DE.UTF-8
1054
1055=item Can I switch the fonts at runtime?
1056
1057Yes, using an escape sequence. Try sth. like this, which has the same
1058effect as using the C<-fn> switch, and takes effect immediately:
1059
1060 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
1061
1062This is useful if you e.g. work primarily with japanese (and prefer a
1063japanese font), but you have to switch to chinese temporarily, where
1064japanese fonts would only be in your way.
1065
1066You can think of this as a kind of manual ISO-2022 switching.
1067
1068=item Mouse cut/paste suddenly no longer works.
1069
1070Make sure that mouse reporting is actually turned off since killing
1071some editors prematurely may leave the mouse in mouse report mode. I've
1072heard that tcsh may use mouse reporting unless it otherwise specified. A
1073quick check is to see if cut/paste works when the Alt or Shift keys are
1074depressed. See @@RXVT_NAME@@(7)
1075
1076=item What's with this bold/blink stuff?
1077
1078If no bold colour is set via C<colorBD:>, bold will invert text using the
1079standard foreground colour.
1080
1081For the standard background colour, blinking will actually make the
1082text blink when compiled with C<--enable-blinking>. with standard
1083colours. Without C<--enable-blinking>, the blink attribute will be
1084ignored.
1085
1086On ANSI colours, bold/blink attributes are used to set high-intensity
1087foreground/background colors.
1088
1089color0-7 are the low-intensity colors.
1090
1091color8-15 are the corresponding high-intensity colors.
1092
1093=item I don't like the screen colors. How do I change them?
1094
1095You can change the screen colors at run-time using F<~/.Xdefaults>
1096resources (or as long-options).
1097
1098Here are values that are supposed to resemble a VGA screen,
1099including the murky brown that passes for low-intensity yellow:
1100
1101 Rxvt*color0: #000000
1102 Rxvt*color1: #A80000
1103 Rxvt*color2: #00A800
1104 Rxvt*color3: #A8A800
1105 Rxvt*color4: #0000A8
1106 Rxvt*color5: #A800A8
1107 Rxvt*color6: #00A8A8
1108 Rxvt*color7: #A8A8A8
1109
1110 Rxvt*color8: #000054
1111 Rxvt*color9: #FF0054
1112 Rxvt*color10: #00FF54
1113 Rxvt*color11: #FFFF54
1114 Rxvt*color12: #0000FF
1115 Rxvt*color13: #FF00FF
1116 Rxvt*color14: #00FFFF
1117 Rxvt*color15: #FFFFFF
1118
1119=item What's with the strange Backspace/Delete key behaviour?
1120
1121Assuming that the physical Backspace key corresponds to the
1122BackSpace keysym (not likely for Linux ... see the following
1123question) there are two standard values that can be used for
1124Backspace: C<^H> and C<^?>.
1125
1126Historically, either value is correct, but rxvt-unicode adopts the debian
1127policy of using C<^?> when unsure, because it's the one only only correct
1128choice :).
1129
1130Rxvt-unicode tries to inherit the current stty settings and uses the value
1131of `erase' to guess the value for backspace. If rxvt-unicode wasn't
1132started from a terminal (say, from a menu or by remote shell), then the
1133system value of `erase', which corresponds to CERASE in <termios.h>, will
1134be used (which may not be the same as your stty setting).
1135
1136For starting a new rxvt-unicode:
1137
1138 # use Backspace = ^H
1139 $ stty erase ^H
1140 $ @@RXVT_NAME@@ 1609@@RXVT_NAME@@.
1141
1142 # use Backspace = ^?
1143 $ stty erase ^?
1144 $ @@RXVT_NAME@@
1145
1146Toggle with "ESC[36h" / "ESC[36l" as documented in @@RXVT_NAME@@(7).
1147
1148For an existing rxvt-unicode:
1149
1150 # use Backspace = ^H
1151 $ stty erase ^H
1152 $ echo -n "^[[36h"
1153
1154 # use Backspace = ^?
1155 $ stty erase ^?
1156 $ echo -n "^[[36l"
1157
1158This helps satisfy some of the Backspace discrepancies that occur, but
1159if you use Backspace = C<^H>, make sure that the termcap/terminfo value
1160properly reflects that.
1161
1162The Delete key is a another casualty of the ill-defined Backspace problem.
1163To avoid confusion between the Backspace and Delete keys, the Delete
1164key has been assigned an escape sequence to match the vt100 for Execute
1165(ESC[3~) and is in the supplied termcap/terminfo.
1166
1167Some other Backspace problems:
1168
1169some editors use termcap/terminfo,
1170some editors (vim I'm told) expect Backspace = ^H,
1171GNU Emacs (and Emacs-like editors) use ^H for help.
1172
1173Perhaps someday this will all be resolved in a consistent manner.
1174
1175=item I don't like the key-bindings. How do I change them?
1176
1177There are some compile-time selections available via configure. Unless
1178you have run "configure" with the C<--disable-resources> option you can
1179use the `keysym' resource to alter the keystrings associated with keysym
11800xFF00 - 0xFFFF (function, cursor keys, etc).
1181
1182Here's an example for a tn3270 session started using `@@RXVT_NAME@@ -name tn3270'
1183
1184 !# ----- special uses ------:
1185 ! tn3270 login, remap function and arrow keys.
1186 tn3270*font: *clean-bold-*-*--15-*
1187
1188 ! keysym - used by rxvt only
1189 ! Delete - ^D
1190 tn3270*keysym.0xFFFF: \004
1191
1192 ! Home - ^A
1193 tn3270*keysym.0xFF50: \001
1194 ! Left - ^B
1195 tn3270*keysym.0xFF51: \002
1196 ! Up - ^P
1197 tn3270*keysym.0xFF52: \020
1198 ! Right - ^F
1199 tn3270*keysym.0xFF53: \006
1200 ! Down - ^N
1201 tn3270*keysym.0xFF54: \016
1202 ! End - ^E
1203 tn3270*keysym.0xFF57: \005
1204
1205 ! F1 - F12
1206 tn3270*keysym.0xFFBE: \e1
1207 tn3270*keysym.0xFFBF: \e2
1208 tn3270*keysym.0xFFC0: \e3
1209 tn3270*keysym.0xFFC1: \e4
1210 tn3270*keysym.0xFFC2: \e5
1211 tn3270*keysym.0xFFC3: \e6
1212 tn3270*keysym.0xFFC4: \e7
1213 tn3270*keysym.0xFFC5: \e8
1214 tn3270*keysym.0xFFC6: \e9
1215 tn3270*keysym.0xFFC7: \e0
1216 tn3270*keysym.0xFFC8: \e-
1217 tn3270*keysym.0xFFC9: \e=
1218
1219 ! map Prior/Next to F7/F8
1220 tn3270*keysym.0xFF55: \e7
1221 tn3270*keysym.0xFF56: \e8
1222
1223=item I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
1224How do I make use of them? For example, the Sun Keyboard type 4
1225has the following mappings that rxvt-unicode doesn't recognize.
1226
1227 KP_Insert == Insert
1228 F22 == Print
1229 F27 == Home
1230 F29 == Prior
1231 F33 == End
1232 F35 == Next
1233
1234Rather than have rxvt-unicode try to accomodate all the various possible keyboard
1235mappings, it is better to use `xmodmap' to remap the keys as required for
1236your particular machine.
1237
1238=item How do I distinguish if I'm running rxvt-unicode or a regular xterm?
1239I need this to decide about setting colors etc.
1240
1241rxvt and rxvt-unicode always export the variable "COLORTERM", so you can
1242check and see if that is set. Note that several programs, JED, slrn,
1243Midnight Commander automatically check this variable to decide whether or
1244not to use color.
1245
1246=item How do I set the correct, full IP address for the DISPLAY variable?
1247
1248If you've compiled rxvt-unicode with DISPLAY_IS_IP and ahve enabled
1249insecure mode then it is possible to use the following shell script
1250snippets to correctly set the display. If your version of rxvt-unicode
1251wasn't also compiled with ESCZ_ANSWER (as assumed in these snippets) then
1252the COLORTERM variable can be used to distinguish rxvt-unicode from a
1253regular xterm.
1254
1255Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
1256snippets:
1257
1258 # Bourne/Korn/POSIX family of shells:
1259 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
1260 if [ ${TERM:-foo} = xterm ]; then
1261 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
1262 echo -n '^[Z'
1263 read term_id
1264 stty icanon echo
1265 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
1266 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string
1267 read DISPLAY # set it in our local shell
1268 fi
1269 fi
1270
1271=item How do I compile the manual pages for myself?
1272
1273You need to have a recent version of perl installed as F</usr/bin/perl>,
1274one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to
1275the doc subdirectory and enter C<make alldoc>.
1276 1610
1277=back 1611=back
1278 1612
1279=head1 ENVIRONMENT
1280
1281B<@@RXVT_NAME@@> sets the environment variables B<TERM>, B<COLORTERM>
1282and B<COLORFGBG>. The environment variable B<WINDOWID> is set to the X
1283window id number of the B<@@RXVT_NAME@@> window and it also uses and
1284sets the environment variable B<DISPLAY> to specify which display
1285terminal to use. B<@@RXVT_NAME@@> uses the environment variables
1286B<RXVTPATH> and B<PATH> to find XPM files.
1287
1288=head1 FILES 1613=head1 FILES
1289 1614
1290=over 4 1615=over 4
1291 1616
1292=item B</etc/utmp>
1293
1294System file for login records.
1295
1296=item B</usr/lib/X11/rgb.txt> 1617=item B</usr/lib/X11/rgb.txt>
1297 1618
1298Color names. 1619Color names.
1299 1620
1300=back 1621=back
1301 1622
1302=head1 SEE ALSO 1623=head1 SEE ALSO
1303 1624
1304@@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5) 1625@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1305
1306=head1 BUGS
1307
1308Check the BUGS file for an up-to-date list.
1309
1310Cursor change support is not yet implemented.
1311
1312Click-and-drag doesn't work with X11 mouse report overriding.
1313 1626
1314=head1 CURRENT PROJECT COORDINATOR 1627=head1 CURRENT PROJECT COORDINATOR
1315 1628
1316=over 4 1629=over 4
1317 1630
1318=item Project Coordinator 1631=item Project Coordinator
1319 1632
1320@@RXVT_MAINT@@ L<@@RXVT_MAINTEMAIL@@> 1633Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >>
1321 1634
1322=item Web page maintainter 1635L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1323
1324@@RXVT_WEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@>
1325
1326L<@@RXVT_WEBPAGE@@>
1327 1636
1328=back 1637=back
1329 1638
1330=head1 AUTHORS 1639=head1 AUTHORS
1331 1640
1353 1662
1354Project Coordinator (changes.txt 2.21a to 2.4.5) 1663Project Coordinator (changes.txt 2.21a to 2.4.5)
1355 1664
1356=item Geoff Wing L<< <gcw@pobox.com> >> 1665=item Geoff Wing L<< <gcw@pobox.com> >>
1357 1666
1358Rewrote screen display and text selection routines. Project Coordinator 1667Rewrote screen display and text selection routines.
1668
1359(changes.txt 2.4.6 - rxvt-unicode) 1669Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1360 1670
1361=item Marc Alexander Lehmann L<< <rxvt@schmorp.de> >> 1671=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >>
1362 1672
1363Forked rxvt-unicode, rewrote most of the display code and internal 1673Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1364character handling to store text in unicode, improve xterm 1674extension, random hacks, numerous bugfixes and extensions.
1365compatibility and apply numerous other bugfixes and extensions.
1366 1675
1367Project Coordinator (Changes 1.0 -) 1676Project Coordinator (Changes 1.0 -)
1368 1677
1678=item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >>
1679
1680Pty/tty/utmp/wtmp rewrite, lots of random hacking and bugfixing.
1681
1369=back 1682=back
1370 1683

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines