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.225 by sf-exg, Wed Jun 5 07:58:17 2013 UTC vs.
Revision 1.236 by sf-exg, Sat Aug 16 10:51:23 2014 UTC

219 219
220=item B<-ls>|B<+ls> 220=item B<-ls>|B<+ls>
221 221
222Start as a login-shell/sub-shell; resource B<loginShell>. 222Start as a login-shell/sub-shell; resource B<loginShell>.
223 223
224=item B<-mc> I<milliseconds>
225
226Specify the maximum time between multi-click selections.
227
224=item B<-ut>|B<+ut> 228=item B<-ut>|B<+ut>
225 229
226Compile I<utmp>: Inhibit/enable writing a utmp entry; resource 230Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
227B<utmpInhibit>. 231B<utmpInhibit>.
228 232
306 310
307=item B<-override-redirect> 311=item B<-override-redirect>
308 312
309Compile I<frills>: Sets override-redirect on the window; resource 313Compile I<frills>: Sets override-redirect on the window; resource
310B<override-redirect>. 314B<override-redirect>.
315
316=item B<-dockapp>
317
318Sets the initial state of the window to WithdrawnState, which makes
319window managers that support this extension treat it as a dockapp.
311 320
312=item B<-sbg> 321=item B<-sbg>
313 322
314Compile I<frills>: Disable the usage of the built-in block graphics/line 323Compile I<frills>: Disable the usage of the built-in block graphics/line
315drawing characters and just rely on what the specified fonts provide. Use 324drawing characters and just rely on what the specified fonts provide. Use
781 790
782B<True>: start as a login shell by prepending a `-' to B<argv[0]> of 791B<True>: start as a login shell by prepending a `-' to B<argv[0]> of
783the shell; option B<-ls>. B<False>: start as a normal sub-shell 792the shell; option B<-ls>. B<False>: start as a normal sub-shell
784[default]; option B<+ls>. 793[default]; option B<+ls>.
785 794
795=item B<multiClickTime:> I<number>
796
797Specify the maximum time in milliseconds between multi-click select
798events. The default is 500 milliseconds; option B<-mc>.
799
786=item B<utmpInhibit:> I<boolean> 800=item B<utmpInhibit:> I<boolean>
787 801
788B<True>: inhibit writing record into the system log file B<utmp>; 802B<True>: inhibit writing record into the system log file B<utmp>;
789option B<-ut>. B<False>: write record into the system log file B<utmp> 803option B<-ut>. B<False>: write record into the system log file B<utmp>
790[default]; option B<+ut>. 804[default]; option B<+ut>.
1041Sets the working directory for the shell (or the command specified via 1055Sets the working directory for the shell (or the command specified via
1042B<-e>). The I<path> must be an absolute path and it must exist for 1056B<-e>). The I<path> must be an absolute path and it must exist for
1043@@RXVT_NAME@@ to start. If it isn't specified then the current working 1057@@RXVT_NAME@@ to start. If it isn't specified then the current working
1044directory will be used; option B<-cd>. 1058directory will be used; option B<-cd>.
1045 1059
1046=item B<keysym.>I<sym>: I<string> 1060=item B<keysym.>I<sym>: I<action>
1047 1061
1048Compile I<frills>: Associate I<string> with keysym I<sym>. The 1062Compile I<frills>: Associate I<action> with keysym I<sym>. The intervening
1049intervening resource name B<keysym.> cannot be omitted. 1063resource name B<keysym.> cannot be omitted.
1050 1064
1051The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be 1065Using this resource, you can map key combinations such as
1052any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>, 1066C<Ctrl-Shift-BackSpace> to various actions, such as outputting a different
1053B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>, B<Mod3>, B<Mod4>, B<Mod5>, 1067string than would normally result from that combination, making the
1054and the abbreviated B<I>, B<K>, B<C>, B<N>, B<S>, B<M>, B<A>, B<L>, B<1>, 1068terminal scroll up or down the way you want it, or any other thing an
1055B<2>, B<3>, B<4>, B<5>. 1069extension might provide.
1070
1071The key combination that triggers the action, I<sym>, has the following format:
1072
1073 (modifiers-)key
1074
1075Where I<modifiers> can be any combination of B<ISOLevel3>, B<AppKeypad>,
1076B<Control>, B<NumLock>, B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>,
1077B<Mod3>, B<Mod4>, B<Mod5>, and the abbreviated B<I>, B<K>, B<C>, B<N>,
1078B<S>, B<M>, B<A>, B<L>, B<1>, B<2>, B<3>, B<4>, B<5>.
1056 1079
1057The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to 1080The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to
1058whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr 1081whatever modifier the NumLock key, Meta/Alt keys or ISO Level3 Shift/AltGr
1059keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the 1082keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1060current application keymap mode state. 1083current application keymap mode state.
1061 1084
1062The spellings of I<key> can be obtained by using B<xev>(1) command or 1085Due the the large number of modifier combinations, a key mapping will
1063searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and 1086match if I<at least> the specified identifiers are being set, and no other
1087key mappings with those and more bits are being defined. That means that
1088defining a mapping for C<a> will automatically provide definitions for
1089C<Meta-a>, C<Shift-a> and so on, unless some of those are defined mappings
1090themselves. See the C<builtin:> action, below, for a way to work around
1091this when this is a problem.
1092
1093The spelling of I<key> depends on your implementation of X. An easy way to
1094find a key name is to use the B<xev>(1) command. You can find a list by
1095looking for the C<XK_> macros in the B<X11/keysymdef.h> include file (omit
1064omitting the prefix B<XK_>. Alternatively you can specify I<key> by its hex 1096the C<XK_> prefix). Alternatively you can specify I<key> by its hex keysym
1065keysym value (B<0x0000 - 0xFFFF>). Note that the lookup of I<sym>s is not 1097value (B<0x0000 - 0xFFFF>).
1066performed in an exact manner; however, the closest match is assured.
1067 1098
1068I<string> may contain escape values (C<\n>: newline, C<\000>: octal 1099As with any resource value, the I<action> string may contain backslash
1100escape sequences (C<\n>: newline, C<\\>: backslash, C<\000>: octal
1069number), see RESOURCES in C<man 7 X> for further details. 1101number), see RESOURCES in C<man 7 X> for further details.
1070 1102
1071You can define a range of keysyms in one shot by 1103An action starts with an action prefix that selects a certain type
1072loading the C<keysym-list> perl extension and providing a I<string> 1104of action, followed by a colon. An action string without colons is
1073with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/' 1105interpreted as a literal string to pass to the tty (as if it was
1074should be a character not used by the strings. 1106prefixed with C<string:>).
1075 1107
1076Its usage can be demonstrated by an example: 1108The following action prefixes are known - extensions can provide
1109additional prefixes:
1077 1110
1078 URxvt.keysym.M-C-0x61: list|\033<|abc|> 1111=over 4
1079 1112
1080The above line is equivalent to the following three lines: 1113=item string:STRING
1081 1114
1082 URxvt.keysym.Meta-Control-0x61: \033<a> 1115If the I<action> starts with C<string:> (or otherwise contains no colons),
1083 URxvt.keysym.Meta-Control-0x62: \033<b> 1116then the remaining C<STRING> will be passed to the program running in the
1084 URxvt.keysym.Meta-Control-0x63: \033<c> 1117terminal. For example, you could replace whatever Shift-Tab outputs by the
1118string C<echo rm -rf /> followed by a newline:
1085 1119
1120 URxvt.keysym.Shift-Tab: string:echo rm -rf /\n
1121
1122This could in theory be used to completely redefine your keymap.
1123
1124=item command:STRING
1125
1086If I<string> takes the form of C<command:STRING>, the specified B<STRING> 1126If I<action> takes the form of C<command:STRING>, the specified B<STRING>
1087is interpreted and executed as @@RXVT_NAME@@'s control sequence. For 1127is interpreted and executed as @@RXVT_NAME@@'s control sequence (basically
1128the opposite of C<string:> - instead of sending it to the program running
1129in the terminal, it will be treated as if it were program output). This is
1130most useful to feed command sequences into @@RXVT_NAME@@.
1131
1088example the following means "change the current locale to C<zh_CN.GBK> 1132For example the following means "change the current locale to C<zh_CN.GBK>
1089when Control-Meta-c is being pressed": 1133when Control-Meta-c is being pressed":
1090 1134
1091 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 1135 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1092 1136
1093If I<string> takes the form C<perl:STRING>, then the specified B<STRING> 1137The following example will map Control-Meta-1 and Control-Meta-2 to
1094is passed to the C<on_user_command> perl handler. See the @@RXVT_NAME@@perl(3) 1138the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1095manpage. For example, the F<selection> extension (activated via 1139font-switching at runtime:
1096C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1097 1140
1098 URxvt.keysym.M-C-c: perl:selection:rot13 1141 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1142 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1099 1143
1100Due the the large number of modifier combinations, a defined key mapping 1144Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more
1101will match if I<at least> the specified identifiers are being set, and 1145info):
1102no other key mappings with those and more bits are being defined. That
1103means that defining a key map for C<a> will automatically provide
1104definitions for C<Meta-a>, C<Shift-a> and so on, unless some of those are defined
1105mappings themselves.
1106 1146
1107Unfortunately, this will override built-in key mappings. For example 1147 URxvt.keysym.M-C-3: command:\033[8;25;80t
1148 URxvt.keysym.M-C-4: command:\033[8;48;110t
1149
1150=item builtin:
1151
1152The builtin action is the action that @@RXVT_NAME@@ would execute if no
1153key binding existed for the key combination. The obvious use is to undo
1154the effect of existing bindings. The not so obvious use is to reinstate
1155bindings when another binding overrides too many modifiers.
1156
1108if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s 1157For example if you overwrite the C<Insert> key you will disable
1109C<Shift-Insert> mapping. To re-enable that, you can poke "holes" into the 1158@@RXVT_NAME@@'s C<Shift-Insert> mapping. To re-enable that, you can poke
1110user-defined keymap using the C<builtin:> replacement: 1159"holes" into the user-defined keymap using the C<builtin:> replacement:
1111 1160
1112 URxvt.keysym.Insert: <my insert key sequence> 1161 URxvt.keysym.Insert: <my insert key sequence>
1113 URxvt.keysym.S-Insert: builtin: 1162 URxvt.keysym.S-Insert: builtin:
1114 1163
1115The first line defines a mapping for C<Insert> and I<any> combination 1164The first line defines a mapping for C<Insert> and I<any> combination
1116of modifiers. The second line re-establishes the default mapping for 1165of modifiers. The second line re-establishes the default mapping for
1117C<Shift-Insert>. 1166C<Shift-Insert>.
1118 1167
1119The following example will map Control-Meta-1 and Control-Meta-2 to 1168=item builtin-string:
1120the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1121font-switching at runtime:
1122 1169
1123 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007 1170This action is mainly useful to restore string mappings for keys that
1124 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007 1171have predefined actions in @@RXVT_NAME@@. The exact semantics are a bit
1172difficult to explain - basically, this action will send the string to the
1173application that would be sent if @@RXVT_NAME@@ wouldn't have a built-in
1174action for it.
1125 1175
1126Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more 1176An example might make it clearer: @@RXVT_NAME@@ normally pastes the
1127info): 1177selection when you press C<Shift-Insert>. With the following bindings, it
1178would instead emit the (undocumented, but what applications running in the
1179terminal might expect) sequence C<ESC [ 2 $> instead:
1128 1180
1129 URxvt.keysym.M-C-3: command:\033[8;25;80t 1181 URxvt.keysym.S-Insert: builtin-string:
1130 URxvt.keysym.M-C-4: command:\033[8;48;110t 1182 URxvt.keysym.C-S-Insert: builtin:
1183
1184The first line disables the paste functionality for that key
1185combination, and the second reinstates the default behaviour for
1186C<Control-Shift-Insert>, which would otherwise be overridden.
1187
1188Similarly, to let applications gain access to the C<C-M-c> (copy to
1189clipboard) and C<C-M-v> (paste clipboard) key combination, you can do
1190this:
1191
1192 URxvt.keysym.C-S-c: builtin-string:
1193 URxvt.keysym.C-S-v: builtin-string:
1194
1195=item EXTENSION:STRING
1196
1197An action of this form passes the B<STRING> to the @@RXVT_NAME@@perl(3)
1198extension of the same name. The extension will be loaded automatically if
1199necessary.
1200
1201Not all extensions define key actions, but popular extensions that do
1202include the I<selection> and I<matcher> extensions (documented in their
1203own manpages, @@RXVT_NAME@@-selection(1) and @@RXVT_NAME@@-matcher(1),
1204respectively).
1205
1206From the silly examples department, this will rot13-"encrypt"
1207@@RXVT_NAME@@'s selection when Alt-Control-c is pressed on typical PC
1208keyboards:
1209
1210 URxvt.keysym.M-C-c: selection:rot13
1211
1212=item perl:STRING *DEPRECATED*
1213
1214This is a deprecated way of passing key mappings to perl extensions. It is
1215still supported, but should not be used anymore.
1216
1217=back
1131 1218
1132=item B<perl-ext-common>: I<string> 1219=item B<perl-ext-common>: I<string>
1133 1220
1134=item B<perl-ext>: I<string> 1221=item B<perl-ext>: I<string>
1135 1222
1137use in this terminal instance; option B<-pe>. 1224use in this terminal instance; option B<-pe>.
1138 1225
1139Extension names can be prefixed with a C<-> sign to prohibit using 1226Extension names can be prefixed with a C<-> sign to prohibit using
1140them. This can be useful to selectively disable some extensions loaded 1227them. This can be useful to selectively disable some extensions loaded
1141by default, or specified via the C<perl-ext-common> resource. For 1228by default, or specified via the C<perl-ext-common> resource. For
1142example, C<default,-selection> will use all the default extension except 1229example, C<default,-selection> will use all the default extensions except
1143C<selection>. 1230C<selection>.
1144 1231
1145Extension names can also be followed by an argument in angle brackets 1232The default set includes the C<selection>, C<option-popup>,
1146(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for 1233C<selection-popup> and C<readline> extensions, any extensions that define
1147searchable scrollback to Alt/Meta-s). Mentioning the same extension 1234keybindings via C<BINDING> meta comments, extensions loaded because
1148multiple times with different arguments will pass multiple arguments to 1235their resources/commandline switches were used, and extensions which are
1149the extension. 1236mentioned in B<keysym> resources.
1150 1237
1151Each extension is looked up in the library directories, loaded if 1238Each extension is looked up in the library directories, loaded if
1152necessary, and bound to the current terminal instance. 1239necessary, and bound to the current terminal instance. When the library
1240search path contains multiple extension files of the same name, then the
1241first one found will be used.
1153 1242
1154If both of these resources are the empty string, then the perl 1243If both of these resources are the empty string, then the perl interpreter
1155interpreter will not be initialized. The idea behind two options is that 1244will not be initialized. The rationale for having two options is that
1156B<perl-ext-common> will be used for extensions that should be available to 1245B<perl-ext-common> will be used for extensions that should be available to
1157all instances, while B<perl-ext> is used for specific instances. 1246all instances, while B<perl-ext> is used for specific instances.
1158 1247
1159=item B<perl-eval>: I<string> 1248=item B<perl-eval>: I<string>
1160 1249
1178=item B<< selection-autotransform.I<idx> >>: I<perl-transform> 1267=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1179 1268
1180Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage 1269Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1181for details. 1270for details.
1182 1271
1183=item B<searchable-scrollback:> I<keysym> 1272=item B<searchable-scrollback:> I<keysym> *DEPRECATED*
1184 1273
1185Sets the hotkey that starts the incremental scrollback buffer search 1274This resource is deprecated and will be removed. Use a B<keysym> resource
1186(default: C<M-s>). 1275instead, e.g.:
1276
1277 URxvt.keysym.M-s: searchable-scrollback:start
1187 1278
1188=item B<url-launcher>: I<string> 1279=item B<url-launcher>: I<string>
1189 1280
1190Specifies the program to be started with a URL argument. Used by the 1281Specifies the program to be started with a URL argument. Used by the
1191C<selection-popup> and C<matcher> perl extensions. 1282C<selection-popup> and C<matcher> perl extensions.
1375window causes the value of the PRIMARY selection (or CLIPBOARD with the 1466window causes the value of the PRIMARY selection (or CLIPBOARD with the
1376B<Meta> modifier) to be inserted as if it had been typed on the keyboard. 1467B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1377 1468
1378Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be 1469Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1379inserted too. 1470inserted too.
1471
1472rxvt-unicode also provides the bindings B<Ctrl-Meta-c> and
1473<Ctrl-Meta-v> to interact with the CLIPBOARD selection. The first
1474binding causes the value of the internal selection to be copied to the
1475CLIPBOARD selection, while the second binding causes the value of the
1476CLIPBOARD selection to be inserted.
1380 1477
1381=back 1478=back
1382 1479
1383=head1 CHANGING FONTS 1480=head1 CHANGING FONTS
1384 1481
1509The following text gives values for the standard 88 colour mode (and 1606The following text gives values for the standard 88 colour mode (and
1510values for the 256 colour mode in parentheses). 1607values for the 256 colour mode in parentheses).
1511 1608
1512The RGB cube uses indices 16..79 (16..231) using the following formulas: 1609The RGB cube uses indices 16..79 (16..231) using the following formulas:
1513 1610
1514 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3 1611 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3
1515 index_256 = (r * 16 + g) * 16 + b + 16 # r, g, b = 0..15 1612 index_256 = (r * 6 + g) * 6 + b + 16 # r, g, b = 0..5
1516 1613
1517The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10% 1614The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10%
1518steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of 1615steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of
1519the RGB cube. 1616the RGB cube.
1520 1617

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines