Como posso editar texto Unicode no Notepad ++?

26

Às vezes, edito texto em inglês que inclui caracteres Unicode. Por alguma razão, no meu PC, o Notepad ++ converte caracteres Unicode em ???, corrompendo o texto e perdendo todos esses dados. Estou procurando uma maneira de editar esse texto, preservando os caracteres Unicode. Estou usando Consolas como minha fonte. Se a fonte não tiver todos esses caracteres, por que devo perder os dados quando copio o texto do Notepad ++ (através da área de transferência do Windows)?

Robinicks
fonte
Será que você está usando um plug-in que não suporta Unicode?
Ivo Flipse
Se esses são pontos de interrogação nas caixas, na verdade é o glifo da fonte para glifos ausentes e seus dados não são perdidos.
9139 Joey
Não, não está em caixas, é o simples '?' personagem. Confirmado.
Robinicks 5/03/10
1
pode ser necessário alterar a fonte. veja superuser.com/questions/16831/…
RamyenHead

Respostas:

15

Se o arquivo estiver realmente codificado em Unicode, o Notepad ++ deverá detectá-lo automaticamente. A fonte Consolas funciona bem para mim. Você pode tentar uma destas duas opções de menu:

  • Codificação -> Codificação em UTF-8
  • Codificação -> Converter em UTF-8

Tenho certeza de que o primeiro fará o que você quiser.

DisgruntledGoat
fonte
Eu não tenho o menu Formatar.
Val
1
Para a posteridade, você precisa o menu Encoding, não Formate
Ken Bellows
15

O problema descrito na pergunta acontece quando um documento vazio / novo é definido como "ANSI" e caracteres Unicode são colados nele.

Não há detecção automática quando usado com um documento vazio / novo, pelo menos não na versão do Notepad ++ que eu testei (v5.4.5). "ANSI" é o padrão no Notepad ++ para um novo documento, a menos que definido no menu ConfiguraçõesPreferências → guia Novo Documento / Abrir Diretório Salvar .

Solução

A solução é definir a codificação para UTF-8 antes de colar, menu FormatoCodificar em UTF-8 :

Comando de menu "menu Formatar / Codificar em UTF-8" prestes a ser executado

Exemplo

Copiei algum texto para um novo documento do Notepad ++, o russo (русский язык, russkiy yazyk) , do Firefox, mostrando o idioma russo da página da Wikipedia .

Se a codificação não for alterada de "ANSI", este é o resultado:

Resultado da colagem da seqüência de caracteres Unicode "Russo (русский язык, russkiy yazyk") em um novo documento do Notepad ++ sem alterar a codificação do padrão "ANSI".

Se a codificação for alterada, este é o resultado:

Resultado da colagem da seqüência de caracteres Unicode "Russo (русский язык, russkiy yazyk") em um novo documento do Notepad ++ após alterar a codificação do padrão "ANSI" para "UTF-8".

Como pode ser visto na figura abaixo (a parte cirílica é destacada), o Notepad ++ na verdade converte os caracteres Unicode em ASCII 63 (hexadecimal 3F), pontos de interrogação. É por isso que os caracteres Unicode são perdidos (em "ANSI" mode) quando copiar o texto para fora através da área de transferência (isto é não uma questão da fonte - informação é perdida).

Captura de tela de uma visão hexadecimal do referido documento

Testado em: Notepad ++ v5.4.5 (UNICODE).

Peter Mortensen
fonte
5

Há boas e más notícias.

Boas notícias: o Notepad ++ suporta Unicode (pelo menos pelo que posso reunir).

Más notícias: aparentemente, o suporte a Unicode é apenas no Windows XP.

Na verdade, eu não tenho uma máquina Windows na minha frente. Pelo que me lembro, há um menu de codificação no menu Formatar em algum lugar. A codificação para Unicode é, na verdade, mais comumente UTF-8.

Aqui está uma imagem 'bonita' do suporte a Unicode no Notepad ++,

insira a descrição da imagem aqui

Josh Hunt
fonte
3

O Unicode funciona perfeitamente no Windows 7. O único problema que surge é que você precisa digitar novamente os caracteres que foram alterados. Já aconteceu comigo. Estou escrevendo com letras escandinavas para ä -> E4, ö -> F6. É doloroso substituir todos eles, mas vale a pena.

Se você codificar uma página de ANSI -> UTF-8, haverá alguns problemas de caracteres.

Sugiro que você primeiro crie uma nova página em UTF-8 e depois copie / cole suas informações. Não haverá / não deverá haver nenhum problema então.

Peter Mortensen
fonte
1

Isso é trabalhado para mim:

Alterei a fonte para Courier New no configurador de estilo no meu PC (Windows 7 com conjunto de caracteres inglês / americano e romeno para conjunto não Unicode). Está trabalhando com fontes Courier New & Tahoma + codificação UTF-8.

rapy rapy
fonte
0

No menu superior, selecione a Encodingopção escolher Encode in UTF-8ou Encode in UTF-8 Without BOMentão você pode editar o texto na codificação Unicode.

Siavash
fonte