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.43 by root, Sun Jan 16 19:22:16 2005 UTC vs.
Revision 1.212 by sf-exg, Sun Jan 1 14:31:28 2012 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 frequently 22See @@RXVT_NAME@@(7) (try C<man 7 @@RXVT_NAME@@>) for a list of
20asked questions and answer to them and some common problems. 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>.
21 26
22=head1 RXVT-UNICODE VS. RXVT 27=head1 RXVT-UNICODE VS. RXVT
23 28
24Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode 29Unlike the original rxvt, B<rxvt-unicode> stores all text in Unicode
25internally. That means it can store and display most scripts in the 30internally. That means it can store and display most scripts in the
26world. Being a terminal emulator, however, some things are very difficult, 31world. Being a terminal emulator, however, some things are very difficult,
27especially cursive scripts such as arabic, vertically written scripts 32especially cursive scripts such as arabic, vertically written scripts
28like mongolian or scripts requiring extremely complex combining rules, 33like mongolian or scripts requiring extremely complex combining rules,
29like tibetan or devenagari. Don't expect pretty output when using these 34like tibetan or devanagari. Don't expect pretty output when using these
30scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work 35scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
31fine, though. A somewhat difficult case are left-to-right scripts, such 36fine, though. A somewhat difficult case are right-to-left scripts, such
32as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms 37as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
33belong into the application, not the terminal emulator (too many things -- 38belong in the application, not the terminal emulator (too many things --
34such as cursor-movement while editing -- break otherwise), but that might 39such as cursor-movement while editing -- break otherwise), but that might
35change. 40change.
36 41
37If 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
38me recommend C<mlterm>, which is a very userfriendly, lean and clean 43me recommend C<mlterm>, which is a very user friendly, lean and clean
39terminal emulator. In fact, the reason rxvt-unicode was born was solely 44terminal emulator. In fact, the reason rxvt-unicode was born was solely
40because 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
41another for japanese. 46another for japanese.
42 47
43Therefore another design rationale was the use of multiple fonts to 48Therefore another design rationale was the use of multiple fonts to
44display characters: The idea of a single unicode font which many other 49display characters: The idea of a single unicode font which many other
45programs 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
46to choose any font for any script freely. 51to choose any font for any script freely.
47 52
48Apart from that, rxvt-unicode is also much better internationalised than 53Apart from that, rxvt-unicode is also much better internationalised than
49it'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
50in 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
51rxvt. This all in addition to dozens of other small improvements. 56rxvt. This all in addition to dozens of other small improvements.
52 57
53It is still faithfully following the original rxvt idea of being lean 58It is still faithfully following the original rxvt idea of being lean
54and nice on resources: for example, you can still configure rxvt-unicode 59and nice on resources: for example, you can still configure rxvt-unicode
55without 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
56a 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
57from within a single process, which makes startup time very fast and 62from within a single process, which makes startup time very fast and
58drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and 63drastically reduces memory usage. See @@RXVT_NAME@@d(1) (daemon) and
59@@RXVT_NAME@@c(1) (client). 64@@RXVT_NAME@@c(1) (client).
60 65
61It also makes technical information about escape sequences (which have 66It also makes technical information about escape sequences (which have
62been extended) easier accessible: see @@RXVT_NAME@@(7) for technical 67been extended) more accessible: see @@RXVT_NAME@@(7) for technical
63reference documentation (escape sequences etc.). 68reference documentation (escape sequences etc.).
64 69
65=head1 OPTIONS 70=head1 OPTIONS
66 71
67The 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
87 92
88Print out a message describing available options. 93Print out a message describing available options.
89 94
90=item B<-display> I<displayname> 95=item B<-display> I<displayname>
91 96
92Attempt 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>
93respected). In the absence of this option, the display specified by the 98is still respected. but deprecated). In the absence of this option, the
94B<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]
95 110
96=item B<-geometry> I<geom> 111=item B<-geometry> I<geom>
97 112
98Window geometry (B<-g> still respected); resource B<geometry>. 113Window geometry (B<-g> still respected); resource B<geometry>.
99 114
101 116
102Turn on/off simulated reverse video; resource B<reverseVideo>. 117Turn on/off simulated reverse video; resource B<reverseVideo>.
103 118
104=item B<-j>|B<+j> 119=item B<-j>|B<+j>
105 120
106Turn on/off jump scrolling; resource B<jumpScroll>. 121Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>.
107 122
108=item B<-ip>|B<+ip> 123=item B<-ss>|B<+ss>
109 124
110Turn on/off inheriting parent window's pixmap. Alternative form is 125Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>.
111B<-tr>; resource B<inheritPixmap>. 126
127=item B<-tr>|B<+tr>
128
129Turn on/off pseudo-transparency by using the root pixmap as background; resource B<transparent>.
130
131B<-ip> is still accepted as an obsolete alias but will be removed in
132future versions.
112 133
113=item B<-fade> I<number> 134=item B<-fade> I<number>
114 135
115Fade the text by the given percentage when focus is lost. resource B<fading>. 136Fade the text by the given percentage when focus is lost. Small values
137fade a little only, 100 completely replaces all colours by the fade
138colour; resource B<fading>.
139
140=item B<-fadecolor> I<colour>
141
142Fade to this colour when fading is used (see B<-fade>). The default colour
143is opaque black. resource B<fadeColor>.
116 144
117=item B<-tint> I<colour> 145=item B<-tint> I<colour>
118 146
119Tint the transparent background pixmap with the given colour when 147Tint the transparent background with the given colour;
120transparency is enabled with B<-tr> or B<-ip>. See also the B<-sh> 148resource I<tintColor>.
121option that can be used to brighten or darken the image in addition to
122tinting it.
123 149
124=item B<-sh> 150=item B<-sh> I<number>
125 151
126I<number> Darken (0 .. 100) or lighten (-1 .. -100) the transparent 152Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
127background image in addition to tinting it (i.e. B<-tint> must be 153A value of 100 means no shading; resource I<shading>.
128specified, too, e.g. C<-tint white>). 154
155=item B<-blt> I<string>
156
157Specify background blending type. If background pixmap is specified
158at the same time as transparency - such pixmap will be blended over
159the transparent background, using the method specified. Supported values are:
160B<add>, B<alphablend>, B<allanon> - colour values averaging, B<colorize>,
161B<darken>, B<diff>, B<dissipate>, B<hue>, B<lighten>, B<overlay>,
162B<saturate>, B<screen>, B<sub>, B<tint>, B<value>. The default is
163alpha-blending. Compile I<afterimage>; resource I<blendType>.
164
165=item B<-blr> I<HxV>
166
167Apply Gaussian Blur with the specified radii to the transparent
168background. If a single number is specified, the vertical and
169horizontal radii are considered to be the same. Setting one of the
170radii to 1 and the other to a large number creates interesting effects
171on some backgrounds. The maximum radius value is 128. An horizontal or
172vertical radius of 0 disables blurring;
173resource I<blurRadius>.
174
175=item B<-icon> I<file>
176
177Compile I<afterimage> or I<pixbuf>: Use the specified image as application icon. This
178is used by many window managers, taskbars and pagers to represent the
179application window; resource I<iconFile>.
129 180
130=item B<-bg> I<colour> 181=item B<-bg> I<colour>
131 182
132Window background colour; resource B<background>. 183Window background colour; resource B<background>.
133 184
134=item B<-fg> I<colour> 185=item B<-fg> I<colour>
135 186
136Window foreground colour; resource B<foreground>. 187Window foreground colour; resource B<foreground>.
137 188
138=item B<-pixmap> I<file[;geom]> 189=item B<-pixmap> I<file[;oplist]>
139 190
140Compile I<XPM>: Specify XPM file for the background and also optionally 191Compile I<afterimage> or I<pixbuf>: Specify image file for the background and also
141specify its scaling with a geometry string. Note you may need to 192optionally specify a list of operations to modify it. Note you may need to
142add quotes to avoid special shell interpretation of the C<;> in the 193add quotes to avoid special shell interpretation of the C<;> in the
143command-line; resource B<backgroundPixmap>. 194command-line; for more details see resource B<backgroundPixmap>.
144 195
145=item B<-cr> I<colour> 196=item B<-cr> I<colour>
146 197
147The cursor colour; resource B<cursorColor>. 198The cursor colour; resource B<cursorColor>.
148 199
160resource B<borderColor>. 211resource B<borderColor>.
161 212
162=item B<-fn> I<fontlist> 213=item B<-fn> I<fontlist>
163 214
164Select the fonts to be used. This is a comma separated list of font names 215Select the fonts to be used. This is a comma separated list of font names
165that are used in turn when trying to display Unicode characters. The 216that are checked in order when trying to find glyphs for characters. The
166first font defines the cell size for characters; other fonts might be 217first font defines the cell size for characters; other fonts might be
167smaller, but not (in general) larger. A (hopefully) reasonable default 218smaller, but not (in general) larger. A (hopefully) reasonable default
168font list is always appended to it. See resource B<font> for more details. 219font list is always appended to it. See resource B<font> for more details.
169 220
170In short, to specify an X11 core font, just specify it's name or prefix it 221In short, to specify an X11 core font, just specify its name or prefix it
171with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>, 222with C<x:>. To specify an XFT-font, you need to prefix it with C<xft:>,
172e.g.: 223e.g.:
173 224
174 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15" 225 @@RXVT_NAME@@ -fn "xft:Bitstream Vera Sans Mono:pixelsize=15"
175 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono" 226 @@RXVT_NAME@@ -fn "9x15bold,xft:Bitstream Vera Sans Mono"
177See also the question "How does rxvt-unicode choose fonts?" in the FAQ 228See also the question "How does rxvt-unicode choose fonts?" in the FAQ
178section of @@RXVT_NAME@@(7). 229section of @@RXVT_NAME@@(7).
179 230
180=item B<-fb> I<fontlist> 231=item B<-fb> I<fontlist>
181 232
182Compile font-styles: The bold font list to use when bold characters are to 233Compile I<font-styles>: The bold font list to use when B<bold> characters
183be printed. See resource B<boldFont> for details. 234are to be printed. See resource B<boldFont> for details.
184 235
185=item B<-fi> I<fontlist> 236=item B<-fi> I<fontlist>
186 237
187Compile font-styles: The italic font list to use when bold characters are to 238Compile I<font-styles>: The italic font list to use when I<italic>
188be printed. See resource B<italicFont> for details. 239characters are to be printed. See resource B<italicFont> for details.
189 240
190=item B<-fbi> I<fontlist> 241=item B<-fbi> I<fontlist>
191 242
192Compile font-styles: The bold italic font list to use when bold characters are to 243Compile I<font-styles>: The bold italic font list to use when B<< I<bold
193be printed. See resource B<boldItalicFont> for details. 244italic> >> characters are to be printed. See resource B<boldItalicFont>
245for details.
246
247=item B<-is>|B<+is>
248
249Compile I<font-styles>: Bold/Blink font styles imply high intensity
250foreground/background (default). See resource B<intensityStyles> for
251details.
194 252
195=item B<-name> I<name> 253=item B<-name> I<name>
196 254
197Specify the application name under which resources are to be obtained, 255Specify the application name under which resources are to be obtained,
198rather than the default executable file name. Name should not contain 256rather than the default executable file name. Name should not contain
214 272
215=item B<-sb>|B<+sb> 273=item B<-sb>|B<+sb>
216 274
217Turn on/off scrollbar; resource B<scrollBar>. 275Turn on/off scrollbar; resource B<scrollBar>.
218 276
277=item B<-sr>|B<+sr>
278
279Put scrollbar on right/left; resource B<scrollBar_right>.
280
281=item B<-st>|B<+st>
282
283Display rxvt (non XTerm/NeXT) scrollbar without/with a trough;
284resource B<scrollBar_floating>.
285
219=item B<-si>|B<+si> 286=item B<-si>|B<+si>
220 287
221Turn on/off scroll-to-bottom on TTY output inhibit; resource 288Turn on/off scroll-to-bottom on TTY output inhibit; resource
222B<scrollTtyOutput> has opposite effect. 289B<scrollTtyOutput> has opposite effect.
223 290
229=item B<-sw>|B<+sw> 296=item B<-sw>|B<+sw>
230 297
231Turn on/off scrolling with the scrollback buffer as new lines appear. 298Turn on/off scrolling with the scrollback buffer as new lines appear.
232This only takes effect if B<-si> is also given; resource 299This only takes effect if B<-si> is also given; resource
233B<scrollWithBuffer>. 300B<scrollWithBuffer>.
234
235=item B<-sr>|B<+sr>
236
237Put scrollbar on right/left; resource B<scrollBar_right>.
238
239=item B<-st>|B<+st>
240
241Display normal (non XTerm/NeXT) scrollbar without/with a trough;
242resource B<scrollBar_floating>.
243 301
244=item B<-ptab>|B<+ptab> 302=item B<-ptab>|B<+ptab>
245 303
246If enabled (default), "Horizontal Tab" characters are being stored as 304If enabled (default), "Horizontal Tab" characters are being stored as
247actual wide characters in the screen buffer, which makes it possible to 305actual wide characters in the screen buffer, which makes it possible to
251 309
252=item B<-bc>|B<+bc> 310=item B<-bc>|B<+bc>
253 311
254Blink the cursor; resource B<cursorBlink>. 312Blink the cursor; resource B<cursorBlink>.
255 313
314=item B<-uc>|B<+uc>
315
316Make the cursor underlined; resource B<cursorUnderline>.
317
256=item B<-iconic> 318=item B<-iconic>
257 319
258Start iconified, if the window manager supports that option. 320Start iconified, if the window manager supports that option.
259Alternative form is B<-ic>. 321Alternative form is B<-ic>.
260 322
276 338
277=item B<-bl> 339=item B<-bl>
278 340
279Compile I<frills>: Set MWM hints to request a borderless window, i.e. 341Compile I<frills>: Set MWM hints to request a borderless window, i.e.
280if honoured by the WM, the rxvt-unicode window will not have window 342if honoured by the WM, the rxvt-unicode window will not have window
281decorations; resource B<borderLess>. 343decorations; resource B<borderLess>. If the window manager does not
344support MWM hints (e.g. kwin), enables override-redirect mode.
345
346=item B<-override-redirect>
347
348Compile I<frills>: Sets override-redirect on the window; resource
349B<override-redirect>.
350
351=item B<-sbg>
352
353Compile I<frills>: Disable the usage of the built-in block graphics/line
354drawing characters and just rely on what the specified fonts provide. Use
355this if you have a good font and want to use its block graphic glyphs;
356resource B<skipBuiltinGlyphs>.
282 357
283=item B<-lsp> I<number> 358=item B<-lsp> I<number>
284 359
285Compile I<frills>: Lines (pixel height) to insert between each row of 360Compile I<frills>: Lines (pixel height) to insert between each row of
286the display. Useful to work around font rendering problems; resource 361the display. Useful to work around font rendering problems; resource
287B<linespace>. 362B<lineSpace>.
363
364=item B<-letsp> I<number>
365
366Compile I<frills>: Amount to adjust the computed character width by
367to control overall letter spacing. Negative values will tighten up the
368letter spacing, positive values will space letters out more. Useful to
369work around odd font metrics; resource B<letterSpace>.
288 370
289=item B<-tn> I<termname> 371=item B<-tn> I<termname>
290 372
291This option specifies the name of the terminal type to be set in the 373This option specifies the name of the terminal type to be set in the
292B<TERM> environment variable. This terminal type must exist in the 374B<TERM> environment variable. This terminal type must exist in the
301given on the command line. If this option is used, it must be the last 383given on the command line. If this option is used, it must be the last
302on the command-line. If there is no B<-e> option then the default is to 384on the command-line. If there is no B<-e> option then the default is to
303run the program specified by the B<SHELL> environment variable or, 385run the program specified by the B<SHELL> environment variable or,
304failing that, I<sh(1)>. 386failing that, I<sh(1)>.
305 387
388Please note that you must specify a program with arguments. If you want to
389run shell commands, you have to specify the shell, like this:
390
391 @@RXVT_NAME@@ -e sh -c "shell commands"
392
306=item B<-title> I<text> 393=item B<-title> I<text>
307 394
308Window title (B<-T> still respected); the default title is the basename 395Window title (B<-T> still respected); the default title is the basename
309of the program specified after the B<-e> option, if any, otherwise the 396of the program specified after the B<-e> option, if any, otherwise the
310application name; resource B<title>. 397application name; resource B<title>.
328 415
329Compile I<XIM>: input method name. resource B<inputMethod>. 416Compile I<XIM>: input method name. resource B<inputMethod>.
330 417
331=item B<-imlocale> I<string> 418=item B<-imlocale> I<string>
332 419
333The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 420The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
334de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 421C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
335extension to be able to input japanese characters while staying in 422input extension to be able to input japanese characters while staying in
336another locale. 423another locale. resource B<imLocale>.
424
425=item B<-imfont> I<fontset>
426
427Set the font set to use for the X Input Method, see resource B<imFont>
428for more info.
429
430=item B<-tcw>
431
432Change the meaning of triple-click selection with the left mouse
433button. Only effective when the original (non-perl) selection code is
434in-use. Instead of selecting a full line it will extend the selection to
435the end of the logical line only. resource B<tripleclickwords>.
337 436
338=item B<-insecure> 437=item B<-insecure>
339 438
340Enable "insecure" mode, which currently enables most of the escape 439Enable "insecure" mode, which currently enables most of the escape
341sequences that echo strings. See the resource B<insecure> for more 440sequences that echo strings. See the resource B<insecure> for more
355=item B<-ssr>|B<+ssr> 454=item B<-ssr>|B<+ssr>
356 455
357Turn on/off secondary screen scroll (default enabled); resource 456Turn on/off secondary screen scroll (default enabled); resource
358B<secondaryScroll>. 457B<secondaryScroll>.
359 458
459=item B<-hold>|B<+hold>
460
461Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
462will not immediately destroy its window when the program executed within
463it exits. Instead, it will wait till it is being killed or closed by the
464user; resource B<hold>.
465
466=item B<-cd> I<path>
467
468Sets the working directory for the shell (or the command specified via
469B<-e>). The I<path> must be an absolute path and it must exist for
470@@RXVT_NAME@@ to start; resource B<chdir>.
471
360=item B<-xrm> I<resourcestring> 472=item B<-xrm> I<string>
361 473
362No effect on rxvt-unicode. Simply passes through an argument to be made 474Works like the X Toolkit option of the same name, by adding the I<string>
363available in the instance's argument list. Appears in I<WM_COMMAND> in 475as if it were specified in a resource file. Resource values specified this
364some window managers. 476way take precedence over all other resource specifications.
477
478Note that you need to use the I<same> syntax as in the .Xdefaults file,
479e.g. C<*.background: black>. Also note that all @@RXVT_NAME@@-specific
480options can be specified as long-options on the commandline, so use
481of B<-xrm> is mostly limited to cases where you want to specify other
482resources (e.g. for input methods) or for compatibility with other
483programs.
484
485=item B<-keysym.>I<sym> I<string>
486
487Remap a key symbol. See resource B<keysym>.
488
489=item B<-embed> I<windowid>
490
491Tells @@RXVT_NAME@@ to embed its windows into an already-existing window,
492which enables applications to easily embed a terminal.
493
494Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it
495shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it
496quite a bit, so don't expect it to keep some specific state. It's best to
497create an extra subwindow for @@RXVT_NAME@@ and leave it alone.
498
499The window will not be destroyed when @@RXVT_NAME@@ exits.
500
501It might be useful to know that @@RXVT_NAME@@ will not close file
502descriptors passed to it (except for stdin/out/err, of course), so you
503can use file descriptors to communicate with the programs within the
504terminal. This works regardless of whether the C<-embed> option was used or
505not.
506
507Here is a short Gtk2-perl snippet that illustrates how this option can be
508used (a longer example is in F<doc/embed>):
509
510 my $rxvt = new Gtk2::Socket;
511 $rxvt->signal_connect_after (realize => sub {
512 my $xid = $_[0]->window->get_xid;
513 system "@@RXVT_NAME@@ -embed $xid &";
514 });
515
516=item B<-pty-fd> I<file descriptor>
517
518Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty
519pair but instead use the given file descriptor as the tty master. This is
520useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator
521without having to run a program within it.
522
523If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp
524entries and will not tinker with pty/tty permissions - you have to do that
525yourself if you want that.
526
527As an extremely special case, specifying C<-1> will completely suppress
528pty/tty operations, which is probably only useful in conjunction with some
529perl extension that manages the terminal.
530
531Here is a example in perl that illustrates how this option can be used (a
532longer example is in F<doc/pty-fd>):
533
534 use IO::Pty;
535 use Fcntl;
536
537 my $pty = new IO::Pty;
538 fcntl $pty, F_SETFD, 0; # clear close-on-exec
539 system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&";
540 close $pty;
541
542 # now communicate with rxvt
543 my $slave = $pty->slave;
544 while (<$slave>) { print $slave "got <$_>\n" }
545
546=item B<-pe> I<string>
547
548Comma-separated list of perl extension scripts to use (or not to use) in
549this terminal instance. See resource B<perl-ext> for details.
365 550
366=back 551=back
367 552
368=head1 RESOURCES (available also as long-options) 553=head1 RESOURCES
369 554
370Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long 555Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long
371options) compiled into your version. 556options) compiled into your version. All resources are also available as
557long-options.
372 558
373There are two different methods that @@RXVT_NAME@@ can use to get the 559You can set and change the resources using X11 tools like B<xrdb>. Many
374Xresource data: using the X libraries (Xrm*-functions) or internal 560distribution do also load settings from the B<~/.Xresources> file when X
375Xresources reader (B<~/.Xdefaults>). For the first method (ie. 561starts. @@RXVT_NAME@@ will consult the following files/resources in order,
376B<@@RXVT_NAME@@ -h> lists B<XGetDefaults>), you can set and change the 562with later settings overwriting earlier ones:
377resources using X11 tools like B<xset>. Many distribution do also load
378settings from the B<~/.Xresources> file when X starts.
379 563
380If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h> 564 1. app-defaults file in $XAPPLRESDIR
381lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults 565 2. $HOME/.Xdefaults
382set in XAPPLOADDIR/URxvt (compile-time defined: usually 566 3. RESOURCE_MANAGER property on root-window of screen 0
383B</usr/lib/X11/app-defaults/URxvt>) and resources set in 567 4. SCREEN_RESOURCES property on root-window of the current screen
384B<~/.Xdefaults>, or B<~/.Xresources> if B<~/.Xdefaults> does not exist. 568 5. $XENVIRONMENT file OR $HOME/.Xdefaults-<nodename>
569 6. resources specified via -xrm on the commandline
570
385Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two 571Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class
386class names: B<XTerm> and B<URxvt>. The class name B<Rxvt> allows 572names: B<Rxvt> and B<URxvt>. The class name B<Rxvt> allows resources
387resources common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be 573common to both B<@@RXVT_NAME@@> and the original I<rxvt> to be easily
388easily configured, while the class name B<URxvt> allows resources 574configured, while the class name B<URxvt> allows resources unique to
389unique to B<@@RXVT_NAME@@>, notably colours and key-handling, to be 575B<@@RXVT_NAME@@>, to be shared between different B<@@RXVT_NAME@@>
390shared between different B<@@RXVT_NAME@@> configurations. If no 576configurations. If no resources are specified, suitable defaults will
391resources are specified, suitable defaults will be used. Command-line 577be used. Command-line arguments can be used to override resource
392arguments can be used to override resource settings. The following 578settings. The following resources are supported (you might want to
393resources are allowed: 579check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl
580extensions not documented here):
394 581
395=over 4 582=over 4
583
584=item B<depth:> I<bitdepth>
585
586Compile I<xft>: Attempt to find a visual with the given bit depth;
587option B<-depth>.
588
589=item B<buffered:> I<boolean>
590
591Compile I<xft>: Turn on/off double-buffering for xft (default enabled).
592On some card/driver combination enabling it slightly decreases
593performance, on most it greatly helps it. The slowdown is small, so it
594should normally be enabled.
396 595
397=item B<geometry:> I<geom> 596=item B<geometry:> I<geom>
398 597
399Create the window with the specified X window geometry [default 80x24]; 598Create the window with the specified X window geometry [default 80x24];
400option B<-geometry>. 599option B<-geometry>.
414Use the specified colour for the colour value I<n>, where 0-7 613Use the specified colour for the colour value I<n>, where 0-7
415corresponds to low-intensity (normal) colours and 8-15 corresponds to 614corresponds to low-intensity (normal) colours and 8-15 corresponds to
416high-intensity (bold = bright foreground, blink = bright background) 615high-intensity (bold = bright foreground, blink = bright background)
417colours. The canonical names are as follows: 0=black, 1=red, 2=green, 616colours. The canonical names are as follows: 0=black, 1=red, 2=green,
4183=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour 6173=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual colour
419names used are listed in the B<COLORS AND GRAPHICS> section. 618names used are listed in the B<COLOURS AND GRAPHICS> section.
420 619
421Colours higher than 15 cannot be set using resources (yet), but can be 620Colours higher than 15 cannot be set using resources (yet), but can be
422changed using an escape command (see @@RXVT_NAME@@(7)). 621changed using an escape command (see @@RXVT_NAME@@(7)).
423 622
424Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with 623Colours 16-79 form a standard 4x4x4 colour cube (the same as xterm with
435=item B<colorUL:> I<colour> 634=item B<colorUL:> I<colour>
436 635
437Use the specified colour to display underlined characters when the 636Use the specified colour to display underlined characters when the
438foreground colour is the default. 637foreground colour is the default.
439 638
440=item B<colorRV:> I<colour>
441
442Use the specified colour as the background for reverse video
443characters.
444
445=item B<underlineColor:> I<colour> 639=item B<underlineColor:> I<colour>
446 640
447If set, use the specified colour as the colour for the underline 641If set, use the specified colour as the colour for the underline
448itself. If unset, use the foreground colour. 642itself. If unset, use the foreground colour.
643
644=item B<highlightColor:> I<colour>
645
646If set, use the specified colour as the background for highlighted
647characters. If unset, use reverse video.
648
649=item B<highlightTextColor:> I<colour>
650
651If set and highlightColor is set, use the specified colour as the
652foreground for highlighted characters.
449 653
450=item B<cursorColor:> I<colour> 654=item B<cursorColor:> I<colour>
451 655
452Use the specified colour for the cursor. The default is to use the 656Use the specified colour for the cursor. The default is to use the
453foreground colour; option B<-cr>. 657foreground colour; option B<-cr>.
460 664
461=item B<reverseVideo:> I<boolean> 665=item B<reverseVideo:> I<boolean>
462 666
463B<True>: simulate reverse video by foreground and background colours; 667B<True>: simulate reverse video by foreground and background colours;
464option B<-rv>. B<False>: regular screen colours [default]; option 668option B<-rv>. B<False>: regular screen colours [default]; option
465B<+rv>. See note in B<COLORS AND GRAPHICS> section. 669B<+rv>. See note in B<COLOURS AND GRAPHICS> section.
466 670
467=item B<jumpScroll:> I<boolean> 671=item B<jumpScroll:> I<boolean>
468 672
469B<True>: specify that jump scrolling should be used. When scrolling 673B<True>: specify that jump scrolling should be used. When receiving lots
470quickly, fewer screen updates are performed [default]; option B<-j>. 674of lines, @@RXVT_NAME@@ will only scroll once a whole screen height of lines
675has been read, resulting in fewer updates while still displaying every
676received line; option B<-j>.
677
471B<False>: specify that smooth scrolling should be used; option B<+j>. 678B<False>: specify that smooth scrolling should be used. @@RXVT_NAME@@ will
679force a screen refresh on each new line it received; option B<+j>.
472 680
473=item B<inheritPixmap:> I<boolean> 681=item B<skipScroll:> I<boolean>
474 682
475B<True>: make the background inherit the parent windows' pixmap, giving 683B<True>: (the default) specify that skip scrolling should be used. When
476artificial transparency. B<False>: do not inherit the parent windows' 684receiving lots of lines, @@RXVT_NAME@@ will only scroll once in a while
477pixmap. 685(around 60 times per second), resulting in far fewer updates. This can
686result in @@RXVT_NAME@@ not ever displaying some of the lines it receives;
687option B<-ss>.
688
689B<False>: specify that everything is to be displayed, even
690if the refresh is too fast for the human eye to read anything (or the
691monitor to display anything); option B<+ss>.
692
693=item B<transparent:> I<boolean>
694
695Turn on/off pseudo-transparency by using the root pixmap as background.
696
697B<inheritPixmap> is still accepted as an obsolete alias but will be removed in
698future versions.
478 699
479=item B<fading:> I<number> 700=item B<fading:> I<number>
480 701
481Fade the text by the given percentage when focus is lost. 702Fade the text by the given percentage when focus is lost; option B<-fade>.
703
704=item B<fadeColor:> I<colour>
705
706Fade to this colour, when fading is used (see B<fading:>). The default
707colour is black; option B<-fadecolor>.
482 708
483=item B<tintColor:> I<colour> 709=item B<tintColor:> I<colour>
484 710
485Tint the transparent background pixmap with the given colour. 711Tint the transparent background with the given colour. If the RENDER
712extension is not available only black, red, green, yellow, blue,
713magenta, cyan and white tints can be performed server-side. Note that
714a black tint yields a completely black image while a white tint yields
715the image unchanged; option B<-tint>.
486 716
487=item B<shading:> I<number> 717=item B<shading:> I<number>
488 718
489Darken (0 .. 100) or lighten (-1 .. -100) the transparent background 719Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
490image in addition to tinting it. 720A value of 100 means no shading; option B<-sh>.
721
722=item B<blendType:> I<string>
723
724Specify background blending type; option B<-blt>.
725
726=item B<blurRadius:> I<number>
727
728Apply gaussian blur with the specified radius to the transparent
729background; option B<-blr>.
730
731=item B<iconFile:> I<file>
732
733Set the application icon pixmap; option B<-icon>.
491 734
492=item B<scrollColor:> I<colour> 735=item B<scrollColor:> I<colour>
493 736
494Use the specified colour for the scrollbar [default #B2B2B2]. 737Use the specified colour for the scrollbar [default #B2B2B2].
495 738
496=item B<troughColor:> I<colour> 739=item B<troughColor:> I<colour>
497 740
498Use the specified colour for the scrollbar's trough area [default 741Use the specified colour for the scrollbar's trough area [default
499#969696]. Only relevant for normal (non XTerm/NeXT) scrollbar. 742#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar.
500 743
501=item B<borderColor:> I<colour> 744=item B<borderColor:> I<colour>
502 745
503The colour of the border around the text area and between the scrollbar 746The colour of the border around the text area and between the scrollbar
504and the text. 747and the text.
505 748
506=item B<backgroundPixmap:> I<file[;geom]> 749=item B<backgroundPixmap:> I<file[;oplist]>
507 750
508Use the specified XPM file (note the `.xpm' extension is optional) for 751Use the specified image file for the background and also
509the background and also optionally specify its scaling with a geometry 752optionally specify a colon separated list of operations to modify it.
510string B<WxH+X+Y>, in which B<"W" / "H"> specify the 753Supported operations are:
511horizontal/vertical scale (percent) and B<"X" / "Y"> locate the image
512centre (percent). A scale of 0 displays the image with tiling. A scale
513of 1 displays the image without any scaling. A scale of 2 to 9
514specifies an integer number of images in that direction. No image will
515be magnified beyond 10 times its original size. The maximum permitted
516scale is 1000. [default 0x0+50+50]
517 754
518=item B<menu:> I<file[;tag]> 755=over 4
519 756
520Read in the specified menu file (note the `.menu' extension is 757=item B<WxH+X+Y>
521optional) and also optionally specify a starting tag to find. See the 758
522reference documentation for details on the syntax for the menuBar. 759sets scale and position. B<"W" / "H"> specify the horizontal/vertical
760scale (percent), and B<"X" / "Y"> locate the image centre (percent). A
761scale of 0 disables scaling. The maximum permitted scale is 1000.
762
763=item B<op=tile>
764
765enables tiling
766
767=item B<op=keep-aspect>
768
769maintain the image aspect ratio when scaling
770
771=item B<op=root-align>
772
773use the position of the terminal window relative to the root window as
774the image offset, simulating a root window background
775
776=back
777
778The default scale and position setting is C<100x100+50+50>.
779Alternatively, a predefined set of templates can be used to achieve
780the most common setups:
781
782=over 4
783
784=item B<style=tiled>
785
786the image is tiled with no scaling. Equivalent to 0x0+0+0:op=tile
787
788=item B<style=aspect-stretched>
789
790the image is scaled to fill the whole window maintaining the aspect
791ratio and centered. Equivalent to 100x100+50+50:op=keep-aspect
792
793=item B<style=stretched>
794
795the image is scaled to fill the whole window. Equivalent to 100x100
796
797=item B<style=centered>
798
799the image is centered with no scaling. Equivalent to 0x0+50+50
800
801=item B<style=root-tiled>
802
803the image is tiled with no scaling and using 'root' positioning.
804Equivalent to 0x0:op=tile:op=root-align
805
806=back
807
808If multiple templates are specified the last one wins. Note that a
809template overrides all the scale, position and operations settings.
810
811If used in conjunction with B<-tr> option, the specified pixmap will be
812blended over the transparent background using alpha-blending. If I<afterimage>
813support has been compiled in it is possible to choose other blending
814types with B<-blt "type"> option.
523 815
524=item B<path:> I<path> 816=item B<path:> I<path>
525 817
526Specify the colon-delimited search path for finding files (XPM and 818Specify the colon-delimited search path for finding background image files.
527menus), in addition to the paths specified by the B<RXVTPATH> and
528B<PATH> environment variables.
529 819
530=item B<font:> I<fontlist> 820=item B<font:> I<fontlist>
531 821
532Select the fonts to be used. This is a comma separated list of font 822Select the fonts to be used. This is a comma separated list of font names
533names that are used in turn when trying to display Unicode characters. 823that are checked in order when trying to find glyphs for characters. The
534The first font defines the cell size for characters; other fonts might 824first font defines the cell size for characters; other fonts might be
535be smaller, but not larger. A reasonable default font list is always 825smaller, but not (in general) larger. A (hopefully) reasonable default
536appended to it. option B<-fn>. 826font list is always appended to it; option B<-fn>.
537 827
538Each font can either be a standard X11 core font (XLFD) name, with 828Each font can either be a standard X11 core font (XLFD) name, with
539optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>. 829optional prefix C<x:> or a Xft font (Compile I<xft>), prefixed with C<xft:>.
540 830
541In addition, each font can be prefixed with additional hints and 831In addition, each font can be prefixed with additional hints and
543hint currently is C<codeset=codeset-name>, and this is only used for Xft 833hint currently is C<codeset=codeset-name>, and this is only used for Xft
544fonts. 834fonts.
545 835
546For example, this font resource 836For example, this font resource
547 837
548 URxvt*font: 9x15bold,\ 838 URxvt.font: 9x15bold,\
549 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\ 839 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
550 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \ 840 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
551 [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \ 841 [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \
552 xft:Code2000:antialias=false 842 xft:Code2000:antialias=false
553 843
556it is named first) and thus defines the character cell grid to be 9 pixels 846it is named first) and thus defines the character cell grid to be 9 pixels
557wide and 15 pixels high. 847wide and 15 pixels high.
558 848
559The second font is just used to add additional unicode characters not in 849The second font is just used to add additional unicode characters not in
560the base font, likewise the third, which is unfortunately non-bold, but 850the base font, likewise the third, which is unfortunately non-bold, but
561the bold version of the font does contain less characters, so this is a 851the bold version of the font does contain fewer characters, so this is a
562useful supplement. 852useful supplement.
563 853
564The third font is an Xft font with aliasing turned off, and the characters 854The third font is an Xft font with aliasing turned off, and the characters
565are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font 855are limited to the B<JIS 0208> codeset (i.e. japanese kanji). The font
566contains other characters, but we are not interested in them. 856contains other characters, but we are not interested in them.
587not possible, replacement fonts of the desired shape will be tried. 877not possible, replacement fonts of the desired shape will be tried.
588 878
589If set, but empty, then this specific style is disabled and the normal 879If set, but empty, then this specific style is disabled and the normal
590text font will being used for the given style. 880text font will being used for the given style.
591 881
592=item B<selectstyle:> I<mode> 882=item B<intensityStyles:> I<boolean>
593 883
594Set mouse selection style to B<old> which is 2.20, B<oldword> which is 884When font styles are not enabled, or this option is enabled (B<True>,
595xterm style with 2.20 old word selection, or anything else which gives 885option B<-is>, the default), bold/blink font styles imply high
596xterm style selection. 886intensity foreground/background colours. Disabling this option (B<False>,
597 887option B<+is>) disables this behaviour, the high intensity colours are not
598=item B<scrollstyle:> I<mode> 888reachable.
599
600Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
601the author's favourite..
602 889
603=item B<title:> I<string> 890=item B<title:> I<string>
604 891
605Set window title string, the default title is the command-line 892Set window title string, the default title is the command-line
606specified after the B<-e> option, if any, otherwise the application 893specified after the B<-e> option, if any, otherwise the application
615=item B<mapAlert:> I<boolean> 902=item B<mapAlert:> I<boolean>
616 903
617B<True>: de-iconify (map) on receipt of a bell character. B<False>: no 904B<True>: de-iconify (map) on receipt of a bell character. B<False>: no
618de-iconify (map) on receipt of a bell character [default]. 905de-iconify (map) on receipt of a bell character [default].
619 906
907=item B<urgentOnBell:> I<boolean>
908
909B<True>: set the urgency hint for the wm on receipt of a bell character.
910B<False>: do not set the urgency hint [default].
911
912@@RXVT_NAME@@ resets the urgency hint on every focus change.
913
620=item B<visualBell:> I<boolean> 914=item B<visualBell:> I<boolean>
621 915
622B<True>: use visual bell on receipt of a bell character; option B<-vb>. 916B<True>: use visual bell on receipt of a bell character; option B<-vb>.
623B<False>: no visual bell [default]; option B<+vb>. 917B<False>: no visual bell [default]; option B<+vb>.
624 918
638 932
639Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use 933Specify a command pipe for vt100 printer [default I<lpr(1)>]. Use
640B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or 934B<Print> to initiate a screen dump to the printer and B<Ctrl-Print> or
641B<Shift-Print> to include the scrollback as well. 935B<Shift-Print> to include the scrollback as well.
642 936
937The string will be interpreted as if typed into the shell as-is.
938
939Example:
940
941 URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX)
942
943This creates a new file in your home directory with the screen contents
944every time you hit C<Print>.
945
946=item B<scrollstyle:> I<mode>
947
948Set scrollbar style to B<rxvt>, B<plain>, B<next> or B<xterm>. B<plain> is
949the author's favourite.
950
951=item B<thickness:> I<number>
952
953Set the scrollbar width in pixels.
954
643=item B<scrollBar:> I<boolean> 955=item B<scrollBar:> I<boolean>
644 956
645B<True>: enable the scrollbar [default]; option B<-sb>. B<False>: 957B<True>: enable the scrollbar [default]; option B<-sb>. B<False>:
646disable the scrollbar; option B<+sb>. 958disable the scrollbar; option B<+sb>.
647 959
666B<False>: do not scroll to bottom when tty receives output; option 978B<False>: do not scroll to bottom when tty receives output; option
667B<+si>. 979B<+si>.
668 980
669=item B<scrollWithBuffer:> I<boolean> 981=item B<scrollWithBuffer:> I<boolean>
670 982
671B<True>: scroll with scrollback buffer when tty receives new lines (and 983B<True>: scroll with scrollback buffer when tty receives new lines (i.e.
672B<scrollTtyOutput> is False); option B<+sw>. B<False>: do not scroll 984try to show the same lines) and B<scrollTtyOutput> is False; option
673with scrollback buffer when tty recieves new lines; option B<-sw>. 985B<-sw>. B<False>: do not scroll with scrollback buffer when tty receives
986new lines; option B<+sw>.
674 987
675=item B<scrollTtyKeypress:> I<boolean> 988=item B<scrollTtyKeypress:> I<boolean>
676 989
677B<True>: scroll to bottom when a non-special key is pressed. Special keys 990B<True>: scroll to bottom when a non-special key is pressed. Special keys
678are those which are intercepted by rxvt-unicode for special handling and 991are those which are intercepted by rxvt-unicode for special handling and
697=item B<borderLess:> I<boolean> 1010=item B<borderLess:> I<boolean>
698 1011
699Set MWM hints to request a borderless window, i.e. if honoured by the 1012Set MWM hints to request a borderless window, i.e. if honoured by the
700WM, the rxvt-unicode window will not have window decorations; option B<-bl>. 1013WM, the rxvt-unicode window will not have window decorations; option B<-bl>.
701 1014
1015=item B<skipBuiltinGlyphs:> I<boolean>
1016
1017Compile I<frills>: Disable the usage of the built-in block graphics/line
1018drawing characters and just rely on what the specified fonts provide. Use
1019this if you have a good font and want to use its block graphic glyphs;
1020option B<-sbg>.
1021
702=item B<termName:> I<termname> 1022=item B<termName:> I<termname>
703 1023
704Specifies the terminal type name to be set in the B<TERM> environment 1024Specifies the terminal type name to be set in the B<TERM> environment
705variable; option B<-tn>. 1025variable; option B<-tn>.
706 1026
707=item B<linespace:> I<number> 1027=item B<lineSpace:> I<number>
708 1028
709Specifies number of lines (pixel height) to insert between each row of 1029Specifies number of lines (pixel height) to insert between each row of
710the display [default 0]; option B<-lsp>. 1030the display [default 0]; option B<-lsp>.
711 1031
712=item B<meta8:> I<boolean> 1032=item B<meta8:> I<boolean>
726 1046
727=item B<cursorBlink:> I<boolean> 1047=item B<cursorBlink:> I<boolean>
728 1048
729B<True>: blink the cursor. B<False>: do not blink the cursor [default]; 1049B<True>: blink the cursor. B<False>: do not blink the cursor [default];
730option B<-bc>. 1050option B<-bc>.
1051
1052=item B<cursorUnderline:> I<boolean>
1053
1054B<True>: Make the cursor underlined. B<False>: Make the cursor a box [default];
1055option B<-uc>.
731 1056
732=item B<pointerBlank:> I<boolean> 1057=item B<pointerBlank:> I<boolean>
733 1058
734B<True>: blank the pointer when a key is pressed or after a set number 1059B<True>: blank the pointer when a key is pressed or after a set number
735of seconds of inactivity. B<False>: the pointer is always visible 1060of seconds of inactivity. B<False>: the pointer is always visible
743 1068
744Mouse pointer background colour. 1069Mouse pointer background colour.
745 1070
746=item B<pointerBlankDelay:> I<number> 1071=item B<pointerBlankDelay:> I<number>
747 1072
748Specifies number of seconds before blanking the pointer [default 2]. 1073Specifies number of seconds before blanking the pointer [default 2]. Use a
1074large number (e.g. C<987654321>) to effectively disable the timeout.
749 1075
750=item B<backspacekey:> I<string> 1076=item B<backspacekey:> I<string>
751 1077
752The string to send when the backspace key is pressed. If set to B<DEC> 1078The string to send when the backspace key is pressed. If set to B<DEC>
753or unset it will send B<Delete> (code 127) or, if shifted, B<Backspace> 1079or unset it will send B<Delete> (code 127) or, with control, B<Backspace>
754(code 8) - which can be reversed with the appropriate DEC private mode 1080(code 8) - which can be reversed with the appropriate DEC private mode
755escape sequence. 1081escape sequence.
756 1082
757=item B<deletekey:> I<string> 1083=item B<deletekey:> I<string>
758 1084
760pressed. If unset it will send the sequence traditionally associated 1086pressed. If unset it will send the sequence traditionally associated
761with the B<Execute> key. 1087with the B<Execute> key.
762 1088
763=item B<cutchars:> I<string> 1089=item B<cutchars:> I<string>
764 1090
765The characters used as delimiters for double-click word selection. The 1091The characters used as delimiters for double-click word selection
766built-in default: 1092(whitespace delimiting is added automatically if resource is given).
767 1093
1094When the perl selection extension is in use (the default if compiled
1095in, see the @@RXVT_NAME@@perl(3) manpage), a suitable regex using these
1096characters will be created (if the resource exists, otherwise, no regex
1097will be created). In this mode, characters outside ISO-8859-1 can be used.
1098
1099When the selection extension is not used, only ISO-8859-1 characters can
1100be used. If not specified, the built-in default is used:
1101
768B<< BACKSLASH `"'&()*,;<=>?@[]{|} >> 1102B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
769 1103
770=item B<preeditType:> I<style> 1104=item B<preeditType:> I<style>
771 1105
772B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 1106B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
773 1107
775 1109
776I<name> of inputMethod to use; option B<-im>. 1110I<name> of inputMethod to use; option B<-im>.
777 1111
778=item B<imLocale:> I<name> 1112=item B<imLocale:> I<name>
779 1113
780The locale to use for opening the IM. You can use an LC_CTYPE of e.g. 1114The locale to use for opening the IM. You can use an C<LC_CTYPE> of e.g.
781de_DE.UTF-8 for normal text processing but ja_JP.EUC-JP for the input 1115C<de_DE.UTF-8> for normal text processing but C<ja_JP.EUC-JP> for the
782extension to be able to input japanese characters while staying in 1116input extension to be able to input japanese characters while staying in
783another locale. option B<-imlocale>. 1117another locale; option B<-imlocale>.
1118
1119=item B<imFont:> I<fontset>
1120
1121Specify the font-set used for XIM styles C<OverTheSpot> or
1122C<OffTheSpot>. It must be a standard X font set (XLFD patterns separated
1123by commas), i.e. it's not in the same format as the other font lists used
1124in @@RXVT_NAME@@. The default will be set-up to chose *any* suitable found
1125found, preferably one or two pixels differing in size to the base font.
1126option B<-imfont>.
1127
1128=item B<tripleclickwords:> I<boolean>
1129
1130Change the meaning of triple-click selection with the left mouse
1131button. Instead of selecting a full line it will extend the selection to
1132the end of the logical line only; option B<-tcw>.
784 1133
785=item B<insecure:> I<boolean> 1134=item B<insecure:> I<boolean>
786 1135
787Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 1136Enables "insecure" mode. Rxvt-unicode offers some escape sequences that
788echo arbitrary strings like the icon name or the locale. This could be 1137echo arbitrary strings like the icon name or the locale. This could be
789abused if somebody gets 8-bit-clean access to your display, whether 1138abused if somebody gets 8-bit-clean access to your display, whether
790throuh a mail client displaying mail bodies unfiltered or though 1139through a mail client displaying mail bodies unfiltered or through
791write(1). Therefore, these sequences are disabled by default. (Note 1140write(1) or any other means. Therefore, these sequences are disabled by
792that other terminals, including xterm, have these sequences 1141default. (Note that many other terminals, including xterm, have these
793enabled by default). You can enable them by setting this boolean 1142sequences enabled by default, which doesn't make it safer, though).
794resource or specifying B<-insecure> as an option. At the moment, this 1143
795enabled display-answer, locale, findfont, icon label and window title 1144You can enable them by setting this boolean resource or specifying
796requests as well as dynamic menubar dispatch. 1145B<-insecure> as an option. At the moment, this enables display-answer,
1146locale, findfont, icon label and window title requests.
797 1147
798=item B<modifier:> I<modifier> 1148=item B<modifier:> I<modifier>
799 1149
800Set the key to be interpreted as the Meta key to: B<alt>, B<meta>, 1150Set the key to be interpreted as the Meta key to: B<alt>, B<meta>,
801B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option 1151B<hyper>, B<super>, B<mod1>, B<mod2>, B<mod3>, B<mod4>, B<mod5>; option
805 1155
806Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E) 1156Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E)
807character is passed through. It may contain escape values as described 1157character is passed through. It may contain escape values as described
808in the entry on B<keysym> following. 1158in the entry on B<keysym> following.
809 1159
810=item B<secondaryScreen:> I<bool> 1160=item B<secondaryScreen:> I<boolean>
811 1161
812Turn on/off secondary screen (default enabled). 1162Turn on/off secondary screen (default enabled).
813 1163
814=item B<secondaryScroll:> I<bool> 1164=item B<secondaryScroll:> I<boolean>
815 1165
816Turn on/off secondary screen scroll (default enabled). If the this 1166Turn on/off secondary screen scroll (default enabled). If this
817option is enabled, scrolls on the secondary screen will change the 1167option is enabled, scrolls on the secondary screen will change the
818scrollback buffer and switching to/from the secondary screen will 1168scrollback buffer and, when secondaryScreen is off, switching
819instead scroll the screen up. 1169to/from the secondary screen will instead scroll the screen up.
1170
1171=item B<hold>: I<boolean>
1172
1173Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
1174will not immediately destroy its window when the program executed within
1175it exits. Instead, it will wait till it is being killed or closed by the
1176user.
1177
1178=item B<chdir>: I<path>
1179
1180Sets the working directory for the shell (or the command specified via
1181B<-e>). The I<path> must be an absolute path and it must exist for
1182@@RXVT_NAME@@ to start. If it isn't specified then the current working
1183directory will be used; option B<-cd>.
820 1184
821=item B<keysym.>I<sym>: I<string> 1185=item B<keysym.>I<sym>: I<string>
822 1186
823Compile I<frills>: Associate I<string> with keysym I<sym>. The 1187Compile I<frills>: Associate I<string> with keysym I<sym>. The
824intervening resource name B<keysym.> cannot be omitted. 1188intervening resource name B<keysym.> cannot be omitted.
829and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>, 1193and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>,
830B<2>, B<3>, B<4>, B<5>. 1194B<2>, B<3>, B<4>, B<5>.
831 1195
832The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to 1196The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
833whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr 1197whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
834keys are being mapped. B<AppKeypad> is a artificial modifier mapped to the 1198keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
835current application keymap mode state. 1199current application keymap mode state.
836 1200
837The spellings of I<key> can be obtained by using B<xev>(1) command or 1201The spellings of I<key> can be obtained by using B<xev>(1) command or
838searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and 1202searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and
839omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex 1203omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex
840keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not 1204keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not
841performed in an exact manner; however, the closest match is assured. 1205performed in an exact manner; however, the closest match is assured.
842 1206
843I<string> may contain escape values (C<\a>: bell, C<\b>: backspace, 1207I<string> may contain escape values (C<\n>: newline, C<\000>: octal
844C<\e>, C<\E>: escape, C<\n>: newline, C<\r>: carriage return, C<\t>: tab, 1208number), see RESOURCES in C<man 7 X> for further details.
845C<\000>: octal number) or verbatim control characters (C<^?>: delete,
846C<^@>: null, C<^A> ...) and may be enclosed with double quotes so that it
847can start or end with whitespace.
848 1209
849You can define a range of keysyms in one shot by providing a I<string> 1210You can define a range of keysyms in one shot by
1211loading the C<keysym-list> perl extension and providing a I<string>
850with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimeter `/' 1212with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/'
851should be a character not used by the strings. 1213should be a character not used by the strings.
852 1214
853Its usage can be demonstrated by an example: 1215Its usage can be demonstrated by an example:
854 1216
855 URxvt.keysym.M-C-0x61: list|\e<M-C-|abc|> 1217 URxvt.keysym.M-C-0x61: list|\033<|abc|>
856 1218
857The above line is equivalent to the following three lines: 1219The above line is equivalent to the following three lines:
858 1220
859 URxvt.keysym.Meta-Control-0x61: \e<M-C-a> 1221 URxvt.keysym.Meta-Control-0x61: \033<a>
860 URxvt.keysym.Meta-Control-0x62: \e<M-C-b> 1222 URxvt.keysym.Meta-Control-0x62: \033<b>
861 URxvt.keysym.Meta-Control-0x63: \e<M-C-c> 1223 URxvt.keysym.Meta-Control-0x63: \033<c>
862 1224
863If I<string> takes the form of C<proto:STRING>, the specified B<STRING> is 1225If I<string> takes the form of C<command:STRING>, the specified B<STRING>
864interpreted and executed as @@RXVT_NAME@@'s control sequence. For example, 1226is interpreted and executed as @@RXVT_NAME@@'s control sequence. For
865C<proto:\033]701;zh_CN.GBK\007> means: change the current locale to 1227example the following means "change the current locale to C<zh_CN.GBK>
866C<zh_CN.GBK>. 1228when Control-Meta-c is being pressed":
1229
1230 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1231
1232If I<string> takes the form C<perl:STRING>, then the specified B<STRING>
1233is passed to the C<on_user_command> perl handler. See the @@RXVT_NAME@@perl(3)
1234manpage. For example, the F<selection> extension (activated via
1235C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1236
1237 URxvt.keysym.M-C-c: perl:selection:rot13
1238
1239Due the the large number of modifier combinations, a defined key mapping
1240will match if I<at least> the specified identifiers are being set, and
1241no other key mappings with those and more bits are being defined. That
1242means that defining a key map for C<a> will automatically provide
1243definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1244mappings themselves.
1245
1246Unfortunately, this will override built-in key mappings. For example
1247if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s
1248C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the
1249user-defined keymap using the C<builtin:> replacement:
1250
1251 URxvt.keysym.Insert: <my insert key sequence>
1252 URxvt.keysym.S-Insert: builtin:
1253
1254The first line defines a mapping for C<Insert> and I<any> combination
1255of modifiers. The second line re-establishes the default mapping for
1256C<Shift-Insert>.
1257
1258The following example will map Control-Meta-1 and Control-Meta-2 to
1259the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1260font-switching at runtime:
1261
1262 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1263 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1264
1265Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1266info):
1267
1268 URxvt.keysym.M-C-3: command:\033[8;25;80t
1269 URxvt.keysym.M-C-4: command:\033[8;48;110t
1270
1271=item B<perl-ext-common>: I<string>
1272
1273=item B<perl-ext>: I<string>
1274
1275Comma-separated list(s) of perl extension scripts (default: C<default>) to
1276use in this terminal instance; option B<-pe>.
1277
1278Extension names can be prefixed with a C<-> sign to prohibit using
1279them. This can be useful to selectively disable some extensions loaded
1280by default, or specified via the C<perl-ext-common> resource. For
1281example, C<default,-selection> will use all the default extension except
1282C<selection>.
1283
1284Extension names can also be followed by an argument in angle brackets
1285(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for
1286searchable scrollback to Alt/Meta-s). Mentioning the same extension
1287multiple times with different arguments will pass multiple arguments to
1288the extension.
1289
1290Each extension is looked up in the library directories, loaded if
1291necessary, and bound to the current terminal instance.
1292
1293If both of these resources are the empty string, then the perl
1294interpreter will not be initialized. The idea behind two options is that
1295B<perl-ext-common> will be used for extensions that should be available to
1296all instances, while B<perl-ext> is used for specific instances.
1297
1298=item B<perl-eval>: I<string>
1299
1300Perl code to be evaluated when all extensions have been registered. See
1301the @@RXVT_NAME@@perl(3) manpage.
1302
1303=item B<perl-lib>: I<path>
1304
1305Colon-separated list of additional directories that hold extension
1306scripts. When looking for perl extensions, @@RXVT_NAME@@ will first
1307look in these directories, then in $HOME/.urxvt/ext and lastly in
1308F<@@RXVT_LIBDIR@@/urxvt/perl/>.
1309
1310See the @@RXVT_NAME@@perl(3) manpage.
1311
1312=item B<< selection.pattern-I<idx> >>: I<perl-regex>
1313
1314Additional selection patterns, see the @@RXVT_NAME@@perl(3) manpage for
1315details.
1316
1317=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1318
1319Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1320for details.
1321
1322=item B<searchable-scrollback:> I<keysym>
1323
1324Sets the hotkey that starts the incremental scrollback buffer search
1325(default: C<M-s>).
1326
1327=item B<urlLauncher>: I<string>
1328
1329Specifies the program to be started with a URL argument. Used by the
1330C<selection-popup> and C<matcher> perl extensions.
1331
1332=item B<transient-for>: I<windowid>
1333
1334Compile I<frills>: Sets the WM_TRANSIENT_FOR property to the given window id.
1335
1336=item B<override-redirect>: I<boolean>
1337
1338Compile I<frills>: Sets override-redirect for the terminal window, making
1339it almost invisible to window managers; option B<-override-redirect>.
1340
1341=item B<iso14755:> I<boolean>
1342
1343Turn on/off ISO 14755 (default enabled).
1344
1345=item B<iso14755_52:> I<boolean>
1346
1347Turn on/off ISO 14755 5.2 mode (default enabled).
867 1348
868=back 1349=back
869 1350
870=head1 THE SCROLLBAR 1351=head1 THE SCROLLBAR
871 1352
885the normal text selection/insertion, hold either the Shift or the Meta 1366the normal text selection/insertion, hold either the Shift or the Meta
886(Alt) key while performing the desired mouse action. 1367(Alt) key while performing the desired mouse action.
887 1368
888If mouse reporting mode is active, the normal scrollbar actions are 1369If mouse reporting mode is active, the normal scrollbar actions are
889disabled -- on the assumption that we are using a fullscreen 1370disabled -- on the assumption that we are using a fullscreen
890application. Instead, pressing Button1 and Button3 sends B<ESC[6~> 1371application. Instead, pressing Button1 and Button3 sends B<ESC [ 6 ~>
891(Next) and B<ESC[5~> (Prior), respectively. Similarly, clicking on the 1372(Next) and B<ESC [ 5 ~> (Prior), respectively. Similarly, clicking on the
892up and down arrows sends B<ESC[A> (Up) and B<ESC[B> (Down), 1373up and down arrows sends B<ESC [ A> (Up) and B<ESC [ B> (Down),
893respectively. 1374respectively.
894 1375
895=head1 TEXT SELECTION AND INSERTION 1376=head1 THE SELECTION: SELECTING AND PASTING TEXT
896 1377
897The behaviour of text selection and insertion mechanism is similar to 1378The behaviour of text selection and insertion/pasting mechanism is similar
898I<xterm>(1). 1379to I<xterm>(1).
899 1380
900=over 4 1381=over 4
901 1382
902=item B<Selection>: 1383=item B<Selecting>:
903 1384
904Left click at the beginning of the region, drag to the end of the 1385Left click at the beginning of the region, drag to the end of the region
905region and release; Right click to extend the marked region; Left 1386and release; Right click to extend the marked region; Left double-click
906double-click to select a word; Left triple-click to select the entire 1387to select a word; Left triple-click to select the entire logical line
907line. 1388(which can span multiple screen lines), unless modified by resource
1389B<tripleclickwords>.
908 1390
909Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys) 1391Starting a selection while pressing the B<Meta> key (or B<Meta+Ctrl> keys)
910(Compile: I<frills>) will create a rectangular selection instead of a normal 1392(Compile: I<frills>) will create a rectangular selection instead of a
911one. 1393normal one. In this mode, every selected row becomes its own line in the
1394selection, and trailing whitespace is visually underlined and removed from
1395the selection.
912 1396
913=item B<Insertion>: 1397=item B<Pasting>:
914 1398
915Pressing and releasing the Middle mouse button (or B<Shift-Insert>) in 1399Pressing and releasing the Middle mouse button in an B<@@RXVT_NAME@@>
916an B<@@RXVT_NAME@@> window causes the current text selection to be 1400window causes the value of the PRIMARY selection (or CLIPBOARD with the
917inserted as if it had been typed on the keyboard. 1401B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1402
1403Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1404inserted too.
918 1405
919=back 1406=back
920 1407
921=head1 CHANGING FONTS 1408=head1 CHANGING FONTS
922 1409
923Changing fonts (or font sizes, respectively) via the keypad is not yet 1410Changing fonts (or font sizes, respectively) via the keypad is not yet
924supported in rxvt-unicode. Bug me if you need this. 1411supported in rxvt-unicode. Bug me if you need this.
925 1412
926You can, however, switch fonts at runtime using escape sequences (and 1413You can, however, switch fonts at runtime using escape sequences, e.g.:
927therefore using the menubar), e.g.:
928 1414
929 printf '\e]701;%s\007' "9x15bold,xft:Kochi Gothic" 1415 printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic"
1416
1417You can use keyboard shortcuts, too:
1418
1419 URxvt.keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007
1420 URxvt.keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
930 1421
931rxvt-unicode will automatically re-apply these fonts to the output so far. 1422rxvt-unicode will automatically re-apply these fonts to the output so far.
932 1423
933=head1 ISO 14755 SUPPORT 1424=head1 ISO 14755 SUPPORT
934 1425
935ISO 14755 is a standard for entering and viewing unicode characters 1426ISO 14755 is a standard for entering and viewing unicode characters
936and character codes using the keyboard. It consists of 4 parts. The 1427and character codes using the keyboard. It consists of 4 parts. The
937first part is available rxvt-unicode has been compiled with 1428first part is available if rxvt-unicode has been compiled with
938C<--enable-frills>, the rest is available when rxvt-unicode was compiled 1429C<--enable-frills>, the rest is available when rxvt-unicode was compiled
939with C<--enable-iso14755>. 1430with C<--enable-iso14755>.
940 1431
941=over 4 1432=over 4
942 1433
943=item 5.1: Basic method 1434=item * 5.1: Basic method
944 1435
945This allows you to enter unicode characters using their hexcode. 1436This allows you to enter unicode characters using their hexcode.
946 1437
947Start by pressing and holding both C<Control> and C<Shift>, then enter 1438Start by pressing and holding both C<Control> and C<Shift>, then enter
948hex-digits (between one and six). Releasing C<Control> and C<Shift> will 1439hex-digits (between one and six). Releasing C<Control> and C<Shift> will
955address, which you cannot type. Fortunately, the card has the e-mail 1446address, which you cannot type. Fortunately, the card has the e-mail
956address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily 1447address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
957by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>, 1448by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
958followed by releasing the modifier keys. 1449followed by releasing the modifier keys.
959 1450
960=item 5.2: Keyboard symbols entry method 1451=item * 5.2: Keyboard symbols entry method
961 1452
962This mode lets you input characters representing the keycap symbols of 1453This mode lets you input characters representing the keycap symbols of
963your keyboard, if representable in the current locale encoding. 1454your keyboard, if representable in the current locale encoding.
964 1455
965Start by pressing C<Control> and C<Shift> together, then releasing 1456Start by pressing C<Control> and C<Shift> together, then releasing
966them. The next special key (cursor keys, home etc.) you enter will not 1457them. The next special key (cursor keys, home etc.) you enter will not
967invoke it's usual function but instead will insert the corresponding 1458invoke its usual function but instead will insert the corresponding
968keycap symbol. The symbol will only be entered when the key has been 1459keycap symbol. The symbol will only be entered when the key has been
969released, otherwise pressing e.g. C<Shift> would enter the symbol for 1460released, otherwise pressing e.g. C<Shift> would enter the symbol for
970C<ISO Level 2 Switch>, although your intention might have been to enter a 1461C<ISO Level 2 Switch>, although your intention might have been to enter a
971reverse tab (Shift-Tab). 1462reverse tab (Shift-Tab).
972 1463
973=item 5.3: Screen-selection entry method 1464=item * 5.3: Screen-selection entry method
974 1465
975While this is implemented already (it's basically the selection 1466While this is implemented already (it's basically the selection
976mechanism), it could be extended by displaying a unicode character map. 1467mechanism), it could be extended by displaying a unicode character map.
977 1468
978=item 5.4: Feedback method for identifying displayed characters for later input 1469=item * 5.4: Feedback method for identifying displayed characters for later input
979 1470
980This method lets you display the unicode character code associated with 1471This method lets you display the unicode character code associated with
981characters already displayed. 1472characters already displayed.
982 1473
983You enter this mode by holding down C<Control> and C<Shift> together, then 1474You enter this mode by holding down C<Control> and C<Shift> together, then
995With respect to conformance, rxvt-unicode is supposed to be compliant to 1486With respect to conformance, rxvt-unicode is supposed to be compliant to
996both scenario A and B of ISO 14755, including part 5.2. 1487both scenario A and B of ISO 14755, including part 5.2.
997 1488
998=head1 LOGIN STAMP 1489=head1 LOGIN STAMP
999 1490
1000B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so 1491B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so that
1001that it can be seen via the I<who(1)> command, and can accept messages. 1492it can be seen via the I<who(1)> command, and can accept messages. To
1002To allow this feature, B<@@RXVT_NAME@@> must be installed setuid root on 1493allow this feature, B<@@RXVT_NAME@@> may need to be installed setuid root
1003some systems. 1494on some systems or setgid to root or to some other group on others.
1004 1495
1005=head1 COLORS AND GRAPHICS 1496=head1 COLOURS AND GRAPHICS
1006 1497
1007In addition to the default foreground and background colours, 1498In addition to the default foreground and background colours,
1008B<@@RXVT_NAME@@> can display up to 16 colours (8 ANSI colours plus 1499B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus
1009high-intensity bold/blink versions of the same). Here is a list of the 1500high-intensity (potentially bold/blink) versions of the same, and 72 (or
1010colours with their B<rgb.txt> names. 1501240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB
1502cube plus a 8 (24) colour greyscale ramp.
1503
1504Here is a list of the ANSI colours with their names.
1011 1505
1012=begin table 1506=begin table
1013 1507
1014 B<color0> (black) = Black 1508 B<color0> (black) = Black
1015 B<color1> (red) = Red3 1509 B<color1> (red) = Red3
1035It is also possible to specify the colour values of B<foreground>, 1529It is also possible to specify the colour values of B<foreground>,
1036B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as 1530B<background>, B<cursorColor>, B<cursorColor2>, B<colorBD>, B<colorUL> as
1037a number 0-15, as a convenient shorthand to reference the colour name of 1531a number 0-15, as a convenient shorthand to reference the colour name of
1038color0-color15. 1532color0-color15.
1039 1533
1534The following text gives values for the standard 88 colour mode (and
1535values for the 256 colour mode in parentheses).
1536
1537The RGB cube uses indices 16..79 (16..231) using the following formulas:
1538
1539 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3
1540 index_256 = (r * 16 + g) * 16 + b + 16 # r, g, b = 0..15
1541
1542The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10%
1543steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of
1544the RGB cube.
1545
1546Together, all those colours implement the 88 (256) colour xterm
1547colours. Only the first 16 can be changed using resources currently, the
1548rest can only be changed via command sequences ("escape codes").
1549
1550Applications are advised to use terminfo or command sequences to discover
1551number and RGB values of all colours (yes, you can query this...).
1552
1040Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by 1553Note that B<-rv> (B<"reverseVideo: True">) simulates reverse video by
1041always swapping the foreground/background colours. This is in contrast to 1554always swapping the foreground/background colours. This is in contrast to
1042I<xterm>(1) where the colours are only swapped if they have not otherwise 1555I<xterm>(1) where the colours are only swapped if they have not otherwise
1043been specified. For example, 1556been specified. For example,
1044 1557
1558 @@RXVT_NAME@@ -fg Black -bg White -rv
1559
1560would yield White on Black, while on I<xterm>(1) it would yield Black on
1561White.
1562
1563=head2 ALPHA CHANNEL SUPPORT
1564
1565If Xft support has been compiled in and as long as Xft/Xrender/X don't get
1566their act together, rxvt-unicode will do its own alpha channel management:
1567
1568You can prefix any colour with an opaqueness percentage enclosed in
1569brackets, i.e. C<[percent]>, where C<percent> is a decimal percentage
1570(0-100) that specifies the opacity of the colour, where C<0> is completely
1571transparent and C<100> is completely opaque. For example, C<[50]red> is a
1572half-transparent red, while C<[95]#00ff00> is an almost opaque green. This
1573is the recommended format to specify transparency values, and works with
1574all ways to specify a colour.
1575
1576For complete control, rxvt-unicode also supports
1577C<rgba:rrrr/gggg/bbbb/aaaa> (exactly four hex digits/component) colour
1578specifications, where the additional C<aaaa> component specifies opacity
1579(alpha) values. The minimum value of C<0000> is completely transparent,
1580while C<ffff> is completely opaque). The two example colours from
1581earlier could also be specified as C<rgba:ff00/0000/0000/8000> and
1582C<rgba:0000/ff00/0000/f332>.
1583
1584You probably need to specify B<"-depth 32">, too, to force a visual with
1585alpha channels, and have the luck that your X-server uses ARGB pixel
1586layout, as X is far from just supporting ARGB visuals out of the box, and
1587rxvt-unicode just fudges around.
1588
1589For example, the following selects an almost completely transparent black
1590background, and an almost opaque pink foreground:
1591
1592 @@RXVT_NAME@@ -depth 32 -bg rgba:0000/0000/0000/4444 -fg "[80]pink"
1593
1594When not using a background image, then the interpretation of the
1595alpha channel is up to your compositing manager (most interpret it as
1596transparency of course).
1597
1598When using a background pixmap or pseudo-transparency, then the background
1599colour will always behave as if it were completely transparent (so the
1600background image shows instead), regardless of how it was specified, while
1601other colours will either be transparent as specified (the background
1602image will show through) on servers supporting the RENDER extension, or
1603fully opaque on servers not supporting the RENDER EXTENSION.
1604
1605Please note that due to bugs in Xft, specifying alpha values might result
1606in garbage being displayed when the X-server does not support the RENDER
1607extension.
1608
1609=head1 ENVIRONMENT
1610
1611B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1612
1045=over 4 1613=over 4
1046 1614
1047=item B<@@RXVT_NAME@@ -fg Black -bg White -rv> 1615=item B<TERM>
1048 1616
1049would yield White on Black, while on I<xterm>(1) it would yield Black 1617Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1050on White. 1618resources or on the command line.
1619
1620=item B<COLORTERM>
1621
1622Either C<rxvt>, C<rxvt-xpm>, depending on whether @@RXVT_NAME@@ was
1623compiled with background image support, and optionally with the added
1624extension C<-mono> to indicate that rxvt-unicode runs on a monochrome
1625screen.
1626
1627=item B<COLORFGBG>
1628
1629Set to a string of the form C<fg;bg> or C<fg;xpm;bg>, where C<fg> is
1630the colour code used as default foreground/text colour (or the string
1631C<default> to indicate that the default-colour escape sequence is to be
1632used), C<bg> is the colour code used as default background colour (or the
1633string C<default>), and C<xpm> is the string C<default> if @@RXVT_NAME@@
1634was compiled with background image support. Libraries like C<ncurses>
1635and C<slang> can (and do) use this information to optimize screen output.
1636
1637=item B<WINDOWID>
1638
1639Set to the (decimal) X Window ID of the @@RXVT_NAME@@ window (the toplevel
1640window, which usually has subwindows for the scrollbar, the terminal
1641window and so on).
1642
1643=item B<TERMINFO>
1644
1645Set to the terminfo directory iff @@RXVT_NAME@@ was configured with
1646C<--with-terminfo=PATH>.
1647
1648=item B<DISPLAY>
1649
1650Used by @@RXVT_NAME@@ to connect to the display and set to the correct
1651display in its child processes if C<-display> isn't used to override. It
1652defaults to C<:0> if it doesn't exist.
1653
1654=item B<SHELL>
1655
1656The shell to be used for command execution, defaults to C</bin/sh>.
1657
1658=item B<RXVT_SOCKET>
1659
1660The unix domain socket path used by @@RXVT_NAME@@c(1) and
1661@@RXVT_NAME@@d(1).
1662
1663Default F<<< $HOME/.urxvt/urxvtd-I<< <nodename> >> >>>.
1664
1665=item B<HOME>
1666
1667Used to locate the default directory for the unix domain socket for
1668daemon communications and to locate various resource files (such as
1669C<.Xdefaults>)
1670
1671=item B<XAPPLRESDIR>
1672
1673Directory where application-specific X resource files are located.
1674
1675=item B<XENVIRONMENT>
1676
1677If set and accessible, gives the name of a X resource file to be loaded by
1678@@RXVT_NAME@@.
1051 1679
1052=back 1680=back
1053 1681
1054=head1 ENVIRONMENT
1055
1056B<@@RXVT_NAME@@> sets the environment variables B<TERM>, B<COLORTERM>
1057and B<COLORFGBG>. The environment variable B<WINDOWID> is set to the X
1058window id number of the B<@@RXVT_NAME@@> window and it also uses and
1059sets the environment variable B<DISPLAY> to specify which display
1060terminal to use. B<@@RXVT_NAME@@> uses the environment variables
1061B<RXVTPATH> and B<PATH> to find XPM files.
1062
1063=head1 FILES 1682=head1 FILES
1064 1683
1065=over 4 1684=over 4
1066 1685
1067=item B</etc/utmp>
1068
1069System file for login records.
1070
1071=item B</usr/lib/X11/rgb.txt> 1686=item B</usr/lib/X11/rgb.txt>
1072 1687
1073Color names. 1688Colour names.
1074 1689
1075=back 1690=back
1076 1691
1077=head1 SEE ALSO 1692=head1 SEE ALSO
1078 1693
1079@@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5) 1694@@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)
1080
1081=head1 BUGS
1082
1083Check the BUGS file for an up-to-date list.
1084
1085Cursor change support is not yet implemented.
1086
1087Click-and-drag doesn't work with X11 mouse report overriding.
1088 1695
1089=head1 CURRENT PROJECT COORDINATOR 1696=head1 CURRENT PROJECT COORDINATOR
1090 1697
1091=over 4 1698=over 4
1092 1699
1093=item Project Coordinator 1700=item Project Coordinator
1094 1701
1095@@RXVT_MAINT@@ L<@@RXVT_MAINTEMAIL@@> 1702Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >>
1096 1703
1097=item Web page maintainter 1704L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1098
1099@@RXVT_WEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@>
1100
1101L<@@RXVT_WEBPAGE@@>
1102 1705
1103=back 1706=back
1104 1707
1105=head1 AUTHORS 1708=head1 AUTHORS
1106 1709
1128 1731
1129Project Coordinator (changes.txt 2.21a to 2.4.5) 1732Project Coordinator (changes.txt 2.21a to 2.4.5)
1130 1733
1131=item Geoff Wing L<< <gcw@pobox.com> >> 1734=item Geoff Wing L<< <gcw@pobox.com> >>
1132 1735
1133Rewrote screen display and text selection routines. Project Coordinator 1736Rewrote screen display and text selection routines.
1737
1134(changes.txt 2.4.6 - rxvt-unicode) 1738Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1135 1739
1136=item Marc Alexander Lehmann L<< <rxvt@schmorp.de> >> 1740=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >>
1137 1741
1138Forked rxvt-unicode, rewrote most of the display code and internal 1742Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1139character handling to store text in unicode, improve xterm 1743extension, random hacks, numerous bugfixes and extensions.
1140compatibility and apply numerous other bugfixes and extensions.
1141 1744
1142Project Coordinator (Changes 1.0 -) 1745Project Coordinator (Changes 1.0 -)
1143 1746
1747=item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >>
1748
1749pty/utmp code rewrite, image code improvements, many random hacks and bugfixes.
1750
1144=back 1751=back
1145 1752

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines