device_query-3.0.1 has been yanked.
device_query
A simple library to query mouse and keyboard inputs on demand without a window. Will work in Windows, Linux on X11, and macOS.
use ;
let device_state = new;
let mouse: MouseState = device_state.get_mouse;
println!;
let keys: = device_state.get_keys;
println!;
Dependencies
Windows shouldn't require any special software to be installed for device_query
to work properly.
On Linux, the X11 development libraries are required for device_query
to query state from the OS.
On Ubuntu/Debian:
sudo apt install libx11-dev
On Fedora/RHEL/CentOS:
sudo dnf install xorg-x11-server-devel
On newer versions of MacOS, you may run into issues where you only see meta keys such as shift, backspace, et cetera. This is due to a permission issue. To work around this:
- open the MacOS system preferences
- go to Security -> Privacy
- scroll down to Accessibility and unlock it
- add the app that is using
device_query
(such as your terminal) to the list
Device Callbacks
device_query
allows you to register callbacks for various device events such as key presses and mouse movements.
Example
Here's a simple example demonstrating how to use the callback system:
extern crate device_query;
use ;
use thread;
use Duration;