parent
9d15c6a7a1
commit
9c2f0fdbed
|
@ -1,7 +1,8 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python3
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import re
|
import re
|
||||||
import os
|
import os
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
# Expected format:
|
# Expected format:
|
||||||
# #define XF86XK_FooBar 0x1234 /* some optional comment */
|
# #define XF86XK_FooBar 0x1234 /* some optional comment */
|
||||||
|
@ -49,14 +50,14 @@ def make_keysym_entry(m: re.Match[str]) -> str:
|
||||||
return f"""{define} XKB_KEY_{prefix}{name}{spacing}{value_str}"""
|
return f"""{define} XKB_KEY_{prefix}{name}{spacing}{value_str}"""
|
||||||
|
|
||||||
|
|
||||||
prefix = os.environ.get("X11_HEADERS_PREFIX", "/usr")
|
prefix = Path(os.environ.get("X11_HEADERS_PREFIX", "/usr"))
|
||||||
HEADERS = [
|
HEADERS = (
|
||||||
prefix + "/include/X11/keysymdef.h",
|
prefix / "include/X11/keysymdef.h",
|
||||||
prefix + "/include/X11/XF86keysym.h",
|
prefix / "include/X11/XF86keysym.h",
|
||||||
prefix + "/include/X11/Sunkeysym.h",
|
prefix / "include/X11/Sunkeysym.h",
|
||||||
prefix + "/include/X11/DECkeysym.h",
|
prefix / "include/X11/DECkeysym.h",
|
||||||
prefix + "/include/X11/HPkeysym.h",
|
prefix / "include/X11/HPkeysym.h",
|
||||||
]
|
)
|
||||||
|
|
||||||
print(
|
print(
|
||||||
"""#ifndef _XKBCOMMON_KEYSYMS_H
|
"""#ifndef _XKBCOMMON_KEYSYMS_H
|
||||||
|
@ -72,8 +73,9 @@ print(
|
||||||
#define XKB_KEY_NoSymbol 0x000000 /* Special KeySym */
|
#define XKB_KEY_NoSymbol 0x000000 /* Special KeySym */
|
||||||
"""
|
"""
|
||||||
)
|
)
|
||||||
|
|
||||||
for path in HEADERS:
|
for path in HEADERS:
|
||||||
with open(path) as header:
|
with path.open("rt", encoding="utf-8") as header:
|
||||||
for line in header:
|
for line in header:
|
||||||
if "#ifdef" in line or "#ifndef" in line or "#endif" in line:
|
if "#ifdef" in line or "#ifndef" in line or "#endif" in line:
|
||||||
continue
|
continue
|
||||||
|
|
Loading…
Reference in New Issue