基于vim搭建Go开发环境

Go作为一门新兴语言,发展的如火如荼啊。不过,目前还没有一个成熟的IDE。本文介绍基于vim搭建Go的开发环境,保证在具有vim的快感的同时,又支持Go的特性。

1. Go环境

首先,是安装Go。下载安装包,解压,然后设置环境变量

GOROOT:指向解压后的go路径。

GOPATH:指向用于开发的workspace。Go按照固定的文件结构组织该文件夹,可以很方便的发布代码,或者从其他仓库下载代码。需要在该目录下创建src/,pkg/,bin/三个文件夹

PATH:Go生成的所有的可执行程序都存放在$GOPATH/bin下,需要将它加入到PATH中。同时,需要把go tool加到PATH中,即$GOROOT/bin。

完成后,可以在src下简单写一个go程序,测试是否安装成功。该文件路径:$GOPATH/src/chosen0ne.com/hello.go

package main

import "fmt"

func main() {
	fmt.Printf("Hello, world.\n")
}

运行下列命令执行该程序:

go run chosen0ne.com/hello.go

如果有输出就说明安装成功。

2. Vim的Go插件

在$GOROOT/misc/vim下,对应的是支持go相关特性的vim插件,包括:语法高亮,缩进,Godoc支持等。按照方式在readme.txt中有说明。主要是在.vimrc加入以下代码:

  " Some Linux distributions set filetype in /etc/vimrc.
  " Clear filetype flags before changing runtimepath to force Vim to reload them.
  if exists("g:did_load_filetypes")
    filetype off
    filetype plugin indent off
  endif
  set runtimepath+=$GOROOT/misc/vim " replace $GOROOT with the output of: go env GOROOT
  filetype plugin indent on
  syntax on

然后:source ~/.vimrc,打开一个go文件,就会看到语法高亮。

3. Vim Tag list for Go

这个插件列出go文件中得变量、类型、函数等,并支持跳转。

需要安装tagbar插件,本身这个插件依赖于Exuberant ctags,但是它不支持go,需要通过gotags

1) 安装gotags

gotags是go编写的,安装很简单,直接运行:

go get -u github.com/jstemmer/gotags

就会将gotags安装到$GOROOT/bin下。

2) 安装配置tagbar

tagbar插件就和普通vim插件安装一样,可以通过pathtogen或者vundle。安装完之后,需要对Go进行配置,在.vimrc中加入以下代码:

let g:tagbar_type_go = {
    \ ‘ctagstype‘ : ‘go‘,
    \ ‘kinds‘     : [
        \ ‘p:package‘,
        \ ‘i:imports:1‘,
        \ ‘c:constants‘,
        \ ‘v:variables‘,
        \ ‘t:types‘,
        \ ‘n:interfaces‘,
        \ ‘w:fields‘,
        \ ‘e:embedded‘,
        \ ‘m:methods‘,
        \ ‘r:constructor‘,
        \ ‘f:functions‘
    \ ],
    \ ‘sro‘ : ‘.‘,
    \ ‘kind2scope‘ : {
        \ ‘t‘ : ‘ctype‘,
        \ ‘n‘ : ‘ntype‘
    \ },
    \ ‘scope2kind‘ : {
        \ ‘ctype‘ : ‘t‘,
        \ ‘ntype‘ : ‘n‘
    \ },
    \ ‘ctagsbin‘  : ‘gotags‘,
    \ ‘ctagsargs‘ : ‘-sort -silent‘
\ }

输入:Tagbar就可以打开tagbar,右侧的窗口会显示一系列符号。可以通过Ctrl + ]跳至符号定义处,Ctrl + t返回。效果如下:

4. 语法检测

vim插件syntastic支持对各种语言进行语法检查,会标记处出错位置以及错误原因,效果图:

输入:Errors会打开quickfix窗口列出所有的错误列表,通过:bp,:bn在多个错误之间切换。:SyntasitcInfo会显示当前文件对应的语法checker信息。这个插件可以简单配置一下,具体可以查看帮助文档。

" location list always updated
let g:syntastic_always_populate_loc_list = 1
" collect errors when use multple checkers
let g:syntastic_aggregate_errors = 1

5. 代码提示

最后是大杀器。vim写代码被人诟病的就是不想IDE一样,可以基于语义的代码提示。通过gocode即可实现这个功能。gocode同样是go写的,安装方便:

go get -u github.com/nsf/gocode

然后cd到gocode/vim下,执行./update.sh,实际就是把vim插件拷贝到~/.vim/下。然后编辑go文件,就会有代码提示,效果图:

这样,Go的开发环境就配置成功了,敬请享用吧^-^

时间: 2024-11-10 15:53:25

基于vim搭建Go开发环境的相关文章

基于eclipse搭建android开发环境-win7 32bit

基于eclipse搭建android开发环境-win7 32bit 前言:在使用朋友已搭建的Android开发环境时,发现朋友的开发环境版本较低且在update SDk时失败,便决定根据网上文章提示从头搭建一全新的Android开发环境. 1.准备工作 下载Eclipse.JDK(7).Android SDK.ADT插件. 地址: eclipse:http://www.eclipse.org/downloads/ 版本:Luna Service Release 1 (4.4.1) jdk:htt

