He actualizado vim y ahora no estoy contento con algunos valores UTF-8 en mi .vimrc
.
Esto me lleva a la pregunta: cuando vim lee .vimrc
, ¿qué codificación supone que tiene el archivo? ¿Qué es fileencoding
entonces?
He actualizado vim y ahora no estoy contento con algunos valores UTF-8 en mi .vimrc
.
Esto me lleva a la pregunta: cuando vim lee .vimrc
, ¿qué codificación supone que tiene el archivo? ¿Qué es fileencoding
entonces?
Respuestas:
Es lo que definas con :scriptencoding
. debería ser la primera línea en su .vimrc
archivo, por ejemplo:
scriptencoding utf-8
set number
set ...
Tenga en cuenta que algunas opciones ( listchars
por ejemplo) solo aceptan valores de ancho único.
Editar: Sí, Vim es raro. encoding
es para el editor en sí, fileencoding
es para el búfer y scriptencoding
es para los scripts de Vim.
scriptencoding
)
Como se insinuó en los archivos de ayuda ( :help scriptencoding
), si no lo usa scriptencoding
, vim no convierte, suponiendo efectivamente que el script está en la codificación de la 'encoding'
opción. Esto es muy frecuente utf-8
, ocasionalmente latin1
. Otras codificaciones son posibles. Generalmente quieres usar
scriptencoding utf-8
cuando su archivo de script contiene caracteres que no son ascii y está codificando en utf-8. Si usa solo caracteres ascii de 7 bits, no es necesario.
'fileencoding'
se aplica al buffer actual, no a los scripts. Al abrir un archivo, vim intenta adivinar la codificación de la opción 'fileencodings'
.
~/,vimrc
cómo usarlascriptencoding
~/,vimrc
cómo usarlascriptencoding