【问题标题】:Compile on vim in external shell在外部 shell 中在 vim 上编译
【发布时间】:2020-12-13 16:54:57
【问题描述】:

我以前在 windows 上使用 vim/gvim,而我用于编译的旧 .vimrc 部分如下所示:

autocmd filetype cpp nnoremap <F5> :w <bar> !g++ -std=c++11 -Wall % -o %:r && %:r.exe <CR>

在 windows 上,当我按下 f5 时,shell (windows cmd) 会打开并执行它。

但是现在我开始在 linux 上使用 vim/gvim,当我按下 f5 时,它会在内置 shell 上运行。有没有办法在外壳上运行?我可以通过输入:! gnome-terminal 打开一个外部shell,但是如何使用编译器命令自动打开一个shell,如g++ main.cpp -o main、javac Main.java && java Main(随便)

找了一阵子解决办法哈哈

我的英语还在进步,欢迎批评!!

【问题讨论】:

  • 试试看shell命令sh

标签: vim compilation gnome-terminal


【解决方案1】:
autocmd filetype cpp nnoremap <F4> :w <bar> exec '!g++ '.shellescape('%').' -o '.shellescape('%:r').' && ./'.shellescape('%:r')<CR>

试试看!

顺便说一句,也许here 你会找到有用的信息:)

【讨论】:

  • 感谢您的回答,但这就是我所拥有的。我要求一种在外部终端中运行的方法,它将在 vim 中运行(顺便说一句,这将在窗口上工作,但在 ubuntu 上不起作用)
  • 哦,对不起,我错理解你了..我的英语不是母语所以..
  • 哦,没问题的朋友,感谢您的帮助
猜你喜欢
  • 2011-09-01
  • 1970-01-01
  • 2015-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-20
  • 1970-01-01
相关资源
最近更新 更多