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.113 by root, Sun Apr 2 17:07:32 2006 UTC vs.
Revision 1.244 by sf-exg, Tue Jun 16 11:58:26 2015 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
17=head1 FREQUENTLY ASKED QUESTIONS 20=head1 FREQUENTLY ASKED QUESTIONS
18 21
19See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of 22See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of
20frequently asked questions and answer to them and some common 23frequently asked questions and answer to them and some common
21problems. That document is also accessible on the World-Wide-Web at 24problems. That document is also accessible on the World-Wide-Web at
22L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 25L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod>.
23 26
24=head1 RXVT-UNICODE VS. RXVT 27=head1 RXVT-UNICODE VS. RXVT
25 28
26Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode 29Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
27internally. That means it can store and display most scripts in the 30internally. That means it can store and display most scripts in the
28world. Being a terminal emulator, however, some things are very difficult, 31world. Being a terminal emulator, however, some things are very difficult,
29especially cursive scripts such as arabic, vertically written scripts 32especially cursive scripts such as arabic, vertically written scripts
30like mongolian or scripts requiring extremely complex combining rules, 33like mongolian or scripts requiring extremely complex combining rules,
31like tibetan or devenagari. Don't expect pretty output when using these 34like tibetan or devanagari. Don't expect pretty output when using these
32scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work 35scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
33fine, though. A somewhat difficult case are left-to-right scripts, such 36fine, though. A somewhat difficult case are right-to-left scripts, such
34as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms 37as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
35belong into the application, not the terminal emulator (too many things -- 38belong in the application, not the terminal emulator (too many things --
36such as cursor-movement while editing -- break otherwise), but that might 39such as cursor-movement while editing -- break otherwise), but that might
37change. 40change.
38 41
39If you are looking for a terminal that supports more exotic scripts, let 42If you are looking for a terminal that supports more exotic scripts, let
40me recommend C<mlterm>, which is a very userfriendly, lean and clean 43me recommend C<mlterm>, which is a very user friendly, lean and clean
41terminal emulator. In fact, the reason rxvt-unicode was born was solely 44terminal emulator. In fact, the reason rxvt-unicode was born was solely
42because the author couldn't get C<mlterm> to use one font for latin1 and 45because the author couldn't get C<mlterm> to use one font for latin1 and
43another for japanese. 46another for japanese.
44 47
45Therefore another design rationale was the use of multiple fonts to 48Therefore another design rationale was the use of multiple fonts to
46display characters: The idea of a single unicode font which many other 49display characters: The idea of a single unicode font which many other
47programs force onto it's users never made sense to me: You should be able 50programs force onto its users never made sense to me: You should be able
48to choose any font for any script freely. 51to choose any font for any script freely.
49 52
50Apart from that, rxvt-unicode is also much better internationalised than 53Apart from that, rxvt-unicode is also much better internationalised than
51it'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
52in 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
53rxvt. This all in addition to dozens of other small improvements. 56rxvt. This all in addition to dozens of other small improvements.
54 57
55It is still faithfully following the original rxvt idea of being lean 58It is still faithfully following the original rxvt idea of being lean
56and nice on resources: for example, you can still configure rxvt-unicode 59and nice on resources: for example, you can still configure rxvt-unicode
57without most of it's features to get a lean binary. It also comes with 60without most of its features to get a lean binary. It also comes with
58a 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
59from within a single process, which makes startup time very fast and 62from within a single process, which makes startup time very fast and
60drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and 63drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
61@@RXVT_NAME@@c(1) (client). 64@@RXVT_NAME@@c(1) (client).
62 65
63It also makes technical information about escape sequences (which have 66It also makes technical information about escape sequences (which have
64been extended) easier accessible: see @@RXVT_NAME@@(7) for technical 67been extended) more accessible: see @@RXVT_NAME@@(7) for technical
65reference documentation (escape sequences etc.). 68reference documentation (escape sequences etc.).
66 69
67=head1 OPTIONS 70=head1 OPTIONS
68 71
69The 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
89 92
90Print out a message describing available options. 93Print out a message describing available options.
91 94
92=item B<-display> I<displayname> 95=item B<-display> I<displayname>
93 96
94Attempt 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>
95respected). In the absence of this option, the display specified by the 98is still respected. but deprecated). In the absence of this option, the
96B<DISPLAY> environment variable is used. 99display specified by the B<DISPLAY> environment variable is used.
97 100
98=item B<-depth> I<bitdepth> 101=item B<-depth> I<bitdepth>
99 102
100Compile I<xft>: Attempt to find a visual with the given bit depth; 103Compile I<frills>: Attempt to find a visual with the given bit depth;
101resource B<depth>. 104resource B<depth>.
102 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]
110
111=item B<-visual> I<visualID>
112
113Compile I<frills>: Use the given visual (see e.g. C<xdpyinfo> for
114possible visual ids) instead of the default, and also allocate a private
115colormap. All visual types except for DirectColor are supported.
116
103=item B<-geometry> I<geom> 117=item B<-geometry> I<geom>
104 118
105Window geometry (B<-g> still respected); resource B<geometry>. 119Window geometry (B<-g> still respected); resource B<geometry>.
106 120
107=item B<-rv>|B<+rv> 121=item B<-rv>|B<+rv>
108 122
109Turn on/off simulated reverse video; resource B<reverseVideo>. 123Turn on/off simulated reverse video; resource B<reverseVideo>.
110 124
111=item B<-j>|B<+j> 125=item B<-j>|B<+j>
112 126
113Turn on/off jump scrolling; resource B<jumpScroll>. 127Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>.
114 128
115=item B<-ip>|B<+ip> | B<-tr>|B<+tr> 129=item B<-ss>|B<+ss>
116 130
117Turn on/off inheriting parent window's pixmap. Alternative form is 131Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>.
118B<-tr>; resource B<inheritPixmap>.
119
120I<Please note that transparency of any kind if completely unsupported by
121the author. Don't bug him with installation questions!>
122 132
123=item B<-fade> I<number> 133=item B<-fade> I<number>
124 134
125Fade the text by the given percentage when focus is lost. Small values 135Fade the text by the given percentage when focus is lost. Small values
126fade a little only, 100 completely replaces all colours by the fade 136fade a little only, 100 completely replaces all colours by the fade
129=item B<-fadecolor> I<colour> 139=item B<-fadecolor> I<colour>
130 140
131Fade to this colour when fading is used (see B<-fade>). The default colour 141Fade to this colour when fading is used (see B<-fade>). The default colour
132is opaque black. resource B<fadeColor>. 142is opaque black. resource B<fadeColor>.
133 143
134=item B<-tint> I<colour> 144=item B<-icon> I<file>
135 145
136Tint the transparent background pixmap with the given colour when 146Compile I<pixbuf>: Use the specified image as application icon. This
137transparency is enabled with B<-tr> or B<-ip>. This only works for 147is used by many window managers, taskbars and pagers to represent the
138non-tiled backgrounds, currently. See also the B<-sh> option that can be 148application window; resource I<iconFile>.
139used to brighten or darken the image in addition to tinting it; resource
140I<tintColor>. Example:
141
142 @@RXVT_NAME@@ -tr -tint blue -sh 40
143
144=item B<-sh>
145
146I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent
147background image in addition to tinting it (i.e. B<-tint> must be
148specified, too, e.g. C<-tint white>).
149 149
150=item B<-bg> I<colour> 150=item B<-bg> I<colour>
151 151
152Window background colour; resource B<background>. 152Window background colour; resource B<background>.
153 153
154=item B<-fg> I<colour> 154=item B<-fg> I<colour>
155 155
156Window foreground colour; resource B<foreground>. 156Window foreground colour; resource B<foreground>.
157
158=item B<-pixmap> I<file[;geom]>
159
160Compile I<XPM>: Specify XPM file for the background and also optionally
161specify its scaling with a geometry string. Note you may need to
162add quotes to avoid special shell interpretation of the C<;> in the
163command-line; resource B<backgroundPixmap>.
164 157
165=item B<-cr> I<colour> 158=item B<-cr> I<colour>
166 159
167The cursor colour; resource B<cursorColor>. 160The cursor colour; resource B<cursorColor>.
168 161
185that are checked in order when trying to find glyphs for characters. The 178that are checked in order when trying to find glyphs for characters. The
186first font defines the cell size for characters; other fonts might be 179first font defines the cell size for characters; other fonts might be
187smaller, but not (in general) larger. A (hopefully) reasonable default 180smaller, but not (in general) larger. A (hopefully) reasonable default
188font list is always appended to it. See resource B<font> for more details. 181font list is always appended to it. See resource B<font> for more details.
189 182
190In short, to specify an X11 core font, just specify it's name or prefix it 183In short, to specify an X11 core font, just specify its name or prefix it
191with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>, 184with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
192e.g.: 185e.g.:
193 186
194 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15" 187 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
195 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono" 188 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
213italic> >> characters are to be printed. See resource B<boldItalicFont> 206italic> >> characters are to be printed. See resource B<boldItalicFont>
214for details. 207for details.
215 208
216=item B<-is>|B<+is> 209=item B<-is>|B<+is>
217 210
218Compile I<font-styles>: Bold/Italic font styles imply high intensity 211Compile I<font-styles>: Bold/Blink font styles imply high intensity
219foreground/background (default). See resource B<intensityStyles> for 212foreground/background (default). See resource B<intensityStyles> for
220details. 213details.
221 214
222=item B<-name> I<name> 215=item B<-name> I<name>
223 216
227 220
228=item B<-ls>|B<+ls> 221=item B<-ls>|B<+ls>
229 222
230Start as a login-shell/sub-shell; resource B<loginShell>. 223Start as a login-shell/sub-shell; resource B<loginShell>.
231 224
225=item B<-mc> I<milliseconds>
226
227Specify the maximum time between multi-click selections.
228
232=item B<-ut>|B<+ut> 229=item B<-ut>|B<+ut>
233 230
234Compile I<utmp>: Inhibit/enable writing a utmp entry; resource 231Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
235B<utmpInhibit>. 232B<utmpInhibit>.
236 233
240B<visualBell>. 237B<visualBell>.
241 238
242=item B<-sb>|B<+sb> 239=item B<-sb>|B<+sb>
243 240
244Turn on/off scrollbar; resource B<scrollBar>. 241Turn on/off scrollbar; resource B<scrollBar>.
242
243=item B<-sr>|B<+sr>
244
245Put scrollbar on right/left; resource B<scrollBar_right>.
246
247=item B<-st>|B<+st>
248
249Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
250resource B<scrollBar_floating>.
245 251
246=item B<-si>|B<+si> 252=item B<-si>|B<+si>
247 253
248Turn on/off scroll-to-bottom on TTY output inhibit; resource 254Turn on/off scroll-to-bottom on TTY output inhibit; resource
249B<scrollTtyOutput> has opposite effect. 255B<scrollTtyOutput> has opposite effect.
256=item B<-sw>|B<+sw> 262=item B<-sw>|B<+sw>
257 263
258Turn on/off scrolling with the scrollback buffer as new lines appear. 264Turn on/off scrolling with the scrollback buffer as new lines appear.
259This only takes effect if B<-si> is also given; resource 265This only takes effect if B<-si> is also given; resource
260B<scrollWithBuffer>. 266B<scrollWithBuffer>.
261
262=item B<-sr>|B<+sr>
263
264Put scrollbar on right/left; resource B<scrollBar_right>.
265
266=item B<-st>|B<+st>
267
268Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
269resource B<scrollBar_floating>.
270 267
271=item B<-ptab>|B<+ptab> 268=item B<-ptab>|B<+ptab>
272 269
273If enabled (default), "Horizontal Tab" characters are being stored as 270If enabled (default), "Horizontal Tab" characters are being stored as
274actual wide characters in the screen buffer, which makes it possible to 271actual wide characters in the screen buffer, which makes it possible to
278 275
279=item B<-bc>|B<+bc> 276=item B<-bc>|B<+bc>
280 277
281Blink the cursor; resource B<cursorBlink>. 278Blink the cursor; resource B<cursorBlink>.
282 279
280=item B<-uc>|B<+uc>
281
282Make the cursor underlined; resource B<cursorUnderline>.
283
283=item B<-iconic> 284=item B<-iconic>
284 285
285Start iconified, if the window manager supports that option. 286Start iconified, if the window manager supports that option.
286Alternative form is B<-ic>. 287Alternative form is B<-ic>.
287 288
303 304
304=item B<-bl> 305=item B<-bl>
305 306
306Compile I<frills>: Set MWM hints to request a borderless window, i.e. 307Compile I<frills>: Set MWM hints to request a borderless window, i.e.
307if honoured by the WM, the rxvt-unicode window will not have window 308if honoured by the WM, the rxvt-unicode window will not have window
308decorations; resource B<borderLess>. 309decorations; resource B<borderLess>. If the window manager does not
310support MWM hints (e.g. kwin), enables override-redirect mode.
309 311
310=item B<-override-redirect> 312=item B<-override-redirect>
311 313
312Compile I<frills>: Sets override-redirect on the window; resource 314Compile I<frills>: Sets override-redirect on the window; resource
313B<override-redirect>. 315B<override-redirect>.
316
317=item B<-dockapp>
318
319Sets the initial state of the window to WithdrawnState, which makes
320window managers that support this extension treat it as a dockapp.
314 321
315=item B<-sbg> 322=item B<-sbg>
316 323
317Compile I<frills>: Disable the usage of the built-in block graphics/line 324Compile I<frills>: Disable the usage of the built-in block graphics/line
318drawing characters and just rely on what the specified fonts provide. Use 325drawing characters and just rely on what the specified fonts provide. Use
321 328
322=item B<-lsp> I<number> 329=item B<-lsp> I<number>
323 330
324Compile I<frills>: Lines (pixel height) to insert between each row of 331Compile I<frills>: Lines (pixel height) to insert between each row of
325the display. Useful to work around font rendering problems; resource 332the display. Useful to work around font rendering problems; resource
326B<linespace>. 333B<lineSpace>.
334
335=item B<-letsp> I<number>
336
337Compile I<frills>: Amount to adjust the computed character width by
338to control overall letter spacing. Negative values will tighten up the
339letter spacing, positive values will space letters out more. Useful to
340work around odd font metrics; resource B<letterSpace>.
327 341
328=item B<-tn> I<termname> 342=item B<-tn> I<termname>
329 343
330This option specifies the name of the terminal type to be set in the 344This option specifies the name of the terminal type to be set in the
331B<TERM> environment variable. This terminal type must exist in the 345B<TERM> environment variable. This terminal type must exist in the
366=item B<-pt> I<style> 380=item B<-pt> I<style>
367 381
368Compile I<XIM>: input style for input method; B<OverTheSpot>, 382Compile I<XIM>: input style for input method; B<OverTheSpot>,
369B<OffTheSpot>, B<Root>; resource B<preeditType>. 383B<OffTheSpot>, B<Root>; resource B<preeditType>.
370 384
385If the perl extension C<xim-onthespot> is used (which is the default),
386then additionally the C<OnTheSpot> preedit type is available.
387
371=item B<-im> I<text> 388=item B<-im> I<text>
372 389
373Compile I<XIM>: input method name. resource B<inputMethod>. 390Compile I<XIM>: input method name. resource B<inputMethod>.
374 391
375=item B<-imlocale> I<string> 392=item B<-imlocale> I<string>
385for more info. 402for more info.
386 403
387=item B<-tcw> 404=item B<-tcw>
388 405
389Change the meaning of triple-click selection with the left mouse 406Change the meaning of triple-click selection with the left mouse
407button. Only effective when the original (non-perl) selection code is
390button. Instead of selecting a full line it will extend the selection the 408in-use. Instead of selecting a full line it will extend the selection to
391end of the logical line only. resource B<tripleclickwords>. 409the end of the logical line only. resource B<tripleclickwords>.
392 410
393=item B<-insecure> 411=item B<-insecure>
394 412
395Enable "insecure" mode, which currently enables most of the escape 413Enable "insecure" mode, which currently enables most of the escape
396sequences that echo strings. See the resource B<insecure> for more 414sequences that echo strings. See the resource B<insecure> for more
417Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ 435Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
418will not immediately destroy its window when the program executed within 436will not immediately destroy its window when the program executed within
419it exits. Instead, it will wait till it is being killed or closed by the 437it exits. Instead, it will wait till it is being killed or closed by the
420user; resource B<hold>. 438user; resource B<hold>.
421 439
440=item B<-cd> I<path>
441
442Sets the working directory for the shell (or the command specified via
443B<-e>). The I<path> must be an absolute path and it must exist for
444@@RXVT_NAME@@ to start; resource B<chdir>.
445
446=item B<-xrm> I<string>
447
448Works like the X Toolkit option of the same name, by adding the I<string>
449as if it were specified in a resource file. Resource values specified this
450way take precedence over all other resource specifications.
451
452Note that you need to use the I<same> syntax as in the .Xdefaults file,
453e.g. C<*.background: black>. Also note that all @@RXVT_NAME@@-specific
454options can be specified as long-options on the commandline, so use
455of B<-xrm> is mostly limited to cases where you want to specify other
456resources (e.g. for input methods) or for compatibility with other
457programs.
458
422=item B<-keysym.>I<sym> I<string> 459=item B<-keysym.>I<sym> I<string>
423 460
424Remap a key symbol. See resource B<keysym>. 461Remap a key symbol. See resource B<keysym>.
425 462
426=item B<-embed> I<windowid> 463=item B<-embed> I<windowid>
427 464
428Tells @@RXVT_NAME@@ to embed it's windows into an already-existing window, 465Tells @@RXVT_NAME@@ to embed its windows into an already-existing window,
429which enables applications to easily embed a terminal. 466which enables applications to easily embed a terminal.
430 467
431Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it 468Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
432shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it 469shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
433quite a bit, so don't expect it to keep some specific state. It's best to 470quite a bit, so don't expect it to keep some specific state. It's best to
436The window will not be destroyed when @@RXVT_NAME@@ exits. 473The window will not be destroyed when @@RXVT_NAME@@ exits.
437 474
438It might be useful to know that @@RXVT_NAME@@ will not close file 475It might be useful to know that @@RXVT_NAME@@ will not close file
439descriptors passed to it (except for stdin/out/err, of course), so you 476descriptors passed to it (except for stdin/out/err, of course), so you
440can use file descriptors to communicate with the programs within the 477can use file descriptors to communicate with the programs within the
441terminal. This works regardless of wether the C<-embed> option was used or 478terminal. This works regardless of whether the C<-embed> option was used or
442not. 479not.
443 480
444Here is a short Gtk2-perl snippet that illustrates how this option can be 481Here is a short Gtk2-perl snippet that illustrates how this option can be
445used (a longer example is in F<doc/embed>): 482used (a longer example is in F<doc/embed>):
446 483
451 }); 488 });
452 489
453=item B<-pty-fd> I<file descriptor> 490=item B<-pty-fd> I<file descriptor>
454 491
455Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty 492Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty
456pair but instead use the given filehandle as the tty master. This is 493pair but instead use the given file descriptor as the tty master. This is
457useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator 494useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
458without having to run a program within it. 495without having to run a program within it.
459 496
460If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp 497If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
461entries and will not tinker with pty/tty permissions - you have to do that 498entries and will not tinker with pty/tty permissions - you have to do that
462yourself if you want that. 499yourself if you want that.
463 500
464As an extremely special case, specifying C<-1> will completely suppress 501As an extremely special case, specifying C<-1> will completely suppress
465pty/tty operations. 502pty/tty operations, which is probably only useful in conjunction with some
503perl extension that manages the terminal.
466 504
467Here is a example in perl that illustrates how this option can be used (a 505Here is a example in perl that illustrates how this option can be used (a
468longer example is in F<doc/pty-fd>): 506longer example is in F<doc/pty-fd>):
469 507
470 use IO::Pty; 508 use IO::Pty;
484Comma-separated list of perl extension scripts to use (or not to use) in 522Comma-separated list of perl extension scripts to use (or not to use) in
485this terminal instance. See resource B<perl-ext> for details. 523this terminal instance. See resource B<perl-ext> for details.
486 524
487=back 525=back
488 526
489=head1 RESOURCES (available also as long-options) 527=head1 RESOURCES
490 528
491Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long 529Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long
492options) compiled into your version. 530options) compiled into your version. All resources are also available as
531long-options.
493 532
494You can set and change the resources using X11 tools like B<xrdb>. Many 533You can set and change the resources using X11 tools like B<xrdb>. Many
495distribution do also load settings from the B<~/.Xresources> file when X 534distribution do also load settings from the B<~/.Xresources> file when X
496starts. @@RXVT_NAME@@ will consult the following files/resources in order, 535starts. @@RXVT_NAME@@ will consult the following files/resources in order,
497with later settings overwriting earlier ones: 536with later settings overwriting earlier ones:
498 537
499 1. system-wide app-defaults file, either locale-dependent OR global
500 2. app-defaults file in $XAPPLRESDIR 538 1. app-defaults file in $XAPPLRESDIR
539 2. $HOME/.Xdefaults
501 3. RESOURCE_MANAGER property on root-window OR $HOME/.Xdefaults 540 3. RESOURCE_MANAGER property on root-window of screen 0
502 4. SCREEN_RESOURCES for the current screen 541 4. SCREEN_RESOURCES property on root-window of the current screen
503 5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename> 542 5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
543 6. resources specified via -xrm on the commandline
504 544
505Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class 545Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class
506names: B<Rxvt> and B<URxvt>. The class name B<Rxvt> allows resources 546names: B<Rxvt> and B<URxvt>. The class name B<Rxvt> allows resources
507common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be easily 547common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be easily
508configured, while the class name B<URxvt> allows resources unique to 548configured, while the class name B<URxvt> allows resources unique to
518=item B<depth:> I<bitdepth> 558=item B<depth:> I<bitdepth>
519 559
520Compile I<xft>: Attempt to find a visual with the given bit depth; 560Compile I<xft>: Attempt to find a visual with the given bit depth;
521option B<-depth>. 561option B<-depth>.
522 562
563=item B<buffered:> I<boolean>
564
565Compile I<xft>: Turn on/off double-buffering for xft (default enabled).
566On some card/driver combination enabling it slightly decreases
567performance, on most it greatly helps it. The slowdown is small, so it
568should normally be enabled.
569
523=item B<geometry:> I<geom> 570=item B<geometry:> I<geom>
524 571
525Create the window with the specified X window geometry [default 80x24]; 572Create the window with the specified X window geometry [default 80x24];
526option B<-geometry>. 573option B<-geometry>.
527 574
540Use the specified colour for the colour value I<n>, where 0-7 587Use the specified colour for the colour value I<n>, where 0-7
541corresponds to low-intensity (normal) colours and 8-15 corresponds to 588corresponds to low-intensity (normal) colours and 8-15 corresponds to
542high-intensity (bold = bright foreground, blink = bright background) 589high-intensity (bold = bright foreground, blink = bright background)
543colours. The canonical names are as follows: 0=black, 1=red, 2=green, 590colours. The canonical names are as follows: 0=black, 1=red, 2=green,
5443=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour 5913=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
545names used are listed in the B<COLORS AND GRAPHICS> section. 592names used are listed in the B<COLOURS AND GRAPHICS> section.
546 593
547Colours higher than 15 cannot be set using resources (yet), but can be 594Colours higher than 15 cannot be set using resources (yet), but can be
548changed using an escape command (see @@RXVT_NAME@@(7)). 595changed using an escape command (see @@RXVT_NAME@@(7)).
549 596
550Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with 597Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
561=item B<colorUL:> I<colour> 608=item B<colorUL:> I<colour>
562 609
563Use the specified colour to display underlined characters when the 610Use the specified colour to display underlined characters when the
564foreground colour is the default. 611foreground colour is the default.
565 612
566=item B<colorRV:> I<colour>
567
568Use the specified colour as the background for reverse video
569characters.
570
571=item B<underlineColor:> I<colour> 613=item B<underlineColor:> I<colour>
572 614
573If set, use the specified colour as the colour for the underline 615If set, use the specified colour as the colour for the underline
574itself. If unset, use the foreground colour. 616itself. If unset, use the foreground colour.
617
618=item B<highlightColor:> I<colour>
619
620If set, use the specified colour as the background for highlighted
621characters. If unset, use reverse video.
622
623=item B<highlightTextColor:> I<colour>
624
625If set and highlightColor is set, use the specified colour as the
626foreground for highlighted characters.
575 627
576=item B<cursorColor:> I<colour> 628=item B<cursorColor:> I<colour>
577 629
578Use the specified colour for the cursor. The default is to use the 630Use the specified colour for the cursor. The default is to use the
579foreground colour; option B<-cr>. 631foreground colour; option B<-cr>.
586 638
587=item B<reverseVideo:> I<boolean> 639=item B<reverseVideo:> I<boolean>
588 640
589B<True>: simulate reverse video by foreground and background colours; 641B<True>: simulate reverse video by foreground and background colours;
590option B<-rv>. B<False>: regular screen colours [default]; option 642option B<-rv>. B<False>: regular screen colours [default]; option
591B<+rv>. See note in B<COLORS AND GRAPHICS> section. 643B<+rv>. See note in B<COLOURS AND GRAPHICS> section.
592 644
593=item B<jumpScroll:> I<boolean> 645=item B<jumpScroll:> I<boolean>
594 646
595B<True>: specify that jump scrolling should be used. When scrolling 647B<True>: specify that jump scrolling should be used. When receiving lots
596quickly, fewer screen updates are performed [default]; option B<-j>. 648of lines, @@RXVT_NAME@@ will only scroll once a whole screen height of lines
649has been read, resulting in fewer updates while still displaying every
650received line; option B<-j>.
651
597B<False>: specify that smooth scrolling should be used; option B<+j>. 652B<False>: specify that smooth scrolling should be used. @@RXVT_NAME@@ will
653force a screen refresh on each new line it received; option B<+j>.
598 654
599=item B<inheritPixmap:> I<boolean> 655=item B<skipScroll:> I<boolean>
600 656
601B<True>: make the background inherit the parent windows' pixmap, giving 657B<True>: (the default) specify that skip scrolling should be used. When
602artificial transparency. B<False>: do not inherit the parent windows' 658receiving lots of lines, @@RXVT_NAME@@ will only scroll once in a while
603pixmap. 659(around 60 times per second), resulting in far fewer updates. This can
660result in @@RXVT_NAME@@ not ever displaying some of the lines it receives;
661option B<-ss>.
604 662
605I<Please note that transparency of any kind if completely unsupported by 663B<False>: specify that everything is to be displayed, even
606the author. Don't bug him with installation questions!> 664if the refresh is too fast for the human eye to read anything (or the
665monitor to display anything); option B<+ss>.
607 666
608=item B<fading:> I<number> 667=item B<fading:> I<number>
609 668
610Fade the text by the given percentage when focus is lost; option B<-fade>. 669Fade the text by the given percentage when focus is lost; option B<-fade>.
611 670
612=item B<fadeColor:> I<colour> 671=item B<fadeColor:> I<colour>
613 672
614Fade to this colour, when fading is used (see B<fading:>). The default 673Fade to this colour, when fading is used (see B<fading:>). The default
615colour is black; option B<-fadecolor>. 674colour is black; option B<-fadecolor>.
616 675
617=item B<tintColor:> I<colour> 676=item B<iconFile:> I<file>
618 677
619Tint the transparent background pixmap with the given colour; option 678Set the application icon pixmap; option B<-icon>.
620B<-tint>.
621
622=item B<shading:> I<number>
623
624Darken (0 .. 100) or lighten (-1 .. -100) the transparent background
625image in addition to tinting it.
626 679
627=item B<scrollColor:> I<colour> 680=item B<scrollColor:> I<colour>
628 681
629Use the specified colour for the scrollbar [default #B2B2B2]. 682Use the specified colour for the scrollbar [default #B2B2B2].
630 683
635 688
636=item B<borderColor:> I<colour> 689=item B<borderColor:> I<colour>
637 690
638The colour of the border around the text area and between the scrollbar 691The colour of the border around the text area and between the scrollbar
639and the text. 692and the text.
640
641=item B<backgroundPixmap:> I<file[;geom]>
642
643Use the specified XPM file (note the `.xpm' extension is optional) for
644the background and also optionally specify its scaling with a geometry
645string B<WxH+X+Y>, in which B<"W" / "H"> specify the
646horizontal/vertical scale (percent) and B<"X" / "Y"> locate the image
647centre (percent). A scale of 0 displays the image with tiling. A scale
648of 1 displays the image without any scaling. A scale of 2 to 9
649specifies an integer number of images in that direction. No image will
650be magnified beyond 10 times its original size. The maximum permitted
651scale is 1000. [default 0x0+50+50]
652
653=item B<path:> I<path>
654
655Specify the colon-delimited search path for finding XPM files.
656 693
657=item B<font:> I<fontlist> 694=item B<font:> I<fontlist>
658 695
659Select the fonts to be used. This is a comma separated list of font names 696Select the fonts to be used. This is a comma separated list of font names
660that are checked in order when trying to find glyphs for characters. The 697that are checked in order when trying to find glyphs for characters. The
683it is named first) and thus defines the character cell grid to be 9 pixels 720it is named first) and thus defines the character cell grid to be 9 pixels
684wide and 15 pixels high. 721wide and 15 pixels high.
685 722
686The second font is just used to add additional unicode characters not in 723The second font is just used to add additional unicode characters not in
687the base font, likewise the third, which is unfortunately non-bold, but 724the base font, likewise the third, which is unfortunately non-bold, but
688the bold version of the font does contain less characters, so this is a 725the bold version of the font does contain fewer characters, so this is a
689useful supplement. 726useful supplement.
690 727
691The third font is an Xft font with aliasing turned off, and the characters 728The third font is an Xft font with aliasing turned off, and the characters
692are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font 729are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
693contains other characters, but we are not interested in them. 730contains other characters, but we are not interested in them.
717text font will being used for the given style. 754text font will being used for the given style.
718 755
719=item B<intensityStyles:> I<boolean> 756=item B<intensityStyles:> I<boolean>
720 757
721When font styles are not enabled, or this option is enabled (B<True>, 758When font styles are not enabled, or this option is enabled (B<True>,
722option B<-is>, the default), bold and italic font styles imply high 759option B<-is>, the default), bold/blink font styles imply high
723intensity foreground/backround colours. Disabling this option (B<False>, 760intensity foreground/background colours. Disabling this option (B<False>,
724option B<+is>) disables this behaviour, the high intensity colours are not 761option B<+is>) disables this behaviour, the high intensity colours are not
725reachable. 762reachable.
726
727=item B<selectstyle:> I<mode>
728
729Set mouse selection style to B<old> which is 2.20, B<oldword> which is
730xterm style with 2.20 old word selection, or anything else which gives
731xterm style selection.
732
733=item B<scrollstyle:> I<mode>
734
735Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
736the author's favourite.
737 763
738=item B<title:> I<string> 764=item B<title:> I<string>
739 765
740Set window title string, the default title is the command-line 766Set window title string, the default title is the command-line
741specified after the B<-e> option, if any, otherwise the application 767specified after the B<-e> option, if any, otherwise the application
750=item B<mapAlert:> I<boolean> 776=item B<mapAlert:> I<boolean>
751 777
752B<True>: de-iconify (map) on receipt of a bell character. B<False>: no 778B<True>: de-iconify (map) on receipt of a bell character. B<False>: no
753de-iconify (map) on receipt of a bell character [default]. 779de-iconify (map) on receipt of a bell character [default].
754 780
781=item B<urgentOnBell:> I<boolean>
782
783B<True>: set the urgency hint for the wm on receipt of a bell character.
784B<False>: do not set the urgency hint [default].
785
786@@RXVT_NAME@@ resets the urgency hint on every focus change.
787
755=item B<visualBell:> I<boolean> 788=item B<visualBell:> I<boolean>
756 789
757B<True>: use visual bell on receipt of a bell character; option B<-vb>. 790B<True>: use visual bell on receipt of a bell character; option B<-vb>.
758B<False>: no visual bell [default]; option B<+vb>. 791B<False>: no visual bell [default]; option B<+vb>.
759 792
761 794
762B<True>: start as a login shell by prepending a `-' to B<argv[0]> of 795B<True>: start as a login shell by prepending a `-' to B<argv[0]> of
763the shell; option B<-ls>. B<False>: start as a normal sub-shell 796the shell; option B<-ls>. B<False>: start as a normal sub-shell
764[default]; option B<+ls>. 797[default]; option B<+ls>.
765 798
799=item B<multiClickTime:> I<number>
800
801Specify the maximum time in milliseconds between multi-click select
802events. The default is 500 milliseconds; option B<-mc>.
803
766=item B<utmpInhibit:> I<boolean> 804=item B<utmpInhibit:> I<boolean>
767 805
768B<True>: inhibit writing record into the system log file B<utmp>; 806B<True>: inhibit writing record into the system log file B<utmp>;
769option B<-ut>. B<False>: write record into the system log file B<utmp> 807option B<-ut>. B<False>: write record into the system log file B<utmp>
770[default]; option B<+ut>. 808[default]; option B<+ut>.
780Example: 818Example:
781 819
782 URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX) 820 URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
783 821
784This creates a new file in your home directory with the screen contents 822This creates a new file in your home directory with the screen contents
785everytime you hit C<Print>. 823every time you hit C<Print>.
824
825=item B<scrollstyle:> I<mode>
826
827Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
828the author's favourite.
829
830=item B<thickness:> I<number>
831
832Set the scrollbar width in pixels.
786 833
787=item B<scrollBar:> I<boolean> 834=item B<scrollBar:> I<boolean>
788 835
789B<True>: enable the scrollbar [default]; option B<-sb>. B<False>: 836B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
790disable the scrollbar; option B<+sb>. 837disable the scrollbar; option B<+sb>.
810B<False>: do not scroll to bottom when tty receives output; option 857B<False>: do not scroll to bottom when tty receives output; option
811B<+si>. 858B<+si>.
812 859
813=item B<scrollWithBuffer:> I<boolean> 860=item B<scrollWithBuffer:> I<boolean>
814 861
815B<True>: scroll with scrollback buffer when tty receives new lines (and 862B<True>: scroll with scrollback buffer when tty receives new lines (i.e.
816B<scrollTtyOutput> is False); option B<-sw>. B<False>: do not scroll 863try to show the same lines) and B<scrollTtyOutput> is False; option
817with scrollback buffer when tty recieves new lines; option B<+sw>. 864B<-sw>. B<False>: do not scroll with scrollback buffer when tty receives
865new lines; option B<+sw>.
818 866
819=item B<scrollTtyKeypress:> I<boolean> 867=item B<scrollTtyKeypress:> I<boolean>
820 868
821B<True>: scroll to bottom when a non-special key is pressed. Special keys 869B<True>: scroll to bottom when a non-special key is pressed. Special keys
822are those which are intercepted by rxvt-unicode for special handling and 870are those which are intercepted by rxvt-unicode for special handling and
853=item B<termName:> I<termname> 901=item B<termName:> I<termname>
854 902
855Specifies the terminal type name to be set in the B<TERM> environment 903Specifies the terminal type name to be set in the B<TERM> environment
856variable; option B<-tn>. 904variable; option B<-tn>.
857 905
858=item B<linespace:> I<number> 906=item B<lineSpace:> I<number>
859 907
860Specifies number of lines (pixel height) to insert between each row of 908Specifies number of lines (pixel height) to insert between each row of
861the display [default 0]; option B<-lsp>. 909the display [default 0]; option B<-lsp>.
862 910
863=item B<meta8:> I<boolean> 911=item B<meta8:> I<boolean>
877 925
878=item B<cursorBlink:> I<boolean> 926=item B<cursorBlink:> I<boolean>
879 927
880B<True>: blink the cursor. B<False>: do not blink the cursor [default]; 928B<True>: blink the cursor. B<False>: do not blink the cursor [default];
881option B<-bc>. 929option B<-bc>.
930
931=item B<cursorUnderline:> I<boolean>
932
933B<True>: Make the cursor underlined. B<False>: Make the cursor a box [default];
934option B<-uc>.
882 935
883=item B<pointerBlank:> I<boolean> 936=item B<pointerBlank:> I<boolean>
884 937
885B<True>: blank the pointer when a key is pressed or after a set number 938B<True>: blank the pointer when a key is pressed or after a set number
886of seconds of inactivity. B<False>: the pointer is always visible 939of seconds of inactivity. B<False>: the pointer is always visible
892 945
893=item B<pointerColor2:> I<colour> 946=item B<pointerColor2:> I<colour>
894 947
895Mouse pointer background colour. 948Mouse pointer background colour.
896 949
950=item B<pointerShape:> I<string>
951
952Compile I<frills>: Specifies the name of the mouse pointer shape
953[default B<xterm>]. See the macros in the B<X11/cursorfont.h> include
954file for possible values (omit the C<XC_> prefix).
955
897=item B<pointerBlankDelay:> I<number> 956=item B<pointerBlankDelay:> I<number>
898 957
899Specifies number of seconds before blanking the pointer [default 2]. Use a 958Specifies number of seconds before blanking the pointer [default 2]. Use a
900large number (e.g. C<987654321>) to effectively disable the timeout. 959large number (e.g. C<987654321>) to effectively disable the timeout.
901 960
902=item B<backspacekey:> I<string> 961=item B<backspacekey:> I<string>
903 962
904The string to send when the backspace key is pressed. If set to B<DEC> 963The string to send when the backspace key is pressed. If set to B<DEC>
905or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace> 964or unset it will send B<Delete> (code 127) or, with control, B<Backspace>
906(code 8) - which can be reversed with the appropriate DEC private mode 965(code 8) - which can be reversed with the appropriate DEC private mode
907escape sequence. 966escape sequence.
908 967
909=item B<deletekey:> I<string> 968=item B<deletekey:> I<string>
910 969
915=item B<cutchars:> I<string> 974=item B<cutchars:> I<string>
916 975
917The characters used as delimiters for double-click word selection 976The characters used as delimiters for double-click word selection
918(whitespace delimiting is added automatically if resource is given). 977(whitespace delimiting is added automatically if resource is given).
919 978
920When the selection extension is in use (the default if compiled in, see 979When the perl selection extension is in use (the default if compiled
921the @@RXVT_NAME@@perl(3) manpage), a suitable regex using these characters 980in, see the @@RXVT_NAME@@perl(3) manpage), a suitable regex using these
922will be created (if the resource exists, otherwise, no regex will be 981characters will be created (if the resource exists, otherwise, no regex
923created). In this mode, characters outside ISO-8859-1 can be used. 982will be created). In this mode, characters outside ISO-8859-1 can be used.
924 983
925When the selection extension is not used, only ISO-8859-1 characters can 984When the selection extension is not used, only ISO-8859-1 characters can
926be used. If not specified, the built-in default is used: 985be used. If not specified, the built-in default is used:
927 986
928B<< BACKSLASH `"'&()*,;<=>?@[]{|} >> 987B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
929 988
930=item B<preeditType:> I<style> 989=item B<preeditType:> I<style>
931 990
932B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 991B<OnTheSpot>, B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
933 992
934=item B<inputMethod:> I<name> 993=item B<inputMethod:> I<name>
935 994
936I<name> of inputMethod to use; option B<-im>. 995I<name> of inputMethod to use; option B<-im>.
937 996
987 1046
988Turn on/off secondary screen (default enabled). 1047Turn on/off secondary screen (default enabled).
989 1048
990=item B<secondaryScroll:> I<boolean> 1049=item B<secondaryScroll:> I<boolean>
991 1050
992Turn on/off secondary screen scroll (default enabled). If the this 1051Turn on/off secondary screen scroll (default enabled). If this
993option is enabled, scrolls on the secondary screen will change the 1052option is enabled, scrolls on the secondary screen will change the
994scrollback buffer and switching to/from the secondary screen will 1053scrollback buffer and, when secondaryScreen is off, switching
995instead scroll the screen up. 1054to/from the secondary screen will instead scroll the screen up.
996 1055
997=item B<hold>: I<boolean> 1056=item B<hold>: I<boolean>
998 1057
999Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ 1058Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
1000will not immediately destroy its window when the program executed within 1059will not immediately destroy its window when the program executed within
1001it exits. Instead, it will wait till it is being killed or closed by the 1060it exits. Instead, it will wait till it is being killed or closed by the
1002user. 1061user.
1003 1062
1063=item B<chdir>: I<path>
1064
1065Sets the working directory for the shell (or the command specified via
1066B<-e>). The I<path> must be an absolute path and it must exist for
1067@@RXVT_NAME@@ to start. If it isn't specified then the current working
1068directory will be used; option B<-cd>.
1069
1004=item B<keysym.>I<sym>: I<string> 1070=item B<keysym.>I<sym>: I<action>
1005 1071
1006Compile I<frills>: Associate I<string> with keysym I<sym>. The 1072Compile I<frills>: Associate I<action> with keysym I<sym>. The intervening
1007intervening resource name B<keysym.> cannot be omitted. 1073resource name B<keysym.> cannot be omitted.
1008 1074
1009The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be 1075Using this resource, you can map key combinations such as
1010any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>, 1076C<Ctrl-Shift-BackSpace> to various actions, such as outputting a different
1011B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>, 1077string than would normally result from that combination, making the
1012and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>, 1078terminal scroll up or down the way you want it, or any other thing an
1013B<2>, B<3>, B<4>, B<5>. 1079extension might provide.
1080
1081The key combination that triggers the action, I<sym>, has the following format:
1082
1083 (modifiers-)key
1084
1085Where I<modifiers> can be any combination of B<ISOLevel3>, B<AppKeypad>,
1086B<Control>, B<NumLock>, B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>,
1087B<Mod3>, B<Mod4>, B<Mod5>, and the abbreviated B<I>, B<K>, B<C>, B<N>,
1088B<S>, B<M>, B<A>, B<L>, B<1>, B<2>, B<3>, B<4>, B<5>.
1014 1089
1015The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to 1090The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
1016whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr 1091whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
1017keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the 1092keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1018current application keymap mode state. 1093current application keymap mode state.
1019 1094
1020The spellings of I<key> can be obtained by using B<xev>(1) command or 1095Due the the large number of modifier combinations, a key mapping will
1021searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and 1096match if I<at least> the specified identifiers are being set, and no other
1097key mappings with those and more bits are being defined. That means that
1098defining a mapping for C<a> will automatically provide definitions for
1099C<Meta-a>, C<Shift-a> and so on, unless some of those are defined mappings
1100themselves. See the C<builtin:> action, below, for a way to work around
1101this when this is a problem.
1102
1103The spelling of I<key> depends on your implementation of X. An easy way to
1104find a key name is to use the B<xev>(1) command. You can find a list by
1105looking for the C<XK_> macros in the B<X11/keysymdef.h> include file (omit
1022omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex 1106the C<XK_> prefix). Alternatively you can specify I<key> by its hex keysym
1023keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not 1107value (B<0x0000 - 0xFFFF>).
1024performed in an exact manner; however, the closest match is assured.
1025 1108
1026I<string> may contain escape values (C<\a>: bell, C<\b>: backspace, 1109As with any resource value, the I<action> string may contain backslash
1027C<\e>, C<\E>: escape, C<\n>: newline, C<\r>: carriage return, C<\t>: tab, 1110escape sequences (C<\n>: newline, C<\\>: backslash, C<\000>: octal
1028C<\000>: octal number) or verbatim control characters (C<^?>: delete, 1111number), see RESOURCES in C<man 7 X> for further details.
1029C<^@>: null, C<^A> ...) and may be enclosed with double quotes so that it
1030can start or end with whitespace.
1031 1112
1032Please note that you need to double the C<\> in resource files, as 1113An action starts with an action prefix that selects a certain type
1033Xlib itself does it's own de-escaping (you can use C<\033> instead of 1114of action, followed by a colon. An action string without colons is
1034C<\e> (and so on), which will work with both Xt and @@RXVT_NAME@@'s own 1115interpreted as a literal string to pass to the tty (as if it was
1035processing). 1116prefixed with C<string:>).
1036 1117
1037You can define a range of keysyms in one shot by providing a I<string> 1118The following action prefixes are known - extensions can provide
1038with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimeter `/' 1119additional prefixes:
1120
1121=over 4
1122
1123=item string:STRING
1124
1125If the I<action> starts with C<string:> (or otherwise contains no colons),
1126then the remaining C<STRING> will be passed to the program running in the
1127terminal. For example, you could replace whatever Shift-Tab outputs by the
1128string C<echo rm -rf /> followed by a newline:
1129
1130 URxvt.keysym.Shift-Tab: string:echo rm -rf /\n
1131
1132This could in theory be used to completely redefine your keymap.
1133
1134In addition, for actions of this type, you can define a range of
1135keysyms in one shot by loading the C<keysym-list> perl extension and
1136providing an I<action> with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where
1039should be a character not used by the strings. 1137the delimiter `/' should be a character not used by the strings.
1040 1138
1041Its usage can be demonstrated by an example: 1139Its usage can be demonstrated by an example:
1042 1140
1043 URxvt.keysym.M-C-0x61: list|\033<M-C-|abc|> 1141 URxvt.keysym.M-C-0x61: list|\033<|abc|>
1044 1142
1045The above line is equivalent to the following three lines: 1143The above line is equivalent to the following three lines:
1046 1144
1047 URxvt.keysym.Meta-Control-0x61: \033<M-C-a> 1145 URxvt.keysym.Meta-Control-0x61: string:\033<a>
1048 URxvt.keysym.Meta-Control-0x62: \033<M-C-b> 1146 URxvt.keysym.Meta-Control-0x62: string:\033<b>
1049 URxvt.keysym.Meta-Control-0x63: \033<M-C-c> 1147 URxvt.keysym.Meta-Control-0x63: string:\033<c>
1050 1148
1149=item command:STRING
1150
1051If I<string> takes the form of C<command:STRING>, the specified B<STRING> 1151If I<action> takes the form of C<command:STRING>, the specified B<STRING>
1052is interpreted and executed as @@RXVT_NAME@@'s control sequence. For 1152is interpreted and executed as @@RXVT_NAME@@'s control sequence (basically
1153the opposite of C<string:> - instead of sending it to the program running
1154in the terminal, it will be treated as if it were program output). This is
1155most useful to feed command sequences into @@RXVT_NAME@@.
1156
1053example the following means "change the current locale to C<zh_CN.GBK> 1157For example the following means "change the current locale to C<zh_CN.GBK>
1054when Control-Meta-c is being pressed": 1158when Control-Meta-c is being pressed":
1055 1159
1056 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 1160 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1057 1161
1058If I<string> takes the form C<perl:STRING>, then the specified B<STRING> 1162The following example will map Control-Meta-1 and Control-Meta-2 to
1059is passed to the C<on_keyboard_command> perl handler. See the @@RXVT_NAME@@perl(3) 1163the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1060manpage. For example, the F<selection> extension (activated via 1164font-switching at runtime:
1061C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1062 1165
1063 URxvt.keysym.M-C-c: perl:selection:rot13 1166 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1167 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1064 1168
1065Due the the large number of modifier combinations, a defined key mapping 1169Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1066will match if at I<at least> the specified identifiers are being set, and 1170info):
1067no other key mappings with those and more bits are being defined. That
1068means that defining a key map for C<a> will automatically provide
1069definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1070mappings themselves.
1071 1171
1072Unfortunately, this will override built-in key mappings. For example 1172 URxvt.keysym.M-C-3: command:\033[8;25;80t
1173 URxvt.keysym.M-C-4: command:\033[8;48;110t
1174
1175=item builtin:
1176
1177The builtin action is the action that @@RXVT_NAME@@ would execute if no
1178key binding existed for the key combination. The obvious use is to undo
1179the effect of existing bindings. The not so obvious use is to reinstate
1180bindings when another binding overrides too many modifiers.
1181
1073if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s 1182For example if you overwrite the C<Insert> key you will disable
1074C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the 1183@@RXVT_NAME@@'s C<Shift-Insert> mapping. To re-enable that, you can poke
1075user-defined keymap using the C<builtin:> replacement: 1184"holes" into the user-defined keymap using the C<builtin:> replacement:
1076 1185
1077 URxvt.keysym.Insert: <my insert key sequence> 1186 URxvt.keysym.Insert: <my insert key sequence>
1078 URxvt.keysym.S-Insert: builtin: 1187 URxvt.keysym.S-Insert: builtin:
1079 1188
1080The first line defines a mapping for C<Insert> and I<any> combination 1189The first line defines a mapping for C<Insert> and I<any> combination
1081of modifiers. The second line re-establishes the default mapping for 1190of modifiers. The second line re-establishes the default mapping for
1082C<Shift-Insert>. 1191C<Shift-Insert>.
1083 1192
1084The following example will map Control-Meta-1 and Control-Meta-2 to 1193=item builtin-string:
1085the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1086font-switching at runtime:
1087 1194
1088 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007 1195This action is mainly useful to restore string mappings for keys that
1089 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007 1196have predefined actions in @@RXVT_NAME@@. The exact semantics are a bit
1197difficult to explain - basically, this action will send the string to the
1198application that would be sent if @@RXVT_NAME@@ wouldn't have a built-in
1199action for it.
1090 1200
1091Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more 1201An example might make it clearer: @@RXVT_NAME@@ normally pastes the
1092info): 1202selection when you press C<Shift-Insert>. With the following bindings, it
1203would instead emit the (undocumented, but what applications running in the
1204terminal might expect) sequence C<ESC [ 2 $> instead:
1093 1205
1094 URxvt.keysym.M-C-3: command:\033[8;25;80t 1206 URxvt.keysym.S-Insert: builtin-string:
1095 URxvt.keysym.M-C-4: command:\033[8;48;110t 1207 URxvt.keysym.C-S-Insert: builtin:
1208
1209The first line disables the paste functionality for that key
1210combination, and the second reinstates the default behaviour for
1211C<Control-Shift-Insert>, which would otherwise be overridden.
1212
1213Similarly, to let applications gain access to the C<C-M-c> (copy to
1214clipboard) and C<C-M-v> (paste clipboard) key combination, you can do
1215this:
1216
1217 URxvt.keysym.C-M-c: builtin-string:
1218 URxvt.keysym.C-M-v: builtin-string:
1219
1220=item EXTENSION:STRING
1221
1222An action of this form invokes the action B<STRING>, if any, provided
1223by the @@RXVT_NAME@@perl(3) extension B<EXTENSION>. The extension will
1224be loaded automatically if necessary.
1225
1226Not all extensions define actions, but popular extensions that do
1227include the I<selection> and I<matcher> extensions (documented in their
1228own manpages, @@RXVT_NAME@@-selection(1) and @@RXVT_NAME@@-matcher(1),
1229respectively).
1230
1231From the silly examples department, this will rot13-"encrypt"
1232@@RXVT_NAME@@'s selection when Alt-Control-c is pressed on typical PC
1233keyboards:
1234
1235 URxvt.keysym.M-C-c: selection:rot13
1236
1237=item perl:STRING *DEPRECATED*
1238
1239This is a deprecated way of invoking commands provided by perl
1240extensions. It is still supported, but should not be used anymore.
1241
1242=back
1096 1243
1097=item B<perl-ext-common>: I<string> 1244=item B<perl-ext-common>: I<string>
1098 1245
1099=item B<perl-ext>: I<string> 1246=item B<perl-ext>: I<string>
1100 1247
1102use in this terminal instance; option B<-pe>. 1249use in this terminal instance; option B<-pe>.
1103 1250
1104Extension names can be prefixed with a C<-> sign to prohibit using 1251Extension names can be prefixed with a C<-> sign to prohibit using
1105them. This can be useful to selectively disable some extensions loaded 1252them. This can be useful to selectively disable some extensions loaded
1106by default, or specified via the C<perl-ext-common> resource. For 1253by default, or specified via the C<perl-ext-common> resource. For
1107example, C<default,-selection> will use all the default extension except 1254example, C<default,-selection> will use all the default extensions except
1108C<selection>. 1255C<selection>.
1109 1256
1110Extension names can also be followed by an argument in angle brackets 1257The default set includes the C<selection>, C<option-popup>,
1111(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for 1258C<selection-popup>, C<readline> and C<searchable-scrollback>
1112searchable scorllback to Alt/Meta-s). Mentioning the same extension 1259extensions, and extensions which are mentioned in B<keysym> resources.
1113multiple times with different arguments will pass multiple arguments to 1260
1114the extension. 1261Any extension such that a corresponding resource is given on the
1262command line is automatically appended to B<perl-ext>.
1115 1263
1116Each extension is looked up in the library directories, loaded if 1264Each extension is looked up in the library directories, loaded if
1117necessary, and bound to the current terminal instance. 1265necessary, and bound to the current terminal instance. When the library
1266search path contains multiple extension files of the same name, then the
1267first one found will be used.
1118 1268
1119If both of these resources are the empty string, then the perl 1269If both of these resources are the empty string, then the perl interpreter
1120interpreter will not be initialized. The idea behind two options is that 1270will not be initialized. The rationale for having two options is that
1121B<perl-ext-common> will be used for extensions that should be available to 1271B<perl-ext-common> will be used for extensions that should be available to
1122all instances, while B<perl-ext> is used for specific instances. 1272all instances, while B<perl-ext> is used for specific instances.
1123 1273
1124=item B<perl-eval>: I<string> 1274=item B<perl-eval>: I<string>
1125 1275
1126Perl code to be evaluated when all extensions have been registered. See 1276Perl code to be evaluated when all extensions have been registered. See
1127the @@RXVT_NAME@@perl(3) manpage. Due to security reasons, this resource 1277the @@RXVT_NAME@@perl(3) manpage.
1128will be ignored when running setuid/setgid.
1129 1278
1130=item B<perl-lib>: I<path> 1279=item B<perl-lib>: I<path>
1131 1280
1132Colon-separated list of additional directories that hold extension 1281Colon-separated list of additional directories that hold extension
1133scripts. When looking for extensions specified by the C<perl> resource, 1282scripts. When looking for perl extensions, @@RXVT_NAME@@ will first look
1134@@RXVT_NAME@@ will first look in these directories and then in 1283in these directories, then in C<$URXVT_PERL_LIB>, F<$HOME/.urxvt/ext> and
1135F<@@RXVT_LIBDIR@@/urxvt/perl/>. Due to security reasons, this resource 1284lastly in F<@@RXVT_LIBDIR@@/urxvt/perl/>.
1136will be ignored when running setuid/setgid.
1137 1285
1138See the @@RXVT_NAME@@perl(3) manpage. 1286See the @@RXVT_NAME@@perl(3) manpage.
1139 1287
1140=item B<< selection.pattern-I<idx> >>: I<perl-regex> 1288=item B<< selection.pattern-I<idx> >>: I<perl-regex>
1141 1289
1145=item B<< selection-autotransform.I<idx> >>: I<perl-transform> 1293=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1146 1294
1147Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage 1295Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1148for details. 1296for details.
1149 1297
1150=item B<searchable-scrollback:> I<keysym> 1298=item B<searchable-scrollback:> I<keysym> *DEPRECATED*
1151 1299
1152Sets the hotkey that starts the incremental scrollback buffer search 1300This resource is deprecated and will be removed. Use a B<keysym> resource
1153(default: C<M-s>). 1301instead, e.g.:
1154 1302
1303 URxvt.keysym.M-s: searchable-scrollback:start
1304
1155=item B<urlLauncher>: I<string> 1305=item B<url-launcher>: I<string>
1156 1306
1157Specifies the program to be started with a URL argument. Used by the 1307Specifies the program to be started with a URL argument. Used by the
1158C<selection-popup> and C<mark-urls> perl extensions. 1308C<selection-popup> and C<matcher> perl extensions.
1159 1309
1160=item B<transient-for>: I<windowid> 1310=item B<transient-for>: I<windowid>
1161 1311
1162Compile I<frills>: Sets the WM_TRANSIENT_FOR property to the given window id. 1312Compile I<frills>: Sets the WM_TRANSIENT_FOR property to the given window id.
1163 1313
1164=item B<override-redirect>: I<boolean> 1314=item B<override-redirect>: I<boolean>
1165 1315
1166Compile I<frills>: Sets override-redirect for the terminal window, making 1316Compile I<frills>: Sets override-redirect for the terminal window, making
1167it almost invisible to window managers; option B<-override-redirect>. 1317it almost invisible to window managers; option B<-override-redirect>.
1318
1319=item B<iso14755:> I<boolean>
1320
1321Turn on/off ISO 14755 (default enabled).
1322
1323=item B<iso14755_52:> I<boolean>
1324
1325Turn on/off ISO 14755 5.2 mode (default enabled).
1326
1327=back
1328
1329=head1 BACKGROUND IMAGE OPTIONS AND RESOURCES
1330
1331=over 4
1332
1333=item B<-pixmap> I<file[;oplist]>
1334
1335=item B<backgroundPixmap:> I<file[;oplist]>
1336
1337Compile I<pixbuf>: Use the specified image file as the window's
1338background and also optionally specify a colon separated list of
1339operations to modify it. Note that you may need to quote the C<;>
1340character when using the command line option, as C<;> is usually a
1341metacharacter in shells. Supported operations are:
1342
1343=over 4
1344
1345=item B<WxH+X+Y>
1346
1347sets scale and position. B<"W" / "H"> specify the horizontal/vertical
1348scale (percent), and B<"X" / "Y"> locate the image centre (percent). A
1349scale of 0 disables scaling.
1350
1351=item B<op=tile>
1352
1353enables tiling
1354
1355=item B<op=keep-aspect>
1356
1357maintain the image aspect ratio when scaling
1358
1359=item B<op=root-align>
1360
1361use the position of the terminal window relative to the root window as
1362the image offset, simulating a root window background
1363
1364=back
1365
1366The default scale and position setting is C<100x100+50+50>.
1367Alternatively, a predefined set of templates can be used to achieve
1368the most common setups:
1369
1370=over 4
1371
1372=item B<style=tiled>
1373
1374the image is tiled with no scaling. Equivalent to 0x0+0+0:op=tile
1375
1376=item B<style=aspect-stretched>
1377
1378the image is scaled to fill the whole window maintaining the aspect
1379ratio and centered. Equivalent to 100x100+50+50:op=keep-aspect
1380
1381=item B<style=stretched>
1382
1383the image is scaled to fill the whole window. Equivalent to 100x100
1384
1385=item B<style=centered>
1386
1387the image is centered with no scaling. Equivalent to 0x0+50+50
1388
1389=item B<style=root-tiled>
1390
1391the image is tiled with no scaling and using 'root' positioning.
1392Equivalent to 0x0:op=tile:op=root-align
1393
1394=back
1395
1396If multiple templates are specified the last one wins. Note that a
1397template overrides all the scale, position and operations settings.
1398
1399If used in conjunction with pseudo-transparency, the specified pixmap
1400will be blended over the transparent background using alpha-blending.
1401
1402=item B<-tr>|B<+tr>
1403
1404=item B<transparent:> I<boolean>
1405
1406Turn on/off pseudo-transparency by using the root pixmap as background.
1407
1408B<-ip> (B<inheritPixmap>) is still accepted as an obsolete alias but
1409will be removed in future versions.
1410
1411=item B<-tint> I<colour>
1412
1413=item B<tintColor:> I<colour>
1414
1415Tint the transparent background with the given colour. Note that a
1416black tint yields a completely black image while a white tint yields
1417the image unchanged.
1418
1419=item B<-sh> I<number>
1420
1421=item B<shading:> I<number>
1422
1423Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
1424A value of 100 means no shading.
1425
1426=item B<-blr> I<HxV>
1427
1428=item B<blurRadius:> I<HxV>
1429
1430Apply gaussian blur with the specified radius to the transparent
1431background. If a single number is specified, the vertical and
1432horizontal radii are considered to be the same. Setting one of the
1433radii to 1 and the other to a large number creates interesting effects
1434on some backgrounds. The maximum radius value is 128. An horizontal or
1435vertical radius of 0 disables blurring.
1436
1437=item B<path:> I<path>
1438
1439Specify the colon-delimited search path for finding background image files.
1168 1440
1169=back 1441=back
1170 1442
1171=head1 THE SCROLLBAR 1443=head1 THE SCROLLBAR
1172 1444
1191application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~> 1463application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
1192(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the 1464(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
1193up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down), 1465up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
1194respectively. 1466respectively.
1195 1467
1196=head1 TEXT SELECTION AND INSERTION 1468=head1 THE SELECTION: SELECTING AND PASTING TEXT
1197 1469
1198The behaviour of text selection and insertion mechanism is similar to 1470The behaviour of text selection and insertion/pasting mechanism is similar
1199I<xterm>(1). 1471to I<xterm>(1).
1200 1472
1201=over 4 1473=over 4
1202 1474
1203=item B<Selection>: 1475=item B<Selecting>:
1204 1476
1205Left click at the beginning of the region, drag to the end of the region 1477Left click at the beginning of the region, drag to the end of the region
1206and release; Right click to extend the marked region; Left double-click 1478and release; Right click to extend the marked region; Left double-click
1207to select a word; Left triple-click to select the entire logical line 1479to select a word; Left triple-click to select the entire logical line
1208(which can span multiple screen lines), unless modified by resource 1480(which can span multiple screen lines), unless modified by resource
1212(Compile: I<frills>) will create a rectangular selection instead of a 1484(Compile: I<frills>) will create a rectangular selection instead of a
1213normal one. In this mode, every selected row becomes its own line in the 1485normal one. In this mode, every selected row becomes its own line in the
1214selection, and trailing whitespace is visually underlined and removed from 1486selection, and trailing whitespace is visually underlined and removed from
1215the selection. 1487the selection.
1216 1488
1217=item B<Insertion>: 1489=item B<Pasting>:
1218 1490
1219Pressing and releasing the Middle mouse button in an B<@@RXVT_NAME@@> 1491Pressing and releasing the Middle mouse button in an B<@@RXVT_NAME@@>
1220window causes the value of the PRIMARY selection (or CLIPBOARD with the 1492window causes the value of the PRIMARY selection (or CLIPBOARD with the
1221Meta modifier) to be inserted as if it had been typed on the keyboard. 1493B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1222 1494
1223Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be 1495Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1224inserted too. 1496inserted too.
1225 1497
1498rxvt-unicode also provides the bindings B<Ctrl-Meta-c> and
1499<Ctrl-Meta-v> to interact with the CLIPBOARD selection. The first
1500binding causes the value of the internal selection to be copied to the
1501CLIPBOARD selection, while the second binding causes the value of the
1502CLIPBOARD selection to be inserted.
1503
1226=back 1504=back
1227 1505
1228=head1 CHANGING FONTS 1506=head1 CHANGING FONTS
1229 1507
1230Changing fonts (or font sizes, respectively) via the keypad is not yet 1508Changing fonts (or font sizes, respectively) via the keypad is not yet
1243 1521
1244=head1 ISO 14755 SUPPORT 1522=head1 ISO 14755 SUPPORT
1245 1523
1246ISO 14755 is a standard for entering and viewing unicode characters 1524ISO 14755 is a standard for entering and viewing unicode characters
1247and character codes using the keyboard. It consists of 4 parts. The 1525and character codes using the keyboard. It consists of 4 parts. The
1248first part is available rxvt-unicode has been compiled with 1526first part is available if rxvt-unicode has been compiled with
1249C<--enable-frills>, the rest is available when rxvt-unicode was compiled 1527C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1250with C<--enable-iso14755>. 1528with C<--enable-iso14755>.
1251 1529
1252=over 4 1530=over 4
1253 1531
1273This mode lets you input characters representing the keycap symbols of 1551This mode lets you input characters representing the keycap symbols of
1274your keyboard, if representable in the current locale encoding. 1552your keyboard, if representable in the current locale encoding.
1275 1553
1276Start by pressing C<Control> and C<Shift> together, then releasing 1554Start by pressing C<Control> and C<Shift> together, then releasing
1277them. The next special key (cursor keys, home etc.) you enter will not 1555them. The next special key (cursor keys, home etc.) you enter will not
1278invoke it's usual function but instead will insert the corresponding 1556invoke its usual function but instead will insert the corresponding
1279keycap symbol. The symbol will only be entered when the key has been 1557keycap symbol. The symbol will only be entered when the key has been
1280released, otherwise pressing e.g. C<Shift> would enter the symbol for 1558released, otherwise pressing e.g. C<Shift> would enter the symbol for
1281C<ISO Level 2 Switch>, although your intention might have been to enter a 1559C<ISO Level 2 Switch>, although your intention might have been to enter a
1282reverse tab (Shift-Tab). 1560reverse tab (Shift-Tab).
1283 1561
1311B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that 1589B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
1312it can be seen via the I<who(1)> command, and can accept messages. To 1590it can be seen via the I<who(1)> command, and can accept messages. To
1313allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root 1591allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
1314on some systems or setgid to root or to some other group on others. 1592on some systems or setgid to root or to some other group on others.
1315 1593
1316=head1 COLORS AND GRAPHICS 1594=head1 COLOURS AND GRAPHICS
1317 1595
1318In addition to the default foreground and background colours, 1596In addition to the default foreground and background colours,
1319B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus 1597B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus
1320high-intensity bold/blink versions of the same). Here is a list of the 1598high-intensity (potentially bold/blink) versions of the same, and 72 (or
1321colours with their names. 1599240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB
1600cube plus a 8 (24) colour greyscale ramp.
1601
1602Here is a list of the ANSI colours with their names.
1322 1603
1323=begin table 1604=begin table
1324 1605
1325 B<color0> (black) = Black 1606 B<color0> (black) = Black
1326 B<color1> (red) = Red3 1607 B<color1> (red) = Red3
1346It is also possible to specify the colour values of B<foreground>, 1627It is also possible to specify the colour values of B<foreground>,
1347B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as 1628B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as
1348a number 0-15, as a convenient shorthand to reference the colour name of 1629a number 0-15, as a convenient shorthand to reference the colour name of
1349color0-color15. 1630color0-color15.
1350 1631
1351In addition to the colours defined above, @@RXVT_NAME@@ offers an 1632The following text gives values for the standard 88 colour mode (and
1352additional 72 colours. The first 64 of those (with indices 16 to 79) 1633values for the 256 colour mode in parentheses).
1353consist of a 4*4*4 RGB colour cube (i.e. I<index = r * 16 + g * 4 + b +
135416>), followed by 8 additional shades of gray (with indices 80 to 87).
1355 1634
1635The RGB cube uses indices 16..79 (16..231) using the following formulas:
1636
1637 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3
1638 index_256 = (r * 6 + g) * 6 + b + 16 # r, g, b = 0..5
1639
1640The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10%
1641steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of
1642the RGB cube.
1643
1356Together, all those colours implement the 88 colour xterm colours. Only 1644Together, all those colours implement the 88 (256) colour xterm
1357the first 16 can be changed using resources currently, the rest can only 1645colours. Only the first 16 can be changed using resources currently, the
1358be changed via command sequences ("escape codes"). 1646rest can only be changed via command sequences ("escape codes").
1647
1648Applications are advised to use terminfo or command sequences to discover
1649number and RGB values of all colours (yes, you can query this...).
1359 1650
1360Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by 1651Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by
1361always swapping the foreground/background colours. This is in contrast to 1652always swapping the foreground/background colours. This is in contrast to
1362I<xterm>(1) where the colours are only swapped if they have not otherwise 1653I<xterm>(1) where the colours are only swapped if they have not otherwise
1363been specified. For example, 1654been specified. For example,
1364 1655
1656 @@RXVT_NAME@@ -fg Black -bg White -rv
1657
1658would yield White on Black, while on I<xterm>(1) it would yield Black on
1659White.
1660
1661=head2 ALPHA CHANNEL SUPPORT
1662
1663If Xft support has been compiled in and as long as Xft/Xrender/X don't get
1664their act together, rxvt-unicode will do its own alpha channel management:
1665
1666You can prefix any colour with an opaqueness percentage enclosed in
1667brackets, i.e. C<[percent]>, where C<percent> is a decimal percentage
1668(0-100) that specifies the opacity of the colour, where C<0> is completely
1669transparent and C<100> is completely opaque. For example, C<[50]red> is a
1670half-transparent red, while C<[95]#00ff00> is an almost opaque green. This
1671is the recommended format to specify transparency values, and works with
1672all ways to specify a colour.
1673
1674For complete control, rxvt-unicode also supports
1675C<rgba:rrrr/gggg/bbbb/aaaa> (exactly four hex digits/component) colour
1676specifications, where the additional C<aaaa> component specifies opacity
1677(alpha) values. The minimum value of C<0000> is completely transparent,
1678while C<ffff> is completely opaque). The two example colours from
1679earlier could also be specified as C<rgba:ff00/0000/0000/8000> and
1680C<rgba:0000/ff00/0000/f332>.
1681
1682You probably need to specify B<"-depth 32">, too, to force a visual with
1683alpha channels, and have the luck that your X-server uses ARGB pixel
1684layout, as X is far from just supporting ARGB visuals out of the box, and
1685rxvt-unicode just fudges around.
1686
1687For example, the following selects an almost completely transparent black
1688background, and an almost opaque pink foreground:
1689
1690 @@RXVT_NAME@@ -depth 32 -bg rgba:0000/0000/0000/4444 -fg "[80]pink"
1691
1692When not using a background image, then the interpretation of the
1693alpha channel is up to your compositing manager (most interpret it as
1694transparency of course).
1695
1696When using a background pixmap or pseudo-transparency, then the background
1697colour will always behave as if it were completely transparent (so the
1698background image shows instead), regardless of how it was specified, while
1699other colours will either be transparent as specified (the background
1700image will show through) on servers supporting the RENDER extension, or
1701fully opaque on servers not supporting the RENDER EXTENSION.
1702
1703Please note that due to bugs in Xft, specifying alpha values might result
1704in garbage being displayed when the X-server does not support the RENDER
1705extension.
1706
1707=head1 ENVIRONMENT
1708
1709B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1710
1365=over 4 1711=over 4
1366 1712
1367=item B<@@RXVT_NAME@@ -fg Black -bg White -rv>
1368
1369would yield White on Black, while on I<xterm>(1) it would yield Black
1370on White.
1371
1372=back
1373
1374=head2 ALPHA CHANNEL SUPPORT
1375
1376If Xft support has been compiled in and as long as Xft/Xrender/X don't get
1377their act together, rxvt-unicode will support C<rgba:rrrr/gggg/bbbb/aaaa>
1378(recommended, but B<MUST> have 4 digits/component) colour specifications,
1379in addition to the ones provided by X, where the additional A component
1380specifies opacity (alpha) values. The minimum value of C<0> is completely
1381transparent). You can also prefix any color with C<[a]>, where C<a> is on
1382to four hex digits specifiying the opacity value.
1383
1384You probably need to specify B<"-depth 32">, too, and have the luck that
1385your X-server uses ARGB pixel layout, as X is far from just supporting
1386ARGB visuals out of the box, and rxvt-unicode just fudges around.
1387
1388For example, the following selects an almost completely transparent red
1389background, and an almost opaque pink foreground:
1390
1391 @@RXVT_NAME@@ -depth 32 -bg rgba:0000/0000/0000/2222 -fg "[e]pink"
1392
1393I<Please note that transparency of any kind if completely unsupported by
1394the author. Don't bug him with installation questions!>
1395
1396=head1 ENVIRONMENT
1397
1398B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1399
1400=over 4
1401
1402=item B<TERM> 1713=item B<TERM>
1403 1714
1404Normally set to C<rxvt-unicode>, unless overwritten at configure time, via 1715Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1405resources or on the commandline. 1716resources or on the command line.
1406 1717
1407=item B<COLORTERM> 1718=item B<COLORTERM>
1408 1719
1409Either C<rxvt>, C<rxvt-xpm>, depending on wether @@RXVT_NAME@@ was 1720Either C<rxvt>, C<rxvt-xpm>, depending on whether @@RXVT_NAME@@ was
1410compiled with XPM support, and optionally with the added extension 1721compiled with background image support, and optionally with the added
1411C<-mono> to indicate that rxvt-unicode runs on a monochrome screen. 1722extension C<-mono> to indicate that rxvt-unicode runs on a monochrome
1723screen.
1412 1724
1413=item B<COLORFGBG> 1725=item B<COLORFGBG>
1414 1726
1415Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is 1727Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
1416the colour code used as default foreground/text colour (or the string 1728the colour code used as default foreground/text colour (or the string
1417C<default> to indicate that the default-colour escape sequence is to be 1729C<default> to indicate that the default-colour escape sequence is to be
1418used), C<bg> is the colour code used as default background colour (or the 1730used), C<bg> is the colour code used as default background colour (or the
1419string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@ 1731string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1420was compiled with XPM support. Libraries like C<ncurses> and C<slang> can 1732was compiled with background image support. Libraries like C<ncurses>
1421(and do) use this information to optimize screen output. 1733and C<slang> can (and do) use this information to optimize screen output.
1422 1734
1423=item B<WINDOWID> 1735=item B<WINDOWID>
1424 1736
1425Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel 1737Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1426window, which usually has subwindows for the scrollbar, the terminal 1738window, which usually has subwindows for the scrollbar, the terminal
1432C<--with-terminfo=PATH>. 1744C<--with-terminfo=PATH>.
1433 1745
1434=item B<DISPLAY> 1746=item B<DISPLAY>
1435 1747
1436Used by @@RXVT_NAME@@ to connect to the display and set to the correct 1748Used by @@RXVT_NAME@@ to connect to the display and set to the correct
1437display in it's child processes. 1749display in its child processes if C<-display> isn't used to override. It
1750defaults to C<:0> if it doesn't exist.
1438 1751
1439=item B<SHELL> 1752=item B<SHELL>
1440 1753
1441The shell to be used for command execution, defaults to C</bin/sh>. 1754The shell to be used for command execution, defaults to C</bin/sh>.
1442 1755
1443=item B<RXVT_SOCKET> 1756=item B<RXVT_SOCKET> [I<sic>]
1444 1757
1445The unix domain socket path used by @@RXVT_NAME@@c(1) and 1758The unix domain socket path used by @@RXVT_NAME@@c(1) and
1446@@RXVT_NAME@@d(1). 1759@@RXVT_NAME@@d(1).
1447 1760
1448Default F<<< $HOME/.rxvt-unicode-I<< <nodename >> >>>. 1761Default F<<< $HOME/.urxvt/urxvtd-I<< <nodename> >> >>>.
1762
1763=item B<URXVT_PERL_LIB>
1764
1765Additional F<:>-separated library search path for perl extensions. Will be
1766searched after B<-perl-lib> but before F<~/.urxvt/ext> and the system library
1767directory.
1768
1769=item B<URXVT_PERL_VERBOSITY>
1770
1771See L<@@RXVT_NAME@@perl>(3).
1449 1772
1450=item B<HOME> 1773=item B<HOME>
1451 1774
1452Used to locate the default directory for the unix domain socket for 1775Used to locate the default directory for the unix domain socket for
1453daemon communications and to locate various resource files (such as 1776daemon communications and to locate various resource files (such as
1454C<.Xdefaults>) 1777C<.Xdefaults>)
1455 1778
1456=item B<XAPPLRESDIR> 1779=item B<XAPPLRESDIR>
1457 1780
1458Directory where various X resource files are being located. 1781Directory where application-specific X resource files are located.
1459 1782
1460=item B<XENVIRONMENT> 1783=item B<XENVIRONMENT>
1461 1784
1462If set and accessible, gives the name of a X resource file to be loaded by 1785If set and accessible, gives the name of a X resource file to be loaded by
1463@@RXVT_NAME@@. 1786@@RXVT_NAME@@.
1468 1791
1469=over 4 1792=over 4
1470 1793
1471=item B</usr/lib/X11/rgb.txt> 1794=item B</usr/lib/X11/rgb.txt>
1472 1795
1473Color names. 1796Colour names.
1474 1797
1475=back 1798=back
1476 1799
1477=head1 SEE ALSO 1800=head1 SEE ALSO
1478 1801
1802@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), @@RXVT_NAME@@-extensions(1),
1479@@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) 1803@@RXVT_NAME@@perl(3), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1480 1804
1481=head1 CURRENT PROJECT COORDINATOR 1805=head1 CURRENT PROJECT COORDINATOR
1482 1806
1483=over 4 1807=over 4
1484 1808
1485=item Project Coordinator 1809=item Project Coordinator
1486 1810
1487Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >> 1811Marc A. Lehmann <rxvt-unicode@schmorp.de>.
1488 1812
1489L<http://software.schmorp.de/pkg/rxvt-unicode.html> 1813L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1490 1814
1491=back 1815=back
1492 1816
1496 1820
1497=item John Bovey 1821=item John Bovey
1498 1822
1499University of Kent, 1992, wrote the original Xvt. 1823University of Kent, 1992, wrote the original Xvt.
1500 1824
1501=item Rob Nation L<< <nation@rocket.sanders.lockheed.com> >> 1825=item Rob Nation <nation@rocket.sanders.lockheed.com>
1502 1826
1503very heavily modified Xvt and came up with Rxvt 1827very heavily modified Xvt and came up with Rxvt
1504 1828
1505=item Angelo Haritsis L<< <ah@doc.ic.ac.uk> >> 1829=item Angelo Haritsis <ah@doc.ic.ac.uk>
1506 1830
1507wrote the Greek Keyboard Input (no longer in code) 1831wrote the Greek Keyboard Input (no longer in code)
1508 1832
1509=item mj olesen L<< <olesen@me.QueensU.CA> >> 1833=item mj olesen <olesen@me.QueensU.CA>
1510 1834
1511Wrote the menu system. 1835Wrote the menu system.
1512 1836
1513Project Coordinator (changes.txt 2.11 to 2.21) 1837Project Coordinator (changes.txt 2.11 to 2.21)
1514 1838
1515=item Oezguer Kesim L<< <kesim@math.fu-berlin.de> >> 1839=item Oezguer Kesim <kesim@math.fu-berlin.de>
1516 1840
1517Project Coordinator (changes.txt 2.21a to 2.4.5) 1841Project Coordinator (changes.txt 2.21a to 2.4.5)
1518 1842
1519=item Geoff Wing L<< <gcw@pobox.com> >> 1843=item Geoff Wing <gcw@pobox.com>
1520 1844
1521Rewrote screen display and text selection routines. 1845Rewrote screen display and text selection routines.
1522 1846
1523Project Coordinator (changes.txt 2.4.6 - rxvt-unicode) 1847Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1524 1848
1525=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >> 1849=item Marc Alexander Lehmann <rxvt-unicode@schmorp.de>
1526 1850
1527Forked rxvt-unicode, unicode support, rewrote almost all the code, perl 1851Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1528extension, random hacks, numerous bugfixes and extensions. 1852extension, random hacks, numerous bugfixes and extensions.
1529 1853
1530Project Coordinator (Changes 1.0 -) 1854Project Coordinator (Changes 1.0 -)
1531 1855
1532=item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >> 1856=item Emanuele Giaquinta <emanuele.giaquinta@gmail.com>
1533 1857
1534Pty/tty/utmp/wtmp rewrite, lots of random hacking and bugfixing. 1858pty/utmp code rewrite, image code improvements, many random hacks and bugfixes.
1535 1859
1536=back 1860=back
1537 1861

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines