我试图用这里提供的资源和指导在ubuntu上的vim中添加Go语言语法突出显示.

Go附带了一个包含VIM语法设置的go.vim文件,上面的页面提供了以下说明

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 

This is more or less the same vein of procedure for customizing vim syntax I've seen elsewhere (Vim 7.3 on Ubuntu 12.10 doesn't have 'ftplugin' directory anywhere and https://github.com/jnwhiteh/vim-golang/blob/master/readme.txt)

因此,我认为我在创建目录时做的事情是正确的:
~/.vim
~/.vim/语法
~/.vim/ftdetect

并按照上述说明添加

go vim to ~/.vim/语法/

au BufRead,BufNewFile *.go set filetype=go

然而,语法突出显示似乎没有发生.我是否需要做些什么来强制vim查看这些新的设置文件?

推荐答案

您只需将以下行添加到您的~/.vimrc:

set rtp+=$GOROOT/misc/vim
filetype plugin indent on
syntax on

EDIT这假设这些行前面有filetype plugin indent off行(即.vimrc文件的开头),如果不是,可能会导致问题.有关更安全的版本,请参见下面@peterSO的答案.

Go相关问答推荐

如何模拟嵌入. FS?

调用API时使用nginx作为反向代理时从nginx获取502坏网关

CGO如何转换为文件*类型

map 中的多个函数类型,Golang

GORM Find(&;Room)操作使用空数据而不是实际数据填充 struct

GO:如何指定类型约束,使S方法的参数类型与接收方的参数类型相同

如何在VSCode中为特定的.go文件创建调试配置?

为什么没有正确生成这些元组?

Golang String

迭代字符串并用映射值替换原始字符串中的值的惯用方法

在两个单独的速率受限端点之间同步请求

Golang 创建一个带有处理程序的模拟数据库并使用接口调用数据库

Go http.FileServer 给出意外的 404 错误

Golang:隐式 struct 匹配

如何在gin中获取参数值数组

为什么import和ImportSpec之间可以出现多行注释,而PackageName和ImportPath之间不能出现?

在 VSCode 中使用命令行参数调试 Go 测试

Go 泛型是否与 LINQ to Objects 等效?

在 Go 中表达函数的更好方法( struct 方法)

为什么 Go 不允许将一个泛型分配给另一个泛型?