minix/drivers/tty/keymaps/dvorak.src

112 lines
7.1 KiB
Text
Raw Normal View History

2006-01-23 10:28:04 +01:00
/* Keymap for Dvorak keyboard.
* Contributed by: Ulrich Hobelmann <u.hobelmann@web.de>
*/
/* scan-code !Shift Shift Alt1 Alt2 Alt+Sh Ctrl */
/* ==================================================================== */
Input infrastructure, INPUT server, PCKBD driver This commit separates the low-level keyboard driver from TTY, putting it in a separate driver (PCKBD). The commit also separates management of raw input devices from TTY, and puts it in a separate server (INPUT). All keyboard and mouse input from hardware is sent by drivers to the INPUT server, which either sends it to a process that has opened a raw input device, or otherwise forwards it to TTY for standard processing. Design by Dirk Vogt. Prototype by Uli Kastlunger. Additional changes made to the prototype: - the event communication is now based on USB HID codes; all input drivers have to use USB codes to describe events; - all TTY keymaps have been converted to USB format, with the effect that a single keymap covers all keys; there is no (static) escaped keymap anymore; - further keymap tweaks now allow remapping of literally all keys; - input device renumbering and protocol rewrite; - INPUT server rewrite, with added support for cancel and select; - PCKBD reimplementation, including PC/AT-to-USB translation; - support for manipulating keyboard LEDs has been added; - keyboard and mouse multiplexer devices have been added to INPUT, primarily so that an X server need only open two devices; - a new "libinputdriver" library abstracts away protocol details from input drivers, and should be used by all future input drivers; - both INPUT and PCKBD can be restarted; - TTY is now scheduled by KERNEL, so that it won't be punished for running a lot; without this, simply running "yes" on the console kills the system; - the KIOCBELL IOCTL has been moved to /dev/console; - support for the SCANCODES termios setting has been removed; - obsolete keymap compression has been removed; - the obsolete Olivetti M24 keymap has been removed. Change-Id: I3a672fb8c4fd566734e4b46d3994b4b7fc96d578
2013-09-28 14:46:21 +02:00
K(A) = { L('a'), 'A', A('a'), A('a'), A('A'), C('A') },
K(B) = { L('x'), 'X', A('x'), A('x'), A('X'), C('X') },
K(C) = { L('j'), 'J', A('j'), A('j'), A('J'), C('J') },
K(D) = { L('e'), 'E', A('e'), A('e'), A('E'), C('E') },
K(E) = { '.', '>', A('.'), A('.'), A('>'), C('@') },
K(F) = { L('u'), 'U', A('u'), A('u'), A('U'), C('U') },
K(G) = { L('i'), 'I', A('i'), A('i'), A('I'), C('I') },
K(H) = { L('d'), 'D', A('d'), A('d'), A('D'), C('D') },
K(I) = { L('c'), 'C', A('c'), A('c'), A('C'), C('C') },
K(J) = { L('h'), 'H', A('h'), A('h'), A('H'), C('H') },
K(K) = { L('t'), 'T', A('t'), A('t'), A('T'), C('T') },
K(L) = { L('n'), 'N', A('n'), A('n'), A('N'), C('N') },
K(M) = { L('m'), 'M', A('m'), A('m'), A('M'), C('M') },
K(N) = { L('b'), 'B', A('b'), A('b'), A('B'), C('B') },
K(O) = { L('r'), 'R', A('r'), A('r'), A('R'), C('R') },
K(P) = { L('l'), 'L', A('l'), A('l'), A('L'), C('L') },
K(Q) = { '\'', '"', A('\''),A('\''),A('"'), C('@') },
K(R) = { L('p'), 'P', A('p'), A('p'), A('P'), C('P') },
K(S) = { L('o'), 'O', A('o'), A('o'), A('O'), C('O') },
K(T) = { L('y'), 'Y', A('y'), A('y'), A('Y'), C('Y') },
K(U) = { L('g'), 'G', A('g'), A('g'), A('G'), C('G') },
K(V) = { L('k'), 'K', A('k'), A('k'), A('K'), C('K') },
K(W) = { ',', '<', A(','), A(','), A('<'), C('@') },
K(X) = { L('q'), 'Q', A('q'), A('q'), A('Q'), C('Q') },
K(Y) = { L('f'), 'F', A('f'), A('f'), A('F'), C('F') },
K(Z) = { ';', ':', A(';'), A(';'), A(':'), C('@') },
K(1) = { '1', '!', A('1'), A('1'), A('!'), C('A') },
K(2) = { '2', '@', A('2'), A('2'), A('@'), C('@') },
K(3) = { '3', '#', A('3'), A('3'), A('#'), C('C') },
K(4) = { '4', '$', A('4'), A('4'), A('$'), C('D') },
K(5) = { '5', '%', A('5'), A('5'), A('%'), C('E') },
K(6) = { '6', '^', A('6'), A('6'), A('^'), C('^') },
K(7) = { '7', '&', A('7'), A('7'), A('&'), C('G') },
K(8) = { '8', '*', A('8'), A('8'), A('*'), C('H') },
K(9) = { '9', '(', A('9'), A('9'), A('('), C('I') },
K(0) = { '0', ')', A('0'), A('0'), A(')'), C('@') },
K(ENTER) = { C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J') },
K(ESCAPE) = { C('['), C('['), CA('['),CA('['),CA('['),C('[') },
K(BACKSPACE) = { C('H'), C('H'), CA('H'),CA('H'),CA('H'),DEL },
K(TAB) = { C('I'), C('I'), CA('I'),CA('I'),CA('I'),C('I') },
K(SPACEBAR) = { ' ', ' ', A(' '), A(' '), A(' '), C('@') },
K(DASH) = { '[', '{', A('['), A('['), A('}'), C(']') },
K(EQUAL) = { ']', '}', A(']'), A(']'), A('}'), C(']') },
K(OPEN_BRACKET) = { '/', '?', A('/'), A('/'), A('?'), C('@') },
K(CLOSE_BRACKET) = { '=', '+', A('='), A('='), A('+'), C('@') },
K(BACKSLASH) = { '\\', '|', A('\\'),A('\\'),A('|'), C('\\') },
K(SEMICOLON) = { L('s'), 'S', A('s'), A('s'), A('S'), C('S') },
K(APOSTROPH) = { '-', '_', A('-'), A('-'), A('_'), C('_') },
K(GRAVE_ACCENT) = { '`', '~', A('`'), A('`'), A('~'), C('@') },
K(COMMA) = { L('w'), 'W', A('w'), A('w'), A('W'), C('W') },
K(PERIOD) = { L('v'), 'V', A('v'), A('v'), A('V'), C('V') },
K(SLASH) = { L('z'), 'Z', A('z'), A('z'), A('Z'), C('Z') },
K(CAPS_LOCK) = { CALOCK, CALOCK, CALOCK, CALOCK, CALOCK, CALOCK },
K(F1) = { F1, SF1, AF1, AF1, ASF1, CF1 },
K(F2) = { F2, SF2, AF2, AF2, ASF2, CF2 },
K(F3) = { F3, SF3, AF3, AF3, ASF3, CF3 },
K(F4) = { F4, SF4, AF4, AF4, ASF4, CF4 },
K(F5) = { F5, SF5, AF5, AF5, ASF5, CF5 },
K(F6) = { F6, SF6, AF6, AF6, ASF6, CF6 },
K(F7) = { F7, SF7, AF7, AF7, ASF7, CF7 },
K(F8) = { F8, SF8, AF8, AF8, ASF8, CF8 },
K(F9) = { F9, SF9, AF9, AF9, ASF9, CF9 },
K(F10) = { F10, SF10, AF10, AF10, ASF10, CF10 },
K(F11) = { F11, SF11, AF11, AF11, ASF11, CF11 },
K(F12) = { F12, SF12, AF12, AF12, ASF12, CF12 },
K(SCROLL_LOCK) = { SLOCK, SLOCK, SLOCK, SLOCK, SLOCK, SLOCK },
K(INSERT) = { INSRT, INSRT, AINSRT, AINSRT, AINSRT, CINSRT },
K(HOME) = { HOME, HOME, AHOME, AHOME, AHOME, CHOME },
K(PAGE_UP) = { PGUP, PGUP, APGUP, APGUP, APGUP, CPGUP },
K(DELETE) = { DEL, DEL, A(DEL), A(DEL), A(DEL), DEL },
K(END) = { END, END, AEND, AEND, AEND, CEND },
K(PAGE_DOWN) = { PGDN, PGDN, APGDN, APGDN, APGDN, CPGDN },
K(RIGHT_ARROW) = { RIGHT, RIGHT, ARIGHT, ARIGHT, ARIGHT, CRIGHT },
K(LEFT_ARROW) = { LEFT, LEFT, ALEFT, ALEFT, ALEFT, CLEFT },
K(DOWN_ARROW) = { DOWN, DOWN, ADOWN, ADOWN, ADOWN, CDOWN },
K(UP_ARROW) = { UP, UP, AUP, AUP, AUP, CUP },
K(NUM_LOCK) = { NLOCK, NLOCK, NLOCK, NLOCK, NLOCK, NLOCK },
K(KP_SLASH) = { '/', '/', A('/'), A('/'), A('/'), C('@') },
Input infrastructure, INPUT server, PCKBD driver This commit separates the low-level keyboard driver from TTY, putting it in a separate driver (PCKBD). The commit also separates management of raw input devices from TTY, and puts it in a separate server (INPUT). All keyboard and mouse input from hardware is sent by drivers to the INPUT server, which either sends it to a process that has opened a raw input device, or otherwise forwards it to TTY for standard processing. Design by Dirk Vogt. Prototype by Uli Kastlunger. Additional changes made to the prototype: - the event communication is now based on USB HID codes; all input drivers have to use USB codes to describe events; - all TTY keymaps have been converted to USB format, with the effect that a single keymap covers all keys; there is no (static) escaped keymap anymore; - further keymap tweaks now allow remapping of literally all keys; - input device renumbering and protocol rewrite; - INPUT server rewrite, with added support for cancel and select; - PCKBD reimplementation, including PC/AT-to-USB translation; - support for manipulating keyboard LEDs has been added; - keyboard and mouse multiplexer devices have been added to INPUT, primarily so that an X server need only open two devices; - a new "libinputdriver" library abstracts away protocol details from input drivers, and should be used by all future input drivers; - both INPUT and PCKBD can be restarted; - TTY is now scheduled by KERNEL, so that it won't be punished for running a lot; without this, simply running "yes" on the console kills the system; - the KIOCBELL IOCTL has been moved to /dev/console; - support for the SCANCODES termios setting has been removed; - obsolete keymap compression has been removed; - the obsolete Olivetti M24 keymap has been removed. Change-Id: I3a672fb8c4fd566734e4b46d3994b4b7fc96d578
2013-09-28 14:46:21 +02:00
K(KP_STAR) = { '*', '*', A('*'), A('*'), A('*'), C('@') },
K(KP_DASH) = { '-', '-', AMIN, AMIN, A('-'), CNMIN },
Input infrastructure, INPUT server, PCKBD driver This commit separates the low-level keyboard driver from TTY, putting it in a separate driver (PCKBD). The commit also separates management of raw input devices from TTY, and puts it in a separate server (INPUT). All keyboard and mouse input from hardware is sent by drivers to the INPUT server, which either sends it to a process that has opened a raw input device, or otherwise forwards it to TTY for standard processing. Design by Dirk Vogt. Prototype by Uli Kastlunger. Additional changes made to the prototype: - the event communication is now based on USB HID codes; all input drivers have to use USB codes to describe events; - all TTY keymaps have been converted to USB format, with the effect that a single keymap covers all keys; there is no (static) escaped keymap anymore; - further keymap tweaks now allow remapping of literally all keys; - input device renumbering and protocol rewrite; - INPUT server rewrite, with added support for cancel and select; - PCKBD reimplementation, including PC/AT-to-USB translation; - support for manipulating keyboard LEDs has been added; - keyboard and mouse multiplexer devices have been added to INPUT, primarily so that an X server need only open two devices; - a new "libinputdriver" library abstracts away protocol details from input drivers, and should be used by all future input drivers; - both INPUT and PCKBD can be restarted; - TTY is now scheduled by KERNEL, so that it won't be punished for running a lot; without this, simply running "yes" on the console kills the system; - the KIOCBELL IOCTL has been moved to /dev/console; - support for the SCANCODES termios setting has been removed; - obsolete keymap compression has been removed; - the obsolete Olivetti M24 keymap has been removed. Change-Id: I3a672fb8c4fd566734e4b46d3994b4b7fc96d578
2013-09-28 14:46:21 +02:00
K(KP_PLUS) = { '+', '+', APLUS, APLUS, A('+'), CPLUS },
K(KP_ENTER) = { C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J') },
K(KP_1) = { NEND, '1', AEND, AEND, A('1'), CEND },
K(KP_2) = { NDOWN, '2', ADOWN, ADOWN, A('2'), CDOWN },
K(KP_3) = { NPGDN, '3', APGDN, APGDN, A('3'), CPGDN },
K(KP_4) = { NLEFT, '4', ALEFT, ALEFT, A('4'), CLEFT },
K(KP_5) = { NMID, '5', AMID, AMID, A('5'), CMID },
K(KP_6) = { NRIGHT, '6', ARIGHT, ARIGHT, A('6'), CRIGHT },
K(KP_7) = { NHOME, '7', AHOME, AHOME, A('7'), CHOME },
K(KP_8) = { NUP, '8', AUP, AUP, A('8'), CUP },
K(KP_9) = { NPGUP, '9', APGUP, APGUP, A('9'), CPGUP },
K(KP_0) = { NINSRT, '0', AINSRT, AINSRT, A('0'), CINSRT },
K(KP_PERIOD) = { NDEL, '.', A(DEL), A(DEL), A('.'), DEL },
K(EUROPE_2) = { '<', '>', A('<'), A('|'), A('>'), C('@') },
K(APPLICATION) = { C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J') },
K(SYSREQ) = { C('M'), C('M'), CA('M'),CA('M'),CA('M'),C('J') },
K(LEFT_CTRL) = { LCTRL, LCTRL, LCTRL, LCTRL, LCTRL, LCTRL },
K(LEFT_SHIFT) = { LSHIFT, LSHIFT, LSHIFT, LSHIFT, LSHIFT, LSHIFT },
K(LEFT_ALT) = { LALT, LALT, LALT, LALT, LALT, LALT },
K(LEFT_GUI) = { LEFT, '<', ALEFT, ALEFT, A('<'), CLEFT },
K(RIGHT_CTRL) = { RCTRL, RCTRL, RCTRL, RCTRL, RCTRL, RCTRL },
K(RIGHT_SHIFT) = { RSHIFT, RSHIFT, RSHIFT, RSHIFT, RSHIFT, RSHIFT },
K(RIGHT_ALT) = { RALT, RALT, RALT, RALT, RALT, RALT },
K(RIGHT_GUI) = { RIGHT, '>', ARIGHT, ARIGHT, A('>'), CRIGHT }