tm-grammars 1.31.0 → 1.31.1

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.
package/NOTICE CHANGED
@@ -3209,7 +3209,7 @@ SPDX: Apache-2.0
3209
3209
  limitations under the License.
3210
3210
 
3211
3211
  =========================================================================================================
3212
- Files: es-tag-css.json, es-tag-glsl.json, es-tag-html.json, es-tag-sql.json, es-tag-xml.json
3212
+ Files: es-tag-css.json, es-tag-glsl.json, es-tag-html.json, es-tag-xml.json
3213
3213
  License: https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE
3214
3214
  SPDX: MIT
3215
3215
  ---------------------------------------------------------------------------------------------------------
@@ -3235,6 +3235,33 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
3235
3235
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3236
3236
  SOFTWARE.
3237
3237
 
3238
+ =========================================================================================================
3239
+ Files: es-tag-sql.json
3240
+ License: https://raw.githubusercontent.com/frigus02/vscode-sql-tagged-template-literals/main/LICENSE
3241
+ SPDX: MIT
3242
+ ---------------------------------------------------------------------------------------------------------
3243
+ The MIT License (MIT)
3244
+
3245
+ Copyright (c) 2019 Jan Kühle
3246
+
3247
+ Permission is hereby granted, free of charge, to any person obtaining a copy
3248
+ of this software and associated documentation files (the "Software"), to deal
3249
+ in the Software without restriction, including without limitation the rights
3250
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
3251
+ copies of the Software, and to permit persons to whom the Software is
3252
+ furnished to do so, subject to the following conditions:
3253
+
3254
+ The above copyright notice and this permission notice shall be included in
3255
+ all copies or substantial portions of the Software.
3256
+
3257
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
3258
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
3259
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
3260
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
3261
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
3262
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
3263
+ THE SOFTWARE.
3264
+
3238
3265
  =========================================================================================================
3239
3266
  Files: fennel.json
3240
3267
  License: https://raw.githubusercontent.com/kongeor/vsc-fennel/master/LICENSE
