第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

Vim 包管理

Vim 的很多特色和高級功能都是通過插件的方式提供的。這樣的模式使得 Vim 能否按需定制,在即保證功能的情況下又避免了臃腫。同時(shí),這也是 Vim 強(qiáng)大和靈活的原因之一。

1. Vim 的包管理工具

Vim 有三種插件管理器:

  • Vundle
  • Vim-plug
  • Vim 原生插件管理器

這個(gè)小節(jié)我們主要介紹前兩種第三方包管理器,原生 Vim 包管理針對批量管理插件不友好,需要手動維護(hù)。不像第三方包管理可以提供針對性功能(分支選擇,條件顯示等),所以推薦方式還是用第三方包管理,這也是推薦方式。

2. Vundle 包管理

Vundle 是最使用廣泛的第三方 Vim 開源包管理器??梢院苋菀装惭b、更新、卸載插件。

2.1 Vundle 安裝

  1. 安裝 Git
  • Windows:直接官網(wǎng)下載安裝包到本地安裝

  • Ubuntu:使用 apt install git 安裝。

  1. Git 克隆 Vundle 到本地:

運(yùn)行這條命令就可以把 Vundle 克隆到本地: git clone https://github.com/VundleVim/Vundle.vim.git~/.vim/bundle/Vundle.vim

root@JD:/data# git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
Cloning into '/root/.vim/bundle/Vundle.vim'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 3140 (delta 0), reused 0 (delta 0), pack-reused 3139
Receiving objects: 100% (3140/3140), 935.39 KiB | 31.00 KiB/s, done.
Resolving deltas: 100% (1106/1106), done.
  1. 配置 Vimrc 加載相應(yīng)插件

因?yàn)槠鶈栴},Vimrc 我放到了Github上。大家可以下載到本地家目錄下重命名為.vimrc.。

配置完 Vimrc 之后直接 Vim 打開后就會按需加載相應(yīng)的插件了:

Tips : 安裝插件還可以再命令模式下使用 PluginInstall 方式進(jìn)行安裝。大家可以自行去了解一下這種方式。

2.2 Vim-plug 安裝

Vim -plug 是另外一個(gè) Vim 的插件管理器,算得上是一個(gè)后起之秀,相比于 Vundle 它有以下的亮點(diǎn):

  • Vim-plug 更加輕量
  • 可以并行安裝、更新,速度更快
  • 支持回滾更新等操作
  • 支持 Branch/tag/commit
  • 支持外部管理插件
  • 按需加載可加快啟動時(shí)間
安裝步驟
  1. 同樣需要通過Git 克隆代碼到本地。
curl -fLo?/ .vim/ autoload / plug.vim --create-dirs \ 
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Tips: 大家可以注意下所有包管理器目錄都在家目錄的.vim 下。
img
autoload: Vim-plug 包管理器
bundle: Vundle 包管理器

  1. 同樣需要通過Vimrc來加載,但是語法會有一點(diǎn)不一樣。

Tips:vim-plug 包管理器vimrc 配置插件需要包含在call plug#begin(’~/.vim/plugged’)call plug#end() 之間。

call plug#begin('~/.vim/plugged')

" Make sure you use single quotes

" Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
Plug 'junegunn/vim-easy-align'

" Any valid git URL is allowed
Plug 'https://github.com/junegunn/vim-github-dashboard.git'

" Multiple Plug commands can be written in a single line using | separators
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'

" On-demand loading
Plug 'scrooloose/nerdtree', { 'on':  'NERDTreeToggle' }
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
" Unmanaged plugin (manually installed and updated)
Plug '~/my-prototype-plugin'
" Initialize plugin system
call plug#end()

vim-plug 加載插件有幾個(gè)特點(diǎn):

  • 允許直接通過 github 地址加載插件
  • 可以同時(shí)加載多個(gè)插件
  • 還可以通過本地手動加載和更新插件
  • 可以更具 git branch 來加載相應(yīng)分支

打開 Vim,安裝插件

Vim-plug 使用方式

基礎(chǔ)命令

命令 解釋
PlugInstall 安裝插件
PlugUpdate 更新插件
PlugClean 插件卸載
PlugUpgrade 更新 vim-plug 本身
PlugStatus 檢查插件狀態(tài)
PlugDiff 查看前一個(gè)更新日志
PlugSnapshot 生成當(dāng)前插件快照腳本

通過不同選項(xiàng)按需加載插件,vimrc 文件中插件語法可以總結(jié)為:Plug ‘插件名’, {‘option’: ‘條件’}

選項(xiàng) 解釋 案例 備注
do 加載后需要執(zhí)行的額外操作 Plug ‘junegunn/fzf’, { ‘dir’: ‘~/.fzf’, ‘do’: ‘./install --all’ } 加載插件后通過do 選項(xiàng)執(zhí)行./install–all命令
on 按照命令調(diào)用加載 Plug ‘scrooloose/nerdtree’, { ‘on’: ‘NERDTreeToggle’ } 只有NERDTreeToggle命令被調(diào)用時(shí)候才會加載插件
for 按照文件類型加載 Plug ‘tpope/vim-fireplace’, { ‘for’: ‘clojure’ } 只有文件類型是clojure時(shí)候才會加載插件
branch/tag/commit 根據(jù)倉庫分支標(biāo)簽等條件 Plug ‘rdnetto/YCM-Generator’, { ‘branch’: ‘stable’ } 加載分支為 stable 的插件
dir 自定義插件安裝目錄 Plug ‘junegunn/fzf’, { ‘dir’: ‘~/.pl’} 加載插件到自定義pl目錄

3. 推薦使用 Vim-plug

這一小節(jié)我們介紹了兩種 Vim 的包管理工具,在這里其實(shí)我更推薦大家使用 vim-plug ,與 Vundle相比較 vim-plug 有以下優(yōu)點(diǎn):

  • 代碼更新,社區(qū)維護(hù)更活躍
  • 性能更好
  • 語法更直觀簡單
  • 支持按需加載
  • 可以同時(shí)加載多個(gè)插件還可以通過本地手動加載和更新插件
  • 可以根據(jù) git branch 來加載相應(yīng)分支
  • 可以查看回滾和更新

4. 小結(jié)

Vim 包管理方便了我們加載插件。讓我們更加專注于開發(fā)。豐富的插件讓Vim 如虎添翼提供了豐富的功能。讓我們可以 DIY 一個(gè)屬于自己的 IDE。