vimrc compilation vim

compilation - vimrc - Correr: hacer desde gVim en el fondo



vim python (7)

Eche un vistazo a mi complemento AsyncCommand . Simplemente envuelve la sintaxis vim requerida para ejecutar algo y cargarlo con --remote. Cargué AsyncCommand 2.0 que incluye un comando AsyncMake .

Agregue el script a su .vim/plugin y puede compilarlo con :AsyncMake o :AsyncMake target . Los errores se abrirán en su quickfix una vez que la marca finalice.

Respondiendo para comentar sobre un código más legible:

Para ver los resultados de compilación en Windows, si tiene cygwin / unxutils / algo con tail en su ruta, en asynccommand.vim, cambie

call <SID>Async_Impl(tool_cmd, vim_cmd)

a

call <SID>Async_Impl(tool_cmd, vim_cmd) call <SID>Async_Impl("tail -f ". temp_file, "")

Eso debería cambiar todos los comandos Async para abrir una segunda ventana de comando con la salida.

Uso gVim en Windows para editar mi código (principalmente C ++). Yo uso: make in gVim para compilar el proyecto, pero esta es una operación de bloqueo, que me impide usar gVim hasta que se complete la compilación. ¿Cómo puedo hacer: realizar de forma asíncrona y aún obtener los beneficios de volver a leer los errores en Vim y saltar a los errores en el código fuente? Puntos de bonificación si puedo ver el proceso de creación en tiempo real. En este momento the: make redirige la salida a un archivo, por lo tanto, no puedo ver el progreso de make.



Intenta usar

:!start make

(más información sobre ": help! start") - de esa forma vim no tiene que esperar a que el proceso comience a finalizar; puede continuar con su edición).


Lo que hago es

:!gvim -c ''MyMake''

(donde MyMake es el comando personalizado que puede cambiar a apropiado dir, make y copen 20.)

y estoy haciendo mi trabajo mientras build va en la otra ventana.

Otra opción:
Puede redirigir el progreso a algún archivo desde el shell o dentro de vim (:! Make &). Y luego al usar

:cfile make_result_file :cw or :copen 20

Logre el mismo resultado que utilizaría: hacer


No podrá ver el progreso de make (dentro de Vim) a menos que instale una versión muy reciente de Vim (v7.4 y muchos parches, o simplemente Vim 8). Ahora hay algunos complementos que se han aprovechado de eso. My BuildToolsWrapper es uno de ellos. Lo he probado con éxito en Linux y en Windows.

Antes de eso necesitábamos otros trucos. Recuerdo el plugin de Marc Weber que fue capaz de emular la compilación de fondo en Windows. Hubo algunos otros. Dejo que otros los incluyan.


Utilizaría los métodos incorporados de su sistema operativo para ejecutar tareas en segundo plano.

En Windows, intenta escribir

:!start make

En linux / mac os x, prueba

:!make > /dev/null 2>&1 &