editar - vim comandos
Cómo ver los caracteres UTF-8 en VIM o Gvim (6)
Trabajo de vez en cuando en páginas web que involucran scripts que no están en inglés, la mayoría de ellas usa utf-8 charset, VIM y Gvim no muestra los caracteres UTF-8 correctamente.
Usando VIM 7.3.46 en Windows 7 de 64 bits, con set guifont=Monaco:h10
en _vimrc
¿Hay alguna manera de arreglar esto?
Actualización: busqué en Google y encontré set guifontwide
actúa como segunda alternativa para los idiomas regionales.
Agregué las siguientes líneas en _vimrc y la mayoría de mis problemas se resolvieron.
set enc=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf8,prc
set guifont=Monaco:h11
set guifontwide=NSimsun:h12
La fuente NSimsun anterior funciona para chino, el problema es que no sé cómo obtuvieron el nombre de la fuente para trabajar con VIM, Courier New
se menciona como Courier_New
NSimsun
no está en ninguna parte en el directorio de fuentes. La fuente que quiero usar es Latha
Pero, no sé cómo usarla en _vimrc File. set guifontwide=latha:h12
o set guifontwide=Latha:h12
no funciona.
Si configuro exitosamente el guifontwide
a latha
, entonces mi problema será resuelto, ¿cómo hacerlo?
¿Este problema se resuelve mientras tanto?
Tuve el problema de que gvim no mostraba todos los caracteres Unicode (sino solo un subconjunto, incluidas las diéresis y los caracteres acentuados), mientras que :set guifont?
estaba vacio; ver mi pregunta Después de leer aquí, establecer el guifont
a un valor razonable lo solucionó para mí. Sin embargo, no necesito caracteres más allá de 2 bytes.
En M $ Windows, gvim no le permite seleccionar fuentes no monoespaciadas. Lamentablemente, Latha es una fuente no monoespaciada.
Hay una forma de hack para que esto suceda: el uso de FontForge (puede descargar el binario de Windows de http://www.geocities.jp/meir000/fontforge/ ) para editar Latha.ttf y marcarlo como una fuente monoespaciado. Haciendo así:
- Load fontforge, selecciona latha.ttf.
- Menú: Elemento -> Información de fuente
- Seleccione "OS / 2" de la lista de la izquierda en el cuadro de diálogo Información de la fuente
- Seleccione la pestaña "Panose"
- Establecer proporción = Monospaciado
- Guarde nueva versión TTF de esta fuente, pruébelo!
¡Buena suerte!
Has probado
:set encoding=utf-8
:set fileencoding=utf-8
?
Intenta volver a cargar el documento usando:
:e! ++enc=utf8
Si eso funciona, quizás deba cambiar la configuración de fileencodings
en su .vimrc.
No pude obtener otras fuentes que instalé para mostrarlas en mi editor Windows GVim, así que simplemente cambié a la Lucida Console
que tiene al menos una mejor compatibilidad con UTF-8. Agregue esto al final de su _vimrc
:
" For making everything utf-8
set enc=utf-8
set guifont=Lucida_Console:h9:cANSI
set guifontwide=Lucida_Console:h12
Ahora veo al menos algunos caracteres UTF-8.
Si los japoneses vienen aquí, por favor agregue las siguientes líneas a su ~/.vimrc
set encoding=utf-8
set fileencodings=iso-2022-jp,euc-jp,sjis,utf-8
set fileformats=unix,dos,mac