Charset

De WikiLICC
Revisão de 14h51min de 24 de abril de 2010 por Dago (Discussão | contribs) (O sistema operacional)
Ir para: navegação, pesquisa

Tabela de caracteres iso-8859-1 e utf-8

iso-8859-1

Este é o charset para códigos de caracteres latinos. Assim letras acentuadas serão representadas por apenas um caractere.

palavra -   Hexadecimal  
Ação    -   41-E7-E3-6F  

utf-8

Esta tabela de caracteres é [multibyte], ou seja, alguns caracteres serão representados no arquivo como 2 ou mais caracteres ASCII (o que pode dificultar a utilização de funções Lenght).

palavra |   Unicode                      | Hexadecimal
Ação    |   U+0041 U+00E7 U+00E3 U+006F  | 41,C3 A7,C3 A3,6F

Digitando os caracteres

Cada uma das partes abaixo pode estar configurada de maneira diferente.

O sistema operacional

Para verificar qual charset o sistema linux está usando:

[user@euler]$ locale
LANG=pt_BR.UTF-8
LC_CTYPE="pt_BR.UTF-8"
...

Gentoo

Todos os locales disponíveis estão em

ls /usr/share/i18n/locales/
..
pt_BR
pt_PT
en_US
en_GB
... 

e os locales com suporte no sistema estão em

vi /usr/share/i18n/SUPPORTED
..
pt_BR.UTF-8 UTF-8
pt_BR ISO-8859-1
pt_PT.UTF-8 UTF-8
pt_PT ISO-8859-1
..
  • No arquivo /etc/locale.gen estão os locales a serem instalados no sistema
vi /etc/locale.gen
..
pt_BR ISO-8859-1
pt_BR UTF-8
pt_BR.UTF-8 UTF-8
..
  • Force a instalação dos locales
locale-gen
  • Verifique os locales instalados
locale -a
 C
 POSIX
 pt_BR
 pt_BR.iso88591
 pt_BR.utf8

A variável LANG e LC_ALL (quem sabe as outras) devem conter uns dos itens acima

> locale
LANG=pt_BR
LC_ALL=pt_BR
LC_CTYPE="pt_BR"
...

O cliente SSH

Usando o Putty, clicando em Settings/Windows/Translations podemos selecionar a tabela charset.

O editor

O editor de texto usado deve ser capaz de salvar usando a tabela de caracteres desejada.

vi

No arquivo de configuração do vi (diretório home), temos

[user@euler] more ~/.vimrc
...
set fileencodings=utf-8,latin1
...

Assim os arquivos podem ser editados nesses formatos.

Se um arquivo iso-8859-1 é editado com um cliente SSH (em UTF-8), o arquivo é convertido ao abrir para UTF-8 e convertido de volta ao salvar para iso-8859-1 (veja [1]).

Use :language para ver a linguagem usada pelo vi

:language
Current language: "pt_BR.UTF-8"

O arquivo html

Para utf-8 use o cabeçalho

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

e para iso-8859-1 use

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

O servidor Apache

Ao enviar uma página para o cliente web, o servidor apache avisa qual tipo de charset é utilizado.

[user@euler]$ more http.conf
...
AddDefaultCharset ISO-8859-1
...

O cliente Firefox/Internet Explorer

O Firefox verifica qual encoding foi informado pelo servidor web (no exemplo ISO-8859-1). Todas as páginas saindo desse servidor serão padrão ISO-8859-1, mesmo que especificado de forma contrária no cabeçalho html.

Clicando em Tools/Page Info/General podemos ver o Encoding e as tags meta.

Veja Também

Ligações Externas