(data []byte)
| 276 | } |
| 277 | |
| 278 | func parse_length_4(data []byte) []XkbdCode { |
| 279 | if len(data) < 4 { |
| 280 | return nil |
| 281 | } |
| 282 | if data[0] != 27 { |
| 283 | a := KeycodeSingleCodes(int(data[0])) |
| 284 | b := parse_length_3(data[1:]) |
| 285 | if a != nil { |
| 286 | return append([]XkbdCode{a}, b...) |
| 287 | } |
| 288 | return b |
| 289 | } |
| 290 | if data[1] == 91 { // '[' |
| 291 | if data[2] == 50 && data[3] == 126 { // "2~" |
| 292 | return []XkbdCode{&KeyCode{KeyCode: KEY_INSERT, Modifiers: 0}} |
| 293 | } |
| 294 | if data[2] == 51 && data[3] == 126 { // "3~" |
| 295 | return []XkbdCode{&KeyCode{KeyCode: KEY_DELETE, Modifiers: 0}} |
| 296 | } |
| 297 | if data[2] == 53 && data[3] == 126 { // "5~" |
| 298 | return []XkbdCode{&KeyCode{KeyCode: KEY_PAGEUP, Modifiers: 0}} |
| 299 | } |
| 300 | if data[2] == 54 && data[3] == 126 { // "6~" |
| 301 | return []XkbdCode{&KeyCode{KeyCode: KEY_PAGEDOWN, Modifiers: 0}} |
| 302 | } |
| 303 | } |
| 304 | return nil |
| 305 | } |
| 306 | |
| 307 | var f5_through_8_codes = map[byte]Linux_Event_Codes{ |
| 308 | 53: KEY_F5, // '5' |
no test coverage detected