Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I want to set up Casp Lock as a shortcut for changing the input language. There are some solutions like this. But it requires installing some software and doing tricks. Is there a way to do it in a neat way, say through terminal command?

share|improve this question
    
Could you bind a keyboard shortcut for switching the keyboard? If so, I would recommend using KeyRemap4MacBook and PCKeyboardHack to bind caps lock to that keyboard shortcut. These utilities are vey impressive, and I was able to create a very complex keyboard layout using them along with ukelele. –  Senseful Feb 2 '11 at 23:49
add comment

3 Answers 3

Unfortunately no, unless someone posts a (possible veery long) command that modifies the keyboard drivers in the same way PCKeyboardHack and KeyRemap4MacBook do, but in general, using these is the way to go.

share|improve this answer
    
I would say use prebuilt tools people have created, used, tested, etc. That ensures you don't mess something up when modifying your operating system. –  Ryan Wersal Feb 2 '11 at 22:59
add comment

In case people who get here from search engines don't read the linked post, you can change caps lock to something like F19 with PCKeyboardHack:

And then change the shortcut for selecting the next input source to F19:

share|improve this answer
add comment

Yes, you can use Caps Lock to change input language without third-party software. All you need is a custom-made keyboard layout (usually made with Ukelele ) that has two alternative sets of characters bound to Caps lock=on and Caps lock=on and Shift=on states.

Pros: zero-lag, no weird key remapping hacks needed
Cons: buit-in input source indicator becomes useless, looking at the Caps LED is not very convenient for touch-typists.

To mitigate the "cons" I use lightweight third-party app called Capster that changes the icon in the menubar depending on the Caps lock state.
I also use small Applescript to disable Caps lock delay.

I'm using this method for many years and never looked back.

This is my bundle for Russian language (with additional Ukrainian characters bound to alt+key)
https://github.com/falcn/Caps-layout

share|improve this answer
add comment

Your Answer

 
discard

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.