A very small AutoHotkey inspired library for creating global hotkeys, as well as emulating mouse and keyboard input. Works on Windows and X11 Linux. Unlike AutoHotkey, can handle multiple hotkeys concurrently in one process.
The code below demonstrates how to create some simple hotkeys.
```Rust extern crate inputbot;
use inputbot::; use KeybdKey::; use MouseButton::*; use std::time::Duration; use std::thread::sleep;
fn main() { // Autorun for videogames. NumLockKey.bind(|| { while NumLockKey.istoggled() { LShiftKey.press(); WKey.press(); sleep(Duration::frommillis(50)); WKey.release(); LShiftKey.release(); } });
// Rapidfire for videogames.
RightButton.bind(|| {
while RightButton.is_pressed() {
LeftButton.press();
sleep(Duration::from_millis(50));
LeftButton.release();
}
});
// Mouse movement test.
QKey.bind(|| MouseCursor.move_rel(10, 10));
// Call this to start listening for bound inputs.
handle_input_events();
} ```