343

So I recently did a clean install of Windows 10 English. I configured it to have English UI language but Norwegian keyboard. I have several problems with that setup:

  1. The keyboard language keeps switching to English constantly
  2. I can't see the language bar nor the language toggle popup when I swap:

    language toggle popup

I have bound the Norwegian keyboard layout to Shift+Alt+0 and that works, but it's annoying to have to do that every 5 minutes. Also I find it weird that I can't see the language bar neither on the desktop nor on the toolbar.

Anyone have any idea of what might be wrong?

Here are some screenshots of my settings:

settings 1

settings 2

settings 3

No language bar on the toolbar

P.S. The only time I see the language toggle popup is actually when I'm logged out in the lock screen and press Win+Space. Nothing happens if I do that after being logged in.

10
  • 66
    This has driven me UP THE WALL since I installed Windows 10. The keyboard layout switches sporadically as I type. I swear I didn't touch the <kbd>Win</kbd>+<kbd>Space</kbd> shortcut. Mar 10, 2016 at 13:02
  • 23
    Alt + Shift also changes language it seems.
    – Mir
    Aug 18, 2016 at 14:27
  • 13
    And Left Ctrl + Shift changes keyboards if more than one keyboard is installed!! Alt + Shift and Ctrl + Shift are common shortcut patterns in Code Editors and Adobe products (Photoshop for instance). WINDOWS-: that was a poor, and unnecessary, choice of shortcut hijacking!! Shame on You. Ha! No Wonder I had to keep "rebooting" ! I thought this new laptop/keyboard was broken! Thanks for everyone for the Solution :) Jul 4, 2018 at 23:06
  • 3
    It saddens me that MSFT still has such basic usability issues. Jul 10, 2018 at 15:56
  • 1
    I know this is an old question, but I wanted to mention my solution, if only for my own benefit later on, since none of the below solutions worked for me. I have US EN, a custom US EN, BG, and AR, and my system would switch to whichever language is next in the Language Bar list when I opened a new application. I had to simply force the default input method to what I use most often (US EN): > Settings > search for 'typing' > Advanced keyboard settings > Override for default input method. Aug 14, 2019 at 9:30

9 Answers 9

424
+150

In Windows 10, by default, pressing CTRL+SHIFT (or for some ALT+SHIFT - thanks madmenyo ) will cycle through any keyboard layouts that you might have mapped and it's surprisingly easy to do this by mistake.

If you keep pressing CTRL+SHIFT (or whatever you might have changed it to) then soon you should get back to the correct setting. (alternatively reboot which is what I did first time ;-) )

(Updated Aug 2019) You can change/disable this by

> Settings > search for 'typing' > Advanced keyboard settings > Language
> Bar options > Advanced Key Settings (tab) > Change Key Sequence

Be warned, the above doesn't always work - Restarts and Sleep mode can both change keyboard default (usually to US) - I've found no cast-iron solution though creating a new profile can help, though not a particularly satisfactory answer IMHO.

In an emergency

WIN+R  
osk

to bring up the On Screen Keyboard might help temporarily.

Also note that it's possible to disable this so that no key combination will change the language - change the keys to "Not Assigned" - see answer below from Mort for more info

29
  • 109
    Whaaaat. I use Ctrl+Shift frequently in Visual Studio. No wonder my keyboard layout kept changing. Thanks!
    – willem
    Feb 25, 2016 at 14:18
  • 67
    For me this is actually ALT+SHIFT
    – Madmenyo
    Feb 28, 2016 at 19:08
  • 5
    Odd. Maybe they changed that, but for me it says the shortcut to switch is [windows key] + [space], which seems a bit more reasonable (and indeed seems like the only thing that works as language switch shortcut).
    – Nyerguds
    Mar 21, 2016 at 7:44
  • 18
    For anyone coming to this in 2016, it seems the location has changed. Now it's located in Control panel//Language//Advanced settings//Switching input methods//Change language bar hot keys Mar 25, 2016 at 3:56
  • 38
    to be precisely: win + space changes between all configured language/keyboard pairs. alt + shift only changes language and ctrl + shift only changes keyboard
    – Simon Zyx
    Mar 27, 2016 at 16:36
40

2018/2019 answer:

I had the same issue, trying to use Polish keyboard with English UI language of Windows.

Every time I locked the computer, it came back to US keyboard.

