vim是非常強大的編輯器,最近在寫go的時候,想嘗試下在vim中進行開發(fā),在網(wǎng)上找了不少教程之后,還是遇到了不少的問題,就來說一下我的安裝過程.
- 安裝vim包管理器
$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
- 安裝vim-go
$ git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
- 安裝插件
將以下內(nèi)容復制到 ~/.vimrc文件中
set nocompatible " be iMproved, required
filetype off " required" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()" let Vundle manage Vundle, required
Plugin 'gmarik/Vundle.vim'
Plugin 'fatih/vim-go'
Plugin 'Valloric/YouCompleteme'" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
在vim命令模式下輸入PluginInstall
:PluginInstall
- 安裝vim-go下go的一些工具
在vim命令模式下輸入GoInstallBinaries安裝一些vim-go插件所需要的一些工具,這些工具會被放到$GOBIN目錄下
:GoInstallBinaries
安裝好后,執(zhí)行vim打開vim,如果沒有任何提示錯誤的信息,那么恭喜,vim下go的開發(fā)環(huán)境就已經(jīng)搭建好了.
可惜有時候并不是那么一帆風順的,下面就講講我所遇到的問題及解決辦法
排錯
- YCM提示vim版本過低
#卸載老版本vim
$ sudo apt remove vim-tiny vim-common vim-gui-common vim-nox
#安裝新版本
$ git clone https://github.com/vim/vim.git
$ cd vim
$ ./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp=yes \
--enable-pythoninterp=yes \
--with-python-config-dir=/usr/lib/python2.7/config \
--enable-python3interp=yes \
--with-python3-config-dir=/usr/lib/python3.5/config \
--enable-perlinterp=yes \
--enable-luainterp=yes \
--enable-gui=gtk2 \
--enable-cscope \
--prefix=/usr/local
make VIMRUNTIMEDIR=/usr/local/share/vim/vim81
with-python-config-dir為/usr/lib/python*/下以config開頭的目錄,一般還有一些系統(tǒng)相關的信息.Ubuntu下with-python-config-dir 或者with-python3-config-dir只需要配置一個就可以了,如果兩個都配置,可能會導致失敗的.
然后運行vim時,提示錯誤信息為:
YouCompleteMe unavailable: requires Vim compiled with Python (2.7.1+ or 3.4+) support.
$ vim --version | grep python
+comments +libcall +python/dyn +visualextra
+conceal +linebreak +python3/dyn +viminfo
$ python --version
Python 2.7.12
明明現(xiàn)在已經(jīng)有python的依賴的,而且版本也是對的,最終檢查了以后,發(fā)現(xiàn)這個vim是我從github上下載的源碼壓縮包解壓出來的,然后用git拉取源碼后重新編譯安裝了以后,這個問題就解決了.
YCM server shutdown
重新安裝了以后,運行vim提示的信息為:
The ycmd server SHUT DOWN (restart with :YcmRestartServer)
然后按照提示重啟也沒什么用,運行
:YcmToggleLogs ycmd_51731_stderr_8r5f09tg.log
發(fā)現(xiàn)并沒有任何的日志信息.然后確定了一下YCM也是最新的代碼,最后通過網(wǎng)上查找資料,在YCM的主目錄下運行
$ git submodule update --init --recursive
等待一些第三方的包下載完成后,需要重新安裝YCM,這個時候需要cmake,如果沒有需要先安裝,然后運行install.py 或者 install.sh腳本完成安裝
#如果沒有cmake才需要執(zhí)行下面第一個命令
$ sudo apt install cmake
$ ./install.sh
等到安裝完成之后,重新打開vim就沒有任何的錯誤信息了,至此,vim下的go開發(fā)環(huán)境就已經(jīng)搭建好了,好好享受吧~~.
其實遇到問題并不可怕,可怕的是沒有任何錯誤信息,只要就錯誤信息,我們通過查看錯誤信息就可以解決了.