# Kernel keymap for Macintoshes. This uses 7 modifier combinations. keymaps 0-2,4-5,8,12 # We use the Command (pretzel) key as Alt, and the Option key as AltGr. # keycode 0x00 = a altgr keycode 0x00 = Hex_A keycode 0x01 = s keycode 0x02 = d altgr keycode 0x02 = Hex_D keycode 0x03 = f altgr keycode 0x03 = Hex_F keycode 0x04 = h keycode 0x05 = g keycode 0x06 = z keycode 0x07 = x keycode 0x08 = c altgr keycode 0x08 = Hex_C keycode 0x09 = v keycode 0x0a = keycode 0x0b = b altgr keycode 0x0b = Hex_B keycode 0x0c = q keycode 0x0d = w keycode 0x0e = e altgr keycode 0x0e = Hex_E keycode 0x0f = r keycode 0x10 = y keycode 0x11 = t keycode 0x12 = one exclam alt keycode 0x12 = Meta_one keycode 0x13 = two at at control keycode 0x13 = nul shift control keycode 0x13 = nul alt keycode 0x13 = Meta_two keycode 0x14 = three numbersign control keycode 0x14 = Escape alt keycode 0x14 = Meta_three keycode 0x15 = four dollar dollar control keycode 0x15 = Control_backslash alt keycode 0x15 = Meta_four keycode 0x16 = six asciicircum control keycode 0x16 = Control_asciicircum alt keycode 0x16 = Meta_six keycode 0x17 = five percent control keycode 0x17 = Control_bracketright alt keycode 0x17 = Meta_five keycode 0x18 = equal plus alt keycode 0x18 = Meta_equal keycode 0x19 = nine parenleft bracketright alt keycode 0x19 = Meta_nine keycode 0x1a = seven ampersand braceleft control keycode 0x1a = Control_underscore alt keycode 0x1a = Meta_seven keycode 0x1b = minus underscore backslash control keycode 0x1b = Control_underscore shift control keycode 0x1b = Control_underscore alt keycode 0x1b = Meta_minus keycode 0x1c = eight asterisk bracketleft control keycode 0x1c = Delete alt keycode 0x1c = Meta_eight keycode 0x1d = zero parenright braceright alt keycode 0x1d = Meta_zero keycode 0x1e = bracketright braceright asciitilde control keycode 0x1e = Control_bracketright alt keycode 0x1e = Meta_bracketright keycode 0x1f = o keycode 0x20 = u keycode 0x21 = bracketleft braceleft control keycode 0x21 = Escape alt keycode 0x21 = Meta_bracketleft keycode 0x22 = i keycode 0x23 = p keycode 0x24 = Return alt keycode 0x24 = Meta_Control_m keycode 0x25 = l keycode 0x26 = j keycode 0x27 = apostrophe quotedbl control keycode 0x27 = Control_g alt keycode 0x27 = Meta_apostrophe keycode 0x28 = k keycode 0x29 = semicolon colon alt keycode 0x29 = Meta_semicolon keycode 0x2a = backslash bar control keycode 0x2a = Control_backslash alt keycode 0x2a = Meta_backslash keycode 0x2b = comma less alt keycode 0x2b = Meta_comma keycode 0x2c = slash question control keycode 0x2c = Delete alt keycode 0x2c = Meta_slash keycode 0x2d = n keycode 0x2e = m keycode 0x2f = period greater control keycode 0x2f = Compose alt keycode 0x2f = Meta_period keycode 0x30 = Tab Tab alt keycode 0x30 = Meta_Tab keycode 0x31 = space space control keycode 0x31 = nul alt keycode 0x31 = Meta_space keycode 0x32 = grave asciitilde control keycode 0x32 = nul alt keycode 0x32 = Meta_grave keycode 0x33 = Delete Delete control keycode 0x33 = BackSpace alt keycode 0x33 = Meta_Delete keycode 0x34 = keycode 0x35 = Escape Escape alt keycode 0x35 = Meta_Escape keycode 0x36 = Control keycode 0x37 = Alt keycode 0x38 = Shift keycode 0x39 = Caps_Lock keycode 0x3a = AltGr keycode 0x3b = Left alt keycode 0x3b = Decr_Console keycode 0x3c = Right alt keycode 0x3c = Incr_Console keycode 0x3d = Down keycode 0x3e = Up keycode 0x3f = keycode 0x40 = keycode 0x41 = KP_Period keycode 0x42 = keycode 0x43 = KP_Multiply keycode 0x44 = keycode 0x45 = KP_Add keycode 0x46 = keycode 0x47 = Num_Lock # shift keycode 0x47 = Bare_Num_Lock keycode 0x48 = keycode 0x49 = keycode 0x4a = keycode 0x4b = KP_Divide keycode 0x4c = KP_Enter keycode 0x4d = keycode 0x4e = KP_Subtract keycode 0x4f = keycode 0x50 = keycode 0x51 = #keycode 0x51 = KP_Equals keycode 0x52 = KP_0 alt keycode 0x52 = Ascii_0 altgr keycode 0x52 = Hex_0 keycode 0x53 = KP_1 alt keycode 0x53 = Ascii_1 altgr keycode 0x53 = Hex_1 keycode 0x54 = KP_2 alt keycode 0x54 = Ascii_2 altgr keycode 0x54 = Hex_2 keycode 0x55 = KP_3 alt keycode 0x55 = Ascii_3 altgr keycode 0x55 = Hex_3 keycode 0x56 = KP_4 alt keycode 0x56 = Ascii_4 altgr keycode 0x56 = Hex_4 keycode 0x57 = KP_5 alt keycode 0x57 = Ascii_5 altgr keycode 0x57 = Hex_5 keycode 0x58 = KP_6 alt keycode 0x58 = Ascii_6 altgr keycode 0x58 = Hex_6 keycode 0x59 = KP_7 alt keycode 0x59 = Ascii_7 altgr keycode 0x59 = Hex_7 keycode 0x5b = KP_8 alt keycode 0x5b = Ascii_8 altgr keycode 0x5b = Hex_8 keycode 0x5c = KP_9 alt keycode 0x5c = Ascii_9 altgr keycode 0x5c = Hex_9 keycode 0x5d = keycode 0x5e = keycode 0x5f = keycode 0x60 = F5 F15 Console_17 control keycode 0x60 = F5 alt keycode 0x60 = Console_5 control alt keycode 0x60 = Console_5 keycode 0x61 = F6 F16 Console_18 control keycode 0x61 = F6 alt keycode 0x61 = Console_6 control alt keycode 0x61 = Console_6 keycode 0x62 = F7 F17 Console_19 control keycode 0x62 = F7 alt keycode 0x62 = Console_7 control alt keycode 0x62 = Console_7 keycode 0x63 = F3 F13 Console_15 control keycode 0x63 = F3 alt keycode 0x63 = Console_3 control alt keycode 0x63 = Console_3 keycode 0x64 = F8 F18 Console_20 control keycode 0x64 = F8 alt keycode 0x64 = Console_8 control alt keycode 0x64 = Console_8 keycode 0x65 = F9 F19 Console_21 control keycode 0x65 = F9 alt keycode 0x65 = Console_9 control alt keycode 0x65 = Console_9 keycode 0x66 = keycode 0x67 = F11 F11 Console_23 control keycode 0x67 = F11 alt keycode 0x67 = Console_11 control alt keycode 0x67 = Console_11 keycode 0x68 = keycode 0x69 = F13 keycode 0x6a = keycode 0x6b = Scroll_Lock Show_Memory Show_Registers control keycode 0x6b = Show_State alt keycode 0x6b = Scroll_Lock keycode 0x6c = keycode 0x6d = F10 F20 Console_22 control keycode 0x6d = F10 alt keycode 0x6d = Console_10 control alt keycode 0x6d = Console_10 keycode 0x6e = keycode 0x6f = F12 F12 Console_24 control keycode 0x6f = F12 alt keycode 0x6f = Console_12 control alt keycode 0x6f = Console_12 keycode 0x70 = keycode 0x71 = Pause keycode 0x72 = Insert keycode 0x73 = Home keycode 0x74 = Prior shift keycode 0x74 = Scroll_Backward keycode 0x75 = Remove keycode 0x76 = F4 F14 Console_16 control keycode 0x76 = F4 alt keycode 0x76 = Console_4 control alt keycode 0x76 = Console_4 keycode 0x77 = End keycode 0x78 = F2 F12 Console_14 control keycode 0x78 = F2 alt keycode 0x78 = Console_2 control alt keycode 0x78 = Console_2 keycode 0x79 = Next shift keycode 0x79 = Scroll_Forward keycode 0x7a = F1 F11 Console_13 control keycode 0x7a = F1 alt keycode 0x7a = Console_1 control alt keycode 0x7a = Console_1 keycode 0x7b = Shift keycode 0x7c = AltGr keycode 0x7d = Control keycode 0x7e = keycode 0x7f = #keycode 0x7f = Power control shift keycode 0x7f = Boot string F1 = "\033[[A" string F2 = "\033[[B" string F3 = "\033[[C" string F4 = "\033[[D" string F5 = "\033[[E" string F6 = "\033[17~" string F7 = "\033[18~" string F8 = "\033[19~" string F9 = "\033[20~" string F10 = "\033[21~" string F11 = "\033[23~" string F12 = "\033[24~" string F13 = "\033[25~" string F14 = "\033[26~" string F15 = "\033[28~" string F16 = "\033[29~" string F17 = "\033[31~" string F18 = "\033[32~" string F19 = "\033[33~" string F20 = "\033[34~" string Find = "\033[1~" string Insert = "\033[2~" string Remove = "\033[3~" string Select = "\033[4~" string Prior = "\033[5~" string Next = "\033[6~" string Macro = "\033[M" string Pause = "\033[P" compose '`' 'A' to 'À' compose '`' 'a' to 'à' compose '\'' 'A' to 'Á' compose '\'' 'a' to 'á' compose '^' 'A' to 'Â' compose '^' 'a' to 'â' compose '~' 'A' to 'Ã' compose '~' 'a' to 'ã' compose '"' 'A' to 'Ä' compose '"' 'a' to 'ä' compose 'O' 'A' to 'Å' compose 'o' 'a' to 'å' compose '0' 'A' to 'Å' compose '0' 'a' to 'å' compose 'A' 'A' to 'Å' compose 'a' 'a' to 'å' compose 'A' 'E' to 'Æ' compose 'a' 'e' to 'æ' compose ',' 'C' to 'Ç' compose ',' 'c' to 'ç' compose '`' 'E' to 'È' compose '`' 'e' to 'è' compose '\'' 'E' to 'É' compose '\'' 'e' to 'é' compose '^' 'E' to 'Ê' compose '^' 'e' to 'ê' compose '"' 'E' to 'Ë' compose '"' 'e' to 'ë' compose '`' 'I' to 'Ì' compose '`' 'i' to 'ì' compose '\'' 'I' to 'Í' compose '\'' 'i' to 'í' compose '^' 'I' to 'Î' compose '^' 'i' to 'î' compose '"' 'I' to 'Ï' compose '"' 'i' to 'ï' compose '-' 'D' to 'Ð' compose '-' 'd' to 'ð' compose '~' 'N' to 'Ñ' compose '~' 'n' to 'ñ' compose '`' 'O' to 'Ò' compose '`' 'o' to 'ò' compose '\'' 'O' to 'Ó' compose '\'' 'o' to 'ó' compose '^' 'O' to 'Ô' compose '^' 'o' to 'ô' compose '~' 'O' to 'Õ' compose '~' 'o' to 'õ' compose '"' 'O' to 'Ö' compose '"' 'o' to 'ö' compose '/' 'O' to 'Ø' compose '/' 'o' to 'ø' compose '`' 'U' to 'Ù' compose '`' 'u' to 'ù' compose '\'' 'U' to 'Ú' compose '\'' 'u' to 'ú' compose '^' 'U' to 'Û' compose '^' 'u' to 'û' compose '"' 'U' to 'Ü' compose '"' 'u' to 'ü' compose '\'' 'Y' to 'Ý' compose '\'' 'y' to 'ý' compose 'T' 'H' to 'Þ' compose 't' 'h' to 'þ' compose 's' 's' to 'ß' compose '"' 'y' to 'ÿ' compose 's' 'z' to 'ß' compose 'i' 'j' to 'ÿ'