The problem was that I was having Polish keyboard under Polish language, where in fact, what I really wanted was a Polish keyboard under English language.

I removed Polish language pack, added Polish keyboard under English language, and removed American keyboard from English language - see the screenshot below:

Windows 10 (2018) language preferences

So in short, the trick is to add your desired keyboard as the only keyboard under the default language.

(This works for me because I generally type in English, only sometimes I want to input in Polish, but I can do it without changing the keyboard, since Polish keyboard is fully compatible with US QWERTY).


Additional notes:

As @GuneyOzsan mentioned, some language/keyboard configurations might show only in language bar, but not in the language settings keyboards list (so you cannot remove it) -- particularly, this happens after a major update of Windows. To remove one of those items (e.g.: lang=US, keyboard=Canada), you have to add the same exact combination of the item you want to delete via the language settings list, and then remove it:

  • click on the + (add a preferred language)
  • add an item with the lang=US and keyboard=Canada
  • then remove it
  • then delete the preferred language you just created (this removes the invisible keyboard)
16
  • 3
    Wow, I can't say how this was helpful to get rid of months of hair pulling (and inefficient workflow that keeps me blocking while coding). It is a shame that they have Ctrl+Shift key comb in Visual Studio (as well as in most image/audio editors) and not aware (or not care about) of such usability problem. Aug 29, 2018 at 17:00
  • 4
    I noticed that some Windows updates add back the US keyboard, and keyboard language starts changing again (with Ctrl+Shift). Unfortunately this new keyboard added by Windows update does not appear in language settings keyboards list (so you cannot remove it) but appears only in the langauge bar. To be able to remove it, you need to add a US keyboard to the list, and then remove it. This removes the invisible keyboard added by the Windows update. Oct 9, 2018 at 17:44
  • 1
    This does not work if zou actuallz... FML. This does not work if you actually need two layouts.
    – dualed
    May 20, 2019 at 16:06
  • 1
    Note that in Win10 you have to click the language for the button 'options' to appear and this button gives access to the keyboard settings. So keyboard settings are placed behind a hidden button in language. What a design. May 31, 2019 at 12:10
  • 1
    After my experience in the long run, the ghost language keyboard comes back after some Windows updates, available for switching with keyboard shortcuts, but visually hidden from task/language bar. In this case you need to dig the settings again to find and remove it. Jun 1, 2019 at 17:56
18

If you click on the "Change language bar hot keys" link, visible in your last screenshot, you should be able to see which keys are bound to change the keyboard language.

The default settings are very easy to hit, when using the keyboard, thus suddenly changing the keyboard language. Changing the keys to "Not Assigned" will prevent the keyboard language from switching accidentally.

1
  • 2
    Yea those were set to Shift+Alt originally and then I changed them to "none". Unfortunately that didn't solve the issue alone, but see my other answer.
    – Nilzor
    Sep 29, 2015 at 12:47
12

December 2018

The same issue occurred to me and I followed the following steps to fix it on Windows 10.

Step #1: Go to Language Preferences

enter image description here

Step #2: Click on Advanced keyboard Settings

enter image description here

Step #3: Click on Language bar Options

enter image description here

Step #4: Perform following : 4.1 Select Advanced Key Settings Tab 4.2 Choose Between input languages option in the list. 4.3 Click on Change key Sequence... button

enter image description here

4.4 Change both the options to Not Assigned.

enter image description here

4
  • 1
    In Step #3, 'Override for default input method' solved my problem. My system language is English (UK) and my keyboard layout is Swedish. 2 different languages were messing with my keyboard layout.
    – Tirtha R
    Jul 6, 2019 at 21:30
  • This worked for me on one Windows 10 computer but on another (on another domain) I could not find the Advanced Keyboard Settings or the Language Bar Options. YMMV.
    – Ben
    Jan 14, 2020 at 15:42
  • This option keeps moving in various Windows 10 releases. See this answer to directly open the Text Services and Input Languages dialog.
    – Ben
    Jan 14, 2020 at 15:50
  • 1
    @TirthaR Yes. But further steps are specified to avoid switching it by mistake. In my case, one of the shortcuts I used in my Sublime Text editor switches the input method automatically. So steps 3 and forwards are for that. Thanks Jan 18, 2020 at 9:47
11

Turns out I had to configure a keyboard layout in the first screenshot. You'll notice it says "Keyboard: None available". So clicking "Options" here, then "Add an input method" and then selecting QWERTY Norwegian solved the case.

