keyfn

Bind key events (press/release) to functions in rust using xlib.\ Supports same key with different modifier. Functions are executed in new threads.

Usage

Add this to your Cargo.toml [dependencies] keyfn = "0.2.1"

Example

``` rust extern crate keyfn;

use keyfn::*;

fn main(){ // create new KeyStorage let mut storage = KeyStorage::new();

// Call crtl-a_pressed when Control + a is pressed
let ctrl_a = KeyBind::new(
    keysym::XK_a,
    vec![Mod::Control],
    Trigger::Pressed,
    ctrl_a_pressed,
);

// Add KeyBind to storage
storage.add(ctrl_a);

// start storage
storage.start();

}

fn ctrlapressed(){ println!("Control + A pressed!"); } ```