75

Update: this is a lengthy post, you can jump straight to the answer below


Note: The quick language list refers to the list in the screenshot below, accessible throught the shortcut Win + Space bar

I have two languages for windows spell check in my system, English (United States) and French (Switzerland), but despite both languages being properly configured with "Swiss French" input keyboard, US Keyboard input keeps appearing on this list:

enter image description here

Here's the settings for English (United States) language, you can see the only input is "Swiss French":

enter image description here

Same for Français (Suisse), the only input is "Swiss French":

enter image description here

In the Control Panel, both are also set as Swiss French:

enter image description here

All my settings are set to use "language list":

enter image description here enter image description here

Here's a few things that I already tried:

  • I already managed to remove it by some language configuration gymnastics, by adding and removing languages, it always eventually comes back
  • I have already done this: https://superuser.com/a/484595/168632
  • There's no mention of US Keyboard in my registry settings either:

enter image description here

Please help, I'm desperate, this is my third computer with Windows 10 and they all do the same thing.

73

To fix this issue, delete the Preload registry folder and sign out or restart the computer:

HKEY_USERS\.DEFAULT\Keyboard Layout\Preload

This folder seems to be some legacy remnant that contains non-user-specified keyboard layouts to be added to the list of languages when the user signs in. While the fix itself works through restarts, at time of writing there's things that bring back that pesky folder, here's a few that I bumped into personally:

  • Remote desktop to a computer with US layout
  • Win 10 Anniversary update
  • Using the same Microsoft account on another PC that still has this issue

Whenever the problem comes back, that registry folder needs to be deleted again.

Edit: I have created a RemovePreload.reg text file with the following content, this way this fix can easily be re-applied every time without navigating the registry:

Windows Registry Editor Version 5.00

[-HKEY_USERS\.DEFAULT\Keyboard Layout\Preload]

To use this, save it in a text file and change the extension from .txt to .reg. Then whenever it comes back, you can just double click it and restart or sign out.

  • Thanks! This was the only thing that finally fixed it for me. The US keyboard layout always got added when I logged in. I could remove it by first adding it, and then removing it, like Snaiper's answer, but it would always reappear when restarting. This seems to have removed it permanently. – The Oddler Apr 22 '17 at 18:24
  • 1
    It appears after a while anyway. – troorl Apr 23 '17 at 17:37
  • Yea, it reappeared for me now too :( Was able to restart only once without it reappearing it seems. – The Oddler Apr 23 '17 at 20:14
  • 1
    The solution of adding and removing the keyboard is way safer and as hacky as this one :) – user2158153 Mar 28 '18 at 21:39
48

Actually, the solution is quite simple and requires no registry editing!

  • Go to to Region and Language (previously named Language preferences), click on English (United States) and go to Options.

  • If you see "US Keyboard" there, remove it, and you're done.

  • HOWEVER, if you do not see it there, then click on Add a keyboard, add "US keyboard", then remove that keyboard and you're done.

I figured this out after some trial and error trying out various things, I had the same issue.

  • 8
    It appears after reboot again. – troorl Apr 23 '17 at 17:40
  • 5
    The third point is literally: "Have you tried turning it on and off again?"... and that was on point :) Thanks for that! – ccjmne Aug 26 '17 at 16:58
  • 2
    Doesn't work after reboot, I tested this before coming up with the solution above – Luis Ferrao Feb 15 '18 at 9:14
  • 1
    Yes, doesn't work after restarting or after hybernating the pc. – Ozan Kurt Mar 31 '18 at 7:50
  • After the June 2018 Windows 10 update, the "Remove" setting for English US is disabled. (Grr.) – ms609 Jun 15 '18 at 9:45
4

Theres is two places for keyboard configuration in windows 10, control panel -> Language

The other is in setting just like your screenshot

Makes the changes there too, it should fix the problem.

enter image description here

  • Unfortunately this is not it, I have added a screenshot of that screen on my computer, it's correctly configured with "Swiss French" exactly the same way as in the new UI – Luis Ferrao Jun 23 '16 at 12:00
4

