Takashi Kokubun
f5695d3bc2
Maintain pressed modifiers
2021-12-19 14:06:05 -08:00
Takashi Kokubun
0d5f37cae3
Implement EventHandler as a mutable struct
2021-12-19 13:25:36 -08:00
Takashi Kokubun
aa3dd2efe3
Implement modmap
2021-12-19 12:59:04 -08:00
Takashi Kokubun
fe696a8956
Implement event multiplexer
2021-12-19 00:23:35 -08:00
Takashi Kokubun
f058c44433
Implement xremap's VirtualDevice
2021-12-18 23:54:54 -08:00
Takashi Kokubun
d21a3e7650
Implement --device option
2021-12-18 23:22:19 -08:00
Takashi Kokubun
5448801473
Implement automatic device selection
2021-12-18 22:59:27 -08:00
Takashi Kokubun
6fbd45a19a
Implement listing devices
2021-12-18 22:15:19 -08:00
Takashi Kokubun
1a8b2b15d1
Implement CLI
2021-12-18 14:39:32 -08:00
Takashi Kokubun
d76ab68d7c
Shorten main function
2021-12-17 23:52:58 -08:00
Takashi Kokubun
ae7d2deff4
Validate extra action keys
2021-12-17 23:43:42 -08:00
Takashi Kokubun
db1c9f5600
Parse remap action
2021-12-17 23:38:12 -08:00
Takashi Kokubun
689ad59163
Parse chained actions
2021-12-17 22:08:28 -08:00
Takashi Kokubun
74ee0f36da
Some abstraction for further extension
2021-12-17 21:19:45 -08:00
Takashi Kokubun
10845ed7c0
Parse KeyPress
2021-12-17 17:07:44 -08:00
Takashi Kokubun
fed0b5526f
Break up config source files
2021-12-17 16:23:45 -08:00
Takashi Kokubun
16615e55d3
Parse Windows keys
2021-12-17 15:39:46 -08:00
Takashi Kokubun
2ee85b8773
Implement key parser
2021-12-17 15:33:52 -08:00
Takashi Kokubun
d9127e8a90
Parse the basic config structure
2021-12-17 11:06:19 -08:00
Takashi Kokubun
2f8029a200
Parse the top-level element
2021-12-16 23:06:34 -08:00
Takashi Kokubun
e5ac6af6bd
Use nix crate to call select(2)
2021-12-16 22:00:00 -08:00
Takashi Kokubun
fc30cb8bca
Handle all errors properly
2021-12-16 21:33:36 -08:00
Takashi Kokubun
2db606bce3
Start parsing the config
2021-12-16 20:34:00 -08:00
Takashi Kokubun
2590a84654
Design the DSL syntax prototype
2021-12-16 20:33:53 -08:00
Takashi Kokubun
9cc6bb0006
Implement global modmap
2021-12-14 00:01:25 -08:00
Takashi Kokubun
4061f77694
Infinite loop
2021-12-13 22:21:31 -08:00
Takashi Kokubun
e29714484c
Change the hard-coded device
2021-12-13 22:20:14 -08:00
Takashi Kokubun
6a8683304c
Revert "Set relative axes"
...
This reverts commit 4b33dee052
.
2021-12-13 22:15:03 -08:00
Takashi Kokubun
1ed2fd9029
cargo fmt
2021-12-13 22:13:37 -08:00
Takashi Kokubun
4b33dee052
Set relative axes
2021-12-13 22:10:08 -08:00
Takashi Kokubun
06b2d04a89
Simulate supported keys
2021-12-13 21:55:22 -08:00
Takashi Kokubun
cc178eb575
Build a virtual device to output events
2021-12-13 00:10:26 -08:00
Takashi Kokubun
0878d52dcb
Add a basic event loop
2021-12-12 23:38:29 -08:00
Takashi Kokubun
efb1db6d3b
Prepare for calling select(2)
2021-12-12 23:38:17 -08:00
Takashi Kokubun
e9c5afb054
Grab the input device
2021-12-12 23:38:14 -08:00
Takashi Kokubun
d324c4a73b
cargo init
2021-12-11 23:27:29 -08:00
Takashi Kokubun
603be104f4
Full scratch
2021-12-11 23:16:09 -08:00
Takashi Kokubun
caea9a1c2f
Update README.md
...
Thanks to hanachin, xremap is actively maintained these days.
2018-09-16 22:27:59 +09:00
Seiei Miyagi
40246cb42b
Cleanup src/*.inc
2018-09-15 13:07:41 +09:00
Seiei Miyagi
e9bbb31bc4
Fix #32 introduced in 1e2d641
We need the constants from both keysymdef.h and X.h
2018-09-15 13:05:52 +09:00
Seiei Miyagi
1e2d641fe3
Fix 6ceda05
src/x11_constants_XF86.inc source, X.h -> XF86keysym.h
2018-09-13 15:23:01 +09:00
Takashi Kokubun
6160899fec
Merge pull request #31 from hanachin/generate_x11_constants_from_headers_at_build_time
...
Generate X11 constants from headers at build-time.
2018-09-13 10:16:31 +09:00
Seiei Miyagi
6ceda05568
Generate X11 constants from headers at build-time.
...
The X11 constants are different between versions.
For example, Debian doesn't have XF86XK_WWAN
https://salsa.debian.org/xorg-team/proto/x11proto-core/blob/debian-unstable/XF86keysym.h
But Arch Linux does.
https://www.archlinux.org/packages/extra/any/xorgproto/
I've got following error on Debian stretch
```
/home/sei/src/github.com/k0kubun/xremap/src/x11_constants.c:2710:20: error: ‘XF86XK_WWAN’ undeclared (first use in this function)
define_x11_const(XF86XK_WWAN);
```
To avoid macro undeclared error, wrap the `define_x11_const` with #ifdef
```
#ifdef XF86XK_WWAN
define_x11_const(XF86XK_WWAN)
#endif
```
Or generate code at build-time.
2018-09-13 09:39:37 +09:00
Takashi Kokubun
c7a69cadcd
Don't use exception for branching
2018-09-05 22:58:38 +09:00
Takashi Kokubun
8aefb73a5f
Merge pull request #30 from igui/master
...
Support for XFree86 vendor specific
2018-09-05 22:57:40 +09:00
Ignacio Avas
8236d9f032
Revert removed line
2018-09-05 00:49:53 -03:00
Ignacio Avas
e58a172394
Example for Asus ROG Keyboard
2018-09-05 00:45:42 -03:00
Ignacio Avas
39922c2de7
Support for XFree86 vendor specific keysyms
2018-09-05 00:45:21 -03:00
Takashi Kokubun
69240e92a0
Update project status
2018-06-23 22:00:14 +09:00
Takashi Kokubun
7a2ec961f3
Merge patch by @garin in #29
2018-06-23 21:42:51 +09:00