Primeiro, confira a codificação
No canto inferior direito da barra de status, o Notepad++ mostra como está lendo o arquivo agora, por exemplo UTF-8, UTF-8-BOM ou ANSI. O menu de codificação (Encoding na versão em inglês) tem dois tipos de entradas que muita gente confunde:
- ANSI, UTF-8, UTF-8-BOM (parte de cima do menu): o Notepad++ lê de novo os bytes existentes sem alterar o arquivo. É só uma configuração de exibição.
- Converter para ANSI, Converter para UTF-8 … (parte de baixo do menu; em inglês Convert to …): o Notepad++ grava os caracteres na nova codificação. Ao salvar, o arquivo muda.
Caso 1: ç no lugar de ç
O arquivo está salvo em UTF-8, mas o Notepad++ o lê como ANSI. Escolha no menu de codificação a opção UTF-8 e os caracteres aparecem certos na hora. Não converta: «Converter para UTF-8» gravaria o lixo ç como caracteres de verdade.
Caso 2: xE7 ou quadrados no lugar de ç
O arquivo está salvo em ANSI (Windows-1252), mas é lido como UTF-8. Escolha primeiro a opção ANSI para ver os caracteres certos e depois Converter para UTF-8. Depois de salvar, o arquivo é UTF-8.
Caso 3: o lixo está mesmo no arquivo
Se o Notepad++ continua mostrando ç com UTF-8 selecionado, o texto quebrado já foi salvo. Aí nenhuma opção de menu resolve com segurança, principalmente se linhas certas e quebradas estão misturadas ou o texto tem codificação dupla. Solte o arquivo no Mojibuster, acima: ele repara só os trechos quebrados e mostra cada alteração.
Antes
Tradução revisada: ação, coração, João, São Paulo, informações; tudo certo.
Depois
Tradução revisada: ação, coração, João, São Paulo, informações; tudo certo.
Crie sempre os arquivos novos em UTF-8
Em Configurações → Preferências → Novo documento (em inglês Settings → Preferences → New Document), defina a codificação dos arquivos novos como UTF-8. Para arquivos que o Excel deve abrir, UTF-8-BOM é a melhor escolha; mais sobre Excel com acentos errados. Scripts do Windows PowerShell 5.1 também precisam de BOM, veja PowerShell.
Perguntas frequentes
Qual a diferença entre UTF-8 e UTF-8-BOM?
Os dois guardam os caracteres do mesmo jeito. O UTF-8-BOM grava ainda três bytes invisíveis no início, pelos quais o Excel e programas antigos reconhecem o UTF-8.
Por que o Notepad++ às vezes detecta a codificação errada?
Arquivos sem BOM não trazem informação sobre a codificação, então o Notepad++ precisa adivinhar. Com arquivos curtos e poucos caracteres especiais, ele erra mais.
Posso converter vários arquivos de uma vez?
No Notepad++ só com macros ou plugins. No Mojibuster é um arquivo de cada vez, e cada um leva segundos.