Mac 下配置 Vim 代碼補全:YouCompleteMe

引言

Vim 無疑是世界上最好用的編輯器之一(爲了避免引發戰爭 →_→)。在廣大程序員用 Vim 敲代碼的過程當中,代碼補全功能可以大大提升生產力,尤爲是對於從各類 IDE 轉到 Vim 的程序員來講更是福音般地存在。本文將介紹一種推薦的代碼補全工具 YouCompleteMe,而且一步步介紹它的安裝方式。php

YouCompleteMe

YouCompleteMe 是一個比較完備,而且正在日漸完備的 Vim 代碼補全插件。它的功能十分強大,支持自動補全的語言包括:git

  • C/C++/Objective-C/Objective-C++ (基於 Clang)
  • Python (基於 Jedi)
  • C# (基於 OmniSharp)
  • Go (基於 GoCode)
  • 其餘 Vim 的 omnicomplete system 支持的語言,好比 (Ruby, PHP 等)

先上一張做者給的 demo 效果圖。程序員

效果圖

安裝

接下來介紹安裝過程。github

肯定 Vim 版本知足支持

若是你用的是 Mac OS X 自帶的 vim 的話,那麼確定是不能知足需求的。首先,須要升級 vim。這裏建議安裝 macvim,固然 vim 的官網也是這麼推薦的。推薦使用 brew 來安裝。shell

  1. MacVim 依賴 Xcode,首先須要在 App Store 中安裝 Xcode。若是是全新安裝的 Xcode,請打開一次,而且贊成 license。
  2. 使用 brew 安裝 MacVimvim

    bashbrew install macvim
  3. 使用 MacVim 替換系統自帶的 Vim,在當前 shell 的配置文件中添加segmentfault

    bashalias vim='mvim -v'

安裝 Vundle

Vundle (縮寫自 Vim bundle) 是一個很方便的 Vim 插件管理器。它的使用方法很簡單,安裝一個插件只須要在 .vimrc 按照規則中添加 Plugin 的名稱,某些須要添加路徑,以後在 Vim 中使用 :PluginInstall 既能夠自動化安裝。具體的使用過方法詳見官網bash

下面將介紹 Vundle 的安裝及基本配置。編輯器

  1. 使用 git 克隆 Vundle 工程到本地。svg

    bashgit clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
  2. 修改 .vimrc 配置 Plugins。在 .vimrc 文件中添加以下內容。

    set nocompatible
    filetype off
    
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    
    Plugin 'gmarik/Vundle.vim'
    
    call vundle#end()
    filetype plugin indent on

安裝 YouCompleteMe

接下來將要安裝的是咱們的主角,YouCompleteMe。解決了上面的依賴軟件以後,安裝它將變得很是簡單。

  1. .vimrc 中添加以下內容。位置在 call vundle#begin()call vundle#end() 之間。

    Bundle 'Valloric/YouCompleteMe'
  2. 編譯 YouCompleteMe

    首先說明,編譯過程須要 CMake,可使用 brew來安裝。

    bashbrew install CMake
    • 帶 C-family languages 語義支持的版本
    bashcd ~/.vim/bundle/YouCompleteMe
    ./install.sh --clang-completer
    • 不帶 C-family languages 語義支持的版本
    bashcd ~/.vim/bundle/YouCompleteMe
    ./install.sh --clang-completer
    • 帶 C# 語義支持的版本
    bashcd ~/.vim/bundle/YouCompleteMe
    ./install.sh --omnisharp-completer
    • 帶 Go 語言語義支持的版本
    bashcd ~/.vim/bundle/YouCompleteMe
    ./install.sh --gocode-completer

完成

至此,咱們已經擁有了 YouCompleteMe 這款自動補全神器。請盡情享用。

Just enjoy it !

相關文章
相關標籤/搜索