我可以在Vim中使用:shell命令打开shell,但是我无法编辑文件并同时使用shell.
有没有办法在许多Windows(或标签)中拆分Vim,并在其中一个中打开一个shell?
pra*_*ter 54
最近,但作为通过谷歌到达这里的人的一个有用的暗示.
Neovim和Vim 8现在通过:ter[minal]命令原生支持.
vla*_*adv 18
:vsp或:sp- 将vim拆分为两个实例,但不能使用:shell中只有一个.
为什么不显示终端的另一个选项卡而不是vim的另一个选项卡.如果你喜欢这个主意,你可以尝试:Ctrl-shift-t.和它们之间有移动Ctrl - pageup和Ctrl - pagedown
如果你只想要几个shell命令,你可以在vim中使用任何shell命令 !
例如:!./a.out.
您可以使用tmux或screen(第二个只能进行水平分割,没有补丁)来拆分终端.但我不知道在两个窗格中都有一个Vim实例的方法.
我想这是一个相当古老的问题,但现在在2017年.我们有neovim,它是vim的一个分支,增加了终端支持.
所以调用:term会打开一个终端窗口.与使用tmux(终端多路复用器)相比,此解决方案的优点在于,您将拥有与vim设置相同的窗口绑定.neovim与vim兼容,所以你基本上可以复制和粘贴你的.vimrc,它只会工作.
更多优点是您可以在打开的终端上切换到普通模式,您可以进行基本的复制和编辑.它也非常适用于git提交,因为缓冲区中的所有内容都可以用于自动完成.
我将更新这个答案,因为vim还计划发布终端支持,可能是在vim 8.1中.您可以按照以下步骤操作:https: //groups.google.com/forum/#!topic/vim_dev/Q9gUWGCeTXM
一旦它发布,我相信这是一个比使用tmux更优越的设置.