I didn't have 409 entry in the registry (see accepted anwer). The steps I took to remove English (US) from the quick selection menu:

  1. Open "Language Preferences" from the quick selection menu.
  2. Add English (US) language.
  3. Remove English (US) language.

Tip: In Control Panel\All Control Panel Items\Language\Advanced settings -> Change language bar hot keys you can set hot key action for "Between input languages" to "(None)" to avoid accidental keyboard layout switch.

  • 2
    I think your answer misses the point of this question. The problem is not removing US English language, which I type in and definitely want in my list of languages, the point is to remove a non-existent "US Keyboard" layout that doesn't match my own keyboard layout and that creeps up every once in a while as an additional "language" in the list of languages. There are many threads regarding the removal of US English language itself but this one is not one of them. I also don't mean to remove the language list, I use it to fast switch between languages all the time (for windows' spell checker). – Luis Ferrao Sep 21 '16 at 7:17
3

This is not the permanent fix, but a handy batch file to replace manually adding en-US and removing it.

Remove_en-US.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">

    <!--User List-->
    <gs:UserList>
        <gs:User UserID="Current"/>
    </gs:UserList>

    <!--input preferences--> 
    <gs:InputPreferences>
        <!--add en-US keyboard input-->
        <gs:InputLanguageID Action="add" ID="0409:00000409"/>
        <!--remove en-US keyboard input-->
        <gs:InputLanguageID Action="remove" ID="0409:00000409"/>
    </gs:InputPreferences>

</gs:GlobalizationServices>

Remove_en-US.bat:

control intl.cpl,, /f:"%CD%\Add_en-US.xml"

Then you can just run Remove_en-US.bat to remove the layout. I have a shortcut to this batch file in my startup programs as well.

Here, 0409 is the locale ID and 00000409 is the keyboard layout values. For the list of the locale ID:keyboard layout value see https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh825682(v=win.10).

2
  1. Control Panel
  2. Clock, Language, and Region
  3. Language
  4. Change input methods
  5. Advanced settings
  6. Override for default input method
  7. Choose your preferred layout (instead of "Use language list")
  8. Save

Screenshot of Input settings -> Advanced settings

  • 'Language' is now missing in the latest win10 updates. – platinums Feb 11 at 17:36
2

Mikel's answer above fixes this.... but just in case this reappears for you (as it did for me): Do you perhaps have a custom AutoHotkey shortcut to change keyboard layouts?

The problem was that my AutoHotkey script contained the following lines of code:

; This should be replaced by whatever your native language is. See 
; http://msdn.microsoft.com/en-us/library/dd318693%28v=vs.85%29.aspx
; for the language identifiers list.
el := DllCall("LoadKeyboardLayout", "Str", "00000408", "Int", 1)
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1

So while in my desktop this would work beautifully and switch from English (UK keyboard layout) to Greek (GR keyboard layout) and vice versa, on my laptop that has a US keyboard, this script would be responsible for the extra layouts appearing out of the blue on my language switcher.

I hope this helps!

0

Actually it seems the issue is also with the same key under your actual user profile (HKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload), not just HKEY_USERS\.DEFAULT\Keyboard Layout\Preload.

I can replicate this pretty consistently - when I add a key 00000429 (Persian) for example there and reboot, I get the Persian keyboard automatically added, and when I delete it and reboot, the Persian is no longer there.

In sum, you may want to make sure that you don't have undesired languages in neither HKEY_USERS\.DEFAULT\Keyboard Layout\Preload nor HKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload.

0

Windows 10 anniversary edition contains a new "feature" where it assumes that both regional and language settings come with a mandatory keyboard layout. Those layouts cannot be removed via the settings GUI.

But I was able to overcome it via PowerShell with a script like this:

$1=New-WinUserLanguageList en-US
$1.Add("nl-NL")
$1.Add("de-DE")
Set-WinUserLanguageList $1

Copy-paste it into a PowerShell window.

The demo above configures the US layout as a default with the additional NL and BE layouts. Adjust as needed.

protected by Community Nov 7 '17 at 14:11

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.