forked from extern/nix-config
28 lines
797 B
Nix
28 lines
797 B
Nix
|
{ pkgs, ... }:
|
||
|
|
||
|
{
|
||
|
services.interception-tools = {
|
||
|
enable = true;
|
||
|
plugins = [ pkgs.interception-tools-plugins.dual-function-keys ];
|
||
|
udevmonConfig = ''
|
||
|
- JOB: "${pkgs.interception-tools}/bin/intercept -g $DEVNODE | ${pkgs.interception-tools-plugins.dual-function-keys}/bin/dual-function-keys -c /etc/dual-function-keys.yaml | ${pkgs.interception-tools}/bin/uinput -d $DEVNODE"
|
||
|
DEVICE:
|
||
|
EVENTS:
|
||
|
EV_KEY: [KEY_CAPSLOCK, KEY_ESC]
|
||
|
'';
|
||
|
};
|
||
|
|
||
|
environment.etc."dual-function-keys.yaml".text = ''
|
||
|
TIMING:
|
||
|
- TAP_MILLISEC: 1000
|
||
|
- DOUBLE_TAP_MILLISEC: 0
|
||
|
MAPPINGS:
|
||
|
- KEY: KEY_CAPSLOCK
|
||
|
TAP: KEY_ESC
|
||
|
HOLD: KEY_LEFTCTRL
|
||
|
- KEY: KEY_SYSRQ
|
||
|
TAP: KEY_SYSRQ
|
||
|
HOLD: KEY_RIGHTMETA
|
||
|
'';
|
||
|
}
|