How to stop OS X from switching input method (keyboard layout) automatically?
Solution 1
The MS layout for the keyboard on OSX sucks
Use this layout instead http://liyang.hu/osx-british.xhtml
Seems to work
Solution 2
If the system is switching language without you asking to do so, it means that the current input source somehow becomes unavailable. This can happen if you are using a custom input source (put under ~/Library/Keyboard Layouts) and then lock your screen. The lock screen is owned by the system and thus does not have access to your custom layouts, only the system-wide ones. The current source being unavailable, it will automatically revert to another one.
To resolve this issue, ensure that your custom keyboard layout is put under /Library and not /Users/You/Libary. After moving the file, remove the input source from the list, reboot and then put it back again.
Solution 3
One possibility that I had in a similar case is that you are hitting the keyboard shortcut to switch input sources.
In Snow Leopard preferences, the default to select the previous input source is Command-Space. In your screen capture of the Language & Text preferences you can see that this shortcut is active (the other shortcut, to select the next input source, is inactive in that screen capture):
It's a bit odd† that Command-Space is used, as that is also used for Spotlight. But if a shortcut is assigned multiple times, then Snow Leopard would show a warning, which your screen capture does not show. So, Command-Space won't activate Spotlight on your Mac:
† From Apple support: Command-Space: Show or hide the Spotlight search field (if multiple languages are installed, may rotate through enabled script systems)
Related videos on Youtube
Comments
-
adolf garlic over 1 year
After using the wireless keyboard that comes with the iMac, I have switched to a MS Ergo Natural 4000 one. Surprisingly I had to install extra software as OS X could not work out which keyboard I had.
After which I went into sys prefs and set the main input method to be "British - Microsoft" first and "Swiss German" second (what the wireless keyboard is), on the "input sources" tab:
However... OS X keeps resetting my input method back to Swiss German which is driving me bananas.
I have the flag thingy top right so I can see when this changes.
N.B. I have "input source options" set to "use the same one in all documents" which I am assuming means keep the language the same for anything running.
It also flips back on the login page.
Does anyone know how to fix this?
-
adolf garlic over 14 yearsHave also just noticed that for some applications, it is not even possible to select "British - Microsoft" e.g. Preview, QuickTimeplayer. Other applications like firefox and itunes work fine (although they do still keep switching back to swiss german)
-
-
Arjan over 14 yearsMy 10.6 has a disabled (default) of Command-Space (rather than Option-Space) for "Select the previous input source". I don't know why it's that, because Command-Space has been Spotlight for ages. I also don't know what disabled it. But: maybe some installations still have that Command-Space shortcut assigned twice? That would show a warning in the keyboard preferences though.
-
adolf garlic about 14 yearsWhen I switch to an app that does not support the "British - Microsoft" setting i.e. automatically assumes "Swiss German", it appears to switch it for ALL applications. I don't understand why not all applications support 'another' language and I also don't understand why this forces the other applications to pick up the change.
-
mmmmmm about 14 yearsIt is a global setting for the keyboard and thus for all apps.
-
mmmmmm about 14 yearsSorry it is not - each app remembers what was used last - see mac.finerthingsin.com/2010/01/18/…
-
adolf garlic about 14 yearsActually it appears to have both. Single global setting and setting per app. The problem lies in the fact that once you set it to a language which is not supported by all apps, then it will switch to the other one. It sucks, seriously.
-
Daniel J. Pritchett over 10 yearsThanks for this! I had my layouts in ~/Library and my app-store-installed apps couldn't see them and I had no idea why.
-
jmagnusson over 9 yearsThanks this worked great. This has been such a huge annoyance! It always happened when a Authorize prompt opened up and after log out.
-
György Balássy about 5 yearsThis works, thank you very much for this! Put the .layout file to "/Library/Keyboard Layouts" and then do a full OS reboot.
-
ruohola about 5 yearsThank you so much! This should be the accepted answer for sure.
-
eebbesen about 4 yearsFor Catalina, find this at Keyboard -> Shortcuts -> Input Sources
-
a.s.t.r.o almost 4 yearsThis doesn’t work as of 10.15, as soon as I open the AppStore, it switches back to default.
-
Charles Rezk over 2 yearsThis doesn't work for me either. My custom keyboard layout is in /Library, but the OS switches away from it whenever I lock the screen.
-
WestCoastProjects over 2 yearsThis does not actually answer your own question!