I don't know how I was able to install Windows with such a borked language setup. Anyway I advice everyone to watch more closely the language questions upon initial install.

Pic1

Pic2

1
  • After trying to get handwriting to work in French (in Canada) I had 2 versions of English (US, Canada) and French (France, Canada) installed, not to mention more than one input method for English US. In short, this answer allowed me to clean all of that up nicely. Jan 13, 2016 at 16:13
11

The direct registry setting to disable the keyboard layout toggle hotkeys is:

reg add "HKCU\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3

You might also want

reg add "HKCU\Keyboard Layout\Toggle" /v "Language Hotkey" /d 3
reg add "HKCU\Keyboard Layout\Toggle" /v "Hotkey" /d 3

And for new users, try this (in an elevated prompt):

reg load HKEY_USERS\temp "%USERPROFILE%\..\Default\NTUSER.DAT"
reg add "HKEY_USERS\temp\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3
reg unload HKEY_USERS\temp
4
  • 1
    What are these commands doing? Feb 28, 2018 at 16:36
  • @kleinfreund As mentioned in the first sentence, it disables the keyboard shortcuts which toggle the layout, so that it cannot be changed inadvertently.
    – mivk
    Feb 28, 2018 at 21:04
  • Thanks! Running an insider build and they completely removed the language section from the Control Panel. I still can't understand what led Microsoft to use such a commonly used key-combo
    – Sam Denty
    Apr 14, 2018 at 22:31
  • Thanks! The only way that works in 2018 to block alt-shift / ctrl-shift switching, it seems that the UI component where you could change it is gone, I can not find it anywhere.
    – jakub.g
    May 14, 2018 at 12:50
6

Solution1

use this solution- How to disable automatic keyboard layout change in Windows 8?

Solution2

Choose the second language as default. then,when you switch to the first one, it will remain switched.

(thanks to @SimonSeyock):

win + space changes between all language/keyboard pairs.
alt + shift only changes language
ctrl + shift only changes keyboard

3
  • Solution 1 doesn't actually offer a solution in that link. That resolves an input method not an input language.
    – msysmilu
    Sep 2, 2016 at 12:23
  • 1
    alt+shift did it for me. Nothing else really worked Jan 17, 2017 at 19:50
  • Regarding your last paragraph: You copied the input of Simon's comment under the highest upvoted answer but like I asked him himself there too, where is the proof for that? When I go into the settings, Windows clearly states that ALT+SHIFT is used to change the input method (aka keyboard setting) as default, not to alter the language. Be careful with copying non-proofed content. Nov 5, 2020 at 9:02
5

My problem: I have 3 languages (keyboard layouts) installed. When going to sleep in Windows 10, then waking up, it always defaults back to the "main language", instead of keeping the last one set. I consider this a bug.

Solution:

  1. Open Control Panel\All Control Panel Items\Language.
  2. Click on Advanced Settings.
  3. Under Switching input methods, check the Let me set a different input method for each app windows.

This will keep the language when going to sleep and coming back.

2
  • 1
    Thanks. This solved my problem with the keyboard layout always changing back to the "default" after reboot and after sleep. I also have 3 keyboard layouts installed. English, because it works better with some game and two Swedish. Normal qwerty and dvorak. Dec 9, 2017 at 15:10
  • I had a similar issue, solved it by defining my keyboard directly under main language: see superuser.com/a/1322521/97570
    – jakub.g
    May 14, 2018 at 12:45
0

This top Google result worked on my new Windows 10 laptop:

Set a default keyboard layout:

  1. Click the Start menu and select Settings.
  2. Select Time & language.
  3. Click Region & language in the left column.
  4. Under Languages click the language you want as default and click Set as default.
3
  • I'll give it a go and see if this actually helps. Makes sense + it's the only thing I haven't yet tried :)
    – krizajb
    Dec 29, 2017 at 9:19
  • Unfortunately this only sets the default option. It doesn't prevent keyboard to change while using Windows. The problem is the Ctrl+Shift key combination keeps changing the selected keyboard, which is common in most image and audio editors (as well as Visual Studio, hey Microsoft, are you aware of this?). Aug 29, 2018 at 16:55
  • I think i've pressed Ctrl+Shift by accident a few times in my life, but simply removed all but En-US. You could also disable the shortcut: superuser.com/questions/109066/… Aug 29, 2018 at 19:04

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .