Updated: August 23, 2022
The topic of today's guide isn't something many people will encounter. But some will, and they will want answers. So, here's the deal. Over the years, I have purchased hardware in various countries, for various reasons. Sometimes, the devices would come preconfigured (fully or partly) by the vendor (OEM), which also entailed first-time setup or pre-delivery testing. In the case of one specific Windows machine, it was built and then stress-tested in the UK, and then delivered into my hands. So far so good.
On this machine, I use Windows (as it happens), and I use English (US) as my language of choice, because I strongly believe all and every machine interface should be configured thus. But then, I had a need to type in a different language (as I happen to speak and use a bunch), so I added a few keyboard layouts. Then, I discovered that my system now had TWO versions of English - the American and the British (UK) one (hint, earlier mention), and that the latter could not be removed. Ironically, this sounds similar to my Firefox niggle from a few days back. Well, let us troubleshoot.
Problem in more detail
So what we have is a combination of things. One, the machine had been preconfigured for stress-testing before customer delivery. The vendor most likely used the language of their country (English GB), which is why we have a precondition for the problem; I use a different flavor of English. Then, I didn't wipe, delete or fresh-install the machine, and used it as it, and after a couple of years, added a few extra keyboard layouts. Then, when I started Alt-Shifting between languages, I encountered the issue - and the bug.
And here's why most people won't ever have to deal with this. If you use a single language, you won't ever see this. If you use the language (or dialect, in case of English) that matches your country, so to speak, you won't ever encounter this. If your machine has not been pre-configured by an OEM (although most Windows boxes are), you are not likely to face this problem. So far so good.
But now, let's review why this problem is total nonsense:
- Microsoft (Windows) does not flag keyboard layout dialects in the taskbar when you switch between different versions of English. So you only see ENG, and you don't know what you have until you actually type and encounter the layout discrepancies.
- The clincher, the system tool does not list the offending language - so you can't remove it. I have no meaningful screenshot to show here. And even if does list it (I reproduced the problem in a virtual machine), it cannot be removed still. There is no "easy" indicator why and how this invisible (GB) locale was added or used. It doesn't matter really.
Mini rant, feel free to skip or ignore
The whole thing is indicative of an unintentional "nationalistic" trend whereby software tries to present data in a location-detected language rather than your chosen one. For example, use a VPN and connect to say Germany or Italy. You will now see that Web search engines show data in the local language and format, even if your system language is English. Not only is this stupid, it also assumes that the user can actually consume those other languages.
This reminds me of the utterly pointless movie dubbing nonsense in the 70s and 80s (in Europe). It's also ironic, because back in the middle of 20th century, people didn't really travel a lot, English wasn't lingua franca, and European countries wanted to "protect" their own languages. Nowadays, with everyone so heavily and deeply interconnected, and English being used so casually across the Web, we now have software going "local" for no good reason.
The second aspect of irony is that modern software is designed and made for young people to the point of exclusion of older people. But with the language element, all of a sudden, we're oh so traditional. Presenting people with a user interface they cannot understand in a language they can understand. Makes no difference. A paradox, because most people won't ever install or configure a computer system, so the "helping" element is just pointless noise.
But the trend is everywhere. Some flavors of Linux will also do this, i.e., you will get your system locale set to your location/timezone (if it exists) EVEN if you select a different language and keyboard layout. Thank you but no thank you. And I'm saying this as someone who speaks a variety of languages. If I choose something, there's a reason for it, and I don't need software to help me.
Okay, let's fix this. The way around the "non-removable" keyboard layouts in Windows 10 (and probably 11) is twofold. First, the scenario where you don't see the "offending" language listed but the keyboard layout shows in the language menu in the taskbar. The fix here is to add the language for the keyboard layout you want removed. In my case, we're talking English (GB), and which is not listed in the Language section of Windows 10 Settings. Add the desired language (no need for extras). Now, it will be listed. And now, it can be removed.
The second problem is that you have the language installed or partly tweaked, but it cannot be removed, as shown two screenshots up. The fix here is to either move the language down the list (using the arrow keys) so it is not listed first, and also to optionally install the language pack and then remove it, as above.
Optional: layout tweaks
In the example above, you may have noticed, ENG is set to use the UK keyboard, which is not what we want either. A secondary problem. In the language options (for each listed, installed language), you can tweak the keyboards. Basically, remove the UK one and add the US one, done. This is just an example for reference, and you can do the opposite if you like, or anything.
And we're good now!
Language management remains the black sheep of software interfaces. The simplest solution would be to internationalize it to English, like air traffic control. The problem is, people want to use other languages. However, there's no reason why interfaces ought to be in anything than standard technobabble, and extra keyboard layouts (and languages) be added as a deliberate option, not through any auto-guessing, because from what I see it, it's usually done wrong, uniformly across the board.
If you have a Windows machine where you suddenly discover an extra keyboard layout, which cannot be easily removed, you can try adding the language pack that matches the layout, and then have it removed. Hopefully, this will give you back the typing productivity, or at least the predictability, that you expect. And that would be all for today.