Vim as Python IDE on windows

來源:互聯網
上載者:User

下載安裝Python。

從Vim的網站下載vim,建議下Self-installing executable的版本。

 

編輯vim的設定檔_vimrc

拷貝vimrc_example裡面的東東到_vimrc

去掉_vimrc裡面的source $VIMRUNTIME/vimrc_example.vim

 

設定中文支援

" 設定編碼自動識別, 中文引號顯示  
"set fileencodings=utf-8,cp936,big5,euc-jp,euc-kr,latin1,ucs-bom
set fileencodings=utf-8,gbk
set ambiwidth=double

 

設定ColorScheme,我選擇的是desert,你可以在GVim的Edit-->Color Scheme看到其他的Color Scheme。

"ColorScheme
colorscheme desert

 

設定tab插入空格,縮排,刪除鍵刪除縮排,頁面文字寬度

" 允許退格鍵刪除和tab操作  
set smartindent
set smarttab
set expandtab
set tabstop=4
set softtabstop=4
set shiftwidth=4
set backspace=2
set textwidth=79

 

啟用滑鼠,啟用行號

" 啟用滑鼠  
set mouse=a

" 啟用行號
set nu

 

完成以上步驟後用GVim開啟Python代碼的樣子。

 

啟用omni-completion的代碼補全功能 ,這個系列的組件是隨著Vim一起安裝好的,我順便把Ruby等其他語言的支援也加上了。現在按Ctrl-X,Ctrl-O可以補全代碼

如下修改_vimrc

代碼

"自動補全  
filetype plugin indent on
set completeopt=longest,menu
"自動補全命令時候使用菜單式匹配列表
set wildmenu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet

omni-completion實現代碼補全的效果

 

omni-completion可以實現部分的代碼補全功能,但是不是很全,所以我們啟用pydiction,更豐富的的代碼補全功能,按tab補全代碼。

下載pydiction,解壓後有4個檔案,拷貝python_pydiction.vim和complete-dict到ftplugin目錄,修改_vimrc

"Pydiction
let g:pydiction_location = 'C:\Program Files\Vim\vim73\ftplugin\complete-dict

現在按Tab鍵可以實現代碼補全,

 

下面我們需要分析原始碼的工具Ctags,從網站下載For Windows版本的Ctags,解壓縮後拷貝ctags.exe到某處,確保windows的path包含這個目錄。

開啟原始碼檔案,點擊GVim上的buildtags按鈕。或者在控制台中到你放源碼的目錄手動執行ctags -R命令。我們可以發現在目前的目錄下產生了tags檔案。這個就是我們需要的。我們可以在方法上按Crtl+],Vim會幫你找到方法定義的地方。

 

下面我們需要使用這個檔案查看原始碼。我們需要用到另外一個外掛程式TagList,配合Ctags可以高效的查看原始碼。下載TagList解壓縮後是doc和plugin和兩個目錄,把這兩個目錄拷貝到你的Vim安裝目錄(我的路徑是C:\Program Files\Vim\vim73),覆蓋原目錄(不用擔心這樣覆蓋不會影響已存在的東西),修改_vimrc如下

"TagList
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1

我們需要制定tags目錄給Vim,在Vim中執行命令:set tags=你的代碼所在的路徑\tags,如果你一直使用同一個代碼路徑可以把他寫死在_vimrc中,例如My Code在

D:\VimTest配置如下

 

"tags
set tags=D:\VimTest\tags

 

然後在Vim中執行:Tlist就可以開啟TagList的視窗了,如左邊的視窗,試著在方法上點擊,可以發現右側的游標會自動跳到你點中的方法。

 

下面我們添加的是檔案瀏覽的功能,下載WinManager ,加壓縮後有三個檔案,放到plugin目錄裡。配置如下可以同時顯示FileExplorer和TagList

"WinManager
let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle<cr>

下面我們輸入wm命令就可以看到了,左上是FileExplorer,左下是TagList

 

啟用Cscope ,更進階的分析原始碼,支援反向尋找

下載windows下的可用版本http://sourceforge.net/projects/mslk/,解壓縮後拷貝所有檔案到windows的path指向到的某個目錄。

下載cscope_maps.vim,放到Vim的plugin目錄。

修改_vimrc,讓尋找結果顯示在quickfix視窗而不是主視窗。

"cscope show in quickfix
set cscopequickfix=s-,c-,d-,i-,t-,e-

好了,配置完成,下面我們看看怎麼用。在vim中輸入:help if_cscop.txt可以看到關於Cscope的協助。

看完文檔,我們可以在vim中輸入命令:cs find c foo用來尋找foo方法在哪裡被調用過。

cscope_maps.vim映射了一些鍵盤的快速鍵,我們可以快捷的使用尋找功能。

我比較喜歡使用Ctrl+\,讓游標停留在你想尋找的內容,然後輸入Ctrl+\後迅速的輸入c,就可以在quickfix表單看到尋找的結果。如果結果有多條你可以輸入命令:cw展開quickfix表單。(這個快捷操作第一次使用可能會有些彆扭,多試幾遍就好了)

下面是我的一個尋找結果

 

啟用MiniBufExplorer,管理vim的buffer(緩衝區),快速的在多個同時編輯的檔案間切換。

編輯_vimrc如下

 

"MiniBufExplorer
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1

 

 

配置好後開啟多個檔案MiniBufExplorer視窗就出現了。點擊上面的檔案名稱可以在不同的檔案間快速切換。

 

啟用Grep,在工程中尋找 

Grep是linux中命令,如果你不熟悉可以看Grep的文檔。

下載安裝Grep for windows

下載Vim的Grep外掛程式,grep.vim放在plugin目錄

配置_vimrc,設定F3為快速鍵

"Grep
nnoremap <silent> <F3> :Grep<CR>

把游標放在你需要搜尋的內容,按下F3,可以看到Search for pattern: xxx,按下斷行符號,出現Search in files,輸入*.py,只尋找python的原始碼檔案,按下斷行符號就可以看到搜尋的結果了。見

 

啟用VimPdb,可以調試Python程式。

下載VimPdb,解壓後拷貝VimPdb.py,VimPdb.vim到plugin即可。

用vim代開python代碼檔案,按F5運行,然後按F2設定斷點,在運行到斷點後可以用按F12可以查看Stack Trace,F3查看變數和參數值。

更進階的使用可以查看文檔。

 

啟用ropevim ,重構Python程式

下載rope,ropemode,ropevim,分別解壓縮,開啟控制台,cd到解壓縮目錄,執行python setup.py install安裝。

然後拷貝ropevim.vim檔案到plugin目錄。這樣就安裝好了。我們試試重構一個類名,游標放在類名上,按Ctrl-c 然後連按兩下r。

可以看到quickfix表單要求你輸入New name:,輸入新的名稱斷行符號,再斷行符號,重構就完成了。如

 

Python代碼檢查

在Vim的ftplugin目錄下建立一個python目錄。

下載pyflakes,解壓縮後把pyflakes.vim檔案和pyflakes目錄拷貝套ftplugin\python目錄中。

開啟一個有問題的python原始碼檔案,執行命令:cc,即可進行代碼檢查,如中找到了兩處錯誤。

 

好了終於寫完了,真累,最後放個大圖,顯示下整體效果。

 

參考文檔:

手把手教你把Vim改裝成一個IDE編程環境(圖文)

VIM as Python IDE

參考眾多,不一一列舉了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.