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 few hour of working.

What I hope to do is map a Character key (I'm looking for "l" key) in a way that it functions normally on on event of Key_Press followed by 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 thing possible? If yes, how would you do that? Second, do you have any other suggestions on getting some work off the left pinky?


  • 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 Nov 17 '15 at 15:21
  • I've always dreaded that. Thanks for wise words. I'll be sure to look into them. – Bibek_G Nov 18 '15 at 2:11

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 Nov 18 '15 at 2:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.