Я могу прочитать состояние NUML_LED, используя evdev. Но если я беру () устройство после считывания индикаторов при выходе из программы, индикатор выключится, даже если состояние все еще включено в отношении системы.
import evdev
device = evdev.InputDevice('/dev/input/event3')
try:
print(device.leds(verbose=True))
print("Using device:\n" + str(device))
device.grab()
except (KeyboardInterrupt, SystemExit):
pass
Если я просто сделаю один из grab()
ИЛИ device.leds()
без другого, они (как и ожидалось) не выключатся. Но вызывая оба беспорядка с светодиодами.
Edit:
Я только что понял, что если LED_NUML и LED_CAPSL включены, когда я выхожу, светодиоды выключены, но когда я нажимаю num_lock или caps_lock, состояние другой кнопки также фиксируется.
IE:
- LED_NUML and LED_CAPSL are on
- run script
- LED_NUML and LED_CAPSL are off
- press num_lock turns num_lock off (LED_NUML is already off so it stays off)
- LED_CAPSL turns on