實用!開發者的 Vim 外掛(一)

大雄45發表於2023-02-01
導讀 作為 Vi 的升級版,Vim 毫無爭議是   中最受歡迎的 行編輯器之一。除了是一個多功能編輯器外,世界各地的軟體開發者將 Vim 當做 IDE(整合開發環境Integrated Development Environment)來使用。事實上,因為 Vim 可以透過外掛來擴充套件其自身功能才使得它如此功能強大。不用說,肯定有那麼幾個 Vim 外掛是旨在提高使用者的程式設計體驗的。特別是對於剛剛使用 Vim 或者使用 Vim 做開發的的軟體開發者來說,我們將在本教程中討論一些非常有用的 Vim 外掛,具體請看例示。

請注意:本教程中列舉的所有例示、 和說明都是在 Ubuntu 16.04 環境下進行測試的,並且,我們使用的 Vim 版本是 7.4。

外掛安裝設定

這是為新使用者準備的,假設他們不知道如何安裝 Vim 外掛。所以,首先,就是給出一些完成安裝設定的步驟。

在你的家目錄下建立".vim"目錄,並在其中建立子目錄"autoload"和"bundle"。

然後在"autoload"放置"pathogen.vim"檔案,這個檔案可以從"此處下載。

最後在你的家目錄建立".vimrc"檔案,並新增以下內容。

1. call pathogen#infect()

實用!開發者的 Vim 外掛(一)實用!開發者的 Vim 外掛(一)

至此,你已完成了 Vim 外掛安裝的準備工作。

注意:我們已經討論了使用Pathogen管理Vim外掛。當然還有其他的外掛管理工具——欲瞭解,請訪問:"。

現在已經全部設定完畢,就讓我們來討論兩個好用的 Vim 外掛吧。

Vim 標籤側邊欄(Tagbar)外掛

首先就是標籤側邊欄(Tagbar)外掛。該外掛能夠讓你瀏覽原始檔包含的標籤,從而提供該原始檔的結構簡覽。其官網的外掛說明是這樣說的:“它透過建立側邊欄,然後以一定順序展示從當前檔案以 ctags 提取的標籤來完成這一功能。這意味著,比如,C++ 中的方法將展示在其自身所定義在的類裡邊。”

聽起來很酷,不是嗎?讓我們來看看該怎麼安裝它。

標籤側邊欄(Tagbar)的安裝過程是相當容易的——你只需要執行下列命令:

1. cd ~/.vim/bundle/
2. 
3. git clone git://github.com/majutsushi/tagbar

安裝完之後就可以使用了,你可以在 Vim 中開啟一個".cpp"檔案來測試它:進入命令模式,然後執行":TagbarOpen"命令。以下是執行":TagbarOpen"命令之後出現側邊欄(右側) 的效果圖。

實用!開發者的 Vim 外掛(一)實用!開發者的 Vim 外掛(一)

使用":TagbarClose可以關閉側邊欄。值得一提的是,可以使用":TagbarOpen fj"命令開啟側邊欄來開啟它的跳轉(shift control)功能。也就是說,你可以很方便的瀏覽當前檔案包含的標籤——在對應的標籤上按下 Enter 鍵,然後在左側的原始碼視窗跳轉到對應的位置。
實用!開發者的 Vim 外掛(一)實用!開發者的 Vim 外掛(一)

假如你想要反覆地開關側邊欄,你可以使用 :TagbarToggle 命令,而不用交替的使用 :TagbarOpen 和:TagbarClose 命令。

如果你覺得輸入這些命令很費時間,你可以為 :TagbarToggle 命令建立快捷鍵。比如,新增以下內容到.vimrc 檔案中:

nmap <F8> :TagbarToggle<CR>

這樣,你就可以用 F8 來切換標籤側邊欄(Tagbar)了。

更進一步,有時候你可能會注意到某個標籤前邊有一個"+"、"-"或者"#"符號。比如,以下截圖(取自該外掛的官網)展示了一些前邊有"+"號的標籤。
實用!開發者的 Vim 外掛(一)實用!開發者的 Vim 外掛(一)

這些符號基本是用來表明一個特定標籤的可見性資訊。特別是 + 表示該類是 public 的,而 - 表示一個 private 類。# 則是表示一個 protected 類。

以下是使用標籤側邊欄(Tagbar)的一些注意事項:

  • 該外掛的官網早就有說明:“標籤側邊欄(Tagbar)並非是管理標籤(tags)檔案而設計,它只是在記憶體中動態建立所需的標籤,而非建立任何檔案。標籤(tags)檔案的管理有其他外掛提供支援。”
  • 低於 7.0.167 版本的 Vim 和標籤側邊欄(Tagbar)外掛存在著一個相容性問題。根據官網:“如果你受到此問題的影響,請使用代替版:(")下載 zip 壓縮包。這對應到 2.2 版本,但由於大量的依賴變更,它可能不會再升級。”
  • 如果你在載入該外掛時遇到這樣的錯誤:未找到 ctags!(Tagbar: Exuberant ctags not found!)。你可以從(")下載並安裝 ctags 來修復錯誤。
  • 獲取更多資訊請訪問(")。
Vim 界定符自動補齊(delimitMate)外掛

下一個要介紹的外掛就是界定符自動補齊(delimitMate)。該外掛在 Vim 插入模式下提供引號、圓括號和方括號等界定符自動補齊功能。

該外掛官網說:“它同時也提供一些相關的特性讓你在輸入模式下變得更加便捷,比如語法糾錯(在註釋區或者其他的可配置區不會自動插入結束界定符)、回車和空格填充(預設關閉)等。”

安裝步驟與之前介紹的相似:

1. cd ~/.vim/bundle/
2. 
3. git clone git://github.com/Raimondi/delimitMate.git

一旦你成功安裝這個外掛(即上述命令執行成功),你就不需要進行任何配置了——當 Vim 啟動時會自動載入這個外掛。

至此,在你使用 Vim 的任何時候,只要你輸入一個雙引號、單引號、單號、圓括號、方括號,它們都會自動補齊。

你可以自己配置界定符自動補齊(delimitMate)。比如,你可以新增需要自動補齊的符號列表,阻止自動載入該外掛,對指定型別檔案關閉該外掛等。想了解如何配置這些(或者其他更多的配置),請閱讀該外掛的詳細文件——執行":help delimitMate"即可。

上述命令會將你的 Vim 視窗水平分割成兩個,上邊一個包含我們所說的文件。
實用!開發者的 Vim 外掛(一)實用!開發者的 Vim 外掛(一)

結論

本文之中提到的兩個外掛,Tagbar 需要花費較多時間來適應——你應該會同樣這個說法。但只要正確設定好它(這意味著你像是有了快捷鍵一樣方便),就容易使用了。至於 delimitMate,不需要任何要求就可以上手。

本教程就是向你展示 Vim 如何高效能的想法。除了本文中提及的,仍然還有許多開發者可用的外掛,我們將在下一個部分進行討論。假如你正在使用一個關於開發的 Vim 外掛,並希望廣為人知,請在下方留下評論。

原文來自: https://www.linuxprobe.com/vim-plug-in-developers01.html


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2933053/,如需轉載,請註明出處,否則將追究法律責任。

相關文章