-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathevdev_mappings.rs
155 lines (154 loc) · 6.15 KB
/
evdev_mappings.rs
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
use crate::ParseError;
pub fn convert(s: &str) -> Result<evdev::Key, ParseError> {
let val = match s {
"q" => evdev::Key::KEY_Q,
"w" => evdev::Key::KEY_W,
"e" => evdev::Key::KEY_E,
"r" => evdev::Key::KEY_R,
"t" => evdev::Key::KEY_T,
"y" => evdev::Key::KEY_Y,
"u" => evdev::Key::KEY_U,
"i" => evdev::Key::KEY_I,
"o" => evdev::Key::KEY_O,
"p" => evdev::Key::KEY_P,
"a" => evdev::Key::KEY_A,
"s" => evdev::Key::KEY_S,
"d" => evdev::Key::KEY_D,
"f" => evdev::Key::KEY_F,
"g" => evdev::Key::KEY_G,
"h" => evdev::Key::KEY_H,
"j" => evdev::Key::KEY_J,
"k" => evdev::Key::KEY_K,
"l" => evdev::Key::KEY_L,
"z" => evdev::Key::KEY_Z,
"x" => evdev::Key::KEY_X,
"c" => evdev::Key::KEY_C,
"v" => evdev::Key::KEY_V,
"b" => evdev::Key::KEY_B,
"n" => evdev::Key::KEY_N,
"m" => evdev::Key::KEY_M,
"1" => evdev::Key::KEY_1,
"2" => evdev::Key::KEY_2,
"3" => evdev::Key::KEY_3,
"4" => evdev::Key::KEY_4,
"5" => evdev::Key::KEY_5,
"6" => evdev::Key::KEY_6,
"7" => evdev::Key::KEY_7,
"8" => evdev::Key::KEY_8,
"9" => evdev::Key::KEY_9,
"0" => evdev::Key::KEY_0,
"escape" => evdev::Key::KEY_ESC,
"backspace" => evdev::Key::KEY_BACKSPACE,
"capslock" => evdev::Key::KEY_CAPSLOCK,
"return" => evdev::Key::KEY_ENTER,
"enter" => evdev::Key::KEY_ENTER,
"tab" => evdev::Key::KEY_TAB,
"space" => evdev::Key::KEY_SPACE,
"plus" => evdev::Key::KEY_KPPLUS, // Shouldn't this be kpplu?
"kp0" => evdev::Key::KEY_KP0,
"kp1" => evdev::Key::KEY_KP1,
"kp2" => evdev::Key::KEY_KP2,
"kp3" => evdev::Key::KEY_KP3,
"kp4" => evdev::Key::KEY_KP4,
"kp5" => evdev::Key::KEY_KP5,
"kp6" => evdev::Key::KEY_KP6,
"kp7" => evdev::Key::KEY_KP7,
"kp8" => evdev::Key::KEY_KP8,
"kp9" => evdev::Key::KEY_KP9,
"kpasterisk" => evdev::Key::KEY_KPASTERISK,
"kpcomma" => evdev::Key::KEY_KPCOMMA,
"kpdot" => evdev::Key::KEY_KPDOT,
"kpenter" => evdev::Key::KEY_KPENTER,
"kpequal" => evdev::Key::KEY_KPEQUAL,
"kpjpcomma" => evdev::Key::KEY_KPJPCOMMA,
"kpleftparen" => evdev::Key::KEY_KPLEFTPAREN,
"kpminus" => evdev::Key::KEY_KPMINUS,
"kpplusminus" => evdev::Key::KEY_KPPLUSMINUS,
"kprightparen" => evdev::Key::KEY_KPRIGHTPAREN,
"minus" => evdev::Key::KEY_MINUS,
"-" => evdev::Key::KEY_MINUS,
"equal" => evdev::Key::KEY_EQUAL,
"=" => evdev::Key::KEY_EQUAL,
"grave" => evdev::Key::KEY_GRAVE,
"`" => evdev::Key::KEY_GRAVE,
"print" => evdev::Key::KEY_SYSRQ,
"volumeup" => evdev::Key::KEY_VOLUMEUP,
"xf86audioraisevolume" => evdev::Key::KEY_VOLUMEUP,
"volumedown" => evdev::Key::KEY_VOLUMEDOWN,
"xf86audiolowervolume" => evdev::Key::KEY_VOLUMEDOWN,
"mute" => evdev::Key::KEY_MUTE,
"xf86audiomute" => evdev::Key::KEY_MUTE,
"brightnessup" => evdev::Key::KEY_BRIGHTNESSUP,
"xf86monbrightnessup" => evdev::Key::KEY_BRIGHTNESSUP,
"brightnessdown" => evdev::Key::KEY_BRIGHTNESSDOWN,
"xf86audiomedia" => evdev::Key::KEY_MEDIA,
"xf86audiomicmute" => evdev::Key::KEY_MICMUTE,
"micmute" => evdev::Key::KEY_MICMUTE,
"xf86audionext" => evdev::Key::KEY_NEXTSONG,
"xf86audioplay" => evdev::Key::KEY_PLAYPAUSE,
"xf86audioprev" => evdev::Key::KEY_PREVIOUSSONG,
"xf86audiostop" => evdev::Key::KEY_STOP,
"xf86monbrightnessdown" => evdev::Key::KEY_BRIGHTNESSDOWN,
"," => evdev::Key::KEY_COMMA,
"comma" => evdev::Key::KEY_COMMA,
"." => evdev::Key::KEY_DOT,
"dot" => evdev::Key::KEY_DOT,
"period" => evdev::Key::KEY_DOT,
"/" => evdev::Key::KEY_SLASH,
"question" => evdev::Key::KEY_QUESTION,
"slash" => evdev::Key::KEY_SLASH,
"backslash" => evdev::Key::KEY_BACKSLASH,
"\\" => evdev::Key::KEY_BACKSLASH,
"leftbrace" => evdev::Key::KEY_LEFTBRACE,
"[" => evdev::Key::KEY_LEFTBRACE,
"bracketleft" => evdev::Key::KEY_LEFTBRACE,
"rightbrace" => evdev::Key::KEY_RIGHTBRACE,
"]" => evdev::Key::KEY_RIGHTBRACE,
"bracketright" => evdev::Key::KEY_RIGHTBRACE,
";" => evdev::Key::KEY_SEMICOLON,
"scroll_lock" => evdev::Key::KEY_SCROLLLOCK,
"semicolon" => evdev::Key::KEY_SEMICOLON,
"'" => evdev::Key::KEY_APOSTROPHE,
"apostrophe" => evdev::Key::KEY_APOSTROPHE,
"left" => evdev::Key::KEY_LEFT,
"right" => evdev::Key::KEY_RIGHT,
"up" => evdev::Key::KEY_UP,
"down" => evdev::Key::KEY_DOWN,
"pause" => evdev::Key::KEY_PAUSE,
"home" => evdev::Key::KEY_HOME,
"delete" => evdev::Key::KEY_DELETE,
"insert" => evdev::Key::KEY_INSERT,
"end" => evdev::Key::KEY_END,
"pause" => evdev::Key::KEY_PAUSE,
"prior" => evdev::Key::KEY_PAGEDOWN,
"next" => evdev::Key::KEY_PAGEUP,
"pagedown" => evdev::Key::KEY_PAGEDOWN,
"pageup" => evdev::Key::KEY_PAGEUP,
"f1" => evdev::Key::KEY_F1,
"f2" => evdev::Key::KEY_F2,
"f3" => evdev::Key::KEY_F3,
"f4" => evdev::Key::KEY_F4,
"f5" => evdev::Key::KEY_F5,
"f6" => evdev::Key::KEY_F6,
"f7" => evdev::Key::KEY_F7,
"f8" => evdev::Key::KEY_F8,
"f9" => evdev::Key::KEY_F9,
"f10" => evdev::Key::KEY_F10,
"f11" => evdev::Key::KEY_F11,
"f12" => evdev::Key::KEY_F12,
"f13" => evdev::Key::KEY_F13,
"f14" => evdev::Key::KEY_F14,
"f15" => evdev::Key::KEY_F15,
"f16" => evdev::Key::KEY_F16,
"f17" => evdev::Key::KEY_F17,
"f18" => evdev::Key::KEY_F18,
"f19" => evdev::Key::KEY_F19,
"f20" => evdev::Key::KEY_F20,
"f21" => evdev::Key::KEY_F21,
"f22" => evdev::Key::KEY_F22,
"f23" => evdev::Key::KEY_F23,
"f24" => evdev::Key::KEY_F24,
_ => return Err(ParseError::InvalidKey(s.to_string())),
};
Ok(val)
}