Сценарии оболочки Bash: как обнаружить нажатие клавиш Alt + N?

Я хочу написать скрипт, который всегда слушает в фоновом режиме и выполняет определенную команду, когда пользователь нажимает определенную комбинацию клавиш, такую ​​как Alt + N . Как это можно сделать?

6
задан 20 November 2017 в 00:55

1 ответ

Загрузите следующий модуль Python: showkey.py

Затем создайте сценарий Python (давайте назовем его test.py):

#!/usr/bin/env python

from showkey import ShowKey

def alt_n(arg):
    print "Alt N was pressed"

sk = ShowKey()
sk.addKeyAction([49, 56], alt_n)    # adds handler for Alt-N comb.
sk.run()

Поместить showkey.py в Вашем PYTHONPATH или помещенный оба test.py и showkey.py в той же папке.

Запустите свой скрипт Python этот путь:

sudo ./test.py

alt_n() обратный вызов будет инициирован, когда пользователь поразит Высокий звук + N комбинация. Адаптируйте содержимое обработчика для своих потребностей.

Знать коды клавиши (те же коды, используемые showkey команда) для использования с showkey.py, просто выполните его как сценарий снова с sudo. Все события нажатия клавиши будут распечатаны в Вашем терминале.

$ sudo ./showkey.py 
Current terminal mode: OFF
Key pressed - keycode: 28
Key pressed - keycode: 56
[...]
7
ответ дан 20 November 2017 в 00:55

Другие вопросы по тегам:

Похожие вопросы: