Is it possible to display all events that are generated in Xorg? Such as keyboard pressed, mouse events...?
1 Answers
A pretty quick search would likely yield xev
as a result. It will not show you everything that is pressed or typed in X ever. But rather, will allow you to see information about keycodes and mouse movements.
However, with the -root
option, you might be able to get xev
to monitor the whole X session. Note, if you do this, you'll make it pretty difficult to actually interact with any program since xev
will be capturing all input.
xev -root
comes with an implied "YMMV". Another possible solution is to use xinput
to get the job done (though you need a recent version (1.6.1 or above)):
$ xinput test-xi2 --root
While the above should be able to capture all events, if your xinput
doesn't support test-xi2
or --root
, you can use xinput test
on a particular keyboard or mouse device.
See also this other question: Record every keystroke and store in a file

- 4,790
xev
should show you all events... it's just that it only monitors one window at a time. Perhaps one could hack a script to launch multiple copies ofxev
each monitoring one window so that you end up monitoring all of them? – Celada Jul 24 '14 at 08:02xev
will only capture events on the "root window", i.e. normally your desktop background.xinput
is the correct solution for capturing all events regardless of the currently active window. – Fritz Nov 17 '15 at 13:07