天天看點

應用Python的VIM設定

轉載:http://chowroc.blogspot.com/2008/06/python-vim.html 

Python是我最喜歡的程式設計語言,而vim也是我最常用的編輯器,是以更好的配置vim來編輯Python源程式是很有必要的。下面談談偶學來的一點配置技巧。以下的大部配置設定置都是通過修改_vimrc檔案來實作的,在Windows下它存在于vim的安裝目錄。

1、快捷調用使用的環境變量

   我習慣于把vim的可執行檔案路徑添加到PATH環境變量,這樣平時再控制台下程式設計的時候可以很友善的啟動vim。另外,vim使用的檔案名還是略微長 了一點。是以我一般将gvim.exe複制後改名為gi.exe。将vim.exe複制後改名為vi.exe。這樣直接在控制台下執行gi和vi就可以分 别啟動vim的GUI版本和Console版本了。

2、在目前路徑啟動控制台

  很多時候需要在控制台下調試程式需要在目前路徑啟動一個cmd視窗,而有些路徑相當的深或者含有大量中文字元的路徑讓我們很惱火。是以可以寫如下一個簡單的批處理檔案來在目前檔案夾下啟動cmd視窗。

@echo off

cmd .

  儲存為cmdhere.bat。這樣将cmdhere.bat複制到想要的檔案夾,直接輕按兩下這個批處理檔案就可以打開想要的cmd視窗了,而且目前路徑也是所在檔案夾的路徑,非常的友善。

3、關閉備份

  安裝後的vim自動是具備備份功能的,一旦一個檔案被修改就會生成~filename的備份檔案。盡管對發生錯誤修改時的恢複有用,但是偶還是很不爽。是以關掉它才比較符合偶的習慣。

  在_vimrc檔案末尾添加

set nobackup

  即可。

4、自動開啟行号

  對程式設計的人來說行号實在是太重要的,因為很多時候調試中的錯誤定位就是需要行号的。在vim下直接輸入:set nu可以開啟行号功能,但是對于習慣于每次都開啟行号功能的人來說,還是自動一些為好。編輯_vimrc檔案,在末尾添加

set nu

  即可。

5、運作Python腳本的鍵盤映射

  可以在vim下按下一個快捷鍵來直接運作目前的Python腳本。如下的設定是使用F12鍵,且環境變量中已經添加了python.exe的情況。具體習慣和路徑可以自己修改。這一行添加到_vimrc檔案中。

map :!python.exe %

  這樣就可以編輯Python腳本時,随時按下F12,再按下Enter鍵來執行目前腳本。這裡的執行時還有一個很貼心的功能,就是對于控制台腳本,執行後并不是直接退出,而是請求按下任意鍵後才退出。

6、使用ctags功能

  這個功能太強大了,隻能這麼說了,具體還有什麼貼心功能可以自己探索。先講講安裝。去sf.net下載下傳一個ctags的Windows版本。注意,最新版本可能沒有for win32版本的,是以需要向上推一個版本找找看。

下載下傳後将其中解壓出的ctags.exe檔案放入vim的檔案夾,當然,前提是vim的執行檔案路徑已經添加到PATH變量了。這時,按下gvim工具菜單的[建立],(by gashero)或者在普通模式輸入

:!ctags -R

  這樣可以在目前路徑下建立一個tags檔案,然後就可以在vim中使用跳轉功能了。其中的-R選項是遞歸搜尋子目錄下的相關符号。所謂跳轉就是可以随時轉到自己想要的函數、類型、結構體、類等等的定義處。比如光标處于任意位置時可以普通模式下輸入

:ta func_name

  就可以直接将光标定位到func_name函數處。當然,其他的命名也可以使用這種方法進行快速定位。另外就是可以在光标指向一個函數名時按下Ctrl+],馬上跳轉到這個函數的定義。在跳轉到定義位置之後,可以按下Ctrl+o快速傳回原來的編輯位置。

  需要明确以下ctags和tags的差別。ctags是一個程式用于生成tags檔案。tags檔案是目前目錄下所有源檔案的标簽連結檔案。在一個沒有ctags的vim中隻是無法生成新的tags檔案,但是已有的tags檔案仍然可以使用。

  如果tags檔案不再目前目錄下則用

:set tags=filename

  來指定。

7、開啟代碼折疊

   下載下傳python_fold插件,解壓後是python_fold.vim檔案,放入plugin目錄下。即可實作 Python代碼的折疊支援。再次打開Python腳本時會發現所有的代碼已經折疊了,其中還現了折疊部分擁有的行數。在折疊的行按下zo可以打開折疊, 按下zc會折疊上代碼。(by gashero)

  使用了代碼折疊以後是否感覺到了vim已經成為了一種相當現代化的編輯器了。呵呵,後面還有精彩。

8、開啟taglist功能

   taglist功能是在vim視窗左側開啟一個清單,提供ctags生成的tags檔案中的所有符号。此時在 taglist視窗中找到需要跳轉到的符号,定位光标,按下回車,即可将光标定位到右側視窗的相關代碼位置。使用十分的友善。當然要確定tags檔案已經 存在的情況下。另外,對于兩個視窗之間的切換,我是習慣于按兩次Ctrl+w的。

taglist是需要下載下傳的一個taglist.vim檔案,可以到sf.net上搜尋及下載下傳。

預設情況下taglist是不打開的。不同的是python_fold是預設打開的。手動打開,在普通模式下輸入

:Tlist

  預設打開taglist的方法:_vimrc中加入

let Tlist_Auto_Open=1