]>
Commit | Line | Data |
---|---|---|
4b7b2598 BB |
1 | 'scopeName': 'source.api-notation' |
2 | 'name': 'API Notation' | |
3 | 'fileTypes': [ | |
4 | 'api' | |
5 | ] | |
6 | 'patterns': [ | |
7 | { | |
8 | 'begin': '^([a-zA-Z0-9_.]+)' | |
9 | 'end': '\n' | |
10 | 'name': 'constant.language' | |
11 | 'patterns': [ | |
12 | { | |
13 | 'include': '#dataTypes' | |
14 | } | |
15 | { | |
16 | 'include': '#comment' | |
17 | } | |
18 | ] | |
19 | } | |
20 | { | |
21 | 'begin': '[ \t]*', | |
22 | 'end': '\n' | |
23 | 'patterns': [ | |
24 | { | |
25 | 'include': '#apiMember' | |
26 | } | |
27 | { | |
28 | 'include': '#parameterList' | |
29 | } | |
30 | { | |
31 | 'include': '#dataTypes' | |
32 | } | |
33 | { | |
34 | 'include': '#operators' | |
35 | } | |
36 | { | |
37 | 'include': '#parameters' | |
38 | } | |
39 | { | |
40 | 'include': '#comment' | |
41 | } | |
42 | ] | |
43 | } | |
44 | { | |
45 | 'begin': '^.', | |
46 | 'end': '\n' | |
47 | 'patterns': [ | |
48 | { | |
49 | 'include': '#comment' | |
50 | } | |
51 | ] | |
52 | }, | |
53 | ] | |
54 | 'repository': | |
55 | 'dataTypes': { | |
56 | 'begin': '\\<' | |
57 | 'end': '\\>' | |
58 | 'name': 'keyword.operator' | |
59 | 'patterns': [ | |
60 | { | |
61 | 'include': '#dataType' | |
62 | } | |
63 | { | |
64 | 'include': '#separators' | |
65 | } | |
66 | ] | |
67 | } | |
68 | 'parameterList': { | |
69 | 'begin': '\\(' | |
70 | 'end': '\\)' | |
71 | 'name': 'keyword.operator' | |
72 | 'patterns': [ | |
73 | { | |
74 | 'include': '#parameters' | |
75 | } | |
76 | { | |
77 | 'include': '#optionalParameters' | |
78 | } | |
79 | { | |
80 | 'include': '#dataTypes' | |
81 | } | |
82 | { | |
83 | 'include': '#separators' | |
84 | } | |
85 | ] | |
86 | } | |
87 | 'dataType': { | |
88 | 'match': '[a-zA-Z0-9_.]+' | |
89 | 'name': 'support.function' | |
90 | } | |
91 | 'parameters': { | |
92 | 'match': '[a-zA-Z0-9_.]+' | |
93 | 'name': 'string.other' | |
94 | } | |
95 | 'optionalParameters': { | |
96 | 'begin': '\\[' | |
97 | 'end': '\\]' | |
98 | 'patterns': [ | |
99 | { | |
100 | 'include': '#optionalParameter' | |
101 | } | |
102 | ] | |
103 | } | |
104 | 'optionalParameter': { | |
105 | 'match': '[a-zA-Z0-9_.]+' | |
106 | 'name': 'meta.separator' | |
107 | } | |
108 | 'separators': { | |
109 | 'match': '\\||,' | |
110 | 'name': 'comment.line' | |
111 | } | |
112 | 'apiMember': { | |
113 | 'match': '((?:<\\+)|(?:<\\~)|(?:<\\-)|(?:\\+>)|(?:\\~>)|(?:\\->)|\\-|\\+|(?:::)|#)([a-zA-z0-9_]+)' | |
114 | 'captures': | |
115 | '1': | |
116 | 'name': 'keyword.control' | |
117 | '2': | |
118 | 'name': 'variable.language' | |
119 | } | |
120 | 'comment': { | |
121 | 'match': '[ \t]*//[ \t]*.*', | |
122 | 'name': 'comment.line' | |
123 | } | |
124 | 'operators': { | |
125 | 'match': '(?:\\->)|(?:\\=>)' | |
126 | 'name': 'keyword.control' | |
127 | } |