¿Qué características adicionales ofrecen gVim y / o MacVim en comparación con Vim dentro de un emulador de terminal?


23

Estoy aprendiendo Vim viendo screencasts. Y me pregunto, ¿por qué mucha gente usa gVim o MacVim?

Por lo que puedo ver, la versión GUI Vim solo tiene características adicionales que implican el uso del mouse. ¿Pero no es esto en contra de la "filosofía Vim"?

¿Alguien puede explicar qué características adicionales ofrece la versión GUI de Vim en comparación con el Vim basado en terminal?


Gui vim permite más de 256 colores, así como otro formato de texto, por lo que podría ser un empate. Sin embargo, personalmente no puedo ver por qué la gente prefiere gui vim, ya que considero que terminal vim es más conveniente. Pero esa es mi opinión.
EvergreenTree

Respuestas:


27

Algunas características que solo funcionarán con gVim:

  • Soporte de color de 24 bits listo para usar (para obtener la misma cantidad de colores en el terminal vim, debe intentarlo un poco más, vea esto y esto ). Para la cursiva verdadera, lo mismo es cierto (ver esto y esto ). Tenga en cuenta que debe usar una fuente que admita cursiva verdadera.
  • Algunas otras características gráficas más avanzadas, como "líneas onduladas" para la corrección ortográfica, formas de cursor más flexibles, etc. Un terminal solo puede hacer "bloques de caracteres monoespaciados".
  • Habilita la compatibilidad con el mouse , si de lo contrario se deja solo (incluyendo arrastrar y soltar para archivos). Terminal Vim también puede manejar el mouse bastante bien, pero no arrastrar y soltar.
  • Ofrece un sistema de menú agradable y personalizable , donde cada opción tiene el comando Vim correspondiente en la lista.
  • gVim puede ofrecerle barras de desplazamiento que desplazan el búfer de Vim (y no el desplazamiento hacia atrás del Terminal).
  • Puede tener "globos" emergentes (también conocido como "información sobre herramientas").
  • Tiene soporte de fuente integrado .
  • Algunas combinaciones de teclas funcionan de fábrica con gVim como CTRL+ Space, Meta+ e... mientras que requieren más ajustes del terminal en el otro caso.

En segundo lugar, incluso si prefiere usar Vim, la instalación de una versión GUI puede ofrecer más funciones de tiempo de compilación que la versión sin, al menos en algunas distribuciones (como clipboardy clientserversoporte en el sistema basado en Debian en vim-noxvs vim-gnome).

Además, en Windows, una ventana de gVim puede redimensionarse más fácilmente que una ventana de consola de Vim.

Cosas que gVim no hace:

  • gVim no es un emulador de terminal (completo), por lo que iniciar programas externos que usen muchas características de terminal no funcionará muy bien. Por ejemplo, intente usar :!vim, :!mutto :!irssidesde gVim, o presione Ksobre una palabra (que, de forma predeterminada, abre la página de manual de esa palabra). También mira esto .

1
El vim regular también es más conveniente si va a utilizar mucho SSH, ya que se puede colocar bajo tmux o pantalla y no requiere soporte X11 en ninguno de los extremos.
Kevin

en realidad, gvim tiene un terminal incluido desde uno de los últimos parches 8.0. Por lo tanto, puede iniciar un terminal y debería poder ejecutar programas interactivos en él.
Christian Brabandt

1
Los menús son ciertamente mejores y más integrados en GUI vim, pero existen y se pueden usar en la consola vim. Uno debe buscar menu.vimy luego usar set wildmenuy :emenu <Tab>navegar de una manera que se asemeje a ... bueno, menús.
brhfl

@brhfl Yo diría "apenas" utilizable en su lugar.
Muru

¡Wiki de la comunidad @ChristianBrabandt! Adelante
edítelo

4

Solo puedo hablar sobre gVim. Además de las diferencias básicas, descubrí que usar gVim me ayudó mucho al principio a aprender comandos básicos (por ejemplo, una forma de copiar el texto seleccionado en el portapapeles con "+ y) leyendo cada uno de los accesos directos que se muestran en el menú. Puede suena tonto, pero realmente deberías pasar un tiempo recorriendo el menú y no solo hacer clic en un elemento, sino probar el acceso directo que muestra. Opinión personal.


4

Algunos de nosotros estamos atrapados en la tierra de Windows, por lo que las opciones de terminal son menos convenientes.

En el Explorador de Windows, puede hacer clic con el botón derecho en un archivo y abrirlo inmediatamente con gVim. Eso es mucho más fácil y rápido que abrir un terminal (cygwin o lo que sea), navegar al directorio y borrar el archivo.

(En mi PC de trabajo, gVim y MinGW bash cubren la mayoría de mis necesidades de edición)


También funciona para el mundo Linux. Si desea abrir un archivo en vim directamente desde nautilus, gvim está disponible mientras que vim no lo está.
kuldeep.kamboj

@ kuldeep.kamboj Esto es simplemente una cuestión de configurar Nautilis; puedes usar xterm -e vim %o algo así ...
Martin Tournoij

1
Eso es exactamente por qué lo he gViminstalado. Las fuentes de terminal de Windows hacen que sus ojos sangren.
Shahbaz

1

Para agregar algo trivial: cuando uso gvim, la lista de ventanas de mi escritorio muestra un bonito símbolo Vim en lugar de un símbolo Xterm, lo que hace que sea más fácil cambiar al editor si hay muchas xterms abiertas.


2
Puede cambiar el ícono de una ventana con xseticon:-)
Martin Tournoij

1

Un punto crucial para mí que continúa haciéndome usar los versos de MacVim solo el terminal + vi es la velocidad. Tengo todo tipo de complementos vim y sugerencias de lenguaje y verificadores de sintaxis que sorprendentemente atascan el terminal vi muy abajo, mientras que el contenedor compilado de MacVim maneja todo ese azúcar sintético muy bien.


0

Cambiar la forma del cursor según el modo (p. Ej. Normal vs Insertar) funciona muy bien con gVim. Esto debería funcionar cuando se usa vim en un programa de terminal como Konsole, pero nunca lo he visto funcionar.


No suelo usar emuladores de terminal particularmente sofisticados en Linux, pero puedo confirmar que funciona muy bien en mintty / cygwin e iTerm2 en Mac.
brhfl
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.