LANGUAGE
tem uma finalidade semelhante a LANG
e LC_MESSAGES
, pois controla em que idioma a interface do usuário é exibida.
A principal diferença entre eles é que, enquanto LANG
e LC_MESSAGES
só podem obter um único especificador de localidade, LANGUAGE
pode obter uma lista de lista separada por dois pontos de especificadores de código de idioma.
Como exemplo, isso permitiria que um usuário exibisse programas em catalão, se disponível, e voltasse para o espanhol, se não antes de finalmente retornar ao inglês não traduzido, o que não é possível com as outras variáveis. Nesse caso, seria LANGUAGE="ca:es:en"
(códigos ISO 639-1).
As outras variáveis de ambiente são definidas para o benefício de aplicativos que não usam gettext para traduções que suportam apenas o ambiente mais antigo variáveis.