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

Comparing rxvt-unicode/doc/rxvt.7.pod (file contents):
Revision 1.120 by root, Mon Aug 7 15:59:44 2006 UTC vs.
Revision 1.146 by root, Mon Sep 10 13:05:51 2007 UTC

17 17
18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting 18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
19all escape sequences, and other background information. 19all escape sequences, and other background information.
20 20
21The newest version of this document is also available on the World Wide Web at 21The newest version of this document is also available on the World Wide Web at
22L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 22L<http://cvs.schmorp.de/browse/rxvt-unicode/doc/rxvt.7.html>.
23 23
24=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS 24=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
25 25
26 26
27=head2 Meta, Features & Commandline Issues 27=head2 Meta, Features & Commandline Issues
73=head3 How can I start @@URXVT_NAME@@d in a race-free way? 73=head3 How can I start @@URXVT_NAME@@d in a race-free way?
74 74
75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the 75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the
76display, create the listening socket and then fork. 76display, create the listening socket and then fork.
77 77
78=head3 How can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c? 78=head3 How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?
79 79
80If you want to start @@URXVT_NAME@@d automatically whenever you run 80If you want to start @@URXVT_NAME@@d automatically whenever you run
81@@URXVT_NAME@@c and the daemon isn't running yet, use this script: 81@@URXVT_NAME@@c and the daemon isn't running yet, use this script:
82 82
83 #!/bin/sh 83 #!/bin/sh
125 fi 125 fi
126 126
127=head3 How do I compile the manual pages on my own? 127=head3 How do I compile the manual pages on my own?
128 128
129You need to have a recent version of perl installed as F</usr/bin/perl>, 129You need to have a recent version of perl installed as F</usr/bin/perl>,
130one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to 130one that comes with F<pod2man>, F<pod2text> and F<pod2xhtml> (from
131the doc subdirectory and enter C<make alldoc>. 131F<Pod::Xhtml>). Then go to the doc subdirectory and enter C<make alldoc>.
132 132
133=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat? 133=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat?
134 134
135I often get asked about this, and I think, no, they didn't cause extra 135I often get asked about this, and I think, no, they didn't cause extra
136bloat. If you compare a minimal rxvt and a minimal urxvt, you can see 136bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
460has been designed yet). 460has been designed yet).
461 461
462Until then, you might get away with switching fonts at runtime (see L<Can 462Until then, you might get away with switching fonts at runtime (see L<Can
463I switch the fonts at runtime?> later in this document). 463I switch the fonts at runtime?> later in this document).
464 464
465=head3 How can I make mplayer display video correctly?
466
467We are working on it, in the meantime, as a workaround, use something like:
468
469 @@URXVT_NAME@@ -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
470
471
465=head2 Keyboard, Mouse & User Interaction 472=head2 Keyboard, Mouse & User Interaction
466 473
467=head3 The new selection selects pieces that are too big, how can I select single words? 474=head3 The new selection selects pieces that are too big, how can I select single words?
468 475
469If you want to select e.g. alphanumeric words, you can use the following 476If you want to select e.g. alphanumeric words, you can use the following
562Backspace keysym (not likely for Linux ... see the following 569Backspace keysym (not likely for Linux ... see the following
563question) there are two standard values that can be used for 570question) there are two standard values that can be used for
564Backspace: C<^H> and C<^?>. 571Backspace: C<^H> and C<^?>.
565 572
566Historically, either value is correct, but rxvt-unicode adopts the debian 573Historically, either value is correct, but rxvt-unicode adopts the debian
567policy of using C<^?> when unsure, because it's the one only only correct 574policy of using C<^?> when unsure, because it's the one and only correct
568choice :). 575choice :).
569 576
570Rxvt-unicode tries to inherit the current stty settings and uses the value 577Rxvt-unicode tries to inherit the current stty settings and uses the value
571of `erase' to guess the value for backspace. If rxvt-unicode wasn't 578of `erase' to guess the value for backspace. If rxvt-unicode wasn't
572started from a terminal (say, from a menu or by remote shell), then the 579started from a terminal (say, from a menu or by remote shell), then the
655Rather than have rxvt-unicode try to accommodate all the various possible 662Rather than have rxvt-unicode try to accommodate all the various possible
656keyboard mappings, it is better to use `xmodmap' to remap the keys as 663keyboard mappings, it is better to use `xmodmap' to remap the keys as
657required for your particular machine. 664required for your particular machine.
658 665
659 666
660
661=head2 Terminal Configuration 667=head2 Terminal Configuration
662 668
663=head3 Can I see a typical configuration? 669=head3 Can I see a typical configuration?
664 670
665The default configuration tries to be xterm-like, which I don't like that 671The default configuration tries to be xterm-like, which I don't like that
838 844
839The terminal description used by rxvt-unicode is not as widely available 845The terminal description used by rxvt-unicode is not as widely available
840as that for xterm, or even rxvt (for which the same problem often arises). 846as that for xterm, or even rxvt (for which the same problem often arises).
841 847
842The correct solution for this problem is to install the terminfo, this can 848The correct solution for this problem is to install the terminfo, this can
843be done like this (with ncurses' infocmp): 849be done like this (with ncurses' infocmp and works as user and admin):
844 850
845 REMOTE=remotesystem.domain 851 REMOTE=remotesystem.domain
846 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" 852 infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
847 853
848... or by installing rxvt-unicode normally on the remote system, 854... or by installing rxvt-unicode normally on the remote system,
855
856One some systems you might need to set C<$TERMINFO> to the full path of
857F<$HOME/.terminfo> for this to work.
849 858
850If you cannot or do not want to do this, then you can simply set 859If you cannot or do not want to do this, then you can simply set
851C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of 860C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
852problems arising, which includes wrong keymapping, less and different 861problems arising, which includes wrong keymapping, less and different
853colours and some refresh errors in fullscreen applications. It's a nice 862colours and some refresh errors in fullscreen applications. It's a nice
953If you encounter strange problems like typing an accented character but 962If you encounter strange problems like typing an accented character but
954getting two unrelated other characters or similar, or if program output is 963getting two unrelated other characters or similar, or if program output is
955subtly garbled, then you should check your locale settings. 964subtly garbled, then you should check your locale settings.
956 965
957Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the 966Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
958programs. Often rxvt-unicode is started in the C<C> locale, while the 967programs running in it. Often rxvt-unicode is started in the C<C> locale,
959login script running within the rxvt-unicode window changes the locale to 968while the login script running within the rxvt-unicode window changes the
960something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work. 969locale to something else, e.g. C<en_GB.UTF-8>. Needless to say, this is
970not going to work, and is the most common cause for problems.
961 971
962The best thing is to fix your startup environment, as you will likely run 972The best thing is to fix your startup environment, as you will likely run
963into other problems. If nothing works you can try this in your .profile. 973into other problems. If nothing works you can try this in your .profile.
964 974
965 printf '\33]701;%s\007' "$LC_CTYPE" 975 printf '\33]701;%s\007' "$LC_CTYPE" # $LANG or $LC_ALL are worth a try, too
966 976
967If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 977If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
968supported on your systems. Some systems have a C<locale> command which 978supported on your systems. Some systems have a C<locale> command which
969displays this (also, C<perl -e0> can be used to check locale settings, as 979displays this (also, C<perl -e0> can be used to check locale settings, as
970it will complain loudly if it cannot set the locale). If it displays something 980it will complain loudly if it cannot set the locale). If it displays something
1147This forking is done as the very first within main(), which is very early 1157This forking is done as the very first within main(), which is very early
1148and reduces possible bugs to initialisation code run before main(), or 1158and reduces possible bugs to initialisation code run before main(), or
1149things like the dynamic loader of your system, which should result in very 1159things like the dynamic loader of your system, which should result in very
1150little risk. 1160little risk.
1151 1161
1152=head3 On Solaris 9, many line-drawing characters are too wide.
1153
1154Seems to be a known bug, read
1155L<http://nixdoc.net/files/forum/about34198.html>. Some people use the
1156following ugly workaround to get non-double-wide-characters working:
1157
1158 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
1159
1160=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all. 1162=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all.
1161 1163
1162Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined 1164Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
1163in your compile environment, or an implementation that implements it, 1165in your compile environment, or an implementation that implements it,
1164whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that 1166whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
1187 1189
1188The rxvt-unicode author insists that the right way to fix this is in the 1190The rxvt-unicode author insists that the right way to fix this is in the
1189system libraries once and for all, instead of forcing every app to carry 1191system libraries once and for all, instead of forcing every app to carry
1190complete replacements for them :) 1192complete replacements for them :)
1191 1193
1192=head3 I use Solaris 9 and it doesn't compile/work/etc.
1193
1194Try the diff in F<doc/solaris9.patch> as a base. It fixes the worst
1195problems with C<wcwidth> and a compile problem.
1196
1197=head3 How can I use rxvt-unicode under cygwin? 1194=head3 How can I use rxvt-unicode under cygwin?
1198 1195
1199rxvt-unicode should compile and run out of the box on cygwin, using 1196rxvt-unicode should compile and run out of the box on cygwin, using
1200the X11 libraries that come with cygwin. libW11 emulation is no 1197the X11 libraries that come with cygwin. libW11 emulation is no
1201longer supported (and makes no sense, either, as it only supported a 1198longer supported (and makes no sense, either, as it only supported a
1204old libW11 emulation. 1201old libW11 emulation.
1205 1202
1206At the time of this writing, cygwin didn't seem to support any multi-byte 1203At the time of this writing, cygwin didn't seem to support any multi-byte
1207encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited 1204encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
1208to 8-bit encodings. 1205to 8-bit encodings.
1206
1207=head3 Character widths are not correct.
1208
1209urxvt uses the system wcwidth function to know the information about
1210the width of characters, so on systems with incorrect locale data you
1211will likely get bad results. Two notorious examples are Solaris 9,
1212where single-width characters like U+2514 are reported as double-width,
1213and Darwin 8, where combining chars are reported having width 1.
1214
1215The solution is to upgrade your system or switch to a better one. A
1216possibly working workaround is to use a wcwidth implementation like
1217
1218http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
1209 1219
1210=head1 RXVT-UNICODE TECHNICAL REFERENCE 1220=head1 RXVT-UNICODE TECHNICAL REFERENCE
1211 1221
1212The rest of this document describes various technical aspects of 1222The rest of this document describes various technical aspects of
1213B<rxvt-unicode>. First the description of supported command sequences, 1223B<rxvt-unicode>. First the description of supported command sequences,
2197 2207
2198=head1 CONFIGURE OPTIONS 2208=head1 CONFIGURE OPTIONS
2199 2209
2200General hint: if you get compile errors, then likely your configuration 2210General hint: if you get compile errors, then likely your configuration
2201hasn't been tested well. Either try with C<--enable-everything> or use 2211hasn't been tested well. Either try with C<--enable-everything> or use
2202the F<./reconf> script as a base for experiments. F<./reconf> is used by 2212the default configuration (i.e. no C<--enable-xxx> or C<--disable-xxx>
2203myself, so it should generally be a working config. Of course, you should 2213switches). Of course, you should always report when a combination doesn't
2204always report when a combination doesn't work, so it can be fixed. Marc 2214work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
2205Lehmann <rxvt@schmorp.de>.
2206 2215
2207All 2216All
2208 2217
2209=over 4 2218=over 4
2210 2219
2242 2251
2243=begin table 2252=begin table
2244 2253
2245 all all available codeset groups 2254 all all available codeset groups
2246 zh common chinese encodings 2255 zh common chinese encodings
2247 zh_ext rarely used but very big chinese encodigs 2256 zh_ext rarely used but very big chinese encodings
2248 jp common japanese encodings 2257 jp common japanese encodings
2249 jp_ext rarely used but big japanese encodings 2258 jp_ext rarely used but big japanese encodings
2250 kr korean encodings 2259 kr korean encodings
2251 2260
2252=end table 2261=end table
2266requirements per character from 2 to 4 bytes. X11 fonts do not yet 2275requirements per character from 2 to 4 bytes. X11 fonts do not yet
2267support these extra characters, but Xft does. 2276support these extra characters, but Xft does.
2268 2277
2269Please note that rxvt-unicode can store unicode code points >65535 2278Please note that rxvt-unicode can store unicode code points >65535
2270even without this flag, but the number of such characters is 2279even without this flag, but the number of such characters is
2271limited to a view thousand (shared with combining characters, 2280limited to a few thousand (shared with combining characters,
2272see next switch), and right now rxvt-unicode cannot display them 2281see next switch), and right now rxvt-unicode cannot display them
2273(input/output and cut&paste still work, though). 2282(input/output and cut&paste still work, though).
2274 2283
2275=item --enable-combining (default: on) 2284=item --enable-combining (default: on)
2276 2285
2322 2331
2323Write user and tty to lastlog file (used by programs like 2332Write user and tty to lastlog file (used by programs like
2324F<lastlogin>) at start of rxvt execution. This option requires 2333F<lastlogin>) at start of rxvt execution. This option requires
2325--enable-utmp to also be specified. 2334--enable-utmp to also be specified.
2326 2335
2327=item --enable-xpm-background (default: on) 2336=item --enable-afterimage (default: on)
2328 2337
2329Add support for XPM background pixmaps. 2338Add support for libAfterImage to be used for transparency and background
2339images. It adds support for many file formats including JPG, PNG,
2340SVG, TIFF, GIF, XPM, BMP, ICO, XCF, TGA and AfterStep image XML
2341(L<http://www.afterstep.org/visualdoc.php?show=asimagexml>).
2342
2343This option also adds such eye candy as blending an image over the root
2344background, as well as dynamic scaling and bluring of background images.
2345
2346Note that with this option enabled, @@RXVT_NAME@@'s memory footprint might
2347increase by a few megabytes even if no extra features are used (mostly due
2348to third-party libraries used by libAI). Memory footprint may somewhat be
2349lowered if libAfterImage is configured without support for SVG.
2330 2350
2331=item --enable-transparency (default: on) 2351=item --enable-transparency (default: on)
2332 2352
2333Add support for inheriting parent backgrounds thus giving a fake 2353Add support for inheriting parent backgrounds thus giving a fake
2334transparency to the term. 2354transparency to the term.
2335 2355
2336=item --enable-fading (default: on) 2356=item --enable-fading (default: on)
2337 2357
2338Add support for fading the text when focus is lost (requires C<--enable-transparency>). 2358Add support for fading the text when focus is lost.
2339
2340=item --enable-tinting (default: on)
2341
2342Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2343 2359
2344=item --enable-rxvt-scroll (default: on) 2360=item --enable-rxvt-scroll (default: on)
2345 2361
2346Add support for the original rxvt scrollbar. 2362Add support for the original rxvt scrollbar.
2347 2363
2390A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2406A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2391in combination with other switches) is: 2407in combination with other switches) is:
2392 2408
2393 MWM-hints 2409 MWM-hints
2394 EWMH-hints (pid, utf8 names) and protocols (ping) 2410 EWMH-hints (pid, utf8 names) and protocols (ping)
2411 urgency hint
2395 seperate underline colour (-underlineColor) 2412 seperate underline colour (-underlineColor)
2396 settable border widths and borderless switch (-w, -b, -bl) 2413 settable border widths and borderless switch (-w, -b, -bl)
2397 visual depth selection (-depth) 2414 visual depth selection (-depth)
2398 settable extra linespacing /-lsp) 2415 settable extra linespacing /-lsp)
2399 iso-14755-2 and -3, and visual feedback 2416 iso-14755 5.1 (basic) support
2400 tripleclickwords (-tcw) 2417 tripleclickwords (-tcw)
2401 settable insecure mode (-insecure) 2418 settable insecure mode (-insecure)
2402 keysym remapping support 2419 keysym remapping support
2403 cursor blinking and underline cursor (-cb, -uc) 2420 cursor blinking and underline cursor (-cb, -uc)
2404 XEmbed support (-embed) 2421 XEmbed support (-embed)
2409 2426
2410It also enables some non-essential features otherwise disabled, such as: 2427It also enables some non-essential features otherwise disabled, such as:
2411 2428
2412 some round-trip time optimisations 2429 some round-trip time optimisations
2413 nearest color allocation on pseudocolor screens 2430 nearest color allocation on pseudocolor screens
2414 UTF8_STRING supporr for selection 2431 UTF8_STRING support for selection
2415 sgr modes 90..97 and 100..107 2432 sgr modes 90..97 and 100..107
2416 backindex and forwardindex escape sequences 2433 backindex and forwardindex escape sequences
2417 view change/zero scorllback esacpe sequences 2434 view change/zero scrollback escape sequences
2418 locale switching escape sequence 2435 locale switching escape sequence
2419 window op and some xterm/OSC escape sequences 2436 window op and some xterm/OSC escape sequences
2420 rectangular selections 2437 rectangular selections
2421 trailing space removal for selections 2438 trailing space removal for selections
2422 verbose X error handling 2439 verbose X error handling
2431=item --enable-keepscrolling (default: on) 2448=item --enable-keepscrolling (default: on)
2432 2449
2433Add support for continual scrolling of the display when you hold 2450Add support for continual scrolling of the display when you hold
2434the mouse button down on a scrollbar arrow. 2451the mouse button down on a scrollbar arrow.
2435 2452
2453=item --enable-selectionscrolling (default: on)
2454
2455Add support for scrolling when the selection moves to the top or
2456bottom of the screen.
2457
2436=item --enable-mousewheel (default: on) 2458=item --enable-mousewheel (default: on)
2437 2459
2438Add support for scrolling via mouse wheel or buttons 4 & 5. 2460Add support for scrolling via mouse wheel or buttons 4 & 5.
2439 2461
2440=item --enable-slipwheeling (default: on) 2462=item --enable-slipwheeling (default: on)
2441 2463
2442Add support for continual scrolling (using the mouse wheel as an 2464Add support for continual scrolling (using the mouse wheel as an
2443accelerator) while the control key is held down. This option 2465accelerator) while the control key is held down. This option
2444requires --enable-mousewheel to also be specified. 2466requires --enable-mousewheel to also be specified.
2445 2467
2446=item --disable-new-selection
2447
2448Remove support for mouse selection style like that of xterm.
2449
2450=item --enable-dmalloc (default: off)
2451
2452Use Gray Watson's malloc - which is good for debugging See
2453L<http://www.letters.com/dmalloc/> for details If you use either this or the
2454next option, you may need to edit src/Makefile after compiling to point
2455DINCLUDE and DLIB to the right places.
2456
2457You can only use either this option and the following (should
2458you use either) .
2459
2460=item --enable-dlmalloc (default: off)
2461
2462Use Doug Lea's malloc - which is good for a production version
2463See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2464
2465=item --enable-smart-resize (default: on) 2468=item --enable-smart-resize (default: off)
2466 2469
2467Add smart growth/shrink behaviour when changing font size via hot 2470Add smart growth/shrink behaviour when resizing.
2468keys. This should keep the window corner which is closest to a corner of 2471This should keep the window corner which is closest to a corner of
2469the screen in a fixed position. 2472the screen in a fixed position.
2470 2473
2471=item --enable-pointer-blank (default: on) 2474=item --enable-pointer-blank (default: on)
2472 2475
2473Add support to have the pointer disappear when typing or inactive. 2476Add support to have the pointer disappear when typing or inactive.
2474 2477
2475=item --enable-perl (default: on) 2478=item --enable-perl (default: on)
2476 2479
2477Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2480Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2478manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2481manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the
2479in F<src/perl-ext/> for the extensions that are installed by default. The 2482files in F<src/perl-ext/> for the extensions that are installed by
2480perl interpreter that is used can be specified via the C<PERL> environment 2483default. The perl interpreter that is used can be specified via the
2481variable when running configure. 2484C<PERL> environment variable when running configure. Even when compiled
2485in, perl will I<not> be initialised when all extensions have been disabled
2486C<-pe "" --perl-ext-common "">, so it should be safe to enable from a
2487resource standpoint.
2488
2489=item --with-afterimage-config=DIR
2490
2491Look for the libAfterImage config script in DIR.
2482 2492
2483=item --with-name=NAME (default: urxvt) 2493=item --with-name=NAME (default: urxvt)
2484 2494
2485Set the basename for the installed binaries, resulting 2495Set the basename for the installed binaries, resulting
2486in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2496in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2496PATH. 2506PATH.
2497 2507
2498=item --with-x 2508=item --with-x
2499 2509
2500Use the X Window System (pretty much default, eh?). 2510Use the X Window System (pretty much default, eh?).
2501
2502=item --with-xpm-includes=DIR
2503
2504Look for the XPM includes in DIR.
2505
2506=item --with-xpm-library=DIR
2507
2508Look for the XPM library in DIR.
2509
2510=item --with-xpm
2511
2512Not needed - define via --enable-xpm-background.
2513 2511
2514=back 2512=back
2515 2513
2516=head1 AUTHORS 2514=head1 AUTHORS
2517 2515

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines