Normalmente configuro una screen
sesión para cada proyecto. Vim está en la ventana 0, y uso la ventana 1 para una sesión de shell. Si estoy codificando en un idioma que tiene un REPL decente, generalmente lo ejecuto en la ventana 2. Por supuesto, no necesita screen
hacer esto; puede hacerlo con diferentes ventanas de terminal o con pestañas en un terminal multitab. Creo screen
que es más estable que otras alternativas: si su aplicación de terminal se bloquea, puede iniciar otra terminal y volver a conectarse a su screen
sesión aún en ejecución . screen
también es muy rápido para navegar una vez que lo aprende (al igual que vim).
Principalmente termino usando la sesión de shell para actividades complicadas de control de versiones como rebase o fusión: se pueden hacer cosas más simples desde la línea de comando de vim (por ejemplo, la :!git commit % -m 'Added info about
pantalla .'
) o usando el complemento fugitivo . Encuentro los fugitivos :Gmove
(cambiar el nombre del búfer actual tanto en vim como en el índice git) e :Gdiff
(invocar vimdiff en el búfer actual con un punto anterior en su historia) particularmente útiles. También puede hacer cosas como crear un mensaje de confirmación en un búfer de memoria virtual, copiar texto de varias partes de su código y luego confirmar con:%!git commit -F /dev/stdin
También usaré la sesión de shell para pruebas funcionales / de integración si eso es aplicable a lo que sea que esté trabajando, por ejemplo, si estoy escribiendo una utilidad de línea de comandos.
La funcionalidad de corrección rápida de Vim es útil para la depuración, aunque parece que se requiere un complemento diferente para cada idioma en el que desee trabajar. También parecen usar una variedad de técnicas de invocación, mapeo a teclas de función o secuencias de teclas que comienzan con \
o ,
, o a comandos personalizados, o al ser invocado automáticamente cuando se guarda un búfer. Hasta ahora no me he molestado en averiguar esto, y solo leo los resultados de la prueba unitaria o de la pelusa en un búfer de memoria virtual, por ejemplo :r !python -m doctest whatever.py
. Modifique el código, vuelva al búfer de memoria u
virtual, deshaga, luego presione :r
y la flecha hacia arriba (la mayoría de las veces) para recuperar ese comando. Pero puede valer la pena buscar un complemento para esto, dependiendo del idioma en el que trabaje.
Para lenguajes compilados populares como C, java, etc., :make
se realizará una compilación y el soporte para la lista de soluciones rápidas está bien establecido. Entonces puede hacer :copen
para mostrar el búfer de corrección rápida. Mostrará una lista de errores, uno por línea; golpear Enteren una línea saltará su otra ventana a ese punto en ese archivo.
Si está trabajando con varios proyectos a la vez, puede hacer los :lmake
arreglos para que una lista de errores se almacene en la lista de ubicaciones : es como la lista de soluciones rápidas, pero está asociada con una sola ventana en lugar de ser un singleton dentro de su vim instancia. :lopen
abrirá una lista de ubicaciones para la ventana actual.