Windows 下如何安装 gocode for gVim?折腾几天了,网上查到的资料好像质量都有点儿……

2015-04-05 09:22:52 +08:00
 Nixus

已经安装了vim-go、之前assistant中有提供go.dict.txt,后来一次更新发现这个文件空了。
后了解到gocode非常好,但是在Windows怎么装,就是没有一点效果,惆怅啊

请有经验的大哥给指点一下!
谢谢!如果成功了,一定奉上V币!

3495 次点击
所在节点    Vim
25 条回复
jsfaint
2015-04-05 16:33:54 +08:00
vim-go会自动安装gocode呀,不需要手动安装。
步骤如下:
1. 安装go sdk
2. 在环境变量中加入GOPATH,这个环境变量是用来指定go get, go build的工作路径
3. 你用vundle,neobundle之类的管理工具把vim-go加到vim里面
4. 挂上代理用vim,:GoInstallBinaries,就会自动build vim-go依赖的第三方tool,包括gocode在内
对于windows来说,有可能代理需要手动指明set http_proxy=127.0.0.1:7777 https_proxy=127.0.0.1:7777 vim这样就可以了。

其实go最大得问题还是被GFW认证了,造成下载源码非常痛苦……
Nixus
2015-04-05 17:49:21 +08:00
@jsfaint 开了ssh+,设置了http[s]_proxy 结果安装的时候,还是报错一大堆
郁闷……
不过还是非常感谢您!至少这个安装方法非常简单,谢谢!
Nixus
2015-04-05 18:47:08 +08:00
@jsfaint 如果google把所有需要用的资源都放到github上,该多好啊!哎……
jsfaint
2015-04-05 22:11:11 +08:00
@Nixus 我这里是挂shadowsocks的代理成功安装了。实际上go已经把资源放在github了,但是因为官网被墙了,而那些需要的tool是通过官网的一个链接跳转的,结果还是无法访问T_T
windows下,用shadowsocks+cow绝对是神器
Nixus
2015-04-05 23:33:03 +08:00
@jsfaint 再次感谢!shadowsocks我知道是什么,cow我查了一下,看了一下功能介绍,感觉这个不是必须的。如果没这个,可以安装吗?
jsfaint
2015-04-06 18:53:16 +08:00
@Nixus cow不是必须,cow不需要规则表,会根据链接是否能连接自动代理。这点比较方便。

按理说你有ssh的话,你应该可以直接用的。
假设,ssh的ip是127.0.0.1,端口是7000,那么

```
set http_proxy=127.0.0.1:7000 https_proxy=127.0.0.1:7000 vim
```

应该就可以了。
Nixus
2015-04-07 07:13:19 +08:00
@jsfaint 终于安装成功了,但是autocomplete的功能没有!可能还需要其它插件支持吧!
非常感谢!
jsfaint
2015-04-07 09:55:02 +08:00
@Nixus 嗯,autocomplete需要其他插件来支持,不过omnicomplete可以通过ctrl+x ctrl+o来手动激活
autocomplete可以用neocomplete(需要lua支持),或者acp,或者如果你想折腾youcompleteme……
Nixus
2015-04-07 10:14:58 +08:00
@jsfaint 就是说,gocode自身是没有自动提示代码、补全代码的功能?
jsfaint
2015-04-07 11:00:14 +08:00
@Nixus 自身是有补全的,但是自动弹出补全窗口这个要依赖第三方plugin的,vim一直是这样。
不然只能手动激活补全
Nixus
2015-04-07 11:07:54 +08:00
大哥,你看下,下面是我的Plug,还需要什么?之前assistant是可以用的,但是后来,这个插件的go.dict.txt空了,就不行了
" Plugs
"" 会用并正常使用中的
Plug 'AutoComplPop'
Plug 'The-NERD-tree'
Plug 'Tabular'
Plug 'taglist.vim' "标签列表
Plug 'FixCSS.vim' "格式化CSS
Plug 'bufexplorer.zip'
Plug 'xptemplate'
Plug 'LargeFile'
Plug 'assistant'
Plug 'fatih/vim-go'
Plug 'michaelkrupp/vim_l9.vim'
Plug 'honza/vim-snippets'
Plug 'SirVer/ultisnips'
Plug 'sjl/gundo.vim'
Plug 'powerline/fonts'
Plug 'bling/vim-airline' "状态栏
Plug 'Yggdroot/indentLine'
Plug 'vimz/quickfixer'
Plug 'maksimr/vim-jsbeutify'
Plug 'scrooloose/syntastic' " 需要在环境变量中添加相应开发语言的exe文件
Plug 'terryma/vim-expand-region'

"" 知道用途,不会用:需要学习的
Plug 'a.vim'
"Plug 'cscope.vim'
Plug 'Shougo/neocomplcache.vim'
Plug 'matchit.zip'
Plug 'plasticboy/vim-markdown'
Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-surround'
Plug 'othree/html5.vim'
"Plug 'mattn/emmet-vim'
Plug 'scrooloose/nerdcommenter'
Plug 'szw/vim-tags'
denghongcai
2015-04-07 11:39:19 +08:00
补全用YouCompleteMe
jsfaint
2015-04-08 11:12:13 +08:00
@Nixus 那个assistant应该可以拿掉
补全用你已经有Plug 'AutoComplPop'了
taglist可以用tagbar替换

这俩二选一就行了
Plug 'AutoComplPop'
Plug 'Shougo/neocomplcache.vim'
Nixus
2015-04-08 12:03:35 +08:00
@jsfaint 已经更改了!不过tagbar,文件中有很多变量重复了,这个怎么让重复的变量只显示一个,看了doc,没有找到
jsfaint
2015-04-08 13:06:10 +08:00
@Nixus 重复是什么情况……
Nixus
2015-04-08 14:10:13 +08:00
jsfaint
2015-04-08 15:25:01 +08:00
@Nixus 完全没遇到过……
Nixus
2015-04-08 15:26:34 +08:00
@jsfaint 你vimrc中的,关于tagbar的配置是什么样的?
jsfaint
2015-04-08 15:38:18 +08:00
@Nixus
"tagbar
map <silent> <Leader>t <esc>:TagbarToggle<CR>
let g:tagbar_sort=0
let g:tagbar_left=0
let g:tagbar_compact=1
Nixus
2015-04-08 15:41:53 +08:00
@jsfaint 你的sort=1的时候,就可以看到一堆同名变量了:)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/181653

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX