Remove language form Chrome/Chromium that is not in the predefined list

In the settings area, Google Chrome and Chromium (I'm using Chromium) give you control over which languages you accept, and their order of preference. This list of languages goes into your HTTP Accept-Language header. Also, when the browser detects that you're viewing a page in a different language and offers to translate it for you, if you click no it adds the language to your list.

Here's the problem, which clearly seems to be a bug in Chromium. In the settings area you can only add languages from a predefined, albeit large, list. And in the list of langauges you accept, it only shows the ones that are in the predefined list. So if some other language is in your list, it does not show up in the settings area, and there is no way to remove it.

The auto-add feature added Haitian Creole to my list, and I cannot remove it. What's worse, I've been doing some web language testing, adding and removing languages from Chromium, and now Haitian Creole has invisibly worked its way to the top of my list, so some sites now serve up a Haitian Creole page because that's what my browser is asking for.

Is there some config file I can edit to modify my setting manually? I'm using Debian Linux.


Solution 1:

The Chromium devs provided this workaround:

  1. Open chrome://settings
  2. Open JS console with Ctrl+Shift+J
  3. Type chrome.languageSettingsPrivate.disableLanguage('ht')

where 'ht' is the language code for Haitian Creole in this example.