-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuinput_translate.py
167 lines (157 loc) · 5.16 KB
/
uinput_translate.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
import uinput
import string
UINPUT_TRANSLATE = {
'': (),
'a': uinput.KEY_A,
'b': uinput.KEY_B,
'c': uinput.KEY_C,
'd': uinput.KEY_D,
'e': uinput.KEY_E,
'f': uinput.KEY_F,
'g': uinput.KEY_G,
'h': uinput.KEY_H,
'i': uinput.KEY_I,
'j': uinput.KEY_J,
'k': uinput.KEY_K,
'l': uinput.KEY_L,
'm': uinput.KEY_M,
'n': uinput.KEY_N,
'o': uinput.KEY_O,
'p': uinput.KEY_P,
'q': uinput.KEY_Q,
'r': uinput.KEY_R,
's': uinput.KEY_S,
't': uinput.KEY_T,
'u': uinput.KEY_U,
'v': uinput.KEY_V,
'w': uinput.KEY_W,
'x': uinput.KEY_X,
'y': uinput.KEY_Y,
'z': uinput.KEY_Z,
'A': (uinput.KEY_LEFTSHIFT, uinput.KEY_A),
'B': (uinput.KEY_LEFTSHIFT, uinput.KEY_B),
'C': (uinput.KEY_LEFTSHIFT, uinput.KEY_C),
'D': (uinput.KEY_LEFTSHIFT, uinput.KEY_D),
'E': (uinput.KEY_LEFTSHIFT, uinput.KEY_E),
'F': (uinput.KEY_LEFTSHIFT, uinput.KEY_F),
'G': (uinput.KEY_LEFTSHIFT, uinput.KEY_G),
'H': (uinput.KEY_LEFTSHIFT, uinput.KEY_H),
'I': (uinput.KEY_LEFTSHIFT, uinput.KEY_I),
'J': (uinput.KEY_LEFTSHIFT, uinput.KEY_J),
'K': (uinput.KEY_LEFTSHIFT, uinput.KEY_K),
'L': (uinput.KEY_LEFTSHIFT, uinput.KEY_L),
'M': (uinput.KEY_LEFTSHIFT, uinput.KEY_M),
'N': (uinput.KEY_LEFTSHIFT, uinput.KEY_N),
'O': (uinput.KEY_LEFTSHIFT, uinput.KEY_O),
'P': (uinput.KEY_LEFTSHIFT, uinput.KEY_P),
'Q': (uinput.KEY_LEFTSHIFT, uinput.KEY_Q),
'R': (uinput.KEY_LEFTSHIFT, uinput.KEY_R),
'S': (uinput.KEY_LEFTSHIFT, uinput.KEY_S),
'T': (uinput.KEY_LEFTSHIFT, uinput.KEY_T),
'U': (uinput.KEY_LEFTSHIFT, uinput.KEY_U),
'V': (uinput.KEY_LEFTSHIFT, uinput.KEY_V),
'W': (uinput.KEY_LEFTSHIFT, uinput.KEY_W),
'X': (uinput.KEY_LEFTSHIFT, uinput.KEY_X),
'Y': (uinput.KEY_LEFTSHIFT, uinput.KEY_Y),
'Z': (uinput.KEY_LEFTSHIFT, uinput.KEY_Z),
'0': uinput.KEY_0,
'1': uinput.KEY_1,
'2': uinput.KEY_2,
'3': uinput.KEY_3,
'4': uinput.KEY_4,
'5': uinput.KEY_5,
'6': uinput.KEY_6,
'7': uinput.KEY_7,
'8': uinput.KEY_8,
'9': uinput.KEY_9,
')': (uinput.KEY_LEFTSHIFT, uinput.KEY_0),
'!': (uinput.KEY_LEFTSHIFT, uinput.KEY_1),
'@': (uinput.KEY_LEFTSHIFT, uinput.KEY_2),
'#': (uinput.KEY_LEFTSHIFT, uinput.KEY_3),
'$': (uinput.KEY_LEFTSHIFT, uinput.KEY_4),
'%': (uinput.KEY_LEFTSHIFT, uinput.KEY_5),
'^': (uinput.KEY_LEFTSHIFT, uinput.KEY_6),
'&': (uinput.KEY_LEFTSHIFT, uinput.KEY_7),
'*': (uinput.KEY_LEFTSHIFT, uinput.KEY_8),
'(': (uinput.KEY_LEFTSHIFT, uinput.KEY_9),
';': uinput.KEY_SEMICOLON,
':': (uinput.KEY_LEFTSHIFT, uinput.KEY_SEMICOLON),
' ': uinput.KEY_SPACE,
'[': uinput.KEY_LEFTBRACE,
'{': (uinput.KEY_LEFTSHIFT, uinput.KEY_LEFTBRACE),
']': uinput.KEY_RIGHTBRACE,
'}': (uinput.KEY_LEFTSHIFT, uinput.KEY_RIGHTBRACE),
'`': uinput.KEY_GRAVE,
'~': (uinput.KEY_LEFTSHIFT, uinput.KEY_GRAVE),
'/': uinput.KEY_SLASH,
'\\': uinput.KEY_BACKSLASH,
'.': uinput.KEY_DOT,
',': uinput.KEY_COMMA,
"'": uinput.KEY_APOSTROPHE,
'"': (uinput.KEY_LEFTSHIFT, uinput.KEY_APOSTROPHE),
'>' : (uinput.KEY_LEFTSHIFT, uinput.KEY_DOT),
'<' : (uinput.KEY_LEFTSHIFT, uinput.KEY_COMMA),
'-' : uinput.KEY_MINUS,
'_' : (uinput.KEY_LEFTSHIFT, uinput.KEY_MINUS),
'=' : uinput.KEY_EQUAL,
'+' : (uinput.KEY_LEFTSHIFT, uinput.KEY_EQUAL),
'?' : (uinput.KEY_LEFTSHIFT, uinput.KEY_SLASH),
'_entr': uinput.KEY_ENTER,
'_left': uinput.KEY_LEFT,
'_rght': uinput.KEY_RIGHT,
'_up': uinput.KEY_UP,
'_down': uinput.KEY_DOWN,
'_home': uinput.KEY_HOME,
'_end': uinput.KEY_END,
'_bksp': uinput.KEY_BACKSPACE,
'_tab': uinput.KEY_TAB,
'_shft': uinput.KEY_LEFTSHIFT,
'_ctrl': uinput.KEY_LEFTCTRL,
'_gui': uinput.KEY_LEFTMETA,
'_rctrl': uinput.KEY_RIGHTCTRL,
'_pgup': uinput.KEY_PAGEUP,
'_pgdn': uinput.KEY_PAGEDOWN,
'_esc': uinput.KEY_ESC,
'_del': uinput.KEY_DELETE,
'_ins': uinput.KEY_INSERT,
'_caps': uinput.KEY_CAPSLOCK,
'_prtsc': uinput.KEY_SYSRQ,
'_copy': uinput.KEY_COPY,
'_paste': uinput.KEY_PASTE,
'_cut': uinput.KEY_CUT,
'_undo': uinput.KEY_UNDO,
'_redo': uinput.KEY_REDO,
'_find': uinput.KEY_FIND,
'_mbt1': uinput.BTN_LEFT,
'_mbt2': uinput.BTN_RIGHT,
'_mbt3': uinput.BTN_MIDDLE,
'_scup': uinput.KEY_SCROLLUP,
'_scdn': uinput.KEY_SCROLLDOWN,
'_f1': uinput.KEY_F1,
'_f2': uinput.KEY_F2,
'_f3': uinput.KEY_F3,
'_f4': uinput.KEY_F4,
'_f5': uinput.KEY_F5,
'_f6': uinput.KEY_F6,
'_f7': uinput.KEY_F7,
'_f8': uinput.KEY_F8,
'_f9': uinput.KEY_F9,
'_f10': uinput.KEY_F10,
'_f11': uinput.KEY_F11,
'_f12': uinput.KEY_F12,
'_alta': (uinput.KEY_LEFTALT, uinput.KEY_TAB),
'_salta': (uinput.KEY_LEFTALT, uinput.KEY_LEFTSHIFT, uinput.KEY_TAB),
}
OTHERS = ( uinput.REL_X,
uinput.REL_Y,
uinput.REL_WHEEL,)
UINPUT_ACTIVATE = set()
for val in UINPUT_TRANSLATE.values():
if val == ():
continue
if isinstance(val[0], (list, tuple)):
UINPUT_ACTIVATE.update(val)
else:
UINPUT_ACTIVATE.add(val)
UINPUT_ACTIVATE.update(OTHERS)
UINPUT_ACTIVATE = list(sorted(UINPUT_ACTIVATE))