Personal Productivity Stack Exchange is a question and answer site for people wanting to improve their personal productivity. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm good at typing with 10-fingers, as I use a blank keyboard.

But I have a problem. I almost always use the left Shift key, even if the right Shift key would be better (same for Ctrl).

What I'm searching for is an application that blocks (and possible notifies) the wrong Shift key.

E.g.: I want to type a uppercase "W", "$", "!" ... and use the left Shift key, the result should be "w", "4", "1" ... and maybe a flash on the screen (that left Shift was blocked, because I should have used the right Shift key).

Platforms I use are GNU/Linux and Windows 7, both 64-bit.

share|improve this question
On a related note, you might look into Plover, at two levels. 1) Just using it may be something you'd be interested in for the typing speed increase, and 2) if you need to implement app you want, the Linux and Windows implementations may prove helpful. – retracile Aug 9 '12 at 14:14

I had a similar question that I posted on superuser. I finally figured out a way to disable the use of the 'wrong' Shift key using Xmodmap for Linux. I've been trying it out for a few days and it will definitely enforce using the proper hands to Shift. Unfortunately, it seems impossible to use this method to force the same with Ctrl.

share|improve this answer

It may be a tedious process, but I'm sure you could develop an AutoHotkey script to help you practice this in Windows.

AutoHotkey has a function called GetKeyState which you could use to check if LShift or RShift is down. Inside the conditional block, you can define what is done if a bad key is pressed (popup dialog, send the character unshifted, do nothing, etc). I am not sure if AHK scripts can have arrays/lists in them, so you may need to write the logic code and then duplicate it for each key, but you can do it all with relative ease.

AutoHotkey is Windows only, so unfortunately you can't use it on a GNU/Linux box, but you could set this up for a training exercise, practice on Windows until it's habit, and be good to go.

An imperfect solution, to be sure, but at least it can be done.

share|improve this answer

Make it right before you make it fast. Slow down and use an existing typing program to train the proper touch typing technique or do your day to day work, it does not matter. Just make sure you type with the correct Shift key every time. Once you get comfortable you can slowly increase your speed.

Once you realize that you fall back into old habits just slow down again.

There is not easy way to get rid of bad habits, you have to substitute them with good ones and this takes time.

share|improve this answer
This is the way i already walk. But the key-point "once you realize that you fall back into old habits" is what an application can really improve! – breiti Aug 15 '12 at 12:00

So to go back a step - rather than making sure you use the 'correct' shift key - let's get you to a point where you use the right-shift often enought that it's natural to consider (I almost never use right-shift so I'm right there with you.

The simplest solution to me was a straightforward mechanical one - I put a dirty great lump of blue-tac on the left shift key and now it's slightly odd to press - so I'm using only the right shift key (makes 'I'm' fairly strange to type, particularly, with the ' keys around it) After a couple of days of this, I suspect that I'll be able to switch back and find the right shift key gets more use...

share|improve this answer
Two years later how's your typing? Did this work out for you? – J.Money Nov 12 '14 at 18:42

For those attempting this on linux (or anything with xmodmap, paste this code into your ~/.Xmodmap file and run xmodmap ~/.Xmodmap.

This will clobber your alt-gr mappings, but if you're not using the alt-gr key or don't know what it is then this will work. Fork the gist if you have anything you want to add. It works by changing one of your shift keys to alt-gr and mapping keys on one half of the board exclusively to the modified key.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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