LinuxAlternative

Linux · Accessories

Keyd

Keyd is a lightweight key remapping daemon for Linux, similar in purpose to AutoHotkey on Windows.

Open sourceFree
Be the first to rate
License
GPL-3.0
Latest version
2.6.0

What is Keyd?

Keyd is a userspace daemon that intercepts keyboard events and lets you remap keys, create layers, and define complex shortcuts. It has been in the Linux ecosystem for several years and is packaged for Arch, Debian, and openSUSE, indicating reasonable maturity and community support. The project is maintained, but it does not aim to be a full scripting engine like AutoHotkey; it focuses on key translation and simple macros.

Keyd is aimed at power users who want precise control over their keyboard layout without writing full scripts. It works well for people who use custom keymaps for ergonomic keyboards, gaming setups, or multilingual typing. Because it runs as a systemd service, the changes apply globally and persist across sessions.

Compared with AutoHotkey, Keyd feels more minimalistic: you define mappings in a plain text configuration file rather than a scripting language, and there is no built‑in GUI. The learning curve is steeper if you need conditional logic, but for pure key remapping it is faster and lighter than AutoHotkey's Windows implementation.

Best for: Users who need reliable, system‑wide key remapping without the overhead of a full scripting engine.

Key features of Keyd

  • Global key remapping via a simple config file
  • Layer support for context‑dependent mappings
  • Support for modifier keys and chords
  • Runs as a systemd service for persistence
  • Works with any X11 or Wayland session
  • Low CPU and memory footprint

Pros

  • Very lightweight and fast
  • Works across desktop environments
  • Easy to version‑control config files
  • No GUI needed, fits into dotfiles workflow

Cons

  • No built‑in scripting language for complex logic
  • Configuration syntax can be terse for beginners
  • Lacks a visual editor or debugger

Windows programs Keyd replaces

How to install Keyd on Linux

Debiansudo apt install keyd
Arch / Manjarosudo pacman -S keyd
openSUSEsudo zypper install keyd

Tips for Windows users

AutoHotkey scripts cannot be used directly; you’ll need to rewrite them in Keyd’s keymap syntax. Start by listing the hotkeys you use most and translate them into simple "from → to" lines in ~/.config/keyd/default.conf. Enable the service with "systemctl --user enable --now keyd" and test changes with "keyd reload". Expect to lose some of AutoHotkey’s conditional scripting, so keep a separate tool for those cases if needed.

Keyd: frequently asked questions

How do I reload Keyd after editing the config?

Run "keyd reload" or restart the systemd user service with "systemctl --user restart keyd".

Can Keyd work under Wayland?

Yes, Keyd works with Wayland compositors that support the libinput interface.

Where is the default configuration file located?

The main file is ~/.config/keyd/default.conf; system‑wide defaults may be in /etc/keyd/.

Is there a GUI for Keyd?

No, Keyd is configured via plain text files only.

Updated