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

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines