Mercurial > vim
comparison src/ex_cmdidxs.h @ 26719:2bdcce61a4e4 v8.2.3888
patch 8.2.3888: the argument list may contain duplicates
Commit: https://github.com/vim/vim/commit/73a024209cbfbd5b39a2e974084d807c6131e2ed
Author: Nir Lichtman <nir_lichtman@hotmail.com>
Date: Fri Dec 24 20:28:03 2021 +0000
patch 8.2.3888: the argument list may contain duplicates
Problem: The argument list may contain duplicates.
Solution: Add the :argdedeupe command. (Nir Lichtman, closes https://github.com/vim/vim/issues/6235)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 24 Dec 2021 21:30:03 +0100 |
parents | b6ac4ed5e2d2 |
children | 5dfd4bd66ad8 |
comparison
equal
deleted
inserted
replaced
26718:8c929924dc15 | 26719:2bdcce61a4e4 |
---|---|
4 * based on the first letter of a command. | 4 * based on the first letter of a command. |
5 */ | 5 */ |
6 static const unsigned short cmdidxs1[26] = | 6 static const unsigned short cmdidxs1[26] = |
7 { | 7 { |
8 /* a */ 0, | 8 /* a */ 0, |
9 /* b */ 20, | 9 /* b */ 21, |
10 /* c */ 44, | 10 /* c */ 45, |
11 /* d */ 111, | 11 /* d */ 112, |
12 /* e */ 136, | 12 /* e */ 137, |
13 /* f */ 164, | 13 /* f */ 165, |
14 /* g */ 181, | 14 /* g */ 182, |
15 /* h */ 187, | 15 /* h */ 188, |
16 /* i */ 196, | 16 /* i */ 197, |
17 /* j */ 216, | 17 /* j */ 217, |
18 /* k */ 218, | 18 /* k */ 219, |
19 /* l */ 223, | 19 /* l */ 224, |
20 /* m */ 286, | 20 /* m */ 287, |
21 /* n */ 304, | 21 /* n */ 305, |
22 /* o */ 324, | 22 /* o */ 325, |
23 /* p */ 336, | 23 /* p */ 337, |
24 /* q */ 375, | 24 /* q */ 376, |
25 /* r */ 378, | 25 /* r */ 379, |
26 /* s */ 398, | 26 /* s */ 399, |
27 /* t */ 468, | 27 /* t */ 469, |
28 /* u */ 514, | 28 /* u */ 515, |
29 /* v */ 525, | 29 /* v */ 526, |
30 /* w */ 546, | 30 /* w */ 547, |
31 /* x */ 560, | 31 /* x */ 561, |
32 /* y */ 570, | 32 /* y */ 571, |
33 /* z */ 571 | 33 /* z */ 572 |
34 }; | 34 }; |
35 | 35 |
36 /* | 36 /* |
37 * Table giving the index of the first command in cmdnames[] to lookup | 37 * Table giving the index of the first command in cmdnames[] to lookup |
38 * based on the first 2 letters of a command. | 38 * based on the first 2 letters of a command. |
39 * Values in cmdidxs2[c1][c2] are relative to cmdidxs1[c1] so that they | 39 * Values in cmdidxs2[c1][c2] are relative to cmdidxs1[c1] so that they |
40 * fit in a byte. | 40 * fit in a byte. |
41 */ | 41 */ |
42 static const unsigned char cmdidxs2[26][26] = | 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 */ | 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 */ |
44 /* a */ { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 7, 0, 0, 0, 8, 16, 0, 17, 0, 0, 0, 0, 0 }, | 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 }, |
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 }, | 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 }, |
46 /* c */ { 3, 12, 16, 18, 20, 22, 25, 0, 0, 0, 0, 33, 38, 41, 47, 57, 59, 60, 61, 0, 63, 0, 66, 0, 0, 0 }, | 46 /* c */ { 3, 12, 16, 18, 20, 22, 25, 0, 0, 0, 0, 33, 38, 41, 47, 57, 59, 60, 61, 0, 63, 0, 66, 0, 0, 0 }, |
47 /* d */ { 0, 0, 0, 0, 0, 0, 0, 0, 8, 18, 0, 19, 0, 0, 20, 0, 0, 22, 23, 0, 0, 0, 0, 0, 0, 0 }, | 47 /* d */ { 0, 0, 0, 0, 0, 0, 0, 0, 8, 18, 0, 19, 0, 0, 20, 0, 0, 22, 23, 0, 0, 0, 0, 0, 0, 0 }, |
48 /* e */ { 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 8, 10, 11, 0, 0, 0, 0, 0, 0, 0, 22, 0, 23, 0, 0 }, | 48 /* e */ { 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 8, 10, 11, 0, 0, 0, 0, 0, 0, 0, 22, 0, 23, 0, 0 }, |
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 }, | 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 }, |
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 }, | 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 }, |
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 }, | 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 } | 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 }; | 70 }; |
71 | 71 |
72 static const int command_count = 588; | 72 static const int command_count = 589; |