1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  | 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  | 
+
+
-
+
+
+
+
  | 
"""
# Keyboard chars proximity
Keyboard chars proximity
"""
def getKeyboardMap (sKeyboard):
    "return keyboard map as a dictionary of chars"
    return _dKeyboardMap.get(sKeyboard.lower(), {})
def getKeyboardList ():
    "return list of keyboards available"
    return _dKeyboardMap.keys()
_dKeyboardMap = {
    # keyboards by alphabetical order
    # bépo, colemak and dvorak users are assumed to do less typing errors.
    "azerty": {
  |