package/README.md CHANGED
@@ -40,7 +40,7 @@ import { grammars } from 'tm-grammars'
40
40
  | `berry` | `be` | [berry-lang/berry](https://github.com/berry-lang/berry/blob/74611286b8d2d2c2ee16ea187029f2a9c4257f5f/tools/plugins/vscode/skiars.berry-1.2.0/syntaxes/berry.json) | [MIT](https://raw.githubusercontent.com/berry-lang/berry/master/LICENSE) | | | 2.63 kB |
41
41
  | `bibtex` | | [microsoft/vscode](https://github.com/microsoft/vscode/blob/9a2c94d213696a4453b6d9988b003d98e7646e75/extensions/latex/syntaxes/Bibtex.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | | | 4.51 kB |
42
42
  | `bicep` | | [Azure/bicep](https://github.com/Azure/bicep/blob/6252abb94141fc6e774a53652404be30f1cb9000/src/textmate/bicep.tmlanguage) | [MIT](https://raw.githubusercontent.com/Azure/bicep/main/LICENSE) | | | 4.92 kB |
43
- | `bird2` | `bird` | [bird-chinese-community/BIRD-tm-language-grammar](https://github.com/bird-chinese-community/BIRD-tm-language-grammar/blob/2e82aed3f306941105072adf685a91d75bca0bf6/grammars/bird2.tmLanguage.json) | [MPL-2.0](https://raw.githubusercontent.com/bird-chinese-community/BIRD-tm-language-grammar/main/LICENSE) | | | 16.08 kB |
43
+ | `bird2` | `bird` | [bird-chinese-community/BIRD-tm-language-grammar](https://github.com/bird-chinese-community/BIRD-tm-language-grammar/blob/17a8d1d61d4bc1ba719e0025e3f8b283c68eddde/grammars/bird2.tmLanguage.json) | [MPL-2.0](https://raw.githubusercontent.com/bird-chinese-community/BIRD-tm-language-grammar/main/LICENSE) | | | 16.09 kB |
44
44
  | `blade` | | [laravel/vs-code-extension](https://github.com/laravel/vs-code-extension/blob/80726f64975dc935d6b925d8230cdc1ea075802a/syntaxes/blade.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/laravel/vs-code-extension/main/LICENSE.md) | | `html-derivative` `html` `xml` `sql` `javascript` `json` `css` | 100.00 kB |
45
45
  | `bsl` | `1c` | [1c-syntax/vsc-language-1c-bsl](https://github.com/1c-syntax/vsc-language-1c-bsl/blob/2cde5a65a17b82b5363affadf5a620ebb0a026dc/syntaxes/1c.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/1c-syntax/vsc-language-1c-bsl/refs/heads/master/LICENSE.md) | | `sdbl` | 32.60 kB |
46
46
  | `c` | | [microsoft/vscode](https://github.com/microsoft/vscode/blob/bd1abe08c38bb5deccf65610f8f3c03d2338d20d/extensions/cpp/syntaxes/c.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | | | 67.93 kB |
@@ -272,7 +272,7 @@ Injections are grammars that are embedded in other grammars. They are used to ag
272
272
  | `es-tag-css` | | [0x00000001A/es6-string-html](https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-css.json) | [MIT](https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE) | [Buy Me A Coffee: **nonholy**](https://www.buymeacoffee.com/nonholy) | `typescript` `css` `javascript` | 1.65 kB |
273
273
  | `es-tag-glsl` | | [0x00000001A/es6-string-html](https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-glsl.json) | [MIT](https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE) | [Buy Me A Coffee: **nonholy**](https://www.buymeacoffee.com/nonholy) | `typescript` `glsl` `javascript` | 1.53 kB |
274
274
  | `es-tag-html` | | [0x00000001A/es6-string-html](https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-html.json) | [MIT](https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE) | [Buy Me A Coffee: **nonholy**](https://www.buymeacoffee.com/nonholy) | `typescript` `html` `javascript` | 1.83 kB |
275
- | `es-tag-sql` | | [0x00000001A/es6-string-html](https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-sql.json) | [MIT](https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE) | [Buy Me A Coffee: **nonholy**](https://www.buymeacoffee.com/nonholy) | `typescript` `sql` | 1.45 kB |
275
+ | `es-tag-sql` | | [frigus02/vscode-sql-tagged-template-literals](https://github.com/frigus02/vscode-sql-tagged-template-literals/blob/80e8ddcb034a3bc66382789d2ca251d0266a9f56/extension-syntax-only/syntaxes/grammar.json) | [MIT](https://raw.githubusercontent.com/frigus02/vscode-sql-tagged-template-literals/main/LICENSE) | | `typescript` `sql` | 7.86 kB |
276
276
  | `es-tag-xml` | | [0x00000001A/es6-string-html](https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-xml.json) | [MIT](https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE) | [Buy Me A Coffee: **nonholy**](https://www.buymeacoffee.com/nonholy) | `xml` | 1.04 kB |
277
277
  | `jinja-html` | | [samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/blob/64ad369cd167bba2e614944db6d925b7dc6483b4/syntaxes/jinja-html.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/samuelcolvin/jinjahtml-vscode/main/LICENSE) | [GitHub Sponsors: **@samuelcolvin**](https://github.com/sponsors/samuelcolvin) | `html` | 465.00 B |
278
278
  | `markdown-nix` | | [nix-community/vscode-nix-ide](https://github.com/nix-community/vscode-nix-ide/blob/e2aff510787a01beb97c6227adbb96e38a60fac4/dist/injection.json) | [MIT](https://raw.githubusercontent.com/nix-community/vscode-nix-ide/main/LICENSE) | [GitHub Sponsors: **@nix-community**](https://github.com/sponsors/nix-community) [Open Collective: **nix-community**](https://opencollective.com/nix-community) | | 762.00 B |
@@ -452,7 +452,7 @@
452
452
  "name": "keyword.other.flowspec.bird"
453
453
  },
454
454
  {
455
- "match": "\\b(?:vpn|mpls|aspa|roa6??)\\b",
455
+ "match": "\\b(?:vpn4|vpn6|mpls|aspa|roa4|roa6)\\b",
456
456
  "name": "keyword.other.address.bird"
457
457
  },
458
458
  {
@@ -1,97 +1,145 @@
1
1
  {
2
- "fileTypes": [
3
- "js",
4
- "jsx",
5
- "ts",
6
- "tsx",
7
- "html",
8
- "vue",
9
- "svelte",
10
- "php",
11
- "res"
12
- ],
13
2
  "injectTo": [
14
3
  "source.ts",
15
4
  "source.js"
16
5
  ],
17
- "injectionSelector": "L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",
18
- "injections": {
19
- "L:source": {
20
- "patterns": [
21
- {
22
- "match": "<",
23
- "name": "invalid.illegal.bad-angle-bracket.html"
24
- }
25
- ]
26
- }
27
- },
6
+ "injectionSelector": "L:source -comment -string",
28
7
  "name": "es-tag-sql",
29
8
  "patterns": [
30
9
  {
31
- "begin": "(?i)\\b(\\w+\\.sql)\\s*(`)",
10
+ "__COMMENT__": "Literals tagged with an sql function (including optional accessors and types), e.g. sql<User>('user-by-id')`SELECT ...`",
11
+ "begin": "(?:([$_[:alpha:]][$_[:alnum:]]*)(?:\\s*(\\??\\.)\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*\\s*(\\??\\.))?\\s*(#?(?i)sql|sqlFragment(?-i))\\s*(?=(?:(\\?\\.\\s*)|(!))?((<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\s*)?\\())",
32
12
  "beginCaptures": {
33
13
  "1": {
34
- "name": "variable.parameter"
14
+ "name": "meta.function-call.ts variable.other.object.ts"
15
+ },
16
+ "2": {
17
+ "name": "meta.function-call.ts punctuation.accessor.optional.ts"
18
+ },
19
+ "3": {
20
+ "name": "meta.function-call.ts variable.other.object.ts"
21
+ },
22
+ "4": {
23
+ "name": "meta.function-call.ts punctuation.accessor.optional.ts"
24
+ },
25
+ "5": {
26
+ "name": "meta.function-call.ts entity.name.function.ts"
35
27
  }
36
28
  },
37
- "end": "(`)",
29
+ "end": "(?<=(`|\\)\\s*[^`\\s]))",
38
30
  "patterns": [
39
31
  {
40
- "include": "source.ts#template-substitution-element"
32
+ "include": "source.ts#comment"
41
33
  },
42
34
  {
43
- "include": "source.ts#string-character-escape"
35
+ "include": "source.ts#function-call-optionals"
44
36
  },
45
37
  {
46
- "include": "source.sql"
38
+ "include": "source.ts#type-arguments"
47
39
  },
48
40
  {
49
- "include": "source.plpgsql.postgres"
41
+ "include": "source.ts#paren-expression"
50
42
  },
51
43
  {
52
- "match": "."
44
+ "include": "#embedded-sql"
53
45
  }
54
46
  ]
55
47
  },
56
48
  {
57
- "begin": "(?i)(\\s?/?\\*?\\s?((?:|inline-)sql)\\s?\\*?/?\\s?)(`)",
49
+ "__COMMENT__": "Literals tagged with an sql comment, e.g. /*sql*/`SELECT ...`",
50
+ "begin": "(/\\*\\s*(?i)sql(?-i)\\s*\\*/)\\s*(?=`)",
58
51
  "beginCaptures": {
59
52
  "1": {
60
- "name": "comment.block"
53
+ "name": "comment.block.ts"
61
54
  }
62
55
  },
63
- "end": "(`)",
56
+ "end": "(?<=`)",
64
57
  "patterns": [
65
58
  {
66
- "include": "source.ts#template-substitution-element"
67
- },
59
+ "include": "#embedded-sql"
60
+ }
61
+ ]
62
+ },
63
+ {
64
+ "__COMMENT__": "Literals tagged with sql (including optional accessors and types), e.g. my.object?.sql<User>`SELECT ...`. This is based on the 1st #template-call pattern in TypeScript.tmLanguage.json",
65
+ "begin": "(?=(([$_[:alpha:]][$_[:alnum:]]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)(#?(?i)sql|sqlFragment(?-i))(<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\s*)?`)",
66
+ "end": "(?<=`)",
67
+ "name": "string.template.ts",
68
+ "patterns": [
68
69
  {
69
- "include": "source.ts#string-character-escape"
70
+ "begin": "(?=(([$_[:alpha:]][$_[:alnum:]]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)(#?(?i)sql|sqlFragment(?-i)))",
71
+ "end": "(?=(<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\s*)?`)",
72
+ "patterns": [
73
+ {
74
+ "include": "source.ts#support-function-call-identifiers"
75
+ },
76
+ {
77
+ "match": "(#?(?i)sql|sqlFragment(?-i))",
78
+ "name": "entity.name.function.tagged-template.ts"
79
+ }
80
+ ]
70
81
  },
71
82
  {
72
- "include": "source.sql"
83
+ "include": "source.ts#type-arguments"
73
84
  },
74
85
  {
75
- "include": "source.plpgsql.postgres"
86
+ "include": "#embedded-sql"
87
+ }
88
+ ]
89
+ },
90
+ {
91
+ "__COMMENT__": "Literals tagged with sql (including optional types), e.g. sql<User>`SELECT ...`. This is based on the 2nd #template-call pattern in TypeScript.tmLanguage.json",
92
+ "begin": "\\b((?i)sql|sqlFragment(?-i))\\s*(?=(<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>|<\\s*(((keyof|infer|awaited|typeof|readonly)\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\{([^{}]|(\\{([^{}]|\\{[^{}]*})*}))*})|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(\\[([^]\\[]|(\\[([^]\\[]|\\[[^]\\[]*])*]))*])|('([^'\\\\]|\\\\.)*')|(\"([^\"\\\\]|\\\\.)*\")|(`([^\\\\`]|\\\\.)*`))(?=\\s*([,.<>\\[]|=>|&(?!&)|\\|(?!\\|)))))([^(<>]|(\\(([^()]|(\\(([^()]|\\([^()]*\\))*\\)))*\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\s*)`)",
93
+ "beginCaptures": {
94
+ "1": {
95
+ "name": "entity.name.function.tagged-template.ts"
96
+ }
97
+ },
98
+ "end": "(?<=`)",
99
+ "name": "string.template.ts",
100
+ "patterns": [
101
+ {
102
+ "include": "source.ts#type-arguments"
76
103
  },
77
104
  {
78
- "match": "."
105
+ "include": "#embedded-sql"
79
106
  }
80
107
  ]
81
108
  },
82
109
  {
83
- "begin": "(?i)(?<=[(,:=\\s]|\\$\\()\\s*(((/\\*)|(//))\\s?((?:|inline-)sql) {0,1000}\\*?/?) {0,1000}$",
110
+ "__COMMENT__": "Literals tagged with sql, e.g. sql`SELECT ...`. This is based on the 2nd #template pattern in TypeScript.tmLanguage.json",
111
+ "begin": "\\b((?i)sql|sqlFragment(?-i))\\s*(?=`)",
84
112
  "beginCaptures": {
85
113
  "1": {
86
- "name": "comment.line"
114
+ "name": "entity.name.function.tagged-template.ts"
87
115
  }
88
116
  },
89
- "end": "(`)",
117
+ "end": "(?<=`)",
118
+ "name": "string.template.ts",
90
119
  "patterns": [
91
120
  {
92
- "begin": "\\G()",
93
- "end": "(`)"
94
- },
121
+ "include": "#embedded-sql"
122
+ }
123
+ ]
124
+ }
125
+ ],
126
+ "repository": {
127
+ "embedded-sql": {
128
+ "begin": "`",
129
+ "beginCaptures": {
130
+ "0": {
131
+ "name": "punctuation.definition.string.template.begin.js"
132
+ }
133
+ },
134
+ "contentName": "meta.embedded.block.sql",
135
+ "end": "`",
136
+ "endCaptures": {
137
+ "0": {
138
+ "name": "punctuation.definition.string.template.end.js"
139
+ }
140
+ },
141
+ "name": "string.template.ts",
142
+ "patterns": [
95
143
  {
96
144
  "include": "source.ts#template-substitution-element"
97
145
  },
@@ -109,6 +157,6 @@
109
157
  }
110
158
  ]
111
159
  }
112
- ],
113
- "scopeName": "inline.es6-sql"
160
+ },
161
+ "scopeName": "inline.tagged-template-sql"
114
162
  }
package/index.js CHANGED
@@ -450,22 +450,22 @@ export const grammars = [
450
450
  aliases: [
451
451
  'bird',
452
452
  ],
453
- byteSize: 16465,
453
+ byteSize: 16474,
454
454
  categories: [
455
455
  'config',
456
456
  ],
457
457
  displayName: 'BIRD2 Configuration',
458
458
  funding: [
459
459
  ],
460
- hash: 'aZeLWzKe0MfMsf4TugV0UubLbnVfmdqzqwjWy3i1kNg',
461
- lastUpdate: '2025-09-26T03:40:53Z',
460
+ hash: 'RPCcGQ6UGeD_poiC9GaDEohu-RR2Wui7cDr0_uUV5Fw',
461
+ lastUpdate: '2026-02-26T13:14:25Z',
462
462
  license: 'MPL-2.0',
463
463
  licenseUrl: 'https://raw.githubusercontent.com/bird-chinese-community/BIRD-tm-language-grammar/main/LICENSE',
464
464
  name: 'bird2',
465
465
  scopeName: 'source.bird2',
466
- sha: '2e82aed3f306941105072adf685a91d75bca0bf6',
467
- source: 'https://github.com/bird-chinese-community/BIRD-tm-language-grammar/blob/2e82aed3f306941105072adf685a91d75bca0bf6/grammars/bird2.tmLanguage.json',
468
- sourceApi: 'https://api.github.com/repos/bird-chinese-community/BIRD-tm-language-grammar/contents/grammars/bird2.tmLanguage.json?ref=2e82aed3f306941105072adf685a91d75bca0bf6',
466
+ sha: '17a8d1d61d4bc1ba719e0025e3f8b283c68eddde',
467
+ source: 'https://github.com/bird-chinese-community/BIRD-tm-language-grammar/blob/17a8d1d61d4bc1ba719e0025e3f8b283c68eddde/grammars/bird2.tmLanguage.json',
468
+ sourceApi: 'https://api.github.com/repos/bird-chinese-community/BIRD-tm-language-grammar/contents/grammars/bird2.tmLanguage.json?ref=17a8d1d61d4bc1ba719e0025e3f8b283c68eddde',
469
469
  },
470
470
  {
471
471
  byteSize: 102405,
@@ -5237,7 +5237,7 @@ export const injections = [
5237
5237
  sourceApi: 'https://api.github.com/repos/0x00000001A/es6-string-html/contents/syntaxes/es6-inline-html.json?ref=b8f51210b53ce64e789949d4be33b7ecb42cf177',
5238
5238
  },
5239
5239
  {
5240
- byteSize: 1483,
5240
+ byteSize: 8046,
5241
5241
  embedded: [
5242
5242
  'typescript',
5243
5243
  'sql',
@@ -5246,25 +5246,20 @@ export const injections = [
5246
5246
  'ts-tags',
5247
5247
  ],
5248
5248
  funding: [
5249
- {
5250
- handle: 'nonholy',
5251
- name: 'Buy Me A Coffee',
5252
- url: 'https://www.buymeacoffee.com/nonholy',
5253
- },
5254
5249
  ],
5255
- hash: '0nxyIHxbOwBjqkgBtKCL-xZPOJ9b-LNJTDdi7VEkB6w',
5250
+ hash: '2AGJ4IowJ_RdN6clwFAQCc7RJnAZdQLa2nleUqKl7BI',
5256
5251
  injectTo: [
5257
5252
  'source.ts',
5258
5253
  'source.js',
5259
5254
  ],
5260
- lastUpdate: '2024-05-10T19:00:53Z',
5255
+ lastUpdate: '2021-02-26T11:51:19Z',
5261
5256
  license: 'MIT',
5262
- licenseUrl: 'https://raw.githubusercontent.com/0x00000001A/es6-string-html/master/LICENSE',
5257
+ licenseUrl: 'https://raw.githubusercontent.com/frigus02/vscode-sql-tagged-template-literals/main/LICENSE',
5263
5258
  name: 'es-tag-sql',
5264
- scopeName: 'inline.es6-sql',
5265
- sha: 'b8f51210b53ce64e789949d4be33b7ecb42cf177',
5266
- source: 'https://github.com/0x00000001A/es6-string-html/blob/b8f51210b53ce64e789949d4be33b7ecb42cf177/syntaxes/es6-inline-sql.json',
5267
- sourceApi: 'https://api.github.com/repos/0x00000001A/es6-string-html/contents/syntaxes/es6-inline-sql.json?ref=b8f51210b53ce64e789949d4be33b7ecb42cf177',
5259
+ scopeName: 'inline.tagged-template-sql',
5260
+ sha: '80e8ddcb034a3bc66382789d2ca251d0266a9f56',
5261
+ source: 'https://github.com/frigus02/vscode-sql-tagged-template-literals/blob/80e8ddcb034a3bc66382789d2ca251d0266a9f56/extension-syntax-only/syntaxes/grammar.json',
5262
+ sourceApi: 'https://api.github.com/repos/frigus02/vscode-sql-tagged-template-literals/contents/extension-syntax-only/syntaxes/grammar.json?ref=80e8ddcb034a3bc66382789d2ca251d0266a9f56',
5268
5263
  },
5269
5264
  {
5270
5265
  byteSize: 1070,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tm-grammars",
3
3
  "type": "module",
4
- "version": "1.31.0",
4
+ "version": "1.31.1",
5
5
  "description": "Collecton of TextMate grammars in JSON",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",