Como descobrir se um terminal suporta UTF-8

18

Estou configurando o módulo CPAN para perl no CentOS 5, e uma das perguntas é 'O seu terminal suporta UTF-8?' (parafraseado). Como eu descubro?

    
por Whatsit 28.05.2009 / 17:47

7 respostas

15

Realmente, a maneira infalível de testar é baixar um arquivo de texto e o gato no terminal e veja se tudo parece ok.

ou, se puder, recompilar o terminal que permite a opção unicode (supondo que tenha um).

como é o $ TERM e o $ LANG?

    
por 28.05.2009 / 17:58
17

Digite isto no seu terminal:

echo -e '\xe2\x82\xac' 

Se o seu terminal suportar UTF-8, ele emitirá o sinal de euro:

    
por 06.08.2012 / 20:39
5

O caminho mais lastimável: corra seguindo e verifique a saída. Será um O maiúsculo com circunflexo se o terminal exibir UTF-8.

perl -le 'print "\x{c3}\x{94}"'
    
por 28.05.2009 / 18:04
2

A maneira mais segura é usar o comando "locale". Ele irá imprimir todas as variáveis diversas que determinam o conjunto de caracteres a ser usado. Por exemplo, esta é minha saída no RHEL5.3, configurada para usar apenas UTF-8 por padrão.

LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
    
por 28.05.2009 / 20:17
1

Você pode usar o seguinte comando:

locale charmap
    
por 04.07.2011 / 16:28
1
curl http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt

ou

wget -O - http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt

Isso obviamente requer wget ou curl .

    
por 25.12.2014 / 11:42
-1
UTF=$(echo -e "\u263A")
if [[ ! "$UTF" =~ "A" ]]  ; then
 echo -n "UNICODE here!"
fi
    
por 20.06.2012 / 01:44