vim golang开发环境搭建

栏目: Go · 发布时间: 5年前

内容简介:vim是非常强大的编辑器,最近在写go的时候,想尝试下在vim中进行开发,在网上找了不少教程之后,还是遇到了不少的问题,就来说一下我的安装过程.在vim命令模式下输入PluginInstall安装好后,执行vim打开vim,如果没有任何提示错误的信息,那么恭喜,vim下go的开发环境就已经搭建好了.

vim是非常强大的编辑器,最近在写 go 的时候,想尝试下在vim中进行开发,在网上找了不少教程之后,还是遇到了不少的问题,就来说一下我的安装过程.

  • 安装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
  • 安装插件

    将以下内容复制到 ~/.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

安装好后,执行vim打开vim,如果没有任何提示错误的信息,那么恭喜,vim下go的开发环境就已经搭建好了.

可惜有时候并不是那么一帆风顺的,下面就讲讲我所遇到的问题及解决办法

排错

  • 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开头的目录,一般还有一些系统相关的信息.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

明明现在已经有 python 的依赖的,而且版本也是对的,最终检查了以后,发现这个vim是我从github上下载的源码压缩包解压出来的,然后用git拉取源码后重新编译安装了以后,这个问题就解决了.

YCM server shutdown

重新安装了以后,运行vim提示的信息为:

The ycmd server SHUT DOWN (restart with :YcmRestartServer)

然后按照提示重启也没什么用,运行

:YcmToggleLogs ycmd_51731_stderr_8r5f09tg.log

发现并没有任何的日志信息.然后确定了一下YCM也是最新的代码,最后通过网上查找资料,在YCM的主目录下运行

$ git submodule update --init --recursive

等待一些第三方的包下载完成后,需要重新安装YCM,这个时候需要cmake,如果没有需要先安装,然后运行install.py 或者 install.sh脚本完成安装

#如果没有cmake才需要执行下面第一个命令
$ sudo apt install cmake
$ ./install.sh

等到安装完成之后,重新打开vim就没有任何的错误信息了,至此,vim下的go开发环境就已经搭建好了,好好享受吧~~.

其实遇到问题并不可怕,可怕的是没有任何错误信息,只要就错误信息,我们通过查看错误信息就可以解决了.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

HTML5经典实例

HTML5经典实例

Christopher Schmitt、Kyle Simpson / 李强 / 中国电力出版社 / 2013-7 / 48.00元

《HTML5经典实例》对于从中级到高级的Web和移动Web开发者来说是绝佳之选,它帮助你选择对你有用的HTML5功能,并且帮助你体验其他的功能。个技巧的信息十分丰富,都包含了示例代码,并详细讨论了解决方案为何有效以及如何工作。一起来看看 《HTML5经典实例》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具