-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgo.lang
35 lines (25 loc) · 1 KB
/
go.lang
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# see http://golang.org/ref/spec
include "c_comment.lang"
label = '^[[:blank:]]*[[:alnum:]]+:[[:blank:]]*\z'
(keyword,normal,classname) =
`(\<(?:interface|struct))([[:blank:]]+)([[:alnum:]_]+)`
environment string delim "\"" "\"" escape "\\" begin
specialchar = '\\.'
end
environment string delim "'" "'" escape "\\" begin
specialchar = '\\.'
end
string delim "`" "`" multiline
keyword = "break|case|chan|const|continue|default|defer|else|fallthrough",
"for|func|go|goto|if|import|interface|map|package|range|return",
"select|struct|switch|type|var"
type = "bool",
"uint8|uint16|uint32|uint64|int8|int16|int32|int64|float32|float64|complex64|complex128|byte|rune",
"string"
include "number.lang"
symbol = "+","-","*","/","%","&","\|","^","<<",">>","&^",
"+=","-=","*=","/=","%=","&=","\|=","^=","<<=",">>=","&^=",
"&&","\|\|","<-","++","--","==","<",">","=","!",
"!=","<=",">=",":=","...","(",")","[","]",",",".",";",":"
cbracket = "{|}"
function = '([[:alpha:]]|_)[[:word:]:]*(?=\()'