tree-sitter-wasm 1.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 (576) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +57 -0
  3. package/index.d.ts +120 -0
  4. package/index.js +48 -0
  5. package/manifest.json +677 -0
  6. package/out/ada/folds.scm +15 -0
  7. package/out/ada/highlights.scm +196 -0
  8. package/out/ada/injections.scm +2 -0
  9. package/out/ada/locals.scm +33 -0
  10. package/out/ada/textobjects.scm +23 -0
  11. package/out/ada/tree-sitter-ada.wasm +0 -0
  12. package/out/angular/folds.scm +1 -0
  13. package/out/angular/highlights.scm +178 -0
  14. package/out/angular/indents.scm +16 -0
  15. package/out/angular/injections.scm +1 -0
  16. package/out/angular/locals.scm +1 -0
  17. package/out/angular/tree-sitter-angular.wasm +0 -0
  18. package/out/arduino/folds.scm +1 -0
  19. package/out/arduino/highlights.scm +48 -0
  20. package/out/arduino/indents.scm +1 -0
  21. package/out/arduino/injections.scm +1 -0
  22. package/out/arduino/locals.scm +1 -0
  23. package/out/arduino/tags.scm +5 -0
  24. package/out/arduino/tree-sitter-arduino.wasm +0 -0
  25. package/out/asm/highlights.scm +66 -0
  26. package/out/asm/injections.scm +5 -0
  27. package/out/asm/tree-sitter-asm.wasm +0 -0
  28. package/out/astro/folds.scm +1 -0
  29. package/out/astro/highlights.scm +12 -0
  30. package/out/astro/indents.scm +1 -0
  31. package/out/astro/injections.scm +27 -0
  32. package/out/astro/locals.scm +1 -0
  33. package/out/astro/tree-sitter-astro.wasm +0 -0
  34. package/out/awk/highlights.scm +122 -0
  35. package/out/awk/injections.scm +17 -0
  36. package/out/awk/tree-sitter-awk.wasm +0 -0
  37. package/out/bash/folds.scm +9 -0
  38. package/out/bash/highlights.scm +56 -0
  39. package/out/bash/indents.scm +32 -0
  40. package/out/bash/injections.scm +90 -0
  41. package/out/bash/locals.scm +14 -0
  42. package/out/bash/tree-sitter-bash.wasm +0 -0
  43. package/out/bibtex/folds.scm +1 -0
  44. package/out/bibtex/highlights.scm +47 -0
  45. package/out/bibtex/indents.scm +8 -0
  46. package/out/bibtex/injections.scm +2 -0
  47. package/out/bibtex/locals.scm +0 -0
  48. package/out/bibtex/tags.scm +0 -0
  49. package/out/bibtex/tree-sitter-bibtex.wasm +0 -0
  50. package/out/c/folds.scm +23 -0
  51. package/out/c/highlights.scm +81 -0
  52. package/out/c/indents.scm +99 -0
  53. package/out/c/injections.scm +128 -0
  54. package/out/c/locals.scm +67 -0
  55. package/out/c/tags.scm +9 -0
  56. package/out/c/tree-sitter-c.wasm +0 -0
  57. package/out/c_sharp/folds.scm +17 -0
  58. package/out/c_sharp/highlights.scm +213 -0
  59. package/out/c_sharp/injections.scm +2 -0
  60. package/out/c_sharp/locals.scm +42 -0
  61. package/out/c_sharp/tags.scm +23 -0
  62. package/out/c_sharp/tree-sitter-c_sharp.wasm +0 -0
  63. package/out/cairo/folds.scm +26 -0
  64. package/out/cairo/highlights.scm +372 -0
  65. package/out/cairo/indents.scm +134 -0
  66. package/out/cairo/injections.scm +3 -0
  67. package/out/cairo/locals.scm +28 -0
  68. package/out/cairo/textobjects.scm +79 -0
  69. package/out/cairo/tree-sitter-cairo.wasm +0 -0
  70. package/out/clojure/folds.scm +2 -0
  71. package/out/clojure/highlights.scm +29 -0
  72. package/out/clojure/injections.scm +2 -0
  73. package/out/clojure/locals.scm +1 -0
  74. package/out/clojure/tree-sitter-clojure.wasm +0 -0
  75. package/out/cmake/folds.scm +8 -0
  76. package/out/cmake/highlights.scm +221 -0
  77. package/out/cmake/indents.scm +26 -0
  78. package/out/cmake/injections.scm +5 -0
  79. package/out/cmake/tree-sitter-cmake.wasm +0 -0
  80. package/out/comment/highlights.scm +49 -0
  81. package/out/comment/tree-sitter-comment.wasm +0 -0
  82. package/out/commonlisp/folds.scm +2 -0
  83. package/out/commonlisp/highlights.scm +314 -0
  84. package/out/commonlisp/injections.scm +5 -0
  85. package/out/commonlisp/locals.scm +109 -0
  86. package/out/commonlisp/tags.scm +122 -0
  87. package/out/commonlisp/tree-sitter-commonlisp.wasm +0 -0
  88. package/out/cpp/folds.scm +14 -0
  89. package/out/cpp/highlights.scm +70 -0
  90. package/out/cpp/indents.scm +8 -0
  91. package/out/cpp/injections.scm +3 -0
  92. package/out/cpp/locals.scm +78 -0
  93. package/out/cpp/tags.scm +15 -0
  94. package/out/cpp/tree-sitter-cpp.wasm +0 -0
  95. package/out/css/folds.scm +10 -0
  96. package/out/css/highlights.scm +76 -0
  97. package/out/css/indents.scm +11 -0
  98. package/out/css/injections.scm +2 -0
  99. package/out/css/tree-sitter-css.wasm +0 -0
  100. package/out/csv/highlights.scm +5 -0
  101. package/out/csv/tree-sitter-csv.wasm +0 -0
  102. package/out/cuda/folds.scm +1 -0
  103. package/out/cuda/highlights.scm +17 -0
  104. package/out/cuda/indents.scm +1 -0
  105. package/out/cuda/injections.scm +1 -0
  106. package/out/cuda/locals.scm +1 -0
  107. package/out/cuda/tree-sitter-cuda.wasm +0 -0
  108. package/out/d/folds.scm +4 -0
  109. package/out/d/helix-highlights.scm +241 -0
  110. package/out/d/helix-indents.scm +17 -0
  111. package/out/d/helix-injections.scm +2 -0
  112. package/out/d/helix-textobjects.scm +9 -0
  113. package/out/d/highlights.scm +259 -0
  114. package/out/d/indents.scm +17 -0
  115. package/out/d/injections.scm +2 -0
  116. package/out/d/locals.scm +79 -0
  117. package/out/d/nova-folds.scm +6 -0
  118. package/out/d/nova-highlights.scm +283 -0
  119. package/out/d/nova-symbols.scm +23 -0
  120. package/out/d/tags.scm +28 -0
  121. package/out/d/textobjects.scm +9 -0
  122. package/out/d/tree-sitter-d.wasm +0 -0
  123. package/out/dart/folds.scm +8 -0
  124. package/out/dart/highlights.scm +224 -0
  125. package/out/dart/indents.scm +49 -0
  126. package/out/dart/injections.scm +2 -0
  127. package/out/dart/locals.scm +32 -0
  128. package/out/dart/tree-sitter-dart.wasm +0 -0
  129. package/out/desktop/folds.scm +1 -0
  130. package/out/desktop/highlights.scm +91 -0
  131. package/out/desktop/injections.scm +8 -0
  132. package/out/desktop/tree-sitter-desktop.wasm +0 -0
  133. package/out/devicetree/folds.scm +1 -0
  134. package/out/devicetree/highlights.scm +78 -0
  135. package/out/devicetree/indents.scm +12 -0
  136. package/out/devicetree/injections.scm +2 -0
  137. package/out/devicetree/locals.scm +4 -0
  138. package/out/devicetree/tree-sitter-devicetree.wasm +0 -0
  139. package/out/diff/folds.scm +5 -0
  140. package/out/diff/highlights.scm +49 -0
  141. package/out/diff/injections.scm +2 -0
  142. package/out/diff/tree-sitter-diff.wasm +0 -0
  143. package/out/dockerfile/highlights.scm +58 -0
  144. package/out/dockerfile/injections.scm +12 -0
  145. package/out/dockerfile/tree-sitter-dockerfile.wasm +0 -0
  146. package/out/dtd/folds.scm +4 -0
  147. package/out/dtd/highlights.scm +148 -0
  148. package/out/dtd/injections.scm +2 -0
  149. package/out/dtd/locals.scm +11 -0
  150. package/out/dtd/tree-sitter-dtd.wasm +0 -0
  151. package/out/editorconfig/folds.scm +1 -0
  152. package/out/editorconfig/highlights.scm +35 -0
  153. package/out/editorconfig/injections.scm +2 -0
  154. package/out/editorconfig/tree-sitter-editorconfig.wasm +0 -0
  155. package/out/elisp/highlights.scm +72 -0
  156. package/out/elisp/tags.scm +5 -0
  157. package/out/elisp/tree-sitter-elisp.wasm +0 -0
  158. package/out/elixir/folds.scm +10 -0
  159. package/out/elixir/highlights.scm +223 -0
  160. package/out/elixir/indents.scm +25 -0
  161. package/out/elixir/injections.scm +55 -0
  162. package/out/elixir/locals.scm +200 -0
  163. package/out/elixir/tags.scm +54 -0
  164. package/out/elixir/tree-sitter-elixir.wasm +0 -0
  165. package/out/elm/folds.scm +14 -0
  166. package/out/elm/highlights.scm +76 -0
  167. package/out/elm/injections.scm +4 -0
  168. package/out/elm/locals.scm +15 -0
  169. package/out/elm/tags.scm +19 -0
  170. package/out/elm/tree-sitter-elm.wasm +0 -0
  171. package/out/embedded_template/highlights.scm +12 -0
  172. package/out/embedded_template/injections-ejs.scm +7 -0
  173. package/out/embedded_template/injections-erb.scm +7 -0
  174. package/out/embedded_template/injections-etlua.scm +7 -0
  175. package/out/embedded_template/injections.scm +7 -0
  176. package/out/embedded_template/tree-sitter-embedded_template.wasm +0 -0
  177. package/out/erlang/folds.scm +9 -0
  178. package/out/erlang/highlights.scm +230 -0
  179. package/out/erlang/injections.scm +2 -0
  180. package/out/erlang/tree-sitter-erlang.wasm +0 -0
  181. package/out/fish/folds.scm +8 -0
  182. package/out/fish/highlights.scm +61 -0
  183. package/out/fish/indents.scm +18 -0
  184. package/out/fish/injections.scm +2 -0
  185. package/out/fish/locals.scm +19 -0
  186. package/out/fish/tree-sitter-fish.wasm +0 -0
  187. package/out/gdscript/folds.scm +26 -0
  188. package/out/gdscript/highlights.scm +635 -0
  189. package/out/gdscript/indents.scm +78 -0
  190. package/out/gdscript/injections.scm +2 -0
  191. package/out/gdscript/locals.scm +121 -0
  192. package/out/gdscript/tree-sitter-gdscript.wasm +0 -0
  193. package/out/gdshader/highlights.scm +256 -0
  194. package/out/gdshader/injections.scm +2 -0
  195. package/out/gdshader/locals.scm +24 -0
  196. package/out/gdshader/tags.scm +13 -0
  197. package/out/gdshader/tree-sitter-gdshader.wasm +0 -0
  198. package/out/git_config/folds.scm +2 -0
  199. package/out/git_config/highlights.scm +28 -0
  200. package/out/git_config/injections.scm +69 -0
  201. package/out/git_config/tree-sitter-git_config.wasm +0 -0
  202. package/out/git_rebase/highlights.scm +36 -0
  203. package/out/git_rebase/injections.scm +8 -0
  204. package/out/git_rebase/tree-sitter-git_rebase.wasm +0 -0
  205. package/out/gitattributes/highlights.scm +52 -0
  206. package/out/gitattributes/injections.scm +2 -0
  207. package/out/gitattributes/locals.scm +8 -0
  208. package/out/gitattributes/tree-sitter-gitattributes.wasm +0 -0
  209. package/out/gitignore/highlights.scm +36 -0
  210. package/out/gitignore/injections.scm +2 -0
  211. package/out/gitignore/tree-sitter-gitignore.wasm +0 -0
  212. package/out/gleam/folds.scm +7 -0
  213. package/out/gleam/highlights.scm +137 -0
  214. package/out/gleam/indents.scm +28 -0
  215. package/out/gleam/injections.scm +3 -0
  216. package/out/gleam/locals.scm +17 -0
  217. package/out/gleam/tags.scm +41 -0
  218. package/out/gleam/tree-sitter-gleam.wasm +0 -0
  219. package/out/glsl/folds.scm +1 -0
  220. package/out/glsl/highlights.scm +115 -0
  221. package/out/glsl/indents.scm +1 -0
  222. package/out/glsl/injections.scm +1 -0
  223. package/out/glsl/locals.scm +1 -0
  224. package/out/glsl/tree-sitter-glsl.wasm +0 -0
  225. package/out/go/folds.scm +19 -0
  226. package/out/go/highlights.scm +123 -0
  227. package/out/go/indents.scm +48 -0
  228. package/out/go/injections.scm +42 -0
  229. package/out/go/locals.scm +88 -0
  230. package/out/go/tags.scm +42 -0
  231. package/out/go/tree-sitter-go.wasm +0 -0
  232. package/out/godot_resource/folds.scm +1 -0
  233. package/out/godot_resource/highlights.scm +49 -0
  234. package/out/godot_resource/injections.scm +2 -0
  235. package/out/godot_resource/locals.scm +1 -0
  236. package/out/godot_resource/tree-sitter-godot_resource.wasm +0 -0
  237. package/out/graphql/highlights.scm +163 -0
  238. package/out/graphql/indents.scm +11 -0
  239. package/out/graphql/injections.scm +2 -0
  240. package/out/graphql/tree-sitter-graphql.wasm +0 -0
  241. package/out/groovy/folds.scm +6 -0
  242. package/out/groovy/highlights.scm +148 -0
  243. package/out/groovy/indents.scm +23 -0
  244. package/out/groovy/injections.scm +5 -0
  245. package/out/groovy/locals.scm +6 -0
  246. package/out/groovy/tree-sitter-groovy.wasm +0 -0
  247. package/out/haskell/folds.scm +6 -0
  248. package/out/haskell/highlights.scm +443 -0
  249. package/out/haskell/injections.scm +76 -0
  250. package/out/haskell/locals.scm +4 -0
  251. package/out/haskell/tree-sitter-haskell.wasm +0 -0
  252. package/out/hcl/folds.scm +6 -0
  253. package/out/hcl/highlights.scm +118 -0
  254. package/out/hcl/indents.scm +16 -0
  255. package/out/hcl/injections.scm +6 -0
  256. package/out/hcl/tree-sitter-hcl.wasm +0 -0
  257. package/out/html/folds.scm +5 -0
  258. package/out/html/highlights.scm +13 -0
  259. package/out/html/indents.scm +1 -0
  260. package/out/html/injections.scm +7 -0
  261. package/out/html/locals.scm +1 -0
  262. package/out/html/tree-sitter-html.wasm +0 -0
  263. package/out/ini/folds.scm +1 -0
  264. package/out/ini/highlights.scm +16 -0
  265. package/out/ini/injections.scm +3 -0
  266. package/out/ini/tree-sitter-ini.wasm +0 -0
  267. package/out/java/folds.scm +8 -0
  268. package/out/java/highlights.scm +149 -0
  269. package/out/java/indents.scm +40 -0
  270. package/out/java/injections.scm +31 -0
  271. package/out/java/locals.scm +100 -0
  272. package/out/java/tags.scm +20 -0
  273. package/out/java/tree-sitter-java.wasm +0 -0
  274. package/out/javascript/folds.scm +1 -0
  275. package/out/javascript/highlights-jsx.scm +8 -0
  276. package/out/javascript/highlights-params.scm +12 -0
  277. package/out/javascript/highlights.scm +204 -0
  278. package/out/javascript/indents.scm +1 -0
  279. package/out/javascript/injections.scm +31 -0
  280. package/out/javascript/locals.scm +23 -0
  281. package/out/javascript/tags.scm +99 -0
  282. package/out/javascript/tree-sitter-javascript.wasm +0 -0
  283. package/out/jq/highlights.scm +158 -0
  284. package/out/jq/injections.scm +23 -0
  285. package/out/jq/locals.scm +10 -0
  286. package/out/jq/tree-sitter-jq.wasm +0 -0
  287. package/out/json/folds.scm +5 -0
  288. package/out/json/highlights.scm +16 -0
  289. package/out/json/indents.scm +11 -0
  290. package/out/json/injections.scm +2 -0
  291. package/out/json/locals.scm +4 -0
  292. package/out/json/tree-sitter-json.wasm +0 -0
  293. package/out/julia/folds.scm +14 -0
  294. package/out/julia/highlights.scm +375 -0
  295. package/out/julia/indents.scm +52 -0
  296. package/out/julia/injections.scm +42 -0
  297. package/out/julia/locals.scm +71 -0
  298. package/out/julia/tree-sitter-julia.wasm +0 -0
  299. package/out/just/folds.scm +6 -0
  300. package/out/just/highlights.scm +139 -0
  301. package/out/just/indents.scm +14 -0
  302. package/out/just/injections.scm +44 -0
  303. package/out/just/locals.scm +35 -0
  304. package/out/just/tree-sitter-just.wasm +0 -0
  305. package/out/kdl/folds.scm +8 -0
  306. package/out/kdl/highlights.scm +58 -0
  307. package/out/kdl/indents.scm +7 -0
  308. package/out/kdl/injections.scm +4 -0
  309. package/out/kdl/locals.scm +10 -0
  310. package/out/kdl/tree-sitter-kdl.wasm +0 -0
  311. package/out/kotlin/folds.scm +13 -0
  312. package/out/kotlin/highlights.scm +380 -0
  313. package/out/kotlin/injections.scm +52 -0
  314. package/out/kotlin/locals.scm +78 -0
  315. package/out/kotlin/tree-sitter-kotlin.wasm +0 -0
  316. package/out/liquid/highlights.scm +119 -0
  317. package/out/liquid/injections.scm +22 -0
  318. package/out/liquid/tree-sitter-liquid.wasm +0 -0
  319. package/out/lua/folds.scm +12 -0
  320. package/out/lua/highlights.scm +201 -0
  321. package/out/lua/indents.scm +47 -0
  322. package/out/lua/injections.scm +12 -0
  323. package/out/lua/locals.scm +32 -0
  324. package/out/lua/tags.scm +36 -0
  325. package/out/lua/tree-sitter-lua.wasm +0 -0
  326. package/out/make/folds.scm +6 -0
  327. package/out/make/highlights.scm +172 -0
  328. package/out/make/injections.scm +5 -0
  329. package/out/make/tree-sitter-make.wasm +0 -0
  330. package/out/markdown/folds.scm +12 -0
  331. package/out/markdown/highlights.scm +52 -0
  332. package/out/markdown/indents.scm +1 -0
  333. package/out/markdown/injections.scm +12 -0
  334. package/out/markdown/tree-sitter-markdown.wasm +0 -0
  335. package/out/markdown_inline/highlights.scm +37 -0
  336. package/out/markdown_inline/injections.scm +2 -0
  337. package/out/markdown_inline/tree-sitter-markdown_inline.wasm +0 -0
  338. package/out/matlab/folds.scm +13 -0
  339. package/out/matlab/highlights.scm +218 -0
  340. package/out/matlab/indents.scm +40 -0
  341. package/out/matlab/injections.scm +2 -0
  342. package/out/matlab/locals.scm +33 -0
  343. package/out/matlab/tree-sitter-matlab.wasm +0 -0
  344. package/out/nginx/folds.scm +1 -0
  345. package/out/nginx/highlights.scm +59 -0
  346. package/out/nginx/injections.scm +2 -0
  347. package/out/nginx/tree-sitter-nginx.wasm +0 -0
  348. package/out/nim/folds.scm +41 -0
  349. package/out/nim/highlights.scm +186 -0
  350. package/out/nim/injections.scm +79 -0
  351. package/out/nim/locals.scm +328 -0
  352. package/out/nim/tree-sitter-nim.wasm +0 -0
  353. package/out/nix/folds.scm +11 -0
  354. package/out/nix/highlights.scm +99 -0
  355. package/out/nix/indents.scm +75 -0
  356. package/out/nix/injections.scm +39 -0
  357. package/out/nix/locals.scm +33 -0
  358. package/out/nix/tags.scm +16 -0
  359. package/out/nix/tree-sitter-nix.wasm +0 -0
  360. package/out/objc/folds.scm +20 -0
  361. package/out/objc/highlights.scm +216 -0
  362. package/out/objc/indents.scm +1 -0
  363. package/out/objc/injections.scm +10 -0
  364. package/out/objc/locals.scm +1 -0
  365. package/out/objc/tree-sitter-objc.wasm +0 -0
  366. package/out/ocaml/folds.scm +30 -0
  367. package/out/ocaml/highlights.scm +148 -0
  368. package/out/ocaml/indents.scm +77 -0
  369. package/out/ocaml/injections.scm +2 -0
  370. package/out/ocaml/locals.scm +24 -0
  371. package/out/ocaml/tags.scm +170 -0
  372. package/out/ocaml/tree-sitter-ocaml.wasm +0 -0
  373. package/out/ocaml_interface/folds.scm +1 -0
  374. package/out/ocaml_interface/highlights.scm +148 -0
  375. package/out/ocaml_interface/indents.scm +1 -0
  376. package/out/ocaml_interface/injections.scm +1 -0
  377. package/out/ocaml_interface/locals.scm +24 -0
  378. package/out/ocaml_interface/tags.scm +170 -0
  379. package/out/ocaml_interface/tree-sitter-ocaml_interface.wasm +0 -0
  380. package/out/ocaml_type/highlights.scm +148 -0
  381. package/out/ocaml_type/locals.scm +24 -0
  382. package/out/ocaml_type/tags.scm +170 -0
  383. package/out/ocaml_type/tree-sitter-ocaml_type.wasm +0 -0
  384. package/out/perl/folds.scm +27 -0
  385. package/out/perl/highlights.scm +162 -0
  386. package/out/perl/injections.scm +14 -0
  387. package/out/perl/matchup.scm +30 -0
  388. package/out/perl/tree-sitter-perl.wasm +0 -0
  389. package/out/php/folds.scm +1 -0
  390. package/out/php/highlights.scm +203 -0
  391. package/out/php/indents.scm +1 -0
  392. package/out/php/injections-text.scm +3 -0
  393. package/out/php/injections.scm +10 -0
  394. package/out/php/locals.scm +1 -0
  395. package/out/php/tags.scm +40 -0
  396. package/out/php/tree-sitter-php.wasm +0 -0
  397. package/out/php_only/folds.scm +19 -0
  398. package/out/php_only/highlights.scm +203 -0
  399. package/out/php_only/indents.scm +68 -0
  400. package/out/php_only/injections-text.scm +3 -0
  401. package/out/php_only/injections.scm +10 -0
  402. package/out/php_only/locals.scm +84 -0
  403. package/out/php_only/tags.scm +40 -0
  404. package/out/php_only/tree-sitter-php_only.wasm +0 -0
  405. package/out/powershell/folds.scm +13 -0
  406. package/out/powershell/highlights.scm +128 -0
  407. package/out/powershell/indents.scm +41 -0
  408. package/out/powershell/injections.scm +27 -0
  409. package/out/powershell/locals.scm +85 -0
  410. package/out/powershell/tree-sitter-powershell.wasm +0 -0
  411. package/out/prisma/folds.scm +7 -0
  412. package/out/prisma/highlights.scm +39 -0
  413. package/out/prisma/injections.scm +5 -0
  414. package/out/prisma/tree-sitter-prisma.wasm +0 -0
  415. package/out/proto/folds.scm +9 -0
  416. package/out/proto/highlights.scm +151 -0
  417. package/out/proto/indents.scm +11 -0
  418. package/out/proto/injections.scm +2 -0
  419. package/out/proto/tree-sitter-proto.wasm +0 -0
  420. package/out/psv/highlights.scm +5 -0
  421. package/out/psv/tree-sitter-psv.wasm +0 -0
  422. package/out/python/folds.scm +28 -0
  423. package/out/python/highlights.scm +137 -0
  424. package/out/python/indents.scm +213 -0
  425. package/out/python/injections.scm +30 -0
  426. package/out/python/locals.scm +124 -0
  427. package/out/python/tags.scm +14 -0
  428. package/out/python/tree-sitter-python.wasm +0 -0
  429. package/out/qmljs/folds.scm +8 -0
  430. package/out/qmljs/highlights.scm +61 -0
  431. package/out/qmljs/injections.scm +1 -0
  432. package/out/qmljs/locals.scm +6 -0
  433. package/out/qmljs/tree-sitter-qmljs.wasm +0 -0
  434. package/out/query/folds.scm +6 -0
  435. package/out/query/highlights.scm +102 -0
  436. package/out/query/indents.scm +25 -0
  437. package/out/query/injections.scm +28 -0
  438. package/out/query/locals.scm +21 -0
  439. package/out/query/tree-sitter-query.wasm +0 -0
  440. package/out/r/highlights.scm +112 -0
  441. package/out/r/indents.scm +33 -0
  442. package/out/r/injections.scm +2 -0
  443. package/out/r/locals.scm +18 -0
  444. package/out/r/tags.scm +21 -0
  445. package/out/r/tree-sitter-r.wasm +0 -0
  446. package/out/racket/folds.scm +2 -0
  447. package/out/racket/highlights.scm +108 -0
  448. package/out/racket/injections.scm +5 -0
  449. package/out/racket/locals.scm +34 -0
  450. package/out/racket/tags.scm +12 -0
  451. package/out/racket/tree-sitter-racket.wasm +0 -0
  452. package/out/regex/highlights.scm +63 -0
  453. package/out/regex/tree-sitter-regex.wasm +0 -0
  454. package/out/requirements/highlights.scm +45 -0
  455. package/out/requirements/injections.scm +2 -0
  456. package/out/requirements/tree-sitter-requirements.wasm +0 -0
  457. package/out/ruby/folds.scm +12 -0
  458. package/out/ruby/highlights.scm +154 -0
  459. package/out/ruby/indents.scm +43 -0
  460. package/out/ruby/injections.scm +34 -0
  461. package/out/ruby/locals.scm +27 -0
  462. package/out/ruby/tags.scm +64 -0
  463. package/out/ruby/tree-sitter-ruby.wasm +0 -0
  464. package/out/rust/folds.scm +25 -0
  465. package/out/rust/highlights.scm +161 -0
  466. package/out/rust/indents.scm +133 -0
  467. package/out/rust/injections.scm +9 -0
  468. package/out/rust/locals.scm +98 -0
  469. package/out/rust/tags.scm +60 -0
  470. package/out/rust/tree-sitter-rust.wasm +0 -0
  471. package/out/scala/folds.scm +16 -0
  472. package/out/scala/highlights.scm +260 -0
  473. package/out/scala/indents.scm +30 -0
  474. package/out/scala/injections.scm +5 -0
  475. package/out/scala/locals.scm +30 -0
  476. package/out/scala/tags.scm +66 -0
  477. package/out/scala/tree-sitter-scala.wasm +0 -0
  478. package/out/scheme/folds.scm +2 -0
  479. package/out/scheme/highlights.scm +84 -0
  480. package/out/scheme/injections.scm +2 -0
  481. package/out/scheme/tree-sitter-scheme.wasm +0 -0
  482. package/out/scss/folds.scm +1 -0
  483. package/out/scss/highlights.scm +69 -0
  484. package/out/scss/indents.scm +7 -0
  485. package/out/scss/injections.scm +2 -0
  486. package/out/scss/tree-sitter-scss.wasm +0 -0
  487. package/out/solidity/folds.scm +20 -0
  488. package/out/solidity/highlights-nvim.scm +309 -0
  489. package/out/solidity/highlights.scm +217 -0
  490. package/out/solidity/injections.scm +14 -0
  491. package/out/solidity/locals.scm +9 -0
  492. package/out/solidity/tags.scm +43 -0
  493. package/out/solidity/tree-sitter-solidity.wasm +0 -0
  494. package/out/sql/folds.scm +1 -0
  495. package/out/sql/highlights.scm +445 -0
  496. package/out/sql/indents.scm +27 -0
  497. package/out/sql/injections.scm +5 -0
  498. package/out/sql/tree-sitter-sql.wasm +0 -0
  499. package/out/ssh_config/folds.scm +4 -0
  500. package/out/ssh_config/highlights.scm +81 -0
  501. package/out/ssh_config/indents.scm +12 -0
  502. package/out/ssh_config/injections.scm +15 -0
  503. package/out/ssh_config/locals.scm +7 -0
  504. package/out/ssh_config/tree-sitter-ssh_config.wasm +0 -0
  505. package/out/swift/folds.scm +35 -0
  506. package/out/swift/highlights.scm +336 -0
  507. package/out/swift/indents.scm +123 -0
  508. package/out/swift/injections.scm +10 -0
  509. package/out/swift/locals.scm +23 -0
  510. package/out/swift/outline.scm +66 -0
  511. package/out/swift/tags.scm +51 -0
  512. package/out/swift/textobjects.scm +19 -0
  513. package/out/swift/tree-sitter-swift.wasm +0 -0
  514. package/out/templ/folds.scm +15 -0
  515. package/out/templ/highlights.scm +60 -0
  516. package/out/templ/injections.scm +13 -0
  517. package/out/templ/tree-sitter-templ.wasm +0 -0
  518. package/out/terraform/folds.scm +1 -0
  519. package/out/terraform/highlights.scm +41 -0
  520. package/out/terraform/indents.scm +1 -0
  521. package/out/terraform/injections.scm +1 -0
  522. package/out/terraform/tree-sitter-terraform.wasm +0 -0
  523. package/out/toml/folds.scm +5 -0
  524. package/out/toml/highlights.scm +53 -0
  525. package/out/toml/indents.scm +11 -0
  526. package/out/toml/injections.scm +2 -0
  527. package/out/toml/locals.scm +4 -0
  528. package/out/toml/tree-sitter-toml.wasm +0 -0
  529. package/out/tsv/highlights.scm +4 -0
  530. package/out/tsv/tree-sitter-tsv.wasm +0 -0
  531. package/out/tsx/folds.scm +1 -0
  532. package/out/tsx/highlights.scm +35 -0
  533. package/out/tsx/indents.scm +1 -0
  534. package/out/tsx/injections.scm +1 -0
  535. package/out/tsx/locals.scm +2 -0
  536. package/out/tsx/tags.scm +23 -0
  537. package/out/tsx/tree-sitter-tsx.wasm +0 -0
  538. package/out/typescript/folds.scm +8 -0
  539. package/out/typescript/highlights.scm +35 -0
  540. package/out/typescript/indents.scm +7 -0
  541. package/out/typescript/injections.scm +28 -0
  542. package/out/typescript/locals.scm +2 -0
  543. package/out/typescript/tags.scm +23 -0
  544. package/out/typescript/tree-sitter-typescript.wasm +0 -0
  545. package/out/vim/folds.scm +4 -0
  546. package/out/vim/highlights.scm +362 -0
  547. package/out/vim/injections.scm +44 -0
  548. package/out/vim/locals.scm +19 -0
  549. package/out/vim/tree-sitter-vim.wasm +0 -0
  550. package/out/vimdoc/highlights.scm +74 -0
  551. package/out/vimdoc/injections.scm +4 -0
  552. package/out/vimdoc/tree-sitter-vimdoc.wasm +0 -0
  553. package/out/vue/folds.scm +6 -0
  554. package/out/vue/highlights.scm +54 -0
  555. package/out/vue/indents.scm +7 -0
  556. package/out/vue/injections.scm +78 -0
  557. package/out/vue/tree-sitter-vue.wasm +0 -0
  558. package/out/xml/folds.scm +5 -0
  559. package/out/xml/highlights.scm +198 -0
  560. package/out/xml/indents.scm +16 -0
  561. package/out/xml/injections.scm +32 -0
  562. package/out/xml/locals.scm +35 -0
  563. package/out/xml/tree-sitter-xml.wasm +0 -0
  564. package/out/yaml/folds.scm +4 -0
  565. package/out/yaml/highlights.scm +79 -0
  566. package/out/yaml/indents.scm +7 -0
  567. package/out/yaml/injections.scm +81 -0
  568. package/out/yaml/locals.scm +9 -0
  569. package/out/yaml/tree-sitter-yaml.wasm +0 -0
  570. package/out/zig/folds.scm +23 -0
  571. package/out/zig/highlights.scm +291 -0
  572. package/out/zig/indents.scm +22 -0
  573. package/out/zig/injections.scm +10 -0
  574. package/out/zig/locals.scm +96 -0
  575. package/out/zig/tree-sitter-zig.wasm +0 -0
  576. package/package.json +152 -0
@@ -0,0 +1,24 @@
1
+ ; Scopes
2
+ ;-------
3
+
4
+ [
5
+ (let_binding)
6
+ (class_binding)
7
+ (class_function)
8
+ (method_definition)
9
+ (fun_expression)
10
+ (object_expression)
11
+ (for_expression)
12
+ (match_case)
13
+ (attribute_payload)
14
+ ] @local.scope
15
+
16
+ ; Definitions
17
+ ;------------
18
+
19
+ (value_pattern) @local.definition
20
+
21
+ ; References
22
+ ;-----------
23
+
24
+ (value_path . (value_name) @local.reference)
@@ -0,0 +1,170 @@
1
+ ; Modules
2
+ ;--------
3
+
4
+ (
5
+ (comment)? @doc .
6
+ (module_definition
7
+ (module_binding (module_name) @name) @definition.module
8
+ )
9
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
10
+ )
11
+
12
+ (module_path (module_name) @name) @reference.module
13
+ (extended_module_path (module_name) @name) @reference.module
14
+
15
+ (
16
+ (comment)? @doc .
17
+ (module_type_definition (module_type_name) @name) @definition.interface
18
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
19
+ )
20
+
21
+ (module_type_path (module_type_name) @name) @reference.implementation
22
+
23
+
24
+ ; Classes
25
+ ;--------
26
+
27
+ (
28
+ (comment)? @doc .
29
+ [
30
+ (class_definition
31
+ (class_binding (class_name) @name) @definition.class
32
+ )
33
+ (class_type_definition
34
+ (class_type_binding (class_type_name) @name) @definition.class
35
+ )
36
+ ]
37
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
38
+ )
39
+
40
+ [
41
+ (class_path (class_name) @name)
42
+ (class_type_path (class_type_name) @name)
43
+ ] @reference.class
44
+
45
+ (
46
+ (comment)? @doc .
47
+ (method_definition (method_name) @name) @definition.method
48
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
49
+ )
50
+
51
+ (method_invocation (method_name) @name) @reference.call
52
+
53
+
54
+ ; Types
55
+ ;------
56
+
57
+ (
58
+ (comment)? @doc .
59
+ (type_definition
60
+ (type_binding
61
+ name: [
62
+ (type_constructor) @name
63
+ (type_constructor_path (type_constructor) @name)
64
+ ]
65
+ ) @definition.type
66
+ )
67
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
68
+ )
69
+
70
+ (type_constructor_path (type_constructor) @name) @reference.type
71
+
72
+ [
73
+ (constructor_declaration (constructor_name) @name)
74
+ (tag_specification (tag) @name)
75
+ ] @definition.enum_variant
76
+
77
+ [
78
+ (constructor_path (constructor_name) @name)
79
+ (tag) @name
80
+ ] @reference.enum_variant
81
+
82
+ (field_declaration (field_name) @name) @definition.field
83
+
84
+ (field_path (field_name) @name) @reference.field
85
+
86
+
87
+ ; Functions
88
+ ;----------
89
+
90
+ (
91
+ (comment)? @doc .
92
+ (value_definition
93
+ [
94
+ (let_binding pattern: (value_name) @name (parameter))
95
+ (let_binding
96
+ pattern: (value_name) @name
97
+ body: [(fun_expression) (function_expression)]
98
+ )
99
+ ] @definition.function
100
+ )
101
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
102
+ )
103
+
104
+ (
105
+ (comment)? @doc .
106
+ (external (value_name) @name) @definition.function
107
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
108
+ )
109
+
110
+ (application_expression
111
+ function: (value_path (value_name) @name)
112
+ ) @reference.call
113
+
114
+ (infix_expression
115
+ left: (value_path (value_name) @name)
116
+ operator: (concat_operator) @reference.call
117
+ (#eq? @reference.call "@@")
118
+ )
119
+
120
+ (infix_expression
121
+ operator: (rel_operator) @reference.call
122
+ right: (value_path (value_name) @name)
123
+ (#eq? @reference.call "|>")
124
+ )
125
+
126
+
127
+ ; Operators
128
+ ;----------
129
+
130
+ (
131
+ (comment)? @doc .
132
+ (value_definition
133
+ [
134
+ (let_binding pattern: (parenthesized_operator (_) @name) (parameter))
135
+ (let_binding
136
+ pattern: (parenthesized_operator (_) @name)
137
+ body: [(fun_expression) (function_expression)]
138
+ )
139
+ ] @definition.operator
140
+ )
141
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
142
+ )
143
+
144
+ (application_expression
145
+ function: (value_path (parenthesized_operator (_) @name))
146
+ ) @reference.call
147
+
148
+ (infix_expression
149
+ left: (value_path (parenthesized_operator (_) @name))
150
+ operator: (concat_operator) @reference.call
151
+ (#eq? @reference.call "@@")
152
+ )
153
+
154
+ (infix_expression
155
+ operator: (rel_operator) @reference.call
156
+ right: (value_path (parenthesized_operator (_) @name))
157
+ (#eq? @reference.call "|>")
158
+ )
159
+
160
+ (prefix_expression operator: (prefix_operator) @name) @reference.call
161
+
162
+ (hash_expression operator: (hash_operator) @name) @reference.call
163
+
164
+ (infix_expression operator: (_) @name) @reference.call
165
+
166
+ (indexing_operator_path (indexing_operator) @name) @reference.call
167
+
168
+ (value_definition [(let_operator) (let_and_operator)] @name) @reference.call
169
+
170
+ (match_expression (match_operator) @name) @reference.call
Binary file
@@ -0,0 +1 @@
1
+ ; inherits: ocaml
@@ -0,0 +1,148 @@
1
+ ; Punctuation
2
+ ;------------
3
+
4
+ [
5
+ "," "." ";" ":" "=" "|" "~" "?" "+" "-" "!" ">" "&"
6
+ "->" ";;" ":>" "+=" ":=" ".."
7
+ ] @punctuation.delimiter
8
+
9
+ ["(" ")" "[" "]" "{" "}" "[|" "|]" "[<" "[>"] @punctuation.bracket
10
+
11
+ (object_type ["<" ">"] @punctuation.bracket)
12
+
13
+ "%" @punctuation.special
14
+
15
+ (attribute ["[@" "]"] @punctuation.special)
16
+ (item_attribute ["[@@" "]"] @punctuation.special)
17
+ (floating_attribute ["[@@@" "]"] @punctuation.special)
18
+ (extension ["[%" "]"] @punctuation.special)
19
+ (item_extension ["[%%" "]"] @punctuation.special)
20
+ (quoted_extension ["{%" "}"] @punctuation.special)
21
+ (quoted_item_extension ["{%%" "}"] @punctuation.special)
22
+
23
+ ; Keywords
24
+ ;---------
25
+
26
+ [
27
+ "and" "as" "assert" "begin" "class" "constraint" "do" "done" "downto" "effect"
28
+ "else" "end" "exception" "external" "for" "fun" "function" "functor" "if" "in"
29
+ "include" "inherit" "initializer" "lazy" "let" "match" "method" "module"
30
+ "mutable" "new" "nonrec" "object" "of" "open" "private" "rec" "sig" "struct"
31
+ "then" "to" "try" "type" "val" "virtual" "when" "while" "with"
32
+ ] @keyword
33
+
34
+ ; Operators
35
+ ;----------
36
+
37
+ [
38
+ (prefix_operator)
39
+ (sign_operator)
40
+ (pow_operator)
41
+ (mult_operator)
42
+ (add_operator)
43
+ (concat_operator)
44
+ (rel_operator)
45
+ (and_operator)
46
+ (or_operator)
47
+ (assign_operator)
48
+ (hash_operator)
49
+ (indexing_operator)
50
+ (let_operator)
51
+ (let_and_operator)
52
+ (match_operator)
53
+ ] @operator
54
+
55
+ (match_expression (match_operator) @keyword)
56
+
57
+ (value_definition [(let_operator) (let_and_operator)] @keyword)
58
+
59
+ ["*" "#" "::" "<-"] @operator
60
+
61
+ ; Constants
62
+ ;----------
63
+
64
+ (boolean) @constant
65
+
66
+ [(number) (signed_number)] @number
67
+
68
+ [(string) (character)] @string
69
+
70
+ (quoted_string "{" @string "}" @string) @string
71
+
72
+ (escape_sequence) @escape
73
+
74
+ (conversion_specification) @string.special
75
+
76
+ ; Variables
77
+ ;----------
78
+
79
+ [(value_name) (type_variable)] @variable
80
+
81
+ (value_pattern) @variable.parameter
82
+
83
+ ; Properties
84
+ ;-----------
85
+
86
+ [(label_name) (field_name) (instance_variable_name)] @property
87
+
88
+ ; Functions
89
+ ;----------
90
+
91
+ (let_binding
92
+ pattern: (value_name) @function
93
+ (parameter))
94
+
95
+ (let_binding
96
+ pattern: (value_name) @function
97
+ body: [(fun_expression) (function_expression)])
98
+
99
+ (value_specification (value_name) @function)
100
+
101
+ (external (value_name) @function)
102
+
103
+ (method_name) @function.method
104
+
105
+ (application_expression
106
+ function: (value_path (value_name) @function))
107
+
108
+ (infix_expression
109
+ left: (value_path (value_name) @function)
110
+ operator: (concat_operator) @operator
111
+ (#eq? @operator "@@"))
112
+
113
+ (infix_expression
114
+ operator: (rel_operator) @operator
115
+ right: (value_path (value_name) @function)
116
+ (#eq? @operator "|>"))
117
+
118
+ (
119
+ (value_name) @function.builtin
120
+ (#match? @function.builtin "^(raise(_notrace)?|failwith|invalid_arg)$")
121
+ )
122
+
123
+ ; Types
124
+ ;------
125
+
126
+ [(class_name) (class_type_name) (type_constructor)] @type
127
+
128
+ (
129
+ (type_constructor) @type.builtin
130
+ (#match? @type.builtin "^(int|char|bytes|string|float|bool|unit|exn|array|list|option|int32|int64|nativeint|format6|lazy_t)$")
131
+ )
132
+
133
+ [(constructor_name) (tag)] @constructor
134
+
135
+ ; Modules
136
+ ;--------
137
+
138
+ [(module_name) (module_type_name)] @module
139
+
140
+ ; Attributes
141
+ ;-----------
142
+
143
+ (attribute_id) @tag
144
+
145
+ ; Comments
146
+ ;---------
147
+
148
+ [(comment) (line_number_directive) (directive) (shebang)] @comment
@@ -0,0 +1 @@
1
+ ; inherits: ocaml
@@ -0,0 +1 @@
1
+ ; inherits: ocaml
@@ -0,0 +1,24 @@
1
+ ; Scopes
2
+ ;-------
3
+
4
+ [
5
+ (let_binding)
6
+ (class_binding)
7
+ (class_function)
8
+ (method_definition)
9
+ (fun_expression)
10
+ (object_expression)
11
+ (for_expression)
12
+ (match_case)
13
+ (attribute_payload)
14
+ ] @local.scope
15
+
16
+ ; Definitions
17
+ ;------------
18
+
19
+ (value_pattern) @local.definition
20
+
21
+ ; References
22
+ ;-----------
23
+
24
+ (value_path . (value_name) @local.reference)
@@ -0,0 +1,170 @@
1
+ ; Modules
2
+ ;--------
3
+
4
+ (
5
+ (comment)? @doc .
6
+ (module_definition
7
+ (module_binding (module_name) @name) @definition.module
8
+ )
9
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
10
+ )
11
+
12
+ (module_path (module_name) @name) @reference.module
13
+ (extended_module_path (module_name) @name) @reference.module
14
+
15
+ (
16
+ (comment)? @doc .
17
+ (module_type_definition (module_type_name) @name) @definition.interface
18
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
19
+ )
20
+
21
+ (module_type_path (module_type_name) @name) @reference.implementation
22
+
23
+
24
+ ; Classes
25
+ ;--------
26
+
27
+ (
28
+ (comment)? @doc .
29
+ [
30
+ (class_definition
31
+ (class_binding (class_name) @name) @definition.class
32
+ )
33
+ (class_type_definition
34
+ (class_type_binding (class_type_name) @name) @definition.class
35
+ )
36
+ ]
37
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
38
+ )
39
+
40
+ [
41
+ (class_path (class_name) @name)
42
+ (class_type_path (class_type_name) @name)
43
+ ] @reference.class
44
+
45
+ (
46
+ (comment)? @doc .
47
+ (method_definition (method_name) @name) @definition.method
48
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
49
+ )
50
+
51
+ (method_invocation (method_name) @name) @reference.call
52
+
53
+
54
+ ; Types
55
+ ;------
56
+
57
+ (
58
+ (comment)? @doc .
59
+ (type_definition
60
+ (type_binding
61
+ name: [
62
+ (type_constructor) @name
63
+ (type_constructor_path (type_constructor) @name)
64
+ ]
65
+ ) @definition.type
66
+ )
67
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
68
+ )
69
+
70
+ (type_constructor_path (type_constructor) @name) @reference.type
71
+
72
+ [
73
+ (constructor_declaration (constructor_name) @name)
74
+ (tag_specification (tag) @name)
75
+ ] @definition.enum_variant
76
+
77
+ [
78
+ (constructor_path (constructor_name) @name)
79
+ (tag) @name
80
+ ] @reference.enum_variant
81
+
82
+ (field_declaration (field_name) @name) @definition.field
83
+
84
+ (field_path (field_name) @name) @reference.field
85
+
86
+
87
+ ; Functions
88
+ ;----------
89
+
90
+ (
91
+ (comment)? @doc .
92
+ (value_definition
93
+ [
94
+ (let_binding pattern: (value_name) @name (parameter))
95
+ (let_binding
96
+ pattern: (value_name) @name
97
+ body: [(fun_expression) (function_expression)]
98
+ )
99
+ ] @definition.function
100
+ )
101
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
102
+ )
103
+
104
+ (
105
+ (comment)? @doc .
106
+ (external (value_name) @name) @definition.function
107
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
108
+ )
109
+
110
+ (application_expression
111
+ function: (value_path (value_name) @name)
112
+ ) @reference.call
113
+
114
+ (infix_expression
115
+ left: (value_path (value_name) @name)
116
+ operator: (concat_operator) @reference.call
117
+ (#eq? @reference.call "@@")
118
+ )
119
+
120
+ (infix_expression
121
+ operator: (rel_operator) @reference.call
122
+ right: (value_path (value_name) @name)
123
+ (#eq? @reference.call "|>")
124
+ )
125
+
126
+
127
+ ; Operators
128
+ ;----------
129
+
130
+ (
131
+ (comment)? @doc .
132
+ (value_definition
133
+ [
134
+ (let_binding pattern: (parenthesized_operator (_) @name) (parameter))
135
+ (let_binding
136
+ pattern: (parenthesized_operator (_) @name)
137
+ body: [(fun_expression) (function_expression)]
138
+ )
139
+ ] @definition.operator
140
+ )
141
+ (#strip! @doc "^\\(\\*+\\s*|\\s*\\*+\\)$")
142
+ )
143
+
144
+ (application_expression
145
+ function: (value_path (parenthesized_operator (_) @name))
146
+ ) @reference.call
147
+
148
+ (infix_expression
149
+ left: (value_path (parenthesized_operator (_) @name))
150
+ operator: (concat_operator) @reference.call
151
+ (#eq? @reference.call "@@")
152
+ )
153
+
154
+ (infix_expression
155
+ operator: (rel_operator) @reference.call
156
+ right: (value_path (parenthesized_operator (_) @name))
157
+ (#eq? @reference.call "|>")
158
+ )
159
+
160
+ (prefix_expression operator: (prefix_operator) @name) @reference.call
161
+
162
+ (hash_expression operator: (hash_operator) @name) @reference.call
163
+
164
+ (infix_expression operator: (_) @name) @reference.call
165
+
166
+ (indexing_operator_path (indexing_operator) @name) @reference.call
167
+
168
+ (value_definition [(let_operator) (let_and_operator)] @name) @reference.call
169
+
170
+ (match_expression (match_operator) @name) @reference.call
@@ -0,0 +1,148 @@
1
+ ; Punctuation
2
+ ;------------
3
+
4
+ [
5
+ "," "." ";" ":" "=" "|" "~" "?" "+" "-" "!" ">" "&"
6
+ "->" ";;" ":>" "+=" ":=" ".."
7
+ ] @punctuation.delimiter
8
+
9
+ ["(" ")" "[" "]" "{" "}" "[|" "|]" "[<" "[>"] @punctuation.bracket
10
+
11
+ (object_type ["<" ">"] @punctuation.bracket)
12
+
13
+ "%" @punctuation.special
14
+
15
+ (attribute ["[@" "]"] @punctuation.special)
16
+ (item_attribute ["[@@" "]"] @punctuation.special)
17
+ (floating_attribute ["[@@@" "]"] @punctuation.special)
18
+ (extension ["[%" "]"] @punctuation.special)
19
+ (item_extension ["[%%" "]"] @punctuation.special)
20
+ (quoted_extension ["{%" "}"] @punctuation.special)
21
+ (quoted_item_extension ["{%%" "}"] @punctuation.special)
22
+
23
+ ; Keywords
24
+ ;---------
25
+
26
+ [
27
+ "and" "as" "assert" "begin" "class" "constraint" "do" "done" "downto" "effect"
28
+ "else" "end" "exception" "external" "for" "fun" "function" "functor" "if" "in"
29
+ "include" "inherit" "initializer" "lazy" "let" "match" "method" "module"
30
+ "mutable" "new" "nonrec" "object" "of" "open" "private" "rec" "sig" "struct"
31
+ "then" "to" "try" "type" "val" "virtual" "when" "while" "with"
32
+ ] @keyword
33
+
34
+ ; Operators
35
+ ;----------
36
+
37
+ [
38
+ (prefix_operator)
39
+ (sign_operator)
40
+ (pow_operator)
41
+ (mult_operator)
42
+ (add_operator)
43
+ (concat_operator)
44
+ (rel_operator)
45
+ (and_operator)
46
+ (or_operator)
47
+ (assign_operator)
48
+ (hash_operator)
49
+ (indexing_operator)
50
+ (let_operator)
51
+ (let_and_operator)
52
+ (match_operator)
53
+ ] @operator
54
+
55
+ (match_expression (match_operator) @keyword)
56
+
57
+ (value_definition [(let_operator) (let_and_operator)] @keyword)
58
+
59
+ ["*" "#" "::" "<-"] @operator
60
+
61
+ ; Constants
62
+ ;----------
63
+
64
+ (boolean) @constant
65
+
66
+ [(number) (signed_number)] @number
67
+
68
+ [(string) (character)] @string
69
+
70
+ (quoted_string "{" @string "}" @string) @string
71
+
72
+ (escape_sequence) @escape
73
+
74
+ (conversion_specification) @string.special
75
+
76
+ ; Variables
77
+ ;----------
78
+
79
+ [(value_name) (type_variable)] @variable
80
+
81
+ (value_pattern) @variable.parameter
82
+
83
+ ; Properties
84
+ ;-----------
85
+
86
+ [(label_name) (field_name) (instance_variable_name)] @property
87
+
88
+ ; Functions
89
+ ;----------
90
+
91
+ (let_binding
92
+ pattern: (value_name) @function
93
+ (parameter))
94
+
95
+ (let_binding
96
+ pattern: (value_name) @function
97
+ body: [(fun_expression) (function_expression)])
98
+
99
+ (value_specification (value_name) @function)
100
+
101
+ (external (value_name) @function)
102
+
103
+ (method_name) @function.method
104
+
105
+ (application_expression
106
+ function: (value_path (value_name) @function))
107
+
108
+ (infix_expression
109
+ left: (value_path (value_name) @function)
110
+ operator: (concat_operator) @operator
111
+ (#eq? @operator "@@"))
112
+
113
+ (infix_expression
114
+ operator: (rel_operator) @operator
115
+ right: (value_path (value_name) @function)
116
+ (#eq? @operator "|>"))
117
+
118
+ (
119
+ (value_name) @function.builtin
120
+ (#match? @function.builtin "^(raise(_notrace)?|failwith|invalid_arg)$")
121
+ )
122
+
123
+ ; Types
124
+ ;------
125
+
126
+ [(class_name) (class_type_name) (type_constructor)] @type
127
+
128
+ (
129
+ (type_constructor) @type.builtin
130
+ (#match? @type.builtin "^(int|char|bytes|string|float|bool|unit|exn|array|list|option|int32|int64|nativeint|format6|lazy_t)$")
131
+ )
132
+
133
+ [(constructor_name) (tag)] @constructor
134
+
135
+ ; Modules
136
+ ;--------
137
+
138
+ [(module_name) (module_type_name)] @module
139
+
140
+ ; Attributes
141
+ ;-----------
142
+
143
+ (attribute_id) @tag
144
+
145
+ ; Comments
146
+ ;---------
147
+
148
+ [(comment) (line_number_directive) (directive) (shebang)] @comment