共計 5027 個字符,預計需要花費 13 分鐘才能閱讀完成。
丸趣 TV 小編給大家分享一下 Ubuntu 下如何將 Vim 8.2 打造成 Python IDE,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1、安裝 Python
Ubuntu 20.04 LTS 下安裝 Python 3.9。參考鏈接:https://www.linuxmi.com/ubuntu-20-04-python-3-9.html
2、安裝 Vim
Ubuntu 20.04 LTS Desktop 初始安裝自帶了 vi,未帶 vim 需要安裝,已安裝的略過。
Ubuntu 及其衍生版
linuxmi@linuxmi:~/www.linuxmi.com$ sudo add-apt-repository ppa:jonathonf/vim linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt-get update linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install vim
Arch Linux 及其衍生版本
linuxmi@linuxmi:~/www.linuxmi.com$ sudo pacman -S vim linuxmi@linuxmi:~/www.linuxmi.com$ flatpak install flathub org.vim.Vim
3、插件安裝
標簽導航(tagbar 和 ctags)、語法檢測(syntastic)、文件搜索(ctrlp)、目錄樹導航(nerdtree)、狀態欄美化(vim-powerline)、主題風格(solarized)、python 相關(jedi-vim 和 python-mode)、括號匹配高亮(rainbow_parentheses)、可視化縮進(vim-indent-guides)。可謂應有盡有。
還有一個最重要的就是插件管理工具 vundle。
安裝 vundle
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
安裝好了 vundle,需要在~/.vimrc 配置文件中添加 vundle 支持。配置 vim
vim 的配置是在用戶主目錄下的 ~/.vimrc 文件中完成的,如果沒有的話,需要自己新建一下。
編輯 ~/.vimrc 文件,寫入以下內容:
filetype off set rtp+=~/.vim/bundle/vundle/ call vundle#rc() if filereadable(expand( ~/.vimrc.bundles)) source ~/.vimrc.bundles endif
為了防止配置文件太亂,我們可以通過~/.vimrc.bundles 管理我們安裝的插件。
.vimrc.bundles 配置文件
首先創建文件~/.vimrc.bundles,然后添加代碼如下:
if compatible set nocompatible end filetype off set rtp+=~/.vim/bundle/vundle/ call vundle#rc() Let Vundle manage Vundle Bundle gmarik/vundle Define bundles via Github repos 標簽導航 Bundle majutsushi/tagbar Bundle vim-scripts/ctags.vim 靜態代碼分析 Bundle scrooloose/syntastic 文件搜索 Bundle kien/ctrlp.vim 目錄樹導航 Bundle scrooloose/nerdtree 美化狀態欄 Bundle Lokaltog/vim-powerline 主題風格 Bundle altercation/vim-colors-solarized python 自動補全 Bundle davidhalter/jedi-vim Bundle klen/python-mode 括號匹配高亮 Bundle kien/rainbow_parentheses.vim 可視化縮進 Bundle nathanaelkane/vim-indent-guides if filereadable(expand( ~/.vimrc.bundles.local)) source ~/.vimrc.bundles.local endif filetype on
如上述代碼所示,我們通過 Bundle 指定各個插件在 Github 的地址,填寫規則是 用戶名 / 倉庫名。書寫規則有三種,這里使用的是最常見的一種,其它書寫方法這里就不說了。
安裝插件
我們已經指定好了各個插件的路徑,接下里就是安裝各個插件了。在 shell 中輸入 vim,進入命令行模式輸入 BundleInstall。
運行這個命令就開始自行安裝我們之前指定的各個插件了。這個過程需要連網,下載并安裝好各個插件之后會提示 Done!
注意:由于 tagbar 依賴于 ctags,所以我們還需要用指令安裝 ctags:
sudo apt-get install ctags
插件配置
1、基礎配置
已經安裝好了各個插件,接下里就可以直接用了嗎?答案是否定的,我們還需要繼續對自己安裝的插件進行配置。配置這里也很簡單,下面編寫~/.vimrc 配置:
filetype off set rtp+=~/.vim/bundle/vundle/ call vundle#rc() if filereadable(expand( ~/.vimrc.bundles)) source ~/.vimrc.bundles endif
tagbar 標簽導航 nmap Leader tb :TagbarToggle CR let g:tagbar_ctags_bin= /usr/bin/ctags let g:tagbar_width=30 autocmd BufReadPost *.cpp,*.c,*.h,*.hpp,*.cc,*.cxx call tagbar#autoopen() let g:jedi#auto_initialization = 1 主題 solarized let g:solarized_termtrans=1 let g:solarized_contrast= normal let g:solarized_visibility= normal 配色方案 set background=dark set t_Co=256 colorscheme solarized 目錄文件導航 NERD-Tree \nt 打開 nerdree 窗口,在左側欄顯示 nmap leader nt :NERDTree CR let NERDTreeHighlightCursorline=1 let NERDTreeIgnore=[ \.pyc$ , \.pyo$ , \.obj$ , \.o$ , \.so$ , \.egg$ , ^\.git$ , ^\.svn$ , ^\.hg$ ] let g:netrw_home= ~/bak close vim if the only window left open is a NERDTree autocmd bufenter * if (winnr( $) == 1 exists(b:NERDTreeType) b:NERDTreeType == primary ) | q | end ctrlp 文件搜索 打開 ctrlp 搜索 let g:ctrlp_map = leader ff let g:ctrlp_cmd = CtrlP 相當于 mru 功能,show recently opened files map leader fp :CtrlPMRU CR set wildignore+=*/tmp/*,*.so,*.swp,*.zip MacOSX/Linux let g:ctrlp_custom_ignore = { \ dir : \v[\/]\.(git|hg|svn|rvm)$ , \ file : \v\.(exe|so|dll|zip|tar|tar.gz)$ , \ } \ link : SOME_BAD_SYMBOLIC_LINKS , let g:ctrlp_working_path_mode=0 let g:ctrlp_match_window_bottom=1 let g:ctrlp_max_height=15 let g:ctrlp_match_window_reversed=0 let g:ctrlp_mruf_max=500 let g:ctrlp_follow_symlinks=1 vim-powerline 美化狀態 let g:Powerline_symbols = fancy let g:Powerline_symbols = unicode 括號匹配高亮 let g:rbpt_colorpairs = [ \ [ brown , RoyalBlue3], \ [Darkblue , SeaGreen3], \ [darkgray , DarkOrchid3], \ [darkgreen , firebrick3], \ [darkcyan , RoyalBlue3], \ [darkred , SeaGreen3], \ [darkmagenta , DarkOrchid3], \ [brown , firebrick3], \ [gray , RoyalBlue3], \ [black , SeaGreen3], \ [darkmagenta , DarkOrchid3], \ [Darkblue , firebrick3], \ [darkgreen , RoyalBlue3], \ [darkcyan , SeaGreen3], \ [darkred , DarkOrchid3], \ [red , firebrick3], \ ] let g:rbpt_max = 40 let g:rbpt_loadcmd_toggle = 0 可視化縮進 let g:indent_guides_enable_on_vim_startup = 0 默認關閉 let g:indent_guides_guide_size = 1 指定對齊線的尺寸 let g:indent_guides_start_level = 2 從第二層開始可視化顯示縮進
你可以根據自己的喜好設置快捷鍵,leader 是按鍵 \,根據我的配置。在 Vim 的正常模式下:
依次按鍵 \tb,就會調出標簽導航;
依次按鍵 \ff,就會調出文件搜索;
依次按鍵 \nt,就會調出目錄導航。
2、運行配置
這些基礎配置已經完成,但是我想在 Vim 下像在 IDE 中一樣,按一個鍵就運行當前編輯的 Python 文件,并查看運行結果,這可以做到嗎?
如果出現 vim 插件報錯 Error detected while processing /root/.vim/bundle/python-mode/autoload/pymode/lint.vim
那是因為缺少 pylama 模塊,安裝即可如下圖模塊即可
沒問題!
在~/.vimrc 最后一行追擊代碼如下:
運行文件 map F5 :w cr :r!python3 % cr
上述代碼的意思就是,在 Vim 的正常模式下,按 F5 就會保存文件并使用 Python3 運行當前文件,并將結果輸出到當前界面。
注意,:!python3 表示運行系統命令 Python3,如果你沒有安裝 Python2 和 Python3 共存,此處只寫 python 即可。
這樣我們就可以邊編輯邊查看運行結果了,見本文最上面截圖。
運行完之后,依然可以在 Vim 的正常模式下按 u,撤回這個輸出操作,這樣輸出結果就撤回了,我們就可以繼續編寫自己的代碼了。
以上是“Ubuntu 下如何將 Vim 8.2 打造成 Python IDE”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!