forked from brltty/brltty
-
Notifications
You must be signed in to change notification settings - Fork 0
/
brlapi_keytab.awk
62 lines (53 loc) · 1.72 KB
/
brlapi_keytab.awk
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
###############################################################################
# BRLTTY - A background process providing access to the console screen (when in
# text mode) for a blind person using a refreshable braille display.
#
# Copyright (C) 1995-2022 by The BRLTTY Developers.
#
# BRLTTY comes with ABSOLUTELY NO WARRANTY.
#
# This is free software, placed under the terms of the
# GNU Lesser General Public License, as published by the Free Software
# Foundation; either version 2.1 of the License, or (at your option) any
# later version. Please see the file LICENSE-LGPL for details.
#
# Web Page: http://brltty.app/
#
# This software is maintained by Dave Mielke <[email protected]>.
###############################################################################
BEGIN {
writeHeaderPrologue("BRLAPI_INCLUDED_KEYTAB", "api.h")
}
END {
writeHeaderEpilogue()
}
function brlCommand(name, symbol, value, help) {
writeSimpleKey("CMD", name)
}
function brlBlock(name, symbol, value, help) {
if (name == "PASSCHAR") return
if (name == "PASSKEY") return
writeSimpleKey("CMD", name)
}
function brlKey(name, symbol, value, help) {
if (name == "FUNCTION") {
for (functionNumber=1; functionNumber<=35; ++functionNumber) {
writeComplexKey("F" functionNumber, "BRLAPI_KEY_SYM_FUNCTION+" (functionNumber - 1))
}
} else {
writeSimpleKey("SYM", getBrlapiKeyName(name))
}
}
function brlFlag(name, symbol, value, help) {
}
function brlDot(number, symbol, value, help) {
}
function writeSimpleKey(type, name) {
writeComplexKey(name, "(BRLAPI_KEY_TYPE_" type " | BRLAPI_KEY_" type "_" name ")")
}
function writeComplexKey(name, code) {
print "{"
print " .name = \"" name "\","
print " .code = " code
print "},"
}