https://github.com/t184256/irwir
An input remapper for Linux, my first attempt at programming in Rust.
https://github.com/t184256/irwir
input input-remapping linux rust uinput
Last synced: 2 months ago
JSON representation
An input remapper for Linux, my first attempt at programming in Rust.
- Host: GitHub
- URL: https://github.com/t184256/irwir
- Owner: t184256
- License: gpl-3.0
- Created: 2018-07-22T05:12:57.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-07-29T14:17:49.000Z (almost 8 years ago)
- Last Synced: 2025-05-16T03:35:23.293Z (about 1 year ago)
- Topics: input, input-remapping, linux, rust, uinput
- Language: Rust
- Size: 40 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# irwir: an input wrapper
This is my first attempt at programming in Rust,
a generic input remapper program for Linux.
## How it works
Event from a real device -> Tag (String) -> gluon function -> Action.
See `config.toml` for an idea of what can be done right now.
Needs read access to input devices and write access to `/dev/uinput`.
## Goals
* Multidevice remapping
* Automatically picking up the desired uinput device capabilities
* Multilayer remapping (e.g. to physical position first)
* A stack of major modes (with only the topmost transformation being active)
* A stack of minor modes (with all of the transformations being active)
* Precomputing all active transformations into a single hashmap