我可以在Vim中使用:shell命令打开外壳程序,但是我无法编辑文件,并且同时使用外壳程序。
有没有办法在许多Windows(或选项卡)中拆分Vim,并在其中一个窗口中打开外壳?
我可以在Vim中使用:shell命令打开外壳程序,但是我无法编辑文件,并且同时使用外壳程序。
有没有办法在许多Windows(或选项卡)中拆分Vim,并在其中一个窗口中打开外壳?
Answers:
Neovim和Vim 8.2
通过:ter[minal]
命令。
有关terminal-window
详细信息,请参见文档。
vsplit term://bash
使用Neovim。
terminal
命令将拆分窗口,并在窗口状态栏上使用特殊颜色显示命令外壳。光滑
好吧,这取决于您的操作系统-实际上我没有在MS Windows上进行过测试-但是Conque是目前最好的插件之一。
实际上,它可以更好,但是可以。
:vsp
或:sp
-将vim分成两个实例,但不能仅在其中一个中使用:shell。
为什么不显示终端的另一个标签而不是vim的另一个标签呢?如果您喜欢这个想法,可以尝试一下:Ctrl-shift-t.
并使用Ctrl - pageup
和在它们之间移动Ctrl - pagedown
如果只需要几个shell命令,则可以使用以下命令在vim中创建任何shell命令: !
例如:!./a.out
。
vim
路径魔术::!./%
Ctrl
-我假设您的答案都假设使用gnome-terminal或类似的仿真器。
我猜这是一个相当老的问题,但是现在是2017年。我们有neovim,它是vim的一个分支,增加了终端支持。
因此,调用:term
将打开一个终端窗口。与使用tmux(终端多路复用器)相反,此解决方案的优点在于您将拥有与vim
设置相同的窗口绑定。neovim与vim兼容,因此您基本上可以复制并粘贴您的文件.vimrc
,并且可以正常工作。
更多的优点是您可以在打开的终端上切换到普通模式,并且可以进行基本的复制和编辑。我猜它对git commit也非常有用,因为您缓冲区中的所有内容都可以自动完成。
我将更新此答案,因为vim也计划在vim 8.1中释放终端支持。您可以在此处关注进度:https : //groups.google.com/forum/#!topic/vim_dev/Q9gUWGCeTXM
一旦发布,我相信这是比使用tmux更优越的设置。
并非绝对是您要的内容,但是您的插件vim-notebook可能会让您感兴趣,该插件使用户可以保持后台进程有效,并使其评估当前文档的一部分(并将输出写入文档)。它旨在用于包含要评估的代码段的笔记本式文档。
我目前正在使用tmux。
安装:sudo apt-get install tmux运行它:tmux
按Ctrl + b,然后按Ctr +%:它将终端窗口分为两个垂直部分。
Ctrl +“向左箭头|向右箭头”:在终端之间移动。