mirror of
https://github.com/vim/vim
synced 2025-03-16 06:47:52 +01:00
Problem: Generating the normal command table at runtime is inefficient. Solution: Generate the table with a Vim script and put it in a header file. (Yegappan Lakshmanan, closes #9648)
209 lines
4 KiB
C
209 lines
4 KiB
C
/*
|
|
* Automatically generated code by the create_nvcmdidxs.vim script.
|
|
*
|
|
* Table giving the index in nv_cmds[] to lookup based on
|
|
* the command character.
|
|
*/
|
|
|
|
// nv_cmd_idx[<normal mode command character>] => nv_cmds[] index
|
|
static const unsigned short nv_cmd_idx[] =
|
|
{
|
|
/* 0 */ 0,
|
|
/* 1 */ 1,
|
|
/* 2 */ 2,
|
|
/* 3 */ 3,
|
|
/* 4 */ 4,
|
|
/* 5 */ 5,
|
|
/* 6 */ 6,
|
|
/* 7 */ 7,
|
|
/* 8 */ 8,
|
|
/* 9 */ 9,
|
|
/* 10 */ 10,
|
|
/* 11 */ 11,
|
|
/* 12 */ 12,
|
|
/* 13 */ 13,
|
|
/* 14 */ 14,
|
|
/* 15 */ 15,
|
|
/* 16 */ 16,
|
|
/* 17 */ 17,
|
|
/* 18 */ 18,
|
|
/* 19 */ 19,
|
|
/* 20 */ 20,
|
|
/* 21 */ 21,
|
|
/* 22 */ 22,
|
|
/* 23 */ 23,
|
|
/* 24 */ 24,
|
|
/* 25 */ 25,
|
|
/* 26 */ 26,
|
|
/* 27 */ 27,
|
|
/* 28 */ 28,
|
|
/* 29 */ 29,
|
|
/* 30 */ 30,
|
|
/* 31 */ 31,
|
|
/* 32 */ 32,
|
|
/* 33 */ 33,
|
|
/* 34 */ 34,
|
|
/* 35 */ 35,
|
|
/* 36 */ 36,
|
|
/* 37 */ 37,
|
|
/* 38 */ 38,
|
|
/* 39 */ 39,
|
|
/* 40 */ 40,
|
|
/* 41 */ 41,
|
|
/* 42 */ 42,
|
|
/* 43 */ 43,
|
|
/* 44 */ 44,
|
|
/* 45 */ 45,
|
|
/* 46 */ 46,
|
|
/* 47 */ 47,
|
|
/* 48 */ 48,
|
|
/* 49 */ 49,
|
|
/* 50 */ 50,
|
|
/* 51 */ 51,
|
|
/* 52 */ 52,
|
|
/* 53 */ 53,
|
|
/* 54 */ 54,
|
|
/* 55 */ 55,
|
|
/* 56 */ 56,
|
|
/* 57 */ 57,
|
|
/* 58 */ 58,
|
|
/* 59 */ 59,
|
|
/* 60 */ 60,
|
|
/* 61 */ 61,
|
|
/* 62 */ 62,
|
|
/* 63 */ 63,
|
|
/* 64 */ 64,
|
|
/* 65 */ 65,
|
|
/* 66 */ 66,
|
|
/* 67 */ 67,
|
|
/* 68 */ 68,
|
|
/* 69 */ 69,
|
|
/* 70 */ 70,
|
|
/* 71 */ 71,
|
|
/* 72 */ 72,
|
|
/* 73 */ 73,
|
|
/* 74 */ 74,
|
|
/* 75 */ 75,
|
|
/* 76 */ 76,
|
|
/* 77 */ 77,
|
|
/* 78 */ 78,
|
|
/* 79 */ 79,
|
|
/* 80 */ 80,
|
|
/* 81 */ 81,
|
|
/* 82 */ 82,
|
|
/* 83 */ 83,
|
|
/* 84 */ 84,
|
|
/* 85 */ 85,
|
|
/* 86 */ 86,
|
|
/* 87 */ 87,
|
|
/* 88 */ 88,
|
|
/* 89 */ 89,
|
|
/* 90 */ 90,
|
|
/* 91 */ 91,
|
|
/* 92 */ 92,
|
|
/* 93 */ 93,
|
|
/* 94 */ 94,
|
|
/* 95 */ 95,
|
|
/* 96 */ 96,
|
|
/* 97 */ 97,
|
|
/* 98 */ 98,
|
|
/* 99 */ 99,
|
|
/* 100 */ 100,
|
|
/* 101 */ 101,
|
|
/* 102 */ 102,
|
|
/* 103 */ 103,
|
|
/* 104 */ 104,
|
|
/* 105 */ 105,
|
|
/* 106 */ 106,
|
|
/* 107 */ 107,
|
|
/* 108 */ 108,
|
|
/* 109 */ 109,
|
|
/* 110 */ 110,
|
|
/* 111 */ 111,
|
|
/* 112 */ 112,
|
|
/* 113 */ 113,
|
|
/* 114 */ 114,
|
|
/* 115 */ 115,
|
|
/* 116 */ 116,
|
|
/* 117 */ 117,
|
|
/* 118 */ 118,
|
|
/* 119 */ 119,
|
|
/* 120 */ 120,
|
|
/* 121 */ 121,
|
|
/* 122 */ 122,
|
|
/* 123 */ 123,
|
|
/* 124 */ 124,
|
|
/* 125 */ 125,
|
|
/* 126 */ 126,
|
|
/* 163 */ 127,
|
|
/* 1277 */ 156,
|
|
/* 1533 */ 158,
|
|
/* 11517 */ 132,
|
|
/* 11773 */ 134,
|
|
/* 12029 */ 135,
|
|
/* 12285 */ 138,
|
|
/* 12541 */ 139,
|
|
/* 12581 */ 180,
|
|
/* 12619 */ 174,
|
|
/* 12651 */ 181,
|
|
/* 12797 */ 140,
|
|
/* 12835 */ 175,
|
|
/* 13053 */ 141,
|
|
/* 13131 */ 166,
|
|
/* 13309 */ 142,
|
|
/* 13347 */ 160,
|
|
/* 13387 */ 170,
|
|
/* 13565 */ 143,
|
|
/* 13643 */ 168,
|
|
/* 13821 */ 150,
|
|
/* 14122 */ 171,
|
|
/* 14144 */ 169,
|
|
/* 14374 */ 179,
|
|
/* 14845 */ 182,
|
|
/* 16966 */ 188,
|
|
/* 17515 */ 177,
|
|
/* 17917 */ 133,
|
|
/* 18173 */ 136,
|
|
/* 18795 */ 152,
|
|
/* 19453 */ 129,
|
|
/* 19709 */ 128,
|
|
/* 19965 */ 130,
|
|
/* 20075 */ 167,
|
|
/* 20221 */ 131,
|
|
/* 20477 */ 153,
|
|
/* 20587 */ 165,
|
|
/* 20733 */ 178,
|
|
/* 21328 */ 191,
|
|
/* 22013 */ 161,
|
|
/* 22269 */ 164,
|
|
/* 22525 */ 176,
|
|
/* 22767 */ 187,
|
|
/* 22768 */ 186,
|
|
/* 22773 */ 183,
|
|
/* 22776 */ 185,
|
|
/* 22777 */ 184,
|
|
/* 22781 */ 172,
|
|
/* 23037 */ 144,
|
|
/* 23293 */ 145,
|
|
/* 23549 */ 146,
|
|
/* 23805 */ 147,
|
|
/* 24061 */ 148,
|
|
/* 24317 */ 149,
|
|
/* 24573 */ 189,
|
|
/* 24829 */ 190,
|
|
/* 25085 */ 151,
|
|
/* 25195 */ 154,
|
|
/* 25707 */ 157,
|
|
/* 25853 */ 137,
|
|
/* 26621 */ 192,
|
|
/* 26731 */ 173,
|
|
/* 26877 */ 193,
|
|
/* 26917 */ 163,
|
|
/* 27755 */ 159,
|
|
/* 29291 */ 162,
|
|
/* 30059 */ 155,
|
|
};
|
|
|
|
// The highest index for which
|
|
// nv_cmds[idx].cmd_char == nv_cmd_idx[nv_cmds[idx].cmd_char]
|
|
static const int nv_max_linear = 126;
|