[vundle]利用vundle工具來管理vim外掛程式

來源:互聯網
上載者:User

標籤:檢測   script   使用者   find   ada   縮排   toc   owb   等等   

轉自:http://os.51cto.com/art/201507/484174.htm

Vim是Linux上一款用途廣泛的輕量級文本編輯工具。雖然對普通的Linux使用者來說開始學用起來難度相當大,但鑒於它具有的種種好處,完全值得一學。至於功能方面,Vim可以通過外掛程式實現全面定製。不過由於其進階配置,你可能需要在其外掛程式系統上花一番時間,才能夠高效地對Vim進行個人化定製。幸好,我們有幾個工具可以簡化我們使用Vim外掛程式。Vundle就是本人每天使用的一款工具。

1. Vundle 簡介

Vundle(https://github.com/VundleVim/Vundle.vim)的全稱是Vim Bundle,它是一款Vim外掛程式管理工具。Vundle讓你可以非常輕鬆地安裝、更新、搜尋和清理Vim外掛程式。它還能管理你的運行時環境,並協助標記。我在本教程中將介紹如何安裝和使用Vundle。

2. 安裝Vundle

首先,如果你的Linux系統上還沒有Git,安裝它(http://ask.xmodulo.com/install-git-linux.html)。

下一步,建立一個目錄,Vim外掛程式下載後將安裝到該目錄下。預設情況下,該目錄位於~/.vim/bundle。

$ mkdir -p ~/.vim/bundle 

現在安裝Vundle,如下所示。請注意:Vundle本身是另一種Vim外掛程式。因而,我們將Vundle安裝在之前建立的~/.vim/bundle下。

$ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim 
3. 配置Vundle

現在設定你的.vimrc檔案,如下所示:

set nocompatible              " 這是必需的 filetype off                  " 這是必需的   " 你在此設定運行時路徑 set rtp+=~/.vim/bundle/Vundle.vim   " vundle初始化 call vundle#begin()   " 這應該始終是第一個 Plugin ‘gmarik/Vundle.vim‘  " 該例子來自https://github.com/gmarik/Vundle.vim README Plugin ‘tpope/vim-fugitive‘   " 來自http://vim-scripts.org/vim/scripts.html的外掛程式 Plugin ‘L9‘   "未託管在GitHub上的Git外掛程式 Plugin ‘git://git.wincent.com/command-t.git‘   "本地機器上的git軟體庫(即編寫自己的外掛程式時) Plugin ‘file:///home/gmarik/path/to/plugin‘   " sparkup vim指令碼在名為vim的該軟體庫子目錄下。 " 傳遞路徑,合理設定運行時路徑。 Plugin ‘rstacruz/sparkup‘, {‘rtp‘: ‘vim/‘}  " 與L9避免名稱衝突 Plugin ‘user/L9‘, {‘name‘: ‘newL9‘}   "每個外掛程式都應該在這一行之前   call vundle#end()            " required 

不妨稍微解釋一下上述配置。預設情況下,Vundle從github.com或vim-scripts.org下載並安裝Vim外掛程式。你可以修改預設行為。

3.1.外掛程式安裝方式
  • 從Github進行安裝:
Plugin ‘user/plugin‘ 
  • 從http://vim-scripts.org/vim/scripts.html進行安裝:
Plugin ‘plugin_name‘ 
  • 從另一個git軟體庫進行安裝:
Plugin ‘git://git.another_repo.com/plugin‘ 
  • 從本地檔案進行安裝:
Plugin ‘file:///home/user/path/to/plugin‘ 
3.2.定製參數

你還可以定製其他參數,比如外掛程式的運行時路徑,如果你在自行編寫外掛程式,或者就想從不是~/.vim的另一個目錄來裝入它,這非常有用。

Plugin ‘rstacruz/sparkup‘, {‘rtp‘: ‘another_vim_path/‘} 

如果你有同樣名稱的外掛程式,可以更名外掛程式,那樣它就不會衝突。

Plugin ‘user/plugin‘, {‘name‘: ‘newPlugin‘} 
4.Vundle 命令用法

一旦你用Vundle設定好了外掛程式,就可以使用幾個Vundle命令,用Vundle來安裝、更新、搜尋和清理閑置未用的外掛程式。

4.1.安裝一個新的外掛程式

PluginInstall命令會安裝在你的.vimrc檔案中列出來的所有外掛程式。你還可以只安裝某一個特定的外掛程式,只要傳遞其名稱。

:PluginInstall :PluginInstall <plugin-name> 
4.2.清理閑置未用的外掛程式

如果你有任何閑置未用的外掛程式,只要使用PluginClean命令,就可以清理它。

:PluginClean 
4.3.搜尋外掛程式

如果你想從所提供的外掛程式列表安裝一個外掛程式,搜尋功能就很有用。

:PluginSearch <text-list> 

在搜尋過程中,你可以在互動式分屏上安裝、清理、研究或重新裝入同一列表。安裝外掛程式不會自動裝入你的外掛程式。想自動裝入外掛程式,將外掛程式添加到你的.vimrc檔案。

這個功能也經常用,比如:PluginSearch taglist,完成搜尋後,可以按下‘i‘進行安裝

5.結束語

Vim是一款非常出色的工具。它不僅是一款出色的預設文本編輯工具,可以讓你的工作流程更快速更流暢,還可以轉換成IDE(整合式開發環境),支援幾乎任何一種現有的程式設計語言。Vundle對於快速輕鬆地對功能強大的Vim環境實現個人化大有協助。

 

問題:

1. 中間出現過問題call vundle#begin()和call vundle#end()配對時,始終.vimrc不起作用,後來換成call vundle#rc()和filetpe plugin indent on二者,把外掛程式添加到中間即可。

2. 很多外掛程式都需要設定.vimrc,如快速鍵和路徑等等,如下是簡單地的一個.vimrc

"vim configurationset modelines=0"設定更好的刪除set backspace=2syntax on "文法高亮"用淺色高亮當前行autocmd InsertLeave * se noculautocmd InsertEnter * se culset smartindent "智能對齊set autoindent "自動對齊set confirm "在處理未儲存或唯讀檔案的時候,彈出確認框set tabstop=4 "tab鍵的寬度set softtabstop=4set shiftwidth=4 "統一縮排為4set expandtab "不要用空格替代定位字元set number "顯示行號set history=50  "曆史紀錄數set hlsearchset incsearch "搜素高亮,搜尋逐漸高亮set gdefault "行內替換set encoding=utf-8set fileencodings=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936,utf-16,big5,euc-jp,latin1 "編碼設定colorscheme molokaiset guifont=Menlo:h16:cANSI "設定字型set langmenu=zn_CN.UTF-8set helplang=cn  "語言設定set ruler "在編輯過程中,在右下角顯示光線標位置的狀態行set laststatus=1  "總是顯示狀態行set showcmd "在狀態行顯示目前所執行的命令,未完成的指令片段也會顯示出來set scrolloff=3 "游標移動到buffer的頂部和底部時保持3行的距離set showmatch "高亮顯示對應的括弧set matchtime=5 "對應括弧高亮時間(單位是十分之一秒)set autowrite "在切換buffer時自動儲存當前檔案set wildmenu  "增強模式中的命令列自動完成操作set linespace=2 "字元間插入的像素行數目set whichwrap=b,s,<,>,[,] "開啟normal 或visual模式下的backspace鍵空格鍵,左右方向鍵,insert或replace模式下的左方向鍵,右方向鍵的跳行功能filetype plugin indent on "分為三部分命令:file on,file plugin on,file indent on 分別是自動識別檔案類型, 用用檔案類型指令碼,使用縮排定義檔案set foldenable  "允許摺疊set cursorline "反白當前行set magic  "設定魔術?神馬東東set ignorecase "搜尋忽略大小寫filetype on "開啟檔案類型檢測功能set background=darkset t_Co=256   "256色set mouse=a  "允許滑鼠set nocompatible              " 這是必需的 filetype off                  " 這是必需的 " NERDTree------------------------------------------------------let NERDTreeQuitOnOpen=1    " Nerdtree is quit, when file is openedlet NERDTreeShowBookmarks=1 " Display bootmark" let NERDTreeChDirMode=2     " Root is default directory" let mapleader = ","map <F4> :NERDTreeToggle<CR>map <C-F4> :NERDTreeFind<CR>" Taglist------------------------------------------------------let Tlist_Ctags_Cmd=‘ctags‘let Tlist_Show_One_File=1let Tlist_WinWidth=28let Tlist_Exit_OnlyWindow=1let Tlist_Use_Left_Window=1" Cscope------------------------------------------------------if has("cscope")    set csprg=/usr/bin/cscope    set csto=0    set cst    set nocsverb    " add any database    if filereadable("cscope.out")        cs add cscope.out        " else add pointed    elseif $CSCOPE_DB!=""        cs add $CSCOPE_DB    endif    set csverbendif" shortcutsnmap <[email protected]>s :cs find s <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>g :cs find g <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>c :cs find c <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>t :cs find t <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>e :cs find e <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>f :cs find f <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>i :cs find i <C-R>=expand("<cword>")<CR><CR>nmap <[email protected]>d :cs find d <C-R>=expand("<cword>")<CR><CR>" Vundle--------------------------------------------------------  set rtp+=~/.vim/bundle/Vundle.vim   call vundle#rc()Plugin ‘gmarik/Vundle.vim‘ Plugin ‘tpope/vim-surround‘Plugin ‘bling/vim-airline‘Plugin ‘scrooloose/nerdtree‘Plugin ‘taglist.vim‘Plugin ‘cscope.vim‘filetype plugin indent on           " required 
View Code

 

[vundle]利用vundle工具來管理vim外掛程式

相關文章

聯繫我們

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