Commit graph

34 commits

Author SHA1 Message Date
9652df9366 Add device locking with a flag to disable for testing. 2025-08-01 13:49:03 -04:00
9d262977f9 Add text-to-speech support. (#13)
Reviewed-on: #13
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-29 19:59:54 +00:00
c7d5b7a9fa Format console output. 2025-07-28 13:46:54 -04:00
0ebca5a84c Improve evlist and rename it evinfo (#12)
Reviewed-on: #12
2025-07-28 17:45:51 +00:00
7b520af24a Use a context for closing channels. (#10)
Reviewed-on: #10
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-28 17:44:40 +00:00
5b9dfe0967 Support multiple configuration profiles. (#8)
Adds a `--config` command-line option to specify a config directory.

Reviewed-on: #8
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-18 18:28:11 +00:00
46a28fda7a Add tests for EventBuffer (#7)
Reviewed-on: #7
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-18 16:42:22 +00:00
6ef0cbd07c Allow all buttons and axes on virtual devices to be specified by either number or an explicit list. (#5)
Reviewed-on: #5
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-17 20:04:21 +00:00
e1940006d8 Support live re-loading of rules. (#2)
Reviewed-on: #2
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-15 23:38:53 +00:00
e617a6eda6 Implement axis targets, axis -> button and axis -> relative axis mappings. (#1)
Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-15 19:55:19 +00:00
ff38db6596 Big Refactor (#2)
Refactor Everything.

Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com>
Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
2025-07-08 03:26:24 +00:00
a0949e719f Start rulemapping refactor to be more explicit about typing intentions. 2025-07-06 17:22:05 -04:00
b9d02e6482 More refactoring, start implementing proportional axis... 2025-07-05 18:18:25 -04:00
be0a1cf24c Refactor rule generating code and check modes more thoroughly. 2025-07-05 11:56:48 -04:00
7ef62cbdc7 Rename mapping rules for consistent prefix. 2025-07-04 23:47:25 -04:00
80bfdfde90 Implement by-device output map for timers. 2025-07-04 23:44:28 -04:00
288a07eb73 Make modeless operation work more cleanly / remove implicit "main" mode. 2025-07-04 12:57:01 -04:00
c14ec074d1 WIP converting some functions into methods. 2025-07-04 10:14:04 -04:00
f6162d0f7b Refactoring. 2025-07-04 09:40:35 -04:00
f773897509 Bugfixes. 2025-07-04 01:17:05 -04:00
4c76ad4f49 Start implementing timer logic for proportional axis checking. 2025-07-04 00:30:05 -04:00
bf1bb868e5 Start implementing a channel for timer-based events. 2025-07-03 18:11:37 -04:00
8fafe3d27c Debugging rule processing. 2025-07-03 13:47:54 -04:00
cc37904fad Initial implementation of modes, though they're not quite working. 2025-07-03 12:19:57 -04:00
a078dcb193 Read events from multiple devices. 2025-07-02 17:01:17 -04:00
428749a519 Build rules from config. 2025-07-02 13:54:41 -04:00
50474f9fb2 Add an 'evlist' command to help get the exact strings for device names. 2025-07-01 23:30:24 -04:00
5b3b70da14 Implement config file parsing for physical devices. 2025-07-01 13:23:21 -04:00
faa51bdda2 Implement basic config file parsing and create virtual devices from config file. 2025-07-01 11:27:14 -04:00
eeebb6d0b1 Small fixes for config parsing, and start plumbing it into our main program. 2025-06-28 22:30:59 -04:00
33837895d9 Refactor logging and start adding rule matching code. 2025-06-27 22:35:17 -04:00
8549f36c8f Working example code with 3-button combo. 2025-06-27 22:03:01 -04:00
4d8cfb9298 Add stale cleanup function (still WIP) 2025-06-27 13:57:35 -04:00
309b3d3984 Initial commit. 2025-06-27 12:18:21 -04:00