Imagine a wild amount of incoming environment variables like LANG, LANGUAGE, LC_MESSAGES and so on.
How to defuse localization?
๐ด LANGUAGE=C | Even if this has maximum priority, this is too risky since other specific things may call LC_stuff as far as I understand. |
๐ด LANG=C | This is supposed to be the default for missing LC_stuff so, not correct. Moreover, LC_ALL can be available and will take precedence - https://www.gnu.org/software/gettext/manual/html_node/Locale-Environment-Variables.html |
๐ถ LANG=C + LC_MESSAGES=C | it should work since it was adopted by https://github.com/apache/subversion/blob/trunk/tools/client-side/bash_completion#L81 but LC_ALL may be available and could take precedence, or, LC_NUMERIC and other stuff will still be read |
๐ถ unset LC_ALL + LC_MESSAGES=C | OK for parsing messages, and in theory LANG has lower precedence, but not OK for parsing numbers and times and other stuff by LC_* |
โ LC_ALL=C | probably bombproof - in theory LC_ALL has highest precedence and the variable LANGUAGE is ignored if the locale is set to โCโ. https://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-variable.html#The-LANGUAGE-variable |
โ unset LANGUAGE + LC_ALL=C | probably bombproof - and in theory thanks to LC_ALL=C the LANG is not used to get defaults of LC_stuff including LC_MESSAGES |
โ โ LC_ALL=C + LANG=C | probably super bombproof, probably overkill, probably it's already OK the LC_ALL=C |