summaryrefslogtreecommitdiffstats
path: root/src/udev/generate-keyboard-keys-gperf.sh
blob: 1db4cbe47de5ae5ad367bd4d58a1b6dd707be8e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/sh
# SPDX-License-Identifier: LGPL-2.1-or-later
set -eu

# shellcheck disable=SC1004
awk '
    BEGIN {
        print "%{\n\
#if __GNUC__ >= 7\n\
_Pragma(\"GCC diagnostic ignored \\\"-Wimplicit-fallthrough\\\"\")\n\
#endif\n\
%}"
        print "struct key_name { const char* name; unsigned short id; };"
        print "%null-strings"
        print "%%"
    }

    /^KEY_/ { print tolower(substr($1 ,5)) ", " $1 }
    { print tolower($1) ", " $1 }
' < "${1:?}"