Я нашел решение самостоятельно:
Поскольку curses совершенно не знает о настройке Caps Lock в соответствии с ΤΖΩΤΖΙΟΥ, я попробовал альтернативное решение. В частности, я посмотрел, как проверить Caps Lock в BASH-скрипте. То, что я нашел, было это:
Только для Linux. Требуется X Window System.
$ xset q | grep LED
> auto repeat: on key click percent: 0 LED mask: 00000000
Последний 0 в этом выводе (66-й символ в строке) является флагом Caps Lock. 1, если он включен, 0, если он выключен.
Python может запускать системные команды UNIX с модулем commands только для Linux. команды не влияют на проклятия.
>>> import commands
>>> # Caps Lock is off.
>>> commands.getoutput("xset q | grep LED")[65]
'0'
>>> # Setting Caps Lock on now.
>>> commands.getoutput("xset q | grep LED")[65]
'1'
Это прекрасно работает для меня; это скрипт для личного использования, и моя программа не была уже эксклюзивной для Linux. Но я надеюсь, что у кого-то есть другое, более совместимое с Windows решение.
Я собираюсь сейчас принять этот ответ на себя, но если кто-то другой сможет найти лучшее рабочее решение, я бы хотел его увидеть.