当我正在使用时,假设有4个文件,所有文件都在标签页(VIM)中打开。我想保存更改并编译它而不必关闭选项卡,即我想在新选项卡中打开一个终端以及现有的4?
我应该如何在VIM中执行此操作?
答案 0 :(得分:11)
:tab ter
应该在新标签页中打开终端 ,而不要像:ter
那样在新窗口中打开终端。您也可以使用更长的等效:tab terminal
形式。
对用户wolloda in this Reddit post的信用。
有关:help :terminal
和:help :tab
的更多信息。
答案 1 :(得分:2)
我建议您查看tmux或screen。我自己使用tmux,并且在终端和vim之间移动vim-tmux-navigator非常容易。
答案 2 :(得分:2)
使用:make
:make
将执行'makeprg'
。默认为make
,这是C项目的优秀作品:make
后,quickfix列表将包含任何错误。:compiler
命令设置编译器。:make foo-command
%
表示。例如:make %
:cnext
和:cprev
在错误之间移动。:copen
在窗口中打开quickfix列表(:cclose
关闭):cwindow
仅在出现错误时打开quickfix列表窗口:cnext
和朋友使用更好的映射。我建议Tim Pope的unimpaired插件<c-z>
暂停vim并运行您的构建系统。 (缺点:在quickfix列表上松散):!
进行编译。 (与暂停相同的缺点)例如:!make
:make
如果您刚刚开始,我建议您学习如何使用:make
和quickfix列表。有一个很好的Vimcast插曲介绍了quickfix列表:Search multiple files with :vimgrep。此外,Syntastic是快速启动和运行短跑的好方法。
Vim的标签与大多数文本编辑器标签不同。它们更像是一组窗口/分裂的视口。此外,Vim以缓冲区为中心,而不像大多数编辑器那样以标签为中心。因此,如果没有标签,使用快速修复列表等功能通常会更容易(如果必须使用标签,请参阅:h 'switchbuf
)。 Vim的选项卡经常妨碍使用拆分,因为有更好的窗口和缓冲区导航命令可用。我个人有很多文件打开(有时100多个)使用没有标签,平均使用1-2分裂没有任何问题。结论:了解use buffers effectively。
如需更多帮助,请参阅以下内容:
:h :make
:h 'makeprg
:h quickfix
:h :cnext
:h :cope
答案 3 :(得分:2)
在2019年,vim现在是终端模式。
:help terminal
例如,您可以像这样使用它。
# go to terminal-job mode
:terminal
# go to terminal-normal mode
ctrl-w N
# go back to terminal-job mode
i
答案 4 :(得分:0)
我特别想找到这样的东西。
打开标签中的所有文件。然后按ctrl z
切换到终端模式,播放您想要的任何内容,然后在终端输入fg
返回标签模式。