在linux系统利用vim写程序中如何像windows系统下vs一样一键编译运行代码呢
在 .vimrc文件中添加如下代码
map后尖括号为运行键由于我主要编写c++程序,且我的目录结构为:
原代码主要是针对单一程序所使用,所以我针对c++那句进行了改编,
可以根据自己的程序目录结构结合下面的目录符号表示方法改写适合自己的运行函数
map <F4> :call CompileRunGcc()<CR> |~
304 func! CompileRunGcc() |~
305 exec "w" |~
306 if &filetype == 'c' |~
307 exec "!g++ % -o %<" |~
308 exec "!time ./%<" |~
309 elseif &filetype == 'cpp' |~
310 exec "!g++ %:p:h/* -std=c++11 -o %< -I%:p:h/../include/" |~
311 exec "!time ./%<" |~
312 elseif &filetype == 'java' |~
313 exec "!javac %" |~
314 exec "!time java %<" |~
315 elseif &filetype == 'sh' |~
316 :!time bash % |~
317 elseif &filetype == 'python' |~
318 exec "!time python2.7 %" |~
319 elseif &filetype == 'html' |~
320 exec "!firefox % &" |~
321 elseif &filetype == 'go' |~
322 " exec "!go build %<" |~
323 exec "!time go run %" |~
324 elseif &filetype == 'mkd' |~
325 exec "!~/.vim/markdown.pl % > %.html &" |~
326 exec "!firefox %.html &" |~
327 endif |~
328 endfunc
其中关于文件名描述:
编辑 vi tmp\file.java
(D:\cnscnprogrames\Vim\vim63\tmp\file.java)
符号 | 值 |
---|---|
% | tmp\file.java |
%:p | D:\cnscnprogrames\Vim\vim63\tmp\file.java |
%:h | tmp |
%:t | file.java |
%:e | java |
%:t:r | file |
%:r | tmp\file |