This fixes the inability to use push to talk in Discord when running Wayland
NOTE: by default the left Meta (Windows) key is used for push to talk. In order to use a different key, see the configuration section below.
Nothing special.
- C++ compiler & Make
- libevdev
- libxdo (Debian/Ubuntu:
libxdo-dev
, Fedora/Centos:libxdo-devel
)
Read specific key events via evdev (needs sudo) and then pass them to libxdo to inject key presses to X apps.
The command supports three command line args.
-v
: verbose mode, logs all keystrokes-k
: keycode to listen for. Full list.-n
: keycode to send to discord. Full list (ignore leadingXKB_KEY_
).- You can use mouse buttons as well for both options, you can determine the
correct keycode for
-k
using evtest. The correct keycode for-n
will be in the form ofMOUSE<num>
and you can use xev to determine<num>
for the particular button press that you are interested in.
make
sudo ./push-to-talk /dev/input/by-id/<device-id> &
First edit the push-to-talk.desktop
file and replace /dev/input/by-id/<device-id>
with your device path. Then:
make
sudo make install
# to allow you access `/dev/input` devices without root
sudo usermod -aG input <your username>
Then just log out and log in. A process named push-to-talk
should be running (visible in any process monitor).
MIT