chiark / gitweb /
vconsole: don't parse Fedora's KEYMAP= kernel parameters anymore
[elogind.git] / src / generate-kbd-model-map
1 #!/usr/bin/python
2
3 import system_config_keyboard.keyboard_models, sys
4
5 def strdash(s):
6         r = s.strip()
7
8         if r == "":
9                 return "-"
10
11         return r
12
13 def tab_extend(s, n = 1):
14
15         s = strdash(s)
16         k = len(s) / 8
17
18         if k >= n:
19                 f = 1
20         else:
21                 f = n - k
22
23         for x in range(0, f):
24                 s = s + "\t"
25
26         return s
27
28
29
30 models = system_config_keyboard.keyboard_models.KeyboardModels().get_models()
31
32 print "# Generated from system-config-keyboard's model list"
33
34 print "# consolelayout\t\txlayout\txmodel\t\txvariant\txoptions"
35
36 k = models.keys()
37
38 k.reverse()
39
40 for key in k:
41         value = models[key]
42
43         options = value[4]
44         if len(options) > 0:
45                 options = "terminate:ctrl_alt_bksp," + options
46         else:
47                 options = "terminate:ctrl_alt_bksp"
48
49         print "%s%s%s%s%s" % (tab_extend(key, 3), tab_extend(value[1]), tab_extend(value[2], 2), tab_extend(value[3], 2), options)