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 of my settings are set to use a language list

enter image description here enter image description here

Here's some things i tried already

  • 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.

Best Answer

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
  • Using the same Microsoft account on another PC that still has this issue

Whenever the problem comes back this registry folder has to be deleted

Edit 2: Thanks to @Lu55's suggestion, here's a handy one-liner to use on a command prompt with admin privileges:

reg delete "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /f

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.