如何在VIM的新标签页中打开终端?

时间:2014-10-16 18:43:29

标签: vim

当我正在使用时,假设有4个文件,所有文件都在标签页(VIM)中打开。我想保存更改并编译它而不必关闭选项卡,即我想在新选项卡中打开一个终端以及现有的4?

我应该如何在VIM中执行此操作?

5 个答案:

答案 0 :(得分:11)

:tab ter

应该在新标签页中打开终端 ,而不要像:ter那样在新窗口中打开终端。您也可以使用更长的等效:tab terminal形式。

对用户wolloda in this Reddit post的信用。

有关:help :terminal:help :tab的更多信息。

答案 1 :(得分:2)

我建议您查看tmuxscreen。我自己使用tmux,并且在终端和vim之间移动vim-tmux-navigator非常容易。

答案 2 :(得分:2)

使用:make

这样做更像vim

:使

  • :make将执行'makeprg'。默认为make,这是C项目的优秀作品
  • 运行:make后,quickfix列表将包含任何错误。
  • 通过:compiler命令设置编译器。
  • 可以像:make foo-command
  • 那样传递额外参数
  • 当前文件名可由%表示。例如:make %

quickfix list

  • 使用:cnext:cprev在错误之间移动。
  • :copen在窗口中打开quickfix列表(:cclose关闭)
  • :cwindow仅在出现错误时打开quickfix列表窗口
  • 可能希望为:cnext和朋友使用更好的映射。我建议Tim Pope的unimpaired插件

替代品和插件

  • 只需使用<c-z>暂停vim并运行您的构建系统。 (缺点:在quickfix列表上松散)
  • 使用:!进行编译。 (与暂停相同的缺点)例如:!make
  • Syntastic是一个语法检查系统,用于检查保存
  • 上的文件
  • Dispatch可用于在后台运行。非常适合测试套件
  • 正如@brettanomyces所提到的,您可能需要考虑tmuxscreen等终端多路复用器。
  • SingleComplile尝试使用: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返回标签模式。