Merge branch 'libkeymap'
diff --git a/data/Makefile.am b/data/Makefile.am
index 0a2fbf1..233d1c8 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -9,7 +9,7 @@
PARTIALDIR = partialfonts
TRANSDIR = consoletrans
-KEYMAPSUBDIRS = include sun amiga atari i386/azerty i386/dvorak \
+KEYMAPSUBDIRS = include sun amiga atari i386/azerty i386/bepo i386/dvorak \
i386/fgGIod i386/qwerty i386/qwertz i386/include i386/olpc \
i386/colemak mac/include mac/all
diff --git a/data/keymaps/i386/bepo/dvorak-fr-bepo-utf8.map b/data/keymaps/i386/bepo/dvorak-fr-bepo-utf8.map
new file mode 100644
index 0000000..6ff0371
--- /dev/null
+++ b/data/keymaps/i386/bepo/dvorak-fr-bepo-utf8.map
@@ -0,0 +1,234 @@
+# Bépo : Improved ergonomic french keymap using Dvorak method. -*- conf -*-
+# Built by community on 'Dvorak Fr / Bépo' :
+# see http://www.clavier-dvorak.org/wiki/ to join and help.
+
+include "linux-with-alt-and-altgr"
+
+
+### CapsLock with '+eacute' doesn't work, nor with egrave, ccedilla,
+### ecircumflex, agrave and guillemotleft/right : bug ?
+
+
+# We define at most 16 levels for each keycode :
+# plain, Shift, AltGr, Shift+AltGr,
+# Control, Control+Shift, Control+AltGr, Control+Shift+AltGr,
+# Alt, Alt+Shift, Alt+AltGr, Alt+Shift+Altgr
+# Alt+Control, Alt+Control+Shift, Alt+Control+AltGr, Alt+Control+Shift+AltGr.
+#
+# Note that incomplete lines are completed with VoidSymbol.
+keymaps 0-15
+
+# First row
+keycode 41 = dollar numbersign U+2013 U+00b6
+ Alt keycode 41 = Meta_dollar
+ Alt Shift keycode 41 = Meta_numbersign
+
+keycode 2 = +quotedbl +one U+2014 U+201e
+ Alt keycode 2 = Meta_quotedbl
+ Alt Shift keycode 2 = Meta_one
+
+keycode 3 = +guillemotleft +two less U+201c
+ Alt Shift keycode 3 = Meta_two
+ Alt AltGr keycode 3 = Meta_less
+
+keycode 4 = +guillemotright +three greater U+201d
+ Alt Shift keycode 4 = Meta_three
+ Alt AltGr keycode 4 = Meta_greater
+
+keycode 5 = +parenleft +four bracketleft U+2264
+ Alt keycode 5 = Meta_parenleft
+ Alt Shift keycode 5 = Meta_four
+ Alt AltGr keycode 5 = Meta_bracketleft
+
+keycode 6 = +parenright +five bracketright U+2265
+ Alt keycode 6 = Meta_parenright
+ Alt Shift keycode 6 = Meta_five
+ Alt AltGr keycode 6 = Meta_bracketright
+ Control Alt AltGr keycode 6 = Meta_Control_bracketright
+
+keycode 7 = +at +six asciicircum asciicircum
+ Alt keycode 7 = Meta_at
+ Alt Shift keycode 7 = Meta_six
+ Alt AltGr keycode 7 = Meta_asciicircum
+ Alt Shift AltGr keycode 7 = Meta_asciicircum
+ Control Alt AltGr keycode 7 = Meta_Control_asciicircum
+ Control Alt Shift AltGr keycode 7 = Meta_Control_asciicircum
+
+keycode 8 = +plus +seven U+00b1 U+00ac
+ Alt keycode 8 = Meta_plus
+ Alt Shift keycode 8 = Meta_seven
+
+keycode 9 = +minus +eight U+2212 U+00bc
+ Alt keycode 9 = Meta_minus
+ Alt Shift keycode 9 = Meta_eight
+
+keycode 10 = +slash +nine U+00f7 U+00bd
+ Alt keycode 10 = Meta_slash
+ Alt Shift keycode 10 = Meta_nine
+
+keycode 11 = +asterisk +zero U+00d7 U+00be
+ Alt keycode 11 = Meta_asterisk
+ Alt Shift keycode 11 = Meta_zero
+
+keycode 12 = equal U+00b0 U+2260 U+2032
+ Alt keycode 12 = Meta_equal
+
+keycode 13 = percent grave U+2030 U+2033
+ Alt keycode 13 = Meta_percent
+ Alt Shift keycode 13 = Meta_grave
+
+
+# Second row
+
+# simplified letter definitions notation :
+keycode 16 = b
+keycode 18 = p
+keycode 19 = o
+keycode 22 = v
+keycode 23 = d
+keycode 24 = l
+keycode 25 = j
+keycode 26 = z
+keycode 27 = w
+
+# then, add specific definitions
+ AltGr keycode 16 = bar
+ Shift AltGr keycode 16 = brokenbar
+ Alt AltGr keycode 16 = Meta_bar
+
+keycode 17 = +eacute +Eacute dead_acute
+
+ AltGr keycode 18 = ampersand
+ Shift AltGr keycode 18 = U+00a7
+ Alt AltGr keycode 18 = Meta_ampersand
+
+ AltGr keycode 19 = +U+0153
+ Shift AltGr keycode 19 = +U+0152
+
+keycode 20 = +egrave +Egrave dead_grave grave # no Meta !
+
+keycode 21 = dead_circumflex exclam exclamdown
+ Alt Shift keycode 21 = Meta_exclam
+
+ AltGr keycode 22 = dead_caron
+ Shift AltGr keycode 22 = dead_caron
+
+ AltGr keycode 23 = eth
+ Shift AltGr keycode 23 = ETH
+
+ AltGr keycode 25 = +U+0133
+ Shift AltGr keycode 25 = +U+0132
+
+ AltGr keycode 26 = +U+0259
+ Shift AltGr keycode 26 = +U+018f
+
+
+
+# Third row
+
+# simplified letter definitions notation :
+keycode 30 = a
+keycode 31 = u
+keycode 32 = i
+keycode 33 = e
+keycode 35 = c
+keycode 36 = t
+keycode 37 = s
+keycode 38 = r
+keycode 39 = n
+keycode 40 = m
+
+# then, add specific definitions
+ AltGr keycode 30 = +ae
+ Shift AltGr keycode 30 = +AE
+
+ AltGr keycode 31 = +ugrave
+ Shift AltGr keycode 31 = +ugrave
+
+ AltGr keycode 32 = dead_diaeresis
+ Shift AltGr keycode 32 = VoidSymbol
+
+ AltGr keycode 33 = U+20ac
+ Shift AltGr keycode 33 = VoidSymbol
+
+keycode 34 = comma semicolon U+2019 +U+031b
+ Alt keycode 34 = Meta_comma
+ Alt Shift keycode 34 = Meta_semicolon
+
+ AltGr keycode 35 = copyright
+ Shift AltGr keycode 35 = U+017f
+
+ AltGr keycode 36 = +thorn
+ Shift AltGr keycode 36 = +THORN
+
+ AltGr keycode 37 = +ssharp
+ Shift AltGr keycode 37 = U+1e9e
+
+ AltGr keycode 38 = registered
+ Shift AltGr keycode 38 = U+2122
+
+ AltGr keycode 39 = dead_tilde
+ Shift AltGr keycode 39 = dead_tilde
+
+ AltGr keycode 40 = VoidSymbol
+ Shift AltGr keycode 40 = masculine
+
+keycode 43 = +ccedilla +Ccedilla dead_cedilla
+
+
+# Fourth row
+
+# simplified letter definitions notation :
+keycode 45 = y
+keycode 46 = x
+keycode 48 = k
+keycode 50 = q
+keycode 51 = g
+keycode 52 = h
+keycode 53 = f
+
+# then, add specific definitions
+keycode 86 = +ecircumflex +Ecircumflex slash slash
+ Alt AltGr keycode 86 = Meta_slash
+ Alt Shift AltGr keycode 86 = Meta_slash
+
+keycode 44 = +agrave +Agrave backslash backslash
+ Alt AltGr keycode 44 = Meta_backslash
+ Alt Shift AltGr keycode 44 = Meta_backslash
+
+ AltGr keycode 45 = braceleft
+ Shift AltGr keycode 45 = U+2018
+ Alt AltGr keycode 45 = Meta_braceleft
+
+ AltGr keycode 46 = braceright
+ Shift AltGr keycode 46 = U+2019
+ Alt AltGr keycode 46 = Meta_braceright
+
+keycode 47 = period colon U+2026 periodcentered
+ Alt keycode 47 = Meta_period
+ Alt Shift keycode 47 = Meta_colon
+
+ AltGr keycode 48 = asciitilde
+ Shift AltGr keycode 48 = asciitilde
+ Alt AltGr keycode 48 = Meta_asciitilde
+ Alt Shift AltGr keycode 48 = Meta_asciitilde
+
+keycode 49 = apostrophe question questiondown +U+0309
+ Alt keycode 49 = Meta_apostrophe
+ Alt Shift keycode 49 = Meta_question
+
+ AltGr keycode 51 = mu
+ Shift AltGr keycode 51 = VoidSymbol
+
+ AltGr keycode 52 = U+2020
+ Shift AltGr keycode 52 = U+2021
+
+ AltGr keycode 53 = VoidSymbol
+ Shift AltGr keycode 53 = ordfeminine
+
+
+
+keycode 57 = space nobreakspace underscore U+202f
+ Alt keycode 52 = Meta_space
+ Alt AltGr keycode 52 = Meta_underscore
+ Control Alt AltGr keycode 52 = Meta_Control_underscore
diff --git a/data/keymaps/i386/bepo/dvorak-fr-bepo.map b/data/keymaps/i386/bepo/dvorak-fr-bepo.map
new file mode 100644
index 0000000..9e5d899
--- /dev/null
+++ b/data/keymaps/i386/bepo/dvorak-fr-bepo.map
@@ -0,0 +1,1015 @@
+# fr-dvorak-bepo http://www.clavier-dvorak.org
+charset "iso-8859-15"
+keymaps 0-15
+
+# includes are disabled to work also on debian
+# include "linux-with-alt-and-altgr"
+
+
+################### linux-keys-bare ###################
+# Linux-specific (and language-independent) keys
+#
+# This file describes function keys, console switching keys,
+# keypad, cursor keys, and SysRq, ScrollLock, Pause
+#
+# It does not use the AltGr modifier, so that the user can opt
+# to have both Alt keys produce the same effect.
+# As a consequence, the Hex_* keys are missing, as are
+# control altgr keycode 83 = Boot
+# control altgr keycode 111 = Boot
+#
+# One culture-specific item that will be overridden in many keymaps
+# is the KP_Period: many countries have a KP_Comma instead.
+#
+# One user-preference item will be the function of the Delete key.
+#
+# Old keyboards have 10 function keys, and keymaps have
+# sometimes used shift+F1 = F11, and sometimes shift+F1 = F13.
+# Here we assume an enhanced keyboard (with 12 function keys).
+#
+plain keycode 59 = F1
+plain keycode 60 = F2
+plain keycode 61 = F3
+plain keycode 62 = F4
+plain keycode 63 = F5
+plain keycode 64 = F6
+plain keycode 65 = F7
+plain keycode 66 = F8
+plain keycode 67 = F9
+plain keycode 68 = F10
+plain keycode 87 = F11
+plain keycode 88 = F12
+shift keycode 59 = F13
+shift keycode 60 = F14
+shift keycode 61 = F15
+shift keycode 62 = F16
+shift keycode 63 = F17
+shift keycode 64 = F18
+shift keycode 65 = F19
+shift keycode 66 = F20
+shift keycode 67 = F21
+shift keycode 68 = F22
+shift keycode 87 = F23
+shift keycode 88 = F24
+control keycode 59 = F25
+control keycode 60 = F26
+control keycode 61 = F27
+control keycode 62 = F28
+control keycode 63 = F29
+control keycode 64 = F30
+control keycode 65 = F31
+control keycode 66 = F32
+control keycode 67 = F33
+control keycode 68 = F34
+control keycode 87 = F35
+control keycode 88 = F36
+#
+# The canonical assignment for F37-F48 uses
+# control shift keycode 59 = F37
+# etc. If you want that, load linux-keys-extd.inc
+#
+# Both Alt+Fn and Control+Alt+Fn switch to Console n
+# (in order to please Linux / dosemu / X).
+# Here Consoles 1..12. For 13..24 load linux-keys-extd.inc
+#
+alt keycode 59 = Console_1
+alt keycode 60 = Console_2
+alt keycode 61 = Console_3
+alt keycode 62 = Console_4
+alt keycode 63 = Console_5
+alt keycode 64 = Console_6
+alt keycode 65 = Console_7
+alt keycode 66 = Console_8
+alt keycode 67 = Console_9
+alt keycode 68 = Console_10
+alt keycode 87 = Console_11
+alt keycode 88 = Console_12
+control alt keycode 59 = Console_1
+control alt keycode 60 = Console_2
+control alt keycode 61 = Console_3
+control alt keycode 62 = Console_4
+control alt keycode 63 = Console_5
+control alt keycode 64 = Console_6
+control alt keycode 65 = Console_7
+control alt keycode 66 = Console_8
+control alt keycode 67 = Console_9
+control alt keycode 68 = Console_10
+control alt keycode 87 = Console_11
+control alt keycode 88 = Console_12
+
+#
+# Keypad keys
+#
+keycode 69 = Num_Lock
+keycode 98 = KP_Divide
+keycode 55 = KP_Multiply
+keycode 74 = KP_Subtract
+keycode 78 = KP_Add
+keycode 96 = KP_Enter
+#
+keycode 71 = KP_7
+keycode 72 = KP_8
+keycode 73 = KP_9
+keycode 75 = KP_4
+keycode 76 = KP_5
+keycode 77 = KP_6
+keycode 79 = KP_1
+keycode 80 = KP_2
+keycode 81 = KP_3
+keycode 82 = KP_0
+#
+keycode 83 = KP_Period # or KP_Comma
+control alt keycode 83 = Boot
+#
+alt keycode 71 = Ascii_7
+alt keycode 72 = Ascii_8
+alt keycode 73 = Ascii_9
+alt keycode 75 = Ascii_4
+alt keycode 76 = Ascii_5
+alt keycode 77 = Ascii_6
+alt keycode 79 = Ascii_1
+alt keycode 80 = Ascii_2
+alt keycode 81 = Ascii_3
+alt keycode 82 = Ascii_0
+#
+# The four cursor keys
+#
+keycode 103 = Up
+keycode 105 = Left
+keycode 106 = Right
+keycode 108 = Down
+alt keycode 103 = KeyboardSignal
+alt keycode 105 = Decr_Console
+alt keycode 106 = Incr_Console
+#
+# The six edit keys
+#
+keycode 110 = Insert
+keycode 102 = Home # Find
+keycode 104 = PageUp # Prior
+keycode 111 = Remove
+keycode 107 = End # Select
+keycode 109 = PageDown # Next
+shift keycode 104 = Scroll_Backward
+shift keycode 109 = Scroll_Forward
+control alt keycode 111 = Boot
+#
+# The three system keys
+#
+keycode 84 = Last_Console # Alt+SysRq/PrintScrn
+keycode 99 = Control_backslash # SysRq/PrintScrn
+
+plain keycode 70 = Scroll_Lock
+shift keycode 70 = Show_Memory
+control keycode 70 = Show_State
+alt keycode 70 = Show_Registers
+
+keycode 101 = Break # Ctrl+Break/Pause
+keycode 119 = Pause # Break/Pause
+################################################################
+
+################### linux-with-alt-and-altgr ###################
+# For keymaps in which both Alt keys are equivalent
+# No convention for Hex_* has been established.
+
+# include "linux-keys-bare"
+
+keycode 100 = AltGr
+
+altgr keycode 70 = Show_Registers
+alt keycode 70 = Scroll_Lock
+
+control altgr keycode 83 = Boot
+control altgr keycode 111 = Boot
+
+# Hex keypad keys (for giving a Unicode value in 4 hex digits)
+# Follow lt.kmap and assign Hex_A .. Hex_F to keypad border.
+altgr keycode 55 = Hex_C
+altgr keycode 69 = Hex_A
+altgr keycode 71 = Hex_7
+altgr keycode 72 = Hex_8
+altgr keycode 73 = Hex_9
+altgr keycode 74 = Hex_D
+altgr keycode 75 = Hex_4
+altgr keycode 76 = Hex_5
+altgr keycode 77 = Hex_6
+altgr keycode 78 = Hex_E
+altgr keycode 79 = Hex_1
+altgr keycode 80 = Hex_2
+altgr keycode 81 = Hex_3
+altgr keycode 82 = Hex_0
+altgr keycode 96 = Hex_F
+altgr keycode 98 = Hex_B
+################################################################
+
+strings as usual
+compose as usual for "iso-8859-1"
+
+
+
+keycode 41 = dollar
+ Control keycode 41 = VoidSymbol
+ Alt keycode 41 = Meta_dollar
+ Control Alt keycode 41 = VoidSymbol
+ Shift keycode 41 = numbersign
+ Shift Control keycode 41 = VoidSymbol
+ Shift Alt keycode 41 = Meta_numbersign
+ Shift Control Alt keycode 41 = VoidSymbol
+ Altgr keycode 41 = VoidSymbol
+ Altgr Control keycode 41 = VoidSymbol
+ Altgr Alt keycode 41 = VoidSymbol
+ Altgr Control Alt keycode 41 = VoidSymbol
+ Shift Altgr keycode 41 = paragraph
+ Shift Altgr Control keycode 41 = VoidSymbol
+ Shift Altgr Alt keycode 41 = VoidSymbol
+ Shift Altgr Control Alt keycode 41 = VoidSymbol
+keycode 2 = +quotedbl
+ Control keycode 2 = VoidSymbol
+ Alt keycode 2 = Meta_quotedbl
+ Control Alt keycode 2 = VoidSymbol
+ Shift keycode 2 = +one
+ Shift Control keycode 2 = VoidSymbol
+ Shift Alt keycode 2 = Meta_one
+ Shift Control Alt keycode 2 = VoidSymbol
+ Altgr keycode 2 = VoidSymbol
+ Altgr Control keycode 2 = VoidSymbol
+ Altgr Alt keycode 2 = VoidSymbol
+ Altgr Control Alt keycode 2 = VoidSymbol
+ Shift Altgr keycode 2 = VoidSymbol
+ Shift Altgr Control keycode 2 = VoidSymbol
+ Shift Altgr Alt keycode 2 = VoidSymbol
+ Shift Altgr Control Alt keycode 2 = VoidSymbol
+keycode 3 = +guillemotleft
+ Control keycode 3 = VoidSymbol
+ Alt keycode 3 = VoidSymbol
+ Control Alt keycode 3 = VoidSymbol
+ Shift keycode 3 = +two
+ Shift Control keycode 3 = VoidSymbol
+ Shift Alt keycode 3 = Meta_two
+ Shift Control Alt keycode 3 = VoidSymbol
+ Altgr keycode 3 = less
+ Altgr Control keycode 3 = VoidSymbol
+ Altgr Alt keycode 3 = Meta_less
+ Altgr Control Alt keycode 3 = VoidSymbol
+ Shift Altgr keycode 3 = VoidSymbol
+ Shift Altgr Control keycode 3 = VoidSymbol
+ Shift Altgr Alt keycode 3 = VoidSymbol
+ Shift Altgr Control Alt keycode 3 = VoidSymbol
+keycode 4 = +guillemotright
+ Control keycode 4 = VoidSymbol
+ Alt keycode 4 = VoidSymbol
+ Control Alt keycode 4 = VoidSymbol
+ Shift keycode 4 = +three
+ Shift Control keycode 4 = VoidSymbol
+ Shift Alt keycode 4 = Meta_three
+ Shift Control Alt keycode 4 = VoidSymbol
+ Altgr keycode 4 = greater
+ Altgr Control keycode 4 = VoidSymbol
+ Altgr Alt keycode 4 = Meta_greater
+ Altgr Control Alt keycode 4 = VoidSymbol
+ Shift Altgr keycode 4 = VoidSymbol
+ Shift Altgr Control keycode 4 = VoidSymbol
+ Shift Altgr Alt keycode 4 = VoidSymbol
+ Shift Altgr Control Alt keycode 4 = VoidSymbol
+keycode 5 = +parenleft
+ Control keycode 5 = VoidSymbol
+ Alt keycode 5 = Meta_parenleft
+ Control Alt keycode 5 = VoidSymbol
+ Shift keycode 5 = +four
+ Shift Control keycode 5 = VoidSymbol
+ Shift Alt keycode 5 = Meta_four
+ Shift Control Alt keycode 5 = VoidSymbol
+ Altgr keycode 5 = bracketleft
+ Altgr Control keycode 5 = VoidSymbol
+ Altgr Alt keycode 5 = Meta_bracketleft
+ Altgr Control Alt keycode 5 = VoidSymbol
+ Shift Altgr keycode 5 = VoidSymbol
+ Shift Altgr Control keycode 5 = VoidSymbol
+ Shift Altgr Alt keycode 5 = VoidSymbol
+ Shift Altgr Control Alt keycode 5 = VoidSymbol
+keycode 6 = +parenright
+ Control keycode 6 = VoidSymbol
+ Alt keycode 6 = Meta_parenright
+ Control Alt keycode 6 = VoidSymbol
+ Shift keycode 6 = +five
+ Shift Control keycode 6 = VoidSymbol
+ Shift Alt keycode 6 = Meta_five
+ Shift Control Alt keycode 6 = VoidSymbol
+ Altgr keycode 6 = bracketright
+ Altgr Control keycode 6 = VoidSymbol
+ Altgr Alt keycode 6 = Meta_bracketright
+ Altgr Control Alt keycode 6 = Meta_Control_bracketright
+ Shift Altgr keycode 6 = VoidSymbol
+ Shift Altgr Control keycode 6 = VoidSymbol
+ Shift Altgr Alt keycode 6 = VoidSymbol
+ Shift Altgr Control Alt keycode 6 = VoidSymbol
+keycode 7 = +at
+ Control keycode 7 = VoidSymbol
+ Alt keycode 7 = Meta_at
+ Control Alt keycode 7 = VoidSymbol
+ Shift keycode 7 = +six
+ Shift Control keycode 7 = VoidSymbol
+ Shift Alt keycode 7 = Meta_six
+ Shift Control Alt keycode 7 = VoidSymbol
+ Altgr keycode 7 = asciicircum
+ Altgr Control keycode 7 = VoidSymbol
+ Altgr Alt keycode 7 = Meta_asciicircum
+ Altgr Control Alt keycode 7 = Meta_Control_asciicircum
+ Shift Altgr keycode 7 = VoidSymbol
+ Shift Altgr Control keycode 7 = VoidSymbol
+ Shift Altgr Alt keycode 7 = VoidSymbol
+ Shift Altgr Control Alt keycode 7 = VoidSymbol
+keycode 8 = +plus
+ Control keycode 8 = VoidSymbol
+ Alt keycode 8 = Meta_plus
+ Control Alt keycode 8 = VoidSymbol
+ Shift keycode 8 = +seven
+ Shift Control keycode 8 = VoidSymbol
+ Shift Alt keycode 8 = Meta_seven
+ Shift Control Alt keycode 8 = VoidSymbol
+ Altgr keycode 8 = plusminus
+ Altgr Control keycode 8 = VoidSymbol
+ Altgr Alt keycode 8 = VoidSymbol
+ Altgr Control Alt keycode 8 = VoidSymbol
+ Shift Altgr keycode 8 = notsign
+ Shift Altgr Control keycode 8 = VoidSymbol
+ Shift Altgr Alt keycode 8 = VoidSymbol
+ Shift Altgr Control Alt keycode 8 = VoidSymbol
+keycode 9 = +minus
+ Control keycode 9 = VoidSymbol
+ Alt keycode 9 = Meta_minus
+ Control Alt keycode 9 = VoidSymbol
+ Shift keycode 9 = +eight
+ Shift Control keycode 9 = VoidSymbol
+ Shift Alt keycode 9 = Meta_eight
+ Shift Control Alt keycode 9 = VoidSymbol
+ Altgr keycode 9 = VoidSymbol
+ Altgr Control keycode 9 = VoidSymbol
+ Altgr Alt keycode 9 = VoidSymbol
+ Altgr Control Alt keycode 9 = VoidSymbol
+ Shift Altgr keycode 9 = VoidSymbol
+ Shift Altgr Control keycode 9 = VoidSymbol
+ Shift Altgr Alt keycode 9 = VoidSymbol
+ Shift Altgr Control Alt keycode 9 = VoidSymbol
+keycode 10 = +slash
+ Control keycode 10 = VoidSymbol
+ Alt keycode 10 = Meta_slash
+ Control Alt keycode 10 = VoidSymbol
+ Shift keycode 10 = +nine
+ Shift Control keycode 10 = VoidSymbol
+ Shift Alt keycode 10 = Meta_nine
+ Shift Control Alt keycode 10 = VoidSymbol
+ Altgr keycode 10 = division
+ Altgr Control keycode 10 = VoidSymbol
+ Altgr Alt keycode 10 = VoidSymbol
+ Altgr Control Alt keycode 10 = VoidSymbol
+ Shift Altgr keycode 10 = VoidSymbol
+ Shift Altgr Control keycode 10 = VoidSymbol
+ Shift Altgr Alt keycode 10 = VoidSymbol
+ Shift Altgr Control Alt keycode 10 = VoidSymbol
+keycode 11 = +asterisk
+ Control keycode 11 = VoidSymbol
+ Alt keycode 11 = Meta_asterisk
+ Control Alt keycode 11 = VoidSymbol
+ Shift keycode 11 = +zero
+ Shift Control keycode 11 = VoidSymbol
+ Shift Alt keycode 11 = Meta_zero
+ Shift Control Alt keycode 11 = VoidSymbol
+ Altgr keycode 11 = multiply
+ Altgr Control keycode 11 = VoidSymbol
+ Altgr Alt keycode 11 = VoidSymbol
+ Altgr Control Alt keycode 11 = VoidSymbol
+ Shift Altgr keycode 11 = VoidSymbol
+ Shift Altgr Control keycode 11 = VoidSymbol
+ Shift Altgr Alt keycode 11 = VoidSymbol
+ Shift Altgr Control Alt keycode 11 = VoidSymbol
+keycode 12 = equal
+ Control keycode 12 = VoidSymbol
+ Alt keycode 12 = Meta_equal
+ Control Alt keycode 12 = VoidSymbol
+ Shift keycode 12 = degree
+ Shift Control keycode 12 = VoidSymbol
+ Shift Alt keycode 12 = VoidSymbol
+ Shift Control Alt keycode 12 = VoidSymbol
+ Altgr keycode 12 = VoidSymbol
+ Altgr Control keycode 12 = VoidSymbol
+ Altgr Alt keycode 12 = VoidSymbol
+ Altgr Control Alt keycode 12 = VoidSymbol
+ Shift Altgr keycode 12 = VoidSymbol
+ Shift Altgr Control keycode 12 = VoidSymbol
+ Shift Altgr Alt keycode 12 = VoidSymbol
+ Shift Altgr Control Alt keycode 12 = VoidSymbol
+keycode 13 = percent
+ Control keycode 13 = VoidSymbol
+ Alt keycode 13 = Meta_percent
+ Control Alt keycode 13 = VoidSymbol
+ Shift keycode 13 = grave
+ Shift Control keycode 13 = VoidSymbol
+ Shift Alt keycode 13 = Meta_grave
+ Shift Control Alt keycode 13 = VoidSymbol
+ Altgr keycode 13 = VoidSymbol
+ Altgr Control keycode 13 = VoidSymbol
+ Altgr Alt keycode 13 = VoidSymbol
+ Altgr Control Alt keycode 13 = VoidSymbol
+ Shift Altgr keycode 13 = VoidSymbol
+ Shift Altgr Control keycode 13 = VoidSymbol
+ Shift Altgr Alt keycode 13 = VoidSymbol
+ Shift Altgr Control Alt keycode 13 = VoidSymbol
+keycode 16 = +b
+ Control keycode 16 = Control_b
+ Alt keycode 16 = Meta_b
+ Control Alt keycode 16 = Meta_Control_b
+ Shift keycode 16 = +B
+ Shift Control keycode 16 = VoidSymbol
+ Shift Alt keycode 16 = Meta_B
+ Shift Control Alt keycode 16 = VoidSymbol
+ Altgr keycode 16 = bar
+ Altgr Control keycode 16 = VoidSymbol
+ Altgr Alt keycode 16 = Meta_bar
+ Altgr Control Alt keycode 16 = VoidSymbol
+ Shift Altgr keycode 16 = VoidSymbol
+ Shift Altgr Control keycode 16 = VoidSymbol
+ Shift Altgr Alt keycode 16 = VoidSymbol
+ Shift Altgr Control Alt keycode 16 = VoidSymbol
+keycode 17 = +eacute
+ Control keycode 17 = VoidSymbol
+ Alt keycode 17 = VoidSymbol
+ Control Alt keycode 17 = VoidSymbol
+ Shift keycode 17 = +Eacute
+ Shift Control keycode 17 = VoidSymbol
+ Shift Alt keycode 17 = VoidSymbol
+ Shift Control Alt keycode 17 = VoidSymbol
+ Altgr keycode 17 = dead_acute
+ Altgr Control keycode 17 = VoidSymbol
+ Altgr Alt keycode 17 = VoidSymbol
+ Altgr Control Alt keycode 17 = VoidSymbol
+ Shift Altgr keycode 17 = dead_doubleacute
+ Shift Altgr Control keycode 17 = VoidSymbol
+ Shift Altgr Alt keycode 17 = VoidSymbol
+ Shift Altgr Control Alt keycode 17 = VoidSymbol
+keycode 18 = +p
+ Control keycode 18 = Control_p
+ Alt keycode 18 = Meta_p
+ Control Alt keycode 18 = Meta_Control_p
+ Shift keycode 18 = +P
+ Shift Control keycode 18 = VoidSymbol
+ Shift Alt keycode 18 = Meta_P
+ Shift Control Alt keycode 18 = VoidSymbol
+ Altgr keycode 18 = ampersand
+ Altgr Control keycode 18 = VoidSymbol
+ Altgr Alt keycode 18 = Meta_ampersand
+ Altgr Control Alt keycode 18 = VoidSymbol
+ Shift Altgr keycode 18 = section
+ Shift Altgr Control keycode 18 = VoidSymbol
+ Shift Altgr Alt keycode 18 = VoidSymbol
+ Shift Altgr Control Alt keycode 18 = VoidSymbol
+keycode 19 = o
+ Control keycode 19 = Control_o
+ Alt keycode 19 = Meta_o
+ Control Alt keycode 19 = Meta_Control_o
+ Shift keycode 19 = O
+ Shift Control keycode 19 = VoidSymbol
+ Shift Alt keycode 19 = Meta_O
+ Shift Control Alt keycode 19 = VoidSymbol
+ Altgr keycode 19 = 0xbd
+ Altgr Control keycode 19 = VoidSymbol
+ Altgr Alt keycode 19 = VoidSymbol
+ Altgr Control Alt keycode 19 = VoidSymbol
+ Shift Altgr keycode 19 = 0xbc
+ Shift Altgr Control keycode 19 = VoidSymbol
+ Shift Altgr Alt keycode 19 = VoidSymbol
+ Shift Altgr Control Alt keycode 19 = VoidSymbol
+keycode 20 = +egrave
+ Control keycode 20 = VoidSymbol
+ Alt keycode 20 = VoidSymbol
+ Control Alt keycode 20 = VoidSymbol
+ Shift keycode 20 = +Egrave
+ Shift Control keycode 20 = VoidSymbol
+ Shift Alt keycode 20 = VoidSymbol
+ Shift Control Alt keycode 20 = VoidSymbol
+ Altgr keycode 20 = dead_grave
+ Altgr Control keycode 20 = VoidSymbol
+ Altgr Alt keycode 20 = Meta_grave
+ Altgr Control Alt keycode 20 = VoidSymbol
+ Shift Altgr keycode 20 = grave
+ Shift Altgr Control keycode 20 = VoidSymbol
+ Shift Altgr Alt keycode 20 = Meta_grave
+ Shift Altgr Control Alt keycode 20 = VoidSymbol
+keycode 21 = dead_circumflex
+ Control keycode 21 = VoidSymbol
+ Alt keycode 21 = Meta_asciicircum
+ Control Alt keycode 21 = Meta_Control_asciicircum
+ Shift keycode 21 = exclam
+ Shift Control keycode 21 = VoidSymbol
+ Shift Alt keycode 21 = Meta_exclam
+ Shift Control Alt keycode 21 = VoidSymbol
+ Altgr keycode 21 = exclamdown
+ Altgr Control keycode 21 = VoidSymbol
+ Altgr Alt keycode 21 = VoidSymbol
+ Altgr Control Alt keycode 21 = VoidSymbol
+ Shift Altgr keycode 21 = VoidSymbol
+ Shift Altgr Control keycode 21 = VoidSymbol
+ Shift Altgr Alt keycode 21 = VoidSymbol
+ Shift Altgr Control Alt keycode 21 = VoidSymbol
+keycode 22 = +v
+ Control keycode 22 = Control_v
+ Alt keycode 22 = Meta_v
+ Control Alt keycode 22 = Meta_Control_v
+ Shift keycode 22 = +V
+ Shift Control keycode 22 = VoidSymbol
+ Shift Alt keycode 22 = Meta_V
+ Shift Control Alt keycode 22 = VoidSymbol
+ Altgr keycode 22 = dead_caron
+ Altgr Control keycode 22 = VoidSymbol
+ Altgr Alt keycode 22 = VoidSymbol
+ Altgr Control Alt keycode 22 = VoidSymbol
+ Shift Altgr keycode 22 = VoidSymbol
+ Shift Altgr Control keycode 22 = VoidSymbol
+ Shift Altgr Alt keycode 22 = VoidSymbol
+ Shift Altgr Control Alt keycode 22 = VoidSymbol
+keycode 23 = d
+ Control keycode 23 = Control_d
+ Alt keycode 23 = Meta_d
+ Control Alt keycode 23 = Meta_Control_d
+ Shift keycode 23 = D
+ Shift Control keycode 23 = VoidSymbol
+ Shift Alt keycode 23 = Meta_D
+ Shift Control Alt keycode 23 = VoidSymbol
+ Altgr keycode 23 = eth
+ Altgr Control keycode 23 = VoidSymbol
+ Altgr Alt keycode 23 = VoidSymbol
+ Altgr Control Alt keycode 23 = VoidSymbol
+ Shift Altgr keycode 23 = ETH
+ Shift Altgr Control keycode 23 = VoidSymbol
+ Shift Altgr Alt keycode 23 = VoidSymbol
+ Shift Altgr Control Alt keycode 23 = VoidSymbol
+keycode 24 = +l
+ Control keycode 24 = Control_l
+ Alt keycode 24 = Meta_l
+ Control Alt keycode 24 = Meta_Control_l
+ Shift keycode 24 = +L
+ Shift Control keycode 24 = VoidSymbol
+ Shift Alt keycode 24 = Meta_L
+ Shift Control Alt keycode 24 = VoidSymbol
+ Altgr keycode 24 = VoidSymbol
+ Altgr Control keycode 24 = VoidSymbol
+ Altgr Alt keycode 24 = VoidSymbol
+ Altgr Control Alt keycode 24 = VoidSymbol
+ Shift Altgr keycode 24 = VoidSymbol
+ Shift Altgr Control keycode 24 = VoidSymbol
+ Shift Altgr Alt keycode 24 = VoidSymbol
+ Shift Altgr Control Alt keycode 24 = VoidSymbol
+keycode 25 = j
+ Control keycode 25 = Control_j
+ Alt keycode 25 = Meta_j
+ Control Alt keycode 25 = VoidSymbol
+ Shift keycode 25 = J
+ Shift Control keycode 25 = VoidSymbol
+ Shift Alt keycode 25 = Meta_J
+ Shift Control Alt keycode 25 = VoidSymbol
+ Altgr keycode 25 = VoidSymbol
+ Altgr Control keycode 25 = VoidSymbol
+ Altgr Alt keycode 25 = VoidSymbol
+ Altgr Control Alt keycode 25 = VoidSymbol
+ Shift Altgr keycode 25 = VoidSymbol
+ Shift Altgr Control keycode 25 = VoidSymbol
+ Shift Altgr Alt keycode 25 = VoidSymbol
+ Shift Altgr Control Alt keycode 25 = VoidSymbol
+keycode 26 = z
+ Control keycode 26 = Control_z
+ Alt keycode 26 = Meta_z
+ Control Alt keycode 26 = Meta_Control_z
+ Shift keycode 26 = Z
+ Shift Control keycode 26 = VoidSymbol
+ Shift Alt keycode 26 = Meta_Z
+ Shift Control Alt keycode 26 = VoidSymbol
+ Altgr keycode 26 = VoidSymbol
+ Altgr Control keycode 26 = VoidSymbol
+ Altgr Alt keycode 26 = VoidSymbol
+ Altgr Control Alt keycode 26 = VoidSymbol
+ Shift Altgr keycode 26 = VoidSymbol
+ Shift Altgr Control keycode 26 = VoidSymbol
+ Shift Altgr Alt keycode 26 = VoidSymbol
+ Shift Altgr Control Alt keycode 26 = VoidSymbol
+keycode 27 = +w
+ Control keycode 27 = Control_w
+ Alt keycode 27 = Meta_w
+ Control Alt keycode 27 = Meta_Control_w
+ Shift keycode 27 = +W
+ Shift Control keycode 27 = VoidSymbol
+ Shift Alt keycode 27 = Meta_W
+ Shift Control Alt keycode 27 = VoidSymbol
+ Altgr keycode 27 = dead_breve
+ Altgr Control keycode 27 = VoidSymbol
+ Altgr Alt keycode 27 = VoidSymbol
+ Altgr Control Alt keycode 27 = VoidSymbol
+ Shift Altgr keycode 27 = VoidSymbol
+ Shift Altgr Control keycode 27 = VoidSymbol
+ Shift Altgr Alt keycode 27 = VoidSymbol
+ Shift Altgr Control Alt keycode 27 = VoidSymbol
+keycode 30 = a
+ Control keycode 30 = Control_a
+ Alt keycode 30 = Meta_a
+ Control Alt keycode 30 = Meta_Control_a
+ Shift keycode 30 = A
+ Shift Control keycode 30 = VoidSymbol
+ Shift Alt keycode 30 = Meta_A
+ Shift Control Alt keycode 30 = VoidSymbol
+ Altgr keycode 30 = ae
+ Altgr Control keycode 30 = VoidSymbol
+ Altgr Alt keycode 30 = VoidSymbol
+ Altgr Control Alt keycode 30 = VoidSymbol
+ Shift Altgr keycode 30 = AE
+ Shift Altgr Control keycode 30 = VoidSymbol
+ Shift Altgr Alt keycode 30 = VoidSymbol
+ Shift Altgr Control Alt keycode 30 = VoidSymbol
+keycode 31 = u
+ Control keycode 31 = Control_u
+ Alt keycode 31 = Meta_u
+ Control Alt keycode 31 = Meta_Control_u
+ Shift keycode 31 = U
+ Shift Control keycode 31 = VoidSymbol
+ Shift Alt keycode 31 = Meta_U
+ Shift Control Alt keycode 31 = VoidSymbol
+ Altgr keycode 31 = ugrave
+ Altgr Control keycode 31 = VoidSymbol
+ Altgr Alt keycode 31 = VoidSymbol
+ Altgr Control Alt keycode 31 = VoidSymbol
+ Shift Altgr keycode 31 = Ugrave
+ Shift Altgr Control keycode 31 = VoidSymbol
+ Shift Altgr Alt keycode 31 = VoidSymbol
+ Shift Altgr Control Alt keycode 31 = VoidSymbol
+keycode 32 = +i
+ Control keycode 32 = Control_i
+ Alt keycode 32 = Meta_i
+ Control Alt keycode 32 = VoidSymbol
+ Shift keycode 32 = +I
+ Shift Control keycode 32 = VoidSymbol
+ Shift Alt keycode 32 = Meta_I
+ Shift Control Alt keycode 32 = VoidSymbol
+ Altgr keycode 32 = dead_diaeresis
+ Altgr Control keycode 32 = VoidSymbol
+ Altgr Alt keycode 32 = VoidSymbol
+ Altgr Control Alt keycode 32 = VoidSymbol
+ Shift Altgr keycode 32 = VoidSymbol
+ Shift Altgr Control keycode 32 = VoidSymbol
+ Shift Altgr Alt keycode 32 = VoidSymbol
+ Shift Altgr Control Alt keycode 32 = VoidSymbol
+keycode 33 = +e
+ Control keycode 33 = Control_e
+ Alt keycode 33 = Meta_e
+ Control Alt keycode 33 = Meta_Control_e
+ Shift keycode 33 = +E
+ Shift Control keycode 33 = VoidSymbol
+ Shift Alt keycode 33 = Meta_E
+ Shift Control Alt keycode 33 = VoidSymbol
+ Altgr keycode 33 = 0xa4
+ Altgr Control keycode 33 = VoidSymbol
+ Altgr Alt keycode 33 = VoidSymbol
+ Altgr Control Alt keycode 33 = VoidSymbol
+ Shift Altgr keycode 33 = VoidSymbol
+ Shift Altgr Control keycode 33 = VoidSymbol
+ Shift Altgr Alt keycode 33 = VoidSymbol
+ Shift Altgr Control Alt keycode 33 = VoidSymbol
+keycode 34 = comma
+ Control keycode 34 = VoidSymbol
+ Alt keycode 34 = Meta_comma
+ Control Alt keycode 34 = VoidSymbol
+ Shift keycode 34 = semicolon
+ Shift Control keycode 34 = VoidSymbol
+ Shift Alt keycode 34 = Meta_semicolon
+ Shift Control Alt keycode 34 = VoidSymbol
+ Altgr keycode 34 = VoidSymbol
+ Altgr Control keycode 34 = VoidSymbol
+ Altgr Alt keycode 34 = VoidSymbol
+ Altgr Control Alt keycode 34 = VoidSymbol
+ Shift Altgr keycode 34 = VoidSymbol
+ Shift Altgr Control keycode 34 = VoidSymbol
+ Shift Altgr Alt keycode 34 = VoidSymbol
+ Shift Altgr Control Alt keycode 34 = VoidSymbol
+keycode 35 = +c
+ Control keycode 35 = Control_c
+ Alt keycode 35 = Meta_c
+ Control Alt keycode 35 = Meta_Control_c
+ Shift keycode 35 = +C
+ Shift Control keycode 35 = VoidSymbol
+ Shift Alt keycode 35 = Meta_C
+ Shift Control Alt keycode 35 = VoidSymbol
+ Altgr keycode 35 = copyright
+ Altgr Control keycode 35 = VoidSymbol
+ Altgr Alt keycode 35 = VoidSymbol
+ Altgr Control Alt keycode 35 = VoidSymbol
+ Shift Altgr keycode 35 = VoidSymbol
+ Shift Altgr Control keycode 35 = VoidSymbol
+ Shift Altgr Alt keycode 35 = VoidSymbol
+ Shift Altgr Control Alt keycode 35 = VoidSymbol
+keycode 36 = t
+ Control keycode 36 = Control_t
+ Alt keycode 36 = Meta_t
+ Control Alt keycode 36 = Meta_Control_t
+ Shift keycode 36 = T
+ Shift Control keycode 36 = VoidSymbol
+ Shift Alt keycode 36 = Meta_T
+ Shift Control Alt keycode 36 = VoidSymbol
+ Altgr keycode 36 = thorn
+ Altgr Control keycode 36 = VoidSymbol
+ Altgr Alt keycode 36 = VoidSymbol
+ Altgr Control Alt keycode 36 = VoidSymbol
+ Shift Altgr keycode 36 = THORN
+ Shift Altgr Control keycode 36 = VoidSymbol
+ Shift Altgr Alt keycode 36 = VoidSymbol
+ Shift Altgr Control Alt keycode 36 = VoidSymbol
+keycode 37 = +s
+ Control keycode 37 = Control_s
+ Alt keycode 37 = Meta_s
+ Control Alt keycode 37 = Meta_Control_s
+ Shift keycode 37 = +S
+ Shift Control keycode 37 = VoidSymbol
+ Shift Alt keycode 37 = Meta_S
+ Shift Control Alt keycode 37 = VoidSymbol
+ Altgr keycode 37 = ssharp
+ Altgr Control keycode 37 = VoidSymbol
+ Altgr Alt keycode 37 = VoidSymbol
+ Altgr Control Alt keycode 37 = VoidSymbol
+ Shift Altgr keycode 37 = VoidSymbol
+ Shift Altgr Control keycode 37 = VoidSymbol
+ Shift Altgr Alt keycode 37 = VoidSymbol
+ Shift Altgr Control Alt keycode 37 = VoidSymbol
+keycode 38 = +r
+ Control keycode 38 = Control_r
+ Alt keycode 38 = Meta_r
+ Control Alt keycode 38 = Meta_Control_r
+ Shift keycode 38 = +R
+ Shift Control keycode 38 = VoidSymbol
+ Shift Alt keycode 38 = Meta_R
+ Shift Control Alt keycode 38 = VoidSymbol
+ Altgr keycode 38 = registered
+ Altgr Control keycode 38 = VoidSymbol
+ Altgr Alt keycode 38 = VoidSymbol
+ Altgr Control Alt keycode 38 = VoidSymbol
+ Shift Altgr keycode 38 = VoidSymbol
+ Shift Altgr Control keycode 38 = VoidSymbol
+ Shift Altgr Alt keycode 38 = VoidSymbol
+ Shift Altgr Control Alt keycode 38 = VoidSymbol
+keycode 39 = +n
+ Control keycode 39 = Control_n
+ Alt keycode 39 = Meta_n
+ Control Alt keycode 39 = Meta_Control_n
+ Shift keycode 39 = +N
+ Shift Control keycode 39 = VoidSymbol
+ Shift Alt keycode 39 = Meta_N
+ Shift Control Alt keycode 39 = VoidSymbol
+ Altgr keycode 39 = dead_tilde
+ Altgr Control keycode 39 = VoidSymbol
+ Altgr Alt keycode 39 = Meta_asciitilde
+ Altgr Control Alt keycode 39 = VoidSymbol
+ Shift Altgr keycode 39 = VoidSymbol
+ Shift Altgr Control keycode 39 = VoidSymbol
+ Shift Altgr Alt keycode 39 = VoidSymbol
+ Shift Altgr Control Alt keycode 39 = VoidSymbol
+keycode 40 = +m
+ Control keycode 40 = Control_m
+ Alt keycode 40 = Meta_m
+ Control Alt keycode 40 = Meta_Control_m
+ Shift keycode 40 = +M
+ Shift Control keycode 40 = VoidSymbol
+ Shift Alt keycode 40 = Meta_M
+ Shift Control Alt keycode 40 = VoidSymbol
+ Altgr keycode 40 = VoidSymbol
+ Altgr Control keycode 40 = VoidSymbol
+ Altgr Alt keycode 40 = VoidSymbol
+ Altgr Control Alt keycode 40 = VoidSymbol
+ Shift Altgr keycode 40 = masculine
+ Shift Altgr Control keycode 40 = VoidSymbol
+ Shift Altgr Alt keycode 40 = VoidSymbol
+ Shift Altgr Control Alt keycode 40 = VoidSymbol
+keycode 43 = +ccedilla
+ Control keycode 43 = VoidSymbol
+ Alt keycode 43 = VoidSymbol
+ Control Alt keycode 43 = VoidSymbol
+ Shift keycode 43 = +Ccedilla
+ Shift Control keycode 43 = VoidSymbol
+ Shift Alt keycode 43 = VoidSymbol
+ Shift Control Alt keycode 43 = VoidSymbol
+ Altgr keycode 43 = dead_cedilla
+ Altgr Control keycode 43 = VoidSymbol
+ Altgr Alt keycode 43 = VoidSymbol
+ Altgr Control Alt keycode 43 = VoidSymbol
+ Shift Altgr keycode 43 = VoidSymbol
+ Shift Altgr Control keycode 43 = VoidSymbol
+ Shift Altgr Alt keycode 43 = VoidSymbol
+ Shift Altgr Control Alt keycode 43 = VoidSymbol
+keycode 86 = +ecircumflex
+ Control keycode 86 = VoidSymbol
+ Alt keycode 86 = VoidSymbol
+ Control Alt keycode 86 = VoidSymbol
+ Shift keycode 86 = +Ecircumflex
+ Shift Control keycode 86 = VoidSymbol
+ Shift Alt keycode 86 = VoidSymbol
+ Shift Control Alt keycode 86 = VoidSymbol
+ Altgr keycode 86 = slash
+ Altgr Control keycode 86 = VoidSymbol
+ Altgr Alt keycode 86 = Meta_slash
+ Altgr Control Alt keycode 86 = VoidSymbol
+ Shift Altgr keycode 86 = VoidSymbol
+ Shift Altgr Control keycode 86 = VoidSymbol
+ Shift Altgr Alt keycode 86 = VoidSymbol
+ Shift Altgr Control Alt keycode 86 = VoidSymbol
+keycode 44 = +agrave
+ Control keycode 44 = VoidSymbol
+ Alt keycode 44 = VoidSymbol
+ Control Alt keycode 44 = VoidSymbol
+ Shift keycode 44 = +Agrave
+ Shift Control keycode 44 = VoidSymbol
+ Shift Alt keycode 44 = VoidSymbol
+ Shift Control Alt keycode 44 = VoidSymbol
+ Altgr keycode 44 = backslash
+ Altgr Control keycode 44 = VoidSymbol
+ Altgr Alt keycode 44 = Meta_backslash
+ Altgr Control Alt keycode 44 = Meta_Control_backslash
+ Shift Altgr keycode 44 = VoidSymbol
+ Shift Altgr Control keycode 44 = VoidSymbol
+ Shift Altgr Alt keycode 44 = VoidSymbol
+ Shift Altgr Control Alt keycode 44 = VoidSymbol
+keycode 45 = +y
+ Control keycode 45 = Control_y
+ Alt keycode 45 = Meta_y
+ Control Alt keycode 45 = Meta_Control_y
+ Shift keycode 45 = +Y
+ Shift Control keycode 45 = VoidSymbol
+ Shift Alt keycode 45 = Meta_Y
+ Shift Control Alt keycode 45 = VoidSymbol
+ Altgr keycode 45 = braceleft
+ Altgr Control keycode 45 = VoidSymbol
+ Altgr Alt keycode 45 = Meta_braceleft
+ Altgr Control Alt keycode 45 = VoidSymbol
+ Shift Altgr keycode 45 = VoidSymbol
+ Shift Altgr Control keycode 45 = VoidSymbol
+ Shift Altgr Alt keycode 45 = VoidSymbol
+ Shift Altgr Control Alt keycode 45 = VoidSymbol
+keycode 46 = +x
+ Control keycode 46 = Control_x
+ Alt keycode 46 = Meta_x
+ Control Alt keycode 46 = Meta_Control_x
+ Shift keycode 46 = +X
+ Shift Control keycode 46 = VoidSymbol
+ Shift Alt keycode 46 = Meta_X
+ Shift Control Alt keycode 46 = VoidSymbol
+ Altgr keycode 46 = braceright
+ Altgr Control keycode 46 = VoidSymbol
+ Altgr Alt keycode 46 = Meta_braceright
+ Altgr Control Alt keycode 46 = VoidSymbol
+ Shift Altgr keycode 46 = VoidSymbol
+ Shift Altgr Control keycode 46 = VoidSymbol
+ Shift Altgr Alt keycode 46 = VoidSymbol
+ Shift Altgr Control Alt keycode 46 = VoidSymbol
+keycode 47 = period
+ Control keycode 47 = VoidSymbol
+ Alt keycode 47 = Meta_period
+ Control Alt keycode 47 = VoidSymbol
+ Shift keycode 47 = colon
+ Shift Control keycode 47 = VoidSymbol
+ Shift Alt keycode 47 = Meta_colon
+ Shift Control Alt keycode 47 = VoidSymbol
+ Altgr keycode 47 = VoidSymbol
+ Altgr Control keycode 47 = VoidSymbol
+ Altgr Alt keycode 47 = VoidSymbol
+ Altgr Control Alt keycode 47 = VoidSymbol
+ Shift Altgr keycode 47 = periodcentered
+ Shift Altgr Control keycode 47 = VoidSymbol
+ Shift Altgr Alt keycode 47 = VoidSymbol
+ Shift Altgr Control Alt keycode 47 = VoidSymbol
+keycode 48 = +k
+ Control keycode 48 = Control_k
+ Alt keycode 48 = Meta_k
+ Control Alt keycode 48 = Meta_Control_k
+ Shift keycode 48 = +K
+ Shift Control keycode 48 = VoidSymbol
+ Shift Alt keycode 48 = Meta_K
+ Shift Control Alt keycode 48 = VoidSymbol
+ Altgr keycode 48 = asciitilde
+ Altgr Control keycode 48 = VoidSymbol
+ Altgr Alt keycode 48 = Meta_asciitilde
+ Altgr Control Alt keycode 48 = VoidSymbol
+ Shift Altgr keycode 48 = VoidSymbol
+ Shift Altgr Control keycode 48 = VoidSymbol
+ Shift Altgr Alt keycode 48 = VoidSymbol
+ Shift Altgr Control Alt keycode 48 = VoidSymbol
+keycode 49 = apostrophe
+ Control keycode 49 = VoidSymbol
+ Alt keycode 49 = Meta_apostrophe
+ Control Alt keycode 49 = VoidSymbol
+ Shift keycode 49 = question
+ Shift Control keycode 49 = VoidSymbol
+ Shift Alt keycode 49 = Meta_question
+ Shift Control Alt keycode 49 = VoidSymbol
+ Altgr keycode 49 = questiondown
+ Altgr Control keycode 49 = VoidSymbol
+ Altgr Alt keycode 49 = VoidSymbol
+ Altgr Control Alt keycode 49 = VoidSymbol
+ Shift Altgr keycode 49 = VoidSymbol
+ Shift Altgr Control keycode 49 = VoidSymbol
+ Shift Altgr Alt keycode 49 = VoidSymbol
+ Shift Altgr Control Alt keycode 49 = VoidSymbol
+keycode 50 = +q
+ Control keycode 50 = Control_q
+ Alt keycode 50 = Meta_q
+ Control Alt keycode 50 = Meta_Control_q
+ Shift keycode 50 = +Q
+ Shift Control keycode 50 = VoidSymbol
+ Shift Alt keycode 50 = Meta_Q
+ Shift Control Alt keycode 50 = VoidSymbol
+ Altgr keycode 50 = VoidSymbol
+ Altgr Control keycode 50 = VoidSymbol
+ Altgr Alt keycode 50 = VoidSymbol
+ Altgr Control Alt keycode 50 = VoidSymbol
+ Shift Altgr keycode 50 = VoidSymbol
+ Shift Altgr Control keycode 50 = VoidSymbol
+ Shift Altgr Alt keycode 50 = VoidSymbol
+ Shift Altgr Control Alt keycode 50 = VoidSymbol
+keycode 51 = +g
+ Control keycode 51 = Control_g
+ Alt keycode 51 = Meta_g
+ Control Alt keycode 51 = Meta_Control_g
+ Shift keycode 51 = +G
+ Shift Control keycode 51 = VoidSymbol
+ Shift Alt keycode 51 = Meta_G
+ Shift Control Alt keycode 51 = VoidSymbol
+ Altgr keycode 51 = VoidSymbol
+ Altgr Control keycode 51 = VoidSymbol
+ Altgr Alt keycode 51 = VoidSymbol
+ Altgr Control Alt keycode 51 = VoidSymbol
+ Shift Altgr keycode 51 = VoidSymbol
+ Shift Altgr Control keycode 51 = VoidSymbol
+ Shift Altgr Alt keycode 51 = VoidSymbol
+ Shift Altgr Control Alt keycode 51 = VoidSymbol
+keycode 52 = +h
+ Control keycode 52 = Control_h
+ Alt keycode 52 = Meta_h
+ Control Alt keycode 52 = VoidSymbol
+ Shift keycode 52 = +H
+ Shift Control keycode 52 = VoidSymbol
+ Shift Alt keycode 52 = Meta_H
+ Shift Control Alt keycode 52 = VoidSymbol
+ Altgr keycode 52 = VoidSymbol
+ Altgr Control keycode 52 = VoidSymbol
+ Altgr Alt keycode 52 = VoidSymbol
+ Altgr Control Alt keycode 52 = VoidSymbol
+ Shift Altgr keycode 52 = VoidSymbol
+ Shift Altgr Control keycode 52 = VoidSymbol
+ Shift Altgr Alt keycode 52 = VoidSymbol
+ Shift Altgr Control Alt keycode 52 = VoidSymbol
+keycode 53 = +f
+ Control keycode 53 = Control_f
+ Alt keycode 53 = Meta_f
+ Control Alt keycode 53 = Meta_Control_f
+ Shift keycode 53 = +F
+ Shift Control keycode 53 = VoidSymbol
+ Shift Alt keycode 53 = Meta_F
+ Shift Control Alt keycode 53 = VoidSymbol
+ Altgr keycode 53 = dead_ogonek
+ Altgr Control keycode 53 = VoidSymbol
+ Altgr Alt keycode 53 = VoidSymbol
+ Altgr Control Alt keycode 53 = VoidSymbol
+ Shift Altgr keycode 53 = ordfeminine
+ Shift Altgr Control keycode 53 = VoidSymbol
+ Shift Altgr Alt keycode 53 = VoidSymbol
+ Shift Altgr Control Alt keycode 53 = VoidSymbol
+keycode 57 = space
+ Control keycode 57 = VoidSymbol
+ Alt keycode 57 = Meta_space
+ Control Alt keycode 57 = VoidSymbol
+ Shift keycode 57 = nobreakspace
+ Shift Control keycode 57 = VoidSymbol
+ Shift Alt keycode 57 = VoidSymbol
+ Shift Control Alt keycode 57 = VoidSymbol
+ Altgr keycode 57 = underscore
+ Altgr Control keycode 57 = VoidSymbol
+ Altgr Alt keycode 57 = Meta_underscore
+ Altgr Control Alt keycode 57 = Meta_Control_underscore
+ Shift Altgr keycode 57 = VoidSymbol
+ Shift Altgr Control keycode 57 = VoidSymbol
+ Shift Altgr Alt keycode 57 = VoidSymbol
+ Shift Altgr Control Alt keycode 57 = VoidSymbol
+
+
+# include "windowkeys"
+################### windowkeys #################################
+# Extra 105 windows keys
+
+keycode 125 = Decr_Console
+keycode 126 = Incr_Console
+keycode 127 = Compose
+################################################################
+
+
+keycode 1 = Escape Escape
+keycode 14 = Delete Delete
+keycode 15 = Tab Tab
+keycode 28 = Return
+keycode 29 = Control
+keycode 42 = Shift
+keycode 54 = Shift
+keycode 56 = Alt
+keycode 58 = Caps_Lock
+keycode 97 = Control
diff --git a/data/keymaps/i386/qwerty/it.map b/data/keymaps/i386/qwerty/it.map
index 38abb39..11e20fe 100644
--- a/data/keymaps/i386/qwerty/it.map
+++ b/data/keymaps/i386/qwerty/it.map
@@ -1,8 +1,4 @@
-# Italian keymap with emacs enhancements
-# Beta version Mon May 2 19:57:25 WET DST 1994
-# Available for anon. ftp at cnuce_arch.cnr.it:/pub/Linux-local/kbd/it.map
-#
-# Based on all other keymaps available in Slackware-1.2.0.
+# Italian keymap
#
# '@', '#', '[', and ']' are obtained by AltGr with the appropriate key.
#
@@ -10,143 +6,155 @@
# They can be obtained by AltGr-(, AltGr-), AltGr-=, AltGr-', AltGr-igrave
# and AltGr-ugrave respectively.
#
-# I have also added most Alt-Shift and Ctrl-Alt codes needed for emacs
-# with the standard keymap of the fundamental mode.
+# Added also euro sign and cent, obtained by AltGr-e and AltGr-c respectively.
#
-# Place in your ~/.emacs the following two lines:
-# (standard-display-european t)
-# (set-input-mode nil nil 1)
+# The compose key is PrintScrn.
#
-# Place in your /usr/lib/X11/Xconfig:
-# LeftAlt Meta
-# RightAlt ModeShift
-#
-# To use high characters with other programs, read the documentation ;-)
-# Please report all bugs and improvement proposals to the address below.
-#
-# Buona fortuna,
-# Dario Besseghini <besseghi@dm.unipi.it>
-#
-keymaps 0-2,4,6,8-9,12
-include "linux-with-alt-and-altgr"
+# Emanuele Tomasi <targzeta@gmail.com>
+
+keymaps 0-3,4-6,8-10,12-14
+include "qwerty-layout"
+include "linux-keys-bare"
+
strings as usual
-keycode 1 = Escape Escape
- alt keycode 1 = Meta_Escape
-keycode 2 = one exclam
- alt keycode 2 = Meta_one
- shift alt keycode 2 = Meta_exclam
-keycode 3 = two quotedbl
- control keycode 3 = nul
- alt keycode 3 = Meta_two
- control alt keycode 3 = Meta_nul
-keycode 4 = three sterling
- control keycode 4 = Escape
- alt keycode 4 = Meta_three
- control alt keycode 4 = Meta_Escape
-keycode 5 = four dollar
- control keycode 5 = Control_backslash
- alt keycode 5 = Meta_four
- shift alt keycode 5 = Meta_dollar
- control alt keycode 5 = Meta_Control_backslash
-keycode 6 = five percent
- control keycode 6 = Control_bracketright
- alt keycode 6 = Meta_five
- shift alt keycode 6 = Meta_percent
-keycode 7 = six ampersand
- control keycode 7 = Control_asciicircum
- alt keycode 7 = Meta_six
-keycode 8 = seven slash
- control keycode 8 = Control_underscore
- alt keycode 8 = Meta_seven
- shift alt keycode 8 = Meta_slash
-keycode 9 = eight parenleft braceleft
- control keycode 9 = Delete
- alt keycode 9 = Meta_eight
- shift alt keycode 9 = Meta_parenleft
- control alt keycode 9 = Meta_Delete
-keycode 10 = nine parenright braceright
- alt keycode 10 = Meta_nine
- shift alt keycode 10 = Meta_parenright
-keycode 11 = zero equal asciitilde
- alt keycode 11 = Meta_zero
- shift alt keycode 11 = Meta_equal
-keycode 12 = apostrophe question grave
- control keycode 12 = Delete
- alt keycode 12 = Meta_minus
- control alt keycode 12 = Meta_Delete
-keycode 13 = igrave asciicircum iacute
- control keycode 13 = Control_asciicircum
- alt keycode 13 = Meta_equal
- shift alt keycode 13 = Meta_asciicircum
-keycode 14 = Delete Delete
- control keycode 14 = Control_underscore
- alt keycode 14 = Meta_Delete
-keycode 15 = Tab Meta_Tab
- alt keycode 15 = Meta_Tab
-keycode 16 = q
-keycode 17 = w
-keycode 18 = e
-keycode 19 = r
-keycode 20 = t
-keycode 21 = y
-keycode 22 = u
-keycode 23 = i
-keycode 24 = o
-keycode 25 = p
-keycode 26 = egrave eacute bracketleft
- control keycode 26 = Escape
- alt keycode 26 = Meta_bracketleft
-keycode 27 = plus asterisk bracketright
- control keycode 27 = Control_bracketright
- alt keycode 27 = Meta_bracketright
+keycode 1 = Escape
+keycode 2 = one
+keycode 3 = two
+keycode 4 = three
+keycode 5 = four
+keycode 6 = five
+keycode 7 = six
+keycode 8 = seven
+keycode 9 = eight
+keycode 10 = nine
+keycode 11 = zero
+keycode 12 = apostrophe
+keycode 13 = igrave
+keycode 14 = Delete
+#keycode 14 = BackSpace
+keycode 15 = Tab
+keycode 26 = egrave
+keycode 27 = plus
keycode 28 = Return
- alt keycode 28 = Meta_Control_m
keycode 29 = Control
-keycode 30 = a
-keycode 31 = s
-keycode 32 = d
-keycode 33 = f
-keycode 34 = g
-keycode 35 = h
-keycode 36 = j
-keycode 37 = k
-keycode 38 = l
-keycode 39 = ograve ccedilla at
- control keycode 39 = nul
- alt keycode 39 = Meta_at
- control alt keycode 39 = Meta_nul
-keycode 40 = agrave degree numbersign
- control keycode 40 = Control_g
-keycode 41 = backslash bar
- control keycode 41 = Control_backslash
- alt keycode 41 = Meta_backslash
- shift alt keycode 41 = Meta_bar
+keycode 39 = ograve
+keycode 40 = agrave
+keycode 41 = backslash
keycode 42 = Shift
-keycode 43 = ugrave section uacute
-keycode 44 = z
-keycode 45 = x
-keycode 46 = c
-keycode 47 = v
-keycode 48 = b
-keycode 49 = n
-keycode 50 = m
-keycode 51 = comma semicolon
- alt keycode 51 = Meta_comma
- shift alt keycode 51 = Meta_semicolon
-keycode 52 = period colon
- alt keycode 52 = Meta_period
-keycode 53 = minus underscore
- control keycode 53 = Control_underscore
- alt keycode 53 = Meta_minus
+keycode 43 = ugrave
+keycode 51 = comma
+keycode 52 = period
+keycode 53 = minus
keycode 54 = Shift
keycode 56 = Alt
keycode 57 = space
- control keycode 57 = nul
- alt keycode 57 = Meta_space
- control alt keycode 57 = Meta_nul
keycode 58 = Caps_Lock
-keycode 86 = less greater
- alt keycode 86 = Meta_less
- shift alt keycode 86 = Meta_greater
+keycode 86 = less
keycode 97 = Control
+keycode 99 = Compose # PrintScrn
+keycode 100 = AltGr
+
+shift keycode 1 = Escape
+shift keycode 2 = exclam
+shift keycode 3 = quotedbl
+shift keycode 4 = sterling
+shift keycode 5 = dollar
+shift keycode 6 = percent
+shift keycode 7 = ampersand
+shift keycode 8 = slash
+shift keycode 9 = parenleft
+shift keycode 10 = parenright
+shift keycode 11 = equal
+shift keycode 12 = question
+shift keycode 13 = asciicircum
+shift keycode 26 = eacute
+shift keycode 27 = asterisk
+shift keycode 39 = ccedilla
+shift keycode 40 = degree
+shift keycode 41 = bar
+shift keycode 43 = section
+shift keycode 51 = semicolon
+shift keycode 52 = colon
+shift keycode 53 = underscore
+shift keycode 86 = greater
+
+altgr keycode 9 = braceleft
+altgr keycode 10 = braceright
+altgr keycode 11 = asciitilde
+altgr keycode 12 = grave
+altgr keycode 13 = iacute
+altgr keycode 18 = currency # Euro sign
+altgr keycode 26 = bracketleft
+altgr keycode 27 = bracketright
+altgr keycode 39 = at
+altgr keycode 40 = numbersign
+altgr keycode 43 = uacute
+altgr keycode 46 = cent
+
+shift altgr keycode 46 = copyright
+
+control keycode 41 = Control_backslash
+control keycode 58 = Control_Lock
+
+shift control keycode 13 = Control_asciicircum
+shift control keycode 53 = Control_underscore
+
+altgr control keycode 27 = Control_bracketright
+
+alt keycode 1 = Meta_Escape
+alt keycode 2 = Meta_one
+alt keycode 3 = Meta_two
+alt keycode 4 = Meta_three
+alt keycode 5 = Meta_four
+alt keycode 6 = Meta_five
+alt keycode 7 = Meta_six
+alt keycode 8 = Meta_seven
+alt keycode 9 = Meta_eight
+alt keycode 10 = Meta_nine
+alt keycode 11 = Meta_zero
+alt keycode 12 = Meta_apostrophe
+alt keycode 13 = Meta_igrave
+alt keycode 14 = Meta_Delete
+#alt keycode 14 = Meta_BackSpace
+alt keycode 15 = Meta_Tab
+alt keycode 27 = Meta_plus
+alt keycode 41 = Meta_backslash
+alt keycode 51 = Meta_comma
+alt keycode 52 = Meta_period
+alt keycode 53 = Meta_minus
+alt keycode 57 = Meta_space
+alt keycode 86 = Meta_less
+
+shift alt keycode 2 = Meta_exclam
+shift alt keycode 3 = Meta_quotedbl
+shift alt keycode 5 = Meta_dollar
+shift alt keycode 6 = Meta_percent
+shift alt keycode 7 = Meta_ampersand
+shift alt keycode 8 = Meta_slash
+shift alt keycode 9 = Meta_parenleft
+shift alt keycode 10 = Meta_parenright
+shift alt keycode 11 = Meta_equal
+shift alt keycode 12 = Meta_question
+shift alt keycode 13 = Meta_asciicircum
+shift alt keycode 27 = Meta_asterisk
+shift alt keycode 41 = Meta_bar
+shift alt keycode 51 = Meta_semicolon
+shift alt keycode 52 = Meta_colon
+shift alt keycode 86 = Meta_greater
+
+altgr alt keycode 9 = Meta_braceleft
+altgr alt keycode 10 = Meta_braceright
+altgr alt keycode 11 = Meta_asciitilde
+altgr alt keycode 12 = Meta_grave
+altgr alt keycode 26 = Meta_bracketleft
+altgr alt keycode 27 = Meta_bracketright
+altgr alt keycode 39 = Meta_at
+altgr alt keycode 40 = Meta_numbersign
+
+control alt keycode 41 = Meta_Control_backslash
+
+shift control alt keycode 53 = Meta_Control_underscore
+shift control alt keycode 13 = Meta_Control_asciicircum
+
+altgr control alt keycode 27 = Meta_Control_bracketright