¿Hay alguna forma de usar una fuente que no sea monoespacio en vim
o gvim
?
Intenté cambiar la fuente de gVim con:
:set guifont=Dejavu\ Serif\ 12
Pero esto me da algunos resultados bastante feos:
Obtengo los mismos resultados si uso el menú (Editar -> Seleccionar fuente)
:help guifont
dice:
Note that the fonts must be mono-spaced (all characters have the same
width). An exception is GTK 2: all fonts are accepted, but
mono-spaced fonts look best.
¿Entonces creo que los resultados anteriores cuentan como "no se ve mejor"? ¿Se puede mejorar de alguna manera?
También intenté configurar una fuente no monoespacial en mi terminal ( xterm
), pero eso parece tener aproximadamente el mismo efecto:
No me importa usar un emulador de terminal diferente para este por cierto.
Respuestas:
Encontré
mlterm
, lo que apoya esto. Aparte del terminal incorporado de Emacs (término Mx), este es el único terminal que he encontrado que admite esto (he probado unos 15-20 diferentes).Descubrí que
mlterm
funciona mejor que Emacs debido a la configuración de la relación de pantalla, y también evita tener que ejecutar Vim dentro de una sesión de Emacs (ni siquiera estoy seguro de que esté legalmente permitido).Captura de pantalla (se ve fea a menos que la abra a tamaño completo debido a la escala en el navegador):
Sin embargo, requiere un poco de amor de configuración. Después de comenzar, presione Ctrl+ clic central en cualquier lugar, esto abrirá la pantalla de configuración. Establezco estas opciones
En la pestaña Fuente:
La pantalla de configuración del botón derecho parece un poco escasa, también edité mi
~/.mlterm/vaafont
ya que no se actualizó:Y mi
~/.mlterm/main
(estos son los ajustes que configuré anteriormente, más algunas preferencias personales):Hay algunos artefactos, que son de esperar, pero escribir correos electrónicos o publicaciones como esta, ¡parece funcionar bastante bien!
Creé un alias en mi shell para esto:
También creé una pequeña función para eliminar la mayoría del cromo de la interfaz de usuario:
También hay goyo.vim, que es más o menos lo mismo, pero eso no funcionó muy bien para mí (demasiada burla con los márgenes). YMMV sin embargo.
fuente
Definitivamente no es compatible con GUI Vim, y me sorprendería si hubiera más de un puñado de emuladores de terminal que admitan fuentes proporcionales de la manera que espera: rompería muchas de las cosas estándar para las que están los terminales. usado. Como muchas partes de Unix y otros entornos de línea de comandos suponen fuentes monoespaciadas, este tipo de pantalla no se puede usar como un terminal de propósito general, por lo que el desarrollador del terminal tendría que haber realizado un trabajo adicional para un pequeño beneficio.
Sin embargo, existe al menos un emulador de Terminal que se implementa usando tecnologías web ( Ajaxterm ), y como esto usa HTML / CSS para la representación, es posible hacer que use una fuente proporcional usando CSS. CJS Hayward ha hecho exactamente esto, pero requiere el uso de un navegador muy antiguo.
Si tuviera que ejecutar Vim en tal terminal, obtendría lo que está pidiendo; solo prepárate para el loco hijinx cuando uses cualquier característica basada en columnas. (p
j
. ej .k
, modo visual en bloque o la'colorcolumn'
opción)ACTUALIZACIÓN Como el autor de la pregunta original Carpetsmoker señala en un comentario , Emacs tiene un soporte de fuente proporcional adecuado y también incluye un emulador de terminal (
M-x term
), dentro del cual puede ejecutar Vim. A los entusiastas dedicados de fuentes proporcionales también les gustaría mirar el Evil de Emacs para obtener una experiencia similar a Vim dentro de Emacs.fuente
Las fuentes proporcionales son compatibles con Oni , Neovim GUI. Utilice el renderizador "webgl" para obtener mejores resultados.
Ver también https://github.com/onivim/oni/issues/2359
fuente