Windows 10 - Windows Display Languages cause automatic keyboards adding
This is most likely due to synchronized settings.
It could be that your computer is syncing these settings from elsewhere. Make sure you turn off the syncing behaviour before you troubleshoot any further:
>Settings > Accounts > Sync your settings > Language Preferences (OFF)
or: There an issue reported about this for 1803, which does not seem to have been resolved. It is a known issue:
Update: This should be resolved for version 2004
If English (United Kingdom) is the current Windows display language, and you then add for instance English (India) to the Preferred languages list, afterwards neither English (United Kingdom) nor English (India) can be removed from the Preferred languages list.
or:
Someone has suggested that Razer's Synapse software keeps adding the random layouts. Disabling it on startup fixes all these issues. This could be a problem for some who comes here looking for a solution.
or:
It could also be related to this question here on superuser.
If you still see the issue, there are a few proposed solutions to this problem:
1 use the old language preferences:
WIN + R
then type shell:::{BF782CC9-5A52-4A17-806C-2A894FFEEAC5}
and remove English(United Kingdom) from there.
2 Set en-US as only user language (found here):
Open Powershell with Administrative rights and type the following one by one:
New-WinUserLanguageList en-US
Set-WinUserLanguageList en-US
You will be greeted with:
Confirm
Continue with this operation?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Press Y
to confirm.
Reboot.
And install the wanted extra languages again.
3 Yet another way:
- From the Start menu, search for powershell.
- Right-click Windows Powershell in the search results and choose Run as administrator.
- Type or copy/paste the following command at the command prompt, and then press Enter.
`Get-WinUserLanguageList`
After typing this command, make note of the “LanguageTag” listed for the language you wish to remove, as you will need it in the next step.
- Type or copy/paste each of the following commands at the command prompt, and then press Enter. In the following commands, instead of typing , replace it with the language tag you wish to remove, such as en-in for English (India).
$LangList = Get-WinUserLanguageList
$MarkedLang = $LangList | where LanguageTag -eq "<languagecode>"
$LangList.Remove($MarkedLang)
Set-WinUserLanguageList $LangList -Force
You can also try this tutorial from windows central
You can read more about windows language packs here
There are two main registry keys where keyboard layouts are found:
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
HKEY_USERS\.DEFAULT\Software\Microsoft\CTF\SortOrder\Language
For example, the
keyboard layout code
for the United Kingdom keyboard is 00000809
. It will be found under the registry
key in an entry whose value is this string.
Deleting the entry will delete the layout
(leaving the others in place).
Some secondary registry keys where keyboard layouts may be found, which are worth checking, are:
HKEY_CURRENT_USER\Software\Microsoft\CTF\SortOrder\Language
HKEY_CURRENT_USER\Control Panel\International\User Profile