diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2014-08-13 00:55:50 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2014-08-13 00:55:50 +0200 |
commit | 964107c604a3dc559c30febfe2a08be31659170d (patch) | |
tree | b4a8eea9167566ac207604e973fd907e5bcdb7f2 /syntax/godoc.vim | |
parent | c0560d6199fe261dfd1aca6310558dc82f759fe3 (diff) | |
download | vim-polyglot-1.10.0.tar.gz vim-polyglot-1.10.0.zip |
Switch to official go package, closes #28v1.10.0
Diffstat (limited to 'syntax/godoc.vim')
-rw-r--r-- | syntax/godoc.vim | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/syntax/godoc.vim b/syntax/godoc.vim new file mode 100644 index 00000000..0fba2080 --- /dev/null +++ b/syntax/godoc.vim @@ -0,0 +1,47 @@ +" Copyright 2011 The Go Authors. All rights reserved. +" Use of this source code is governed by a BSD-style +" license that can be found in the LICENSE file. + +if exists("b:current_syntax") + finish +endif + +syn case match + +syn match godocTitle "^\([A-Z][A-Z ]*\)$" +hi def link godocTitle Title + +" Single Line Definitions +syn match godocMethodRec /\i\+\ze)/ contained +syn match godocMethodName /) \zs\i\+\ze(/ contained +syn match godocMethod /^func \((\i\+ [^)]*)\) \i\+(/ contains=godocMethodRec,godocMethodName +syn match godocFunction /^func \zs\i\+\ze(/ + +syn match godocType /^type \zs\i\+\ze.*/ +syn match godocVar /^var \zs\i\+\ze.*/ +syn match godocConst /^const \zs\i\+\ze.*/ + +hi def link godocMethodRec Type +hi def link godocType Type +hi def link godocMethodName Function +hi def link godocFunction Function +hi def link godocVar Identifier +hi def link godocConst Identifier + +" Definition Blocks +syn region godocComment start="/\*" end="\*/" contained +syn region godocComment start="//" end="$" contained +syn match godocDefinition /^\s\+\i\+/ contained + +syn region godocVarBlock start=/^var (/ end=/^)/ contains=godocComment,godocDefinition +syn region godocConstBlock start=/^const (/ end=/^)/ contains=godocComment,godocDefinition +syn region godocTypeBlock start=/^type \i\+ \(interface\|struct\) {/ end=/^}/ matchgroup=godocType contains=godocComment,godocType + +hi def link godocComment Comment +hi def link godocDefinition Identifier + +syn sync minlines=500 + +let b:current_syntax = "godoc" + +" vim:ts=4 sts=2 sw=2: |