You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Linux lacks a good key remapping solution. In order to achieve satisfactory
8
11
results a medley of tools need to be employed (e.g xcape, xmodmap) with the end
9
12
result often being tethered to a specified environment (X11). keyd attempts to
10
13
solve this problem by providing a flexible system wide daemon which remaps keys
11
14
using kernel level input primitives (evdev, uinput).
12
15
13
-
# Note on v2
16
+
##Note on v2
14
17
15
18
The config format has undergone several iterations since the first
16
19
release. For those migrating their configs from v1 it is best
17
20
to reread the man page.
18
21
19
22
See also: [changelog](docs/CHANGELOG.md).
20
23
21
-
# Goals
24
+
##Goals
22
25
23
26
- Speed (a hand tuned input loop written in C that takes <<1ms)
24
27
- Simplicity (a [config format](#sample-config) that is intuitive)
25
28
- Consistency (modifiers that [play nicely with layers](https://github.com/rvaiya/keyd/blob/6dc2d5c4ea76802fd192b143bdd53b1787fd6deb/docs/keyd.scdoc#L128) by default)
26
29
- Modularity (a UNIXy core extensible through the use of an [IPC](https://github.com/rvaiya/keyd/blob/90973686723522c2e44d8e90bb3508a6da625a20/docs/keyd.scdoc#L391) mechanism)
27
30
28
-
# Features
31
+
##Features
29
32
30
33
keyd has several unique features many of which are traditionally only
31
34
found in custom keyboard firmware like [QMK](https://github.com/qmk/qmk_firmware)
@@ -57,9 +60,9 @@ Some of the more interesting ones include:
57
60
58
61
- A tool for programming individual key up/down events.
59
62
60
-
# Dependencies
63
+
##Dependencies
61
64
62
-
## Required Build Dependencies
65
+
###Required Build Dependencies
63
66
64
67
* Your favourite C11 compiler
65
68
* POSIX-compatible `make` (e.g., [GNU
@@ -68,13 +71,13 @@ Some of the more interesting ones include:
68
71
*[Python](https://www.python.org/) 3.8 or newer
69
72
*[scdoc](https://git.sr.ht/~sircmpwn/scdoc)
70
73
71
-
## Optional Build Dependencies
74
+
###Optional Build Dependencies
72
75
73
76
*[bash](https://www.gnu.org/software/bash/) (for the `usb-gadget` virtual
74
77
keyboard driver)
75
78
*[systemd](https://systemd.io/) (for system services)
76
79
77
-
## Optional Runtime Dependencies
80
+
###Optional Runtime Dependencies
78
81
79
82
*[bash](https://www.gnu.org/software/bash/) (for the `usb-gadget` virtual
80
83
keyboard driver)
@@ -84,23 +87,23 @@ Some of the more interesting ones include:
84
87
*[dbus-python](https://pypi.org/project/dbus-python/) (only for KDE support)
85
88
*[systemd](https://systemd.io/) (for system services)
86
89
87
-
# Installation
90
+
##Installation
88
91
89
-
## From a Pre-Built Package
92
+
###From a Pre-Built Package
90
93
91
94
Binary packages for some distributions exist. These are kindly maintained by
92
95
community members; the keyd developers do not take responsibility for them. If
93
96
you wish to add yours below, please open a PR.
94
97
95
-
### Alpine Linux
98
+
####Alpine Linux
96
99
97
100
[keyd](https://pkgs.alpinelinux.org/packages?name=keyd) package maintained by [@jirutka](https://github.com/jirutka).
98
101
99
-
### Arch
102
+
####Arch
100
103
101
104
[Arch Linux](https://archlinux.org/packages/extra/x86_64/keyd/) package maintained by Arch packagers.
102
105
103
-
### Debian
106
+
####Debian
104
107
105
108
Experimental `keyd` and `keyd-application-mapper` packages can be found in the
106
109
CI build artifacts of the [work-in-progress Debian package
@@ -114,17 +117,17 @@ sponsor its upload is encouraged to contact
114
117
[@rhansen](https://github.com/rhansen) (also see the [Debian ITP
[COPR](https://copr.fedorainfracloud.org/coprs/alternateved/keyd/) package maintained by [@alternateved](https://github.com/alternateved).
120
123
121
-
### openSUSE
124
+
####openSUSE
122
125
123
126
[opensuse](https://software.opensuse.org//download.html?project=hardware&package=keyd) package maintained by [@bubbleguuum](https://github.com/bubbleguuum).
124
127
125
128
Easy install with `sudo zypper in keyd`.
126
129
127
-
### Ubuntu
130
+
####Ubuntu
128
131
129
132
Experimental `keyd` and `keyd-application-mapper` packages can be found in the
0 commit comments