zoukankan      html  css  js  c++  java
  • 配置Vim的Go开发环境

    最近准备把Go语言的开发环境迁移到linux下来,因为是用xshell ssh到Ubuntu server上的,Sublime肯定是没有办法用了,反正之前Vim用的也挺熟,索性就转移到Vim下开发了。


    linux下Go的安装很方便,把官方的包下载下来,直接解压到home目录下,再配置下环境变量就可以了。我用的是Ubuntu Server,只要在home目录下的.profile文件中加入以下内容

    1. export GOROOT=$HOME/go    #go语言安装包的位置
    2. export PATH=$PATH:$GOROOT/bin 
    3. export GOPATH=$HOME/mygo #自己的代码放在mygo下
    4. export PATH=$PATH:$GOPATH/bin

    Vim的插件管理用的是Vundle,在github上有备份,这里主要是添加Vim下Go语言的自动补全插件。

    先用Go的命令行工具把gocode装上
    go get github.com/nsf/gocode

    再添加Vim对应的插件

    1. Bundle 'dgryski/vim-godef'


    最后配置下gocode工具
    gocode set propose-builtins true
    执行gocode set命令查看返回值

    默认情况下,gocode只会搜索
    $GOPATH/pkg/$GOOS_$GOARCH`` ``$GOROOT/pkg/$GOOS_$GOARCH
    这两个目录下的包,如果有其他的地方要搜索可以调用
    gocode set lib-path path来添加。


    安装完上面的插件之后,在vim中编辑go文件就可以高亮显示了,如果需要自动补全的话,按下Ctrl+x Ctrl + o就会弹出补全列表。


    查看当前文件的函数定义和结构体定义可以通过gotags配合tagbar插件实现

    安装gotags
    go get github.com/jstemmer/gotags

    在vimrc里加上tagbar的配置

    1. let g:tagbar_type_go = {
    2. 'ctagstype' : 'go',
    3. 'kinds' : [
    4. 'p:package',
    5. 'i:imports:1',
    6. 'c:constants',
    7. 'v:variables',
    8. 't:types',
    9. 'n:interfaces',
    10. 'w:fields',
    11. 'e:embedded',
    12. 'm:methods',
    13. 'r:constructor',
    14. 'f:functions'
    15. ],
    16. 'sro' : '.',
    17. 'kind2scope' : {
    18. 't' : 'ctype',
    19. 'n' : 'ntype'
    20. },
    21. 'scope2kind' : {
    22. 'ctype' : 't',
    23. 'ntype' : 'n'
    24. },
    25. 'ctagsbin' : 'gotags',
    26. 'ctagsargs' : '-sort -silent'
    27. }




  • 相关阅读:
    hdoj Last non-zero Digit in N! 【数论】
    spin_lock & mutex_lock的差别?
    20140514,微软5月14日公布8个安全补丁
    教你用笔记本破解无线路由器password
    SSL工作原理
    MS-SQLSERVER中的MSDTC不可用解决方法
    grub2手动引导ubuntu
    用递归翻转一个栈 Reverse a stack using recursion
    腾讯面试
    AngularJS移动开发中的坑汇总
  • 原文地址:https://www.cnblogs.com/joyzhuang/p/3977616.html
Copyright © 2011-2022 走看看