Skip to content

Instantly share code, notes, and snippets.

@nasenatmer
Last active September 20, 2019 09:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nasenatmer/0d44a677b9a16d9e6a77797852c95a0d to your computer and use it in GitHub Desktop.
Save nasenatmer/0d44a677b9a16d9e6a77797852c95a0d to your computer and use it in GitHub Desktop.
! bone.map - bone keyboard layout optimised for English and German
! 2012 - Jakob: nasenatmer at posteo dot de
!
keymaps 0-18
strings as usual
compose as usual
alt_is_meta
! --------------------------------------------------------------------------
! Modifier definitions
! --------------------------------------------------------------------------
keycode 42 = Shift
# shift keycode 42 = Caps_Lock
keycode 54 = Shift
# shift keycode 54 = Caps_Lock
keycode 58 = AltGr
# altgr keycode 58 = AltGr_Lock
keycode 43 = AltGr
# altgr keycode 43 = AltGr_Lock
keycode 86 = ShiftL
# shiftl keycode 86 = ShiftL_Lock
keycode 100 = ShiftL
# shiftl keycode 100 = ShiftL_Lock
keycode 1 = Escape
shift altgr keycode 1 = Meta_Escape
! --------------------------------------------------------------------------
! function keys
! --------------------------------------------------------------------------
! ----Backspace-------------------------------------------------------------
keycode 14 = Delete
! ----Return Enter----------------------------------------------------------
keycode 28 = Return
alt keycode 28 = Meta_Control_m
keycode 96 = KP_Enter
altgr keycode 96 = Hex_F
! ----Tab-------------------------------------------------------------------
keycode 15 = Tab Meta_Tab
altgr keycode 15 = Compose
! ----Control Alt-----------------------------------------------------------
keycode 29 = Control
keycode 97 = Control
keycode 56 = Alt
! ----Prt SclLk Pause-------------------------------------------------------
keycode 99 =
control keycode 99 = Control_backslash
alt keycode 99 = Control_backslash
control alt keycode 99 = Meta_Control_backslash
keycode 70 = Scroll_Lock Show_Memory Show_Registers Show_State
alt keycode 70 = Scroll_Lock
keycode 119 = Pause
! ----Home block------------------------------------------------------------
keycode 102 = Find
keycode 104 = Prior
shift keycode 104 = Scroll_Backward
keycode 107 = Select
keycode 109 = Next
shift keycode 109 = Scroll_Forward
keycode 111 = Remove
altgr control keycode 111 = Boot
control alt keycode 111 = Boot
keycode 110 = Insert
! ----Navigation block------------------------------------------------------
keycode 103 = Up
alt keycode 103 = KeyboardSignal
keycode 105 = Left
alt keycode 105 = Decr_Console
keycode 106 = Right
alt keycode 106 = Incr_Console
keycode 108 = Down
! ----Win keys--------------------------------------------------------------
keycode 125 = Decr_Console Last_Console Incr_Console
keycode 126 = Incr_Console Last_Console Decr_Console
! ----menue key-------------------------------------------------------------
keycode 127 = Compose F100
! ----F-keys----------------------------------------------------------------
keycode 59 = F1 F13 Console_13 F25
alt keycode 59 = Console_1
control alt keycode 59 = Console_1
keycode 60 = F2 F14 Console_14 F26
alt keycode 60 = Console_2
control alt keycode 60 = Console_2
keycode 61 = F3 F15 Console_15 F27
alt keycode 61 = Console_3
control alt keycode 61 = Console_3
keycode 62 = F4 F16 Console_16 F28
alt keycode 62 = Console_4
control alt keycode 62 = Console_4
keycode 63 = F5 F17 Console_17 F29
alt keycode 63 = Console_5
control alt keycode 63 = Console_5
keycode 64 = F6 F18 Console_18 F30
alt keycode 64 = Console_6
control alt keycode 64 = Console_6
keycode 65 = F7 F19 Console_19 F31
alt keycode 65 = Console_7
control alt keycode 65 = Console_7
keycode 66 = F8 F20 Console_20 F32
alt keycode 66 = Console_8
control alt keycode 66 = Console_8
keycode 67 = F9 F21 Console_21 F33
alt keycode 67 = Console_9
control alt keycode 67 = Console_9
keycode 68 = F10 F22 Console_22 F34
alt keycode 68 = Console_10
control alt keycode 68 = Console_10
keycode 87 = F11 F23 Console_23 F35
alt keycode 87 = Console_11
control alt keycode 87 = Console_11
keycode 88 = F12 F24 Console_24 F36
alt keycode 88 = Console_12
control alt keycode 88 = Console_12
! ----unknown keys from defkeymap.map---------------------------------------
keycode 84 = Last_Console
keycode 89 =
keycode 90 =
keycode 91 =
keycode 92 =
keycode 93 =
keycode 94 =
keycode 95 =
keycode 101 = Break
keycode 112 = Macro
altgr control keycode 112 = VoidSymbol
shift alt keycode 112 = VoidSymbol
altgr alt keycode 112 = VoidSymbol
keycode 113 = F13
altgr control keycode 113 = VoidSymbol
shift alt keycode 113 = VoidSymbol
altgr alt keycode 113 = VoidSymbol
keycode 114 = F14
altgr control keycode 114 = VoidSymbol
shift alt keycode 114 = VoidSymbol
altgr alt keycode 114 = VoidSymbol
keycode 115 = Help
altgr control keycode 115 = VoidSymbol
shift alt keycode 115 = VoidSymbol
altgr alt keycode 115 = VoidSymbol
keycode 116 = Do
altgr control keycode 116 = VoidSymbol
shift alt keycode 116 = VoidSymbol
altgr alt keycode 116 = VoidSymbol
keycode 117 = F17
altgr control keycode 117 = VoidSymbol
shift alt keycode 117 = VoidSymbol
altgr alt keycode 117 = VoidSymbol
keycode 118 = KP_MinPlus
altgr control keycode 118 = VoidSymbol
shift alt keycode 118 = VoidSymbol
altgr alt keycode 118 = VoidSymbol
keycode 119 = Pause
keycode 120 =
keycode 121 =
keycode 122 =
keycode 123 =
keycode 124 =
! ----Space key-------------------------------------------------------------
keycode 57 = space space space nobreakspace
shiftl keycode 57 = KP_0
shift shiftl keycode 57 = KP_0
altgr shiftl keycode 57 = U+202F
! ----dead keys-------------------------------------------------------------
keycode 41 = dead_circumflex dead_caron U+21BB U+02DE
shiftl keycode 41 = U+0307
keycode 13 = dead_grave dead_cedilla U+030a VoidSymbol
shiftl keycode 13 = dead_diaeresis
altgr shiftl keycode 13 = U+0304
keycode 27 = dead_acute dead_tilde VoidSymbol VoidSymbol
shiftl keycode 27 = dead_doubleacute
altgr shiftl keycode 27 = dead_breve
! --------------------------------------------------------------------------
! Row 1 (number row)
! --------------------------------------------------------------------------
keycode 2 = one degree onesuperior VoidSymbol
shiftl keycode 2 = ordfeminine
altgr shiftl keycode 2 = notsign
keycode 3 = two section twosuperior VoidSymbol
shiftl keycode 3 = masculine
altgr shiftl keycode 3 = U+2228
keycode 4 = three U+2113 threesuperior VoidSymbol
shiftl keycode 4 = U+2116
altgr shiftl keycode 4 = U+2227
keycode 5 = four guillemotright U+203A U+2640
altgr shiftl keycode 5 = U+22A5
keycode 6 = five guillemotleft U+2039 U+2642
shiftl keycode 6 = periodcentered
altgr shiftl keycode 6 = U+2221
keycode 7 = six dollar cent U+26A5
shiftl keycode 7 = sterling
altgr shiftl keycode 7 = U+2225
keycode 8 = seven U+20ac yen U+03F0
shiftl keycode 8 = currency
altgr shiftl keycode 8 = U+2192
keycode 9 = eight U+201e U+201a U+2329
shiftl keycode 9 = Tab
altgr shiftl keycode 9 = U+221e
keycode 10 = nine U+201c U+2018 U+232a
shiftl keycode 10 = KP_Divide
shift shiftl keycode 10 = KP_Divide
altgr shiftl keycode 10 = U+221d
keycode 11 = zero U+201d U+2019 VoidSymbol
shiftl keycode 11 = KP_Multiply
shift shiftl keycode 11 = KP_Multiply
keycode 12 = minus U+2014 VoidSymbol U+2011
shiftl keycode 12 = KP_Subtract
shift shiftl keycode 12 = KP_Subtract
altgr shiftl keycode 12 = hyphen
! --------------------------------------------------------------------------
! Row 2 (upper row)
! --------------------------------------------------------------------------
keycode 16 = j
altgr keycode 16 = U+2026
shift altgr keycode 16 = U+03be
shiftl keycode 16 = Prior
shift shiftl keycode 16 = Prior
altgr shiftl keycode 16 = U+039e
keycode 17 = d
altgr keycode 17 = underscore
shiftl keycode 17 = BackSpace
shift shiftl keycode 17 = BackSpace
altgr shiftl keycode 17 = U+221a
keycode 18 = u
altgr keycode 18 = bracketleft
shift altgr keycode 18 = U+03bb
shiftl keycode 18 = Up
shift shiftl keycode 18 = Up
altgr shiftl keycode 18 = U+039b
keycode 19 = a
altgr keycode 19 = bracketright
shift altgr keycode 19 = U+03c7
shiftl keycode 19 = Remove
shift shiftl keycode 19 = Remove
altgr shiftl keycode 19 = U+2102
keycode 20 = x
altgr keycode 20 = asciicircum
shift altgr keycode 20 = U+03c9
shiftl keycode 20 = Next
shift shiftl keycode 20 = Next
altgr shiftl keycode 20 = U+03a9
keycode 21 = p
altgr keycode 21 = exclam
shift altgr keycode 21 = U+03ba
shiftl keycode 21 = exclamdown
altgr shiftl keycode 21 = multiply
keycode 22 = h
altgr keycode 22 = less
shift altgr keycode 22 = U+03c8
shiftl keycode 22 = KP_7
shift shiftl keycode 22 = KP_7
altgr shiftl keycode 22 = U+03a8
keycode 23 = l
altgr keycode 23 = greater
shift altgr keycode 23 = U+03b3
shiftl keycode 23 = KP_8
shift shiftl keycode 23 = KP_8
altgr shiftl keycode 23 = U+0393
keycode 24 = m
altgr keycode 24 = equal
shift altgr keycode 24 = U+03c6
shiftl keycode 24 = KP_9
shift shiftl keycode 24 = KP_9
altgr shiftl keycode 24 = U+03a6
keycode 25 = w
altgr keycode 25 = ampersand
shift altgr keycode 25 = U+03D5
shiftl keycode 25 = KP_Add
shift shiftl keycode 25 = KP_Add
altgr shiftl keycode 25 = U+211A
keycode 26 = ssharp U+1E9E U+017F U+03c2
shiftl keycode 26 = U+2212
altgr shiftl keycode 26 = U+2218
! --------------------------------------------------------------------------
! Row 3 (home row, middle row)
! --------------------------------------------------------------------------
keycode 30 = c
altgr keycode 30 = backslash
shiftl keycode 30 = Home
shift shiftl keycode 30 = Home
altgr shiftl keycode 30 = U+2282
keycode 31 = t
altgr keycode 31 = slash
shift altgr keycode 31 = U+03b9
shiftl keycode 31 = Left
shift shiftl keycode 31 = Left
altgr shiftl keycode 31 = U+222b
keycode 32 = i
altgr keycode 32 = braceleft
shift altgr keycode 32 = U+03b1
shiftl keycode 32 = Down
shift shiftl keycode 32 = Down
altgr shiftl keycode 32 = U+2200
keycode 33 = e
altgr keycode 33 = braceright
shift altgr keycode 33 = U+03b5
shiftl keycode 33 = Right
shift shiftl keycode 33 = Right
altgr shiftl keycode 33 = U+2203
keycode 34 = o
altgr keycode 34 = asterisk
shift altgr keycode 34 = U+03bf
shiftl keycode 34 = End
shift shiftl keycode 34 = End
keycode 35 = b
altgr keycode 35 = question
shift altgr keycode 35 = U+03c3
shiftl keycode 35 = questiondown
altgr shiftl keycode 35 = U+03a3
keycode 36 = n
altgr keycode 36 = parenleft
shift altgr keycode 36 = U+03bd
shiftl keycode 36 = KP_4
shift shiftl keycode 36 = KP_4
altgr shiftl keycode 36 = U+2115
keycode 37 = r
altgr keycode 37 = parenright
shift altgr keycode 37 = U+03c1
shiftl keycode 37 = KP_5
shift shiftl keycode 37 = KP_5
altgr shiftl keycode 37 = U+211D
keycode 38 = s
altgr keycode 38 = minus
shift altgr keycode 38 = U+03c4
shiftl keycode 38 = KP_6
shift shiftl keycode 38 = KP_6
altgr shiftl keycode 38 = U+2202
keycode 39 = g
altgr keycode 39 = colon
shift altgr keycode 39 = U+03b4
shiftl keycode 39 = U+002c
shift shiftl keycode 39 = comma
altgr shiftl keycode 39 = U+0394
keycode 40 = q
altgr keycode 40 = at
shift altgr keycode 40 = U+03c5
shiftl keycode 40 = period
shift shiftl keycode 40 = U+002e
altgr shiftl keycode 40 = U+2207
! --------------------------------------------------------------------------
! Row 4 (lower row)
! --------------------------------------------------------------------------
keycode 44 = f F numbersign VoidSymbol
shiftl keycode 44 = Escape
shift shiftl keycode 44 = Escape
altgr shiftl keycode 44 = U+222a
keycode 45 = v V dollar U+03F5
shiftl keycode 45 = Tab
altgr shiftl keycode 45 = U+2229
keycode 46 = udiaeresis Udiaeresis bar U+03b7
shiftl keycode 46 = Insert
shift shiftl keycode 46 = Insert
altgr shiftl keycode 46 = U+2135
keycode 47 = adiaeresis Adiaeresis
altgr keycode 47 = asciitilde
shift altgr keycode 47 = U+03c0
shiftl keycode 47 = Return
shift shiftl keycode 47 = Return
altgr shiftl keycode 47 = U+03a0
keycode 48 = odiaeresis Odiaeresis
altgr keycode 48 = grave
shift altgr keycode 48 = U+03b6
altgr shiftl keycode 48 = U+2124
keycode 49 = y
altgr keycode 49 = plus
shift altgr keycode 49 = U+03b2
shiftl keycode 49 = colon
altgr shiftl keycode 49 = U+21D0
keycode 50 = z
altgr keycode 50 = percent
shift altgr keycode 50 = U+03bc
shiftl keycode 50 = KP_1
shift shiftl keycode 50 = KP_1
altgr shiftl keycode 50 = U+21d4
keycode 51 = comma U+2013 quotedbl U+03F1
shiftl keycode 51 = KP_2
shift shiftl keycode 51 = KP_2
altgr shiftl keycode 51 = U+21D2
keycode 52 = period U+2022 apostrophe U+03D1
shiftl keycode 52 = KP_3
shift shiftl keycode 52 = KP_3
altgr shiftl keycode 52 = U+21A6
keycode 53 = k
altgr keycode 53 = semicolon
shift altgr keycode 53 = U+03b8
shiftl keycode 53 = semicolon
altgr shiftl keycode 53 = U+0398
! --------------------------------------------------------------------------
! Keypad Row 1 (uppest row)
! --------------------------------------------------------------------------
keycode 69 = Tab VoidSymbol equal VoidSymbol
shiftl keycode 69 = U+2260
altgr shiftl keycode 69 = U+2261
keycode 98 = KP_Divide KP_Divide division U+2300
shiftl keycode 98 = U+2044
altgr shiftl keycode 98 = U+2223
keycode 55 = KP_Multiply KP_Multiply U+22C5 U+2299
shiftl keycode 55 = multiply
altgr shiftl keycode 55 = U+2297
keycode 74 = KP_Subtract KP_Subtract U+2212 U+2296
shiftl keycode 74 = U+2216
altgr shiftl keycode 74 = U+2238
! --------------------------------------------------------------------------
! Keypad Row 2 (upper row)
! --------------------------------------------------------------------------
keycode 71 = KP_7 U+2714 U+2195 U+226A
altgr shiftl keycode 71 = U+2308
keycode 72 = KP_8 U+2718 U+2191 U+2229
altgr shiftl keycode 72 = U+22C2
keycode 73 = KP_9 U+2020 U+20D7 U+226B
altgr shiftl keycode 73 = U+2309
keycode 78 = KP_Add KP_Add plusminus U+2295
shiftl keycode 78 = U+2213
altgr shiftl keycode 78 = U+2214
! --------------------------------------------------------------------------
! Keypad Row 3 (home row, middle row)
! --------------------------------------------------------------------------
keycode 75 = KP_4 U+2663 U+2190 U+2282
altgr shiftl keycode 75 = U+2286
keycode 76 = KP_5 U+20ac colon U+22B6
altgr shiftl keycode 76 = U+22B7
keycode 77 = KP_6 U+2023 U+2192 U+2283
altgr shiftl keycode 77 = U+2287
! --------------------------------------------------------------------------
! Keypad Row 4 (lower row)
! --------------------------------------------------------------------------
keycode 79 = KP_1 U+2666 U+2194 U+2264
altgr shiftl keycode 79 = U+230a
keycode 80 = KP_2 U+2665 U+2193 U+222a
altgr shiftl keycode 80 = U+22C3
keycode 81 = KP_3 U+2660 U+21CC U+2265
altgr shiftl keycode 81 = U+230B
! --------------------------------------------------------------------------
! Keypad Row 5 (lowest row)
! --------------------------------------------------------------------------
keycode 82 = KP_0 U+2423 percent U+2030
altgr shiftl keycode 82 = U+25A1
keycode 83 = U+002c period comma U+2032
shiftl keycode 83 = Remove
shift shiftl keycode 83 = Remove
altgr shiftl keycode 83 = U+2033
! --------------------------------------------------------------------------
! additional Keys with control function (has to be edited manually!!!!)
! --------------------------------------------------------------------------
control keycode 57 = nul
# for some obscure reason, this is required even when we set alt_is_meta
alt control keycode 57 = Meta_nul
control altgr keycode 30 = Control_backslash
control altgr keycode 19 = Control_bracketright
control altgr keycode 17 = Control_underscore
control altgr keycode 20 = Control_asciicircum
! --------------------------------------------------------------------------
! Strings and Compose
! --------------------------------------------------------------------------
# string F100 = "setleds +num\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment