Vim 常用外掛程式 整理

來源:互聯網
上載者:User

以下是滇狐收集和整理的一些有用的 VIM 外掛程式,大部分外掛程式都有自己詳細的說明書,因此這裡就不詳細介紹每個外掛程式的安裝和使用方法了。通過這些外掛程式,VIM 能夠變成一個非常強大的平台,Happy VIMming!如果想詳細瞭解預設的外掛程式外掛程式安裝路徑,請看這裡。

1 程式設計1.1 Tag List

:官方網站

官方描述:The “Tag List” plugin is a source code browser plugin for Vim and provides an overview of the structure of source code files and allows you to efficiently browse through source code files for different programming languages.

滇狐評價:這是一個非常非常非常非常重要的外掛程式,有了它,我們才能夠在 VIM 中查看一個檔案中包含的函數列表,或是一個類包含的方法列表,為編程人員提供了極大方便。推薦大家一定要安裝!

安裝注意事項:有的系統內建的 ctags 功能太弱,推薦大家安裝 EXUBERANT CTAGS,這個東西功能比較強大,居然連 HTML 裡面內嵌的 Java Script 都能夠支援,實在是匪疑所思!

滇狐個人習慣:滇狐習慣把方法列表放在螢幕的右側,於是在 .vimrc 中設定了

let Tlist_Use_Right_Window=1

另外,滇狐習慣讓當前不被編輯的檔案的方法列表自動摺疊起來,這樣可以節約一些螢幕空間,於是在 .vimrc 中設定了

let Tlist_File_Fold_Auto_Close=1。1.2 A

:官方網站

官方描述:

A few of quick commands to swtich between source files and header files quickly.

:A switches to the header file corresponding to the current file being edited (or vise versa)

:AS splits and switches

:AV vertical splits and switches

E.g. if you are editing foo.c and need to edit foo.h simply execute :A and you will be editting foo.h, to switch back to foo.c execute :A again.

滇狐評價:第一眼看到這個東西時,總覺得它功能太簡單,似乎沒有什麼用處。用過之後,才發現這項功能對於一個程式員來說是如何重要!

1.3 Win Manager

:官方網站

官方描述:winmanager is a plugin which implements a classical windows type IDE in Vim-6.0. Basically, you have the directory tree and the buffer list as 2 windows which stay on the left and the editing is done in a seperate area on the left. People have already made excellent File and Buffer explorers seperately and I thought that it might be a cool idea to combine them both. winmanager.vim combines the standard File Explorer which ships with Vim 6.0 and a Buffer Explorer written by Jeff Lanzarotta into one package.

滇狐評價:非常好用的東西,在螢幕上開啟一個檔案瀏覽器,這樣就可以方便地選擇要編輯的檔案了。

預設情況下,winmanager 依賴於 bufexplorer,到這裡下載。如果你不喜歡 bufexplorer 外掛程式的話可以在你的 .vimrc 中添加這條命令禁用它:

let g:winManagerWindowLayout = "FileExplorer"

這樣就不需要下載該外掛程式了。

滇狐為 winfileexplorer.vim 加了一個補丁,提供了使用系統預設開啟檔案開啟選中檔案的功能,只要把游標放在想要開啟的檔案上,然後按“S”就可以了(注意是大寫)。這樣以後就可以直接在 gvim 裡開啟 Noatun 或別的播放器,不用再切換出來找 konqueror 了。

1.4 echofunc

:官方網站

