aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/desktop-utils/lumina-textedit/syntax_rules/go.syntax
blob: 3eff96c1ab7f8fb681b7ad57d93e26d743e3dac4 (plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Syntax support file for the Lumina Text Editor
# ===================================
#  Go language support rules
#  Written by Zackary Welch <zwelch@ixsystems.com>
#  Released under the 2-clause BSD license
# ===================================

{
	"meta": {
		"name": "Go",
		"file_suffix": ["go"]
	},
	"format": {
		"line_wrap": false,
		"highlight_whitespace_eol" : false
	},
	"rules": [{
			"name": "keywords",
			"words": ["break", "default", "func", "interface", "select", "case", "defer", "go", "map", "struct", "chan", "else", "goto", "package", "switch", "const", "fallthrough", "if", "range", "type", "continue", "for", "import", "return", "var", "uint32", "uint64", "float32", "float64"],
			"foreground": "colors/keyword"
		},
		{
			"name": "single-line comment",
			"regex": "//[^\n]*",
			"foreground": "colors/comment"
		},
		{
			"name": "multi-line comment",
			"regex_start": "/\\*",
			"regex_end": "\\*/",
			"foreground": "colors/comment"
		},
		{
			"name": "numbers",
			"regex": "\\b[0-9]+\\.?[0-9]*\\b|[0-9]+e[\\+\\-]?[0-9]+",
			"foreground": "colors/altkeyword"
		},
		{
			"name": "function names",
			"regex": "\\b[A-Za-z0-9_]+(?=\\()",
			"foreground": "colors/class"
		},
		{
			"name" : "text",
			"regex": "\"[^\"\\\\]*(\\\\(.|\\n)[^\"\\\\]*)*\"|'[^'\\\\]*(\\\\(.|\\n)[^'\\\\]*)*'",
			"foreground" : "colors/text"
		}
	]
}
bgstack15