@@ -6,8 +6,7 @@ module RubyJard
6
6
class Keys
7
7
# X-Term: https://invisible-island.net/xterm/xterm-function-keys.html
8
8
END_LINE = [ "\n " , "\r \n " , "\r " ] . freeze
9
- CTRL_C = "\u0003 "
10
- CTRL_D = "\u0004 "
9
+ ESC = "\e "
11
10
12
11
F1 = "\e OP"
13
12
F2 = "\e OQ"
@@ -34,5 +33,192 @@ class Keys
34
33
SHIFT_F10 = "\e [21;2~"
35
34
SHIFT_F11 = "\e [23;2~"
36
35
SHIFT_F12 = "\e [24;2~"
36
+
37
+ CTRL_A = "\C -a"
38
+ CTRL_B = "\C -b"
39
+ CTRL_C = "\C -c"
40
+ CTRL_D = "\C -d"
41
+ CTRL_E = "\C -e"
42
+ CTRL_F = "\C -f"
43
+ CTRL_G = "\C -g"
44
+ CTRL_H = "\C -h"
45
+ CTRL_I = "\C -i"
46
+ CTRL_J = "\C -j"
47
+ CTRL_K = "\C -k"
48
+ CTRL_L = "\C -l"
49
+ CTRL_M = "\C -m"
50
+ CTRL_N = "\C -n"
51
+ CTRL_O = "\C -o"
52
+ CTRL_P = "\C -p"
53
+ CTRL_Q = "\C -q"
54
+ CTRL_R = "\C -r"
55
+ CTRL_S = "\C -s"
56
+ CTRL_T = "\C -t"
57
+ CTRL_U = "\C -u"
58
+ CTRL_V = "\C -v"
59
+ CTRL_W = "\C -w"
60
+ CTRL_X = "\C -x"
61
+ CTRL_Y = "\C -y"
62
+ CTRL_Z = "\C -z"
63
+
64
+ CTRL_F1 = "\e [1;5P"
65
+ CTRL_F2 = "\e [1;5Q"
66
+ CTRL_F3 = "\e [1;5R"
67
+ CTRL_F4 = "\e [1;5S"
68
+ CTRL_F5 = "\e [15;5~"
69
+ CTRL_F6 = "\e [17;5~"
70
+ CTRL_F7 = "\e [18;5~"
71
+ CTRL_F8 = "\e [19;5~"
72
+ CTRL_F9 = "\e [20;5~"
73
+ CTRL_F10 = "\e [21;5~"
74
+ CTRL_F11 = "\e [23;5~"
75
+ CTRL_F12 = "\e [24;5~"
76
+
77
+ CTRL_SHIFT_A = "\C -A"
78
+ CTRL_SHIFT_B = "\C -B"
79
+ CTRL_SHIFT_C = "\C -C"
80
+ CTRL_SHIFT_D = "\C -D"
81
+ CTRL_SHIFT_E = "\C -E"
82
+ CTRL_SHIFT_F = "\C -F"
83
+ CTRL_SHIFT_G = "\C -G"
84
+ CTRL_SHIFT_H = "\C -H"
85
+ CTRL_SHIFT_I = "\C -I"
86
+ CTRL_SHIFT_J = "\C -J"
87
+ CTRL_SHIFT_K = "\C -K"
88
+ CTRL_SHIFT_L = "\C -L"
89
+ CTRL_SHIFT_M = "\C -M"
90
+ CTRL_SHIFT_N = "\C -N"
91
+ CTRL_SHIFT_O = "\C -O"
92
+ CTRL_SHIFT_P = "\C -P"
93
+ CTRL_SHIFT_Q = "\C -Q"
94
+ CTRL_SHIFT_R = "\C -R"
95
+ CTRL_SHIFT_S = "\C -S"
96
+ CTRL_SHIFT_T = "\C -T"
97
+ CTRL_SHIFT_U = "\C -U"
98
+ CTRL_SHIFT_V = "\C -V"
99
+ CTRL_SHIFT_W = "\C -W"
100
+ CTRL_SHIFT_X = "\C -X"
101
+ CTRL_SHIFT_Y = "\C -Y"
102
+ CTRL_SHIFT_Z = "\C -Z"
103
+
104
+ CTRL_SHIFT_F1 = "\e [1;6P"
105
+ CTRL_SHIFT_F2 = "\e [1;6Q"
106
+ CTRL_SHIFT_F3 = "\e [1;6R"
107
+ CTRL_SHIFT_F4 = "\e [1;6S"
108
+ CTRL_SHIFT_F5 = "\e [15;6~"
109
+ CTRL_SHIFT_F6 = "\e [17;6~"
110
+ CTRL_SHIFT_F7 = "\e [18;6~"
111
+ CTRL_SHIFT_F8 = "\e [19;6~"
112
+ CTRL_SHIFT_F9 = "\e [20;6~"
113
+ CTRL_SHIFT_F10 = "\e [21;6~"
114
+ CTRL_SHIFT_F11 = "\e [23;6~"
115
+ CTRL_SHIFT_F12 = "\e [24;6~"
116
+
117
+ META_A = "\e a"
118
+ META_B = "\e b"
119
+ META_C = "\e c"
120
+ META_D = "\e d"
121
+ META_E = "\e e"
122
+ META_F = "\e f"
123
+ META_G = "\e g"
124
+ META_H = "\e h"
125
+ META_I = "\e i"
126
+ META_J = "\e j"
127
+ META_K = "\e k"
128
+ META_L = "\e l"
129
+ META_M = "\e m"
130
+ META_N = "\e n"
131
+ META_O = "\e o"
132
+ META_P = "\e p"
133
+ META_Q = "\e q"
134
+ META_R = "\e r"
135
+ META_S = "\e s"
136
+ META_T = "\e t"
137
+ META_U = "\e u"
138
+ META_V = "\e v"
139
+ META_W = "\e w"
140
+ META_X = "\e x"
141
+ META_Y = "\e y"
142
+ META_Z = "\e z"
143
+
144
+ META_F1 = "\e [1;3P"
145
+ META_F2 = "\e [1;3Q"
146
+ META_F3 = "\e [1;3R"
147
+ META_F4 = "\e [1;3S"
148
+ META_F5 = "\e [15;3~"
149
+ META_F6 = "\e [17;3~"
150
+ META_F7 = "\e [18;3~"
151
+ META_F8 = "\e [19;3~"
152
+ META_F9 = "\e [20;3~"
153
+ META_F10 = "\e [21;3~"
154
+ META_F11 = "\e [23;3~"
155
+ META_F12 = "\e [24;3~"
156
+
157
+ META_SHIFT_A = "\e A"
158
+ META_SHIFT_B = "\e B"
159
+ META_SHIFT_C = "\e C"
160
+ META_SHIFT_D = "\e D"
161
+ META_SHIFT_E = "\e E"
162
+ META_SHIFT_F = "\e F"
163
+ META_SHIFT_G = "\e G"
164
+ META_SHIFT_H = "\e H"
165
+ META_SHIFT_I = "\e I"
166
+ META_SHIFT_J = "\e J"
167
+ META_SHIFT_K = "\e K"
168
+ META_SHIFT_L = "\e L"
169
+ META_SHIFT_M = "\e M"
170
+ META_SHIFT_N = "\e N"
171
+ META_SHIFT_O = "\e O"
172
+ META_SHIFT_P = "\e P"
173
+ META_SHIFT_Q = "\e Q"
174
+ META_SHIFT_R = "\e R"
175
+ META_SHIFT_S = "\e S"
176
+ META_SHIFT_T = "\e T"
177
+ META_SHIFT_U = "\e U"
178
+ META_SHIFT_V = "\e V"
179
+ META_SHIFT_W = "\e W"
180
+ META_SHIFT_X = "\e X"
181
+ META_SHIFT_Y = "\e Y"
182
+ META_SHIFT_Z = "\e Z"
183
+
184
+ META_SHIFT_F1 = "\e [1;4P"
185
+ META_SHIFT_F2 = "\e [1;4Q"
186
+ META_SHIFT_F3 = "\e [1;4R"
187
+ META_SHIFT_F4 = "\e [1;4S"
188
+ META_SHIFT_F5 = "\e [15;4~"
189
+ META_SHIFT_F6 = "\e [17;4~"
190
+ META_SHIFT_F7 = "\e [18;4~"
191
+ META_SHIFT_F8 = "\e [19;4~"
192
+ META_SHIFT_F9 = "\e [20;4~"
193
+ META_SHIFT_F10 = "\e [21;4~"
194
+ META_SHIFT_F11 = "\e [23;4~"
195
+ META_SHIFT_F12 = "\e [24;4~"
196
+
197
+ CTRL_META_A = "\e \C -a"
198
+ CTRL_META_B = "\e \C -b"
199
+ CTRL_META_C = "\e \C -c"
200
+ CTRL_META_D = "\e \C -d"
201
+ CTRL_META_E = "\e \C -e"
202
+ CTRL_META_F = "\e \C -f"
203
+ CTRL_META_G = "\e \C -g"
204
+ CTRL_META_H = "\e \C -h"
205
+ CTRL_META_I = "\e \C -i"
206
+ CTRL_META_J = "\e \C -j"
207
+ CTRL_META_K = "\e \C -k"
208
+ CTRL_META_L = "\e \C -l"
209
+ CTRL_META_M = "\e \C -m"
210
+ CTRL_META_N = "\e \C -n"
211
+ CTRL_META_O = "\e \C -o"
212
+ CTRL_META_P = "\e \C -p"
213
+ CTRL_META_Q = "\e \C -q"
214
+ CTRL_META_R = "\e \C -r"
215
+ CTRL_META_S = "\e \C -s"
216
+ CTRL_META_T = "\e \C -t"
217
+ CTRL_META_U = "\e \C -u"
218
+ CTRL_META_V = "\e \C -v"
219
+ CTRL_META_W = "\e \C -w"
220
+ CTRL_META_X = "\e \C -x"
221
+ CTRL_META_Y = "\e \C -y"
222
+ CTRL_META_Z = "\e \C -z"
37
223
end
38
224
end
0 commit comments