I am so used to emacs keybinding that I use emacs style keybindings on my entire system (with gtk settings). I've mapped Caps-Lock key to an extra Control key. But that doesn't help me from having pain after a few hour of work.

What I hope to do, is to map a character key (I'm looking at l) in a way that it functions normally on a Key_Press followed by a Key_Release, but acts as a Control key between the period of those two event - or effectively, when another key is pressed during that interval.

First off all, is this possible? If yes, how would you do that? Second, do you have any other suggestions on getting some work off the left pinky?

  • 1
    RSI (Repetitive strain injury) can become a life-changing problem: don't let it get to a stage where it is beyond repair. There is lots of software available to force you to take short breaks every so often. There are special keyboards. There are stretching exercises. These are better and simpler solutions that will ensure you continue working pain free the rest of your life.
    – meuh
    Commented Nov 17, 2015 at 15:21
  • I've always dreaded that. Thanks for wise words. I'll be sure to look into them.
    – Bibek_G
    Commented Nov 18, 2015 at 2:11

1 Answer 1


There's a project for X on Linux-based systems that does what you are asking, called at-home-modifier, designed to keep your fingers at the home row (hence the name). The example given in their instructions is to map the space key to shift: If the space key is used alone, it's a space; if used with another key, it's shift. They also say that "Any pairs of keys are possible" for your use case with the L key doing double duty as Control.

Have a look here:


  • That was exactly what I was looking for. Thanks.
    – Bibek_G
    Commented Nov 18, 2015 at 2:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .