日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Vim 实用技术,第 2 部分: 常用插件

發布時間:2025/3/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vim 实用技术,第 2 部分: 常用插件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2.1. gzip(壓縮文件支持)

作者:Bram Moolenar

網站腳本編號:無(包含在 Vim 的標準發布之中)

安裝說明:

功能說明:

該腳本使得 Vim 可以直接打開使用 gzip [1]、bzip2 [2] 和 compress [3] 壓縮的文件(要求存在相應的命令行工具)。后綴為“.gz”、“.bz2”和“.Z”的文件會在打開時被動態解壓縮,并在寫操作時被自動重新壓縮。

打開壓縮文件時,屏幕上出現一個(不正確的)“[noeol]”的提示是正常的,不必進行理睬。

2.2. netrw(網絡文件支持)

作者:Charles E. Campbell, Jr.(綽號 Dr. Chip)

網站腳本編號:1075(Vim 的標準發布之中可能包含一個較老的版本)

安裝說明:

Vim 6.4 的標準發布帶的版本是 42,較老、功能不齊全,但無須安裝。建議:

1. 在 Vim 網站上下載版本 62(更新的版本只能用于 Vim 7);
2. 使用“tar xvfj netrw.tar.bz2 -C ~/.vim”解開;
3. 在Vim中運行“:helptags ~/.vim/doc”安裝文檔。

功能說明:

支持直接讀寫網絡上的文件,支持的協議有 ftp、http、rsync、scp 等。比如,使用 FTP 協議以用戶名 adah 打開服務器 server 上 ~/temp 目錄下的 test.cpp 文件,可以直接在命令行上使用:

vim ftp://adah@server/temp/test.cpp

Vim會自動提示用戶輸入口令,然后打開文件。

更多的幫助內容請參考“:help netrw”。

2.3. engspchk(英文拼寫檢查)

作者:Charles E. Campbell, Jr.(綽號Dr. Chip)

網站腳本編號:195

安裝說明:
在 Vim 網站上下載最新版本(engspchk.tar.gz);
使用“tar xvfz engspchk.tar.gz -C ~/.vim”解開;
在Vim中運行“:helptags ~/.vim/doc”安裝文檔。
提示替換拼寫功能需要 agrep [4],可能需要另外下載安裝。

功能說明:
一個Vim專用的拼寫檢查器,其最主要的特點是:

  • 可以通過變量 spchkdialect 選擇英語變體(英國、美國、加拿大),對于找不到的詞、不常見的詞、不在當前英語變體中的詞以不同的方式加亮顯示;
  • 支持用戶詞典(保存在 .vim/CVIMSYN 目錄中)和項目詞典(保存在被檢查文件所在的目錄中);
  • 對于源代碼文件,只對注釋進行拼寫檢查,而不會對你的變量名稱胡亂提抗議;
  • 通過詞典文件可支持除英語以外的其它語言。

圖 5 中的窗口里 engspchk 正在運行中。其中可以看到,紅色部分是插件所不能識別的單詞,黃色部分是當前英文變體(缺省是美國英語)中不正確的拼法,而青色部分是很少見的單詞。圖中運行的是包含圖形界面支持的 Vim,因而還可以看到一個名為 DrChip 的菜單項(參見圖6),在其中可通過菜單選擇拼寫檢查相關的各項功能;同時還能看到快捷鍵:“\ec”開始拼寫檢查,“\ee”結束拼寫檢查,“\ea”選擇替換拼寫,等等。在文本模式的 Vim 中,我們一般就只使用這些快捷鍵了。

圖 5
圖 6

更多的幫助內容請參考“:help engspchk”。

2.4. calendar(日歷顯示)

作者:Yasuhiro Matsumoto

網站腳本編號:52

安裝說明:

在 Vim 網站上下載文件 calendar.vim,存到 ~/.vim/plugin 目錄中。

功能說明:

圖 6 的下半部分就是 calendar 的運行示例,是直接在正常模式下鍵入“\caL”顯示出來的。光標在該窗口中時,可使用左箭頭或上箭頭顯示前一個月,右箭頭或下箭頭顯示后一個月,“t”回到“今天”,“q”關閉日歷窗口。在有鼠標支持時,也可以使用鼠標在黃色字樣的“Prev”、“Today”、“Next”上雙擊達到類似的效果。

除使用“\caL”外,“\cal”也可以打開一個日歷窗口,但顯示位置是在 Vim 的左側而不是下方。另外,命令“:Calendar”效果和“\cal”相同,但其后可以跟參數:一個參數的話表示月份,兩個參數的話則分別表示年份和月份。“:CalendarH”與“:Calendar”類似,但日歷窗口的打開位置和“\caL”(而不是“\cal”)一樣,是在下方而不是左側。

2.5. project(文件的“項目”管理)

作者:Aric Blumer

網站腳本編號:69

安裝說明:

1. 在 Vim 網站上下載最新版本(project-1.3.tar.gz);
2. 使用“tar xvfz project-1.3.tar.gz -C ~/.vim”解開;
3. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。

功能說明:

該插件可以把文件組織成一棵樹的形式,以便于查找和管理。使用命令“:Project”即可打開一個用戶的“項目文件”(~/.vimprojects)。項目文件采用普通的文本文件的形式,非常易于瀏覽和修改。圖 7 是一個示例。其中左邊窗口部分的就是一棵項目樹,完整內容如下:

圖 7
CvsMenu="~/.vim" CD=. {plugin/cvsmenu.vimdoc/cvsmenu.txt } Nvwa="~/nvwa_local" CD=. {doc=doc {ChangeLogREADMEwebupdate.sh}nvwa=nvwa {bool_array.cppdebug_new.cppmem_pool_base.cppstatic_mem_pool.cppbool_array.hclass_level_lock.hcont_ptr_utils.hdebug_new.hfast_mutex.hfixed_mem_pool.hmem_pool_base.hobject_level_lock.hpctimer.hset_assign.hstatic_assert.hstatic_mem_pool.h} }

在這個項目文件中存在兩個項目:CvsMenu 和 Nvwa。引號中的內容表示路徑,“CD=.”則表示打開該項目中的文件時,當前目錄會更改到項目所在的目錄。項目下面可以再分子項目,如 Nvwa 項目下有 doc 和 nvwa 兩個子項目,沒有“CD=.”表示打開子項目里的文件時不再更改當前目錄。

圖中并沒有顯示出完整的內容,因為其中的內容可以折疊(缺省打開項目文件時是完全折疊起來的,即在上面的例子中,只能看到兩個項目的名字“CvsMenu”和“Nvwa”)。在非文件名行上使用鼠標雙擊或回車鍵可以進行展開或折疊,在文件名行上使用鼠標雙擊或回車鍵則可以打開對應的文件。

更多的幫助內容請參考“:help project”。

2.6. taglist(源代碼結構瀏覽)

作者:Yegappan Lakshmanan

網站腳本編號:273

安裝說明:

1. 確保機器上有一個可用的 Exuberant Ctags 的版本(可以執行命令“ctags”)

2. 在 Vim 網站上下載 taglist(假設為 taglist.zip);

3. 使用“unzip taglist.zip -d ~/.vim”解開;

4. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。

雖然 taglist 使用 ctags,但并不要求 tags 文件的存在。

功能說明:

使用命令“:Tlist”啟用/關閉 taglist,效果請先看一下圖 8。Taglist 的主要特性有:

圖 8
  • 可以顯示宏(macro)、函數(function)、變量(variable)、類型定義(typedef)、類(class)、結構(struct)等多種內容信息;
  • 打開多個文件時,可以同時看到多個文件的結構信息;
  • 在左邊的 taglist 窗口顯示的名稱上雙擊鼠標或按回車鍵,右邊主窗口中會跳轉到相應的定義位置;
  • 右邊窗口中光標的位置改變,左邊的窗口也會在 4 秒內(缺省值,參見“:help 'updatetime'”)黃色加亮顯示相應的名稱;
  • 在啟用/關閉 taglist 時,插件能夠自動改變當前 Vim 窗口的大小(不管是文本模式的 Vim 還是圖形界面的 Vim),除非使用“:let Tlist_Inc_Winwidth=0”關閉這一功能(當使用這一功能導致兼容性問題時)。

更多的幫助內容請參考“:help taglist”。

2.7. cvsmenu(CVS集成)

作者:Thorsten Maerz/吳詠煒

網站腳本編號:1245

安裝說明:

1. 在 Vim 網站上下載文件 cvsmenu.vim,存到 ~/.vim/plugin 目錄中;
2. 啟動 gvim,在菜單中選擇“CVS-Settings-Install-Install updates”(文本模式的 Vim 可以使用快捷鍵“,cgii”),從網上(SourceForge)的 CVS 中安裝最新版本和幫助文檔(此步驟可選)。

功能說明:

在 Vim 中集成 CVS [24]版本管理功能。該插件最初由 Thorsten Maerz 編寫,在 2002 年以來沒有再得到維護。我在 2005 年初開始使用這個插件后,非常喜歡它,修正了其中存在的錯誤,并一直維護該插件。如果大家發現有 bug,報告給我就可以了。

主要功能可在圖 9 的菜單中看到:

圖 9
  • 了解 CVS 環境的基本信息和 cvsmenu 中的變量設定(參見圖 10);
    圖 10
  • 調整設定,安裝更新版本;
  • 插入 CVS 的可擴展關鍵字,如“$Date$”、“$Id$”;
  • 對目錄進行基本操作(cvs update 等);
  • 接受附加參數的基本操作(文件比較等);
  • 管理功能,如登錄;
  • 刪除類操作;
  • 打標簽;
  • 觀察(跟蹤)和編輯功能;
  • 將本地文件和 CVS 中的文件進行比較(以 Vim 的分左右兩列使用顏色加亮顯示修改、增加、刪除部分的比較方式;效果參見圖 11);
    圖 11
  • 顯示文件每一行的更改人和更改時間(cvs annotate,參見圖 12);
    圖 12
  • 顯示庫的訪問歷史(cvs history);
  • 顯示文件修訂日志(cvs log;參見圖 13);
    圖 13
  • 顯示文件狀態;
  • 顯示較短的文件狀態;
  • 根據本地信息顯示文件狀態(不訪問庫);
  • 簽出模塊(cvs checkout);
  • 查詢更新;
  • 更新,如有沖突會高亮顯示(cvs update);
  • 取消修改;
  • 添加當前文件到 CVS 中(cvs add);
  • 簽入當前文件(cvs commit);
  • 導入文件(cvs import);
  • 添加并簽入當前文件。

根據實際使用的需要,除了修訂錯誤之外,我加入了一些編碼相關的支持。拿一個最實際的情況,如果使用“set encoding=utf-8”,但源代碼中仍使用了 GBK 編碼的中文字符,那么,必須在 .vimrc 中加入一行“let g:CVScvsoutputencoding='gbk'”才能保證“cvs annotate”操作的結果是正確的。

Thorsten 把該插件的易用性設計得相當好。舉例來說,在作文件比較時,按 Tab 可跳轉到下一個不同處,左側的比較窗口中按一下“q”即可關閉該窗口。更多的幫助內容請參考“:help cvsmenu”。

2.8. doxygen(文檔注釋語法加亮)

作者:Michael Geddes

網站腳本編號:5

安裝說明:

1. 在 Vim 網站上下載最新版本(doxygen.zip);
2. 使用“unzip doxygen.zip”解開;
3. 執行“cp -p doxygen.vim ~/.vim/syntax”和“cp -p doxygen.txt ~/.vim/doc”復制文件到 Vim 目錄下;
4. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。
5. 如果 ~/.vim/after/syntax 目錄不存在,使用“mkdir -p ~/.vim/after/syntax”創建該目錄;
6. 進入 ~/.vim/after/syntax 目錄,使用下面三行創建語法文件之間的關聯,使得在 C、C++ 和Java 文件中可以識別文檔注釋:

ln -s ../../syntax/doxygen.vim c.vim ln -s ../../syntax/doxygen.vim cpp.vim ln -s ../../syntax/doxygen.vim java.vim"

6. 可選地,看一下我的個人編程網頁 [6] 下有沒有對 doxygen.vim 的更新(里面包含有作者尚未并入到標準發布中去的我的更改——好奇的話,你可以在 doxygen.vim 文件中數一下,看一看 Wu Yongwei 的名字出現了幾次:-))。

功能說明:

如果你用過文檔注釋,相信我不需要多說,看一下圖 14你就知道這個腳本的功能了。如果你沒有用過文檔注釋,強烈建議你到 Doxygen [7] 的網站上看一下,了解一下這個非常有用的工具。作為示例,可在http://nvwa.sourceforge.net/doc/debug__new_8cpp.html#a17?看一下圖中的代碼使用 Doxygen 自動生成的 HTML 網頁。

圖 14

2.9. matrix(!)

作者:Don Yang

網站腳本編號:1189

安裝說明:

在 Vim 網站上下載文件 matrix.vim,存到 ~/.vim/plugin 目錄中即可。

功能說明:

是的,說的就是電影 Matrix!Vim 的腳本并不是都干“正經事”的。想看一下電影里那些酷酷的字符在 Vim 的窗口里翻滾嗎?發一個命令“:Matrix”即可(按任意鍵退出)。效果見圖 15。

圖 15

參考資料

[1] The gzip home page:?http://www.gzip.org/

[2] bzip2:?http://www.bzip.org/

[3] Compress for UNIX:?http://www.answers.com/compress#Wikipedia

[4] agrep:?http://www.answers.com/agrep

[5] CVS-Concurrent Versions System:?http://www.nongnu.org/cvs/

[6] Wu Yongwei's Programming Page:?http://wyw.dcweb.cn/

[7] Doxygen:?http://www.stack.nl/~dimitri/doxygen/


from:?https://www.ibm.com/developerworks/cn/linux/l-tip-vim2/

總結

以上是生活随笔為你收集整理的Vim 实用技术,第 2 部分: 常用插件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。