Respostas:
Ao usar vim -b
, isso exibe todos os caracteres altos como <xx>
:
set encoding=latin1
set isprint=
set display+=uhex
Qualquer codificação de byte único funcionará, o vim usa ASCII para todos os caracteres inferiores e os codifica para impressão. Definir isprint
como vazio marcará todo o resto como não imprimível. A configuração uhex
os exibirá como hexadecimal.
Aqui está como a exibição muda após cada comando:
set encoding=latin1|set isprint=|set display+=uhex
Parece o que você está procurando. Esta dica do vim
wiki intitulada: Forçando o UTF-8 Vim a ler Latin1 como Latin1 .
$ vim -c "e ++enc=latin1" file.txt
Também vim
é :help
possível fazer isso para ver mais sobre codificações.
:help enc
trecho de :help enc
'encoding' 'enc' string (default: "latin1" or value from $LANG)
global
{only available when compiled with the +multi_byte
feature}
{not in Vi}
Sets the character encoding used inside Vim. It applies to text in
the buffers, registers, Strings in expressions, text stored in the
viminfo file, etc. It sets the kind of characters which Vim can work
with. See encoding-names for the possible values.
NOTE: Changing this option will not change the encoding of the
existing text in Vim. It may cause non-ASCII text to become invalid.
It should normally be kept at its default value, or set when Vim
starts up. See multibyte. To reload the menus see :menutrans.
This option cannot be set from a modeline. It would most likely
corrupt the text.
NOTE: For GTK+ 2 it is highly recommended to set 'encoding' to
"utf-8". Although care has been taken to allow different values of
'encoding', "utf-8" is the natural choice for the environment and
avoids unnecessary conversion overhead. "utf-8" has not been made
the default to prevent different behavior of the GUI and terminal
versions, and to avoid changing the encoding of newly created files
without your knowledge (in case 'fileencodings' is empty).
...
...
vim
exibir apenas caracteres imprimíveis ASCII" e sua solução usa o conjunto de caracteres latin1 (que é ISO-8859-1, um superconjunto de ASCII), exibindo caracteres como os é
que eu ' Gostaria de ser exibido como <e9>
.
-b
, isso apenas definirá outras opções, veja:help edit-binary
. Não vejo diferença na forma como os bytes não imprimíveis são mostrados (mostra NUL sem-b
também normalmente). Principalmente não estou usando-b
, porque uso essas opções para verificar codificações estranhas em arquivos de texto.