¿Alguien tiene una solución elegante para que MacVim o gvim se extiendan a través de múltiples monitores (resolución potencialmente diferente)? Tener 2 sesiones no funciona bien debido a búferes separados y archivos de intercambio.
Pensarías que podrías tener 2 ventanas gui que compartan los mismos búferes, pero no puedo encontrar nada que funcione.
Respuestas:
Expanda la
gvim
ventana para cubrir ambas pantallas y úsela CTRL-W vpara dividir la ventana de edición verticalmente.Ver
:help CTRL-W
para más comandos de ventana.fuente
También uso a menudo monitores múltiples, así que hice una solución simple para usar hasta que vim implemente esta función. Utilizando un script lua llamado gitv, puedo abrir un archivo en varias instancias de GVIM al mismo tiempo. Básicamente, cuando hay dos instancias de GVIM llamadas GVIM1 y GVIM2, lo que hice fue simplemente asegurarme de que solo un archivo sea editable a la vez, y todos los demás son lectores. (Todo se hace automáticamente sin preguntar).
Flujo de trabajo: actualmente, gitv está diseñado para repositorios git, por lo que solo se puede usar para esos archivos en un repositorio git. Puede cambiar fácilmente este comportamiento predeterminado modificando la función lsFiles ().
Para abrir primero a.txt en GVIM1, use
$ gitv gvimr GVIM1 a.txt
Esto abrirá una ventana de gvim si no hay una. Luego, para abrir el mismo a.txt en otra instancia de GVIM2, use
$ gitv gvimr GVIM2 a.txt
(o puede hacer un alias como $ gvim2 a.txt)Entonces gitv hace internamente lo siguiente:
Si desea editar a.txt en el monitor 1 en lugar del monitor 2, haga esto para cambiar el búfer activo: $ gitv gvimr GVIM1 a.txt (o gvim1 a.txt) Esto se puede hacer más fácilmente dentro de gvim1 usando ctrl + g + a.txt
(Esto establecerá automáticamente el mismo búfer abierto en otras instancias de gvim "solo lectura" para evitar la corrupción de datos).
gitv se puede descargar aquí: http://code.google.com/p/gitv/ Se probó solo en linux gvim, pero se podía portar fácilmente a MacVIM.
fuente