Выполнять действие при перемещении курсора мыши в определенную позицию в Lubuntu (горячий угол)
Можно ли настроить Lubuntu (т.е. Openbox) таким образом, чтобы при перемещении курсора мыши в определенную позицию выполнялось какое-то действие?
В частности, я хотел бы запустить скрипт, когда я перемещаю курсор мыши в верхний левый угол и продолжаю толкать его вверх и влево. Это похоже на некоторые оконные менеджеры, которые позволяют переключаться на другой экран при перемещении курсора мыши в любую сторону экрана.
1 ответ
Один из способов сделать это через xdotool, От xdotool Руководство пользователя:
поведение_экран_дж [опции] где команда...
Привязать действие к событиям, когда мышь касается края или угла экрана.
Варианты:
- задержать миллисекунды
Задержка в миллисекундах перед запуском команды. Это позволяет вам требовать удержания заданного ребра или угла в течение короткого периода времени, прежде чем ваша команда будет выполняться. Если вы покинете край или угол до истечения задержки, время сбрасывается.
--quiesce МИЛЛИСЕКОНДЫ
Задержка в миллисекундах до запуска следующей команды. Это помогает предотвратить случайный запуск вашей команды; особенно полезно, если у вас очень короткая --delay (например, по умолчанию 0).
Хронология событий
- Мышь попадает в край или угол.
- Если задержка не равна нулю, мышь должна оставаться на этом краю или в углу, пока не истечет время задержки.
- Если все еще в краю / углу, нажмите.
- Если значение покоя не равно нулю, то есть период охлаждения, когда следующий триггер не может произойти
Допустимые значения 'где':
оставил
верхний левый
Топ
в правом верхнем углу
право
Нижний левый
низ
Нижний правый
Вы можете объединить behave_screen_edge вариант с любым из xdotoolвстроенные команды, в том числе exec команда:
exec [опции] команда [...]
Выполнить программу. Это часто бывает полезно, когда в сочетании с affine_screen_edge используется для блокировки экрана.
Опции:
--sync
Блокируйте, пока дочерний процесс не завершится. Состояние выхода дочернего процесса затем передается родительскому процессу (xdotool), который его копирует.
Таким образом, чтобы вызвать скрипт при нажатии на верхний левый угол экрана, вы должны использовать следующую команду:
xdotool behave_screen_edge top-left exec --sync script.sh
--sync переключатель гарантирует, что xdotool ждет завершения сценария, прежде чем снова запускать действие.
xdotool является частью официальных репозиториев Ubuntu и может быть установлен через:
sudo apt-get install xdotool