ts-wasms 1.1.0 → 3.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 (362) hide show
  1. package/README.md +33 -9
  2. package/index.d.ts +116 -0
  3. package/index.js +48 -0
  4. package/manifest.json +622 -0
  5. package/out/ada/folds.scm +15 -0
  6. package/out/ada/highlights.scm +196 -0
  7. package/out/ada/injections.scm +2 -0
  8. package/out/ada/locals.scm +33 -0
  9. package/out/ada/textobjects.scm +23 -0
  10. package/out/ada/tree-sitter-ada.wasm +0 -0
  11. package/out/angular/folds.scm +1 -0
  12. package/out/angular/highlights.scm +178 -0
  13. package/out/angular/indents.scm +16 -0
  14. package/out/angular/injections.scm +1 -0
  15. package/out/angular/locals.scm +1 -0
  16. package/out/angular/tree-sitter-angular.wasm +0 -0
  17. package/out/arduino/folds.scm +1 -0
  18. package/out/arduino/highlights.scm +48 -0
  19. package/out/arduino/indents.scm +1 -0
  20. package/out/arduino/injections.scm +1 -0
  21. package/out/arduino/locals.scm +1 -0
  22. package/out/arduino/tags.scm +5 -0
  23. package/out/arduino/tree-sitter-arduino.wasm +0 -0
  24. package/out/asm/highlights.scm +66 -0
  25. package/out/asm/injections.scm +5 -0
  26. package/out/asm/tree-sitter-asm.wasm +0 -0
  27. package/out/astro/folds.scm +1 -0
  28. package/out/astro/highlights.scm +12 -0
  29. package/out/astro/indents.scm +1 -0
  30. package/out/astro/injections.scm +27 -0
  31. package/out/astro/locals.scm +1 -0
  32. package/out/astro/tree-sitter-astro.wasm +0 -0
  33. package/out/awk/highlights.scm +122 -0
  34. package/out/awk/injections.scm +17 -0
  35. package/out/awk/tree-sitter-awk.wasm +0 -0
  36. package/out/bash/folds.scm +9 -0
  37. package/out/bash/indents.scm +32 -0
  38. package/out/bash/injections.scm +90 -0
  39. package/out/bash/locals.scm +14 -0
  40. package/out/bibtex/folds.scm +1 -0
  41. package/out/bibtex/highlights.scm +47 -0
  42. package/out/bibtex/indents.scm +8 -0
  43. package/out/bibtex/injections.scm +2 -0
  44. package/out/bibtex/locals.scm +0 -0
  45. package/out/bibtex/tags.scm +0 -0
  46. package/out/bibtex/tree-sitter-bibtex.wasm +0 -0
  47. package/out/c/folds.scm +23 -0
  48. package/out/c/indents.scm +99 -0
  49. package/out/c/injections.scm +128 -0
  50. package/out/c/locals.scm +67 -0
  51. package/out/cairo/folds.scm +26 -0
  52. package/out/cairo/highlights.scm +372 -0
  53. package/out/cairo/indents.scm +134 -0
  54. package/out/cairo/injections.scm +3 -0
  55. package/out/cairo/locals.scm +28 -0
  56. package/out/cairo/textobjects.scm +79 -0
  57. package/out/cairo/tree-sitter-cairo.wasm +0 -0
  58. package/out/clojure/folds.scm +2 -0
  59. package/out/clojure/injections.scm +2 -0
  60. package/out/clojure/locals.scm +1 -0
  61. package/out/cmake/folds.scm +8 -0
  62. package/out/cmake/highlights.scm +221 -0
  63. package/out/cmake/indents.scm +26 -0
  64. package/out/cmake/injections.scm +5 -0
  65. package/out/cmake/tree-sitter-cmake.wasm +0 -0
  66. package/out/comment/highlights.scm +49 -0
  67. package/out/comment/tree-sitter-comment.wasm +0 -0
  68. package/out/commonlisp/folds.scm +2 -0
  69. package/out/commonlisp/injections.scm +5 -0
  70. package/out/commonlisp/locals.scm +109 -0
  71. package/out/cpp/folds.scm +14 -0
  72. package/out/cpp/indents.scm +8 -0
  73. package/out/cpp/locals.scm +78 -0
  74. package/out/css/folds.scm +10 -0
  75. package/out/css/indents.scm +11 -0
  76. package/out/css/injections.scm +2 -0
  77. package/out/csv/highlights.scm +5 -0
  78. package/out/csv/tree-sitter-csv.wasm +0 -0
  79. package/out/cuda/folds.scm +1 -0
  80. package/out/cuda/highlights.scm +17 -0
  81. package/out/cuda/indents.scm +1 -0
  82. package/out/cuda/injections.scm +1 -0
  83. package/out/cuda/locals.scm +1 -0
  84. package/out/cuda/tree-sitter-cuda.wasm +0 -0
  85. package/out/d/folds.scm +4 -0
  86. package/out/d/helix-highlights.scm +241 -0
  87. package/out/d/helix-indents.scm +17 -0
  88. package/out/d/helix-injections.scm +2 -0
  89. package/out/d/helix-textobjects.scm +9 -0
  90. package/out/d/highlights.scm +259 -0
  91. package/out/d/indents.scm +17 -0
  92. package/out/d/injections.scm +2 -0
  93. package/out/d/locals.scm +79 -0
  94. package/out/d/nova-folds.scm +6 -0
  95. package/out/d/nova-highlights.scm +283 -0
  96. package/out/d/nova-symbols.scm +23 -0
  97. package/out/d/tags.scm +28 -0
  98. package/out/d/textobjects.scm +9 -0
  99. package/out/d/tree-sitter-d.wasm +0 -0
  100. package/out/dart/indents.scm +49 -0
  101. package/out/dart/injections.scm +2 -0
  102. package/out/dart/locals.scm +32 -0
  103. package/out/desktop/folds.scm +1 -0
  104. package/out/desktop/highlights.scm +91 -0
  105. package/out/desktop/injections.scm +8 -0
  106. package/out/desktop/tree-sitter-desktop.wasm +0 -0
  107. package/out/devicetree/folds.scm +1 -0
  108. package/out/devicetree/highlights.scm +78 -0
  109. package/out/devicetree/indents.scm +12 -0
  110. package/out/devicetree/injections.scm +2 -0
  111. package/out/devicetree/locals.scm +4 -0
  112. package/out/devicetree/tree-sitter-devicetree.wasm +0 -0
  113. package/out/diff/folds.scm +5 -0
  114. package/out/diff/highlights.scm +49 -0
  115. package/out/diff/injections.scm +2 -0
  116. package/out/diff/tree-sitter-diff.wasm +0 -0
  117. package/out/dockerfile/highlights.scm +58 -0
  118. package/out/dockerfile/injections.scm +12 -0
  119. package/out/dockerfile/tree-sitter-dockerfile.wasm +0 -0
  120. package/out/dtd/folds.scm +4 -0
  121. package/out/dtd/injections.scm +2 -0
  122. package/out/dtd/locals.scm +11 -0
  123. package/out/editorconfig/folds.scm +1 -0
  124. package/out/editorconfig/highlights.scm +35 -0
  125. package/out/editorconfig/injections.scm +2 -0
  126. package/out/editorconfig/tree-sitter-editorconfig.wasm +0 -0
  127. package/out/elixir/folds.scm +10 -0
  128. package/out/elixir/indents.scm +25 -0
  129. package/out/elixir/locals.scm +200 -0
  130. package/out/elm/folds.scm +14 -0
  131. package/out/erlang/folds.scm +9 -0
  132. package/out/erlang/injections.scm +2 -0
  133. package/out/fish/folds.scm +8 -0
  134. package/out/fish/highlights.scm +61 -0
  135. package/out/fish/indents.scm +18 -0
  136. package/out/fish/injections.scm +2 -0
  137. package/out/fish/locals.scm +19 -0
  138. package/out/fish/tree-sitter-fish.wasm +0 -0
  139. package/out/gdscript/folds.scm +26 -0
  140. package/out/gdscript/highlights.scm +635 -0
  141. package/out/gdscript/indents.scm +78 -0
  142. package/out/gdscript/injections.scm +2 -0
  143. package/out/gdscript/locals.scm +121 -0
  144. package/out/gdscript/tree-sitter-gdscript.wasm +0 -0
  145. package/out/gdshader/highlights.scm +256 -0
  146. package/out/gdshader/injections.scm +2 -0
  147. package/out/gdshader/locals.scm +24 -0
  148. package/out/gdshader/tags.scm +13 -0
  149. package/out/gdshader/tree-sitter-gdshader.wasm +0 -0
  150. package/out/git_config/folds.scm +2 -0
  151. package/out/git_config/highlights.scm +28 -0
  152. package/out/git_config/injections.scm +69 -0
  153. package/out/git_config/tree-sitter-git_config.wasm +0 -0
  154. package/out/git_rebase/highlights.scm +36 -0
  155. package/out/git_rebase/injections.scm +8 -0
  156. package/out/git_rebase/tree-sitter-git_rebase.wasm +0 -0
  157. package/out/gitattributes/highlights.scm +52 -0
  158. package/out/gitattributes/injections.scm +2 -0
  159. package/out/gitattributes/locals.scm +8 -0
  160. package/out/gitattributes/tree-sitter-gitattributes.wasm +0 -0
  161. package/out/gitignore/highlights.scm +36 -0
  162. package/out/gitignore/injections.scm +2 -0
  163. package/out/gitignore/tree-sitter-gitignore.wasm +0 -0
  164. package/out/gleam/folds.scm +7 -0
  165. package/out/gleam/highlights.scm +137 -0
  166. package/out/gleam/indents.scm +28 -0
  167. package/out/gleam/injections.scm +3 -0
  168. package/out/gleam/locals.scm +17 -0
  169. package/out/gleam/tags.scm +41 -0
  170. package/out/gleam/tree-sitter-gleam.wasm +0 -0
  171. package/out/glsl/folds.scm +1 -0
  172. package/out/glsl/highlights.scm +115 -0
  173. package/out/glsl/indents.scm +1 -0
  174. package/out/glsl/injections.scm +1 -0
  175. package/out/glsl/locals.scm +1 -0
  176. package/out/glsl/tree-sitter-glsl.wasm +0 -0
  177. package/out/go/folds.scm +19 -0
  178. package/out/go/indents.scm +48 -0
  179. package/out/go/injections.scm +42 -0
  180. package/out/go/locals.scm +88 -0
  181. package/out/godot_resource/folds.scm +1 -0
  182. package/out/godot_resource/highlights.scm +49 -0
  183. package/out/godot_resource/injections.scm +2 -0
  184. package/out/godot_resource/locals.scm +1 -0
  185. package/out/godot_resource/tree-sitter-godot_resource.wasm +0 -0
  186. package/out/graphql/indents.scm +11 -0
  187. package/out/graphql/injections.scm +2 -0
  188. package/out/groovy/folds.scm +6 -0
  189. package/out/groovy/highlights.scm +148 -0
  190. package/out/groovy/indents.scm +23 -0
  191. package/out/groovy/injections.scm +5 -0
  192. package/out/groovy/locals.scm +6 -0
  193. package/out/groovy/tree-sitter-groovy.wasm +0 -0
  194. package/out/haskell/folds.scm +6 -0
  195. package/out/hcl/folds.scm +6 -0
  196. package/out/hcl/indents.scm +16 -0
  197. package/out/hcl/injections.scm +6 -0
  198. package/out/html/folds.scm +5 -0
  199. package/out/html/indents.scm +1 -0
  200. package/out/html/locals.scm +1 -0
  201. package/out/ini/folds.scm +1 -0
  202. package/out/ini/highlights.scm +16 -0
  203. package/out/ini/injections.scm +3 -0
  204. package/out/ini/tree-sitter-ini.wasm +0 -0
  205. package/out/java/folds.scm +8 -0
  206. package/out/java/indents.scm +40 -0
  207. package/out/java/injections.scm +31 -0
  208. package/out/java/locals.scm +100 -0
  209. package/out/javascript/folds.scm +1 -0
  210. package/out/javascript/indents.scm +1 -0
  211. package/out/json/folds.scm +5 -0
  212. package/out/json/indents.scm +11 -0
  213. package/out/json/injections.scm +2 -0
  214. package/out/json/locals.scm +4 -0
  215. package/out/julia/folds.scm +14 -0
  216. package/out/julia/indents.scm +52 -0
  217. package/out/kdl/folds.scm +8 -0
  218. package/out/kdl/highlights.scm +58 -0
  219. package/out/kdl/indents.scm +7 -0
  220. package/out/kdl/injections.scm +4 -0
  221. package/out/kdl/locals.scm +10 -0
  222. package/out/kdl/tree-sitter-kdl.wasm +0 -0
  223. package/out/kotlin/folds.scm +13 -0
  224. package/out/kotlin/injections.scm +52 -0
  225. package/out/kotlin/locals.scm +78 -0
  226. package/out/liquid/highlights.scm +119 -0
  227. package/out/liquid/injections.scm +22 -0
  228. package/out/liquid/tree-sitter-liquid.wasm +0 -0
  229. package/out/lua/folds.scm +12 -0
  230. package/out/lua/indents.scm +47 -0
  231. package/out/markdown/folds.scm +12 -0
  232. package/out/markdown/indents.scm +1 -0
  233. package/out/matlab/folds.scm +13 -0
  234. package/out/matlab/highlights.scm +218 -0
  235. package/out/matlab/indents.scm +40 -0
  236. package/out/matlab/injections.scm +2 -0
  237. package/out/matlab/locals.scm +33 -0
  238. package/out/matlab/tree-sitter-matlab.wasm +0 -0
  239. package/out/nim/folds.scm +41 -0
  240. package/out/nim/highlights.scm +186 -0
  241. package/out/nim/injections.scm +79 -0
  242. package/out/nim/locals.scm +328 -0
  243. package/out/nim/tree-sitter-nim.wasm +0 -0
  244. package/out/nix/folds.scm +11 -0
  245. package/out/nix/indents.scm +75 -0
  246. package/out/ocaml/folds.scm +30 -0
  247. package/out/ocaml/indents.scm +77 -0
  248. package/out/ocaml/injections.scm +2 -0
  249. package/out/ocaml_interface/folds.scm +1 -0
  250. package/out/ocaml_interface/indents.scm +1 -0
  251. package/out/ocaml_interface/injections.scm +1 -0
  252. package/out/php/folds.scm +1 -0
  253. package/out/php/indents.scm +1 -0
  254. package/out/php/locals.scm +1 -0
  255. package/out/php_only/folds.scm +19 -0
  256. package/out/php_only/indents.scm +68 -0
  257. package/out/php_only/locals.scm +84 -0
  258. package/out/prisma/folds.scm +7 -0
  259. package/out/prisma/injections.scm +5 -0
  260. package/out/psv/highlights.scm +5 -0
  261. package/out/psv/tree-sitter-psv.wasm +0 -0
  262. package/out/python/folds.scm +28 -0
  263. package/out/python/indents.scm +213 -0
  264. package/out/python/injections.scm +30 -0
  265. package/out/python/locals.scm +124 -0
  266. package/out/qmljs/folds.scm +8 -0
  267. package/out/qmljs/highlights.scm +61 -0
  268. package/out/qmljs/injections.scm +1 -0
  269. package/out/qmljs/locals.scm +6 -0
  270. package/out/qmljs/tree-sitter-qmljs.wasm +0 -0
  271. package/out/query/folds.scm +6 -0
  272. package/out/query/indents.scm +25 -0
  273. package/out/query/injections.scm +28 -0
  274. package/out/query/locals.scm +21 -0
  275. package/out/r/indents.scm +33 -0
  276. package/out/r/injections.scm +2 -0
  277. package/out/racket/folds.scm +2 -0
  278. package/out/racket/injections.scm +5 -0
  279. package/out/ruby/folds.scm +12 -0
  280. package/out/ruby/indents.scm +43 -0
  281. package/out/ruby/injections.scm +34 -0
  282. package/out/rust/folds.scm +25 -0
  283. package/out/rust/indents.scm +133 -0
  284. package/out/rust/locals.scm +98 -0
  285. package/out/scala/folds.scm +16 -0
  286. package/out/scala/injections.scm +5 -0
  287. package/out/scheme/folds.scm +2 -0
  288. package/out/scheme/injections.scm +2 -0
  289. package/out/scss/folds.scm +1 -0
  290. package/out/scss/indents.scm +7 -0
  291. package/out/scss/injections.scm +2 -0
  292. package/out/solidity/folds.scm +20 -0
  293. package/out/solidity/highlights-nvim.scm +309 -0
  294. package/out/solidity/highlights.scm +217 -0
  295. package/out/solidity/injections.scm +14 -0
  296. package/out/solidity/locals.scm +9 -0
  297. package/out/solidity/tags.scm +43 -0
  298. package/out/solidity/tree-sitter-solidity.wasm +0 -0
  299. package/out/sql/folds.scm +1 -0
  300. package/out/sql/injections.scm +5 -0
  301. package/out/terraform/folds.scm +1 -0
  302. package/out/terraform/indents.scm +1 -0
  303. package/out/terraform/injections.scm +1 -0
  304. package/out/toml/folds.scm +5 -0
  305. package/out/toml/indents.scm +11 -0
  306. package/out/toml/injections.scm +2 -0
  307. package/out/toml/locals.scm +4 -0
  308. package/out/tsv/highlights.scm +4 -0
  309. package/out/tsv/tree-sitter-tsv.wasm +0 -0
  310. package/out/tsx/folds.scm +1 -0
  311. package/out/tsx/indents.scm +1 -0
  312. package/out/tsx/injections.scm +1 -0
  313. package/out/typescript/folds.scm +8 -0
  314. package/out/typescript/indents.scm +7 -0
  315. package/out/typescript/injections.scm +28 -0
  316. package/out/vim/folds.scm +4 -0
  317. package/out/vim/highlights.scm +362 -0
  318. package/out/vim/injections.scm +44 -0
  319. package/out/vim/locals.scm +19 -0
  320. package/out/vim/tree-sitter-vim.wasm +0 -0
  321. package/out/vimdoc/injections.scm +4 -0
  322. package/out/vue/folds.scm +6 -0
  323. package/out/vue/highlights.scm +54 -0
  324. package/out/vue/indents.scm +7 -0
  325. package/out/vue/injections.scm +78 -0
  326. package/out/vue/tree-sitter-vue.wasm +0 -0
  327. package/out/xml/folds.scm +5 -0
  328. package/out/xml/indents.scm +16 -0
  329. package/out/xml/injections.scm +32 -0
  330. package/out/xml/locals.scm +35 -0
  331. package/out/yaml/folds.scm +4 -0
  332. package/out/yaml/highlights.scm +79 -0
  333. package/out/yaml/indents.scm +7 -0
  334. package/out/yaml/injections.scm +81 -0
  335. package/out/yaml/locals.scm +9 -0
  336. package/out/yaml/tree-sitter-yaml.wasm +0 -0
  337. package/out/zig/locals.scm +96 -0
  338. package/package.json +65 -17
  339. /package/out/{c-sharp → c_sharp_c_sharp}/highlights.scm +0 -0
  340. /package/out/{c-sharp → c_sharp_c_sharp}/tags.scm +0 -0
  341. /package/out/{c-sharp/tree-sitter-c-sharp.wasm → c_sharp_c_sharp/tree-sitter-c_sharp_c_sharp.wasm} +0 -0
  342. /package/out/{embedded-template → embedded_template_embedded_template}/highlights.scm +0 -0
  343. /package/out/{embedded-template → embedded_template_embedded_template}/injections-ejs.scm +0 -0
  344. /package/out/{embedded-template → embedded_template_embedded_template}/injections-erb.scm +0 -0
  345. /package/out/{embedded-template → embedded_template_embedded_template}/injections-etlua.scm +0 -0
  346. /package/out/{embedded-template/tree-sitter-embedded-template.wasm → embedded_template_embedded_template/tree-sitter-embedded_template_embedded_template.wasm} +0 -0
  347. /package/out/{markdown-inline → markdown_inline}/highlights.scm +0 -0
  348. /package/out/{markdown-inline → markdown_inline}/injections.scm +0 -0
  349. /package/out/{markdown-inline/tree-sitter-markdown-inline.wasm → markdown_inline/tree-sitter-markdown_inline.wasm} +0 -0
  350. /package/out/{ocaml-interface → ocaml_interface}/highlights.scm +0 -0
  351. /package/out/{ocaml-interface → ocaml_interface}/locals.scm +0 -0
  352. /package/out/{ocaml-interface → ocaml_interface}/tags.scm +0 -0
  353. /package/out/{ocaml-interface/tree-sitter-ocaml-interface.wasm → ocaml_interface/tree-sitter-ocaml_interface.wasm} +0 -0
  354. /package/out/{ocaml-type → ocaml_type}/highlights.scm +0 -0
  355. /package/out/{ocaml-type → ocaml_type}/locals.scm +0 -0
  356. /package/out/{ocaml-type → ocaml_type}/tags.scm +0 -0
  357. /package/out/{ocaml-type/tree-sitter-ocaml-type.wasm → ocaml_type/tree-sitter-ocaml_type.wasm} +0 -0
  358. /package/out/{php-only → php_only}/highlights.scm +0 -0
  359. /package/out/{php-only → php_only}/injections-text.scm +0 -0
  360. /package/out/{php-only → php_only}/injections.scm +0 -0
  361. /package/out/{php-only → php_only}/tags.scm +0 -0
  362. /package/out/{php-only/tree-sitter-php-only.wasm → php_only/tree-sitter-php_only.wasm} +0 -0
