Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Próxima revisão
Revisão anterior
dicas:caracteres [2008/10/24 19:14]
paulojus criada
dicas:caracteres [2010/04/12 10:46] (atual)
paulojus
Linha 1: Linha 1:
-=== Codificação de caracteres === +====== Codificação de caracteres ======
-Em português brasileiro os sistemas operacionais utilizam tipocamente uma das seguintes codificações de caracteres: ''​ISO-8859-1''​ ou ''​UTF-8''​. O Windows e alguns Linux, especialmente os mais antigos utilizam ''​ISO-8859-1''​ enquanto os Linux mais recentes por defaut costumam instalar a ''​UTF-8''​. Estas diferentes codificações podem ter efeitos sobre documentos com caracteres especiais escritos em um sistema e visualizados em outro. ​+
  
-Para converter um arquivo ​de um formato para outro na linha de comando do Linux pode-se usar o comando ''​iconv''​. Vejamos alguns exemplos. +Em português brasileiro os sistemas operacionais utilizam diferentes codificações ​de caracteres: 
-  * Voce tem um arquivo ''​exemplo1.tex''​ digitado em um sistema ''​ISO-8859-1''​ e quer converter para ''​UTF-8'' ​gerando o arquivo com nome ''​exemplo1a.tex'' ​(vamos preservar o original por segurança, se vc quiser depois renomeie o arquivo) +  * **''​UTF-8''​**: No LINUX pode-se escolher a codificação desejada ​(na instalação ou posteriormentemas em versões mais atuais geralmente utiliza-se como padrão na instalação
-<​code>​ +  * **''​ISO-8859-1''​**: O WINDOWS usa um formato próprio ​''​WINDOWS-1252'' ​mas que é quase igual a ISO-8859-1 ​(também chamado de **''​latin1''​**). 
-$ iconv -f ISO-8859-1 -t UTF-8 -o exemplo1a.tex exemplo1.tex </​code>​ +
-  * Voce tem um arquivo ​''​exemplo2.tex'' ​digitado em um sistema ​''​UTF-8''​ e quer converter para ''​ISO-8859-1'' ​gerando o arquivo com nome ''​exemplo2a.tex''​ (vamos preservar o original por segurança, se vc quiser depois renomeie o arquivo) +
-<​code>​ +
-$ iconv -f UTF-8 -t ISO-8859-1 -o exemplo2a.tex exemplo2.tex </​code>​+
  
-Para saber qual a codificação de caracteres está sendo usada no sistema ​Linux que voce está usando ​digite:+Estas diferentes codificações podem ter efeitos sobre documentos com caracteres especiais escritos em um sistema e visualizados e ou compilados(por exemplo documentos LaTeX) em outro sistema.  
 + 
 +**No LINUX**, para saber qual a codificação de caracteres está sendo usada no sistema digite ​na linha de comando do terminal:
 <​code>​ <​code>​
-locale </​code>​+locale </​code>​
     - Se voce ver na saída ''​pt.BR''​ é porque o sistema é ''​ISO-8859-1''​     - Se voce ver na saída ''​pt.BR''​ é porque o sistema é ''​ISO-8859-1''​
     - Se voce ver na saída ''​pt.BR.UTF-8''​ é porque o sistema é  ''​UTF-8''​     - Se voce ver na saída ''​pt.BR.UTF-8''​ é porque o sistema é  ''​UTF-8''​
  
 +Alguns programas e aplicativos,​ em especial editores de texto (por exemplo o ''​kile''​) possuem opções para se escolhar a codificação de caracteres a ser utilizada.
 +
 +
 +==== Conversão de arquivos via comando em terminal (LINUX) ====
 +Para converter um arquivo de um formato para outro na linha de comando do Linux pode-se usar os comandos ''​iconv''​ ou ''​recode''​ na linha de comando do terminal.
 +
 +== Usando o comando convmv ==
 +O comando ''​convmv''​ é muito flexível tanto para converter arquivos individuais quanto diretórios,​ subdiretórios e arquivos, recursivamente,​ de uma só vez. 
 +  * Veja se o comando está disponível no seu sistema. Se não etiver instale com<​code>​
 +sudo apt-get install convmv
 +</​code>​
 +  * para testar a conversão de um arquivo, por exemplo, ''​exemplo.tex''​ pode-se usar <​code>​
 +convmv -f UTF-8 -t ISO-8859-1 exemplo.tex
 +</​code>​
 +  * e para converter definitivamente ​ um arquivo, por exemplo, ''​exemplo.tex''​ pode-se usar <​code>​
 +convmv -f UTF-8 -t ISO-8859-1 --notest exemplo.tex
 +</​code>​
 +  * Para converter definitivamente ​ um diretório recursivamente (isto é todos os subdiretórios e arquivos) usase a opção ''​-r'':​ <​code>​
 +convmv -r -f UTF-8 -t ISO-8859-1 --notest DIRETORIO
 +</​code>​
 +  * Mais detalhes na documentação <​code>​
 +man convmv
 +</​code>​
 +
 +== Usando o comando iconv ==
 +  * Voce tem um arquivo ''​exemplo1.tex''​ digitado em um sistema ''​ISO-8859-1''​ e quer converter para ''​UTF-8''​ gerando o arquivo com nome ''​exemplo1a.tex''​ (vamos preservar o original por segurança, se vc quiser depois renomeie o arquivo)<​code>​
 +iconv -f ISO-8859-1 -t UTF-8 -o exemplo1a.tex exemplo1.tex </​code>​
 +  * Voce tem um arquivo ''​exemplo2.tex''​ digitado em um sistema ''​UTF-8''​ e quer converter para ''​ISO-8859-1''​ gerando o arquivo com nome ''​exemplo2a.tex''​ (vamos preservar o original por segurança, se vc quiser depois renomeie o arquivo)<​code>​
 +iconv -f UTF-8 -t ISO-8859-1 -o exemplo2a.tex exemplo2.tex </​code>​
 +
 +
 +== Usando o comando recode ==
 +
 +  * De latin1 (iso-8859-1) para utf-8:<​code>​
 +recode l1..utf8 arquivo.csv</​code>​
 +
 +  * De utf-8 para latin1 (iso-8859-1):<​code>​
 +recode utf8..l1 arquivo.csv
 +</​code>​
 +
 +== Usando o recurso dos2unix ==
 +
 +O **''​dos2unix''​** pode ser usado [[http://​www.dos2unix.org/​|neste site que perite a conversão online]]
 +
 +
 +=== Definição de codificação no R ===
 +
 +O R por "​default"​ lê e usa a codificação de caracteres ("​enconding"​) do seu sistema. Entretanto para ler e importar arquivos pode ser útil e necessário definir a desejada. O caminho para definir a codificação em uma sessão do R é com o comando <​R>​options(encoding="​O QUE VOCE QUER AQUI"​)</​R>​ e para importar arquivos diversas funções aceitam o argumento ''​enconding''​. Para mais detalhes veja e sessão "​Encodings"​ em <​R>​help("​connections"​)</​R> ​
 +
 +=== Definição de codificação (locale) no LATEX ===
 **Uso no ** <​latex>​\LaTeX</​latex>:​ o preâmbulo de seu documento deve ter:  **Uso no ** <​latex>​\LaTeX</​latex>:​ o preâmbulo de seu documento deve ter: 
      - para ''​ISO-8859-1'':<​code>​      - para ''​ISO-8859-1'':<​code>​
Linha 21: Linha 68:
 </​code>​ </​code>​
      - para ''​UTF-8'':<​code>​      - para ''​UTF-8'':<​code>​
-\usepackage[utf-8]{inputenc}+\usepackage[utf8]{inputenc}
 </​code>​ </​code>​
 +
 +
 +=== Definição de codificação (locale) em uma sessão do R e/ou Sweave ===
 +
 +No R há pelos menos duas formas de lidar com isto:
 +  - É possível fazer a conversão usando a função ''​iconv()''​.
 +  - Definir a opção padrão para uma sassão com ''​options()'':​ Os comandos do R a seguir podem definir o //​enconding//​ desejado em uma sessão. Isto é particularmente útil gerando documentos via Sweave. ​
 +
 +<code R>
 +options(encoding="​UTF-8"​) ​
 +</​code>​
 +
 +<code R>
 +options(encoding="​latin1"​)
 +</​code>​
 +
 +Note que isto vai gerar o documento em um computador com certa codificação e que pode ser incompatível ​
 +para compilação em outra máquina que usar um outro //​enconding//​. ​
 +Neste caso é necessário usar o ''​iconv''​ descrito anteriormente para 
 +converter de um formato para outro antes de compilar o documento LaTeX.
 +
 +===== Conversão de todo o sistema =====
 +
 +Na instalação do sistema operacional (LINUX) é instalada uma codificação cd caracteres ''​default''​. Em alguns casos o procedimento de instalação pergunta sobre a codificação desejada (ou permite que seja definida). Porém muitas vezes a codificação padrão é instalada e o usuário deseja mudar depois da instalação. Em versões recentes do Linux tais como Debian, Ubuntu, Mint entre outras a codificação ''​UTF-8''​ é a padrão da instalação.
 +
 +A seguir vamos ilustrar a configuração e conversão de sistema ''​UTF-8''​ para ''​ISO-8859-1''​ com opções para portugues (BR) e inglês.
 +  - **Gerar os locales desejados:​**
 +     - editar o arquivo ''/​var/​lib/​locales/​supported.d/​local''​ deixando com o seguinte conteúdo:<​code>​
 +pt_BR.UTF-8 UTF-8
 +en_US.UTF-8 UTF-8
 +en_GB.UTF-8 UTF-8
 +pt_BR IS0-8859-1
 +en_US IS0-8859-1
 +en_GB IS0-8859-1</​code>​
 +    - gerar os locales com o comando:<​code>​
 +sudo dpkg-reconfigure locales</​code>​
 +  - **Definição do locale do sistema** Cada um dos locales gerados podem ser escolhidos para o sistema. Para definir o locale desejado edite o Arquivo de configuração para definição dos locales ''/​etc/​environment''​ ou ''/​etc/​default/​locale''​. Em um exemplo optando por portugues brasileiro com codificação ISO-8859-1 o conteúdo de um destes arquivos deve ter as seguintes linhas:<​code>​
 +LANG="​pt_BR"​
 +LANGUAGE="​pt_BR:​pt"</​code>​
 +  - Depois disto, para converter nomes e conteúdos de arquivos e diretórios já existentes use o comando ''​convmv''​ descrito acima.
 +
 +
  
  
  

QR Code
QR Code dicas:caracteres (generated for current page)