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,196 @@
1
+ ;; highlight queries.
2
+ ;; See the syntax at https://tree-sitter.github.io/tree-sitter/using-parsers#pattern-matching-with-queries
3
+ ;; See also https://github.com/nvim-treesitter/nvim-treesitter/blob/master/CONTRIBUTING.md#parser-configurations
4
+ ;; for a list of recommended @ tags, though not all of them have matching
5
+ ;; highlights in neovim.
6
+
7
+ [
8
+ "abort"
9
+ "abs"
10
+ "abstract"
11
+ "accept"
12
+ "access"
13
+ "all"
14
+ "array"
15
+ "at"
16
+ "begin"
17
+ "declare"
18
+ "delay"
19
+ "delta"
20
+ "digits"
21
+ "do"
22
+ "end"
23
+ "entry"
24
+ "exit"
25
+ "generic"
26
+ "interface"
27
+ "is"
28
+ "limited"
29
+ "null"
30
+ "of"
31
+ "others"
32
+ "out"
33
+ "pragma"
34
+ "private"
35
+ "range"
36
+ "synchronized"
37
+ "tagged"
38
+ "task"
39
+ "terminate"
40
+ "until"
41
+ "when"
42
+ ] @keyword
43
+ [
44
+ "aliased"
45
+ "constant"
46
+ "renames"
47
+ ] @storageclass
48
+ [
49
+ "mod"
50
+ "new"
51
+ "protected"
52
+ "record"
53
+ "subtype"
54
+ "type"
55
+ ] @keyword.type
56
+ [
57
+ "with"
58
+ "use"
59
+ ] @include
60
+ [
61
+ "body"
62
+ "function"
63
+ "overriding"
64
+ "procedure"
65
+ "package"
66
+ "separate"
67
+ ] @keyword.function
68
+ [
69
+ "and"
70
+ "in"
71
+ "not"
72
+ "or"
73
+ "xor"
74
+ ] @keyword.operator
75
+ [
76
+ "while"
77
+ "loop"
78
+ "for"
79
+ "parallel"
80
+ "reverse"
81
+ "some"
82
+ ] @repeat
83
+ [
84
+ "return"
85
+ ] @keyword.return
86
+ [
87
+ "case"
88
+ "if"
89
+ "else"
90
+ "then"
91
+ "elsif"
92
+ "select"
93
+ ] @conditional
94
+ [
95
+ "exception"
96
+ "raise"
97
+ ] @exception
98
+ (comment) @comment @spell
99
+ (string_literal) @string
100
+ (character_literal) @string
101
+ (numeric_literal) @number
102
+
103
+ ;; Highlight the name of subprograms
104
+ (procedure_specification name: (_) @function)
105
+ (function_specification name: (_) @function)
106
+ (package_declaration name: (_) @function)
107
+ (package_body name: (_) @function)
108
+ (generic_instantiation name: (_) @function)
109
+ (entry_declaration . (identifier) @function)
110
+
111
+ ;; Some keywords should take different categories depending on the context
112
+ (use_clause "use" @include "type" @include)
113
+ (with_clause "private" @include)
114
+ (with_clause "limited" @include)
115
+ (use_clause (_) @namespace)
116
+ (with_clause (_) @namespace)
117
+
118
+ (loop_statement "end" @keyword.repeat)
119
+ (if_statement "end" @conditional)
120
+ (loop_parameter_specification "in" @keyword.repeat)
121
+ (loop_parameter_specification "in" @keyword.repeat)
122
+ (iterator_specification ["in" "of"] @keyword.repeat)
123
+ (range_attribute_designator "range" @keyword.repeat)
124
+
125
+ (raise_statement "with" @exception)
126
+
127
+ (gnatprep_declarative_if_statement) @preproc
128
+ (gnatprep_if_statement) @preproc
129
+ (gnatprep_identifier) @preproc
130
+
131
+ (subprogram_declaration "is" @keyword.function "abstract" @keyword.function)
132
+ (aspect_specification "with" @keyword.function)
133
+
134
+ (full_type_declaration "is" @keyword.type)
135
+ (subtype_declaration "is" @keyword.type)
136
+ (record_definition "end" @keyword.type)
137
+ (full_type_declaration (_ "access" @keyword.type))
138
+ (array_type_definition "array" @keyword.type "of" @keyword.type)
139
+ (access_to_object_definition "access" @keyword.type)
140
+ (access_to_object_definition "access" @keyword.type
141
+ [
142
+ (general_access_modifier "constant" @keyword.type)
143
+ (general_access_modifier "all" @keyword.type)
144
+ ]
145
+ )
146
+ (range_constraint "range" @keyword.type)
147
+ (signed_integer_type_definition "range" @keyword.type)
148
+ (index_subtype_definition "range" @keyword.type)
149
+ (record_type_definition "abstract" @keyword.type)
150
+ (record_type_definition "tagged" @keyword.type)
151
+ (record_type_definition "limited" @keyword.type)
152
+ (record_type_definition (record_definition "null" @keyword.type))
153
+ (private_type_declaration "is" @keyword.type "private" @keyword.type)
154
+ (private_type_declaration "tagged" @keyword.type)
155
+ (private_type_declaration "limited" @keyword.type)
156
+ (task_type_declaration "task" @keyword.type "is" @keyword.type)
157
+
158
+ ;; Gray the body of expression functions
159
+ (expression_function_declaration
160
+ (function_specification)
161
+ "is"
162
+ (_) @attribute
163
+ )
164
+ (subprogram_declaration (aspect_specification) @attribute)
165
+
166
+ ;; Highlight full subprogram specifications
167
+ ;(subprogram_body
168
+ ; [
169
+ ; (procedure_specification)
170
+ ; (function_specification)
171
+ ; ] @function.spec
172
+ ;)
173
+
174
+ ((comment) @comment.documentation
175
+ . [
176
+ (entry_declaration)
177
+ (subprogram_declaration)
178
+ (parameter_specification)
179
+ ])
180
+
181
+ (compilation_unit
182
+ . (comment) @comment.documentation)
183
+
184
+ (component_list
185
+ (component_declaration)
186
+ . (comment) @comment.documentation)
187
+
188
+ (enumeration_type_definition
189
+ (identifier)
190
+ . (comment) @comment.documentation)
191
+
192
+ ;; Highlight errors in red. This is not very useful in practice, as text will
193
+ ;; be highlighted as user types, and the error could be elsewhere in the code.
194
+ ;; This also requires defining :hi @error guifg=Red for instance.
195
+ (ERROR) @error
196
+
@@ -0,0 +1,2 @@
1
+ ((comment) @injection.content
2
+ (#set! injection.language "comment"))
@@ -0,0 +1,33 @@
1
+ ;; Better highlighting by referencing to the definition, for variable
2
+ ;; references. However, this is not yet supported by neovim
3
+ ;; See https://tree-sitter.github.io/tree-sitter/syntax-highlighting#local-variables
4
+
5
+ (compilation) @scope
6
+ (package_declaration) @scope
7
+ (package_body) @scope
8
+ (subprogram_declaration) @scope
9
+ (subprogram_body) @scope
10
+ (block_statement) @scope
11
+
12
+ (with_clause (_) @definition.import)
13
+ (procedure_specification name: (_) @definition.function)
14
+ (function_specification name: (_) @definition.function)
15
+ (package_declaration name: (_) @definition.var)
16
+ (package_body name: (_) @definition.var)
17
+ (generic_instantiation . name: (_) @definition.var)
18
+ (component_declaration . (identifier) @definition.var)
19
+ (exception_declaration . (identifier) @definition.var)
20
+ (formal_object_declaration . (identifier) @definition.var)
21
+ (object_declaration . (identifier) @definition.var)
22
+ (parameter_specification . (identifier) @definition.var)
23
+ (full_type_declaration . (identifier) @definition.type)
24
+ (private_type_declaration . (identifier) @definition.type)
25
+ (private_extension_declaration . (identifier) @definition.type)
26
+ (incomplete_type_declaration . (identifier) @definition.type)
27
+ (protected_type_declaration . (identifier) @definition.type)
28
+ (formal_complete_type_declaration . (identifier) @definition.type)
29
+ (formal_incomplete_type_declaration . (identifier) @definition.type)
30
+ (task_type_declaration . (identifier) @definition.type)
31
+ (subtype_declaration . (identifier) @definition.type)
32
+
33
+ (identifier) @reference
@@ -0,0 +1,23 @@
1
+ ;; Support for high-level text objects selections.
2
+ ;; For instance:
3
+ ;; vaf (v)isually select (a) (f)unction or subprogram
4
+ ;; vif (v)isually select (i)nside a (f)unction or subprogram
5
+ ;; vai (v)isually select (a) (i)f statement (or loop)
6
+ ;; vii (v)isually select (i)nside an (i)f statement (or loop)
7
+ ;;
8
+ ;; https://github.com/nvim-treesitter/nvim-treesitter-textobjects/blob/master/README.md
9
+
10
+ (subprogram_body) @function.outer
11
+ (subprogram_body (non_empty_declarative_part) @function.inner)
12
+ (subprogram_body (handled_sequence_of_statements) @function.inner)
13
+ (function_specification) @function.outer
14
+ (procedure_specification) @function.outer
15
+ (package_declaration) @function.outer
16
+ (generic_package_declaration) @function.outer
17
+ (package_body) @function.outer
18
+ (if_statement) @block.outer
19
+ (if_statement statements: (_) @block.inner)
20
+ (if_statement else_statements: (_) @block.inner)
21
+ (elsif_statement_item statements: (_) @block.inner)
22
+ (loop_statement) @block.outer
23
+ (loop_statement statements: (_) @block.inner)
Binary file
@@ -0,0 +1 @@
1
+ ; inherits: html
@@ -0,0 +1,178 @@
1
+ ; inherits: html
2
+
3
+ (identifier) @variable
4
+
5
+ (style_unit) @variable
6
+
7
+ (pipe_operator) @operator
8
+
9
+ (string) @string
10
+
11
+ (number) @number
12
+
13
+ (pipe_call
14
+ name: (identifier) @function)
15
+
16
+ (pipe_call
17
+ arguments: (pipe_arguments
18
+ (identifier) @variable.parameter))
19
+
20
+ (structural_directive
21
+ "*" @keyword
22
+ (identifier) @keyword)
23
+
24
+ (attribute
25
+ (attribute_name) @variable.member
26
+ (#lua-match? @variable.member "#.*"))
27
+
28
+ (binding_name
29
+ (identifier) @keyword)
30
+
31
+ (class_binding
32
+ [
33
+ (identifier)
34
+ (class_name)
35
+ ] @keyword)
36
+
37
+ (event_binding
38
+ (binding_name
39
+ (identifier) @keyword))
40
+
41
+ (event_binding
42
+ "\"" @punctuation.delimiter)
43
+
44
+ (property_binding
45
+ [
46
+ "\""
47
+ "\"\""
48
+ ] @punctuation.delimiter)
49
+
50
+ (structural_assignment
51
+ operator: (identifier) @keyword)
52
+
53
+ (member_expression
54
+ property: (identifier) @property)
55
+
56
+ (call_expression
57
+ function: (identifier) @function)
58
+
59
+ (call_expression
60
+ function: ((identifier) @function.builtin
61
+ (#eq? @function.builtin "$any")))
62
+
63
+ (pair
64
+ key: ((identifier) @variable.builtin
65
+ (#eq? @variable.builtin "$implicit")))
66
+
67
+ [
68
+ (control_keyword)
69
+ (special_keyword)
70
+ ] @keyword
71
+
72
+ ((control_keyword) @keyword.repeat
73
+ (#any-of? @keyword.repeat "for" "empty"))
74
+
75
+ ((control_keyword) @keyword.conditional
76
+ (#any-of? @keyword.conditional "if" "else" "switch" "case" "default"))
77
+
78
+ ((control_keyword) @keyword.coroutine
79
+ (#any-of? @keyword.coroutine "defer" "placeholder" "loading"))
80
+
81
+ ((control_keyword) @keyword.exception
82
+ (#eq? @keyword.exception "error"))
83
+
84
+ ((identifier) @boolean
85
+ (#any-of? @boolean "true" "false"))
86
+
87
+ ((identifier) @variable.builtin
88
+ (#any-of? @variable.builtin "this" "$event"))
89
+
90
+ ((identifier) @constant.builtin
91
+ (#eq? @constant.builtin "null"))
92
+
93
+ [
94
+ (ternary_operator)
95
+ (conditional_operator)
96
+ ] @keyword.conditional.ternary
97
+
98
+ [
99
+ "("
100
+ ")"
101
+ "["
102
+ "]"
103
+ "{"
104
+ "}"
105
+ "@"
106
+ ] @punctuation.bracket
107
+
108
+ (two_way_binding
109
+ [
110
+ "[("
111
+ ")]"
112
+ ] @punctuation.bracket)
113
+
114
+ [
115
+ "{{"
116
+ "}}"
117
+ ] @punctuation.special
118
+
119
+ (template_substitution
120
+ [
121
+ "${"
122
+ "}"
123
+ ] @punctuation.special)
124
+
125
+ (template_chars) @string
126
+
127
+ [
128
+ ";"
129
+ "."
130
+ ","
131
+ "?."
132
+ "!."
133
+ ] @punctuation.delimiter
134
+
135
+ (nullish_coalescing_expression
136
+ (coalescing_operator) @operator)
137
+
138
+ (concatenation_expression
139
+ "+" @operator)
140
+
141
+ (icu_clause) @keyword.operator
142
+
143
+ (icu_category) @keyword.conditional
144
+
145
+ (binary_expression
146
+ [
147
+ "-"
148
+ "&&"
149
+ "+"
150
+ "<"
151
+ "<="
152
+ "="
153
+ "=="
154
+ "==="
155
+ "!="
156
+ "!=="
157
+ ">"
158
+ ">="
159
+ "*"
160
+ "/"
161
+ "||"
162
+ "%"
163
+ ] @operator)
164
+
165
+ (arrow_function
166
+ "=>" @operator)
167
+
168
+ (object
169
+ (spread
170
+ "..." @operator))
171
+
172
+ (array
173
+ (spread
174
+ "..." @operator))
175
+
176
+ (arguments
177
+ (spread
178
+ "..." @operator))
@@ -0,0 +1,16 @@
1
+ ; inherits: html
2
+
3
+ [
4
+ (statement_block)
5
+ (switch_statement)
6
+ ] @indent.begin
7
+
8
+ (statement_block
9
+ "{" @indent.branch)
10
+
11
+ (statement_block
12
+ "}" @indent.end)
13
+
14
+ "}" @indent.branch
15
+
16
+ "}" @indent.end
@@ -0,0 +1 @@
1
+ ; inherits: html
@@ -0,0 +1 @@
1
+ ; inherits: html
@@ -0,0 +1 @@
1
+ ; inherits: cpp
@@ -0,0 +1,48 @@
1
+ ((identifier) @function.builtin
2
+ (#any-of? @function.builtin
3
+ ; Digital I/O
4
+ "digitalRead" "digitalWrite" "pinMode"
5
+ ; Analog I/O
6
+ "analogRead" "analogReference" "analogWrite"
7
+ ; Zero, Due & MKR Family
8
+ "analogReadResolution" "analogWriteResolution"
9
+ ; Advanced I/O
10
+ "noTone" "pulseIn" "pulseInLong" "shiftIn" "shiftOut" "tone"
11
+ ; Time
12
+ "delay" "delayMicroseconds" "micros" "millis"
13
+ ; Math
14
+ "abs" "constrain" "map" "max" "min" "pow" "sq" "sqrt"
15
+ ; Trigonometry
16
+ "cos" "sin" "tan"
17
+ ; Characters
18
+ "isAlpha" "isAlphaNumeric" "isAscii" "isControl" "isDigit" "isGraph" "isHexadecimalDigit"
19
+ "isLowerCase" "isPrintable" "isPunct" "isSpace" "isUpperCase" "isWhitespace"
20
+ ; Random Numbers
21
+ "random" "randomSeed"
22
+ ; Bits and Bytes
23
+ "bit" "bitClear" "bitRead" "bitSet" "bitWrite" "highByte" "lowByte"
24
+ ; External Interrupts
25
+ "attachInterrupt" "detachInterrupt"
26
+ ; Interrupts
27
+ "interrupts" "noInterrupts"))
28
+
29
+ ((identifier) @type.builtin
30
+ (#any-of? @type.builtin "Serial" "SPI" "Stream" "Wire" "Keyboard" "Mouse" "String"))
31
+
32
+ ((identifier) @constant.builtin
33
+ (#any-of? @constant.builtin "HIGH" "LOW" "INPUT" "OUTPUT" "INPUT_PULLUP" "LED_BUILTIN"))
34
+
35
+ (function_definition
36
+ (function_declarator
37
+ declarator: (identifier) @function.builtin)
38
+ (#any-of? @function.builtin "loop" "setup"))
39
+
40
+ (call_expression
41
+ function: (identifier) @constructor.builtin
42
+ (#any-of? @constructor.builtin "SPISettings" "String"))
43
+
44
+ (declaration
45
+ (type_identifier) @type.builtin
46
+ (function_declarator
47
+ declarator: (identifier) @constructor.builtin)
48
+ (#eq? @type.builtin "SPISettings"))
@@ -0,0 +1 @@
1
+ ; inherits: cpp
@@ -0,0 +1 @@
1
+ ; inherits: cpp
@@ -0,0 +1 @@
1
+ ; inherits: cpp
@@ -0,0 +1,5 @@
1
+ (function_declarator
2
+ declarator: (identifier) @name) @definition.function
3
+
4
+ (call_expression
5
+ function: (identifier) @name) @reference.call
@@ -0,0 +1,66 @@
1
+ ; General
2
+ (label
3
+ [
4
+ (ident)
5
+ (word)
6
+ ] @label)
7
+
8
+ (reg) @variable.builtin
9
+
10
+ (meta
11
+ kind: (_) @function.builtin)
12
+
13
+ (instruction
14
+ kind: (_) @function.builtin)
15
+
16
+ (const
17
+ name: (word) @constant)
18
+
19
+ ; Comments
20
+ [
21
+ (line_comment)
22
+ (block_comment)
23
+ ] @comment @spell
24
+
25
+ ; Literals
26
+ (int) @number
27
+
28
+ (float) @number.float
29
+
30
+ (string) @string
31
+
32
+ ; Keywords
33
+ [
34
+ "byte"
35
+ "word"
36
+ "dword"
37
+ "qword"
38
+ "ptr"
39
+ "rel"
40
+ "label"
41
+ "const"
42
+ ] @keyword
43
+
44
+ ; Operators & Punctuation
45
+ [
46
+ "+"
47
+ "-"
48
+ "*"
49
+ "/"
50
+ "%"
51
+ "|"
52
+ "^"
53
+ "&"
54
+ ] @operator
55
+
56
+ [
57
+ "("
58
+ ")"
59
+ "["
60
+ "]"
61
+ ] @punctuation.bracket
62
+
63
+ [
64
+ ","
65
+ ":"
66
+ ] @punctuation.delimiter
@@ -0,0 +1,5 @@
1
+ ([
2
+ (line_comment)
3
+ (block_comment)
4
+ ] @injection.content
5
+ (#set! injection.language "comment"))
Binary file
@@ -0,0 +1 @@
1
+ ; inherits: html
@@ -0,0 +1,12 @@
1
+ (tag_name) @tag
2
+ (erroneous_end_tag_name) @tag.error
3
+ (doctype) @constant
4
+ (attribute_name) @attribute
5
+ (attribute_value) @string
6
+ (comment) @comment
7
+
8
+ [
9
+ "<"
10
+ ">"
11
+ "</"
12
+ ] @punctuation.bracket
@@ -0,0 +1 @@
1
+ ; inherits: html
@@ -0,0 +1,27 @@
1
+ (frontmatter
2
+ (frontmatter_js_block) @injection.content
3
+ (#set! injection.language "typescript"))
4
+
5
+ (attribute_interpolation
6
+ (attribute_js_expr) @injection.content
7
+ (#set! injection.language "typescript"))
8
+
9
+ ; TODO proper queries for html_interpolation highlighting
10
+ (html_interpolation
11
+ (permissible_text) @injection.content
12
+ (#set! injection.language "typescript"))
13
+
14
+ (script_element
15
+ (raw_text) @injection.content
16
+ (#set! injection.language "typescript"))
17
+
18
+ (style_element
19
+ (start_tag
20
+ (attribute
21
+ (attribute_name) @_lang_attr
22
+ (quoted_attribute_value
23
+ (attribute_value) @_lang_value)))
24
+ (raw_text) @injection.content
25
+ (#eq? @_lang_attr "lang")
26
+ (#eq? @_lang_value "scss")
27
+ (#set! injection.language "scss"))
@@ -0,0 +1 @@
1
+ ; inherits: html
Binary file