📄 hpkeymap.c
字号:
KB_Swiss_French2, /* HIL=12h */ KB_Euro_Spanish, /* HIL=13h */ KB_Swiss_German2, /* HIL=14h */ KB_Belgian, /* HIL=15h */ KB_Finnish, /* HIL=16h */ KB_UK_English, /* HIL=17h */ KB_Canada_French, /* HIL=18h */ KB_Swiss_German, /* HIL=19h */ KB_Norwegian, /* HIL=1Ah */ KB_French, /* HIL=1Bh */ KB_Danish, /* HIL=1Ch */ KB_Katakana, /* HIL=1Dh */ KB_Latin_Spanish, /* HIL=1Eh */ KB_US_English, /* HIL=1Fh */ }; if (hil_id == 0x30) return KB_BUTTON_BOX; if (hil_id == 0x5c) return KB_US_English; /* Barcode reader */ if (0xE0 <= hil_id && hil_id <= 0xFF) /* PS2 keyboard: 0xE0 - 0xFF */ return (91 - (hil_id - 0xE0)); /* 60 - 91 */ if (0xC0 <= hil_id && hil_id <= 0xDF) /* ITF keyboard: 0xC0 - 0xDF */ return key_tab[hil_id & 0x1f]; /* 0 - 31 */ /* Something unknown or not yet supported (such as a nonkbd device (like * the ID module)). */ return KB_NULL;}#endif /* __hpux */#if __apollo#include "ap_keysym.h" /* for the apXK_ keysyms */static KeySym Apollo_NorthAmericanMap[] = { /* code values in comments at line end are actual value reported on HIL. REMEMBER, there is an offset of MIN_KEYCODE applied to this table! */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x00 */ XK_Select, XK_Insert, NoSymbol, NoSymbol, /* 0x01 */ apXK_LineDel, NoSymbol, NoSymbol, NoSymbol, /* 0x02 */ apXK_CharDel, NoSymbol, NoSymbol, NoSymbol, /* 0x03 */ XK_F10, NoSymbol, NoSymbol, NoSymbol, /* 0x04 */ XK_F1, NoSymbol, NoSymbol, NoSymbol, /* 0x05 */ XK_F2, NoSymbol, NoSymbol, NoSymbol, /* 0x06 */ XK_F3, NoSymbol, NoSymbol, NoSymbol, /* 0x07 */ XK_F4, NoSymbol, NoSymbol, NoSymbol, /* 0x08 */ XK_F5, NoSymbol, NoSymbol, NoSymbol, /* 0x09 */ XK_F6, NoSymbol, NoSymbol, NoSymbol, /* 0x0a */ XK_F7, NoSymbol, NoSymbol, NoSymbol, /* 0x0b */ XK_F8, NoSymbol, NoSymbol, NoSymbol, /* 0x0c */ XK_F9, NoSymbol, NoSymbol, NoSymbol, /* 0x0d */ XK_Redo, NoSymbol, NoSymbol, NoSymbol, /* 0x0e */ apXK_Read, NoSymbol, NoSymbol, NoSymbol, /* 0x0f */ apXK_Edit, apXK_Save, NoSymbol, NoSymbol, /* 0x10 */ apXK_Exit, XK_Cancel, NoSymbol, NoSymbol, /* 0x11 */ XK_Pause, XK_Help, NoSymbol, NoSymbol, /* 0x12 */ apXK_Copy, apXK_Cut, NoSymbol, NoSymbol, /* 0x13 */ apXK_Paste, XK_Undo, NoSymbol, NoSymbol, /* 0x14 */ apXK_Grow, apXK_Move, NoSymbol, NoSymbol, /* 0x15 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x16 */ XK_Escape, NoSymbol, NoSymbol, NoSymbol, /* 0x17 */ XK_1, XK_exclam, NoSymbol, NoSymbol, /* 0x18 */ XK_2, XK_at, NoSymbol, NoSymbol, /* 0x19 */ XK_3, XK_numbersign, NoSymbol, NoSymbol, /* 0x1a */ XK_4, XK_dollar, NoSymbol, NoSymbol, /* 0x1b */ XK_5, XK_percent, NoSymbol, NoSymbol, /* 0x1c */ XK_6, XK_asciicircum, NoSymbol, NoSymbol, /* 0x1d */ XK_7, XK_ampersand, NoSymbol, NoSymbol, /* 0x1e */ XK_8, XK_asterisk, NoSymbol, NoSymbol, /* 0x1f */ XK_9, XK_parenleft, NoSymbol, NoSymbol, /* 0x20 */ XK_0, XK_parenright, NoSymbol, NoSymbol, /* 0x21 */ XK_minus, XK_underscore, NoSymbol, NoSymbol, /* 0x22 */ XK_equal, XK_plus, NoSymbol, NoSymbol, /* 0x23 */ XK_quoteleft, XK_asciitilde, NoSymbol, NoSymbol, /* 0x24 */ XK_BackSpace, NoSymbol, NoSymbol, NoSymbol, /* 0x25 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x26 */ apXK_LeftBar, NoSymbol, NoSymbol, NoSymbol, /* 0x27 */ apXK_Cmd, apXK_Shell, NoSymbol, NoSymbol, /* 0x28 */ apXK_RightBar, NoSymbol, NoSymbol, NoSymbol, /* 0x29 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x2a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x2b */ XK_Tab, NoSymbol, NoSymbol, NoSymbol, /* 0x2c */ XK_Q, NoSymbol, NoSymbol, NoSymbol, /* 0x2d */ XK_W, NoSymbol, NoSymbol, NoSymbol, /* 0x2e */ XK_E, NoSymbol, NoSymbol, NoSymbol, /* 0x2f */ XK_R, NoSymbol, NoSymbol, NoSymbol, /* 0x30 */ XK_T, NoSymbol, NoSymbol, NoSymbol, /* 0x31 */ XK_Y, NoSymbol, NoSymbol, NoSymbol, /* 0x32 */ XK_U, NoSymbol, NoSymbol, NoSymbol, /* 0x33 */ XK_I, NoSymbol, NoSymbol, NoSymbol, /* 0x34 */ XK_O, NoSymbol, NoSymbol, NoSymbol, /* 0x35 */ XK_P, NoSymbol, NoSymbol, NoSymbol, /* 0x36 */ XK_bracketleft, XK_braceleft, NoSymbol, NoSymbol, /* 0x37 */ XK_bracketright, XK_braceright, NoSymbol, NoSymbol, /* 0x38 */ XK_Mode_switch, NoSymbol, NoSymbol, NoSymbol, /* 0x39 */ XK_Delete, NoSymbol, NoSymbol, NoSymbol, /* 0x3a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x3b */ XK_KP_7, NoSymbol, NoSymbol, NoSymbol, /* 0x3c */ XK_KP_8, NoSymbol, NoSymbol, NoSymbol, /* 0x3d */ XK_KP_9, NoSymbol, NoSymbol, NoSymbol, /* 0x3e */ XK_KP_Add, NoSymbol, NoSymbol, NoSymbol, /* 0x3f */ apXK_LeftBox, NoSymbol, NoSymbol, NoSymbol, /* 0x40 */ XK_Up, NoSymbol, NoSymbol, NoSymbol, /* 0x41 */ apXK_RightBox, NoSymbol, NoSymbol, NoSymbol, /* 0x42 */ XK_Control_L, NoSymbol, NoSymbol, NoSymbol, /* 0x43 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x44 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x45 */ XK_A, NoSymbol, NoSymbol, NoSymbol, /* 0x46 */ XK_S, NoSymbol, NoSymbol, NoSymbol, /* 0x47 */ XK_D, NoSymbol, NoSymbol, NoSymbol, /* 0x48 */ XK_F, NoSymbol, NoSymbol, NoSymbol, /* 0x49 */ XK_G, NoSymbol, NoSymbol, NoSymbol, /* 0x4a */ XK_H, NoSymbol, NoSymbol, NoSymbol, /* 0x4b */ XK_J, NoSymbol, NoSymbol, NoSymbol, /* 0x4c */ XK_K, NoSymbol, NoSymbol, NoSymbol, /* 0x4d */ XK_L, NoSymbol, NoSymbol, NoSymbol, /* 0x4e */ XK_semicolon, XK_colon, NoSymbol, NoSymbol, /* 0x4f */ XK_quoteright, XK_quotedbl, NoSymbol, NoSymbol, /* 0x50 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x51 */ XK_Return, NoSymbol, NoSymbol, NoSymbol, /* 0x52 */ XK_backslash, XK_bar, NoSymbol, NoSymbol, /* 0x53 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x54 */ XK_KP_4, NoSymbol, NoSymbol, NoSymbol, /* 0x55 */ XK_KP_5, NoSymbol, NoSymbol, NoSymbol, /* 0x56 */ XK_KP_6, NoSymbol, NoSymbol, NoSymbol, /* 0x57 */ XK_KP_Subtract, NoSymbol, NoSymbol, NoSymbol, /* 0x58 */ XK_Left, NoSymbol, NoSymbol, NoSymbol, /* 0x59 */ XK_Next, NoSymbol, NoSymbol, NoSymbol, /* 0x5a */ XK_Right, NoSymbol, NoSymbol, NoSymbol, /* 0x5b */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x5c */ apXK_Repeat, NoSymbol, NoSymbol, NoSymbol, /* 0x5d */ XK_Shift_L, NoSymbol, NoSymbol, NoSymbol, /* 0x5e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x5f */ XK_Z, NoSymbol, NoSymbol, NoSymbol, /* 0x60 */ XK_X, NoSymbol, NoSymbol, NoSymbol, /* 0x61 */ XK_C, NoSymbol, NoSymbol, NoSymbol, /* 0x62 */ XK_V, NoSymbol, NoSymbol, NoSymbol, /* 0x63 */ XK_B, NoSymbol, NoSymbol, NoSymbol, /* 0x64 */ XK_N, NoSymbol, NoSymbol, NoSymbol, /* 0x65 */ XK_M, NoSymbol, NoSymbol, NoSymbol, /* 0x66 */ XK_comma, XK_less, NoSymbol, NoSymbol, /* 0x67 */ XK_period, XK_greater, NoSymbol, NoSymbol, /* 0x68 */ XK_slash, XK_question, NoSymbol, NoSymbol, /* 0x69 */ XK_Shift_R, NoSymbol, NoSymbol, NoSymbol, /* 0x6a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x6b */ apXK_Pop, NoSymbol, NoSymbol, NoSymbol, /* 0x6c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x6d */ XK_KP_1, NoSymbol, NoSymbol, NoSymbol, /* 0x6e */ XK_KP_2, NoSymbol, NoSymbol, NoSymbol, /* 0x6f */ XK_KP_3, NoSymbol, NoSymbol, NoSymbol, /* 0x70 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x71 */ apXK_UpBox, NoSymbol, NoSymbol, NoSymbol, /* 0x72 */ XK_Down, NoSymbol, NoSymbol, NoSymbol, /* 0x73 */ apXK_DownBox, NoSymbol, NoSymbol, NoSymbol, /* 0x74 */ XK_Alt_L, NoSymbol, NoSymbol, NoSymbol, /* 0x75 */ XK_space, NoSymbol, NoSymbol, NoSymbol, /* 0x76 */ XK_Alt_R, NoSymbol, NoSymbol, NoSymbol, /* 0x77 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x78 */ XK_KP_0, NoSymbol, NoSymbol, NoSymbol, /* 0x79 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x7a */ XK_KP_Decimal, NoSymbol, NoSymbol, NoSymbol, /* 0x7b */ XK_KP_Enter, NoSymbol, NoSymbol, NoSymbol, /* 0x7c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x7d */ XK_Caps_Lock, NoSymbol, NoSymbol, NoSymbol, /* 0x7e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x7f */};#endif /* __apollo */static KeySym LPFKMap[] = { XK_exclam, NoSymbol, NoSymbol, NoSymbol, /* 0x21 */ XK_quotedbl, NoSymbol, NoSymbol, NoSymbol, /* 0x22 */ XK_numbersign, NoSymbol, NoSymbol, NoSymbol, /* 0x23 */ XK_dollar, NoSymbol, NoSymbol, NoSymbol, /* 0x24 */ XK_percent, NoSymbol, NoSymbol, NoSymbol, /* 0x25 */ XK_ampersand, NoSymbol, NoSymbol, NoSymbol, /* 0x26 */ XK_quoteright, NoSymbol, NoSymbol, NoSymbol, /* 0x27 */ XK_parenleft, NoSymbol, NoSymbol, NoSymbol, /* 0x28 */ XK_parenright, NoSymbol, NoSymbol, NoSymbol, /* 0x29 */ XK_asterisk, NoSymbol, NoSymbol, NoSymbol, /* 0x2a */ XK_plus, NoSymbol, NoSymbol, NoSymbol, /* 0x2b */ XK_comma, NoSymbol, NoSymbol, NoSymbol, /* 0x2c */ XK_minus, NoSymbol, NoSymbol, NoSymbol, /* 0x2d */ XK_period, NoSymbol, NoSymbol, NoSymbol, /* 0x2e */ XK_slash, NoSymbol, NoSymbol, NoSymbol, /* 0x2f */ XK_0, NoSymbol, NoSymbol, NoSymbol, /* 0x30 */ XK_1, NoSymbol, NoSymbol, NoSymbol, /* 0x31 */ XK_2, NoSymbol, NoSymbol, NoSymbol, /* 0x32 */ XK_3, NoSymbol, NoSymbol, NoSymbol, /* 0x33 */ XK_4, NoSymbol, NoSymbol, NoSymbol, /* 0x34 */ XK_5, NoSymbol, NoSymbol, NoSymbol, /* 0x35 */ XK_6, NoSymbol, NoSymbol, NoSymbol, /* 0x36 */ XK_7, NoSymbol, NoSymbol, NoSymbol, /* 0x37 */ XK_8, NoSymbol, NoSymbol, NoSymbol, /* 0x38 */ XK_9, NoSymbol, NoSymbol, NoSymbol, /* 0x39 */ XK_colon, NoSymbol, NoSymbol, NoSymbol, /* 0x3a */ XK_semicolon, NoSymbol, NoSymbol, NoSymbol, /* 0x3b */ XK_less, NoSymbol, NoSymbol, NoSymbol, /* 0x3c */ XK_equal, NoSymbol, NoSymbol, NoSymbol, /* 0x3d */ XK_greater, NoSymbol, NoSymbol, NoSymbol, /* 0x3e */ XK_question, NoSymbol, NoSymbol, NoSymbol, /* 0x3f */ XK_at, NoSymbol, NoSymbol, NoSymbol, /* 0x40 */};KeySymsRec LPFKKeySyms = {LPFKMap, 0x21, 0x40, 4}; /* This structure has ONE default KeySymsRec per keyboard family per OS * that is used in case we can't look up the correct one. * Notes: * All key maps SHOULD start at MIN_KEYCODE (aka 0) except HP-UX, * where the exteneded keyboard keymaps start at 2 (because the * extended keyboards didn't generate keycodes 0 and 1). The PS2 * keyboards generate keycodes starting at 0 so they need a * different MIN_KEYCODE. * These default keymaps are overwritten so they should contain at * least enough entries so that the largest keytable will fit. In * most cases this means that last entry is 0x7f and the keymap size * is max-entries x width == 0x80 x 4. */static KeySymsRec DefaultKeySyms[] = { /* map name minKeyCode maxKC width */#if defined(__hpux) || defined(__hp_osf) || defined(hp9000) &USASCIIMap[8], (MIN_KEYCODE + 0x02), (MIN_KEYCODE + 0x7F), 4, USASCIIMap, (MIN_KEYCODE), (MIN_KEYCODE + 0x7F), 4, null_keymap, (MIN_KEYCODE), (MIN_KEYCODE + 0x7F), 2,#endif#if __apollo Apollo_NorthAmericanMap, (MIN_KEYCODE), (MIN_KEYCODE + 0x7F), 4,#endif}; /* Convert a X keyboard ID into a family. * Input: X keyboard ID * Returns: * 0 (ITF) * 1 (PS2) * 2 (null or unknown device) * 0 Apollo */static int kbd_family(key_id){ int n;#if defined(__hpux) || defined(__hp_osf) || defined(hp9000) if ( 0 <= key_id && key_id <= 31) n = 0; /* ITF keyboard */ else if (60 <= key_id && key_id <= 91) n = 1; /* PS2 keyboard */ else n = 2; /* KB_NULL */#endif#if __apollo n = 0;#endif return n;} /* This routine is called to get a pointer to a KeySymRec so you can * overwrite the key table with the correct one for the keyboard * connected to the system. */KeySymsRec *hpKeySyms(key_id){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -