ts-wasms 1.0.6 → 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.
Files changed (247) hide show
  1. package/README.md +26 -9
  2. package/index.d.ts +102 -0
  3. package/index.js +27 -0
  4. package/out/angular/folds.scm +1 -0
  5. package/out/angular/highlights.scm +178 -0
  6. package/out/angular/indents.scm +16 -0
  7. package/out/angular/injections.scm +1 -0
  8. package/out/angular/locals.scm +1 -0
  9. package/out/angular/tree-sitter-angular.wasm +0 -0
  10. package/out/asm/highlights.scm +66 -0
  11. package/out/asm/injections.scm +5 -0
  12. package/out/asm/tree-sitter-asm.wasm +0 -0
  13. package/out/astro/folds.scm +1 -0
  14. package/out/astro/highlights.scm +12 -0
  15. package/out/astro/indents.scm +1 -0
  16. package/out/astro/injections.scm +27 -0
  17. package/out/astro/locals.scm +1 -0
  18. package/out/astro/tree-sitter-astro.wasm +0 -0
  19. package/out/bash/folds.scm +9 -0
  20. package/out/bash/indents.scm +32 -0
  21. package/out/bash/injections.scm +90 -0
  22. package/out/bash/locals.scm +14 -0
  23. package/out/c/folds.scm +23 -0
  24. package/out/c/indents.scm +99 -0
  25. package/out/c/injections.scm +128 -0
  26. package/out/c/locals.scm +67 -0
  27. package/out/clojure/folds.scm +2 -0
  28. package/out/clojure/injections.scm +2 -0
  29. package/out/clojure/locals.scm +1 -0
  30. package/out/cmake/folds.scm +8 -0
  31. package/out/cmake/highlights.scm +221 -0
  32. package/out/cmake/indents.scm +26 -0
  33. package/out/cmake/injections.scm +5 -0
  34. package/out/cmake/tree-sitter-cmake.wasm +0 -0
  35. package/out/comment/highlights.scm +49 -0
  36. package/out/comment/tree-sitter-comment.wasm +0 -0
  37. package/out/commonlisp/folds.scm +2 -0
  38. package/out/commonlisp/highlights.scm +314 -0
  39. package/out/commonlisp/injections.scm +5 -0
  40. package/out/commonlisp/locals.scm +109 -0
  41. package/out/cpp/folds.scm +14 -0
  42. package/out/cpp/indents.scm +8 -0
  43. package/out/cpp/locals.scm +78 -0
  44. package/out/css/folds.scm +10 -0
  45. package/out/css/indents.scm +11 -0
  46. package/out/css/injections.scm +2 -0
  47. package/out/csv/highlights.scm +5 -0
  48. package/out/csv/tree-sitter-csv.wasm +0 -0
  49. package/out/csv-psv/highlights.scm +5 -0
  50. package/out/csv-psv/tree-sitter-csv-psv.wasm +0 -0
  51. package/out/csv-tsv/highlights.scm +4 -0
  52. package/out/csv-tsv/tree-sitter-csv-tsv.wasm +0 -0
  53. package/out/dart/indents.scm +49 -0
  54. package/out/dart/injections.scm +2 -0
  55. package/out/dart/locals.scm +32 -0
  56. package/out/diff/folds.scm +5 -0
  57. package/out/diff/highlights.scm +49 -0
  58. package/out/diff/injections.scm +2 -0
  59. package/out/diff/tree-sitter-diff.wasm +0 -0
  60. package/out/dockerfile/highlights.scm +58 -0
  61. package/out/dockerfile/injections.scm +12 -0
  62. package/out/dockerfile/tree-sitter-dockerfile.wasm +0 -0
  63. package/out/dtd/folds.scm +4 -0
  64. package/out/dtd/highlights.scm +148 -0
  65. package/out/dtd/injections.scm +2 -0
  66. package/out/dtd/locals.scm +11 -0
  67. package/out/editorconfig/folds.scm +1 -0
  68. package/out/editorconfig/highlights.scm +35 -0
  69. package/out/editorconfig/injections.scm +2 -0
  70. package/out/editorconfig/tree-sitter-editorconfig.wasm +0 -0
  71. package/out/elixir/folds.scm +10 -0
  72. package/out/elixir/indents.scm +25 -0
  73. package/out/elixir/locals.scm +200 -0
  74. package/out/elm/folds.scm +14 -0
  75. package/out/erlang/folds.scm +9 -0
  76. package/out/erlang/injections.scm +2 -0
  77. package/out/fish/folds.scm +8 -0
  78. package/out/fish/highlights.scm +61 -0
  79. package/out/fish/indents.scm +18 -0
  80. package/out/fish/injections.scm +2 -0
  81. package/out/fish/locals.scm +19 -0
  82. package/out/fish/tree-sitter-fish.wasm +0 -0
  83. package/out/gdscript/folds.scm +26 -0
  84. package/out/gdscript/highlights.scm +635 -0
  85. package/out/gdscript/indents.scm +78 -0
  86. package/out/gdscript/injections.scm +2 -0
  87. package/out/gdscript/locals.scm +121 -0
  88. package/out/gdscript/tree-sitter-gdscript.wasm +0 -0
  89. package/out/gdshader/highlights.scm +256 -0
  90. package/out/gdshader/injections.scm +2 -0
  91. package/out/gdshader/locals.scm +24 -0
  92. package/out/gdshader/tags.scm +13 -0
  93. package/out/gdshader/tree-sitter-gdshader.wasm +0 -0
  94. package/out/git-config/highlights.scm +28 -0
  95. package/out/git-config/tree-sitter-git-config.wasm +0 -0
  96. package/out/git-rebase/highlights.scm +36 -0
  97. package/out/git-rebase/tree-sitter-git-rebase.wasm +0 -0
  98. package/out/gitattributes/highlights.scm +52 -0
  99. package/out/gitattributes/injections.scm +2 -0
  100. package/out/gitattributes/locals.scm +8 -0
  101. package/out/gitattributes/tree-sitter-gitattributes.wasm +0 -0
  102. package/out/gitignore/highlights.scm +36 -0
  103. package/out/gitignore/injections.scm +2 -0
  104. package/out/gitignore/tree-sitter-gitignore.wasm +0 -0
  105. package/out/go/folds.scm +19 -0
  106. package/out/go/indents.scm +48 -0
  107. package/out/go/injections.scm +42 -0
  108. package/out/go/locals.scm +88 -0
  109. package/out/godot-resource/tree-sitter-godot-resource.wasm +0 -0
  110. package/out/graphql/highlights.scm +163 -0
  111. package/out/graphql/indents.scm +11 -0
  112. package/out/graphql/injections.scm +2 -0
  113. package/out/groovy/folds.scm +6 -0
  114. package/out/groovy/highlights.scm +148 -0
  115. package/out/groovy/indents.scm +23 -0
  116. package/out/groovy/injections.scm +5 -0
  117. package/out/groovy/locals.scm +6 -0
  118. package/out/groovy/tree-sitter-groovy.wasm +0 -0
  119. package/out/haskell/folds.scm +6 -0
  120. package/out/hcl/folds.scm +6 -0
  121. package/out/hcl/highlights.scm +118 -0
  122. package/out/hcl/indents.scm +16 -0
  123. package/out/hcl/injections.scm +6 -0
  124. package/out/html/folds.scm +5 -0
  125. package/out/html/indents.scm +1 -0
  126. package/out/html/locals.scm +1 -0
  127. package/out/ini/folds.scm +1 -0
  128. package/out/ini/highlights.scm +16 -0
  129. package/out/ini/injections.scm +3 -0
  130. package/out/ini/tree-sitter-ini.wasm +0 -0
  131. package/out/java/folds.scm +8 -0
  132. package/out/java/indents.scm +40 -0
  133. package/out/java/injections.scm +31 -0
  134. package/out/java/locals.scm +100 -0
  135. package/out/javascript/folds.scm +1 -0
  136. package/out/javascript/indents.scm +1 -0
  137. package/out/json/folds.scm +5 -0
  138. package/out/json/indents.scm +11 -0
  139. package/out/json/injections.scm +2 -0
  140. package/out/json/locals.scm +4 -0
  141. package/out/julia/folds.scm +14 -0
  142. package/out/julia/indents.scm +52 -0
  143. package/out/kotlin/folds.scm +13 -0
  144. package/out/kotlin/injections.scm +52 -0
  145. package/out/kotlin/locals.scm +78 -0
  146. package/out/lua/folds.scm +12 -0
  147. package/out/lua/indents.scm +47 -0
  148. package/out/markdown/folds.scm +12 -0
  149. package/out/markdown/indents.scm +1 -0
  150. package/out/matlab/folds.scm +13 -0
  151. package/out/matlab/highlights.scm +218 -0
  152. package/out/matlab/indents.scm +40 -0
  153. package/out/matlab/injections.scm +2 -0
  154. package/out/matlab/locals.scm +33 -0
  155. package/out/matlab/tree-sitter-matlab.wasm +0 -0
  156. package/out/nim/folds.scm +41 -0
  157. package/out/nim/highlights.scm +186 -0
  158. package/out/nim/injections.scm +79 -0
  159. package/out/nim/locals.scm +328 -0
  160. package/out/nim/tree-sitter-nim.wasm +0 -0
  161. package/out/nix/folds.scm +11 -0
  162. package/out/nix/indents.scm +75 -0
  163. package/out/ocaml/folds.scm +30 -0
  164. package/out/ocaml/indents.scm +77 -0
  165. package/out/ocaml/injections.scm +2 -0
  166. package/out/php/folds.scm +1 -0
  167. package/out/php/indents.scm +1 -0
  168. package/out/php/locals.scm +1 -0
  169. package/out/prisma/folds.scm +7 -0
  170. package/out/prisma/injections.scm +5 -0
  171. package/out/python/folds.scm +28 -0
  172. package/out/python/indents.scm +213 -0
  173. package/out/python/injections.scm +30 -0
  174. package/out/python/locals.scm +124 -0
  175. package/out/qmljs/folds.scm +8 -0
  176. package/out/qmljs/highlights.scm +61 -0
  177. package/out/qmljs/injections.scm +1 -0
  178. package/out/qmljs/locals.scm +6 -0
  179. package/out/qmljs/tree-sitter-qmljs.wasm +0 -0
  180. package/out/query/folds.scm +6 -0
  181. package/out/query/highlights.scm +102 -0
  182. package/out/query/indents.scm +25 -0
  183. package/out/query/injections.scm +28 -0
  184. package/out/query/locals.scm +21 -0
  185. package/out/r/indents.scm +33 -0
  186. package/out/r/injections.scm +2 -0
  187. package/out/racket/folds.scm +2 -0
  188. package/out/racket/injections.scm +5 -0
  189. package/out/ruby/folds.scm +12 -0
  190. package/out/ruby/indents.scm +43 -0
  191. package/out/ruby/injections.scm +34 -0
  192. package/out/rust/folds.scm +25 -0
  193. package/out/rust/indents.scm +133 -0
  194. package/out/rust/locals.scm +98 -0
  195. package/out/scala/folds.scm +16 -0
  196. package/out/scala/injections.scm +5 -0
  197. package/out/scheme/folds.scm +2 -0
  198. package/out/scheme/injections.scm +2 -0
  199. package/out/scss/folds.scm +1 -0
  200. package/out/scss/indents.scm +7 -0
  201. package/out/scss/injections.scm +2 -0
  202. package/out/sql/folds.scm +1 -0
  203. package/out/sql/highlights.scm +445 -0
  204. package/out/sql/indents.scm +27 -0
  205. package/out/sql/injections.scm +5 -0
  206. package/out/sql/tree-sitter-sql.wasm +0 -0
  207. package/out/terraform/folds.scm +1 -0
  208. package/out/terraform/highlights.scm +41 -0
  209. package/out/terraform/indents.scm +1 -0
  210. package/out/terraform/injections.scm +1 -0
  211. package/out/toml/folds.scm +5 -0
  212. package/out/toml/indents.scm +11 -0
  213. package/out/toml/injections.scm +2 -0
  214. package/out/toml/locals.scm +4 -0
  215. package/out/tsx/folds.scm +1 -0
  216. package/out/tsx/indents.scm +1 -0
  217. package/out/tsx/injections.scm +1 -0
  218. package/out/typescript/folds.scm +8 -0
  219. package/out/typescript/indents.scm +7 -0
  220. package/out/typescript/injections.scm +28 -0
  221. package/out/vim/folds.scm +4 -0
  222. package/out/vim/highlights.scm +362 -0
  223. package/out/vim/injections.scm +44 -0
  224. package/out/vim/locals.scm +19 -0
  225. package/out/vim/tree-sitter-vim.wasm +0 -0
  226. package/out/vimdoc/highlights.scm +74 -0
  227. package/out/vimdoc/injections.scm +4 -0
  228. package/out/vue/folds.scm +6 -0
  229. package/out/vue/highlights.scm +54 -0
  230. package/out/vue/indents.scm +7 -0
  231. package/out/vue/injections.scm +78 -0
  232. package/out/vue/tree-sitter-vue.wasm +0 -0
  233. package/out/xml/folds.scm +5 -0
  234. package/out/xml/highlights.scm +198 -0
  235. package/out/xml/indents.scm +16 -0
  236. package/out/xml/injections.scm +32 -0
  237. package/out/xml/locals.scm +35 -0
  238. package/out/yaml/folds.scm +4 -0
  239. package/out/yaml/highlights.scm +79 -0
  240. package/out/yaml/indents.scm +7 -0
  241. package/out/yaml/injections.scm +81 -0
  242. package/out/yaml/locals.scm +9 -0
  243. package/out/yaml/tree-sitter-yaml.wasm +0 -0
  244. package/out/zig/locals.scm +96 -0
  245. package/package.json +61 -19
  246. package/out/clojurescript/highlights.scm +0 -29
  247. package/out/clojurescript/tree-sitter-clojurescript.wasm +0 -0
@@ -0,0 +1,16 @@
1
+ [
2
+ (block)
3
+ (object)
4
+ (tuple)
5
+ (function_call)
6
+ ] @indent.begin
7
+
8
+ [
9
+ "]"
10
+ ")"
11
+ "}"
12
+ ] @indent.branch @indent.end
13
+
14
+ (comment) @indent.auto
15
+
16
+ (ERROR) @indent.auto
@@ -0,0 +1,6 @@
1
+ ((comment) @injection.content
2
+ (#set! injection.language "comment"))
3
+
4
+ (heredoc_template
5
+ (template_literal) @injection.content
6
+ (heredoc_identifier) @injection.language)
@@ -0,0 +1,5 @@
1
+ [
2
+ (element)
3
+ (style_element)
4
+ (script_element)
5
+ ] @fold
@@ -0,0 +1 @@
1
+ ; inherits: html_tags
@@ -0,0 +1 @@
1
+ (element) @local.scope
@@ -0,0 +1 @@
1
+ (section) @fold
@@ -0,0 +1,16 @@
1
+ (section_name
2
+ (text) @type) ; consistency with toml
3
+
4
+ (comment) @comment @spell
5
+
6
+ [
7
+ "["
8
+ "]"
9
+ ] @punctuation.bracket
10
+
11
+ "=" @operator
12
+
13
+ (setting
14
+ (setting_name) @property)
15
+
16
+ ; (setting_value) @none ; grammar does not support subtypes
@@ -0,0 +1,3 @@
1
+ ((comment
2
+ (text) @injection.content)
3
+ (#set! injection.language "comment"))
Binary file
@@ -0,0 +1,8 @@
1
+ [
2
+ (block)
3
+ (class_body)
4
+ (constructor_declaration)
5
+ (argument_list)
6
+ (annotation_argument_list)
7
+ (import_declaration)+
8
+ ] @fold
@@ -0,0 +1,40 @@
1
+ ; format-ignore
2
+ [
3
+ ; ... refers to the portion that this indent query will have effects on
4
+ (class_body) ; { ... } of `class X`
5
+ (enum_body) ; { ... } of `enum X`
6
+ (interface_body) ; { ... } of `interface X`
7
+ (constructor_body) ; { `modifier` X() {...} } inside `class X`
8
+ (annotation_type_body) ; { ... } of `@interface X`
9
+ (block) ; { ... } that's not mentioned in this scope
10
+ (switch_block) ; { ... } in `switch X`
11
+ (array_initializer) ; [1, 2]
12
+ (argument_list) ; foo(...)
13
+ (formal_parameters) ; method foo(...)
14
+ (annotation_argument_list) ; @Annotation(...)
15
+ (element_value_array_initializer) ; { a, b } inside @Annotation()
16
+ ] @indent.begin
17
+
18
+ (expression_statement
19
+ (method_invocation) @indent.begin)
20
+
21
+ [
22
+ "("
23
+ ")"
24
+ "{"
25
+ "}"
26
+ "["
27
+ "]"
28
+ ] @indent.branch
29
+
30
+ (annotation_argument_list
31
+ ")" @indent.end) ; This should be a special cased as `()` here doesn't have ending `;`
32
+
33
+ "}" @indent.end
34
+
35
+ (line_comment) @indent.ignore
36
+
37
+ [
38
+ (ERROR)
39
+ (block_comment)
40
+ ] @indent.auto
@@ -0,0 +1,31 @@
1
+ ([
2
+ (block_comment)
3
+ (line_comment)
4
+ ] @injection.content
5
+ (#set! injection.language "comment"))
6
+
7
+ ((block_comment) @injection.content
8
+ (#lua-match? @injection.content "/[*][*][%s]")
9
+ (#set! injection.language "javadoc"))
10
+
11
+ ; markdown-style javadocs https://openjdk.org/jeps/467
12
+ ((line_comment) @injection.content
13
+ (#lua-match? @injection.content "^///%s")
14
+ (#set! injection.language "javadoc"))
15
+
16
+ ((method_invocation
17
+ name: (identifier) @_method
18
+ arguments: (argument_list
19
+ .
20
+ (string_literal
21
+ .
22
+ (_) @injection.content)))
23
+ (#any-of? @_method "format" "printf")
24
+ (#set! injection.language "printf"))
25
+
26
+ ((method_invocation
27
+ object: (string_literal
28
+ (string_fragment) @injection.content)
29
+ name: (identifier) @_method)
30
+ (#eq? @_method "formatted")
31
+ (#set! injection.language "printf"))
@@ -0,0 +1,100 @@
1
+ ; SCOPES
2
+ ; declarations
3
+ (program) @local.scope
4
+
5
+ (class_declaration
6
+ body: (_) @local.scope)
7
+
8
+ (record_declaration
9
+ body: (_) @local.scope)
10
+
11
+ (enum_declaration
12
+ body: (_) @local.scope)
13
+
14
+ (lambda_expression) @local.scope
15
+
16
+ (enhanced_for_statement) @local.scope
17
+
18
+ ; block
19
+ (block) @local.scope
20
+
21
+ ; if/else
22
+ (if_statement) @local.scope ; if+else
23
+
24
+ (if_statement
25
+ consequence: (_) @local.scope) ; if body in case there are no braces
26
+
27
+ (if_statement
28
+ alternative: (_) @local.scope) ; else body in case there are no braces
29
+
30
+ ; try/catch
31
+ (try_statement) @local.scope ; covers try+catch, individual try and catch are covered by (block)
32
+
33
+ (catch_clause) @local.scope ; needed because `Exception` variable
34
+
35
+ ; loops
36
+ (for_statement) @local.scope ; whole for_statement because loop iterator variable
37
+
38
+ (for_statement
39
+ ; "for" body in case there are no braces
40
+ body: (_) @local.scope)
41
+
42
+ (do_statement
43
+ body: (_) @local.scope)
44
+
45
+ (while_statement
46
+ body: (_) @local.scope)
47
+
48
+ ; Functions
49
+ (constructor_declaration) @local.scope
50
+
51
+ (method_declaration) @local.scope
52
+
53
+ ; DEFINITIONS
54
+ (package_declaration
55
+ (identifier) @local.definition.namespace)
56
+
57
+ (class_declaration
58
+ name: (identifier) @local.definition.type)
59
+
60
+ (record_declaration
61
+ name: (identifier) @local.definition.type)
62
+
63
+ (enum_declaration
64
+ name: (identifier) @local.definition.enum)
65
+
66
+ (method_declaration
67
+ name: (identifier) @local.definition.method)
68
+
69
+ (local_variable_declaration
70
+ declarator: (variable_declarator
71
+ name: (identifier) @local.definition.var))
72
+
73
+ (enhanced_for_statement
74
+ ; for (var item : items) {
75
+ name: (identifier) @local.definition.var)
76
+
77
+ (formal_parameter
78
+ name: (identifier) @local.definition.parameter)
79
+
80
+ (catch_formal_parameter
81
+ name: (identifier) @local.definition.parameter)
82
+
83
+ (inferred_parameters
84
+ (identifier) @local.definition.parameter) ; (x,y) -> ...
85
+
86
+ (lambda_expression
87
+ parameters: (identifier) @local.definition.parameter) ; x -> ...
88
+
89
+ ((scoped_identifier
90
+ (identifier) @local.definition.import)
91
+ (#has-ancestor? @local.definition.import import_declaration))
92
+
93
+ (field_declaration
94
+ declarator: (variable_declarator
95
+ name: (identifier) @local.definition.field))
96
+
97
+ ; REFERENCES
98
+ (identifier) @local.reference
99
+
100
+ (type_identifier) @local.reference
@@ -0,0 +1 @@
1
+ ; inherits: ecma,jsx
@@ -0,0 +1 @@
1
+ ; inherits: ecma,jsx
@@ -0,0 +1,5 @@
1
+ [
2
+ (pair)
3
+ (object)
4
+ (array)
5
+ ] @fold
@@ -0,0 +1,11 @@
1
+ [
2
+ (object)
3
+ (array)
4
+ ] @indent.begin
5
+
6
+ [
7
+ "}"
8
+ "]"
9
+ ] @indent.branch
10
+
11
+ (comment) @indent.ignore
@@ -0,0 +1,2 @@
1
+ ((comment) @injection.content
2
+ (#set! injection.language "comment"))
@@ -0,0 +1,4 @@
1
+ [
2
+ (object)
3
+ (array)
4
+ ] @local.scope
@@ -0,0 +1,14 @@
1
+ [
2
+ (module_definition)
3
+ (struct_definition)
4
+ (macro_definition)
5
+ (function_definition)
6
+ (if_statement)
7
+ (try_statement)
8
+ (for_statement)
9
+ (while_statement)
10
+ (let_statement)
11
+ (quote_statement)
12
+ (do_clause)
13
+ (compound_statement)
14
+ ] @fold
@@ -0,0 +1,52 @@
1
+ [
2
+ (struct_definition)
3
+ (macro_definition)
4
+ (function_definition)
5
+ (compound_statement)
6
+ (if_statement)
7
+ (try_statement)
8
+ (for_statement)
9
+ (while_statement)
10
+ (let_statement)
11
+ (quote_statement)
12
+ (do_clause)
13
+ (assignment)
14
+ (for_binding)
15
+ (call_expression)
16
+ (parenthesized_expression)
17
+ (tuple_expression)
18
+ (comprehension_expression)
19
+ (matrix_expression)
20
+ (vector_expression)
21
+ ] @indent.begin
22
+
23
+ [
24
+ "end"
25
+ ")"
26
+ "]"
27
+ "}"
28
+ ] @indent.end
29
+
30
+ [
31
+ "end"
32
+ ")"
33
+ "]"
34
+ "}"
35
+ (else_clause)
36
+ (elseif_clause)
37
+ (catch_clause)
38
+ (finally_clause)
39
+ ] @indent.branch
40
+
41
+ [
42
+ (line_comment)
43
+ (block_comment)
44
+ ] @indent.ignore
45
+
46
+ ((argument_list) @indent.align
47
+ (#set! indent.open_delimiter "(")
48
+ (#set! indent.close_delimiter ")"))
49
+
50
+ ((curly_expression) @indent.align
51
+ (#set! indent.open_delimiter "{")
52
+ (#set! indent.close_delimiter "}"))
@@ -0,0 +1,13 @@
1
+ [
2
+ (import_list)
3
+ (when_expression)
4
+ (control_structure_body)
5
+ (lambda_literal)
6
+ (function_body)
7
+ (primary_constructor)
8
+ (secondary_constructor)
9
+ (anonymous_initializer)
10
+ (class_body)
11
+ (enum_class_body)
12
+ (interpolated_expression)
13
+ ] @fold
@@ -0,0 +1,52 @@
1
+ ([
2
+ (line_comment)
3
+ (multiline_comment)
4
+ ] @injection.content
5
+ (#set! injection.language "comment"))
6
+
7
+ ; There are 3 ways to define a regex
8
+ ; - "[abc]?".toRegex()
9
+ (call_expression
10
+ (navigation_expression
11
+ ((string_literal
12
+ (string_content) @injection.content)
13
+ (#set! injection.language "regex"))
14
+ (navigation_suffix
15
+ ((simple_identifier) @_function
16
+ (#eq? @_function "toRegex")))))
17
+
18
+ ; - Regex("[abc]?")
19
+ (call_expression
20
+ ((simple_identifier) @_function
21
+ (#eq? @_function "Regex"))
22
+ (call_suffix
23
+ (value_arguments
24
+ (value_argument
25
+ (string_literal
26
+ (string_content) @injection.content)
27
+ (#set! injection.language "regex")))))
28
+
29
+ ; - Regex.fromLiteral("[abc]?")
30
+ (call_expression
31
+ (navigation_expression
32
+ ((simple_identifier) @_class
33
+ (#eq? @_class "Regex"))
34
+ (navigation_suffix
35
+ ((simple_identifier) @_function
36
+ (#eq? @_function "fromLiteral"))))
37
+ (call_suffix
38
+ (value_arguments
39
+ (value_argument
40
+ (string_literal
41
+ (string_content) @injection.content)
42
+ (#set! injection.language "regex")))))
43
+
44
+ ; "pi = %.2f".format(3.14159)
45
+ ((call_expression
46
+ (navigation_expression
47
+ (string_literal
48
+ (string_content) @injection.content)
49
+ (navigation_suffix
50
+ (simple_identifier) @_method)))
51
+ (#eq? @_method "format")
52
+ (#set! injection.language "printf"))
@@ -0,0 +1,78 @@
1
+ ; Imports
2
+ (package_header
3
+ .
4
+ (identifier) @local.definition.namespace)
5
+
6
+ (import_header
7
+ (identifier
8
+ (simple_identifier) @local.definition.import .)
9
+ (import_alias
10
+ (type_identifier) @local.definition.import)?)
11
+
12
+ ; Functions
13
+ (function_declaration
14
+ .
15
+ (simple_identifier) @local.definition.function
16
+ (#set! definition.function.scope "parent"))
17
+
18
+ (class_body
19
+ (function_declaration
20
+ .
21
+ (simple_identifier) @local.definition.method)
22
+ (#set! definition.method.scope "parent"))
23
+
24
+ ; Variables
25
+ (function_declaration
26
+ (function_value_parameters
27
+ (parameter
28
+ (simple_identifier) @local.definition.parameter)))
29
+
30
+ (lambda_literal
31
+ (lambda_parameters
32
+ (variable_declaration
33
+ (simple_identifier) @local.definition.parameter)))
34
+
35
+ ; NOTE: temporary fix for treesitter bug that causes delay in file opening
36
+ ;(class_body
37
+ ; (property_declaration
38
+ ; (variable_declaration
39
+ ; (simple_identifier) @local.definition.field)))
40
+ (class_declaration
41
+ (primary_constructor
42
+ (class_parameter
43
+ (simple_identifier) @local.definition.field)))
44
+
45
+ (enum_class_body
46
+ (enum_entry
47
+ (simple_identifier) @local.definition.field))
48
+
49
+ (variable_declaration
50
+ (simple_identifier) @local.definition.var)
51
+
52
+ ; Types
53
+ (class_declaration
54
+ (type_identifier) @local.definition.type
55
+ (#set! definition.type.scope "parent"))
56
+
57
+ (type_alias
58
+ (type_identifier) @local.definition.type
59
+ (#set! definition.type.scope "parent"))
60
+
61
+ ; Scopes
62
+ [
63
+ (if_expression)
64
+ (when_expression)
65
+ (when_entry)
66
+ (for_statement)
67
+ (while_statement)
68
+ (do_while_statement)
69
+ (lambda_literal)
70
+ (function_declaration)
71
+ (primary_constructor)
72
+ (secondary_constructor)
73
+ (anonymous_initializer)
74
+ (class_declaration)
75
+ (enum_class_body)
76
+ (enum_entry)
77
+ (interpolated_expression)
78
+ ] @local.scope
@@ -0,0 +1,12 @@
1
+ [
2
+ (do_statement)
3
+ (while_statement)
4
+ (repeat_statement)
5
+ (if_statement)
6
+ (for_statement)
7
+ (function_declaration)
8
+ (function_definition)
9
+ (parameters)
10
+ (arguments)
11
+ (table_constructor)
12
+ ] @fold
@@ -0,0 +1,47 @@
1
+ [
2
+ (function_definition)
3
+ (function_declaration)
4
+ (field)
5
+ (do_statement)
6
+ (method_index_expression)
7
+ (while_statement)
8
+ (repeat_statement)
9
+ (if_statement)
10
+ "then"
11
+ (for_statement)
12
+ (return_statement)
13
+ (table_constructor)
14
+ (arguments)
15
+ ] @indent.begin
16
+
17
+ [
18
+ "end"
19
+ "}"
20
+ "]]"
21
+ ] @indent.end
22
+
23
+ (")" @indent.end
24
+ (#not-has-parent? @indent.end parameters))
25
+
26
+ (return_statement
27
+ (expression_list
28
+ (function_call))) @indent.dedent
29
+
30
+ [
31
+ "end"
32
+ "then"
33
+ "until"
34
+ "}"
35
+ ")"
36
+ "elseif"
37
+ (elseif_statement)
38
+ "else"
39
+ (else_statement)
40
+ ] @indent.branch
41
+
42
+ (comment) @indent.auto
43
+
44
+ (string) @indent.auto
45
+
46
+ (ERROR
47
+ "function") @indent.begin
@@ -0,0 +1,12 @@
1
+ ([
2
+ (fenced_code_block)
3
+ (indented_code_block)
4
+ (list_item
5
+ (list))
6
+ (section)
7
+ ] @fold
8
+ (#trim! @fold))
9
+
10
+ (section
11
+ (list) @fold
12
+ (#trim! @fold))
@@ -0,0 +1 @@
1
+ (list_item) @indent.auto
@@ -0,0 +1,13 @@
1
+ [
2
+ (if_statement)
3
+ (for_statement)
4
+ (while_statement)
5
+ (switch_statement)
6
+ (try_statement)
7
+ (function_definition)
8
+ (class_definition)
9
+ (enumeration)
10
+ (events)
11
+ (methods)
12
+ (properties)
13
+ ] @fold