Use CapsLock to make your life easier

capslockisdeadReal professionals use keyboard only. It’s true, because it’s a lot faster if you don’t have to move your hand to find your mouse there and back. Unfortunately the mouse is not he only problem. There are still some useful keys, that lay far away from the homerow: Arrow keys, Navigation Keys, NumPad and a few other. That’s why “vim” exists – it makes you develop fast without moving hands far from the homerow. In our .NET world we have awesome VsVim plugin for Visual Studio, that enables vim mode in our IDE. In my opinion it gives you real performance boost if mixed with Resharper. Sadly, Resharper uses arrow keys for navigation.

And here is the place CapsLock can help. You can configure AutoHotKey to use CapsLock as a switch to simulate vim mode in the whole system. In my case when I hold CapsLock and press ‘j’ it emulates Down Arrow key. Everywhere!. It’s especially useful for:

  • all context menus
  • Intellisense autocomplete
  • quick edit dialogs (where VsVim does not work)
  • other system dialogs (like open file, explorer etc)

After using it for a while I cannot imagine my workday without it.

You can find the code here: https://github.com/chrisseroka/CapsLockVim. If you don’t want to install AutoHotKey there is also standalone executable: https://github.com/chrisseroka/CapsLockVim/blob/master/CapsLockWin.exe
Feel free to add new combinations.


    CapsLock + j: Down arrow
    CapsLock + k: Up arrow
    CapsLock + h: Left arrow
    CapsLock + l: Right arrow

Text selection:

    CapsLock + Left Alt + j:  same as Shift + Down arrow
    CapsLock + Left Alt + k:  same as Shift + Up arrow
    CapsLock + Left Alt + h:  same as Shift + Left arrow   
    CapsLock + Left Alt + l:  same as Shift + Right arrow

Remember to keep CapsLock pressed


4 thoughts on “Use CapsLock to make your life easier

  1. Interesting. So far I map CapsLock to ESC. Everybody needs to know for himself wheter pressing Escape or arrows is more “annoying” for him.
    I would stay with CapsLock to ESC, but probably I will need to think about other combination for arrows – they are annoying as well – totally agreed here.

    1. I mapped CapsLock to Ctrl and Esc 🙂
      First I used SharpKeys (http://sharpkeys.codeplex.com/) to switch Caps Lock with LCtrl and vice versa.
      Then I wrote a small tool to make Ctrl work as Esc on top of that (only when it is pressed and released quickly). Here’s a link to the tool: https://github.com/hiredgunhouse/keyboardhooks
      It’s not perfect, but I found it effective enough and since I’m a Vimmer it helps to strech my left hand less since Esc is suddenly very close to my pinky (just like Enter is).
      Now another interresting key to combine with others is the space bar 😉

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s