54 lines
1.9 KiB
Python
54 lines
1.9 KiB
Python
import sys
|
|
from unittest import mock
|
|
from pprint import PrettyPrinter
|
|
|
|
sys.modules["evdev.ecodes"] = mock.Mock()
|
|
from evdev import ecodes_runtime as ecodes
|
|
|
|
pprint = PrettyPrinter(indent=2, sort_dicts=True, width=120).pprint
|
|
|
|
|
|
print("# Automatically generated by evdev.genecodes_py")
|
|
print()
|
|
print('"""')
|
|
print(ecodes.__doc__.strip())
|
|
print('"""')
|
|
|
|
print()
|
|
print("from typing import Final, Dict, Tuple, Union")
|
|
print()
|
|
|
|
for name, value in ecodes.ecodes.items():
|
|
print(f"{name}: Final[int] = {value}")
|
|
print()
|
|
|
|
entries = [
|
|
("ecodes", "Dict[str, int]", "#: Mapping of names to values."),
|
|
("bytype", "Dict[int, Dict[int, Union[str, Tuple[str]]]]", "#: Mapping of event types to other value/name mappings."),
|
|
("keys", "Dict[int, Union[str, Tuple[str]]]", "#: Keys are a combination of all BTN and KEY codes."),
|
|
("KEY", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("ABS", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("REL", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("SW", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("MSC", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("LED", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("BTN", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("REP", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("SND", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("ID", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("EV", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("BUS", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("SYN", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("FF", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("UI_FF", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("FF_STATUS", "Dict[int, Union[str, Tuple[str]]]", None),
|
|
("INPUT_PROP", "Dict[int, Union[str, Tuple[str]]]", None)
|
|
]
|
|
|
|
for key, annotation, doc in entries:
|
|
if doc:
|
|
print(doc)
|
|
|
|
print(f"{key}: {annotation} = ", end="")
|
|
pprint(getattr(ecodes, key))
|
|
print() |