基于Qt搭建ROS开发环境

参考的博客: http://blog.csdn.net/u013453604/article/details/52186375 http://blog.csdn.net/dxuehui/article/details/44647861 1. Qt插件ros_qtc_plugin安装 使用ros-industrial的Levi-Armstrong在2015年12月开发的一个 Qt插件ros_qtc_plugin,这个插件使得Qt"新建项目"和"新建文件"选项中出现RO

开发环境——基于RHEL 6.8开发环境的搭建

开发环境--基于RHEL 6.8开发环境的搭建 本文讲述了基于RHEL 6.8操作系统搭建开发环境,主要安装了GCC 4.9.3.Qt 5.7.Apache 2.4.25.MySQL 5.6.35.本文同时适用于在Linux主机无互联网环境下搭建开发环境,只需要将所需安装包下载后拷贝到Linux主机即可. 一.RHEL6.8安装 1.RHEL 6.8下载 下载RHEL 6.8安装包:rhel-server-6.8-x86_64-dvd.iso 2.RHEL 6.8安装 安装过程中选择Develo

基于C/S架构的3D对战网络游戏C++框架 _05搭建系统开发环境与Boost智能指针、内存池初步了解

本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): 1.实现基本通信框架,包括对游戏的需求分析.设计及开发环境和通信框架的搭建: 2.实现网络底层操作,包括创建线程池.序列化网络包等: 3.实战演练,实现类似于CS反恐精英的3D对战网络游戏: 技术要点:C++面向对象思想.网络编程.Qt界面开发.Qt控件知识.Boost智能指针.STL算法.STL.

搭建基于MyEclipse的Hadoop开发环境

前面我们已经搭建了一个伪分布模式的Hadoop运行环境. 我们绝大多数都习惯在Eclipse或MyEclipse中做Java开发,本次随笔我就教大家如何搭建一个基于MyEclipse IDE的Hadoop开发环境. 闲话少说,走起! 第一步 安装MyEclipse的Hadoop插件 1 打开MyEclipse,查看是否已经安装过 window  ->  preferences 没有显示Hadoop Map/Reduce,所以说明是MyEclipse是没有安装过Eclipse的插件. 首先,确认你

基于IDEA的JavaWeb开发环境搭建

基于IDEA的JavaWeb开发环境搭建 基于IDEA的JavaWeb开发环境搭建 jdk下载安装配置环境变量 下载 安装 配置环境变量 下载安装激活使用IntelliJ IDEA 下载 安装 激活 1文本编辑器首先打开hosts文件在最下面一行添加如下地址 2从lan yu获取最新激活码 3在激活页面输入激活码 使用 1创建普通Java工程 2创建Web工程 下载安装配置Tomcat 下载 安装 配置 配置Tomcat环境变量 IDEA工程配置Tomcat 常见问题 Tomcat端口被占用 I

快速搭建Python开发环境

快速搭建Python开发环境·Python入门学习速成系列<1> 当我们在学习一门新的技术或者新的编程语言时,经常感觉无从下手.学习初期往往不知道事先应该准备什么:或者刚开始准备,在安装问题就栽了一个大跟头:甚至我们准备完成后,开始学习是,才发现事先应该准备安装的软件没有到位等.这样或那样的问题就困扰我们学习之初,花费了大量的时间. 本文主要介绍在Windows和Linux主流操作系统上快速部署Python开发环境. 准备Python开发环境 在准备部署Python开发环境时,往往会选择不同的

单机搭建Android开发环境(二)

前文介绍了如何优化SSD和内存,以发挥开发主机的最佳性能,同时提到在SSD上创建虚拟机.为什么不装双系统呢?双系统性能应该会更好!采用Windows+虚拟机的方式,主要是考虑到安卓开发和日常办公两方面,Ubuntu下办公真的很不习惯,且Ubuntu装在虚拟机里迁移也非常方便.前文提到,原先本本并没有配SSD,虚拟机是创建在HDD上的,后来更换了SSD后,直接将虚拟机文件拷贝到SSD上,用很短的时间就完成了迁移,如果是双系统就不得不重新安装Ubuntu和开发工具了.虚拟机软件推荐使用VMWare

Eclipse+ADT+Android SDK 搭建安卓开发环境

要求 必备知识 windows 7 基本操作. 运行环境 windows 7 下载地址 环境下载 最近开接触Android(安卓)嵌入式开发,首要问题是搭建Andoid开发环境,由于本人用的是windows7的笔记本,也就只能到Windows中搭建Android 开发环境了! 就搭建环境都花了比较长的时间, 在各种版本之间折腾了比较久的时间, 装好后SDK包更新又是一个比较大的麻烦(天朝的网络大家懂的--).下面把我的安装过程和经验分享个大家!! 安装JDK 这里可以参考我之前写的一篇关于安装J