-keycode 8 = a A aring Aring
-keycode 9 = s S ssharp Iacute
-keycode 10 = d D partialderivative Icircumflex
-keycode 11 = f F function Idiaeresis
-keycode 12 = h H abovedot Oacute
-keycode 13 = g G copyright doubleacute
-keycode 14 = z Z Greek_OMEGA cedilla
-keycode 15 = x X U2248 ogonek
-keycode 16 = c C ccedilla Ccedilla
-keycode 17 = v V radical U25CA
+clear Shift
+add Shift = Shift_L Shift_R
+
+clear Lock
+add Lock = Caps_Lock
+
+clear Control
+add Control = Control_L Control_R
+
+clear Mod1
+clear Mod2
+clear Mod3
+clear Mod4
+clear Mod5
+
+add Mod1 = Alt_L Alt_R
+add Mod2 = Meta_L Meta_R
+
+keycode 8 = a A dead_macron U0304
+keycode 9 = s S ssharp nobreakspace
+keycode 10 = d D eth ETH
+keycode 11 = f F function nobreakspace
+keycode 12 = h H U02CD U0331
+keycode 13 = g G copyright caret
+keycode 14 = z Z U02C0 U0309
+keycode 15 = x X period U0323
+keycode 16 = c C dead_cedilla U0327
+keycode 17 = v V dead_caron U030C
keycode 18 = section plusminus
-keycode 19 = b B integral idotless
+keycode 19 = b B dead_breve U0306
keycode 20 = q Q oe OE
-keycode 21 = w W U2211 doublelowquotemark
-keycode 22 = e E dead_acute acute
+keycode 21 = w W dead_abovedot U0307
+keycode 22 = e E dead_acute U0301
keycode 23 = r R registered U2030
-keycode 24 = y Y yen Aacute
-keycode 25 = t T dagger caron
+keycode 24 = y Y yen nobreakspace
+keycode 25 = t T thorn THORN
keycode 26 = 1 exclam exclamdown U2044
keycode 27 = 2 at trademark EuroSign
keycode 28 = 3 numbersign sterling U2039
keycode 29 = 4 dollar cent U203A
-keycode 30 = 6 asciicircum section UFB02
-keycode 31 = 5 percent infinity UFB01
+keycode 30 = 6 asciicircum dead_circumflex U0302
+keycode 31 = 5 percent section dagger
keycode 32 = equal plus notequal plusminus
keycode 33 = 9 parenleft ordfeminine periodcentered
keycode 34 = 7 ampersand paragraph doubledagger
keycode 36 = 8 asterisk enfilledcircbullet degree
keycode 37 = 0 parenright masculine singlelowquotemark
keycode 38 = bracketright braceright leftsinglequotemark rightsinglequotemark
-keycode 39 = o O oslash Ooblique
-keycode 40 = u U dead_diaeresis diaeresis
+keycode 39 = o O oslash Oslash
+keycode 40 = u U dead_diaeresis U0308
keycode 41 = bracketleft braceleft leftdoublequotemark rightdoublequotemark
-keycode 42 = i I dead_circumflex U02C6
-keycode 43 = p P Greek_pi U220F
+keycode 42 = i I U02BC U031B
+keycode 43 = p P comma U0326
keycode 44 = Return
-keycode 45 = l L notsign Ograve
-keycode 46 = j J U2206 Ocircumflex
+keycode 45 = l L minus U0335
+keycode 46 = j J dead_doubleacute U030B
keycode 47 = apostrophe quotedbl ae AE
-keycode 48 = k K U02DA UF8FF
-keycode 49 = semicolon colon ellipsis Uacute
+keycode 48 = k K dead_abovering U030A
+keycode 49 = semicolon colon ellipsis numerosign
keycode 50 = backslash bar guillemotleft guillemotright
-keycode 51 = comma less lessthanequal macron
+keycode 51 = comma less lessthanequal doublelowquotemark
keycode 52 = slash question division questiondown
-keycode 53 = n N dead_tilde U02DC
-keycode 54 = m M mu Acircumflex
-keycode 55 = period greater greaterthanequal breve
+keycode 53 = n N dead_tilde U0303
+keycode 54 = m M dead_ogonek U0328
+keycode 55 = period greater greaterthanequal U0294
keycode 56 = Tab
keycode 57 = space NoSymbol nobreakspace
-keycode 58 = grave asciitilde dead_grave grave
+keycode 58 = grave asciitilde dead_grave U0300
keycode 59 = BackSpace
-keycode 60 = U0003
+keycode 60 = 0x1000003
keycode 61 = Escape
keycode 62 =
keycode 63 = Meta_L
keycode 68 = Shift_R
keycode 69 = Alt_R
keycode 70 = Control_R
-keycode 71 = Meta_R
+keycode 71 =
keycode 72 =
keycode 73 = KP_Decimal
keycode 74 = Right asterisk
keycode 98 =
keycode 99 = KP_8
keycode 100 = KP_9
-keycode 101 = yen bar backslash bar
-keycode 102 = underscore NoSymbol dead_grave grave
-keycode 103 = comma
+keycode 101 =
+keycode 102 =
+keycode 103 =
keycode 104 = F5
keycode 105 = F6
keycode 106 = F7
keycode 107 = F3
keycode 108 = F8
keycode 109 = F9
-keycode 110 = space
+keycode 110 =
keycode 111 = F11
-keycode 112 = space
+keycode 112 =
keycode 113 = F13
keycode 114 =
keycode 115 = F14