为VIM添加GoLang语法高亮显示
我正试图通过这里提供的资源和方向,将Go语言语法突出显示添加到ubuntu上的VIM中 Go附带一个包含vim语法设置的为VIM添加GoLang语法高亮显示,vim,go,vim-plugin,vim-syntax-highlighting,Vim,Go,Vim Plugin,Vim Syntax Highlighting,我正试图通过这里提供的资源和方向,将Go语言语法突出显示添加到ubuntu上的VIM中 Go附带一个包含vim语法设置的Go.vim文件,上面的页面提供了以下说明 将$GOROOT/misc/vim/syntax/go.vim放入~/.vim/syntax/并将以下内容放入~/.vim/ftdetect/go.vim: au BufRead,BufNewFile *.go set filetype=go 这与我在别处看到的定制vim语法的过程大致相同 (及) 因此,我认为我在创建目录时做的是
Go.vim
文件,上面的页面提供了以下说明
将$GOROOT/misc/vim/syntax/go.vim放入~/.vim/syntax/并将以下内容放入~/.vim/ftdetect/go.vim:
au BufRead,BufNewFile *.go set filetype=go
这与我在别处看到的定制vim语法的过程大致相同
(及)
因此,我认为我在创建目录时做的是正确的:~/.vim
~/.vim/语法
~/.vim/ftdetect
并按照上述说明添加 转到~/.vim/语法/ 并在~/.vim/ftdetect/中创建一个文件go.vim,其中包含
au BufRead,BufNewFile *.go set filetype=go
然而,语法突出显示似乎并没有出现。我需要做些什么来强制VIM查看这些新的设置文件吗?结果发现上面的说明有点模糊
~/.vim/syntax/go.vim
的内容应与~/.vim/ftdetect/go.vim
只有~/.vim/ftdetect/go.vim
必须附加au BufRead,BufNewFile*.go set filetype=go
如果按字面意思理解,说明会告诉您创建一个文件~/.vim/ftdetect/go.vim
,其中只包含
au BufRead,BufNewFile *.go set filetype=go
我想这就是上下文知识应该起作用的地方。只是我以前从未这样做过,也没有这样的背景。谢谢大家 您只需将这些行添加到
~/.vimrc
:
set rtp+=$GOROOT/misc/vim
filetype plugin indent on
syntax on
编辑这假设文件类型插件在这些行之前缩进关闭
(即.vimrc
文件的开头),如果不这样做,可能会导致问题。有关更安全的版本,请参见下面@peterSO的答案。更新:
用于包含Go的标准存储库的顶级misc目录
对编辑器和IDE的支持:插件、初始化
脚本等等。维护这些设备变得越来越费时费力
需要外部帮助,因为列出的许多编辑器未被使用
核心团队的成员。它还要求我们做出决定
哪一个插件对于给定的编辑器是最好的,即使对于我们所做的编辑器也是如此
不用。
一般来说,围棋社区更适合管理这些信息。因此,在Go 1.4中,该支架已从
存储库。相反,这里有一份精心策划、内容丰富的
网上有什么
标准Go发行版包括
Go/misc/Vim/
中的Vim Go文件。此目录包含一个包含安装说明的readme.txt
文件
用于Go的Vim插件(http://golang.org
)
要使用所有Vim插件,请将这些行添加到$HOME/.vimrc
中
" Some Linux distributions set filetype in /etc/vimrc.
" Clear filetype flags before changing runtimepath to force Vim to reload them.
filetype off
filetype plugin indent off
set runtimepath+=$GOROOT/misc/vim
filetype plugin indent on
syntax on
如果您想选择较少的插件,请使用其余部分中的说明
这个文件的一部分
出于我自己决策之外的任何原因,我们通过Debian软件包将Golang安装到了我们的开发虚拟机上。根据我对vim的搜索,vim的这个特定发行版并没有任何好东西。无论如何,我决定走vundle路线,以便将这些好东西快速部署到所有这些开发虚拟机上。如果你愿意的话,你可以将这种方法应用到木偶或其他东西中,但我们没有这样做。不管怎样,我是这样做的: 步骤1:安装vundle: 步骤2:将这一行放在.vimrc中(当然是从这里开始的:),然后从命令行运行vim,比如
vim+BundleInstall+qall
,或者从vim内部运行:BundleInstall
Bundle 'jnwhiteh/vim-golang'
第3步:将我编写的这个小bash脚本保存为govim.sh或其他什么,chmod+xgovim.sh
,然后像/govim.sh
一样运行它
脚本如下:
#!/bin/bash
mkdir $HOME/.vim/ftdetect
mkdir $HOME/.vim/syntax
mkdir $HOME/.vim/autoload
mkdir $HOME/.vim/autoload/go
mkdir $HOME/.vim/ftplugin
mkdir $HOME/.vim/ftplugin/go
mkdir $HOME/.vim/indent
mkdir $HOME/.vim/compiler
mkdir $HOME/.vim/plugin
mkdir $HOME/.vim/plugin/godoc
ln -s $HOME/.vim/bundle/vim-golang/ftdetect/gofiletype.vim $HOME/.vim/ftdetect
ln -s $HOME/.vim/bundle/vim-golang/syntax/go.vim $HOME/.vim/syntax/
ln -s $HOME/.vim/bundle/vim-golang/autoload/go/complete.vim $HOME/.vim/autoload/go/
ln -s $HOME/.vim/bundle/vim-golang/ftplugin/go.vim $HOME/.vim/ftplugin/
ln -s $HOME/.vim/bundle/vim-golang/ftplugin/go/*.vim $HOME/.vim/ftplugin/go/
ln -s $HOME/.vim/bundle/vim-golang/indent/go.vim $HOME/.vim/indent/
ln -s $HOME/.vim/bundle/vim-golang/compiler/go.vim $HOME/.vim/compiler/
ln -s $HOME/.vim/bundle/vim-golang/plugin/godoc/godoc.vim $HOME/.vim/plugin/godoc/
ln -s $HOME/.vim/bundle/vim-golang/syntax/godoc.vim $HOME/.vim/syntax/
卡钦!你现在已经安装了所有的好东西,如果我在这方面错了,有人会纠正我,但可能比官方的Golang发行版更多。我也不知道这一点,因为我还没有尝试过,但我认为如果您在这里使用Vundle和其他答案,运行时路径/rtp会受到冲击。这说明:
Place $GOROOT/misc/vim/syntax/go.vim in ~/.vim/syntax/
and put the following in ~/.vim/ftdetect/go.vim:
au BufRead,BufNewFile *.go set filetype=go
它对我有效,只是我起初没有找到/misc/vim/go.vim目录。因此,我从另一台安装了go-on/usr/local/go/…的计算机上复制了这些文件,以获得最佳语法高亮显示效果 这是一个新项目,整合了许多vim插件并添加了许多特性。自述文件:
- 改进的语法突出显示,如函数、运算符和方法
- 通过gocode自动完成支持
- 保存时gofmt更好,保持光标位置,不会破坏撤消历史记录
- 使用godef转到符号/声明
- 通过goimports自动导入包
- 编译并构建您的软件包,使用go install安装
- 快速运行当前文件
- 运行go测试并在“快速修复”窗口中查看任何错误
- 用golint删除代码
- 通过GoVet运行代码以捕获静态错误
- 使用oracle的高级源代码分析工具
- 列出所有源文件和依赖项
- 使用errcheck检查未检查的错误
- 集成和改进的代码片段。支持ultisnips或neosnippet
- 将当前代码共享到play.golang.org
- 在Debian上,我想在ubuntu上也是一样的,你只是:
sudo apt-get install vim-gocomplete gocode vim-syntax-go
vim-addon-manager install go-syntax
vim-addon-manager install gocode
2015年1月25日
请参阅,因为现在Go repo中的所有编辑器和shell支持都已删除()我没有找到有关为CentOS 7启用vim语法高亮显示的说明。已测试了CentOS 7.3.1611的后续操作说明。首先,在主目录中创建以下目录:
$ mkdir ~/.vim/ftdetect/
然后,在上述目录中创建一个名为“go.vim
”的文件,其中包含以下内容:
au BufRead,BufNewFile *.go set filetype=go
下载Go的语法定义文件:。把它移到右边
$ sudo mv -i go.vim /usr/share/vim/vim74/syntax/