vim golang開發(fā)環(huán)境搭建

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)搭建好了,好好享受吧~~.

其實遇到問題并不可怕,可怕的是沒有任何錯誤信息,只要就錯誤信息,我們通過查看錯誤信息就可以解決了.

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容