¿Es posible hacer que gVim ejecute comandos externos en cygwin de forma predeterminada?

¿Es posible hacer que gVim ejecute comandos externos en cygwin de forma predeterminada?

¿Es posible hacer que gVim (en Windows) ejecute comandos externos en cygwin de forma predeterminada? es decir, !ps abrirá una terminal cygwin que muestra los procesos en ejecución actualmente?

Respuesta1

Primero necesitas decirle a Vim que ejecute elintentoprograma en lugar decmd.exe, y bash debe ejecutarse como un shell de inicio de sesión para que lea los scripts de perfil/inicio de sesión y configure el entorno (RUTA, etc.) correctamente.

También necesita cambiar la configuración que introduce opciones de línea de comandos en el shell:

:set shell=C:\Cygwin\bin\bash.exe\ -login
:set shellcmdflag=-c

Si sus comandos cygwin requieren argumentos, probablemente también debería

:set shellquote=\"

para garantizar que todo el comando esté entre comillas correctamente; de ​​lo contrario, el shell solo obtendrá la primera palabra e ignorará el resto.

información relacionada