1PDCurses changes:
2
3Remap Alt-modified keys to emit their usual key codes so Textadept can handle
4them like ncurses.
5
6Support more Alt and Shift+Alt keys.
7
8--- a/wincon/pdckbd.c	2019-09-04 16:08:02.000000000 -0400
9+++ b/wincon/pdckbd.c	2020-02-07 16:00:29.000000000 -0500
10@@ -100,16 +80,16 @@
11    {PAD0,       0x30,      CTL_PAD0,    ALT_PAD0,   11  }, /* 45  VK_INSERT  */
12    {PADSTOP,    0x2E,      CTL_PADSTOP, ALT_PADSTOP,12  }, /* 46  VK_DELETE  */
13    {0,          0,         0,           0,          0   }, /* 47  VK_HELP    */
14-   {0x30,       0x29,      0,           ALT_0,      0   }, /* 48  */
15-   {0x31,       0x21,      0,           ALT_1,      0   }, /* 49  */
16-   {0x32,       0x40,      0,           ALT_2,      0   }, /* 50  */
17-   {0x33,       0x23,      0,           ALT_3,      0   }, /* 51  */
18-   {0x34,       0x24,      0,           ALT_4,      0   }, /* 52  */
19-   {0x35,       0x25,      0,           ALT_5,      0   }, /* 53  */
20-   {0x36,       0x5E,      0,           ALT_6,      0   }, /* 54  */
21-   {0x37,       0x26,      0,           ALT_7,      0   }, /* 55  */
22-   {0x38,       0x2A,      0,           ALT_8,      0   }, /* 56  */
23-   {0x39,       0x28,      0,           ALT_9,      0   }, /* 57  */
24+   {0x30,       0x29,      0,           0x30,       0   }, /* 48  */
25+   {0x31,       0x21,      0,           0x31,       0   }, /* 49  */
26+   {0x32,       0x40,      0,           0x32,       0   }, /* 50  */
27+   {0x33,       0x23,      0,           0x33,       0   }, /* 51  */
28+   {0x34,       0x24,      0,           0x34,       0   }, /* 52  */
29+   {0x35,       0x25,      0,           0x35,       0   }, /* 53  */
30+   {0x36,       0x5E,      0,           0x36,       0   }, /* 54  */
31+   {0x37,       0x26,      0,           0x37,       0   }, /* 55  */
32+   {0x38,       0x2A,      0,           0x38,       0   }, /* 56  */
33+   {0x39,       0x28,      0,           0x39,       0   }, /* 57  */
34    {0,          0,         0,           0,          0   }, /* 58  */
35    {0,          0,         0,           0,          0   }, /* 59  */
36    {0,          0,         0,           0,          0   }, /* 60  */
37@@ -117,32 +97,32 @@
38    {0,          0,         0,           0,          0   }, /* 62  */
39    {0,          0,         0,           0,          0   }, /* 63  */
40    {0,          0,         0,           0,          0   }, /* 64  */
41-   {0x61,       0x41,      0x01,        ALT_A,      0   }, /* 65  */
42-   {0x62,       0x42,      0x02,        ALT_B,      0   }, /* 66  */
43-   {0x63,       0x43,      0x03,        ALT_C,      0   }, /* 67  */
44-   {0x64,       0x44,      0x04,        ALT_D,      0   }, /* 68  */
45-   {0x65,       0x45,      0x05,        ALT_E,      0   }, /* 69  */
46-   {0x66,       0x46,      0x06,        ALT_F,      0   }, /* 70  */
47-   {0x67,       0x47,      0x07,        ALT_G,      0   }, /* 71  */
48-   {0x68,       0x48,      0x08,        ALT_H,      0   }, /* 72  */
49-   {0x69,       0x49,      0x09,        ALT_I,      0   }, /* 73  */
50-   {0x6A,       0x4A,      0x0A,        ALT_J,      0   }, /* 74  */
51-   {0x6B,       0x4B,      0x0B,        ALT_K,      0   }, /* 75  */
52-   {0x6C,       0x4C,      0x0C,        ALT_L,      0   }, /* 76  */
53-   {0x6D,       0x4D,      0x0D,        ALT_M,      0   }, /* 77  */
54-   {0x6E,       0x4E,      0x0E,        ALT_N,      0   }, /* 78  */
55-   {0x6F,       0x4F,      0x0F,        ALT_O,      0   }, /* 79  */
56-   {0x70,       0x50,      0x10,        ALT_P,      0   }, /* 80  */
57-   {0x71,       0x51,      0x11,        ALT_Q,      0   }, /* 81  */
58-   {0x72,       0x52,      0x12,        ALT_R,      0   }, /* 82  */
59-   {0x73,       0x53,      0x13,        ALT_S,      0   }, /* 83  */
60-   {0x74,       0x54,      0x14,        ALT_T,      0   }, /* 84  */
61-   {0x75,       0x55,      0x15,        ALT_U,      0   }, /* 85  */
62-   {0x76,       0x56,      0x16,        ALT_V,      0   }, /* 86  */
63-   {0x77,       0x57,      0x17,        ALT_W,      0   }, /* 87  */
64-   {0x78,       0x58,      0x18,        ALT_X,      0   }, /* 88  */
65-   {0x79,       0x59,      0x19,        ALT_Y,      0   }, /* 89  */
66-   {0x7A,       0x5A,      0x1A,        ALT_Z,      0   }, /* 90  */
67+   {0x61,       0x41,      0x01,        0x61,       0   }, /* 65  */
68+   {0x62,       0x42,      0x02,        0x62,       0   }, /* 66  */
69+   {0x63,       0x43,      0x03,        0x63,       0   }, /* 67  */
70+   {0x64,       0x44,      0x04,        0x64,       0   }, /* 68  */
71+   {0x65,       0x45,      0x05,        0x65,       0   }, /* 69  */
72+   {0x66,       0x46,      0x06,        0x66,       0   }, /* 70  */
73+   {0x67,       0x47,      0x07,        0x67,       0   }, /* 71  */
74+   {0x68,       0x48,      0x08,        0x68,       0   }, /* 72  */
75+   {0x69,       0x49,      0x09,        0x69,       0   }, /* 73  */
76+   {0x6A,       0x4A,      0x0A,        0x6A,       0   }, /* 74  */
77+   {0x6B,       0x4B,      0x0B,        0x6B,       0   }, /* 75  */
78+   {0x6C,       0x4C,      0x0C,        0x6C,       0   }, /* 76  */
79+   {0x6D,       0x4D,      0x0D,        0x6D,       0   }, /* 77  */
80+   {0x6E,       0x4E,      0x0E,        0x6E,       0   }, /* 78  */
81+   {0x6F,       0x4F,      0x0F,        0x6F,       0   }, /* 79  */
82+   {0x70,       0x50,      0x10,        0x70,       0   }, /* 80  */
83+   {0x71,       0x51,      0x11,        0x71,       0   }, /* 81  */
84+   {0x72,       0x52,      0x12,        0x72,       0   }, /* 82  */
85+   {0x73,       0x53,      0x13,        0x73,       0   }, /* 83  */
86+   {0x74,       0x54,      0x14,        0x74,       0   }, /* 84  */
87+   {0x75,       0x55,      0x15,        0x75,       0   }, /* 85  */
88+   {0x76,       0x56,      0x16,        0x76,       0   }, /* 86  */
89+   {0x77,       0x57,      0x17,        0x77,       0   }, /* 87  */
90+   {0x78,       0x58,      0x18,        0x78,       0   }, /* 88  */
91+   {0x79,       0x59,      0x19,        0x79,       0   }, /* 89  */
92+   {0x7A,       0x5A,      0x1A,        0x7A,       0   }, /* 90  */
93    {0,          0,         0,           0,          0   }, /* 91  VK_LWIN    */
94    {0,          0,         0,           0,          0   }, /* 92  VK_RWIN    */
95    {0,          0,         0,           0,          0   }, /* 93  VK_APPS    */
96@@ -194,16 +174,16 @@
97    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
98    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
99    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
100-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
101-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
102-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
103+   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0x3B, 0x3A, 0, 0x3B, 0}, {0x3D, 0x2B, 0, 0x3D, 0},
104+   {0x2C, 0x3C, 0, 0x2C, 0}, {0x2D, 0x5F, 0, 0x2D, 0}, {0x2E, 0x3E, 0, 0x2E, 0}, {0x2F, 0x3F, 0, 0x2F, 0},
105+   {0x60, 0x7E, 0, 0x60, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
106    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
107    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
108    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
109    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
110    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
111    {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
112
113    {0x5B,       0x7B,      0x1B,        ALT_LBRACKET,0  }, /* 219 */
114    {0x5C,       0x7C,      0x1C,        ALT_BSLASH, 0   }, /* 220 */
115    {0x5D,       0x7D,      0x1D,        ALT_RBRACKET,0  }, /* 221 */
116