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.219 by root, Thu Jun 7 16:06:23 2012 UTC vs.
Revision 1.257 by root, Mon Nov 22 17:01:05 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
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> 111=item B<-visual> I<visualID>
112 112
113Compile I<frills>: Use the given visual (see e.g. C<xdpyinfo> for possible 113Compile I<frills>: Use the given visual (see e.g. C<xdpyinfo> for
114visual ids). 114possible visual ids) instead of the default, and also allocate a private
115colormap. All visual types except for DirectColor are supported.
115 116
116=item B<-geometry> I<geom> 117=item B<-geometry> I<geom>
117 118
118Window geometry (B<-g> still respected); resource B<geometry>. 119Window geometry (B<-g> still respected); resource B<geometry>.
119 120
126Turn 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>.
127 128
128=item B<-ss>|B<+ss> 129=item B<-ss>|B<+ss>
129 130
130Turn 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>.
131
132=item B<-tr>|B<+tr>
133
134Turn on/off pseudo-transparency by using the root pixmap as background; resource B<transparent>.
135
136B<-ip> is still accepted as an obsolete alias but will be removed in
137future versions.
138 132
139=item B<-fade> I<number> 133=item B<-fade> I<number>
140 134
141Fade 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
142fade a little only, 100 completely replaces all colours by the fade 136fade a little only, 100 completely replaces all colours by the fade
145=item B<-fadecolor> I<colour> 139=item B<-fadecolor> I<colour>
146 140
147Fade 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
148is opaque black. resource B<fadeColor>. 142is opaque black. resource B<fadeColor>.
149 143
150=item B<-tint> I<colour>
151
152Tint the transparent background with the given colour;
153resource I<tintColor>.
154
155=item B<-sh> I<number>
156
157Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
158A value of 100 means no shading; resource I<shading>.
159
160=item B<-blr> I<HxV>
161
162Apply Gaussian Blur with the specified radii to the transparent
163background. If a single number is specified, the vertical and
164horizontal radii are considered to be the same. Setting one of the
165radii to 1 and the other to a large number creates interesting effects
166on some backgrounds. The maximum radius value is 128. An horizontal or
167vertical radius of 0 disables blurring;
168resource I<blurRadius>.
169
170=item B<-icon> I<file> 144=item B<-icon> I<file>
171 145
172Compile I<pixbuf>: Use the specified image as application icon. This 146Compile I<pixbuf>: Use the specified image as application icon. This
173is used by many window managers, taskbars and pagers to represent the 147is used by many window managers, taskbars and pagers to represent the
174application window; resource I<iconFile>. 148application window; resource I<iconFile>.
178Window background colour; resource B<background>. 152Window background colour; resource B<background>.
179 153
180=item B<-fg> I<colour> 154=item B<-fg> I<colour>
181 155
182Window foreground colour; resource B<foreground>. 156Window foreground colour; resource B<foreground>.
183
184=item B<-pixmap> I<file[;oplist]>
185
186Compile I<pixbuf>: Specify image file for the background and also
187optionally specify a list of operations to modify it. Note you may need to
188add quotes to avoid special shell interpretation of the C<;> in the
189command-line; for more details see resource B<backgroundPixmap>.
190 157
191=item B<-cr> I<colour> 158=item B<-cr> I<colour>
192 159
193The cursor colour; resource B<cursorColor>. 160The cursor colour; resource B<cursorColor>.
194 161
253 220
254=item B<-ls>|B<+ls> 221=item B<-ls>|B<+ls>
255 222
256Start as a login-shell/sub-shell; resource B<loginShell>. 223Start as a login-shell/sub-shell; resource B<loginShell>.
257 224
225=item B<-mc> I<milliseconds>
226
227Specify the maximum time between multi-click selections.
228
258=item B<-ut>|B<+ut> 229=item B<-ut>|B<+ut>
259 230
260Compile I<utmp>: Inhibit/enable writing a utmp entry; resource 231Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
261B<utmpInhibit>. 232B<utmpInhibit>.
262 233
340 311
341=item B<-override-redirect> 312=item B<-override-redirect>
342 313
343Compile I<frills>: Sets override-redirect on the window; resource 314Compile I<frills>: Sets override-redirect on the window; resource
344B<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.
345 321
346=item B<-sbg> 322=item B<-sbg>
347 323
348Compile 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
349drawing characters and just rely on what the specified fonts provide. Use 325drawing characters and just rely on what the specified fonts provide. Use
404=item B<-pt> I<style> 380=item B<-pt> I<style>
405 381
406Compile I<XIM>: input style for input method; B<OverTheSpot>, 382Compile I<XIM>: input style for input method; B<OverTheSpot>,
407B<OffTheSpot>, B<Root>; resource B<preeditType>. 383B<OffTheSpot>, B<Root>; resource B<preeditType>.
408 384
385If the perl extension C<xim-onthespot> is used (which is the default),
386then additionally the C<OnTheSpot> preedit type is available.
387
409=item B<-im> I<text> 388=item B<-im> I<text>
410 389
411Compile I<XIM>: input method name. resource B<inputMethod>. 390Compile I<XIM>: input method name. resource B<inputMethod>.
412 391
413=item B<-imlocale> I<string> 392=item B<-imlocale> I<string>
427Change the meaning of triple-click selection with the left mouse 406Change the meaning of triple-click selection with the left mouse
428button. Only effective when the original (non-perl) selection code is 407button. Only effective when the original (non-perl) selection code is
429in-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
430the end of the logical line only. resource B<tripleclickwords>. 409the end of the logical line only. resource B<tripleclickwords>.
431 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
432=item B<-insecure> 421=item B<-insecure>
433 422
434Enable "insecure" mode, which currently enables most of the escape 423Enable "insecure" mode, which currently enables most of the escape
435sequences that echo strings. See the resource B<insecure> for more 424sequences that echo strings. See the resource B<insecure> for more
436info. 425info.
448 437
449=item B<-ssr>|B<+ssr> 438=item B<-ssr>|B<+ssr>
450 439
451Turn on/off secondary screen scroll (default enabled); resource 440Turn on/off secondary screen scroll (default enabled); resource
452B<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>.
453 450
454=item B<-hold>|B<+hold> 451=item B<-hold>|B<+hold>
455 452
456Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@ 453Turn on/off hold window after exit support. If enabled, @@RXVT_NAME@@
457will not immediately destroy its window when the program executed within 454will not immediately destroy its window when the program executed within
535 close $pty; 532 close $pty;
536 533
537 # now communicate with rxvt 534 # now communicate with rxvt
538 my $slave = $pty->slave; 535 my $slave = $pty->slave;
539 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 "Not so secret anymore: $secret\n";
540 554
541=item B<-pe> I<string> 555=item B<-pe> I<string>
542 556
543Comma-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
544this terminal instance. See resource B<perl-ext> for details. 558this terminal instance. See resource B<perl-ext> for details.
572be used. Command-line arguments can be used to override resource 586be used. Command-line arguments can be used to override resource
573settings. The following resources are supported (you might want to 587settings. The following resources are supported (you might want to
574check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl 588check the @@RXVT_NAME@@perl(3) manpage for additional settings by perl
575extensions not documented here): 589extensions not documented here):
576 590
577=over 4 591=over
578 592
579=item B<depth:> I<bitdepth> 593=item B<depth:> I<bitdepth>
580 594
581Compile 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;
582option B<-depth>. 596option B<-depth>.
683 697
684B<False>: specify that everything is to be displayed, even 698B<False>: specify that everything is to be displayed, even
685if 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
686monitor to display anything); option B<+ss>. 700monitor to display anything); option B<+ss>.
687 701
688=item B<transparent:> I<boolean>
689
690Turn on/off pseudo-transparency by using the root pixmap as background.
691
692B<inheritPixmap> is still accepted as an obsolete alias but will be removed in
693future versions.
694
695=item B<fading:> I<number> 702=item B<fading:> I<number>
696 703
697Fade 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>.
698 705
699=item B<fadeColor:> I<colour> 706=item B<fadeColor:> I<colour>
700 707
701Fade 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
702colour is black; option B<-fadecolor>. 709colour is black; option B<-fadecolor>.
703 710
704=item B<tintColor:> I<colour>
705
706Tint the transparent background with the given colour. If the RENDER
707extension is not available only black, red, green, yellow, blue,
708magenta, cyan and white tints can be performed server-side. Note that
709a black tint yields a completely black image while a white tint yields
710the image unchanged; option B<-tint>.
711
712=item B<shading:> I<number>
713
714Darken (0 .. 99) or lighten (101 .. 200) the transparent background.
715A value of 100 means no shading; option B<-sh>.
716
717=item B<blurRadius:> I<number>
718
719Apply gaussian blur with the specified radius to the transparent
720background; option B<-blr>.
721
722=item B<iconFile:> I<file> 711=item B<iconFile:> I<file>
723 712
724Set the application icon pixmap; option B<-icon>. 713Set the application icon pixmap; option B<-icon>.
725 714
726=item B<scrollColor:> I<colour> 715=item B<scrollColor:> I<colour>
734 723
735=item B<borderColor:> I<colour> 724=item B<borderColor:> I<colour>
736 725
737The 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
738and the text. 727and the text.
739
740=item B<backgroundPixmap:> I<file[;oplist]>
741
742Use the specified image file for the background and also
743optionally specify a colon separated list of operations to modify it.
744Supported operations are:
745
746=over 4
747
748=item B<WxH+X+Y>
749
750sets scale and position. B<"W" / "H"> specify the horizontal/vertical
751scale (percent), and B<"X" / "Y"> locate the image centre (percent). A
752scale of 0 disables scaling.
753
754=item B<op=tile>
755
756enables tiling
757
758=item B<op=keep-aspect>
759
760maintain the image aspect ratio when scaling
761
762=item B<op=root-align>
763
764use the position of the terminal window relative to the root window as
765the image offset, simulating a root window background
766
767=back
768
769The default scale and position setting is C<100x100+50+50>.
770Alternatively, a predefined set of templates can be used to achieve
771the most common setups:
772
773=over 4
774
775=item B<style=tiled>
776
777the image is tiled with no scaling. Equivalent to 0x0+0+0:op=tile
778
779=item B<style=aspect-stretched>
780
781the image is scaled to fill the whole window maintaining the aspect
782ratio and centered. Equivalent to 100x100+50+50:op=keep-aspect
783
784=item B<style=stretched>
785
786the image is scaled to fill the whole window. Equivalent to 100x100
787
788=item B<style=centered>
789
790the image is centered with no scaling. Equivalent to 0x0+50+50
791
792=item B<style=root-tiled>
793
794the image is tiled with no scaling and using 'root' positioning.
795Equivalent to 0x0:op=tile:op=root-align
796
797=back
798
799If multiple templates are specified the last one wins. Note that a
800template overrides all the scale, position and operations settings.
801
802If used in conjunction with B<-tr> option, the specified pixmap will be
803blended over the transparent background using alpha-blending.
804
805=item B<path:> I<path>
806
807Specify the colon-delimited search path for finding background image files.
808 728
809=item B<font:> I<fontlist> 729=item B<font:> I<fontlist>
810 730
811Select 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
812that 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
909 829
910B<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
911the 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
912[default]; option B<+ls>. 832[default]; option B<+ls>.
913 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
914=item B<utmpInhibit:> I<boolean> 839=item B<utmpInhibit:> I<boolean>
915 840
916B<True>: inhibit writing record into the system log file B<utmp>; 841B<True>: inhibit writing record into the system log file B<utmp>;
917option 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>
918[default]; option B<+ut>. 843[default]; option B<+ut>.
981are 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
982bottom when a non-special key is pressed; option B<+sk>. 907bottom when a non-special key is pressed; option B<+sk>.
983 908
984=item B<saveLines:> I<number> 909=item B<saveLines:> I<number>
985 910
986Save I<number> lines in the scrollback buffer [default 64]. This 911Save I<number> lines in the scrollback buffer [default 1000]; option B<-sl>.
987resource is limited on most machines to 65535; option B<-sl>.
988 912
989=item B<internalBorder:> I<number> 913=item B<internalBorder:> I<number>
990 914
991Internal border of I<number> pixels. This resource is limited to 100; 915Internal border of I<number> pixels. This resource is limited to 100;
992option B<-b>. 916option B<-b>.
1055 979
1056=item B<pointerColor2:> I<colour> 980=item B<pointerColor2:> I<colour>
1057 981
1058Mouse pointer background colour. 982Mouse pointer background colour.
1059 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
1060=item B<pointerBlankDelay:> I<number> 990=item B<pointerBlankDelay:> I<number>
1061 991
1062Specifies number of seconds before blanking the pointer [default 2]. Use a 992Specifies number of seconds before blanking the pointer [default 2]. Use a
1063large number (e.g. C<987654321>) to effectively disable the timeout. 993large number (e.g. C<987654321>) to effectively disable the timeout.
1064 994
1090 1020
1091B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >> 1021B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
1092 1022
1093=item B<preeditType:> I<style> 1023=item B<preeditType:> I<style>
1094 1024
1095B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 1025B<OnTheSpot>, B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
1096 1026
1097=item B<inputMethod:> I<name> 1027=item B<inputMethod:> I<name>
1098 1028
1099I<name> of inputMethod to use; option B<-im>. 1029I<name> of inputMethod to use; option B<-im>.
1100 1030
1118 1048
1119Change the meaning of triple-click selection with the left mouse 1049Change the meaning of triple-click selection with the left mouse
1120button. 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
1121the end of the logical line only; option B<-tcw>. 1051the end of the logical line only; option B<-tcw>.
1122 1052
1053=item B<disablePasteBrackets:> I<boolean>
1054
1055Prevent emission of paste bracket sequences; option B<-dpb>.
1056
1123=item B<insecure:> I<boolean> 1057=item B<insecure:> I<boolean>
1124 1058
1125Enables "insecure" mode. Rxvt-unicode offers some escape sequences that 1059Enable "insecure" mode. Rxvt-unicode offers some escape sequences that
1126echo 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
1127abused if somebody gets 8-bit-clean access to your display, whether 1061abused if somebody gets 8-bit-clean access to your display, whether
1128through a mail client displaying mail bodies unfiltered or through 1062through a mail client displaying mail bodies unfiltered or through
1129write(1) or any other means. Therefore, these sequences are disabled by 1063write(1) or any other means. Therefore, these sequences are disabled by
1130default. (Note that many other terminals, including xterm, have these 1064default. (Note that many other terminals, including xterm, have these
1148 1082
1149=item B<secondaryScreen:> I<boolean> 1083=item B<secondaryScreen:> I<boolean>
1150 1084
1151Turn on/off secondary screen (default enabled). 1085Turn on/off secondary screen (default enabled).
1152 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
1153=item B<secondaryScroll:> I<boolean> 1092=item B<secondaryScroll:> I<boolean>
1154 1093
1155Turn on/off secondary screen scroll (default enabled). If this 1094Turn on/off secondary screen scroll (default enabled). If this
1156option is enabled, scrolls on the secondary screen will change the 1095option is enabled, scrolls on the secondary screen will change the
1157scrollback buffer and, when secondaryScreen is off, switching 1096scrollback buffer and, when secondaryScreen is off, switching
1169Sets the working directory for the shell (or the command specified via 1108Sets the working directory for the shell (or the command specified via
1170B<-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
1171@@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
1172directory will be used; option B<-cd>. 1111directory will be used; option B<-cd>.
1173 1112
1174=item B<keysym.>I<sym>: I<string> 1113=item B<keysym.>I<sym>: I<action>
1175 1114
1176Compile I<frills>: Associate I<string> with keysym I<sym>. The 1115Compile I<frills>: Associate I<action> with keysym I<sym>. The intervening
1177intervening resource name B<keysym.> cannot be omitted. 1116resource name B<keysym.> cannot be omitted.
1178 1117
1179The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be 1118Using this resource, you can map key combinations such as
1180any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>, 1119C<Ctrl-Shift-BackSpace> to various actions, such as outputting a different
1181B<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
1182and 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
1183B<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
1184 1147
1185The 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
1186whatever 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
1187keys 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
1188current application keymap mode state. 1151current application keymap mode state.
1189 1152
1190The 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
1191searching 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
1192omitting 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
1193keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not 1165value (B<0x0000 - 0xFFFF>).
1194performed in an exact manner; however, the closest match is assured.
1195 1166
1196I<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
1197number), see RESOURCES in C<man 7 X> for further details. 1169number), see RESOURCES in C<man 7 X> for further details.
1198 1170
1199You can define a range of keysyms in one shot by 1171An action starts with an action prefix that selects a certain type
1200loading the C<keysym-list> perl extension and providing a I<string> 1172of action, followed by a colon. An action string without colons is
1201with 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
1202should be a character not used by the strings. 1195the delimiter `/' should be a character not used by the strings.
1203 1196
1204Its usage can be demonstrated by an example: 1197Its usage can be demonstrated by an example:
1205 1198
1206 URxvt.keysym.M-C-0x61: list|\033<|abc|> 1199 URxvt.keysym.M-C-0x61: list|\033<|abc|>
1207 1200
1208The above line is equivalent to the following three lines: 1201The above line is equivalent to the following three lines:
1209 1202
1210 URxvt.keysym.Meta-Control-0x61: \033<a> 1203 URxvt.keysym.Meta-Control-0x61: string:\033<a>
1211 URxvt.keysym.Meta-Control-0x62: \033<b> 1204 URxvt.keysym.Meta-Control-0x62: string:\033<b>
1212 URxvt.keysym.Meta-Control-0x63: \033<c> 1205 URxvt.keysym.Meta-Control-0x63: string:\033<c>
1213 1206
1207=item command:STRING
1208
1214If 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>
1215is 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
1216example 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>
1217when Control-Meta-c is being pressed": 1216when Control-Meta-c is being pressed":
1218 1217
1219 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
1220 1219
1221If 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
1222is 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
1223manpage. For example, the F<selection> extension (activated via 1222font-switching at runtime:
1224C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1225 1223
1226 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
1227 1226
1228Due the the large number of modifier combinations, a defined key mapping 1227Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1229will match if I<at least> the specified identifiers are being set, and 1228info):
1230no other key mappings with those and more bits are being defined. That
1231means that defining a key map for C<a> will automatically provide
1232definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1233mappings themselves.
1234 1229
1235Unfortunately, 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
1236if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s 1240For example if you overwrite the C<Insert> key you will disable
1237C<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
1238user-defined keymap using the C<builtin:> replacement: 1242"holes" into the user-defined keymap using the C<builtin:> replacement:
1239 1243
1240 URxvt.keysym.Insert: <my insert key sequence> 1244 URxvt.keysym.Insert: <my insert key sequence>
1241 URxvt.keysym.S-Insert: builtin: 1245 URxvt.keysym.S-Insert: builtin:
1242 1246
1243The 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
1244of modifiers. The second line re-establishes the default mapping for 1248of modifiers. The second line re-establishes the default mapping for
1245C<Shift-Insert>. 1249C<Shift-Insert>.
1246 1250
1247The following example will map Control-Meta-1 and Control-Meta-2 to 1251=item builtin-string:
1248the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1249font-switching at runtime:
1250 1252
1251 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007 1253This action is mainly useful to restore string mappings for keys that
1252 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.
1253 1258
1254Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more 1259An example might make it clearer: @@RXVT_NAME@@ normally pastes the
1255info): 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:
1256 1263
1257 URxvt.keysym.M-C-3: command:\033[8;25;80t 1264 URxvt.keysym.S-Insert: builtin-string:
1258 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
1259 1301
1260=item B<perl-ext-common>: I<string> 1302=item B<perl-ext-common>: I<string>
1261 1303
1262=item B<perl-ext>: I<string> 1304=item B<perl-ext>: I<string>
1263 1305
1264Comma-separated list(s) of perl extension scripts (default: C<default>) to 1306Comma-separated list(s) of perl extension scripts (default: C<default>) to
1265use in this terminal instance; option B<-pe>. 1307use in this terminal instance; option B<-pe>.
1266 1308
1267Extension 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
1268them. This can be useful to selectively disable some extensions loaded 1310case they had been specified earlier. This can be useful to selectively
1269by default, or specified via the C<perl-ext-common> resource. For 1311disable some extensions loaded by default, or specified via the
1270example, C<default,-selection> will use all the default extension except 1312C<perl-ext-common> resource. For example, C<default,-selection> will use
1271C<selection>. 1313all the default extensions except C<selection>.
1272 1314
1273Extension names can also be followed by an argument in angle brackets 1315To prohibit autoloading of extensions, you can prefix them with C</>,
1274(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for 1316which will make urxvt refuse to automatically load them (this can be
1275searchable scrollback to Alt/Meta-s). Mentioning the same extension 1317overriden, however, by specifying the extension name again without a
1276multiple times with different arguments will pass multiple arguments to 1318prefix, though). This does not prohibit extensions themselves loading
1277the 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>.
1278 1330
1279Each extension is looked up in the library directories, loaded if 1331Each extension is looked up in the library directories, loaded if
1280necessary, 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.
1281 1335
1282If both of these resources are the empty string, then the perl 1336If both of these resources are the empty string, then the perl interpreter
1283interpreter will not be initialized. The idea behind two options is that 1337will not be initialized. The rationale for having two options is that
1284B<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
1285all instances, while B<perl-ext> is used for specific instances. 1339all instances, while B<perl-ext> is used for specific instances.
1286 1340
1287=item B<perl-eval>: I<string> 1341=item B<perl-eval>: I<string>
1288 1342
1306=item B<< selection-autotransform.I<idx> >>: I<perl-transform> 1360=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1307 1361
1308Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage 1362Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1309for details. 1363for details.
1310 1364
1311=item B<searchable-scrollback:> I<keysym> 1365=item B<searchable-scrollback:> I<keysym> *DEPRECATED*
1312 1366
1313Sets the hotkey that starts the incremental scrollback buffer search 1367This resource is deprecated and will be removed. Use a B<keysym> resource
1314(default: C<M-s>). 1368instead, e.g.:
1315 1369
1370 URxvt.keysym.M-s: searchable-scrollback:start
1371
1316=item B<urlLauncher>: I<string> 1372=item B<url-launcher>: I<string>
1317 1373
1318Specifies 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
1319C<selection-popup> and C<matcher> perl extensions. 1375C<selection-popup> and C<matcher> perl extensions.
1320 1376
1321=item B<transient-for>: I<windowid> 1377=item B<transient-for>: I<windowid>
1365=head1 THE SELECTION: SELECTING AND PASTING TEXT 1421=head1 THE SELECTION: SELECTING AND PASTING TEXT
1366 1422
1367The behaviour of text selection and insertion/pasting mechanism is similar 1423The behaviour of text selection and insertion/pasting mechanism is similar
1368to I<xterm>(1). 1424to I<xterm>(1).
1369 1425
1370=over 4 1426=over
1371 1427
1372=item B<Selecting>: 1428=item B<Selecting>:
1373 1429
1374Left 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
1375and release; Right click to extend the marked region; Left double-click 1431and release; Right click to extend the marked region; Left double-click
1390B<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.
1391 1447
1392Pressing 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
1393inserted too. 1449inserted too.
1394 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
1395=back 1457=back
1396 1458
1397=head1 CHANGING FONTS 1459=head1 CHANGING FONTS
1398 1460
1399Changing fonts (or font sizes, respectively) via the keypad is not yet 1461Changing fonts (or font sizes, respectively) via the keypad is not yet
1416and character codes using the keyboard. It consists of 4 parts. The 1478and character codes using the keyboard. It consists of 4 parts. The
1417first part is available if rxvt-unicode has been compiled with 1479first part is available if rxvt-unicode has been compiled with
1418C<--enable-frills>, the rest is available when rxvt-unicode was compiled 1480C<--enable-frills>, the rest is available when rxvt-unicode was compiled
1419with C<--enable-iso14755>. 1481with C<--enable-iso14755>.
1420 1482
1421=over 4 1483=over
1422 1484
1423=item * 5.1: Basic method 1485=item * 5.1: Basic method
1424 1486
1425This allows you to enter unicode characters using their hexcode. 1487This allows you to enter unicode characters using their hexcode.
1426 1488
1487In addition to the default foreground and background colours, 1549In addition to the default foreground and background colours,
1488B<@@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
1489high-intensity (potentially bold/blink) versions of the same, and 72 (or 1551high-intensity (potentially bold/blink) versions of the same, and 72 (or
1490240 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
1491cube 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.
1492 1563
1493Here is a list of the ANSI colours with their names. 1564Here is a list of the ANSI colours with their names.
1494 1565
1495=begin table 1566=begin table
1496 1567
1523The following text gives values for the standard 88 colour mode (and 1594The following text gives values for the standard 88 colour mode (and
1524values for the 256 colour mode in parentheses). 1595values for the 256 colour mode in parentheses).
1525 1596
1526The 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:
1527 1598
1528 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
1529 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
1530 1601
1531The 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%
1532steps (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
1533the RGB cube. 1604the RGB cube.
1534 1605
1597 1668
1598=head1 ENVIRONMENT 1669=head1 ENVIRONMENT
1599 1670
1600B<@@RXVT_NAME@@> sets and/or uses the following environment variables: 1671B<@@RXVT_NAME@@> sets and/or uses the following environment variables:
1601 1672
1602=over 4 1673=over
1603 1674
1604=item B<TERM> 1675=item B<TERM>
1605 1676
1606Normally set to C<rxvt-unicode>, unless overwritten at configure time, via 1677Normally set to C<rxvt-unicode>, unless overwritten at configure time, via
1607resources or on the command line. 1678resources or on the command line.
1678 1749
1679=back 1750=back
1680 1751
1681=head1 FILES 1752=head1 FILES
1682 1753
1683=over 4 1754=over
1684 1755
1685=item B</usr/lib/X11/rgb.txt> 1756=item B</usr/lib/X11/rgb.txt>
1686 1757
1687Colour names. 1758Colour names.
1688 1759
1689=back 1760=back
1690 1761
1691=head1 SEE ALSO 1762=head1 SEE ALSO
1692 1763
1693@@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)
1694 1766
1695=head1 CURRENT PROJECT COORDINATOR 1767=head1 CURRENT PROJECT COORDINATOR
1696 1768
1697=over 4 1769=over
1698 1770
1699=item Project Coordinator 1771=item Project Coordinator
1700 1772
1701Marc A. Lehmann L<< <rxvt-unicode@schmorp.de> >> 1773Marc A. Lehmann <rxvt-unicode@schmorp.de>.
1702 1774
1703L<http://software.schmorp.de/pkg/rxvt-unicode.html> 1775L<http://software.schmorp.de/pkg/rxvt-unicode.html>
1704 1776
1705=back 1777=back
1706 1778
1707=head1 AUTHORS 1779=head1 AUTHORS
1708 1780
1709=over 4 1781=over
1710 1782
1711=item John Bovey 1783=item John Bovey
1712 1784
1713University of Kent, 1992, wrote the original Xvt. 1785University of Kent, 1992, wrote the original Xvt.
1714 1786
1715=item Rob Nation L<< <nation@rocket.sanders.lockheed.com> >> 1787=item Rob Nation <nation@rocket.sanders.lockheed.com>
1716 1788
1717very heavily modified Xvt and came up with Rxvt 1789very heavily modified Xvt and came up with Rxvt
1718 1790
1719=item Angelo Haritsis L<< <ah@doc.ic.ac.uk> >> 1791=item Angelo Haritsis <ah@doc.ic.ac.uk>
1720 1792
1721wrote the Greek Keyboard Input (no longer in code) 1793wrote the Greek Keyboard Input (no longer in code)
1722 1794
1723=item mj olesen L<< <olesen@me.QueensU.CA> >> 1795=item mj olesen <olesen@me.QueensU.CA>
1724 1796
1725Wrote the menu system. 1797Wrote the menu system.
1726 1798
1727Project Coordinator (changes.txt 2.11 to 2.21) 1799Project Coordinator (changes.txt 2.11 to 2.21)
1728 1800
1729=item Oezguer Kesim L<< <kesim@math.fu-berlin.de> >> 1801=item Oezguer Kesim <kesim@math.fu-berlin.de>
1730 1802
1731Project Coordinator (changes.txt 2.21a to 2.4.5) 1803Project Coordinator (changes.txt 2.21a to 2.4.5)
1732 1804
1733=item Geoff Wing L<< <gcw@pobox.com> >> 1805=item Geoff Wing <gcw@pobox.com>
1734 1806
1735Rewrote screen display and text selection routines. 1807Rewrote screen display and text selection routines.
1736 1808
1737Project Coordinator (changes.txt 2.4.6 - rxvt-unicode) 1809Project Coordinator (changes.txt 2.4.6 - rxvt-unicode)
1738 1810
1739=item Marc Alexander Lehmann L<< <rxvt-unicode@schmorp.de> >> 1811=item Marc Alexander Lehmann <rxvt-unicode@schmorp.de>
1740 1812
1741Forked rxvt-unicode, unicode support, rewrote almost all the code, perl 1813Forked rxvt-unicode, unicode support, rewrote almost all the code, perl
1742extension, random hacks, numerous bugfixes and extensions. 1814extension, random hacks, numerous bugfixes and extensions.
1743 1815
1744Project Coordinator (Changes 1.0 -) 1816Project Coordinator (Changes 1.0 -)
1745 1817
1746=item Emanuele Giaquinta L<< <e.giaquinta@glauco.it> >> 1818=item Emanuele Giaquinta <emanuele.giaquinta@gmail.com>
1747 1819
1748pty/utmp code rewrite, image code improvements, many random hacks and bugfixes. 1820pty/utmp code rewrite, image code improvements, many random hacks and bugfixes.
1749 1821
1750=back 1822=back
1751 1823

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines