Last Updated on 2021-06-22 by Clay
一般我們使用 IDE 來撰寫程式的時候,我們經常會使用 IDE 設定好的快捷鍵迅速編譯、執行程式,這是個相當方便的功能。
本篇文章紀錄如何在 VIM 上配置一樣的功能:只要使用快捷鍵,便能將當前編輯的程式碼執行。本文以 Python 舉例。
安裝 VIM 的外掛管理套件 Vundle
已經安裝過的可以直接跳過。
首先,若是 ".vim" 資料不存在的話需要先建立此資料夾,然後再從 Github 上取得 Vundle 項目:
mkdir ~/.vim
mkdir ~/.vim/bundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
至此,Vundle 已經存在於我們的環境當中。
安裝 VIM 套件
然後,使用以下指令編輯 .vimrc 設定檔:
vim ~/.vimrc
然後在設定要安裝的套件:
" Plugins
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tell-k/vim-autopep8'
call vundle#end()
filetype plugin indent on
" Press F10 to execute Python script
map :Autopep8 :w :call RunPython()
function RunPython()
let mp = &makeprg
let ef = &errorformat
let exeFile = expand("%:t")
setlocal makeprg=python3\ -u
set efm=%C\ %.%#,%A\ \ File\ \"%f\"\,\ line\ %l%.%#,%Z%[%^\ ]%\@=%m
silent make %
copen
let &makeprg = mp
let &errorformat = ef
endfunction
上方是需要安裝的套件、下方則是我們定義的 Python 執行函式。
順帶一提, "autopep8" 是一個能夠將 Python 程式碼自動排版為 PEP8 格式的工具,著名的 Python IDE —— PyCharm,也是使用 autopep8 來自動修復排版問題。
當然,我們雖然設定好了我們要的外掛工具,但是我們還沒有安裝。在 VIM 編輯器中使用以下指令:
:PluginInstall
我們會看到我們剛才的列表都陳列在左手邊並一個個被安裝。直到最底下跳出 "Done" 的字樣,即代表安裝成功。
測試快捷鍵
現在,我們來測試一下剛才設定的效果。在我的設定中,我是以 F10 作為我的快捷鍵,這是為了不要跟我習慣使用的 PyCharm 搞混。
當然,你可以自由設定自己想要的快捷鍵。假設我有個以下這樣的程式:
print('Hello World!')
然後,我按下 F10:
我的 VIM 編輯器底下,自動顯示出了執行後的結果。
希望大家都能順利配置自己的 VIM 環境!順帶一提,由於我還是不習慣這樣執行 VIM 的程式,所以後來還是都乖乖存檔退出,使用 "python3" 指令來執行檔案了。
References
- https://linuxhint.com/vim-vundle-tutorial/
- https://github.com/tell-k/vim-autopep8
- https://goyalankit.com/blog/compile-and-run-cpp-program-from-vim
- https://stackoverflow.com/questions/18948491/running-python-code-in-vim