A opção 'encoding'
é sobre a representação interna do texto do Vim em todos buffers. Isso não deve ser alterado após o início do Vim, e isso não afeta (pelo menos diretamente) a codificação de um buffer!
Você está procurando a opção :help 'fileencoding'
:
:setlocal fenc=...
Para resumir: Que tipo de caracteres podem ser digitados e representados em um novo buffer são controlados pela opção 'encoding'
. O "melhor" valor para isso é utf-8
, pois somente isso pode representar qualquer caractere (dentro do Unicode). Agora, se você criou um buffer sem nome e deseja armazená-lo em uma codificação diferente, use 'fileencoding'
para alterá-lo (por exemplo, para ucs-2le
) para a primeira e subsequentes gravações. ( :w ++enc=...
também funciona, mas apenas para aquela gravação em particular!)
Por outro lado, para a detecção de arquivos abertos, você prefere configurar a opção 'fileencodings'
.