@@ -0,0 +1,241 @@
1
+ ; highlights.scm
2
+ ;
3
+ ; Highlighting queries for D code for use by Tree-Sitter.
4
+ ;
5
+ ; Copyright 2023 Garrett D'Amore
6
+ ;
7
+ ; Distributed under the MIT License.
8
+ ; (See accompanying file LICENSE.txt or https://opensource.org/licenses/MIT)
9
+ ; SPDX-License-Identifier: MIT
10
+
11
+ ; these are listed first, because they override keyword queries
12
+ (identity_expression (in) @operator)
13
+ (identity_expression (is) @operator)
14
+
15
+ (storage_class) @keyword.storage
16
+
17
+ (function_declaration (identifier) @function)
18
+
19
+ (call_expression (identifier) @function)
20
+ (call_expression (type (identifier) @function))
21
+
22
+ (module_fqn) @namespace
23
+
24
+ [
25
+ (abstract)
26
+ (alias)
27
+ (align)
28
+ (asm)
29
+ (assert)
30
+ (auto)
31
+ (cast)
32
+ (const)
33
+ (debug)
34
+ (delete)
35
+ (deprecated)
36
+ (export)
37
+ (extern)
38
+ (final)
39
+ (immutable)
40
+ (in)
41
+ (inout)
42
+ (invariant)
43
+ (is)
44
+ (lazy)
45
+ ; "macro" - obsolete
46
+ (mixin)
47
+ (module)
48
+ (new)
49
+ (nothrow)
50
+ (out)
51
+ (override)
52
+ (package)
53
+ (pragma)
54
+ (private)
55
+ (protected)
56
+ (public)
57
+ (pure)
58
+ (ref)
59
+ (scope)
60
+ (shared)
61
+ (static)
62
+ (super)
63
+ (synchronized)
64
+ (template)
65
+ (this)
66
+ (throw)
67
+ (typeid)
68
+ (typeof)
69
+ (unittest)
70
+ (version)
71
+ (with)
72
+ (gshared)
73
+ (traits)
74
+ (vector)
75
+ (parameters_)
76
+ ] @keyword
77
+
78
+ [
79
+ (class)
80
+ (struct)
81
+ (interface)
82
+ (union)
83
+ (enum)
84
+ (function)
85
+ (delegate)
86
+ ] @keyword.storage.type
87
+
88
+ [
89
+ (break)
90
+ (case)
91
+ (catch)
92
+ (continue)
93
+ (do)
94
+ (default)
95
+ (finally)
96
+ (else)
97
+ (goto)
98
+ (if)
99
+ (switch)
100
+ (try)
101
+ ] @keyword.control
102
+
103
+ (return) @keyword.control.return
104
+
105
+ (import) @keyword.control.import
106
+
107
+ [
108
+ (for)
109
+ (foreach)
110
+ (foreach_reverse)
111
+ (while)
112
+ ] @keyword.control.repeat
113
+
114
+ [
115
+ (not_in)
116
+ (not_is)
117
+ "/="
118
+ "/"
119
+ ".."
120
+ "..."
121
+ "&"
122
+ "&="
123
+ "&&"
124
+ "|"
125
+ "|="
126
+ "||"
127
+ "-"
128
+ "-="
129
+ "--"
130
+ "+"
131
+ "+="
132
+ "++"
133
+ "<"
134
+ "<="
135
+ "<<"
136
+ "<<="
137
+ ">"
138
+ ">="
139
+ ">>="
140
+ ">>>="
141
+ ">>"
142
+ ">>>"
143
+ "!"
144
+ "!="
145
+ "?"
146
+ "$"
147
+ "="
148
+ "=="
149
+ "*"
150
+ "*="
151
+ "%"
152
+ "%="
153
+ "^"
154
+ "^="
155
+ "^^"
156
+ "^^="
157
+ "~"
158
+ "~="
159
+ "@"
160
+ "=>"
161
+ ] @operator
162
+
163
+ [
164
+ "("
165
+ ")"
166
+ "["
167
+ "]"
168
+ "{"
169
+ "}"
170
+ ] @punctuation.bracket
171
+
172
+ [
173
+ ";"
174
+ "."
175
+ ":"
176
+ ","
177
+ ] @punctuation.delimiter
178
+
179
+ [
180
+ (true)
181
+ (false)
182
+ ] @constant.builtin.boolean
183
+
184
+ (null) @constant.builtin
185
+
186
+ (special_keyword) @constant.builtin
187
+
188
+ (directive) @keyword.directive
189
+ (shebang) @keyword.directive
190
+
191
+ (comment) @comment
192
+
193
+ [
194
+ (void)
195
+ (bool)
196
+ (byte)
197
+ (ubyte)
198
+ (char)
199
+ (short)
200
+ (ushort)
201
+ (wchar)
202
+ (dchar)
203
+ (int)
204
+ (uint)
205
+ (long)
206
+ (ulong)
207
+ (real)
208
+ (double)
209
+ (float)
210
+ (size_t)
211
+ (ptrdiff_t)
212
+ (string)
213
+ (cstring)
214
+ (dstring)
215
+ (wstring)
216
+ (noreturn)
217
+ ] @type.builtin
218
+
219
+ [
220
+ (cent)
221
+ (ucent)
222
+ (ireal)
223
+ (idouble)
224
+ (ifloat)
225
+ (creal)
226
+ (double)
227
+ (cfloat)
228
+ ] @warning ; these types are deprecated
229
+
230
+ (label (identifier) @label)
231
+ (goto_statement (goto) @keyword (identifier) @label)
232
+
233
+ (string_literal) @string
234
+ (int_literal) @constant.numeric.integer
235
+ (float_literal) @constant.numeric.float
236
+ (char_literal) @constant.character
237
+ (identifier) @variable
238
+ (at_attribute) @attribute
239
+
240
+ ; everything after __EOF_ is plain text
241
+ (end_file) @ui.text
@@ -0,0 +1,17 @@
1
+ [
2
+ (parameters)
3
+ (template_parameters)
4
+ (expression_statement)
5
+ (aggregate_body)
6
+ (function_body)
7
+ (scope_statement)
8
+ (block_statement)
9
+ (case_statement)
10
+ ] @indent
11
+
12
+ [
13
+ (case)
14
+ (default)
15
+ "}"
16
+ "]"
17
+ ] @outdent
@@ -0,0 +1,2 @@
1
+ ((comment) @injection.content
2
+ (#set! injection.language "comment"))
@@ -0,0 +1,9 @@
1
+ (function_declaration (function_body) @function.inside) @function.around
2
+ (comment) @comment.inside
3
+ (comment)+ @comment.around
4
+ (class_declaration (aggregate_body) @class.inside) @class.around
5
+ (interface_declaration (aggregate_body) @class.inside) @class.around
6
+ (struct_declaration (aggregate_body) @class.inside) @class.around
7
+ (unittest_declaration (block_statement) @test.insid) @test.around
8
+ (parameter) @parameter.inside
9
+ (template_parameter) @parameter.inside
@@ -0,0 +1,259 @@
1
+ ; highlights.scm
2
+ ;
3
+ ; Highlighting queries for D code for use by Tree-Sitter.
4
+ ;
5
+ ; Copyright 2024 Garrett D'Amore
6
+ ;
7
+ ; Distributed under the MIT License.
8
+ ; (See accompanying file LICENSE.txt or https://opensource.org/licenses/MIT)
9
+ ; SPDX-License-Identifier: MIT
10
+
11
+ (string_literal) @string
12
+ (int_literal) @number
13
+ (float_literal) @number
14
+ (char_literal) @number
15
+ (identifier) @variable
16
+ (at_attribute) @property
17
+ (htmlentity) @string.special
18
+ (escape_sequence) @string.escape
19
+
20
+ [
21
+ (lazy)
22
+ (align)
23
+ (extern)
24
+ (static)
25
+ (abstract)
26
+ (final)
27
+ (override)
28
+ (synchronized)
29
+ (auto)
30
+ (scope)
31
+ (gshared)
32
+ (ref)
33
+ (deprecated)
34
+ (nothrow)
35
+ (pure)
36
+ (type_ctor)
37
+ ] @keyword.storage
38
+
39
+ (parameter_attribute (return) @keyword.storage)
40
+ (parameter_attribute (in) @keyword.storage)
41
+ (parameter_attribute (out) @keyword.storage)
42
+
43
+ (function_declaration (identifier) @function)
44
+
45
+ (call_expression (identifier) @function)
46
+ (call_expression (type (template_instance (identifier) @function)))
47
+ (template_arguments (identifier) @variable.parameter)
48
+
49
+ (named_argument (identifier) @variable.parameter)
50
+
51
+ [
52
+ (abstract)
53
+ (alias)
54
+ (align)
55
+ (asm)
56
+ (assert)
57
+ (auto)
58
+ (cast)
59
+ (class)
60
+ (const)
61
+ (debug)
62
+ (delegate)
63
+ (delete)
64
+ (deprecated)
65
+ (enum)
66
+ (export)
67
+ (extern)
68
+ (final)
69
+ (function)
70
+ (immutable)
71
+ (import)
72
+ (in)
73
+ (inout)
74
+ (interface)
75
+ (invariant)
76
+ (is)
77
+ (lazy)
78
+ ; "macro" - obsolete
79
+ (mixin)
80
+ (module)
81
+ (new)
82
+ (nothrow)
83
+ (out)
84
+ (override)
85
+ (package)
86
+ (pragma)
87
+ (private)
88
+ (protected)
89
+ (public)
90
+ (pure)
91
+ (ref)
92
+ (scope)
93
+ (shared)
94
+ (static)
95
+ (struct)
96
+ (super)
97
+ (synchronized)
98
+ (template)
99
+ (this)
100
+ (throw)
101
+ (typeid)
102
+ (typeof)
103
+ (union)
104
+ (unittest)
105
+ (version)
106
+ (with)
107
+ (gshared)
108
+ (traits)
109
+ (vector)
110
+ (parameters_)
111
+ ] @keyword
112
+
113
+ [
114
+ (break)
115
+ (case)
116
+ (catch)
117
+ (continue)
118
+ (do)
119
+ (default)
120
+ (finally)
121
+ (else)
122
+ (for)
123
+ (foreach)
124
+ (foreach_reverse)
125
+ (goto)
126
+ (if)
127
+ (switch)
128
+ (try)
129
+ (return)
130
+ (while)
131
+ ] @keyword.control
132
+
133
+ [
134
+ (not_in)
135
+ (not_is)
136
+ "/="
137
+ "/"
138
+ ".."
139
+ "..."
140
+ "&"
141
+ "&="
142
+ "&&"
143
+ "|"
144
+ "|="
145
+ "||"
146
+ "-"
147
+ "-="
148
+ "--"
149
+ "+"
150
+ "+="
151
+ "++"
152
+ "<"
153
+ "<="
154
+ "<<"
155
+ "<<="
156
+ ">"
157
+ ">="
158
+ ">>="
159
+ ">>>="
160
+ ">>"
161
+ ">>>"
162
+ "!"
163
+ "!="
164
+ "?"
165
+ "$"
166
+ "="
167
+ "=="
168
+ "*"
169
+ "*="
170
+ "%"
171
+ "%="
172
+ "^"
173
+ "^="
174
+ "^^"
175
+ "^^="
176
+ "~"
177
+ "~="
178
+ "@"
179
+ "=>"
180
+ ] @operator
181
+
182
+ [
183
+ ";"
184
+ "."
185
+ ":"
186
+ ","
187
+ ] @punctuation.delimiter
188
+
189
+ [
190
+ "("
191
+ ")"
192
+ "["
193
+ "["
194
+ "{"
195
+ "}"
196
+ ] @punctuation.bracket
197
+
198
+ [
199
+ (null)
200
+ (true)
201
+ (false)
202
+ ] @constant.language
203
+
204
+ (special_keyword) @constant.language
205
+
206
+ (directive) @keyword.directive
207
+ (shebang) @keyword.directive
208
+
209
+ (comment) @comment
210
+
211
+ [
212
+ (void)
213
+ (bool)
214
+ (byte)
215
+ (ubyte)
216
+ (char)
217
+ (short)
218
+ (ushort)
219
+ (wchar)
220
+ (dchar)
221
+ (int)
222
+ (uint)
223
+ (long)
224
+ (ulong)
225
+ (real)
226
+ (double)
227
+ (float)
228
+ (size_t)
229
+ (ptrdiff_t)
230
+ (string)
231
+ (cstring)
232
+ (wstring)
233
+ (noreturn)
234
+ ] @type.builtin
235
+
236
+ [
237
+ (cent)
238
+ (ucent)
239
+ (ireal)
240
+ (idouble)
241
+ (ifloat)
242
+ (creal)
243
+ (double)
244
+ (cfloat)
245
+ ] @type.deprecated
246
+
247
+ (label (identifier) @label)
248
+ (goto_statement (goto) @keyword.control (identifier) @label)
249
+
250
+ ; this covers other cases where the identifier can only
251
+ ; be a type (such as in an is-expression on a constraint)
252
+ (type (identifier) @type)
253
+
254
+ ; these are listed last, because they override keyword queries
255
+ (identity_expression (in) @operator)
256
+ (identity_expression (is) @operator)
257
+
258
+ ; everything after __EOF_ is plain text
259
+ (end_file) @text
@@ -0,0 +1,17 @@
1
+ [
2
+ (parameters)
3
+ (template_parameters)
4
+ (expression_statement)
5
+ (aggregate_body)
6
+ (function_body)
7
+ (scope_statement)
8
+ (block_statement)
9
+ (case_statement)
10
+ ] @indent
11
+
12
+ [
13
+ (case)
14
+ (default)
15
+ "}"
16
+ "]"
17
+ ] @outdent
@@ -0,0 +1,2 @@
1
+ ((comment) @injection.content
2
+ (#set! injection.language "comment"))
@@ -0,0 +1,79 @@
1
+ ; Scopes
2
+ [
3
+ (source_file)
4
+ (block_statement)
5
+ (aggregate_body)
6
+ ] @local.scope
7
+
8
+ ; References
9
+ (identifier) @local.reference
10
+
11
+ ; Definitions
12
+ (module_def
13
+ (module_declaration
14
+ (module_fqn) @local.definition.namespace)
15
+ (#set! definition.namespace.scope "global"))
16
+
17
+ (enum_declaration
18
+ (enum_member
19
+ .
20
+ (identifier) @local.definition.enum))
21
+
22
+ (class_declaration
23
+ (class)
24
+ .
25
+ (identifier) @local.definition.type)
26
+
27
+ (struct_declaration
28
+ (struct)
29
+ .
30
+ (identifier) @local.definition.type)
31
+
32
+ (union_declaration
33
+ (union)
34
+ .
35
+ (identifier) @local.definition.type)
36
+
37
+ (enum_declaration
38
+ (enum)
39
+ .
40
+ (identifier) @local.definition.type)
41
+
42
+ (alias_declaration
43
+ (alias_initializer
44
+ .
45
+ (identifier) @local.definition.type))
46
+
47
+ (constructor
48
+ (this) @local.definition.method)
49
+
50
+ (destructor
51
+ (this) @local.definition.method)
52
+
53
+ (postblit
54
+ (this) @local.definition.method)
55
+
56
+ (aggregate_body
57
+ (function_declaration
58
+ (identifier) @local.definition.method))
59
+
60
+ (manifest_declarator
61
+ .
62
+ (identifier) @local.definition.constant)
63
+
64
+ (anonymous_enum_declaration
65
+ (enum_member
66
+ .
67
+ (identifier) @local.definition.constant))
68
+
69
+ (variable_declaration
70
+ (declarator
71
+ (identifier) @local.definition.var))
72
+
73
+ (aggregate_body
74
+ (variable_declaration
75
+ (declarator
76
+ (identifier) @local.definition.field)))
77
+
78
+ (function_declaration
79
+ (identifier) @local.definition.function)
@@ -0,0 +1,6 @@
1
+ (struct_declaration (aggregate_body (#set! role type)) @subtree)
2
+ (class_declaration (aggregate_body (#set! role type)) @subtree)
3
+ (union_declaration (aggregate_body (#set! role type)) @subtree)
4
+ (interface_declaration (aggregate_body (#set! role type)) @subtree)
5
+
6
+ (block_statement (#set! role block)) @subtree