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.246 by sf-exg, Tue Jun 21 12:03:55 2016 UTC

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
219 220
220=item B<-ls>|B<+ls> 221=item B<-ls>|B<+ls>
221 222
222Start as a login-shell/sub-shell; resource B<loginShell>. 223Start as a login-shell/sub-shell; resource B<loginShell>.
223 224
225=item B<-mc> I<milliseconds>
226
227Specify the maximum time between multi-click selections.
228
224=item B<-ut>|B<+ut> 229=item B<-ut>|B<+ut>
225 230
226Compile I<utmp>: Inhibit/enable writing a utmp entry; resource 231Compile I<utmp>: Inhibit/enable writing a utmp entry; resource
227B<utmpInhibit>. 232B<utmpInhibit>.
228 233
306 311
307=item B<-override-redirect> 312=item B<-override-redirect>
308 313
309Compile I<frills>: Sets override-redirect on the window; resource 314Compile I<frills>: Sets override-redirect on the window; resource
310B<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.
311 321
312=item B<-sbg> 322=item B<-sbg>
313 323
314Compile 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
315drawing characters and just rely on what the specified fonts provide. Use 325drawing characters and just rely on what the specified fonts provide. Use
369 379
370=item B<-pt> I<style> 380=item B<-pt> I<style>
371 381
372Compile I<XIM>: input style for input method; B<OverTheSpot>, 382Compile I<XIM>: input style for input method; B<OverTheSpot>,
373B<OffTheSpot>, B<Root>; resource B<preeditType>. 383B<OffTheSpot>, B<Root>; resource B<preeditType>.
384
385If the perl extension C<xim-onthespot> is used (which is the default),
386then additionally the C<OnTheSpot> preedit type is available.
374 387
375=item B<-im> I<text> 388=item B<-im> I<text>
376 389
377Compile I<XIM>: input method name. resource B<inputMethod>. 390Compile I<XIM>: input method name. resource B<inputMethod>.
378 391
781 794
782B<True>: start as a login shell by prepending a `-' to B<argv[0]> of 795B<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 796the shell; option B<-ls>. B<False>: start as a normal sub-shell
784[default]; option B<+ls>. 797[default]; option B<+ls>.
785 798
799=item B<multiClickTime:> I<number>
800
801Specify the maximum time in milliseconds between multi-click select
802events. The default is 500 milliseconds; option B<-mc>.
803
786=item B<utmpInhibit:> I<boolean> 804=item B<utmpInhibit:> I<boolean>
787 805
788B<True>: inhibit writing record into the system log file B<utmp>; 806B<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> 807option B<-ut>. B<False>: write record into the system log file B<utmp>
790[default]; option B<+ut>. 808[default]; option B<+ut>.
853are not passed onto the shell; option B<-sk>. B<False>: do not scroll to 871are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
854bottom when a non-special key is pressed; option B<+sk>. 872bottom when a non-special key is pressed; option B<+sk>.
855 873
856=item B<saveLines:> I<number> 874=item B<saveLines:> I<number>
857 875
858Save I<number> lines in the scrollback buffer [default 64]. This 876Save I<number> lines in the scrollback buffer [default 1000]; option B<-sl>.
859resource is limited on most machines to 65535; option B<-sl>.
860 877
861=item B<internalBorder:> I<number> 878=item B<internalBorder:> I<number>
862 879
863Internal border of I<number> pixels. This resource is limited to 100; 880Internal border of I<number> pixels. This resource is limited to 100;
864option B<-b>. 881option B<-b>.
927 944
928=item B<pointerColor2:> I<colour> 945=item B<pointerColor2:> I<colour>
929 946
930Mouse pointer background colour. 947Mouse pointer background colour.
931 948
949=item B<pointerShape:> I<string>
950
951Compile I<frills>: Specifies the name of the mouse pointer shape
952[default B<xterm>]. See the macros in the B<X11/cursorfont.h> include
953file for possible values (omit the C<XC_> prefix).
954
932=item B<pointerBlankDelay:> I<number> 955=item B<pointerBlankDelay:> I<number>
933 956
934Specifies number of seconds before blanking the pointer [default 2]. Use a 957Specifies number of seconds before blanking the pointer [default 2]. Use a
935large number (e.g. C<987654321>) to effectively disable the timeout. 958large number (e.g. C<987654321>) to effectively disable the timeout.
936 959
962 985
963B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >> 986B<< BACKSLASH `"'&()*,;<=>?@[]^{|} >>
964 987
965=item B<preeditType:> I<style> 988=item B<preeditType:> I<style>
966 989
967B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>. 990B<OnTheSpot>, B<OverTheSpot>, B<OffTheSpot>, B<Root>; option B<-pt>.
968 991
969=item B<inputMethod:> I<name> 992=item B<inputMethod:> I<name>
970 993
971I<name> of inputMethod to use; option B<-im>. 994I<name> of inputMethod to use; option B<-im>.
972 995
1041Sets the working directory for the shell (or the command specified via 1064Sets 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 1065B<-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 1066@@RXVT_NAME@@ to start. If it isn't specified then the current working
1044directory will be used; option B<-cd>. 1067directory will be used; option B<-cd>.
1045 1068
1046=item B<keysym.>I<sym>: I<string> 1069=item B<keysym.>I<sym>: I<action>
1047 1070
1048Compile I<frills>: Associate I<string> with keysym I<sym>. The 1071Compile I<frills>: Associate I<action> with keysym I<sym>. The intervening
1049intervening resource name B<keysym.> cannot be omitted. 1072resource name B<keysym.> cannot be omitted.
1050 1073
1051The format of I<sym> is "I<(modifiers-)key>", where I<modifiers> can be 1074Using this resource, you can map key combinations such as
1052any combination of B<ISOLevel3>, B<AppKeypad>, B<Control>, B<NumLock>, 1075C<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>, 1076string 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>, 1077terminal scroll up or down the way you want it, or any other thing an
1055B<2>, B<3>, B<4>, B<5>. 1078extension might provide.
1079
1080The key combination that triggers the action, I<sym>, has the following format:
1081
1082 (modifiers-)key
1083
1084Where I<modifiers> can be any combination of B<ISOLevel3>, B<AppKeypad>,
1085B<Control>, B<NumLock>, B<Shift>, B<Meta>, B<Lock>, B<Mod1>, B<Mod2>,
1086B<Mod3>, B<Mod4>, B<Mod5>, and the abbreviated B<I>, B<K>, B<C>, B<N>,
1087B<S>, B<M>, B<A>, B<L>, B<1>, B<2>, B<3>, B<4>, B<5>.
1056 1088
1057The B<NumLock>, B<Meta> and B<ISOLevel3> modifiers are usually aliased to 1089The 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 1090whatever 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 1091keys are being mapped. B<AppKeypad> is a synthetic modifier mapped to the
1060current application keymap mode state. 1092current application keymap mode state.
1061 1093
1062The spellings of I<key> can be obtained by using B<xev>(1) command or 1094Due the the large number of modifier combinations, a key mapping will
1063searching keysym macros from B</usr/X11R6/include/X11/keysymdef.h> and 1095match if I<at least> the specified identifiers are being set, and no other
1096key mappings with those and more bits are being defined. That means that
1097defining a mapping for C<a> will automatically provide definitions for
1098C<Meta-a>, C<Shift-a> and so on, unless some of those are defined mappings
1099themselves. See the C<builtin:> action, below, for a way to work around
1100this when this is a problem.
1101
1102The spelling of I<key> depends on your implementation of X. An easy way to
1103find a key name is to use the B<xev>(1) command. You can find a list by
1104looking 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 1105the 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 1106value (B<0x0000 - 0xFFFF>).
1066performed in an exact manner; however, the closest match is assured.
1067 1107
1068I<string> may contain escape values (C<\n>: newline, C<\000>: octal 1108As with any resource value, the I<action> string may contain backslash
1109escape sequences (C<\n>: newline, C<\\>: backslash, C<\000>: octal
1069number), see RESOURCES in C<man 7 X> for further details. 1110number), see RESOURCES in C<man 7 X> for further details.
1070 1111
1071You can define a range of keysyms in one shot by 1112An action starts with an action prefix that selects a certain type
1072loading the C<keysym-list> perl extension and providing a I<string> 1113of action, followed by a colon. An action string without colons is
1073with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where the delimiter `/' 1114interpreted as a literal string to pass to the tty (as if it was
1115prefixed with C<string:>).
1116
1117The following action prefixes are known - extensions can provide
1118additional prefixes:
1119
1120=over 4
1121
1122=item string:STRING
1123
1124If the I<action> starts with C<string:> (or otherwise contains no colons),
1125then the remaining C<STRING> will be passed to the program running in the
1126terminal. For example, you could replace whatever Shift-Tab outputs by the
1127string C<echo rm -rf /> followed by a newline:
1128
1129 URxvt.keysym.Shift-Tab: string:echo rm -rf /\n
1130
1131This could in theory be used to completely redefine your keymap.
1132
1133In addition, for actions of this type, you can define a range of
1134keysyms in one shot by loading the C<keysym-list> perl extension and
1135providing an I<action> with pattern B<list/PREFIX/MIDDLE/SUFFIX>, where
1074should be a character not used by the strings. 1136the delimiter `/' should be a character not used by the strings.
1075 1137
1076Its usage can be demonstrated by an example: 1138Its usage can be demonstrated by an example:
1077 1139
1078 URxvt.keysym.M-C-0x61: list|\033<|abc|> 1140 URxvt.keysym.M-C-0x61: list|\033<|abc|>
1079 1141
1080The above line is equivalent to the following three lines: 1142The above line is equivalent to the following three lines:
1081 1143
1082 URxvt.keysym.Meta-Control-0x61: \033<a> 1144 URxvt.keysym.Meta-Control-0x61: string:\033<a>
1083 URxvt.keysym.Meta-Control-0x62: \033<b> 1145 URxvt.keysym.Meta-Control-0x62: string:\033<b>
1084 URxvt.keysym.Meta-Control-0x63: \033<c> 1146 URxvt.keysym.Meta-Control-0x63: string:\033<c>
1085 1147
1148=item command:STRING
1149
1086If I<string> takes the form of C<command:STRING>, the specified B<STRING> 1150If I<action> takes the form of C<command:STRING>, the specified B<STRING>
1087is interpreted and executed as @@RXVT_NAME@@'s control sequence. For 1151is interpreted and executed as @@RXVT_NAME@@'s control sequence (basically
1152the opposite of C<string:> - instead of sending it to the program running
1153in the terminal, it will be treated as if it were program output). This is
1154most useful to feed command sequences into @@RXVT_NAME@@.
1155
1088example the following means "change the current locale to C<zh_CN.GBK> 1156For example the following means "change the current locale to C<zh_CN.GBK>
1089when Control-Meta-c is being pressed": 1157when Control-Meta-c is being pressed":
1090 1158
1091 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 1159 URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007
1092 1160
1093If I<string> takes the form C<perl:STRING>, then the specified B<STRING> 1161The 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) 1162the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1095manpage. For example, the F<selection> extension (activated via 1163font-switching at runtime:
1096C<@@RXVT_NAME@@ -pe selection>) listens for C<selection:rot13> events:
1097 1164
1098 URxvt.keysym.M-C-c: perl:selection:rot13 1165 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007
1166 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007
1099 1167
1100Due the the large number of modifier combinations, a defined key mapping 1168Other 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 1169info):
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 1170
1107Unfortunately, this will override built-in key mappings. For example 1171 URxvt.keysym.M-C-3: command:\033[8;25;80t
1172 URxvt.keysym.M-C-4: command:\033[8;48;110t
1173
1174=item builtin:
1175
1176The builtin action is the action that @@RXVT_NAME@@ would execute if no
1177key binding existed for the key combination. The obvious use is to undo
1178the effect of existing bindings. The not so obvious use is to reinstate
1179bindings when another binding overrides too many modifiers.
1180
1108if you overwrite the C<Insert> key you will disable @@RXVT_NAME@@'s 1181For 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 1182@@RXVT_NAME@@'s C<Shift-Insert> mapping. To re-enable that, you can poke
1110user-defined keymap using the C<builtin:> replacement: 1183"holes" into the user-defined keymap using the C<builtin:> replacement:
1111 1184
1112 URxvt.keysym.Insert: <my insert key sequence> 1185 URxvt.keysym.Insert: <my insert key sequence>
1113 URxvt.keysym.S-Insert: builtin: 1186 URxvt.keysym.S-Insert: builtin:
1114 1187
1115The first line defines a mapping for C<Insert> and I<any> combination 1188The first line defines a mapping for C<Insert> and I<any> combination
1116of modifiers. The second line re-establishes the default mapping for 1189of modifiers. The second line re-establishes the default mapping for
1117C<Shift-Insert>. 1190C<Shift-Insert>.
1118 1191
1119The following example will map Control-Meta-1 and Control-Meta-2 to 1192=item builtin-string:
1120the fonts C<suxuseuro> and C<9x15bold>, so you can have some limited
1121font-switching at runtime:
1122 1193
1123 URxvt.keysym.M-C-1: command:\033]50;suxuseuro\007 1194This action is mainly useful to restore string mappings for keys that
1124 URxvt.keysym.M-C-2: command:\033]50;9x15bold\007 1195have predefined actions in @@RXVT_NAME@@. The exact semantics are a bit
1196difficult to explain - basically, this action will send the string to the
1197application that would be sent if @@RXVT_NAME@@ wouldn't have a built-in
1198action for it.
1125 1199
1126Other things are possible, e.g. resizing (see @@RXVT_NAME@@(7) for more 1200An example might make it clearer: @@RXVT_NAME@@ normally pastes the
1127info): 1201selection when you press C<Shift-Insert>. With the following bindings, it
1202would instead emit the (undocumented, but what applications running in the
1203terminal might expect) sequence C<ESC [ 2 $> instead:
1128 1204
1129 URxvt.keysym.M-C-3: command:\033[8;25;80t 1205 URxvt.keysym.S-Insert: builtin-string:
1130 URxvt.keysym.M-C-4: command:\033[8;48;110t 1206 URxvt.keysym.C-S-Insert: builtin:
1207
1208The first line disables the paste functionality for that key
1209combination, and the second reinstates the default behaviour for
1210C<Control-Shift-Insert>, which would otherwise be overridden.
1211
1212Similarly, to let applications gain access to the C<C-M-c> (copy to
1213clipboard) and C<C-M-v> (paste clipboard) key combination, you can do
1214this:
1215
1216 URxvt.keysym.C-M-c: builtin-string:
1217 URxvt.keysym.C-M-v: builtin-string:
1218
1219=item EXTENSION:STRING
1220
1221An action of this form invokes the action B<STRING>, if any, provided
1222by the @@RXVT_NAME@@perl(3) extension B<EXTENSION>. The extension will
1223be loaded automatically if necessary.
1224
1225Not all extensions define actions, but popular extensions that do
1226include the I<selection> and I<matcher> extensions (documented in their
1227own manpages, @@RXVT_NAME@@-selection(1) and @@RXVT_NAME@@-matcher(1),
1228respectively).
1229
1230From the silly examples department, this will rot13-"encrypt"
1231@@RXVT_NAME@@'s selection when Alt-Control-c is pressed on typical PC
1232keyboards:
1233
1234 URxvt.keysym.M-C-c: selection:rot13
1235
1236=item perl:STRING *DEPRECATED*
1237
1238This is a deprecated way of invoking commands provided by perl
1239extensions. It is still supported, but should not be used anymore.
1240
1241=back
1131 1242
1132=item B<perl-ext-common>: I<string> 1243=item B<perl-ext-common>: I<string>
1133 1244
1134=item B<perl-ext>: I<string> 1245=item B<perl-ext>: I<string>
1135 1246
1137use in this terminal instance; option B<-pe>. 1248use in this terminal instance; option B<-pe>.
1138 1249
1139Extension names can be prefixed with a C<-> sign to prohibit using 1250Extension names can be prefixed with a C<-> sign to prohibit using
1140them. This can be useful to selectively disable some extensions loaded 1251them. This can be useful to selectively disable some extensions loaded
1141by default, or specified via the C<perl-ext-common> resource. For 1252by default, or specified via the C<perl-ext-common> resource. For
1142example, C<default,-selection> will use all the default extension except 1253example, C<default,-selection> will use all the default extensions except
1143C<selection>. 1254C<selection>.
1144 1255
1145Extension names can also be followed by an argument in angle brackets 1256The default set includes the C<selection>, C<option-popup>,
1146(e.g. C<< searchable-scrollback<M-s> >>, which binds the hotkey for 1257C<selection-popup>, C<readline> and C<searchable-scrollback>
1147searchable scrollback to Alt/Meta-s). Mentioning the same extension 1258extensions, and extensions which are mentioned in B<keysym> resources.
1148multiple times with different arguments will pass multiple arguments to 1259
1149the extension. 1260Any extension such that a corresponding resource is given on the
1261command line is automatically appended to B<perl-ext>.
1150 1262
1151Each extension is looked up in the library directories, loaded if 1263Each extension is looked up in the library directories, loaded if
1152necessary, and bound to the current terminal instance. 1264necessary, and bound to the current terminal instance. When the library
1265search path contains multiple extension files of the same name, then the
1266first one found will be used.
1153 1267
1154If both of these resources are the empty string, then the perl 1268If both of these resources are the empty string, then the perl interpreter
1155interpreter will not be initialized. The idea behind two options is that 1269will 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 1270B<perl-ext-common> will be used for extensions that should be available to
1157all instances, while B<perl-ext> is used for specific instances. 1271all instances, while B<perl-ext> is used for specific instances.
1158 1272
1159=item B<perl-eval>: I<string> 1273=item B<perl-eval>: I<string>
1160 1274
1178=item B<< selection-autotransform.I<idx> >>: I<perl-transform> 1292=item B<< selection-autotransform.I<idx> >>: I<perl-transform>
1179 1293
1180Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage 1294Selection auto-transform patterns, see the @@RXVT_NAME@@perl(3) manpage
1181for details. 1295for details.
1182 1296
1183=item B<searchable-scrollback:> I<keysym> 1297=item B<searchable-scrollback:> I<keysym> *DEPRECATED*
1184 1298
1185Sets the hotkey that starts the incremental scrollback buffer search 1299This resource is deprecated and will be removed. Use a B<keysym> resource
1186(default: C<M-s>). 1300instead, e.g.:
1301
1302 URxvt.keysym.M-s: searchable-scrollback:start
1187 1303
1188=item B<url-launcher>: I<string> 1304=item B<url-launcher>: I<string>
1189 1305
1190Specifies the program to be started with a URL argument. Used by the 1306Specifies the program to be started with a URL argument. Used by the
1191C<selection-popup> and C<matcher> perl extensions. 1307C<selection-popup> and C<matcher> perl extensions.
1375window causes the value of the PRIMARY selection (or CLIPBOARD with the 1491window 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. 1492B<Meta> modifier) to be inserted as if it had been typed on the keyboard.
1377 1493
1378Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be 1494Pressing B<Shift-Insert> causes the value of the PRIMARY selection to be
1379inserted too. 1495inserted too.
1496
1497rxvt-unicode also provides the bindings B<Ctrl-Meta-c> and
1498<Ctrl-Meta-v> to interact with the CLIPBOARD selection. The first
1499binding causes the value of the internal selection to be copied to the
1500CLIPBOARD selection, while the second binding causes the value of the
1501CLIPBOARD selection to be inserted.
1380 1502
1381=back 1503=back
1382 1504
1383=head1 CHANGING FONTS 1505=head1 CHANGING FONTS
1384 1506
1473In addition to the default foreground and background colours, 1595In addition to the default foreground and background colours,
1474B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus 1596B<@@RXVT_NAME@@> can display up to 88/256 colours: 8 ANSI colours plus
1475high-intensity (potentially bold/blink) versions of the same, and 72 (or 1597high-intensity (potentially bold/blink) versions of the same, and 72 (or
1476240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB 1598240 in 256 colour mode) colours arranged in an 4x4x4 (or 6x6x6) colour RGB
1477cube plus a 8 (24) colour greyscale ramp. 1599cube plus a 8 (24) colour greyscale ramp.
1600
1601B<@@RXVT_NAME@@> supports direct 24-bit fg/bg RGB colour escapes
1602C< ESC [ 38 ; 2 ; R ; G ; Bm > / C< ESC [ 48 ; 2; R ; G ; Bm >. However the
1603number of 24-bit colours that can be used is limited: an internal 7x7x5 (256
1604colour mode) or 6x6x4 (88 colour mode) colour cube is used to index into the
160524-bit colour space. When indexing collisions happen, the nearest old colour in
1606the cube will be adapted to the new 24-bit RGB colour. That means one cannot
1607use many similar 24-bit colours. It's typically not a problem in common
1608scenarios.
1478 1609
1479Here is a list of the ANSI colours with their names. 1610Here is a list of the ANSI colours with their names.
1480 1611
1481=begin table 1612=begin table
1482 1613
1509The following text gives values for the standard 88 colour mode (and 1640The following text gives values for the standard 88 colour mode (and
1510values for the 256 colour mode in parentheses). 1641values for the 256 colour mode in parentheses).
1511 1642
1512The RGB cube uses indices 16..79 (16..231) using the following formulas: 1643The RGB cube uses indices 16..79 (16..231) using the following formulas:
1513 1644
1514 index_88 = (r * 4 + g) * 4 + b + 16 # r, g, b = 0..3 1645 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 1646 index_256 = (r * 6 + g) * 6 + b + 16 # r, g, b = 0..5
1516 1647
1517The grayscale ramp uses indices 80..87 (232..239), from 10% to 90% in 10% 1648The 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 1649steps (1/26 to 25/26 in 1/26 steps) - black and white are already part of
1519the RGB cube. 1650the RGB cube.
1520 1651

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines