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