Я хочу автоматизировать несколько задач (например, имитировать стиль eclipse ctrl - shift - R открыть диалог для других редакторов). Общая схема: пользователь будет нажимать какую-то комбинацию клавиш, моя программа обнаружит ее и, возможно, выведет диалог, чтобы получить пользовательский ввод, а затем запустите соответствующую команду, как правило, запустив исполняемый файл.
Моя целевая среда - это окна, хотя кросс-платформенная будет приятной. Моя программа запускается один раз, читает конфигурационный файл и сидит в фоновом режиме до тех пор, пока не будет вызвана комбинация клавиш или другое событие.
В принципе, autohotkey.
Почему бы просто не использовать autohotkey? На самом деле у меня довольно много макросов autohotkey, но я бы предпочел использовать более здравый язык.
Мой вопрос: есть ли хороший способ обнаружить комбинацию ключей фонового питона?
Обновление: нашел ответ, используя pyHook и расширения win32:
import pyHook
import pythoncom
def OnKeyboardEvent(event):
print event.Ascii
hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()
while True:
pythoncom.PumpMessages()