根據系統將下面代碼復制到vim配置文件vimrc中,即可在vim中一鍵【F5】運行.py文件。
Windows下的gvim
"一鍵運行代碼
function CheckPythonSyntax()
let mp = &makeprg
let ef = &errorformat
let exeFile = expand("%:t")
setlocal makeprg=python\ -u
set efm=%C\ %.%#,%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,%Z%[%^\ ]%\\@=%m
silent make %
copen
" set efm 是設置quickfix的errorformat,以便vim識別
" makeprg 是vim內置的編譯命令,可以通過更改來實現編譯對應類型文件。具體可參考vim官方說明文件。
" copen是打開quickfix,n用來設置quichfix窗口大小,如 cope5。在錯誤描述上回車,可以直接跳轉到錯誤行。
let &makeprg = mp
let &errorformat = ef
endfunction
"一個是普通模式下,一個是插入模式下
au filetype python map <f5> :w <cr> :call CheckPythonSyntax() <cr>
au filetype python imap <f5> <esc> :w <cr> :call CheckPythonSyntax() <cr></cr></cr></esc></f5></cr></cr></f5>
Linux下的vim
"一鍵運行代碼
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "!time ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "!time ./%<"
elseif &filetype == 'java'
exec "!javac %"
exec "!time java %<"
elseif &filetype == 'sh'
:!time bash %
elseif &filetype == 'python'
exec "!time python %"
elseif &filetype == 'html'
exec "!firefox % &"
elseif &filetype == 'go'
" exec "!go build %<"
exec "!time go run %"
elseif &filetype == 'mkd'
exec "!~/.vim/markdown.pl % > %.html &"
exec "!firefox %.html &"
endif
endfunc