官方描述:When you type ‘(‘ after a function name in insert mode, the function declaration will be displayed in the command line automatically. Then use Alt+-, Alt+= to cycle between function declarations (if exists).

滇狐評價:一個非常好用的外掛程式,雖然很小巧,功能也很簡單,但非常實用,強烈推薦。除此之外,安裝了這個外掛程式後,當滑鼠移到一個標誌符之上時,還會出現一個氣球顯示該標誌符的定義,

安裝注意事項:該外掛程式需要安裝 EXUBERANT CTAGS,不支援古老版本的標準 ctags。建議建立一個這樣的指令碼:

#!/bin/sh
# Filename: omnictags

ctags --c++-kinds=+p --fields=+iaS --extra=+q "$@"

然後使用 omnictags 來運行 ctags 產生 tags 檔案,保證 tags 檔案中含有所需的資訊。

1.5 omnicppcomplete

:官方網站

官方描述:This script is for vim 7.0 or higher it provides an omnifunc cppcomplete function. You can use the omni completion (intellisense) in c++ files.

This is a full vim script and you only need a ctags database.

滇狐評價:雖然滇狐幾乎不依賴 IDE 的自動完成,因此也很少使用這個外掛程式,但總的說來,這仍然是個很棒的外掛程式。

安裝注意事項:該外掛程式需要安裝 EXUBERANT CTAGS,不支援古老版本的標準 ctags。建議建立一個和前面的 echofunc 中給出個指令碼,使用那個指令碼來產生 tags 檔案。

1.6 pyclewn

:官方網站

官方描述:Pyclewn allows using vim as a front end to a debugger. Pyclewn currently supports gdb and pdb.

滇狐評價:Vim 從一開始的設計哲學就是要保持簡單,不要把太多的東西整合在 Vim 中。Pyclewn 在保持了 Vim 簡單的原則下,將整合調試所需的一部分功能引入到了 GVim 中,並且擁有了比 clewn 更高的整合度,支援設定斷點、查看變數的值等許多操作,非常方便。

1.7 jad

:無。自己將代碼複製粘貼回去,儲存為 $HOME/.vim/plugins/jad.vim:

augr class
au!
au bufreadpost,filereadpost *.class %!jad -noctor -ff -i -p %
au bufreadpost,filereadpost *.class set readonly
au bufreadpost,filereadpost *.class set ft=java
au bufreadpost,filereadpost *.class normal gg=G
au bufreadpost,filereadpost *.class set nomodified
au bufreadpost,filereadpost *.class set nomodifiable
augr END

官方描述:(無)

滇狐評價:挺好玩的外掛程式,不過似乎也只是好玩而已。安裝了之後可以直接雙擊開啟 .class 檔案,VIM 會自動調用 jad 把檔案反編譯了。

安裝注意事項:需要先安裝一份 jad。

1.8 cscope_maps

:官方網站

官方描述:Cscope is a very handy tool, but it’s even better when you don’t ever have to leave the comfort of your favorite editor (i.e. Vim) to use it. Fortunately, Cscope support has been built into Vim.

滇狐評價:滇狐目前 cscope 用得不如 ctags 多,許多功能都不大熟。不過既然大家都說好,那還是裝著玩玩吧。

安裝注意事項:需要安裝 cscope。

1.9 project

:官方網站

官方描述:You can use this plugin’s basic functionality to set up a list of frequently-accessed files for easy navigation. The list of files will be displayed in a window on the left side of the Vim window, and you can press <Return> or double-click on filenames in the list to open the files. This is similar to how some IDEs I’ve used work. I find this easier to use than having to navigate a directory hierarchy with the file-explorer. It also obviates the need for a buffer explorer because you have your list of files on the left of the Vim Window.

滇狐評價:食之無肉,棄之有味。

安裝注意事項:幾乎沒怎麼用過,所以暫時沒有發現需要注意的地方。

2 文檔編寫2.1 fencview

:官方網站

官方描述:View a multi-byte encoded file in different encodings.

滇狐評價:對於亞洲使用者,尤其是中國使用者而言,這是一個非常重要的外掛程式!它能自動識別文字檔的編碼,給需要編輯各種不同編碼的人員提供了極大方便。

2.2 VIM LaTeX Suite

:官方網站

官方描述:

Vim is undoubtedly one of the best editors ever made. LaTeX is an extremely powerful, intelligent typesetter. Vim-LaTeX aims at bringing together the best of both these worlds.

We attempt to provide a comprehensive set of tools to view, edit and compile LaTeX documents without needing to ever quit Vim. Together, they provide tools starting from macros to speed up editing LaTeX documents to compiling tex files to forward searching .dvi documents.

See the features page for a brief tour of the various features in LaTeX-suite. All these features can be tuned extensively using the included texrc file. The screenshots page shows you how a typical working session with LaTeX-suite might progress.

LaTeX-suite is made for Vim versions 6.0 and above. Installation instructions are given in the download page.

滇狐評價:實在是非常非常非常非常好的一個外掛程式!用 VIM 寫 LaTeX 的朋友無論如何都要試一試,不用 VIM 寫 LaTeX 的朋友也要試一試,說不定你會改變你的主意,改用 VIM 寫 LaTeX。

安裝注意事項:如果使用 gvim 的話,需要注意 scim 可能會和 LaTeX Suite 有衝突。解決方案是要麼把 scim 的 on the spot 功能去掉,或者把 gtk_im_module 設為 scim。(較新版本 scim 建議第二種方案)。

另外,為了提高工作效率,強烈建議配置 VIM 的 LaTeX 正向、反向搜尋功能。

2.3 sketch

:官方網站

官方描述:Sketch.vim – Line drawing/painting using the mouse. Based on an idea by Morris.

滇狐評價:很好玩,雖然用到的時候不多,但真一旦用到了,還是會覺得這個東西很有用的。

安裝注意事項:建議在 .vimrc 中把 call ToggleSketch() 映射為命令,方便一些:

command -nargs=0 ToggleSketch call ToggleSketch()3 日常生活3.1 Calendar

:官方網站

官方描述:This script create calender window. This don’t use the external program (cal).

滇狐評價:安裝完畢後使用 :Calendar 命令開啟一個垂直的日曆視窗,使用 :CalendarH 命令開啟水平的日曆視窗。應該還是比較有用的。

安裝注意事項:滇狐個人喜歡把日記的副檔名改成 .txt,預設的是 .cal。在 calendar.vim 裡面尋找替換一下就可以了。另外,可以在 .vimrc 裡面修改日記所在的路徑,預設是 ~/diary。

let g:calendar_diary=<PATH>3.2 vimtips

:官方網站

官方描述:

Whenever you start Vim (but no more than daily) the script will open a help window with a Vim tip. You must download the tips separately, from 官方網站

After installation, you can get the next tip with

:TipOfTheDay

滇狐評價:每天看一條,慢慢就變成 VIM 牛了。

安裝注意事項:暫時沒發現。

3.3 vimball

:官方網站

官方描述:The vimball plugin facilitates creating, extracting , and listing the contents of “vimball” archives (*.vba).

滇狐評價:

非常棒的一個外掛程式,專門用來安裝其它外掛程式的。Vimball 格式的外掛程式安裝方便,只需用 Vim 開啟,執行一下 :so % 即可,無須使用者自己滿世界找外掛程式的安裝路徑,更無須整天想著更新 helptags。滇狐已經決定將所有自己編寫或修改的外掛程式改為 Vimball 格式了,而且目前有越來越多的外掛程式使用 Vimball 的格式發布,因此大家手頭上一定要備有一份 Vimball 外掛程式!雖然 Vim 內建了一份 Vimball 外掛程式,但版本太低,許多 Vimball 無法通過它正常安裝,因此還是建議大家到 Vim 網站上下載一份最新版的 Vimball 外掛程式。

3.4 GetLatestScript

:官方網站

官方描述:GetLatestVimScripts is a plugin that automates retrieval of the latest versions of the scripts that you yourself use!

滇狐評價:

非常有用的一個外掛程式,有了它,滇狐就可以時刻使用上最新鮮的外掛程式,而不用不停地到 Vim 首頁上去看外掛程式的更新情況了。

安裝注意事項:

安裝完畢後,建立檔案 ~/.vim/GetLatest/GetLatestVimScripts.dat,按照這樣的格式編寫你的自動下載設定檔:

ScriptID SourceID Filename
--------------------------
<外掛程式 id> 0 [:AutoInstall:] <外掛程式檔案名稱>
<外掛程式 id> 0 [:AutoInstall:] <外掛程式檔案名稱>
...

每行寫一個外掛程式的下載資訊。外掛程式 id 就是在 Vim 首頁下載外掛程式時 URL 中的 script_id= 後面的那個數字。第二個參數是前一次成功下載到的外掛程式檔案編號,第一次使用的時候該參數寫 0,成功使用一次後會自動被修改為該外掛程式最新版本的檔案編號。第三個參數是該外掛程式下載成功後是否自動安裝,如果要自動安裝的話就寫上 :AutoInstall:。滇狐不建議使用自動安裝,因此第三個參數建議省略不要寫。第四個參數是外掛程式的名稱,一般和下載到的外掛程式的檔案名稱相同,當然即使不同也不會造成太大影響,這個參數主要用於防止某些外掛程式自動將自己加入到這張列表,並非用於指定外掛程式的下載檔案名稱,更詳細情況請參看該外掛程式的文檔。以下是滇狐自己的 GetLatestVimScripts.dat,供大家參考:

ScriptID SourceID Filename
--------------------------
1066 0 cecutil.vba
1066 0 cecutil.vim
1066 7618 cecutil.vba.gz
1075 0 netrw.vba
1075 0 netrw.vim
1075 15782 netrw.vba.gz
1440 11032 winmanager.vba.bz2
1502 15362 vimball.vim
152 3342 showmarks.vim
1520 7722 omnicppcomplete-0.41.zip
1708 15376 fencview.vim
1735 15953 echofunc.vim
1863 0 tlib.vim
1863 15732 tlib.vba.gz
1926 9111 bbs.vba.gz
2037 0 hookcursormoved.vim
2037 11543 hookcursormoved.vba.gz
273 7701 taglist_45.zip
31 7218 a.vim
42 14208 bufexplorer.zip
642 0 GetLatestVimScripts.vim
642 0 getscript.vim
642 15781 getscript.vba.gz
705 2667 sketch.zip
861 0 viki.vim
861 14236 Viki.vba.gz

編寫好 GetLatestVimScripts.dat 後,開啟 Vim,運行 :GetLatestVimScripts,即可自動下載最新的外掛程式。外掛程式下載後存放在~/.vim/GetLatest/ 中,可以到那裡找到後安裝,安裝完畢後安裝檔案可以刪除。

3.5 ViKi

你現在看到的這張網頁就是使用 ViKi 製作的。也許它不漂亮,但是很清秀,而且添加資訊非常方便。是 ViKi 將滇狐從繁重的 Html 編輯工作中解放出來,使滇狐有足夠的勇氣重新開始製作個人首頁。為了更好地說明 ViKi,滇狐將該外掛程式的使用單獨放到另一張網頁中。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.