Using CapsLock to switch the keyboard language layout on Windows-7 [closed]

Currently I am using Recaps for switching between keyboard layouts. But I am looking for a replacement, because it is a little buggy and not updated for years. Do you know any replacement?


Solution 1:

Following @Bob's suggestion to use AutoHotkey, the following script will simulate Alt+Shift when you press CapsLock:

CapsLock::Send, {Alt Down}{Shift Down}{Shift Up}{Alt Up}

Windows can be a little stubborn when it comes to keyboard shortcuts only consisting of modifiers, but the above technique works.

Solution 2:

In windows you can set Windows to use Grave Accent (`) for switching between languages or keyboard layouts via a single key press.

If your windows is set to change keyboard layout by Ctrl+Shift you can use following AutoHotKey script (I strongly recommend using http://www.autohotkey.com/) to map them to Caps Lock, normal CapsLock will be achieved by Shif+CapsLock

SetCapsLockState, AlwaysOff
+CapsLock::CapsLock

CapsLock::Send, {Ctrl down}{Shift down}{Shift up}{Ctrl up}{Ctrl up}
return

Solution 3:

Use lswitch.

Use any key to switch input languages, usage: lswitch [keycode]. Keycode is optional and defaults to context menu key. Another good candidate is a CapsLock key with a keycode of 20.

Cheers!

Solution 4:

Punto Switcher can do this! http://punto.yandex.ru/win/

Basically it allows you to switch keyboard layout automatically, based on what you are typing. But it also can switch keyboard layouts on Caps Lock or many other keys. If don't like automatic switching you can turn it off in settings.