Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 1 | /* Automatically generated code by create_cmdidxs.vim |
| 2 | * |
| 3 | * Table giving the index of the first command in cmdnames[] to lookup |
| 4 | * based on the first letter of a command. |
| 5 | */ |
| 6 | static const unsigned short cmdidxs1[26] = |
| 7 | { |
| 8 | /* a */ 0, |
Nir Lichtman | 73a0242 | 2021-12-24 20:28:03 +0000 | [diff] [blame] | 9 | /* b */ 21, |
| 10 | /* c */ 45, |
Foxe Chen | b90c239 | 2025-06-27 21:10:35 +0200 | [diff] [blame] | 11 | /* d */ 113, |
| 12 | /* e */ 139, |
| 13 | /* f */ 168, |
| 14 | /* g */ 185, |
| 15 | /* h */ 191, |
| 16 | /* i */ 201, |
| 17 | /* j */ 222, |
| 18 | /* k */ 224, |
| 19 | /* l */ 229, |
| 20 | /* m */ 292, |
| 21 | /* n */ 310, |
| 22 | /* o */ 330, |
| 23 | /* p */ 342, |
| 24 | /* q */ 383, |
| 25 | /* r */ 386, |
| 26 | /* s */ 407, |
| 27 | /* t */ 477, |
| 28 | /* u */ 524, |
| 29 | /* v */ 536, |
| 30 | /* w */ 557, |
| 31 | /* x */ 572, |
| 32 | /* y */ 582, |
| 33 | /* z */ 583 |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 34 | }; |
| 35 | |
| 36 | /* |
| 37 | * Table giving the index of the first command in cmdnames[] to lookup |
| 38 | * based on the first 2 letters of a command. |
| 39 | * Values in cmdidxs2[c1][c2] are relative to cmdidxs1[c1] so that they |
| 40 | * fit in a byte. |
| 41 | */ |
| 42 | static const unsigned char cmdidxs2[26][26] = |
| 43 | { /* a b c d e f g h i j k l m n o p q r s t u v w x y z */ |
Nir Lichtman | 73a0242 | 2021-12-24 20:28:03 +0000 | [diff] [blame] | 44 | /* a */ { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 7, 0, 0, 0, 8, 17, 0, 18, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 59d8e56 | 2020-11-07 18:41:10 +0100 | [diff] [blame] | 45 | /* b */ { 2, 0, 0, 5, 6, 8, 0, 0, 0, 0, 0, 9, 10, 11, 12, 13, 0, 14, 0, 0, 0, 0, 23, 0, 0, 0 }, |
Foxe Chen | b90c239 | 2025-06-27 21:10:35 +0200 | [diff] [blame] | 46 | /* c */ { 3, 12, 16, 18, 20, 22, 25, 0, 0, 0, 0, 33, 39, 42, 48, 58, 60, 61, 62, 0, 64, 0, 67, 0, 0, 0 }, |
Bram Moolenaar | 1d84f76 | 2022-09-03 21:35:53 +0100 | [diff] [blame] | 47 | /* d */ { 0, 0, 0, 0, 0, 0, 0, 0, 9, 19, 0, 20, 0, 0, 21, 0, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 37fef16 | 2022-08-29 18:16:32 +0100 | [diff] [blame] | 48 | /* e */ { 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 9, 11, 12, 0, 0, 0, 0, 0, 0, 0, 23, 0, 24, 0, 0 }, |
Bram Moolenaar | 30fd820 | 2020-09-26 15:09:30 +0200 | [diff] [blame] | 49 | /* f */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 50 | /* g */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 4, 5, 0, 0, 0, 0 }, |
Bram Moolenaar | 21c3a80 | 2022-08-31 17:49:14 +0100 | [diff] [blame] | 51 | /* h */ { 5, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
64-bitman | e08f10a | 2025-03-18 22:14:34 +0100 | [diff] [blame] | 52 | /* i */ { 1, 0, 0, 0, 0, 3, 0, 0, 0, 4, 0, 5, 6, 0, 0, 15, 0, 0, 16, 0, 18, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 53 | /* j */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, |
| 54 | /* k */ { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 96cf4ba | 2021-04-24 14:15:41 +0200 | [diff] [blame] | 55 | /* l */ { 3, 11, 15, 19, 20, 25, 28, 33, 0, 0, 0, 35, 38, 41, 45, 51, 0, 53, 62, 54, 55, 59, 61, 0, 0, 0 }, |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 56 | /* m */ { 1, 0, 0, 0, 7, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16 }, |
| 57 | /* n */ { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 10, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0 }, |
| 58 | /* o */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 5, 0, 0, 0, 0, 0, 0, 9, 0, 11, 0, 0, 0 }, |
Yinzuo Jiang | a2a2fe8 | 2024-12-16 21:22:09 +0100 | [diff] [blame] | 59 | /* p */ { 1, 3, 4, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 10, 0, 0, 17, 18, 27, 0, 29, 0, 30, 0 }, |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 60 | /* q */ { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
Naruhiko Nishino | be5bd4d | 2025-05-14 21:20:28 +0200 | [diff] [blame] | 61 | /* r */ { 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 20, 0, 0, 0, 0 }, |
Bram Moolenaar | 7423577 | 2021-06-12 14:53:05 +0200 | [diff] [blame] | 62 | /* s */ { 2, 6, 15, 0, 19, 23, 0, 25, 26, 0, 0, 29, 31, 35, 39, 41, 0, 50, 0, 51, 0, 64, 65, 0, 66, 0 }, |
Bram Moolenaar | c1c365c | 2022-12-04 20:13:24 +0000 | [diff] [blame] | 63 | /* t */ { 2, 0, 19, 0, 24, 26, 0, 27, 0, 29, 0, 30, 34, 37, 39, 40, 0, 41, 43, 0, 44, 0, 0, 0, 46, 0 }, |
Hirohito Higashi | 74f0a77 | 2025-06-23 21:42:36 +0200 | [diff] [blame] | 64 | /* u */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 39f3b14 | 2021-02-14 12:57:36 +0100 | [diff] [blame] | 65 | /* v */ { 1, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 12, 15, 0, 0, 0, 0, 18, 0, 19, 0, 0, 0, 0, 0 }, |
Foxe Chen | b90c239 | 2025-06-27 21:10:35 +0200 | [diff] [blame] | 66 | /* w */ { 2, 0, 0, 0, 0, 0, 0, 3, 4, 0, 0, 8, 0, 9, 0, 10, 11, 0, 0, 0, 13, 14, 0, 0, 0, 0 }, |
Bram Moolenaar | d4aa83a | 2019-05-09 18:59:31 +0200 | [diff] [blame] | 67 | /* x */ { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 0, 0, 0, 7, 0, 0, 8, 0, 0, 0, 0, 0 }, |
Bram Moolenaar | 6de5e12 | 2017-04-20 21:55:44 +0200 | [diff] [blame] | 68 | /* y */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
| 69 | /* z */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } |
| 70 | }; |
| 71 | |
Foxe Chen | b90c239 | 2025-06-27 21:10:35 +0200 | [diff] [blame] | 72 | static const int command_count = 600; |