--- rxvt-unicode/doc/rxvt.1.pod 2005/02/14 18:50:57 1.57 +++ rxvt-unicode/doc/rxvt.1.pod 2006/01/16 15:07:27 1.97 @@ -107,21 +107,31 @@ Turn on/off jump scrolling; resource B. -=item B<-ip>|B<+ip> +=item B<-ip>|B<+ip> | B<-tr>|B<+tr> Turn on/off inheriting parent window's pixmap. Alternative form is B<-tr>; resource B. =item B<-fade> I -Fade the text by the given percentage when focus is lost. resource B. +Fade the text by the given percentage when focus is lost. Small values +fade a little only, 100 completely replaces all colours by the fade +colour; resource B. + +=item B<-fadecolor> I + +Fade to this colour when fading is used (see B<-fade>). The default colour +is black. resource B. =item B<-tint> I Tint the transparent background pixmap with the given colour when -transparency is enabled with B<-tr> or B<-ip>. See also the B<-sh> -option that can be used to brighten or darken the image in addition to -tinting it. +transparency is enabled with B<-tr> or B<-ip>. This only works for +non-tiled backgrounds, currently. See also the B<-sh> option that can be +used to brighten or darken the image in addition to tinting it; resource +I. Example: + + @@RXVT_NAME@@ -tr -tint blue -sh 40 =item B<-sh> @@ -164,7 +174,7 @@ =item B<-fn> I Select the fonts to be used. This is a comma separated list of font names -that are used in turn when trying to display Unicode characters. The +that are checked in order when trying to find glyphs for characters. The first font defines the cell size for characters; other fonts might be smaller, but not (in general) larger. A (hopefully) reasonable default font list is always appended to it. See resource B for more details. @@ -181,18 +191,25 @@ =item B<-fb> I -Compile font-styles: The bold font list to use when bold characters are to -be printed. See resource B for details. +Compile I: The bold font list to use when B characters +are to be printed. See resource B for details. =item B<-fi> I -Compile font-styles: The italic font list to use when bold characters are to -be printed. See resource B for details. +Compile I: The italic font list to use when I +characters are to be printed. See resource B for details. =item B<-fbi> I -Compile font-styles: The bold italic font list to use when bold characters are to -be printed. See resource B for details. +Compile I: The bold italic font list to use when B<< I >> characters are to be printed. See resource B +for details. + +=item B<-is>|B<+is> + +Compile I: Bold/Italic font styles imply high intensity +foreground/background (default). See resource B for +details. =item B<-name> I @@ -240,7 +257,7 @@ =item B<-st>|B<+st> -Display normal (non XTerm/NeXT) scrollbar without/with a trough; +Display rxvt (non XTerm/NeXT) scrollbar without/with a trough; resource B. =item B<-ptab>|B<+ptab> @@ -282,6 +299,13 @@ if honoured by the WM, the rxvt-unicode window will not have window decorations; resource B. +=item B<-sbg> + +Compile I: Disable the usage of the built-in block graphics/line +drawing characters and just rely on what the specified fonts provide. Use +this if you have a good font and want to use its block graphic glyphs; +resource B. + =item B<-lsp> I Compile I: Lines (pixel height) to insert between each row of @@ -305,6 +329,11 @@ run the program specified by the B environment variable or, failing that, I. +Please note that you must specify a program with arguments. If you want to +run shell commands, you have to specify the shell, like this: + + @@RXVT_NAME@@ -e sh -c "shell commands" + =item B<-title> I Window title (B<-T> still respected); the default title is the basename @@ -370,11 +399,18 @@ Turn on/off secondary screen scroll (default enabled); resource B. -=item B<-keysym.>I: I +=item B<-hold>|B<+hold> + +Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ +will not immediately destroy its window when the program executed within +it exits. Instead, it will wait till it is being killed or closed by the +user; resource B. + +=item B<-keysym.>I I Remap a key symbol. See resource B. -=item B<-embed>: I +=item B<-embed> I Tells @@RXVT_NAME@@ to embed it's windows into an already-existing window, which enables applications to easily embed a terminal. @@ -392,6 +428,49 @@ terminal. This works regardless of wether the C<-embed> option was used or not. +Here is a short Gtk2-perl snippet that illustrates how this option can be +used (a longer example is in F): + + my $rxvt = new Gtk2::Socket; + $rxvt->signal_connect_after (realize => sub { + my $xid = $_[0]->window->get_xid; + system "@@RXVT_NAME@@ -embed $xid &"; + }); + +=item B<-pty-fd> I + +Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty +pair but instead use the given filehandle as the tty master. This is +useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator +without having to run a program within it. + +If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp +entries and will not tinker with pty/tty permissions - you have to do that +yourself if you want that. + +As an extremely special case, specifying C<-1> will completely suppress +pty/tty operations. + +Here is a example in perl that illustrates how this option can be used (a +longer example is in F): + + use IO::Pty; + use Fcntl; + + my $pty = new IO::Pty; + fcntl $pty, F_SETFD, 0; # clear close-on-exec + system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&"; + close $pty; + + # now communicate with rxvt + my $slave = $pty->slave; + while (<$slave>) { print $slave "got <$_>\n" } + +=item B<-pe> I + +Comma-separated list of perl extension scripts to use (or not to use) in +this terminal instance. See resource B for details. + =back =head1 RESOURCES (available also as long-options) @@ -399,14 +478,10 @@ Note: `@@RXVT_NAME@@ --help' gives a list of all resources (long options) compiled into your version. -There are two different methods that @@RXVT_NAME@@ can use to get the -Xresource data: using the X libraries (Xrm*-functions) or internal -Xresources reader (B<~/.Xdefaults>). For the first method (ie. -B<@@RXVT_NAME@@ -h> lists B), you can set and change the -resources using X11 tools like B. Many distribution do also load -settings from the B<~/.Xresources> file when X starts. @@RXVT_NAME@@ -will consult the following files/resources in order, with later settings -overwriting earlier ones: +You can set and change the resources using X11 tools like B. Many +distribution do also load settings from the B<~/.Xresources> file when X +starts. @@RXVT_NAME@@ will consult the following files/resources in order, +with later settings overwriting earlier ones: 1. system-wide app-defaults file, either locale-dependent OR global 2. app-defaults file in $XAPPLRESDIR @@ -414,20 +489,16 @@ 4. SCREEN_RESOURCES for the current screen 5. $XENVIRONMENT file OR $HOME/.Xdefaults- -If compiled with internal Xresources support (i.e. B<@@RXVT_NAME@@ -h> -lists B<.Xdefaults>) then B<@@RXVT_NAME@@> accepts application defaults -set in XAPPLOADDIR/URxvt (compile-time defined: usually -B) and resources set in -B<~/.Xdefaults>, or B<~/.Xresources> if B<~/.Xdefaults> does not exist. -Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two -class names: B and B. The class name B allows -resources common to both B<@@RXVT_NAME@@> and the original I to be -easily configured, while the class name B allows resources -unique to B<@@RXVT_NAME@@>, notably colours and key-handling, to be -shared between different B<@@RXVT_NAME@@> configurations. If no -resources are specified, suitable defaults will be used. Command-line -arguments can be used to override resource settings. The following -resources are allowed: +Note that when reading X resources, B<@@RXVT_NAME@@> recognizes two class +names: B and B. The class name B allows resources +common to both B<@@RXVT_NAME@@> and the original I to be easily +configured, while the class name B allows resources unique to +B<@@RXVT_NAME@@>, to be shared between different B<@@RXVT_NAME@@> +configurations. If no resources are specified, suitable defaults will +be used. Command-line arguments can be used to override resource +settings. The following resources are supported (you might want to +check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl +extensions not documented here): =over 4 @@ -515,11 +586,17 @@ =item B I -Fade the text by the given percentage when focus is lost. +Fade the text by the given percentage when focus is lost; option B<-fade>. + +=item B I + +Fade to this colour, when fading is used (see B). The default +colour is black; option B<-fadecolor>. =item B I -Tint the transparent background pixmap with the given colour. +Tint the transparent background pixmap with the given colour; option +B<-tint>. =item B I @@ -533,7 +610,7 @@ =item B I Use the specified colour for the scrollbar's trough area [default -#969696]. Only relevant for normal (non XTerm/NeXT) scrollbar. +#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar. =item B I @@ -552,25 +629,17 @@ be magnified beyond 10 times its original size. The maximum permitted scale is 1000. [default 0x0+50+50] -=item B I - -Read in the specified menu file (note the `.menu' extension is -optional) and also optionally specify a starting tag to find. See the -reference documentation for details on the syntax for the menuBar. - =item B I -Specify the colon-delimited search path for finding files (XPM and -menus), in addition to the paths specified by the B and -B environment variables. +Specify the colon-delimited search path for finding XPM files. =item B I -Select the fonts to be used. This is a comma separated list of font -names that are used in turn when trying to display Unicode characters. -The first font defines the cell size for characters; other fonts might -be smaller, but not larger. A reasonable default font list is always -appended to it. option B<-fn>. +Select the fonts to be used. This is a comma separated list of font names +that are checked in order when trying to find glyphs for characters. The +first font defines the cell size for characters; other fonts might be +smaller, but not (in general) larger. A (hopefully) reasonable default +font list is always appended to it; option B<-fn>. Each font can either be a standard X11 core font (XLFD) name, with optional prefix C or a Xft font (Compile I), prefixed with C. @@ -582,7 +651,7 @@ For example, this font resource - URxvt*font: 9x15bold,\ + URxvt.font: 9x15bold,\ -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\ -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \ [codeset=JISX0208]xft:Kochi Gothic:antialias=false, \ @@ -626,6 +695,14 @@ If set, but empty, then this specific style is disabled and the normal text font will being used for the given style. +=item B I + +When font styles are not enabled, or this option is enabled (B, +option B<-is>, the default), bold and italic font styles imply high +intensity foreground/backround colours. Disabling this option (B, +option B<+is>) disables this behaviour, the high intensity colours are not +reachable. + =item B I Set mouse selection style to B which is 2.20, B which is @@ -635,7 +712,7 @@ =item B I Set scrollbar style to B, B, B or B. B is -the author's favourite.. +the author's favourite. =item B I @@ -677,6 +754,15 @@ B to initiate a screen dump to the printer and B or B to include the scrollback as well. +The string will be interpreted as if typed into the shell as-is. + +Example: + + URxvt.print-pipe: cat > $(TMPDIR=$HOME mktemp urxvt.XXXXXX) + +This creates a new file in your home directory with the screen contents +everytime you hit C. + =item B I B: enable the scrollbar [default]; option B<-sb>. B: @@ -706,8 +792,8 @@ =item B I B: scroll with scrollback buffer when tty receives new lines (and -B is False); option B<+sw>. B: do not scroll -with scrollback buffer when tty recieves new lines; option B<-sw>. +B is False); option B<-sw>. B: do not scroll +with scrollback buffer when tty recieves new lines; option B<+sw>. =item B I @@ -736,6 +822,13 @@ Set MWM hints to request a borderless window, i.e. if honoured by the WM, the rxvt-unicode window will not have window decorations; option B<-bl>. +=item B I + +Compile I: Disable the usage of the built-in block graphics/line +drawing characters and just rely on what the specified fonts provide. Use +this if you have a good font and want to use its block graphic glyphs; +option B<-sbg>. + =item B I Specifies the terminal type name to be set in the B environment @@ -782,7 +875,8 @@ =item B I -Specifies number of seconds before blanking the pointer [default 2]. +Specifies number of seconds before blanking the pointer [default 2]. Use a +large number (e.g. C<987654321>) to effectively disable the timeout. =item B I @@ -817,7 +911,7 @@ The locale to use for opening the IM. You can use an C of e.g. C for normal text processing but C for the input extension to be able to input japanese characters while staying in -another locale. option B<-imlocale>. +another locale; option B<-imlocale>. =item B I @@ -832,20 +926,21 @@ Change the meaning of triple-click selection with the left mouse button. Instead of selecting a full line it will extend the selection to -the end of the logical line only. option B<-tcw>. +the end of the logical line only; option B<-tcw>. =item B I Enables "insecure" mode. Rxvt-unicode offers some escape sequences that echo arbitrary strings like the icon name or the locale. This could be abused if somebody gets 8-bit-clean access to your display, whether -throuh a mail client displaying mail bodies unfiltered or though -write(1). Therefore, these sequences are disabled by default. (Note -that other terminals, including xterm, have these sequences -enabled by default). You can enable them by setting this boolean -resource or specifying B<-insecure> as an option. At the moment, this -enabled display-answer, locale, findfont, icon label and window title -requests as well as dynamic menubar dispatch. +through a mail client displaying mail bodies unfiltered or through +write(1) or any other means. Therefore, these sequences are disabled by +default. (Note that many other terminals, including xterm, have these +sequences enabled by default, which doesn't make it safer, though). + +You can enable them by setting this boolean resource or specifying +B<-insecure> as an option. At the moment, this enables display-answer, +locale, findfont, icon label and window title requests. =item B I @@ -870,6 +965,13 @@ scrollback buffer and switching to/from the secondary screen will instead scroll the screen up. +=item B: I + +Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ +will not immediately destroy its window when the program executed within +it exits. Instead, it will wait till it is being killed or closed by the +user. + =item BI: I Compile I: Associate I with keysym I. The @@ -898,10 +1000,10 @@ C<^@>: null, C<^A> ...) and may be enclosed with double quotes so that it can start or end with whitespace. -Please note that you need to double the C<\> when using -C<--enable-xgetdefault>, as X itself does it's own de-escaping (you can -use C<\033> instead of C<\e> (and so on), which will work with both Xt and -@@RXVT_NAME@@'s own processing). +Please note that you need to double the C<\> in resource files, as +Xlib itself does it's own de-escaping (you can use C<\033> instead of +C<\e> (and so on), which will work with both Xt and @@RXVT_NAME@@'s own +processing). You can define a range of keysyms in one shot by providing a I with pattern B, where the delimeter `/' @@ -924,6 +1026,32 @@ URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 +If I takes the form C, then the specified B +is passed to the C perl handler. See the @@RXVT_NAME@@perl(3) +manpage. For example, the F extension (activated via +C<@@RXVT_NAME@@ -pe selection>) listens for C events: + + URxvt.keysym.M-C-c: perl:selection:rot13 + +Due the the large number of modifier combinations, a defined key mapping +will match if at I the specified identifiers are being set, and +no other key mappings with those and more bits are being defined. That +means that defining a key map for C will automatically provide +definitions for C, C and so on, unless some of those are defined +mappings themselves. + +Unfortunately, this will override built-in key mappings. For example +if you overwrite the C key you will disable @@RXVT_NAME@@'s +C mapping. To re-enable that, you can poke "holes" into the +user-defined keymap using the C replacement: + + URxvt.keysym.Insert: + URxvt.keysym.S-Insert: builtin: + +The first line defines a mapping for C and I combination +of modifiers. The second line re-establishes the default mapping for +C. + The following example will map Control-Meta-1 and Control-Meta-2 to the fonts C and C<9x15bold>, so you can have some limited font-switching at runtime: @@ -937,6 +1065,73 @@ URxvt.keysym.M-C-3: command:\033[8;25;80t URxvt.keysym.M-C-4: command:\033[8;48;110t +=item B: I + +=item B: I + +Comma-separated list(s) of perl extension scripts (default: C) to +use in this terminal instance; option B<-pe>. + +Extension names can be prefixed with a C<-> sign to prohibit using +them. This can be useful to selectively disable some extensions loaded +by default, or specified via the C resource. For +example, C will use all the default extension except +C. + +Extension names can also be followed by an argument in angle brackets +(e.g. C<< searchable-scrollback >>, which binds the hotkey for +searchable scorllback to Alt/Meta-s). Mentioning the same extension +multiple times with different arguments will pass multiple arguments to +the extension. + +Each extension is looked up in the library directories, loaded if +necessary, and bound to the current terminal instance. + +If both of these resources are the empty string, then the perl +interpreter will not be initialized. The idea behind two options is that +B will be used for extensions that should be available to +all instances, while B is used for specific instances. + +=item B: I + +Perl code to be evaluated when all extensions have been registered. See +the @@RXVT_NAME@@perl(3) manpage. Due to security reasons, this resource +will be ignored when running setuid/setgid. + +=item B: I + +Colon-separated list of additional directories that hold extension +scripts. When looking for extensions specified by the C resource, +@@RXVT_NAME@@ will first look in these directories and then in +F<@@RXVT_LIBDIR@@/urxvt/perl/>. Due to security reasons, this resource +will be ignored when running setuid/setgid. + +See the @@RXVT_NAME@@perl(3) manpage. + +=item B<< selection.pattern-I >>: I + +Additional selection patterns, see the @@RXVT_NAME@@perl(3) manpage for +details. + +=item B<< selection-autotransform.I >>: I + +Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage +for details. + +=item B I + +Sets the hotkey that starts the incremental scrollback buffer search +(default: C). + +=item B: I + +Specifies the program to be started with a URL argument. Used by the +C and C perl extensions. + +=item B: I + +Sets the WM_TRANSIENT_FOR property to the given window iw. + =back =head1 THE SCROLLBAR @@ -980,8 +1175,10 @@ B. Starting a selection while pressing the B key (or B keys) -(Compile: I) will create a rectangular selection instead of a normal -one. +(Compile: I) will create a rectangular selection instead of a +normal one. In this mode, every selected row becomes its own line in the +selection, and trailing whitespace is visually underlined and removed from +the selection. =item B: @@ -996,10 +1193,14 @@ Changing fonts (or font sizes, respectively) via the keypad is not yet supported in rxvt-unicode. Bug me if you need this. -You can, however, switch fonts at runtime using escape sequences (and -therefore using the menubar), e.g.: +You can, however, switch fonts at runtime using escape sequences, e.g.: + + printf '\e]710;%s\007' "9x15bold,xft:Kochi Gothic" + +You can use keyboard shortcuts, too: - printf '\e]701;%s\007' "9x15bold,xft:Kochi Gothic" + URxvt.keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007 + URxvt.keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007 rxvt-unicode will automatically re-apply these fonts to the output so far. @@ -1185,7 +1386,7 @@ The unix domain socket path used by @@RXVT_NAME@@c(1) and @@RXVT_NAME@@d(1). -Default C<< $HOME/.rxvt-unicode->. +Default F<<< $HOME/.rxvt-unicode-I<< > >>>. =item B @@ -1216,15 +1417,7 @@ =head1 SEE ALSO -@@RXVT_NAME@@(7), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5) - -=head1 BUGS - -Check the BUGS file for an up-to-date list. - -Cursor change support is not yet implemented. - -Click-and-drag doesn't work with X11 mouse report overriding. +@@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) =head1 CURRENT PROJECT COORDINATOR