]> Cypherpunks repositories - gostls13.git/commitdiff
Add new complex types, functions and literals to Vim syntax file.
authorDavid Symonds <dsymonds@golang.org>
Tue, 16 Mar 2010 03:38:24 +0000 (20:38 -0700)
committerRuss Cox <rsc@golang.org>
Tue, 16 Mar 2010 03:38:24 +0000 (20:38 -0700)
R=rsc
CC=golang-dev
https://golang.org/cl/224042

misc/vim/go.vim

index db3903af7adfbfaacc8906d006ad647a00d1194f..244503ca302f4b46afd358f196553e402677a83d 100644 (file)
@@ -71,11 +71,13 @@ syn keyword     goType              chan map bool string
 syn keyword     goSignedInts        int int8 int16 int32 int64
 syn keyword     goUnsignedInts      byte uint uint8 uint16 uint32 uint64 uintptr
 syn keyword     goFloats            float float32 float64
+syn keyword     goComplexes         complex complex64 complex128
 
 hi def link     goType              Type
 hi def link     goSignedInts        Type
 hi def link     goUnsignedInts      Type
 hi def link     goFloats            Type
+hi def link     goComplexes         Type
 
 " Treat func specially: it's a declaration at the start of a line, but a type
 " elsewhere. Order matters here.
@@ -83,7 +85,8 @@ syn match       goType              /\<func\>/
 syn match       goDeclaration       /^func\>/
 
 " Predefined functions and values
-syn keyword     goBuiltins          cap close closed convert copy len make new panic panicln print println
+syn keyword     goBuiltins          cap close closed cmplx copy imag len make
+syn keyword     goBuiltins          new panic panicln print println real
 syn keyword     goConstants         iota true false nil
 
 hi def link     goBuiltins          Keyword
@@ -146,10 +149,18 @@ hi def link     Integer             Number
 " Floating point
 syn match       goFloat             "\<\d\+\.\d*\([Ee][-+]\d\+\)\?\>"
 syn match       goFloat             "\<\.\d\+\([Ee][-+]\d\+\)\?\>"
-syn match       goFloat             "\<\d\+[Ee][-+]\d\+"
+syn match       goFloat             "\<\d\+[Ee][-+]\d\+\>"
 
 hi def link     goFloat             Float
 
+" Imaginary literals
+syn match       goImaginary         "\<\d\+i\>"
+syn match       goImaginary         "\<\d\+\.\d*\([Ee][-+]\d\+\)\?i\>"
+syn match       goImaginary         "\<\.\d\+\([Ee][-+]\d\+\)\?i\>"
+syn match       goImaginary         "\<\d\+[Ee][-+]\d\+i\>"
+
+hi def link     goImaginary         Number
+
 " Spaces after "[]"
 if go_highlight_array_whitespace_error != 0
   syn match goSpaceError display "\(\[\]\)\@<=\s\+"