簡約的Vim 插件管理器:vim-plug

jopen 10年前發布 | 78K 次閱讀 vim-plug

vim-plug 是一個小型的 vim 插件管理器。

簡約的Vim 插件管理器:vim-plug

Pros.

  • Easier to setup: Single file. No boilerplate code required.
  • Easier to use: Concise, intuitive syntax
  • Super-fast parallel installation/update (requires+ruby)
  • On-demand loading to achievefast startup time
  • Post-update hooks
  • Can choose a specific branch or tag for each plugin
  • Support for externally managed plugins
  • </ul>

    Usage

    Download plug.vim and put it in ~/.vim/autoload

    mkdir -p ~/.vim/autoload
    curl -fLo ~/.vim/autoload/plug.vim \
        https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

    Edit your .vimrc

    call plug#begin('~/.vim/plugged')
    
    " Make sure you use single quotes
    Plug 'junegunn/seoul256.vim'
    Plug 'junegunn/vim-easy-align'
    
    " On-demand loading
    Plug 'scrooloose/nerdtree', { 'on':  'NERDTreeToggle' }
    Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
    
    " Using git URL
    Plug 'https://github.com/junegunn/vim-github-dashboard.git'
    
    " Plugin options
    Plug 'nsf/gocode', { 'tag': 'go.weekly.2012-03-13', 'rtp': 'vim' }
    
    " Plugin outside ~/.vim/plugged with post-update hook
    Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': 'yes \| ./install' }
    
    " Unmanaged plugin (manually installed and updated)
    Plug '~/my-prototype-plugin'
    
    call plug#end()
    Reload .vimrc and :PlugInstall to install plugins.

    Commands

    Command Description
    PlugInstall [name ...] [#threads] Install plugins
    PlugUpdate [name ...] [#threads] Install or update plugins
    PlugClean[!] Remove unused directories (bang version will clean without prompt)
    PlugUpgrade Upgrade vim-plug itself
    PlugStatus Check the status of plugins
    PlugDiff See the updated changes from the previous PlugUpdate

    Plug options

    Option Description
    branch/tag Branch or tag of the repository to use
    rtp Subdirectory that contains Vim plugin
    dir Custom directory for the plugin
    do Post-update hook (string or funcref)
    on On-demand loading: Commands or <Plug>-mappings
    for On-demand loading: File types
    frozen Do not install/update plugin unless explicitly given as the argument

    Global options

    Flag Default Description
    g:plug_threads 16 Default number of threads to use
    g:plug_timeout 60 Time limit of each task in seconds
    g:plug_retries 2 Number of retries in case of timeout
    g:plug_window vertical topleft new Command to open plug window
    g:plug_url_format https://git::@github.com/%s.git printf format to build repo URL

    Keybindings

    • D - PlugDiff
    • S - PlugStatus
    • R - Retry failed update or installation tasks
    • q - Close the window
    • :PlugStatus
      • L - Load plugin
    • :PlugDiff
      • X - Revert the update

    項目主頁:http://www.baiduhome.net/lib/view/home/1410664958961

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!