Puedo abrir un shell usando el comando: shell en Vim, sin embargo, no puedo editar un archivo y al mismo tiempo usar el shell.
¿Hay alguna forma de dividir Vim en muchas ventanas (o pestañas) y tener un shell abierto en una de ellas?
Puedo abrir un shell usando el comando: shell en Vim, sin embargo, no puedo editar un archivo y al mismo tiempo usar el shell.
¿Hay alguna forma de dividir Vim en muchas ventanas (o pestañas) y tener un shell abierto en una de ellas?
Respuestas:
Neovim y Vim 8.2admiten esto de forma nativa a través del :ter[minal]comando.
Consulte terminal-windowlos documentos para obtener más detalles.
vsplit term://bashsi estás usando Neovim.
terminalcomando divide la ventana y proporciona un shell de comando con un color especial en la barra de estado de la ventana. Resbaloso.
Bueno, depende de su sistema operativo, en realidad no lo probé en MS Windows, pero Conque es uno de los mejores complementos que existen.
De hecho, puede ser mejor, pero funciona.
:vspo :sp- divide vim en dos instancias pero no puede usar: shell en solo una de ellas.
¿Por qué no mostrar otra pestaña del terminal, no otra pestaña de vim? Si te gusta la idea, puedes probarla: Ctrl-shift-t.y moverte entre ellos con Ctrl - pageupyCtrl - pagedown
Si solo desea unos pocos comandos de shell, puede crear cualquier comando de shell en vim usando !
Por ejemplo :!./a.out.
vimmagia de ruta de la siguiente manera::!./%
Ctrlsea, supongo que su respuesta asume gnome-terminal o un emulador similar.
Puede usar tmuxo screen(el segundo es capaz de hacer solo divisiones horizontales sin un parche) para dividir su terminal. Pero no conozco la forma de tener una instancia de Vim en ambos paneles.
Si aún no lo ha descubierto, puede usar el increíble complemento de pantalla .
Conque también es excepcional, pero encuentro la pantalla mucho más práctica (no "ensuciará" tu búfer, por ejemplo, y puedes enviar los comandos que realmente quieras después de editarlos en tu búfer)
Supongo que esta es una pregunta bastante antigua, pero ahora en 2017. Tenemos neovim, que es una bifurcación de vim que agrega soporte de terminal.
Por :termlo tanto, invocar abriría una ventana de terminal. La belleza de esta solución en comparación con el uso de tmux (un multiplexor de terminal) es que tendrá los mismos enlaces de ventana que su vimconfiguración. neovim es compatible con vim, por lo que básicamente puede copiar y pegar su .vimrcy simplemente funcionará.
Más ventajas son que puede cambiar al modo normal en el terminal abierto y puede realizar copias y ediciones básicas. También es bastante útil para las confirmaciones de git, supongo, ya que todo lo que hay en su búfer puede usar en autocompletar.
Actualizaré esta respuesta ya que vim también planea lanzar soporte de terminal, probablemente en vim 8.1. Puede seguir el progreso aquí: https://groups.google.com/forum/#!topic/vim_dev/Q9gUWGCeTXM
Una vez que se lanza, creo que esta es una configuración más superior que usar tmux.
No es absolutamente lo que está pidiendo, pero puede que le interese mi complemento vim-notebook, que permite al usuario mantener vivo un proceso en segundo plano y hacer que evalúe parte del documento actual (y escribir la salida en el documento). Está destinado a ser utilizado en documentos de estilo cuaderno que contienen fragmentos de código para ser evaluados.
Es posible que desee abrir un programa de "pantalla", pantalla dividida, abrir shell en uno y vim en otro. Funciona para mi.
Actualmente estoy usando tmux.
Instalación: sudo apt-get install tmux Ejecutarlo: tmux
Ctrl + b seguido de Ctr +%: divide la ventana de su terminal en dos mitades verticales.
Ctrl + "flecha izquierda | flecha derecha": se mueve entre terminales.