11#define WIN32_NO_STATUS
18#define ROSDATA static __declspec(allocate(".data"))
21#pragma data_seg(".data")
24#define ROSDATA static __attribute__((section(".data")))
30#define KNUMS KBDNUMPAD|KBDSPECIAL
31#define KMEXT KBDEXT|KBDMULTIVK
40 VK_OEM_MINUS, VK_OEM_PLUS,
VK_BACK,
57 'B',
'N',
'M', VK_OEM_COMMA,
106 { 0x10, VK_MEDIA_PREV_TRACK |
KBDEXT },
107 { 0x19, VK_MEDIA_NEXT_TRACK |
KBDEXT },
109 { 0x20, VK_VOLUME_MUTE |
KBDEXT },
110 { 0x21, VK_LAUNCH_APP2 |
KBDEXT },
111 { 0x22, VK_MEDIA_PLAY_PAUSE |
KBDEXT },
112 { 0x24, VK_MEDIA_STOP |
KBDEXT },
113 { 0x2E, VK_VOLUME_DOWN |
KBDEXT },
114 { 0x30, VK_VOLUME_UP |
KBDEXT },
115 { 0x32, VK_BROWSER_HOME |
KBDEXT },
133 { 0x65, VK_BROWSER_SEARCH |
KBDEXT },
134 { 0x66, VK_BROWSER_FAVORITES |
KBDEXT },
135 { 0x67, VK_BROWSER_REFRESH |
KBDEXT },
136 { 0x68, VK_BROWSER_STOP |
KBDEXT },
137 { 0x69, VK_BROWSER_FORWARD |
KBDEXT },
138 { 0x6A, VK_BROWSER_BACK |
KBDEXT },
139 { 0x6B, VK_LAUNCH_APP1 |
KBDEXT },
140 { 0x6C, VK_LAUNCH_MAIL |
KBDEXT },
141 { 0x6D, VK_LAUNCH_MEDIA_SELECT |
KBDEXT },
169 {
VK_TAB, 0, {
'\t',
'\t'} },
170 {
VK_ADD, 0, {
'+',
'+' } },
178 {
'2', 0, {
'2',
'@', 0x00b2} },
179 {
'K',
CAPLOK, {
'k',
'K', 0x0138} },
184 {
'1', 0, {
'1',
'!', 0x00b9, 0x00a1 } },
185 {
'3', 0, {
'3',
'#', 0x00b3, 0x00a3 } },
186 {
'4', 0, {
'4',
'$', 0x00bc, 0x00a4 } },
187 {
'5', 0, {
'5',
'%', 0x00bd, 0x215c } },
188 {
'6', 0, {
'6',
'?', 0x00be, 0x215d } },
189 { VK_OEM_MINUS,0, {
'-',
'_',
WCH_NONE, 0x00bf } },
191 {
'W',
CAPLOK, {
'w',
'W', 0x0142, 0x0141 } },
192 {
'E',
CAPLOK, {
'e',
'E', 0x0153, 0x0152 } },
193 {
'R',
CAPLOK, {
'r',
'R', 0x00b6, 0x00ae } },
194 {
'T',
CAPLOK, {
't',
'T', 0x0167, 0x0166 } },
195 {
'Y',
CAPLOK, {
'y',
'Y', 0x2190, 0x00a5 } },
196 {
'U',
CAPLOK, {
'u',
'U', 0x2193, 0x2191 } },
197 {
'I',
CAPLOK, {
'i',
'I', 0x2192, 0x0131 } },
198 {
'O',
CAPLOK, {
'o',
'O', 0x00f8, 0x00d8 } },
199 {
'P',
CAPLOK, {
'p',
'P', 0x00fe, 0x00de } },
202 {
'A',
CAPLOK, {
'a',
'A', 0x00e6, 0x00c6 } },
203 {
'S',
CAPLOK, {
's',
'S', 0x00df, 0x00a7 } },
204 {
'D',
CAPLOK, {
'd',
'D', 0x00f0, 0x00d0 } },
206 {
'G',
CAPLOK, {
'g',
'G', 0x014b, 0x014a } },
207 {
'H',
CAPLOK, {
'h',
'H', 0x0127, 0x0126 } },
208 {
'J',
CAPLOK, {
'j',
'J', 0x0133, 0x0132 } },
209 {
'L',
CAPLOK, {
'l',
'L', 0x0140, 0x013f } },
212 {
'C',
CAPLOK, {
'c',
'C', 0x00a2, 0x00a9 } },
213 {
'V',
CAPLOK, {
'v',
'V', 0x201c, 0x2018 } },
214 {
'B',
CAPLOK, {
'b',
'B', 0x201d, 0x2019 } },
215 {
'N',
CAPLOK, {
'n',
'N', 0x0149, 0x266a } },
216 {
'M',
CAPLOK, {
'm',
'M', 0x00b5, 0x00ba } },
225 {
'7', 0, {
'7',
'&',
WCH_NONE, 0x215e,
'{' } },
226 {
'8', 0, {
'8',
'*',
WCH_NONE, 0x2122,
'}' } },
227 {
'9', 0, {
'9',
'(',
WCH_NONE, 0x00b1,
'[' } },
232 { 0xff, 0, {
'^', 0x00a8,
WCH_NONE, 0x02da,
'`' } },
239 { VK_OEM_COMMA, 0, {
',',
'\'', 0x2015, 0x00d7,
'<' } },
240 { VK_OEM_PERIOD,0, {
'.',
'\"',
WCH_DEAD, 0x00f7,
'>' } },
246 {
VK_SPACE, 0, {
' ',
' ',
' ',
' ', 0x00a0,
' ' } },
268#define vk_master(n,x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) }
282 { 0x0e,
L"Backspace" },
287 { 0x36,
L"Right Shift" },
291 { 0x3a,
L"CAPLOK Lock" },
303 { 0x46,
L"Scroll Lock" },
316 { 0x53,
L"Num Del" },
317 { 0x54,
L"Sys Req" },
336 { 0x1c,
L"Num Enter" },
337 { 0x1d,
L"Right Control" },
339 { 0x37,
L"Prnt Scrn" },
340 { 0x38,
L"Right Alt" },
341 { 0x45,
L"Num Lock" },
345 { 0x49,
L"Page Up" },
351 { 0x51,
L"Page Down" },
354 { 0x54,
L"<ReactOS>" },
356 { 0x5b,
L"Left <ReactOS>" },
357 { 0x5c,
L"Right <ReactOS>" },
358 { 0x5d,
L"Application" },
363 L"\x00b4" L"ACCENT AIGU",
364 L"`" L"ACCENT GRAVE",
365 L"^" L"ACCENT CIRCONFLEXE",
367 L"\x00b8" L"CEDILLE",
371#define DEADTRANS(ch, accent, comp, flags) MAKELONG(ch, accent), comp, flags
#define DEADTRANS(ch, accent, comp, flags)
ROSDATA DEADKEY dead_key[]
ROSDATA VSC_LPWSTR extended_key_names[]
ROSDATA USHORT scancode_to_vk[]
ROSDATA VK_TO_WCHARS1 keypad_numbers[]
ROSDATA MODIFIERS modifier_bits
ROSDATA VK_TO_WCHARS4 key_to_chars_4mod[]
ROSDATA VSC_LPWSTR key_names[]
INT WINAPI DllMain(PVOID hinstDll, ULONG dwReason, PVOID reserved)
ROSDATA VSC_VK extcode0_to_vk[]
ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[]
ROSDATA VK_TO_WCHARS3 key_to_chars_3mod[]
ROSDATA VK_TO_WCHARS5 key_to_chars_5mod[]
ROSDATA VK_TO_WCHARS2 key_to_chars_2mod[]
ROSDATA DEADKEY_LPWSTR dead_key_names[]
ROSDATA VK_TO_WCHARS6 key_to_chars_6mod[]
ROSDATA VK_TO_BIT modifier_keys[]
ROSDATA VSC_VK extcode1_to_vk[]
ROSDATA KBDTABLES keyboard_layout_table
PKBDTABLES WINAPI KbdLayerDescriptor()