monaco-yql-languages 1.21.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,11 @@
1
1
  import './clickhouse/clickhouse.contribution';
2
2
  import './s-expressions/s-expressions.contribution';
3
+ import './s-expressions/YQLs.tmLanguage.json';
4
+ import './s-expressions/YQLs.monarch.json';
3
5
  import './themes/themes.contribution';
4
6
  import './yql/yql.contribution';
7
+ import './yql/YQL.monarch.json';
8
+ import './yql/YQLansi.monarch.json';
5
9
  import './yql/yql_ansi.contribution';
6
- import './yql/yql.keywords';
7
10
  import './yql/YQL.tmLanguage.json';
8
- import './yql_unstable/yql.contribution';
9
- import './yql_unstable/YQL.monarch.json';
10
- import './yql_unstable/YQLansi.monarch.json';
11
- import './yql_unstable/yql_ansi.contribution';
12
- import './s-expressions_unstable/s-expressions.contribution';
13
- import './s-expressions_unstable/YQLs.monarch.json';
11
+ import './yql/YQL.ansi.tmLanguage.json';
@@ -1,13 +1,11 @@
1
1
  import './clickhouse/clickhouse.contribution';
2
2
  import './s-expressions/s-expressions.contribution';
3
+ import './s-expressions/YQLs.tmLanguage.json';
4
+ import './s-expressions/YQLs.monarch.json';
3
5
  import './themes/themes.contribution';
4
6
  import './yql/yql.contribution';
7
+ import './yql/YQL.monarch.json';
8
+ import './yql/YQLansi.monarch.json';
5
9
  import './yql/yql_ansi.contribution';
6
- import './yql/yql.keywords';
7
10
  import './yql/YQL.tmLanguage.json';
8
- import './yql_unstable/yql.contribution';
9
- import './yql_unstable/YQL.monarch.json';
10
- import './yql_unstable/YQLansi.monarch.json';
11
- import './yql_unstable/yql_ansi.contribution';
12
- import './s-expressions_unstable/s-expressions.contribution';
13
- import './s-expressions_unstable/YQLs.monarch.json';
11
+ import './yql/YQL.ansi.tmLanguage.json';
@@ -35,7 +35,7 @@
35
35
  "beforable": [],
36
36
  "stringLiteral\"": [
37
37
  [
38
- "#py",
38
+ "\\#py",
39
39
  {
40
40
  "nextEmbedded": "python",
41
41
  "goBack": 3,
@@ -52,15 +52,6 @@
52
52
  "token": "string.js"
53
53
  }
54
54
  ],
55
- [
56
- "{",
57
- {
58
- "nextEmbedded": "javascript",
59
- "goBack": 1,
60
- "next": "@embedded",
61
- "token": "string.js"
62
- }
63
- ],
64
55
  ["\\\\.", "string.escape"],
65
56
  ["[^\\\"]", "string"],
66
57
  ["\\\"", "string", "@pop"],
@@ -68,7 +59,7 @@
68
59
  ],
69
60
  "stringLiteral@@": [
70
61
  [
71
- "#py",
62
+ "\\#py",
72
63
  {
73
64
  "nextEmbedded": "python",
74
65
  "goBack": 3,
@@ -85,15 +76,6 @@
85
76
  "token": "string.js"
86
77
  }
87
78
  ],
88
- [
89
- "{",
90
- {
91
- "nextEmbedded": "javascript",
92
- "goBack": 1,
93
- "next": "@embedded",
94
- "token": "string.js"
95
- }
96
- ],
97
79
  ["\\@\\@\\@\\@", "string.escape"],
98
80
  ["[^\\@\\@]", "string"],
99
81
  ["\\@\\@", "string", "@pop"],
@@ -0,0 +1,170 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3
+ "fileTypes": ["yqls"],
4
+ "name": "yqls",
5
+ "patterns": [
6
+ {
7
+ "include": "#comment0"
8
+ },
9
+ {
10
+ "include": "#keyword1"
11
+ },
12
+ {
13
+ "include": "#bind-parameter-identifier2"
14
+ },
15
+ {
16
+ "include": "#quoted-identifier3"
17
+ },
18
+ {
19
+ "include": "#type-identifier4"
20
+ },
21
+ {
22
+ "include": "#function-identifier5"
23
+ },
24
+ {
25
+ "include": "#literal6"
26
+ },
27
+ {
28
+ "include": "#identifier7"
29
+ },
30
+ {
31
+ "include": "#string-literal8"
32
+ }
33
+ ],
34
+ "repository": {
35
+ "bind-parameter-identifier2": {
36
+ "patterns": [
37
+ {
38
+ "match": "\\b(world)\\b",
39
+ "name": "variable.parameter"
40
+ }
41
+ ]
42
+ },
43
+ "comment0": {
44
+ "patterns": [
45
+ {
46
+ "match": "(#.*)",
47
+ "name": "comment.block"
48
+ }
49
+ ]
50
+ },
51
+ "function-identifier5": {
52
+ "patterns": [
53
+ {
54
+ "match": "([A-Z][A-Za-z_\\-0-9]*)",
55
+ "name": "entity.name.function"
56
+ },
57
+ {
58
+ "match": "('[A-Za-z_\\-0-9]+\\.[A-Za-z_\\-0-9]+)",
59
+ "name": "entity.name.function"
60
+ },
61
+ {
62
+ "match": "('\"[A-Za-z_\\-0-9]+\\.[A-Za-z_\\-0-9]+\")",
63
+ "name": "entity.name.function"
64
+ }
65
+ ]
66
+ },
67
+ "identifier7": {
68
+ "patterns": [
69
+ {
70
+ "match": "\\b([a-z_0-9][A-Za-z_\\-0-9]*)\\b",
71
+ "name": "variable.other"
72
+ }
73
+ ]
74
+ },
75
+ "keyword1": {
76
+ "patterns": [
77
+ {
78
+ "match": "\\b(set_package_version|override_library|package|library|declare|return|lambda|import|export|quote|block|let)\\b",
79
+ "name": "keyword.control"
80
+ }
81
+ ]
82
+ },
83
+ "literal6": {
84
+ "patterns": [
85
+ {
86
+ "match": "('[A-Za-z_\\-0-9]+)",
87
+ "name": "constant.numeric"
88
+ }
89
+ ]
90
+ },
91
+ "quoted-identifier3": {
92
+ "patterns": [
93
+ {
94
+ "match": "([A-Z][A-Za-z_\\-0-9]*!)",
95
+ "name": "string.interpolated"
96
+ }
97
+ ]
98
+ },
99
+ "string-literal8": {
100
+ "patterns": [
101
+ {
102
+ "begin": "\\\"",
103
+ "end": "\\\"",
104
+ "name": "string.quoted.double",
105
+ "patterns": [
106
+ {
107
+ "match": "\\\\.",
108
+ "name": "constant.character.escape.untitled"
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "begin": "\\@\\@\\#py",
114
+ "end": "\\@\\@",
115
+ "patterns": [
116
+ {
117
+ "include": "source.python"
118
+ },
119
+ {
120
+ "match": "\\@\\@\\@\\@",
121
+ "name": "constant.character.escape.untitled"
122
+ }
123
+ ]
124
+ },
125
+ {
126
+ "begin": "\\@\\@\\/\\/js",
127
+ "end": "\\@\\@",
128
+ "patterns": [
129
+ {
130
+ "include": "source.js"
131
+ },
132
+ {
133
+ "match": "\\@\\@\\@\\@",
134
+ "name": "constant.character.escape.untitled"
135
+ }
136
+ ]
137
+ },
138
+ {
139
+ "begin": "\\@\\@",
140
+ "end": "\\@\\@",
141
+ "name": "string.quoted.double",
142
+ "patterns": [
143
+ {
144
+ "match": "\\@\\@\\@\\@",
145
+ "name": "constant.character.escape.untitled"
146
+ }
147
+ ]
148
+ }
149
+ ]
150
+ },
151
+ "type-identifier4": {
152
+ "patterns": [
153
+ {
154
+ "match": "\\b(([a-zA-Z_])([a-zA-Z_0-9])*)(?=\\<)\\b",
155
+ "name": "entity.name.type"
156
+ },
157
+ {
158
+ "match": "\\b(DECIMAL)\\b",
159
+ "name": "entity.name.type"
160
+ },
161
+ {
162
+ "match": "\\b(pgpg_brin_minmax_multi_summary|pganycompatiblemultirange|pgpg_brin_bloom_summary|pganycompatiblenonarray|pganycompatiblerange|pganycompatiblearray|pgtable_am_handler|pglanguage_handler|pgindex_am_handler|pgpg_dependencies|_pgtstzmultirange|_pgint8multirange|_pgint4multirange|_pgdatemultirange|pgtstzmultirange|pgpg_ddl_command|pgint8multirange|pgint4multirange|pgdatemultirange|_pgtxid_snapshot|_pgregdictionary|_pgnummultirange|pgtxid_snapshot|pgregdictionary|pgnummultirange|pgevent_trigger|pganymultirange|pganycompatible|_pgtsmultirange|_pgregprocedure|_pgregnamespace|_pgregcollation|_pgpg_attribute|pgtsmultirange|pgregprocedure|pgregnamespace|pgregcollation|pgpg_node_tree|pgpg_ndistinct|pgpg_attribute|_pgtimestamptz|_pgregoperator|_pgpg_snapshot|pgtsm_handler|pgtimestamptz|pgregoperator|pgpg_snapshot|pgpg_mcv_list|pgfdw_handler|pganynonarray|_pgint2vector|TzTimestamp64|pgint2vector|pganyelement|_pgtstzrange|_pgtimestamp|_pgregconfig|_pgrefcursor|_pgoidvector|_pgint8range|_pgint4range|_pggtsvector|_pgdaterange|TzDatetime64|JsonDocument|pgtstzrange|pgtimestamp|pgregconfig|pgrefcursor|pgoidvector|pgint8range|pgint4range|pggtsvector|pgdaterange|_pgtsvector|_pgregclass|_pgpg_class|_pgnumrange|_pgmacaddr8|_pgjsonpath|_pginterval|TzTimestamp|Timestamp64|pgtsvector|pgregclass|pgpg_class|pgnumrange|pgmacaddr8|pgjsonpath|pginterval|pginternal|pganyrange|pganyarray|_pgvarchar|_pgtsrange|_pgtsquery|_pgregtype|_pgregrole|_pgregproc|_pgregoper|_pgpolygon|_pgpg_type|_pgpg_proc|_pgnumeric|_pgmacaddr|_pgcstring|_pgaclitem|TzDatetime|Interval64|Datetime64|pgvarchar|pgunknown|pgtsrange|pgtsquery|pgtrigger|pgregtype|pgregrole|pgregproc|pgregoper|pgpolygon|pgpg_type|pgpg_proc|pgnumeric|pgmacaddr|pgcstring|pganyenum|pgaclitem|_pgvarbit|_pgtimetz|_pgrecord|_pgpg_lsn|_pgfloat8|_pgfloat4|_pgcircle|_pgbpchar|Timestamp|EmptyList|EmptyDict|pgvarbit|pgtimetz|pgrecord|pgpg_lsn|pgfloat8|pgfloat4|pgcircle|pgbpchar|_pgpoint|_pgmoney|_pgjsonb|_pgbytea|TzDate32|Interval|DyNumber|Datetime|pgpoint|pgmoney|pgjsonb|pgbytea|_pgxid8|_pguuid|_pgtime|_pgtext|_pgpath|_pgname|_pglseg|_pgline|_pgjson|_pgint8|_pgint4|_pgint2|_pginet|_pgdate|_pgcidr|_pgchar|_pgbool|Generic|pgxid8|pgvoid|pguuid|pgtime|pgtext|pgpath|pgname|pglseg|pgline|pgjson|pgint8|pgint4|pgint2|pginet|pgdate|pgcidr|pgchar|pgbool|_pgxml|_pgxid|_pgtid|_pgoid|_pgcid|_pgbox|_pgbit|Uint64|Uint32|Uint16|TzDate|String|Double|Date32|pgxml|pgxid|pgtid|pgoid|pgcid|pgbox|pgbit|pgany|Uint8|Int64|Int32|Int16|Float|Yson|Void|Uuid|Utf8|Unit|Json|Int8|Date|Bool)\\b",
163
+ "name": "entity.name.type"
164
+ }
165
+ ]
166
+ }
167
+ },
168
+ "scope": "source.yqls",
169
+ "scopeName": "source.yqls"
170
+ }
@@ -1,4 +1,4 @@
1
- import { keywordControl, keywordOperator, variables } from './s-expressions.keywords';
1
+ import YQLsMonarch from './YQLs.monarch.json';
2
2
  export const LANGUAGE_ID = 's-expressions';
3
3
  export const conf = {
4
4
  comments: {
@@ -29,52 +29,6 @@ export const language = {
29
29
  { open: '(', close: ')', token: 'delimiter.parenthesis' },
30
30
  { open: '{', close: '}', token: 'delimiter.curly' },
31
31
  ],
32
- keywordControl,
33
- keywordOperator,
34
- variables,
35
32
  escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
36
- tokenizer: {
37
- root: [
38
- { include: '@whitespace' },
39
- { include: '@comment' },
40
- [/(#)((?:\w|[\\+-=<>'"&#])+)/, ['delimiter', 'constant']],
41
- [
42
- /(?:\b(?:(defun|defmethod|defmacro))\b)(\s+)((?:\w|-|\?)*)/,
43
- ['type.function', 'text', 'entity.name'],
44
- ],
45
- [/(\*)(\S*)(\*)/, ['delimiter', 'variable', 'delimiter']],
46
- { include: '@strings' },
47
- [/'[^#\s)(]+/, 'variable.parameter'],
48
- [/[(){}[\]]/, '@brackets'],
49
- // identifiers and keywords
50
- [
51
- /(?:(?:<=?|>=?|==|!=|[-+*/%])|[a-zA-Z][a-zA-Z0-9!]*)/,
52
- {
53
- cases: {
54
- '@keywordControl': { token: 'keyword.operator' },
55
- '@keywordOperator': { token: 'keyword.control' },
56
- '@variables': { token: 'variable' },
57
- '@default': 'identifier',
58
- },
59
- },
60
- ],
61
- ],
62
- whitespace: [[/\s+/, 'white']],
63
- comment: [[/#.*/, 'comment']],
64
- strings: [
65
- [/'?"(?=.)/, { token: 'string', next: '@qqstring' }],
66
- [/'?[@]{2}/, { token: 'string', next: '@multiline' }],
67
- [/'?x"(?:[0-9A-Fa-f]{2})*"/, 'string'],
68
- ],
69
- qqstring: [
70
- [/\\(?:[0-3][0-7][0-7]|x[0-9A-Fa-f]{2}|["tnrbfav\\])/, 'string.escape'],
71
- [/[^"\\]+/, 'string'],
72
- [/"|$/, { token: 'string', next: '@pop' }],
73
- ],
74
- multiline: [
75
- [/[^@]+/, 'string'],
76
- [/[@]{2}/, { token: 'string', next: '@pop' }],
77
- [/./, { token: 'string' }],
78
- ],
79
- },
33
+ tokenizer: YQLsMonarch.tokenizer,
80
34
  };
@@ -0,0 +1,224 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3
+ "fileTypes": ["yql"],
4
+ "name": "yql",
5
+ "patterns": [
6
+ {
7
+ "include": "#comment0"
8
+ },
9
+ {
10
+ "include": "#option-identifier2"
11
+ },
12
+ {
13
+ "include": "#function-identifier3"
14
+ },
15
+ {
16
+ "include": "#type-identifier4"
17
+ },
18
+ {
19
+ "include": "#function-identifier5"
20
+ },
21
+ {
22
+ "include": "#literal6"
23
+ },
24
+ {
25
+ "include": "#keyword7"
26
+ },
27
+ {
28
+ "include": "#quoted-identifier8"
29
+ },
30
+ {
31
+ "include": "#bind-parameter-identifier9"
32
+ },
33
+ {
34
+ "include": "#identifier10"
35
+ },
36
+ {
37
+ "include": "#string-literal11"
38
+ }
39
+ ],
40
+ "repository": {
41
+ "bind-parameter-identifier9": {
42
+ "patterns": [
43
+ {
44
+ "match": "(\\$([a-zA-Z_])([a-zA-Z_0-9])*)",
45
+ "name": "variable.parameter"
46
+ }
47
+ ]
48
+ },
49
+ "comment0": {
50
+ "patterns": [
51
+ {
52
+ "match": "(((\\/\\*(.|\\n)*?\\*\\/)|(\\-\\-[^\\n\\r]*(\\r\\n?|\\n|$))))",
53
+ "name": "comment.block"
54
+ },
55
+ {
56
+ "begin": "\\/\\*",
57
+ "end": "\\*\\/",
58
+ "name": "comment.block"
59
+ }
60
+ ]
61
+ },
62
+ "function-identifier3": {
63
+ "patterns": [
64
+ {
65
+ "match": "\\b(([a-zA-Z_])([a-zA-Z_0-9])*\\:\\:([a-zA-Z_])([a-zA-Z_0-9])*)\\b",
66
+ "name": "entity.name.function"
67
+ }
68
+ ]
69
+ },
70
+ "function-identifier5": {
71
+ "patterns": [
72
+ {
73
+ "match": "\\b(([a-zA-Z_])([a-zA-Z_0-9])*)(?=\\()\\b",
74
+ "name": "entity.name.function"
75
+ }
76
+ ]
77
+ },
78
+ "identifier10": {
79
+ "patterns": [
80
+ {
81
+ "match": "\\b(([a-zA-Z_])([a-zA-Z_0-9])*)\\b",
82
+ "name": "variable.other"
83
+ }
84
+ ]
85
+ },
86
+ "keyword7": {
87
+ "patterns": [
88
+ {
89
+ "match": "(?i)\\b(replication_factor|force_infer_schema|replicationfactor|compression_codec|CURRENT_TIMESTAMP|forceinferschema|compressioncodec|MATCH_RECOGNIZE|primary_medium|monotonic_keys|ignore_type_v3|security_tags|primarymedium|monotonickeys|erasure_codec|column_groups|UNCONDITIONAL|DYNAMICLINEAR|AUTOINCREMENT|securitytags|infer_scheme|infer_schema|ignoretypev3|erasurecodec|columngroups|MILLISECONDS|MICROSECONDS|EMPTY_ACTION|CURRENT_TIME|CURRENT_DATE|inferscheme|inferschema|TRANSACTION|TABLESAMPLE|REPLICATION|NANOSECONDS|JSON_EXISTS|INCREMENTAL|CONDITIONAL|COMPRESSION|user_attrs|non_unique|expiration|TABLESTORE|REPEATABLE|REFERENCES|PRIVILEGES|JSON_VALUE|JSON_QUERY|DEFERRABLE|CONSTRAINT|COLLECTION|CLASSIFIER|CHANGEFEED|ATTRIBUTES|ASYMMETRIC|userattrs|unordered|nonUnique|keep_meta|WATERMARK|UNMATCHED|UNBOUNDED|TEMPORARY|SYMMETRIC|STREAMING|SAVEPOINT|RETURNING|PRECEDING|PARTITION|INTERSECT|INITIALLY|INCREMENT|IMMEDIATE|FOLLOWING|EXCLUSIVE|EXCLUSION|ENCRYPTED|DIRECTORY|BERNOULLI|truncate|keepmeta|TRANSFER|SUBQUERY|SEQUENCE|ROLLBACK|RESTRICT|RESOURCE|PASSWORD|PARALLEL|OPTIONAL|MEASURES|INHERITS|GROUPING|FUNCTION|EXTERNAL|EVALUATE|DISTINCT|DESCRIBE|DEFERRED|DATABASE|CONSUMER|CONFLICT|CALLABLE|WRAPPER|WITHOUT|VIRTUAL|VARIANT|UNKNOWN|TRIGGER|SYMBOLS|SECONDS|RESTORE|RESTART|RESPECT|REPLACE|RELEASE|REINDEX|PROCESS|PRIMARY|PRESORT|PERMUTE|PATTERN|PASSING|NOTNULL|NOLOGIN|NATURAL|MATCHES|INSTEAD|INITIAL|INDEXED|FOREIGN|FLATTEN|EXPLAIN|EXCLUDE|DISCARD|DISABLE|DEFAULT|DECLARE|DECIMAL|CURRENT|CONNECT|COMPACT|COLUMNS|COLLATE|CASCADE|BITCAST|BETWEEN|AUTOMAP|ANALYZE|inline|WINDOW|VALUES|VACUUM|UPSERT|UPDATE|UNIQUE|TAGGED|TABLES|SYSTEM|SUBSET|STRUCT|STREAM|SOURCE|SELECT|SECRET|SCHEMA|SAMPLE|ROLLUP|REVOKE|REVERT|RETURN|RESULT|RENAME|REMOVE|REGEXP|REDUCE|PRAGMA|OTHERS|OPTION|OFFSET|OBJECT|MODIFY|MANAGE|LINEAR|LEGACY|ISNULL|INSERT|IMPORT|IGNORE|HAVING|GROUPS|GLOBAL|FILTER|FAMILY|EXPORT|EXISTS|EXCEPT|ESCAPE|DETACH|DELETE|DEFINE|CREATE|COMMIT|COLUMN|BEFORE|BACKUP|ATTACH|ASSUME|ACTION|xlock|media|WHERE|USING|UNION|TUPLE|TOPIC|TABLE|START|RLIKE|RIGHT|RESET|RANGE|RAISE|QUEUE|QUERY|OWNER|OUTER|ORDER|NULLS|MATCH|LOGIN|LOCAL|LIMIT|INNER|INDEX|ILIKE|GROUP|GRANT|FIRST|FALSE|ERROR|ERASE|EMPTY|CROSS|COVER|CHECK|BEGIN|BATCH|ASYNC|ARRAY|ALTER|AFTER|ABORT|WITH|WHEN|VIEW|USER|TYPE|TRUE|TIES|THEN|TEMP|SYNC|SKIP|SHOW|SETS|SEMI|SEEK|ROWS|POOL|PLAN|PAST|OVER|ONLY|OMIT|NULL|NEXT|LIST|LIKE|LEFT|LAST|JOIN|INTO|HASH|GLOB|FULL|FROM|FLOW|FAIL|ENUM|ELSE|EACH|DROP|DICT|DESC|DATA|CUBE|CAST|CASE|ANSI|XOR|USE|SET|ROW|PER|ONE|NOT|KEY|HOP|FOR|END|ASC|ANY|AND|ALL|ADD|TO|OR|ON|OF|NO|IS|IN|IF|DO|BY|AT|AS)\\b",
90
+ "name": "keyword.control"
91
+ }
92
+ ]
93
+ },
94
+ "literal6": {
95
+ "patterns": [
96
+ {
97
+ "match": "\\b((([0-9]+)\\.[0-9]*([eE](\\+|\\-)?([0-9]+))?|([0-9]+)([eE](\\+|\\-)?([0-9]+)))([fF]|[pP]([fF](4|8)|[nN])?)?)\\b",
98
+ "name": "constant.numeric"
99
+ },
100
+ {
101
+ "match": "\\b(((0[xX]([0-9a-fA-F])+)|(0[oO][0-8]+)|(0[bB](0|1)+)|([0-9]+))(([pPuU])?([lLsStTiIbBnN])?))\\b",
102
+ "name": "constant.numeric"
103
+ },
104
+ {
105
+ "match": "\\b((0[xX]([0-9a-fA-F])+)|(0[oO][0-8]+)|(0[bB](0|1)+)|([0-9]+))\\b",
106
+ "name": "constant.numeric"
107
+ },
108
+ {
109
+ "match": "(?i)\\b(TRUE)\\b",
110
+ "name": "constant.numeric"
111
+ },
112
+ {
113
+ "match": "(?i)\\b(FALSE)\\b",
114
+ "name": "constant.numeric"
115
+ }
116
+ ]
117
+ },
118
+ "option-identifier2": {
119
+ "patterns": [
120
+ {
121
+ "match": "(?i)\\b(?<=PRAGMA( |\\r|\\t|\\f|\\n))(([a-zA-Z_])([a-zA-Z_0-9])*(\\.([a-zA-Z_])([a-zA-Z_0-9])*)?)\\b",
122
+ "name": "identifier"
123
+ }
124
+ ]
125
+ },
126
+ "quoted-identifier8": {
127
+ "patterns": [
128
+ {
129
+ "match": "(\\`(\\\\(.|\\n)|\\`\\`|[^`\\\\])*\\`)",
130
+ "name": "string.interpolated"
131
+ },
132
+ {
133
+ "match": "(\\@([a-zA-Z_])([a-zA-Z_0-9])*)",
134
+ "name": "string.interpolated"
135
+ }
136
+ ]
137
+ },
138
+ "string-literal11": {
139
+ "patterns": [
140
+ {
141
+ "match": "(((((\\'([^'\\\\]|(\\\\(.|\\n)))*\\'))|((\\\"([^\"\\\\]|(\\\\(.|\\n)))*\\\"))|((\\@\\@(.|\\n)*?\\@\\@)+\\@?))([sSuUyYjJ]|[pP]([tTbBvV])?)?))",
142
+ "name": "string.quoted.double"
143
+ },
144
+ {
145
+ "begin": "\\'",
146
+ "end": "\\'",
147
+ "name": "string.quoted.double",
148
+ "patterns": [
149
+ {
150
+ "match": "\\\\.",
151
+ "name": "constant.character.escape.untitled"
152
+ }
153
+ ]
154
+ },
155
+ {
156
+ "begin": "\\\"",
157
+ "end": "\\\"",
158
+ "name": "string.quoted.double",
159
+ "patterns": [
160
+ {
161
+ "match": "\\\\.",
162
+ "name": "constant.character.escape.untitled"
163
+ }
164
+ ]
165
+ },
166
+ {
167
+ "begin": "\\@\\@\\#py",
168
+ "end": "\\@\\@",
169
+ "patterns": [
170
+ {
171
+ "include": "source.python"
172
+ },
173
+ {
174
+ "match": "\\@\\@\\@\\@",
175
+ "name": "constant.character.escape.untitled"
176
+ }
177
+ ]
178
+ },
179
+ {
180
+ "begin": "\\@\\@\\/\\/js",
181
+ "end": "\\@\\@",
182
+ "patterns": [
183
+ {
184
+ "include": "source.js"
185
+ },
186
+ {
187
+ "match": "\\@\\@\\@\\@",
188
+ "name": "constant.character.escape.untitled"
189
+ }
190
+ ]
191
+ },
192
+ {
193
+ "begin": "\\@\\@",
194
+ "end": "\\@\\@",
195
+ "name": "string.quoted.double",
196
+ "patterns": [
197
+ {
198
+ "match": "\\@\\@\\@\\@",
199
+ "name": "constant.character.escape.untitled"
200
+ }
201
+ ]
202
+ }
203
+ ]
204
+ },
205
+ "type-identifier4": {
206
+ "patterns": [
207
+ {
208
+ "match": "\\b(([a-zA-Z_])([a-zA-Z_0-9])*)(?=\\<)\\b",
209
+ "name": "entity.name.type"
210
+ },
211
+ {
212
+ "match": "(?i)\\b(DECIMAL)\\b",
213
+ "name": "entity.name.type"
214
+ },
215
+ {
216
+ "match": "(?i)\\b(pgpg_brin_minmax_multi_summary|pganycompatiblemultirange|pgpg_brin_bloom_summary|pganycompatiblenonarray|pganycompatiblerange|pganycompatiblearray|pgtable_am_handler|pglanguage_handler|pgindex_am_handler|pgpg_dependencies|_pgtstzmultirange|_pgint8multirange|_pgint4multirange|_pgdatemultirange|pgtstzmultirange|pgpg_ddl_command|pgint8multirange|pgint4multirange|pgdatemultirange|_pgtxid_snapshot|_pgregdictionary|_pgnummultirange|pgtxid_snapshot|pgregdictionary|pgnummultirange|pgevent_trigger|pganymultirange|pganycompatible|_pgtsmultirange|_pgregprocedure|_pgregnamespace|_pgregcollation|_pgpg_attribute|pgtsmultirange|pgregprocedure|pgregnamespace|pgregcollation|pgpg_node_tree|pgpg_ndistinct|pgpg_attribute|_pgtimestamptz|_pgregoperator|_pgpg_snapshot|pgtsm_handler|pgtimestamptz|pgregoperator|pgpg_snapshot|pgpg_mcv_list|pgfdw_handler|pganynonarray|_pgint2vector|TzTimestamp64|pgint2vector|pganyelement|_pgtstzrange|_pgtimestamp|_pgregconfig|_pgrefcursor|_pgoidvector|_pgint8range|_pgint4range|_pggtsvector|_pgdaterange|TzDatetime64|JsonDocument|pgtstzrange|pgtimestamp|pgregconfig|pgrefcursor|pgoidvector|pgint8range|pgint4range|pggtsvector|pgdaterange|_pgtsvector|_pgregclass|_pgpg_class|_pgnumrange|_pgmacaddr8|_pgjsonpath|_pginterval|TzTimestamp|Timestamp64|pgtsvector|pgregclass|pgpg_class|pgnumrange|pgmacaddr8|pgjsonpath|pginterval|pginternal|pganyrange|pganyarray|_pgvarchar|_pgtsrange|_pgtsquery|_pgregtype|_pgregrole|_pgregproc|_pgregoper|_pgpolygon|_pgpg_type|_pgpg_proc|_pgnumeric|_pgmacaddr|_pgcstring|_pgaclitem|TzDatetime|Interval64|Datetime64|pgvarchar|pgunknown|pgtsrange|pgtsquery|pgtrigger|pgregtype|pgregrole|pgregproc|pgregoper|pgpolygon|pgpg_type|pgpg_proc|pgnumeric|pgmacaddr|pgcstring|pganyenum|pgaclitem|_pgvarbit|_pgtimetz|_pgrecord|_pgpg_lsn|_pgfloat8|_pgfloat4|_pgcircle|_pgbpchar|Timestamp|EmptyList|EmptyDict|pgvarbit|pgtimetz|pgrecord|pgpg_lsn|pgfloat8|pgfloat4|pgcircle|pgbpchar|_pgpoint|_pgmoney|_pgjsonb|_pgbytea|TzDate32|Interval|DyNumber|Datetime|pgpoint|pgmoney|pgjsonb|pgbytea|_pgxid8|_pguuid|_pgtime|_pgtext|_pgpath|_pgname|_pglseg|_pgline|_pgjson|_pgint8|_pgint4|_pgint2|_pginet|_pgdate|_pgcidr|_pgchar|_pgbool|Generic|pgxid8|pgvoid|pguuid|pgtime|pgtext|pgpath|pgname|pglseg|pgline|pgjson|pgint8|pgint4|pgint2|pginet|pgdate|pgcidr|pgchar|pgbool|_pgxml|_pgxid|_pgtid|_pgoid|_pgcid|_pgbox|_pgbit|Uint64|Uint32|Uint16|TzDate|String|Double|Date32|pgxml|pgxid|pgtid|pgoid|pgcid|pgbox|pgbit|pgany|Uint8|Int64|Int32|Int16|Float|Yson|Void|Uuid|Utf8|Unit|Json|Int8|Date|Bool)\\b",
217
+ "name": "entity.name.type"
218
+ }
219
+ ]
220
+ }
221
+ },
222
+ "scope": "source.yql",
223
+ "scopeName": "source.yql"
224
+ }
@@ -6,13 +6,13 @@
6
6
  "include": "@beforable"
7
7
  },
8
8
  ["(((\\\/\\*(.|\\n)*?\\*\\\/)|(\\-\\-[^\\n\\r]*(\\r\\n?|\\n|$))))", "comment"],
9
+ ["\\b(([a-zA-Z_])([a-zA-Z_0-9])*\\:\\:([a-zA-Z_])([a-zA-Z_0-9])*)\\b", "support.function"],
9
10
  ["\\b(([a-zA-Z_])([a-zA-Z_0-9])*)(?=\\\u003C)\\b", "keyword.type"],
10
11
  ["\\b(DECIMAL)\\b", "keyword.type"],
11
12
  [
12
13
  "\\b(pgpg_brin_minmax_multi_summary|pganycompatiblemultirange|pgpg_brin_bloom_summary|pganycompatiblenonarray|pganycompatiblerange|pganycompatiblearray|pgtable_am_handler|pglanguage_handler|pgindex_am_handler|pgpg_dependencies|_pgtstzmultirange|_pgint8multirange|_pgint4multirange|_pgdatemultirange|pgtstzmultirange|pgpg_ddl_command|pgint8multirange|pgint4multirange|pgdatemultirange|_pgtxid_snapshot|_pgregdictionary|_pgnummultirange|pgtxid_snapshot|pgregdictionary|pgnummultirange|pgevent_trigger|pganymultirange|pganycompatible|_pgtsmultirange|_pgregprocedure|_pgregnamespace|_pgregcollation|_pgpg_attribute|pgtsmultirange|pgregprocedure|pgregnamespace|pgregcollation|pgpg_node_tree|pgpg_ndistinct|pgpg_attribute|_pgtimestamptz|_pgregoperator|_pgpg_snapshot|pgtsm_handler|pgtimestamptz|pgregoperator|pgpg_snapshot|pgpg_mcv_list|pgfdw_handler|pganynonarray|_pgint2vector|TzTimestamp64|pgint2vector|pganyelement|_pgtstzrange|_pgtimestamp|_pgregconfig|_pgrefcursor|_pgoidvector|_pgint8range|_pgint4range|_pggtsvector|_pgdaterange|TzDatetime64|JsonDocument|pgtstzrange|pgtimestamp|pgregconfig|pgrefcursor|pgoidvector|pgint8range|pgint4range|pggtsvector|pgdaterange|_pgtsvector|_pgregclass|_pgpg_class|_pgnumrange|_pgmacaddr8|_pgjsonpath|_pginterval|TzTimestamp|Timestamp64|pgtsvector|pgregclass|pgpg_class|pgnumrange|pgmacaddr8|pgjsonpath|pginterval|pginternal|pganyrange|pganyarray|_pgvarchar|_pgtsrange|_pgtsquery|_pgregtype|_pgregrole|_pgregproc|_pgregoper|_pgpolygon|_pgpg_type|_pgpg_proc|_pgnumeric|_pgmacaddr|_pgcstring|_pgaclitem|TzDatetime|Interval64|Datetime64|pgvarchar|pgunknown|pgtsrange|pgtsquery|pgtrigger|pgregtype|pgregrole|pgregproc|pgregoper|pgpolygon|pgpg_type|pgpg_proc|pgnumeric|pgmacaddr|pgcstring|pganyenum|pgaclitem|_pgvarbit|_pgtimetz|_pgrecord|_pgpg_lsn|_pgfloat8|_pgfloat4|_pgcircle|_pgbpchar|Timestamp|EmptyList|EmptyDict|pgvarbit|pgtimetz|pgrecord|pgpg_lsn|pgfloat8|pgfloat4|pgcircle|pgbpchar|_pgpoint|_pgmoney|_pgjsonb|_pgbytea|TzDate32|Interval|DyNumber|Datetime|pgpoint|pgmoney|pgjsonb|pgbytea|_pgxid8|_pguuid|_pgtime|_pgtext|_pgpath|_pgname|_pglseg|_pgline|_pgjson|_pgint8|_pgint4|_pgint2|_pginet|_pgdate|_pgcidr|_pgchar|_pgbool|Generic|pgxid8|pgvoid|pguuid|pgtime|pgtext|pgpath|pgname|pglseg|pgline|pgjson|pgint8|pgint4|pgint2|pginet|pgdate|pgcidr|pgchar|pgbool|_pgxml|_pgxid|_pgtid|_pgoid|_pgcid|_pgbox|_pgbit|Uint64|Uint32|Uint16|TzDate|String|Double|Date32|pgxml|pgxid|pgtid|pgoid|pgcid|pgbox|pgbit|pgany|Uint8|Int64|Int32|Int16|Float|Yson|Void|Uuid|Utf8|Unit|Json|Int8|Date|Bool)\\b",
13
14
  "keyword.type"
14
15
  ],
15
- ["\\b(([a-zA-Z_])([a-zA-Z_0-9])*\\:\\:([a-zA-Z_])([a-zA-Z_0-9])*)\\b", "support.function"],
16
16
  ["\\b(([a-zA-Z_])([a-zA-Z_0-9])*)(?=\\()\\b", "support.function"],
17
17
  [
18
18
  "\\b((([0-9]+)\\.[0-9]*([eE](\\+|\\-)?([0-9]+))?|([0-9]+)([eE](\\+|\\-)?([0-9]+)))([fF]|[pP]([fF](4|8)|[nN])?)?)\\b",
@@ -26,7 +26,7 @@
26
26
  ["\\b(TRUE)\\b", "number"],
27
27
  ["\\b(FALSE)\\b", "number"],
28
28
  [
29
- "\\b(replication_factor|force_infer_schema|replicationfactor|compression_codec|CURRENT_TIMESTAMP|forceinferschema|compressioncodec|MATCH_RECOGNIZE|primary_medium|monotonic_keys|ignore_type_v3|security_tags|primarymedium|monotonickeys|erasure_codec|column_groups|UNCONDITIONAL|DYNAMICLINEAR|AUTOINCREMENT|securitytags|infer_scheme|infer_schema|ignoretypev3|erasurecodec|columngroups|MILLISECONDS|MICROSECONDS|EMPTY_ACTION|CURRENT_TIME|CURRENT_DATE|inferscheme|inferschema|TRANSACTION|TABLESAMPLE|REPLICATION|NANOSECONDS|JSON_EXISTS|INCREMENTAL|CONDITIONAL|user_attrs|non_unique|expiration|TABLESTORE|REPEATABLE|REFERENCES|PRIVILEGES|JSON_VALUE|JSON_QUERY|DEFERRABLE|CONSTRAINT|COLLECTION|CLASSIFIER|CHANGEFEED|ATTRIBUTES|ASYMMETRIC|userattrs|unordered|nonUnique|keep_meta|WATERMARK|UNMATCHED|UNBOUNDED|TEMPORARY|SYMMETRIC|STREAMING|SAVEPOINT|RETURNING|PRECEDING|PARTITION|INTERSECT|INITIALLY|INCREMENT|IMMEDIATE|FOLLOWING|EXCLUSIVE|EXCLUSION|ENCRYPTED|DIRECTORY|BERNOULLI|truncate|keepmeta|TRANSFER|SUBQUERY|SEQUENCE|ROLLBACK|RESTRICT|RESOURCE|PASSWORD|PARALLEL|OPTIONAL|MEASURES|INHERITS|GROUPING|FUNCTION|EXTERNAL|EVALUATE|DISTINCT|DESCRIBE|DEFERRED|DATABASE|CONSUMER|CONFLICT|CALLABLE|WRAPPER|WITHOUT|VIRTUAL|VARIANT|UNKNOWN|TRIGGER|SYMBOLS|SECONDS|RESTORE|RESTART|RESPECT|REPLACE|RELEASE|REINDEX|PROCESS|PRIMARY|PRESORT|PERMUTE|PATTERN|PASSING|NOTNULL|NOLOGIN|NATURAL|MATCHES|INSTEAD|INITIAL|INDEXED|FOREIGN|FLATTEN|EXPLAIN|EXCLUDE|DISCARD|DISABLE|DEFAULT|DECLARE|DECIMAL|CURRENT|CONNECT|COMPACT|COLUMNS|COLLATE|CASCADE|BITCAST|BETWEEN|AUTOMAP|ANALYZE|inline|WINDOW|VALUES|VACUUM|UPSERT|UPDATE|UNIQUE|TAGGED|TABLES|SYSTEM|SUBSET|STRUCT|STREAM|SOURCE|SELECT|SECRET|SCHEMA|SAMPLE|ROLLUP|REVOKE|REVERT|RETURN|RESULT|RENAME|REMOVE|REGEXP|REDUCE|PRAGMA|OTHERS|OPTION|OFFSET|OBJECT|MODIFY|MANAGE|LINEAR|LEGACY|ISNULL|INSERT|IMPORT|IGNORE|HAVING|GROUPS|GLOBAL|FILTER|FAMILY|EXPORT|EXISTS|EXCEPT|ESCAPE|DETACH|DELETE|DEFINE|CREATE|COMMIT|COLUMN|BEFORE|BACKUP|ATTACH|ASSUME|ACTION|xlock|media|WHERE|USING|UNION|TUPLE|TOPIC|TABLE|START|RLIKE|RIGHT|RESET|RANGE|RAISE|QUEUE|QUERY|OWNER|OUTER|ORDER|NULLS|MATCH|LOGIN|LOCAL|LIMIT|INNER|INDEX|ILIKE|GROUP|GRANT|FIRST|FALSE|ERROR|ERASE|EMPTY|CROSS|COVER|CHECK|BEGIN|BATCH|ASYNC|ARRAY|ALTER|AFTER|ABORT|WITH|WHEN|VIEW|USER|TYPE|TRUE|TIES|THEN|TEMP|SYNC|SKIP|SHOW|SETS|SEMI|SEEK|ROWS|POOL|PLAN|PAST|OVER|ONLY|OMIT|NULL|NEXT|LIST|LIKE|LEFT|LAST|JOIN|INTO|HASH|GLOB|FULL|FROM|FLOW|FAIL|ENUM|ELSE|EACH|DROP|DICT|DESC|DATA|CUBE|CAST|CASE|ANSI|XOR|USE|SET|ROW|PER|ONE|NOT|KEY|HOP|FOR|END|ASC|ANY|AND|ALL|ADD|TO|OR|ON|OF|NO|IS|IN|IF|DO|BY|AT|AS)\\b",
29
+ "\\b(replication_factor|force_infer_schema|replicationfactor|compression_codec|CURRENT_TIMESTAMP|forceinferschema|compressioncodec|MATCH_RECOGNIZE|primary_medium|monotonic_keys|ignore_type_v3|security_tags|primarymedium|monotonickeys|erasure_codec|column_groups|UNCONDITIONAL|DYNAMICLINEAR|AUTOINCREMENT|securitytags|infer_scheme|infer_schema|ignoretypev3|erasurecodec|columngroups|MILLISECONDS|MICROSECONDS|EMPTY_ACTION|CURRENT_TIME|CURRENT_DATE|inferscheme|inferschema|TRANSACTION|TABLESAMPLE|REPLICATION|NANOSECONDS|JSON_EXISTS|INCREMENTAL|CONDITIONAL|COMPRESSION|user_attrs|non_unique|expiration|TABLESTORE|REPEATABLE|REFERENCES|PRIVILEGES|JSON_VALUE|JSON_QUERY|DEFERRABLE|CONSTRAINT|COLLECTION|CLASSIFIER|CHANGEFEED|ATTRIBUTES|ASYMMETRIC|userattrs|unordered|nonUnique|keep_meta|WATERMARK|UNMATCHED|UNBOUNDED|TEMPORARY|SYMMETRIC|STREAMING|SAVEPOINT|RETURNING|PRECEDING|PARTITION|INTERSECT|INITIALLY|INCREMENT|IMMEDIATE|FOLLOWING|EXCLUSIVE|EXCLUSION|ENCRYPTED|DIRECTORY|BERNOULLI|truncate|keepmeta|TRANSFER|SUBQUERY|SEQUENCE|ROLLBACK|RESTRICT|RESOURCE|PASSWORD|PARALLEL|OPTIONAL|MEASURES|INHERITS|GROUPING|FUNCTION|EXTERNAL|EVALUATE|DISTINCT|DESCRIBE|DEFERRED|DATABASE|CONSUMER|CONFLICT|CALLABLE|WRAPPER|WITHOUT|VIRTUAL|VARIANT|UNKNOWN|TRIGGER|SYMBOLS|SECONDS|RESTORE|RESTART|RESPECT|REPLACE|RELEASE|REINDEX|PROCESS|PRIMARY|PRESORT|PERMUTE|PATTERN|PASSING|NOTNULL|NOLOGIN|NATURAL|MATCHES|INSTEAD|INITIAL|INDEXED|FOREIGN|FLATTEN|EXPLAIN|EXCLUDE|DISCARD|DISABLE|DEFAULT|DECLARE|DECIMAL|CURRENT|CONNECT|COMPACT|COLUMNS|COLLATE|CASCADE|BITCAST|BETWEEN|AUTOMAP|ANALYZE|inline|WINDOW|VALUES|VACUUM|UPSERT|UPDATE|UNIQUE|TAGGED|TABLES|SYSTEM|SUBSET|STRUCT|STREAM|SOURCE|SELECT|SECRET|SCHEMA|SAMPLE|ROLLUP|REVOKE|REVERT|RETURN|RESULT|RENAME|REMOVE|REGEXP|REDUCE|PRAGMA|OTHERS|OPTION|OFFSET|OBJECT|MODIFY|MANAGE|LINEAR|LEGACY|ISNULL|INSERT|IMPORT|IGNORE|HAVING|GROUPS|GLOBAL|FILTER|FAMILY|EXPORT|EXISTS|EXCEPT|ESCAPE|DETACH|DELETE|DEFINE|CREATE|COMMIT|COLUMN|BEFORE|BACKUP|ATTACH|ASSUME|ACTION|xlock|media|WHERE|USING|UNION|TUPLE|TOPIC|TABLE|START|RLIKE|RIGHT|RESET|RANGE|RAISE|QUEUE|QUERY|OWNER|OUTER|ORDER|NULLS|MATCH|LOGIN|LOCAL|LIMIT|INNER|INDEX|ILIKE|GROUP|GRANT|FIRST|FALSE|ERROR|ERASE|EMPTY|CROSS|COVER|CHECK|BEGIN|BATCH|ASYNC|ARRAY|ALTER|AFTER|ABORT|WITH|WHEN|VIEW|USER|TYPE|TRUE|TIES|THEN|TEMP|SYNC|SKIP|SHOW|SETS|SEMI|SEEK|ROWS|POOL|PLAN|PAST|OVER|ONLY|OMIT|NULL|NEXT|LIST|LIKE|LEFT|LAST|JOIN|INTO|HASH|GLOB|FULL|FROM|FLOW|FAIL|ENUM|ELSE|EACH|DROP|DICT|DESC|DATA|CUBE|CAST|CASE|ANSI|XOR|USE|SET|ROW|PER|ONE|NOT|KEY|HOP|FOR|END|ASC|ANY|AND|ALL|ADD|TO|OR|ON|OF|NO|IS|IN|IF|DO|BY|AT|AS)\\b",
30
30
  "keyword"
31
31
  ],
32
32
  ["(\\`(\\\\(.|\\n)|\\`\\`|[^`\\\\])*\\`)", "string.tablepath"],
@@ -56,7 +56,7 @@
56
56
  ],
57
57
  "stringLiteral\u0027": [
58
58
  [
59
- "#py",
59
+ "\\#py",
60
60
  {
61
61
  "nextEmbedded": "python",
62
62
  "goBack": 3,
@@ -73,15 +73,6 @@
73
73
  "token": "string.js"
74
74
  }
75
75
  ],
76
- [
77
- "{",
78
- {
79
- "nextEmbedded": "javascript",
80
- "goBack": 1,
81
- "next": "@embedded",
82
- "token": "string.js"
83
- }
84
- ],
85
76
  ["\\\\.", "string.escape"],
86
77
  ["[^\\\u0027]", "string"],
87
78
  ["\\\u0027", "string", "@pop"],
@@ -89,7 +80,7 @@
89
80
  ],
90
81
  "stringLiteral\"": [
91
82
  [
92
- "#py",
83
+ "\\#py",
93
84
  {
94
85
  "nextEmbedded": "python",
95
86
  "goBack": 3,
@@ -106,15 +97,6 @@
106
97
  "token": "string.js"
107
98
  }
108
99
  ],
109
- [
110
- "{",
111
- {
112
- "nextEmbedded": "javascript",
113
- "goBack": 1,
114
- "next": "@embedded",
115
- "token": "string.js"
116
- }
117
- ],
118
100
  ["\\\\.", "string.escape"],
119
101
  ["[^\\\"]", "string"],
120
102
  ["\\\"", "string", "@pop"],
@@ -122,7 +104,7 @@
122
104
  ],
123
105
  "stringLiteral@@": [
124
106
  [
125
- "#py",
107
+ "\\#py",
126
108
  {
127
109
  "nextEmbedded": "python",
128
110
  "goBack": 3,
@@ -139,15 +121,6 @@
139
121
  "token": "string.js"
140
122
  }
141
123
  ],
142
- [
143
- "{",
144
- {
145
- "nextEmbedded": "javascript",
146
- "goBack": 1,
147
- "next": "@embedded",
148
- "token": "string.js"
149
- }
150
- ],
151
124
  ["\\@\\@\\@\\@", "string.escape"],
152
125
  ["[^\\@\\@]", "string"],
153
126
  ["\\@\\@", "string", "@pop"],