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.218 by root, Tue Jun 5 22:26:55 2012 UTC vs.
Revision 1.256 by root, Mon Nov 22 17:00:49 2021 UTC

84far greater than those listed. For example: `@@RXVT_NAME@@ --loginShell --color1 84far greater than those listed. For example: `@@RXVT_NAME@@ --loginShell --color1
85Orange'. 85Orange'.
86 86
87The following options are available: 87The following options are available:
88 88
89=over 4 89=over
90 90
91=item B<-help>, B<--help> 91=item B<-help>, B<--help>
92 92
93Print out a message describing available options. 93Print out a message describing available options.
94 94
98is still respected. but deprecated). In the absence of this option, the 98is still respected. but deprecated). In the absence of this option, the
99display specified by the B<DISPLAY> environment variable is used. 99display specified by the B<DISPLAY> environment variable is used.
100 100
101=item B<-depth> I<bitdepth> 101=item B<-depth> I<bitdepth>
102 102
103Compile I<xft>: Attempt to find a visual with the given bit depth; 103Compile I<frills>: Attempt to find a visual with the given bit depth;
104resource B<depth>. 104resource B<depth>.
105 105
106[Please note that many X servers (and libXft) are buggy with 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 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 108of graphical corruption. This is harmless, but we can't do anything about
109this, so watch out] 109this, so watch out]
110 110
111=item B<-visual> I<visualID>
112
113Compile I<frills>: Use the given visual (see e.g. C<xdpyinfo> for
114possible visual ids) instead of the default, and also allocate a private
115colormap. All visual types except for DirectColor are supported.
116
111=item B<-geometry> I<geom> 117=item B<-geometry> I<geom>
112 118
113Window geometry (B<-g> still respected); resource B<geometry>. 119Window geometry (B<-g> still respected); resource B<geometry>.
114 120
115=item B<-rv>|B<+rv> 121=item B<-rv>|B<+rv>
121Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>. 127Turn on/off jump scrolling (allow multiple lines per refresh); resource B<jumpScroll>.
122 128
123=item B<-ss>|B<+ss> 129=item B<-ss>|B<+ss>
124 130
125Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>. 131Turn on/off skip scrolling (allow multiple screens per refresh); resource B<skipScroll>.
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.
133 132
134=item B<-fade> I<number> 133=item B<-fade> I<number>
135 134
136Fade the text by the given percentage when focus is lost. Small values 135Fade the text by the given percentage when focus is lost. Small values
137fade a little only, 100 completely replaces all colours by the fade 136fade a little only, 100 completely replaces all colours by the fade
140=item B<-fadecolor> I<colour> 139=item B<-fadecolor> I<colour>
141 140
142Fade to this colour when fading is used (see B<-fade>). The default colour 141Fade to this colour when fading is used (see B<-fade>). The default colour
143is opaque black. resource B<fadeColor>. 142is opaque black. resource B<fadeColor>.
144 143
145=item B<-tint> I<colour>
146
147Tint the transparent background with the given colour;
148resource I<tintColor>.
149
150=item B<-sh> I<number>
151
152Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
153A value of 100 means no shading; resource I<shading>.
154
155=item B<-blr> I<HxV>
156
157Apply Gaussian Blur with the specified radii to the transparent
158background. If a single number is specified, the vertical and
159horizontal radii are considered to be the same. Setting one of the
160radii to 1 and the other to a large number creates interesting effects
161on some backgrounds. The maximum radius value is 128. An horizontal or
162vertical radius of 0 disables blurring;
163resource I<blurRadius>.
164
165=item B<-icon> I<file> 144=item B<-icon> I<file>
166 145
167Compile I<pixbuf>: Use the specified image as application icon. This 146Compile I<pixbuf>: Use the specified image as application icon. This
168is used by many window managers, taskbars and pagers to represent the 147is used by many window managers, taskbars and pagers to represent the
169application window; resource I<iconFile>. 148application window; resource I<iconFile>.
173Window background colour; resource B<background>. 152Window background colour; resource B<background>.
174 153
175=item B<-fg> I<colour> 154=item B<-fg> I<colour>
176 155
177Window foreground colour; resource B<foreground>. 156Window foreground colour; resource B<foreground>.
178
179=item B<-pixmap> I<file[;oplist]>
180
181Compile I<pixbuf>: Specify image file for the background and also
182optionally specify a list of operations to modify it. Note you may need to
183add quotes to avoid special shell interpretation of the C<;> in the
184command-line; for more details see resource B<backgroundPixmap>.
185 157
186=item B<-cr> I<colour> 158=item B<-cr> I<colour>
187 159
188The cursor colour; resource B<cursorColor>. 160The cursor colour; resource B<cursorColor>.
189 161
248 220
249=item B<-ls>|B<+ls> 221=item B<-ls>|B<+ls>
250 222
251Start as a login-shell/sub-shell; resource B<loginShell>. 223Start as a login-shell/sub-shell; resource B<loginShell>.
252 224
225=item B<-mc> I<milliseconds>
226
227Specify the maximum time between multi-click selections.
228
253=item B<-ut>|B<+ut> 229=item B<-ut>|B<+ut>
254 230
255Compile I<utmp>: Inhibit/enable writing a utmp entry; resource 231Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
256B<utmpInhibit>. 232B<utmpInhibit>.
257 233
335 311
336=item B<-override-redirect> 312=item B<-override-redirect>
337 313
338Compile I<frills>: Sets override-redirect on the window; resource 314Compile I<frills>: Sets override-redirect on the window; resource
339B<override-redirect>. 315B<override-redirect>.
316
317=item B<-dockapp>
318
319Sets the initial state of the window to WithdrawnState, which makes
320window managers that support this extension treat it as a dockapp.
340 321
341=item B<-sbg> 322=item B<-sbg>
342 323
343Compile I<frills>: Disable the usage of the built-in block graphics/line 324Compile I<frills>: Disable the usage of the built-in block graphics/line
344drawing characters and just rely on what the specified fonts provide. Use 325drawing characters and just rely on what the specified fonts provide. Use
399=item B<-pt> I<style> 380=item B<-pt> I<style>
400 381
401Compile I<XIM>: input style for input method; B<OverTheSpot>, 382Compile I<XIM>: input style for input method; B<OverTheSpot>,
402B<OffTheSpot>, B<Root>; resource B<preeditType>. 383B<OffTheSpot>, B<Root>; resource B<preeditType>.
403 384
385If the perl extension C<xim-onthespot> is used (which is the default),
386then additionally the C<OnTheSpot> preedit type is available.
387
404=item B<-im> I<text> 388=item B<-im> I<text>
405 389
406Compile I<XIM>: input method name. resource B<inputMethod>. 390Compile I<XIM>: input method name. resource B<inputMethod>.
407 391
408=item B<-imlocale> I<string> 392=item B<-imlocale> I<string>
422Change the meaning of triple-click selection with the left mouse 406Change the meaning of triple-click selection with the left mouse
423button. Only effective when the original (non-perl) selection code is 407button. Only effective when the original (non-perl) selection code is
424in-use. Instead of selecting a full line it will extend the selection to 408in-use. Instead of selecting a full line it will extend the selection to
425the end of the logical line only. resource B<tripleclickwords>. 409the end of the logical line only. resource B<tripleclickwords>.
426 410
411=item B<-dpb>|B<+dpb>
412
413Compile frills: Disable (or enable) emitting bracketed paste mode
414sequences (default enabled). Bracketed paste mode allows programs
415to detect when something is pasted. Since more and more programs
416abuse this, these sequences can be disabled. The command sequences to
417enable and query paste mode will still work, but the actual bracket
418sequences will no longer be emitted. You can also toggle this from the
419ctrl-middle-mouse-button menu; resource B<disablePasteBrackets>.
420
427=item B<-insecure> 421=item B<-insecure>
428 422
429Enable "insecure" mode, which currently enables most of the escape 423Enable "insecure" mode, which currently enables most of the escape
430sequences that echo strings. See the resource B<insecure> for more 424sequences that echo strings. See the resource B<insecure> for more
431info. 425info.
443 437
444=item B<-ssr>|B<+ssr> 438=item B<-ssr>|B<+ssr>
445 439
446Turn on/off secondary screen scroll (default enabled); resource 440Turn on/off secondary screen scroll (default enabled); resource
447B<secondaryScroll>. 441B<secondaryScroll>.
442
443=item B<-rm> I<mode>
444
445Compile I<frills>: Sets long line rewrapping behaviour on window resizes
446to one of B<auto> (the default), B<always> or B<never>. The latter two
447modes do the obvious, B<auto> rewraps (acts like B<always>) if scrollback
448is non-empty, and wings lines (acts like B<never>) otherwise; resource
449B<rewrapMode>.
448 450
449=item B<-hold>|B<+hold> 451=item B<-hold>|B<+hold>
450 452
451Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ 453Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
452will not immediately destroy its window when the program executed within 454will not immediately destroy its window when the program executed within
530 close $pty; 532 close $pty;
531 533
532 # now communicate with rxvt 534 # now communicate with rxvt
533 my $slave = $pty->slave; 535 my $slave = $pty->slave;
534 while (<$slave>) { print $slave "got <$_>\n" } 536 while (<$slave>) { print $slave "got <$_>\n" }
537
538Note that, despite what the name might imply, the file descriptor does not
539need to be a pty, it can be a bi-directional pipe as well (e.g. a unix
540domain or tcp socket). While tty operations cannot be done in this case,
541B<@@RXVT_NAME@@> can still be remote controlled with it:
542
543 use Socket;
544 use Fcntl;
545
546 socketpair my $URXVT, my $slave, Socket::AF_UNIX, Socket::SOCK_STREAM, Socket::PF_UNSPEC;
547 fcntl $slave, Fcntl::F_SETFD, 0;
548 system "exec @@RXVT_NAME|| -pty-fd " . (fileno $slave) . " &";
549 close $slave;
550
551 syswrite $URXVT, "Type a secret password: ";
552 my $secret = do { local $/ = "\r"; <$URXVT> };
553 print "No so secret anymore: $secret\n";
535 554
536=item B<-pe> I<string> 555=item B<-pe> I<string>
537 556
538Comma-separated list of perl extension scripts to use (or not to use) in 557Comma-separated list of perl extension scripts to use (or not to use) in
539this terminal instance. See resource B<perl-ext> for details. 558this terminal instance. See resource B<perl-ext> for details.
567be used. Command-line arguments can be used to override resource 586be used. Command-line arguments can be used to override resource
568settings. The following resources are supported (you might want to 587settings. The following resources are supported (you might want to
569check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl 588check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl
570extensions not documented here): 589extensions not documented here):
571 590
572=over 4 591=over
573 592
574=item B<depth:> I<bitdepth> 593=item B<depth:> I<bitdepth>
575 594
576Compile I<xft>: Attempt to find a visual with the given bit depth; 595Compile I<xft>: Attempt to find a visual with the given bit depth;
577option B<-depth>. 596option B<-depth>.
678 697
679B<False>: specify that everything is to be displayed, even 698B<False>: specify that everything is to be displayed, even
680if the refresh is too fast for the human eye to read anything (or the 699if the refresh is too fast for the human eye to read anything (or the
681monitor to display anything); option B<+ss>. 700monitor to display anything); option B<+ss>.
682 701
683=item B<transparent:> I<boolean>
684
685Turn on/off pseudo-transparency by using the root pixmap as background.
686
687B<inheritPixmap> is still accepted as an obsolete alias but will be removed in
688future versions.
689
690=item B<fading:> I<number> 702=item B<fading:> I<number>
691 703
692Fade the text by the given percentage when focus is lost; option B<-fade>. 704Fade the text by the given percentage when focus is lost; option B<-fade>.
693 705
694=item B<fadeColor:> I<colour> 706=item B<fadeColor:> I<colour>
695 707
696Fade to this colour, when fading is used (see B<fading:>). The default 708Fade to this colour, when fading is used (see B<fading:>). The default
697colour is black; option B<-fadecolor>. 709colour is black; option B<-fadecolor>.
698 710
699=item B<tintColor:> I<colour>
700
701Tint the transparent background with the given colour. If the RENDER
702extension is not available only black, red, green, yellow, blue,
703magenta, cyan and white tints can be performed server-side. Note that
704a black tint yields a completely black image while a white tint yields
705the image unchanged; option B<-tint>.
706
707=item B<shading:> I<number>
708
709Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
710A value of 100 means no shading; option B<-sh>.
711
712=item B<blurRadius:> I<number>
713
714Apply gaussian blur with the specified radius to the transparent
715background; option B<-blr>.
716
717=item B<iconFile:> I<file> 711=item B<iconFile:> I<file>
718 712
719Set the application icon pixmap; option B<-icon>. 713Set the application icon pixmap; option B<-icon>.
720 714
721=item B<scrollColor:> I<colour> 715=item B<scrollColor:> I<colour>
729 723
730=item B<borderColor:> I<colour> 724=item B<borderColor:> I<colour>
731 725
732The colour of the border around the text area and between the scrollbar 726The colour of the border around the text area and between the scrollbar
733and the text. 727and the text.
734
735=item B<backgroundPixmap:> I<file[;oplist]>
736
737Use the specified image file for the background and also
738optionally specify a colon separated list of operations to modify it.
739Supported operations are:
740
741=over 4
742
743=item B<WxH+X+Y>
744
745sets scale and position. B<"W" / "H"> specify the horizontal/vertical
746scale (percent), and B<"X" / "Y"> locate the image centre (percent). A
747scale of 0 disables scaling.
748
749=item B<op=tile>
750
751enables tiling
752
753=item B<op=keep-aspect>
754
755maintain the image aspect ratio when scaling
756
757=item B<op=root-align>
758
759use the position of the terminal window relative to the root window as
760the image offset, simulating a root window background
761
762=back
763
764The default scale and position setting is C<100x100+50+50>.
765Alternatively, a predefined set of templates can be used to achieve
766the most common setups:
767
768=over 4
769
770=item B<style=tiled>
771
772the image is tiled with no scaling. Equivalent to 0x0+0+0:op=tile
773
774=item B<style=aspect-stretched>
775
776the image is scaled to fill the whole window maintaining the aspect
777ratio and centered. Equivalent to 100x100+50+50:op=keep-aspect
778
779=item B<style=stretched>
780
781the image is scaled to fill the whole window. Equivalent to 100x100
782
783=item B<style=centered>
784
785the image is centered with no scaling. Equivalent to 0x0+50+50
786
787=item B<style=root-tiled>
788
789the image is tiled with no scaling and using 'root' positioning.
790Equivalent to 0x0:op=tile:op=root-align
791
792=back
793
794If multiple templates are specified the last one wins. Note that a
795template overrides all the scale, position and operations settings.
796
797If used in conjunction with B<-tr> option, the specified pixmap will be
798blended over the transparent background using alpha-blending.
799
800=item B<path:> I<path>
801
802Specify the colon-delimited search path for finding background image files.
803 728
804=item B<font:> I<fontlist> 729=item B<font:> I<fontlist>
805 730
806Select the fonts to be used. This is a comma separated list of font names 731Select the fonts to be used. This is a comma separated list of font names
807that are checked in order when trying to find glyphs for characters. The 732that are checked in order when trying to find glyphs for characters. The
904 829
905B<True>: start as a login shell by prepending a `-' to B<argv[0]> of 830B<True>: start as a login shell by prepending a `-' to B<argv[0]> of
906the shell; option B<-ls>. B<False>: start as a normal sub-shell 831the shell; option B<-ls>. B<False>: start as a normal sub-shell
907[default]; option B<+ls>. 832[default]; option B<+ls>.
908 833
834=item B<multiClickTime:> I<number>
835
836Specify the maximum time in milliseconds between multi-click select
837events. The default is 500 milliseconds; option B<-mc>.
838
909=item B<utmpInhibit:> I<boolean> 839=item B<utmpInhibit:> I<boolean>
910 840
911B<True>: inhibit writing record into the system log file B<utmp>; 841B<True>: inhibit writing record into the system log file B<utmp>;
912option B<-ut>. B<False>: write record into the system log file B<utmp> 842option B<-ut>. B<False>: write record into the system log file B<utmp>
913[default]; option B<+ut>. 843[default]; option B<+ut>.
976are not passed onto the shell; option B<-sk>. B<False>: do not scroll to 906are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
977bottom when a non-special key is pressed; option B<+sk>. 907bottom when a non-special key is pressed; option B<+sk>.
978 908
979=item B<saveLines:> I<number> 909=item B<saveLines:> I<number>
980 910
981Save I<number> lines in the scrollback buffer [default 64]. This 911Save I<number> lines in the scrollback buffer [default 1000]; option B<-sl>.
982resource is limited on most machines to 65535; option B<-sl>.
983 912
984=item B<internalBorder:> I<number> 913=item B<internalBorder:> I<number>
985 914
986Internal border of I<number> pixels. This resource is limited to 100; 915Internal border of I<number> pixels. This resource is limited to 100;
987option B<-b>. 916option B<-b>.
1050 979
1051=item B<pointerColor2:> I<colour> 980=item B<pointerColor2:> I<colour>
1052 981
1053Mouse pointer background colour. 982Mouse pointer background colour.
1054 983
984=item B<pointerShape:> I<string>
985
986Compile I<frills>: Specifies the name of the mouse pointer shape
987[default B<xterm>]. See the macros in the B<X11/cursorfont.h> include
988file for possible values (omit the C<XC_> prefix).
989
1055=item B<pointerBlankDelay:> I<number> 990=item B<pointerBlankDelay:> I<number>
1056 991
1057Specifies number of seconds before blanking the pointer [default 2]. Use a 992Specifies number of seconds before blanking the pointer [default 2]. Use a
1058large number (e.g. C<987654321>) to effectively disable the timeout. 993large number (e.g. C<987654321>) to effectively disable the timeout.
1059 994
1085 1020
1086B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >> 1021B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
1087 1022
1088=item B<preeditType:> I<style> 1023=item B<preeditType:> I<style>
1089 1024
1090B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 1025B<OnTheSpot>, B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
1091 1026
1092=item B<inputMethod:> I<name> 1027=item B<inputMethod:> I<name>
1093 1028
1094I<name> of inputMethod to use; option B<-im>. 1029I<name> of inputMethod to use; option B<-im>.
1095 1030
1113 1048
1114Change the meaning of triple-click selection with the left mouse 1049Change the meaning of triple-click selection with the left mouse
1115button. Instead of selecting a full line it will extend the selection to 1050button. Instead of selecting a full line it will extend the selection to
1116the end of the logical line only; option B<-tcw>. 1051the end of the logical line only; option B<-tcw>.
1117 1052
1053=item B<disablePasteBrackets:> I<boolean>
1054
1055Prevent emission of paste bracket sequences; option B<-dpb>.
1056
1118=item B<insecure:> I<boolean> 1057=item B<insecure:> I<boolean>
1119 1058
1120Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 1059Enable "insecure" mode. Rxvt-unicode offers some escape sequences that
1121echo arbitrary strings like the icon name or the locale. This could be 1060echo arbitrary strings like the icon name or the locale. This could be
1122abused if somebody gets 8-bit-clean access to your display, whether 1061abused if somebody gets 8-bit-clean access to your display, whether
1123through a mail client displaying mail bodies unfiltered or through 1062through a mail client displaying mail bodies unfiltered or through
1124write(1) or any other means. Therefore, these sequences are disabled by 1063write(1) or any other means. Therefore, these sequences are disabled by
1125default. (Note that many other terminals, including xterm, have these 1064default. (Note that many other terminals, including xterm, have these
1143 1082
1144=item B<secondaryScreen:> I<boolean> 1083=item B<secondaryScreen:> I<boolean>
1145 1084
1146Turn on/off secondary screen (default enabled). 1085Turn on/off secondary screen (default enabled).
1147 1086
1087=item B<rewrapMode:> I<mode>
1088
1089Sets long line rewrap behaviour on window resize to one of B<auto>
1090(default), B<always> or B<never>.
1091
1148=item B<secondaryScroll:> I<boolean> 1092=item B<secondaryScroll:> I<boolean>
1149 1093
1150Turn on/off secondary screen scroll (default enabled). If this 1094Turn on/off secondary screen scroll (default enabled). If this
1151option is enabled, scrolls on the secondary screen will change the 1095option is enabled, scrolls on the secondary screen will change the
1152scrollback buffer and, when secondaryScreen is off, switching 1096scrollback buffer and, when secondaryScreen is off, switching
1164Sets the working directory for the shell (or the command specified via 1108Sets the working directory for the shell (or the command specified via
1165B<-e>). The I<path> must be an absolute path and it must exist for 1109B<-e>). The I<path> must be an absolute path and it must exist for
1166@@RXVT_NAME@@ to start. If it isn't specified then the current working 1110@@RXVT_NAME@@ to start. If it isn't specified then the current working
1167directory will be used; option B<-cd>. 1111directory will be used; option B<-cd>.
1168 1112
1169=item B<keysym.>I<sym>: I<string> 1113=item B<keysym.>I<sym>: I<action>
1170 1114
1171Compile I<frills>: Associate I<string> with keysym I<sym>. The 1115Compile I<frills>: Associate I<action> with keysym I<sym>. The intervening
1172intervening resource name B<keysym.> cannot be omitted. 1116resource name B<keysym.> cannot be omitted.
1173 1117
1174The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be 1118Using this resource, you can map key combinations such as
1175any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>, 1119C<Ctrl-Shift-BackSpace> to various actions, such as outputting a different
1176B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>, 1120string than would normally result from that combination, making the
1177and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>, 1121terminal scroll up or down the way you want it, or any other thing an
1178B<2>, B<3>, B<4>, B<5>. 1122extension might provide.
1123
1124The key combination that triggers the action, I<sym>, has the following format:
1125
1126 (modifiers-)key
1127
1128Where I<modifiers> can be any combination of the following full or
1129abbreviated modifier names:
1130
1131=begin table
1132
1133 B<ISOLevel3> B<I>
1134 B<AppKeypad> B<K>
1135 B<Control> B<C>
1136 B<NumLock> B<N>
1137 B<Shift> B<S>
1138 B<Meta> B<M> I<or> B<A>
1139 B<Lock> B<L>
1140 B<Mod1> B<1>
1141 B<Mod2> B<2>
1142 B<Mod3> B<3>
1143 B<Mod4> B<4>
1144 B<Mod5> B<5>
1145
1146=end table
1179 1147
1180The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to 1148The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
1181whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr 1149whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
1182keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the 1150keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1183current application keymap mode state. 1151current application keymap mode state.
1184 1152
1185The spellings of I<key> can be obtained by using B<xev>(1) command or 1153Due the the large number of modifier combinations, a key mapping will
1186searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and 1154match if I<at least> the specified identifiers are being set, and no other
1155key mappings with those and more bits are being defined. That means that
1156defining a mapping for C<a> will automatically provide definitions for
1157C<Meta-a>, C<Shift-a> and so on, unless some of those are defined mappings
1158themselves. See the C<builtin:> action, below, for a way to work around
1159this when this is a problem.
1160
1161The spelling of I<key> depends on your implementation of X. An easy way to
1162find a key name is to use the B<xev>(1) command. You can find a list by
1163looking for the C<XK_> macros in the B<X11/keysymdef.h> include file (omit
1187omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex 1164the C<XK_> prefix). Alternatively you can specify I<key> by its hex keysym
1188keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not 1165value (B<0x0000 - 0xFFFF>).
1189performed in an exact manner; however, the closest match is assured.
1190 1166
1191I<string> may contain escape values (C<\n>: newline, C<\000>: octal 1167As with any resource value, the I<action> string may contain backslash
1168escape sequences (C<\n>: newline, C<\\>: backslash, C<\000>: octal
1192number), see RESOURCES in C<man 7 X> for further details. 1169number), see RESOURCES in C<man 7 X> for further details.
1193 1170
1194You can define a range of keysyms in one shot by 1171An action starts with an action prefix that selects a certain type
1195loading the C<keysym-list> perl extension and providing a I<string> 1172of action, followed by a colon. An action string without colons is
1196with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/' 1173interpreted as a literal string to pass to the tty (as if it was
1174prefixed with C<string:>).
1175
1176The following action prefixes are known - extensions can provide
1177additional prefixes:
1178
1179=over
1180
1181=item string:STRING
1182
1183If the I<action> starts with C<string:> (or otherwise contains no colons),
1184then the remaining C<STRING> will be passed to the program running in the
1185terminal. For example, you could replace whatever Shift-Tab outputs by the
1186string C<echo rm -rf /> followed by a newline:
1187
1188 URxvt.keysym.Shift-Tab: string:echo rm -rf /\n
1189
1190This could in theory be used to completely redefine your keymap.
1191
1192In addition, for actions of this type, you can define a range of
1193keysyms in one shot by loading the C<keysym-list> perl extension and
1194providing an I<action> with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where
1197should be a character not used by the strings. 1195the delimiter `/' should be a character not used by the strings.
1198 1196
1199Its usage can be demonstrated by an example: 1197Its usage can be demonstrated by an example:
1200 1198
1201 URxvt.keysym.M-C-0x61: list|\033<|abc|> 1199 URxvt.keysym.M-C-0x61: list|\033<|abc|>
1202 1200
1203The above line is equivalent to the following three lines: 1201The above line is equivalent to the following three lines:
1204 1202
1205 URxvt.keysym.Meta-Control-0x61: \033<a> 1203 URxvt.keysym.Meta-Control-0x61: string:\033<a>
1206 URxvt.keysym.Meta-Control-0x62: \033<b> 1204 URxvt.keysym.Meta-Control-0x62: string:\033<b>
1207 URxvt.keysym.Meta-Control-0x63: \033<c> 1205 URxvt.keysym.Meta-Control-0x63: string:\033<c>
1208 1206
1207=item command:STRING
1208
1209If I<string> takes the form of C<command:STRING>, the specified B<STRING> 1209If I<action> takes the form of C<command:STRING>, the specified B<STRING>
1210is interpreted and executed as @@RXVT_NAME@@'s control sequence. For 1210is interpreted and executed as @@RXVT_NAME@@'s control sequence (basically
1211the opposite of C<string:> - instead of sending it to the program running
1212in the terminal, it will be treated as if it were program output). This is
1213most useful to feed command sequences into @@RXVT_NAME@@.
1214
1211example the following means "change the current locale to C<zh_CN.GBK> 1215For example the following means "change the current locale to C<zh_CN.GBK>
1212when Control-Meta-c is being pressed": 1216when Control-Meta-c is being pressed":
1213 1217
1214 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 1218 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1215 1219
1216If I<string> takes the form C<perl:STRING>, then the specified B<STRING> 1220The following example will map Control-Meta-1 and Control-Meta-2 to
1217is passed to the C<on_user_command> perl handler. See the @@RXVT_NAME@@perl(3) 1221the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1218manpage. For example, the F<selection> extension (activated via 1222font-switching at runtime:
1219C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1220 1223
1221 URxvt.keysym.M-C-c: perl:selection:rot13 1224 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1225 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1222 1226
1223Due the the large number of modifier combinations, a defined key mapping 1227Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1224will match if I<at least> the specified identifiers are being set, and 1228info):
1225no other key mappings with those and more bits are being defined. That
1226means that defining a key map for C<a> will automatically provide
1227definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1228mappings themselves.
1229 1229
1230Unfortunately, this will override built-in key mappings. For example 1230 URxvt.keysym.M-C-3: command:\033[8;25;80t
1231 URxvt.keysym.M-C-4: command:\033[8;48;110t
1232
1233=item builtin:
1234
1235The builtin action is the action that @@RXVT_NAME@@ would execute if no
1236key binding existed for the key combination. The obvious use is to undo
1237the effect of existing bindings. The not so obvious use is to reinstate
1238bindings when another binding overrides too many modifiers.
1239
1231if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s 1240For example if you overwrite the C<Insert> key you will disable
1232C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the 1241@@RXVT_NAME@@'s C<Shift-Insert> mapping. To re-enable that, you can poke
1233user-defined keymap using the C<builtin:> replacement: 1242"holes" into the user-defined keymap using the C<builtin:> replacement:
1234 1243
1235 URxvt.keysym.Insert: <my insert key sequence> 1244 URxvt.keysym.Insert: <my insert key sequence>
1236 URxvt.keysym.S-Insert: builtin: 1245 URxvt.keysym.S-Insert: builtin:
1237 1246
1238The first line defines a mapping for C<Insert> and I<any> combination 1247The first line defines a mapping for C<Insert> and I<any> combination
1239of modifiers. The second line re-establishes the default mapping for 1248of modifiers. The second line re-establishes the default mapping for
1240C<Shift-Insert>. 1249C<Shift-Insert>.
1241 1250
1242The following example will map Control-Meta-1 and Control-Meta-2 to 1251=item builtin-string:
1243the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1244font-switching at runtime:
1245 1252
1246 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007 1253This action is mainly useful to restore string mappings for keys that
1247 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007 1254have predefined actions in @@RXVT_NAME@@. The exact semantics are a bit
1255difficult to explain - basically, this action will send the string to the
1256application that would be sent if @@RXVT_NAME@@ wouldn't have a built-in
1257action for it.
1248 1258
1249Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more 1259An example might make it clearer: @@RXVT_NAME@@ normally pastes the
1250info): 1260selection when you press C<Shift-Insert>. With the following bindings, it
1261would instead emit the (undocumented, but what applications running in the
1262terminal might expect) sequence C<ESC [ 2 $> instead:
1251 1263
1252 URxvt.keysym.M-C-3: command:\033[8;25;80t 1264 URxvt.keysym.S-Insert: builtin-string:
1253 URxvt.keysym.M-C-4: command:\033[8;48;110t 1265 URxvt.keysym.C-S-Insert: builtin:
1266
1267The first line disables the paste functionality for that key
1268combination, and the second reinstates the default behaviour for
1269C<Control-Shift-Insert>, which would otherwise be overridden.
1270
1271Similarly, to let applications gain access to the C<C-M-c> (copy to
1272clipboard) and C<C-M-v> (paste clipboard) key combination, you can do
1273this:
1274
1275 URxvt.keysym.C-M-c: builtin-string:
1276 URxvt.keysym.C-M-v: builtin-string:
1277
1278=item EXTENSION:STRING
1279
1280An action of this form invokes the action B<STRING>, if any, provided
1281by the @@RXVT_NAME@@perl(3) extension B<EXTENSION>. The extension will
1282be loaded automatically if necessary.
1283
1284Not all extensions define actions, but popular extensions that do
1285include the I<selection> and I<matcher> extensions (documented in their
1286own manpages, @@RXVT_NAME@@-selection(1) and @@RXVT_NAME@@-matcher(1),
1287respectively).
1288
1289From the silly examples department, this will rot13-"encrypt"
1290@@RXVT_NAME@@'s selection when Alt-Control-c is pressed on typical PC
1291keyboards:
1292
1293 URxvt.keysym.M-C-c: selection:rot13
1294
1295=item perl:STRING *DEPRECATED*
1296
1297This is a deprecated way of invoking commands provided by perl
1298extensions. It is still supported, but should not be used anymore.
1299
1300=back
1254 1301
1255=item B<perl-ext-common>: I<string> 1302=item B<perl-ext-common>: I<string>
1256 1303
1257=item B<perl-ext>: I<string> 1304=item B<perl-ext>: I<string>
1258 1305
1259Comma-separated list(s) of perl extension scripts (default: C<default>) to 1306Comma-separated list(s) of perl extension scripts (default: C<default>) to
1260use in this terminal instance; option B<-pe>. 1307use in this terminal instance; option B<-pe>.
1261 1308
1262Extension names can be prefixed with a C<-> sign to prohibit using 1309Extension names can be prefixed with a C<-> sign to remove them again, in
1263them. This can be useful to selectively disable some extensions loaded 1310case they had been specified earlier. This can be useful to selectively
1264by default, or specified via the C<perl-ext-common> resource. For 1311disable some extensions loaded by default, or specified via the
1265example, C<default,-selection> will use all the default extension except 1312C<perl-ext-common> resource. For example, C<default,-selection> will use
1266C<selection>. 1313all the default extensions except C<selection>.
1267 1314
1268Extension names can also be followed by an argument in angle brackets 1315To prohibit autoloading of extensions, you can prefix them with C</>,
1269(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for 1316which will make urxvt refuse to automatically load them (this can be
1270searchable scrollback to Alt/Meta-s). Mentioning the same extension 1317overriden, however, by specifying the extension name again without a
1271multiple times with different arguments will pass multiple arguments to 1318prefix, though). This does not prohibit extensions themselves loading
1272the extension. 1319other extensions. For example, C<default,/background> will keep the
1320C<background> extension from being loaded when a background OSC sequence
1321is received.
1322
1323The default set includes the C<selection>, C<option-popup>,
1324C<selection-popup>, C<readline>, C<searchable-scrollback> and
1325C<confirm-paste> extensions, as well as any extensions which are mentioned
1326in B<keysym> resources.
1327
1328Any extension such that a corresponding resource is given on the
1329command line is automatically appended to B<perl-ext>.
1273 1330
1274Each extension is looked up in the library directories, loaded if 1331Each extension is looked up in the library directories, loaded if
1275necessary, and bound to the current terminal instance. 1332necessary, and bound to the current terminal instance. When the library
1333search path contains multiple extension files of the same name, then the
1334first one found will be used.
1276 1335
1277If both of these resources are the empty string, then the perl 1336If both of these resources are the empty string, then the perl interpreter
1278interpreter will not be initialized. The idea behind two options is that 1337will not be initialized. The rationale for having two options is that
1279B<perl-ext-common> will be used for extensions that should be available to 1338B<perl-ext-common> will be used for extensions that should be available to
1280all instances, while B<perl-ext> is used for specific instances. 1339all instances, while B<perl-ext> is used for specific instances.
1281 1340
1282=item B<perl-eval>: I<string> 1341=item B<perl-eval>: I<string>
1283 1342
1301=item B<< selection-autotransform.I<idx> >>: I<perl-transform> 1360=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1302 1361
1303Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage 1362Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1304for details. 1363for details.
1305 1364
1306=item B<searchable-scrollback:> I<keysym> 1365=item B<searchable-scrollback:> I<keysym> *DEPRECATED*
1307 1366
1308Sets the hotkey that starts the incremental scrollback buffer search 1367This resource is deprecated and will be removed. Use a B<keysym> resource
1309(default: C<M-s>). 1368instead, e.g.:
1310 1369
1370 URxvt.keysym.M-s: searchable-scrollback:start
1371
1311=item B<urlLauncher>: I<string> 1372=item B<url-launcher>: I<string>
1312 1373
1313Specifies the program to be started with a URL argument. Used by the 1374Specifies the program to be started with a URL argument. Used by the
1314C<selection-popup> and C<matcher> perl extensions. 1375C<selection-popup> and C<matcher> perl extensions.
1315 1376
1316=item B<transient-for>: I<windowid> 1377=item B<transient-for>: I<windowid>
1360=head1 THE SELECTION: SELECTING AND PASTING TEXT 1421=head1 THE SELECTION: SELECTING AND PASTING TEXT
1361 1422
1362The behaviour of text selection and insertion/pasting mechanism is similar 1423The behaviour of text selection and insertion/pasting mechanism is similar
1363to I<xterm>(1). 1424to I<xterm>(1).
1364 1425
1365=over 4 1426=over
1366 1427
1367=item B<Selecting>: 1428=item B<Selecting>:
1368 1429
1369Left click at the beginning of the region, drag to the end of the region 1430Left click at the beginning of the region, drag to the end of the region
1370and release; Right click to extend the marked region; Left double-click 1431and release; Right click to extend the marked region; Left double-click
1385B<Meta> modifier) to be inserted as if it had been typed on the keyboard. 1446B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1386 1447
1387Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be 1448Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1388inserted too. 1449inserted too.
1389 1450
1451rxvt-unicode also provides the bindings B<Ctrl-Meta-c> and
1452<Ctrl-Meta-v> to interact with the CLIPBOARD selection. The first
1453binding causes the value of the internal selection to be copied to the
1454CLIPBOARD selection, while the second binding causes the value of the
1455CLIPBOARD selection to be inserted.
1456
1390=back 1457=back
1391 1458
1392=head1 CHANGING FONTS 1459=head1 CHANGING FONTS
1393 1460
1394Changing fonts (or font sizes, respectively) via the keypad is not yet 1461Changing fonts (or font sizes, respectively) via the keypad is not yet
1411and character codes using the keyboard. It consists of 4 parts. The 1478and character codes using the keyboard. It consists of 4 parts. The
1412first part is available if rxvt-unicode has been compiled with 1479first part is available if rxvt-unicode has been compiled with
1413C<--enable-frills>, the rest is available when rxvt-unicode was compiled 1480C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1414with C<--enable-iso14755>. 1481with C<--enable-iso14755>.
1415 1482
1416=over 4 1483=over
1417 1484
1418=item * 5.1: Basic method 1485=item * 5.1: Basic method
1419 1486
1420This allows you to enter unicode characters using their hexcode. 1487This allows you to enter unicode characters using their hexcode.
1421 1488
1482In addition to the default foreground and background colours, 1549In addition to the default foreground and background colours,
1483B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus 1550B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus
1484high-intensity (potentially bold/blink) versions of the same, and 72 (or 1551high-intensity (potentially bold/blink) versions of the same, and 72 (or
1485240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB 1552240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB
1486cube plus a 8 (24) colour greyscale ramp. 1553cube plus a 8 (24) colour greyscale ramp.
1554
1555B<@@RXVT_NAME@@> supports direct 24-bit fg/bg RGB colour escapes
1556C< ESC [ 38 ; 2 ; R ; G ; Bm > / C< ESC [ 48 ; 2; R ; G ; Bm >. However the
1557number of 24-bit colours that can be used is limited: an internal 7x7x5 (256
1558colour mode) or 6x6x4 (88 colour mode) colour cube is used to index into the
155924-bit colour space. When indexing collisions happen, the nearest old colour in
1560the cube will be adapted to the new 24-bit RGB colour. That means one cannot
1561use many similar 24-bit colours. It's typically not a problem in common
1562scenarios.
1487 1563
1488Here is a list of the ANSI colours with their names. 1564Here is a list of the ANSI colours with their names.
1489 1565
1490=begin table 1566=begin table
1491 1567
1518The following text gives values for the standard 88 colour mode (and 1594The following text gives values for the standard 88 colour mode (and
1519values for the 256 colour mode in parentheses). 1595values for the 256 colour mode in parentheses).
1520 1596
1521The RGB cube uses indices 16..79 (16..231) using the following formulas: 1597The RGB cube uses indices 16..79 (16..231) using the following formulas:
1522 1598
1523 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3 1599 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3
1524 index_256 = (r * 16 + g) * 16 + b + 16 # r, g, b = 0..15 1600 index_256 = (r * 6 + g) * 6 + b + 16 # r, g, b = 0..5
1525 1601
1526The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10% 1602The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10%
1527steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of 1603steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of
1528the RGB cube. 1604the RGB cube.
1529 1605
1592 1668
1593=head1 ENVIRONMENT 1669=head1 ENVIRONMENT
1594 1670
1595B<@@RXVT_NAME@@> sets and/or uses the following environment variables: 1671B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1596 1672
1597=over 4 1673=over
1598 1674
1599=item B<TERM> 1675=item B<TERM>
1600 1676
1601Normally set to C<rxvt-unicode>, unless overwritten at configure time, via 1677Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1602resources or on the command line. 1678resources or on the command line.
1673 1749
1674=back 1750=back
1675 1751
1676=head1 FILES 1752=head1 FILES
1677 1753
1678=over 4 1754=over
1679 1755
1680=item B</usr/lib/X11/rgb.txt> 1756=item B</usr/lib/X11/rgb.txt>
1681 1757
1682Colour names. 1758Colour names.
1683 1759
1684=back 1760=back
1685 1761
1686=head1 SEE ALSO 1762=head1 SEE ALSO
1687 1763
1688@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), @@RXVT_NAME@@perl(3), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5) 1764@@RXVT_NAME@@(7), @@RXVT_NAME@@c(1), @@RXVT_NAME@@d(1), @@RXVT_NAME@@-extensions(1),
1765@@RXVT_NAME@@perl(3), xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)
1689 1766
1690=head1 CURRENT PROJECT COORDINATOR 1767=head1 CURRENT PROJECT COORDINATOR
1691 1768
1692=over 4 1769=over
1693 1770
1694=item Project Coordinator 1771=item Project Coordinator
1695 1772
1696Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >> 1773Marc A. Lehmann <rxvt-unicode@schmorp.de>.
1697 1774
1698L<http://software.schmorp.de/pkg/rxvt-unicode.html> 1775L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1699 1776
1700=back 1777=back
1701 1778
1702=head1 AUTHORS 1779=head1 AUTHORS
1703 1780
1704=over 4 1781=over
1705 1782
1706=item John Bovey 1783=item John Bovey
1707 1784
1708University of Kent, 1992, wrote the original Xvt. 1785University of Kent, 1992, wrote the original Xvt.
1709 1786
1710=item Rob Nation L<< <nation@rocket.sanders.lockheed.com> >> 1787=item Rob Nation <nation@rocket.sanders.lockheed.com>
1711 1788
1712very heavily modified Xvt and came up with Rxvt 1789very heavily modified Xvt and came up with Rxvt
1713 1790
1714=item Angelo Haritsis L<< <ah@doc.ic.ac.uk> >> 1791=item Angelo Haritsis <ah@doc.ic.ac.uk>
1715 1792
1716wrote the Greek Keyboard Input (no longer in code) 1793wrote the Greek Keyboard Input (no longer in code)
1717 1794
1718=item mj olesen L<< <olesen@me.QueensU.CA> >> 1795=item mj olesen <olesen@me.QueensU.CA>
1719 1796
1720Wrote the menu system. 1797Wrote the menu system.
1721 1798
1722Project Coordinator (changes.txt 2.11 to 2.21) 1799Project Coordinator (changes.txt 2.11 to 2.21)
1723 1800
1724=item Oezguer Kesim L<< <kesim@math.fu-berlin.de> >> 1801=item Oezguer Kesim <kesim@math.fu-berlin.de>
1725 1802
1726Project Coordinator (changes.txt 2.21a to 2.4.5) 1803Project Coordinator (changes.txt 2.21a to 2.4.5)
1727 1804
1728=item Geoff Wing L<< <gcw@pobox.com> >> 1805=item Geoff Wing <gcw@pobox.com>
1729 1806
1730Rewrote screen display and text selection routines. 1807Rewrote screen display and text selection routines.
1731 1808
1732Project Coordinator (changes.txt 2.4.6 - rxvt-unicode) 1809Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1733 1810
1734=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >> 1811=item Marc Alexander Lehmann <rxvt-unicode@schmorp.de>
1735 1812
1736Forked rxvt-unicode, unicode support, rewrote almost all the code, perl 1813Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1737extension, random hacks, numerous bugfixes and extensions. 1814extension, random hacks, numerous bugfixes and extensions.
1738 1815
1739Project Coordinator (Changes 1.0 -) 1816Project Coordinator (Changes 1.0 -)
1740 1817
1741=item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >> 1818=item Emanuele Giaquinta <emanuele.giaquinta@gmail.com>
1742 1819
1743pty/utmp code rewrite, image code improvements, many random hacks and bugfixes. 1820pty/utmp code rewrite, image code improvements, many random hacks and bugfixes.
1744 1821
1745=back 1822=back
1746 1823

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines