.vimrc配置文件 + gvim 运行 gnome-terminal 完成后等待
if has("gui_running") let g:isGUI=1 else let g:isGUI=0 endif set clipboard=unnamed syntax on set autoindent "set smartindent set cindent set tabstop=4 set softtabstop=4 set shiftwidth=4 set expandtab set showmatch set ruler set nu colorscheme desert set guifont=DejaVu\ Sans\ Mono\ 14 " < F5> 编译C map <f5> :call CompileGcc()<cr> func! CompileGcc() exec "w" exec "!gcc % -o %< -Wall" endfunc "< F5> 编译C++ map <f5> :call CompileGpp()<cr> func! CompileGpp() exec "w" exec "!g++ % -o %< -Wall" endfunc "< F6> 运行C/C++ map <f6> :call RunGccGpp()<cr> func! RunGccGpp() if g:isGUI exec "!gnome-terminal -x bash -c './%<;echo '任意键返回.';read'" redraw! else exec "!./%<" endif endfunc "< F9> 编译运行C map <f9> :call ComplieRunGcc()<cr> func! ComplieRunGcc() exec "w" exec "!gcc % -o %< -Wall" if g:isGUI exec "!gnome-terminal -x bash -c './%<;echo '任意键返回.';read'" redraw! else exec "!./%<" endif endfunc "< F9> 编译运行C++ map <f9> :call ComplieRunGpp()<cr> func! ComplieRunGpp() exec "w" exec "!g++ % -o %< -Wall" if g:isGUI exec "!gnome-terminal -x bash -c './%<;echo '任意键返回.';read'" redraw! else exec "!./%<" endif endfunc
配置文件
gvim运行时 每次都是运行完直接退出 结果看不到 很不爽
而双击cpp又不能默认用vim打开
所以网上找到了这个帖子
http://jakfruit.blog.163.com/blog/static/173859395201101183532283/
Linux下如何保持gnome-terminal窗口执行命令后停留而不立刻关闭(gnome-terminal -x)
为了让和我有同样问题的人也能找到这个问题的解决办法,我特意将标题弄得很长。
解决方法如下:
username@Ubuntuz:~$ gnome-terminal -x bash -c "echo "OK now"; read" |
其中bash -c <string>即运行后面的字串符代表的命令,而分号(;)有执依次执行多个命令的作用,执行read则等待用户按下回车后使窗口关闭。
利用gnome-terminal -x 运行 bash -c
bash -c可以一下传入很多命令 所以就可以read等待用户输入
好机智啊!