Keyd: Linux Key Remapper

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • kanata

    Improve keyboard comfort and usability with advanced customization

  • Kanata supports early tap-hold dispatch based on key overlap, which is all I need. There's an open issue for more advanced conditions: https://github.com/jtroo/kanata/issues/128

    The maintainer has been very responsive in my experience and would probably add more advanced conditions if someone wanted them.

    > There are way too many interactions for me to list

    Sounds like mostly hackarounds for non-keyboard-friendly software. I generally prefer to use keyboard-friendly software (of which there is no shortage on linux) and just make application-specific keybindings directly in each application. Anything else is inevitably a hack. Window management, browsing, anything related to text or programming, etc. all have good keyboard-friendly options. I have to use some stuff like excel and teams for work, but I'll just use the mouse more in those cases. I don't spend a significant amount of time dealing with applications like that though, and e.g. for Teams I'd try set up a matrix bridge or just use warpd before trying anything else.

    Teams no longer supports linux, but for other apps that have non-customizable key shortcuts, it's definitely possible hack around that and create your own in linux. E.g. When I used to use libreoffice regularly, I set up modal keybindings that sent the corresponding chords to libreoffice.

    As long as I can use my editor to type anything non-trivial, I'm good. For example, you have generic software like sketchyvim on mac to essentially use vim in any input field. I don't think there's a linux equivalent that lets you essentially embed an editor like vim inside any input field, but you can use a generic keybinding to open one and then have the text sent back when you're done.

    A lot of the examples you list don't seem to need any app-specific or context-aware functionality (e.g. your launcher example). I don't have enough of an idea of what you actually want to know if what's available on linux would support your use cases, but in addition to the numerous basic hotkey daemons there are programs like keyszer that support application-specific keybindings ootb or hawck which is scriptable in lua and supports conditional keybindings (allowing you to script per-application keybindings). You have some context available but only what is externally available, i.e. unless the program provides some way to interact with it like a cli utility or ipc socket, all you're going to be able to do is send input to it.

  • keyd

    A key remapping daemon for linux.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • kinto

    Mac-style shortcut keys for Linux & Windows. (by rbreaves)

  • Tangential: I'm currently looking for a way to map Mac-style shortcuts on Linux (e. g. Meta + C/V for copy / paste). The only thing I know is https://kinto.sh/, but it looks a bit too janky to my taste. Any other ideas?

  • xremap

    Key remapper for X11 and Wayland

  • I'm using this successfully: https://github.com/k0kubun/xremap

  • kmonad

    An advanced keyboard manager

  • mackeys

    Mac-like keyboard bindings for Linux

  • I was looking for the same thing. This is what I hacked together to scratch the itch: https://github.com/davidkellis/mackeys

  • mouseless

    A replacement for the mouse in Linux (by jbensmann)

  • I really like https://github.com/jbensmann/mouseless as it will also let you remap keys to control the mouse. I went down a rabbit hole of key remapping, and can't remember exactly why I settled on it, but posting as an alternative for others to look at.

    I thrive off caplock as a toggle for remapped keys. I turn my sdf-234 into a numpad and jkl; for arrows and some other text navigation binds so I never need to veer far from the home row. caps-/ for ~ I can't live without.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • input-remapper

    🎮 ⌨ An easy to use tool to change the behaviour of your input devices.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts