monitoring events (keyboard, mouse) in X

Is it possible to display all events that are generated in Xorg? Such as keyboard pressed, mouse events…?


Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

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

All methods was sourced from or, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Notify of
Inline Feedbacks
View all comments