10 my (%keysym, %keyval);
13 \A [#]define[ ]XK_ (?<name>[a-zA-Z_0-9]+)
14 \h+ 0x(?<value>[0-9a-fA-F]+)
15 ( \h* [/][*] [\h(] U[+] (?<unicode>[0-9A-F]{4,6}) )?
17 my $cp = $+{unicode} // $keyval{ $+{value} } or next;
18 $keysym{ $+{name} } = chr hex $cp;
19 $keyval{ $+{value} } = $cp;
22 print JSON->new->ascii->canonical->indent->encode(\%keysym);
28 mkxkeysymdef - Map Xorg key symbol names to Unicode characters
32 mkxkeysymdef /usr/incnlude/X11/keysymdef.h >keysymdef.json
36 Mischa POSLAWSKY <perl@shiar.org>
40 Licensed under the GNU Affero General Public License version 3.