Вывод xdotool перехватывается xbindkeys
У меня сломана клавиша на клавиатуре, точка "." быть конкретным. Это ведет себя очень странно, примерно в 7/10 раз клавиатура набирает двойную точку ".." при нажатии один раз. Я использую xbindkeys для перехвата, когда нажимается точка, и запускаю мой bash-скрипт. Написанный мной скрипт bash проверяет, сколько его экземпляров запущено, и набирает только "." один раз.
#!/bin/bash
let "target=2"
curr=$(ps -A | grep 'dot-writer.sh' | wc -l)
if [ "$curr" -eq "$target" ]
then
numlockx on
xdotool key KP_Delete
sleep 0.1
fi
Как вы можете видеть из сценария, я на самом деле не набираю "." ключ с xdotool, но вместо этого я включаю Numlock и набираю другой "." на моей клавиатуре, расположенной на клавиатуре на той же кнопке, что и удалить.
Как вы можете догадаться, это не идеальное решение, потому что эти два ключа не работают точно одинаково 100% времени.
Я пытался сказать xdotool набрать "." как персонаж Юникод
xdotool key U002E
Я пытался сказать xdotool набрать "." как строка, сгенерированная Bash
xdotool type $'.'
Я пытался сказать xdotool набрать "." как строка, сгенерированная Bash, содержащая символ Unicode "."
xdotool type $'\u002E'
Кажется, что ничего из этого не работает, поскольку он перехватывается, как если бы xbindkeys нажимал клавишу "точка", и снова и снова запускает один и тот же сценарий.
Что я могу сделать? Могу ли я использовать какой-либо другой инструмент для имитации нажатия клавиши?