Como posso ativar o suporte a UTF-8 no console do Linux?

4

Neste momento, parece assim:

    
por Mihai 16.08.2016 / 14:51

3 respostas

3

Claro (é limitado no número de glifos, mas parece que sua localidade está usando a codificação UTF-8).

Eu uso isso para testes:

#!/bin/sh
# send character-string to enable UTF-8 mode
if test ".$1" = ".off" ; then
    printf '3%%@'
else
    printf '3%%G'
fi

e (chamando-o de "utf8"), "utf8 on" ativa a codificação.

Usando o exemplo dado com pstree , aqui está um exemplo após executando o script (antes, o mesmo tipo de saída como na pergunta):

capturadeteladepoisde"utf8 on"

Como observado em um comentário, há um script unicode_start que mais , mas tudo o que é necessário para resolver a questão colocada é o pequeno script usado como exemplo.

Enfrentando um comentário diferente: Pelo menos no meu sistema (e na captura de tela mostrada na pergunta), todos os caracteres usados por pstree são fornecidos na fonte de 512 glifos usada por padrão para suporte a Unicode no Linux console.

Leitura adicional:

por 16.08.2016 / 14:54
3

Verifique se você tem o pacote locales instalado

dpkg -l locales

Se não, instale-o

apt-get install locales

Como root, digite

dpkg-reconfigure locales

você pode navegar por essa lista com as teclas de seta para cima / para baixo, por exemplo, escolha en_US-UTF-8

edite seu .bashrc adicionando as seguintes linhas:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8

Execute o comando locale , a saída deve ser semelhante a esta:

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
    
por 17.08.2016 / 00:30
0

Defina CHARSET=UTF8 em /etc/default/console-setup .

Execute systemctl daemon-reload && systemctl restart console-setup.service depois.

    
por 16.02.2018 / 20:31