@shikijs/langs-precompiled 1.26.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 (637) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +15 -0
  3. package/dist/1c-query.d.mts +3 -0
  4. package/dist/1c-query.mjs +2 -0
  5. package/dist/1c.d.mts +3 -0
  6. package/dist/1c.mjs +2 -0
  7. package/dist/abap.d.mts +3 -0
  8. package/dist/abap.mjs +5 -0
  9. package/dist/actionscript-3.d.mts +3 -0
  10. package/dist/actionscript-3.mjs +5 -0
  11. package/dist/ada.d.mts +3 -0
  12. package/dist/ada.mjs +5 -0
  13. package/dist/adoc.d.mts +3 -0
  14. package/dist/adoc.mjs +2 -0
  15. package/dist/angular-expression.d.mts +3 -0
  16. package/dist/angular-expression.mjs +5 -0
  17. package/dist/angular-html.d.mts +3 -0
  18. package/dist/angular-html.mjs +16 -0
  19. package/dist/angular-inline-style.d.mts +3 -0
  20. package/dist/angular-inline-style.mjs +8 -0
  21. package/dist/angular-inline-template.d.mts +3 -0
  22. package/dist/angular-inline-template.mjs +10 -0
  23. package/dist/angular-let-declaration.d.mts +3 -0
  24. package/dist/angular-let-declaration.mjs +8 -0
  25. package/dist/angular-template-blocks.d.mts +3 -0
  26. package/dist/angular-template-blocks.mjs +10 -0
  27. package/dist/angular-template.d.mts +3 -0
  28. package/dist/angular-template.mjs +8 -0
  29. package/dist/angular-ts.d.mts +3 -0
  30. package/dist/angular-ts.mjs +19 -0
  31. package/dist/apache.d.mts +3 -0
  32. package/dist/apache.mjs +5 -0
  33. package/dist/apex.d.mts +3 -0
  34. package/dist/apex.mjs +7 -0
  35. package/dist/apl.d.mts +3 -0
  36. package/dist/apl.mjs +17 -0
  37. package/dist/applescript.d.mts +3 -0
  38. package/dist/applescript.mjs +7 -0
  39. package/dist/ara.d.mts +3 -0
  40. package/dist/ara.mjs +7 -0
  41. package/dist/asciidoc.d.mts +3 -0
  42. package/dist/asciidoc.mjs +7 -0
  43. package/dist/asm.d.mts +3 -0
  44. package/dist/asm.mjs +7 -0
  45. package/dist/astro.d.mts +3 -0
  46. package/dist/astro.mjs +17 -0
  47. package/dist/awk.d.mts +3 -0
  48. package/dist/awk.mjs +5 -0
  49. package/dist/ballerina.d.mts +3 -0
  50. package/dist/ballerina.mjs +5 -0
  51. package/dist/bash.d.mts +3 -0
  52. package/dist/bash.mjs +2 -0
  53. package/dist/bat.d.mts +3 -0
  54. package/dist/bat.mjs +5 -0
  55. package/dist/batch.d.mts +3 -0
  56. package/dist/batch.mjs +2 -0
  57. package/dist/be.d.mts +3 -0
  58. package/dist/be.mjs +2 -0
  59. package/dist/beancount.d.mts +3 -0
  60. package/dist/beancount.mjs +5 -0
  61. package/dist/berry.d.mts +3 -0
  62. package/dist/berry.mjs +5 -0
  63. package/dist/bibtex.d.mts +3 -0
  64. package/dist/bibtex.mjs +5 -0
  65. package/dist/bicep.d.mts +3 -0
  66. package/dist/bicep.mjs +5 -0
  67. package/dist/blade.d.mts +3 -0
  68. package/dist/blade.mjs +19 -0
  69. package/dist/bsl.d.mts +3 -0
  70. package/dist/bsl.mjs +8 -0
  71. package/dist/c.d.mts +3 -0
  72. package/dist/c.mjs +7 -0
  73. package/dist/cadence.d.mts +3 -0
  74. package/dist/cadence.mjs +7 -0
  75. package/dist/cairo.d.mts +3 -0
  76. package/dist/cairo.mjs +8 -0
  77. package/dist/cdc.d.mts +3 -0
  78. package/dist/cdc.mjs +2 -0
  79. package/dist/clarity.d.mts +3 -0
  80. package/dist/clarity.mjs +5 -0
  81. package/dist/clj.d.mts +3 -0
  82. package/dist/clj.mjs +2 -0
  83. package/dist/clojure.d.mts +3 -0
  84. package/dist/clojure.mjs +5 -0
  85. package/dist/closure-templates.d.mts +3 -0
  86. package/dist/closure-templates.mjs +2 -0
  87. package/dist/cmake.d.mts +3 -0
  88. package/dist/cmake.mjs +5 -0
  89. package/dist/cmd.d.mts +3 -0
  90. package/dist/cmd.mjs +2 -0
  91. package/dist/cobol.d.mts +3 -0
  92. package/dist/cobol.mjs +10 -0
  93. package/dist/codeowners.d.mts +3 -0
  94. package/dist/codeowners.mjs +5 -0
  95. package/dist/codeql.d.mts +3 -0
  96. package/dist/codeql.mjs +7 -0
  97. package/dist/coffee.d.mts +3 -0
  98. package/dist/coffee.mjs +8 -0
  99. package/dist/coffeescript.d.mts +3 -0
  100. package/dist/coffeescript.mjs +2 -0
  101. package/dist/common-lisp.d.mts +3 -0
  102. package/dist/common-lisp.mjs +7 -0
  103. package/dist/console.d.mts +3 -0
  104. package/dist/console.mjs +2 -0
  105. package/dist/coq.d.mts +3 -0
  106. package/dist/coq.mjs +5 -0
  107. package/dist/cpp-macro.d.mts +3 -0
  108. package/dist/cpp-macro.mjs +13 -0
  109. package/dist/cpp.d.mts +3 -0
  110. package/dist/cpp.mjs +15 -0
  111. package/dist/cql.d.mts +3 -0
  112. package/dist/cql.mjs +2 -0
  113. package/dist/crystal.d.mts +3 -0
  114. package/dist/crystal.mjs +19 -0
  115. package/dist/cs.d.mts +3 -0
  116. package/dist/cs.mjs +2 -0
  117. package/dist/csharp.d.mts +3 -0
  118. package/dist/csharp.mjs +3 -0
  119. package/dist/css.d.mts +3 -0
  120. package/dist/css.mjs +7 -0
  121. package/dist/csv.d.mts +3 -0
  122. package/dist/csv.mjs +5 -0
  123. package/dist/cue.d.mts +3 -0
  124. package/dist/cue.mjs +5 -0
  125. package/dist/cypher.d.mts +3 -0
  126. package/dist/cypher.mjs +5 -0
  127. package/dist/d.d.mts +3 -0
  128. package/dist/d.mjs +5 -0
  129. package/dist/dart.d.mts +3 -0
  130. package/dist/dart.mjs +5 -0
  131. package/dist/dax.d.mts +3 -0
  132. package/dist/dax.mjs +5 -0
  133. package/dist/desktop.d.mts +3 -0
  134. package/dist/desktop.mjs +5 -0
  135. package/dist/diff.d.mts +3 -0
  136. package/dist/diff.mjs +5 -0
  137. package/dist/docker.d.mts +3 -0
  138. package/dist/docker.mjs +5 -0
  139. package/dist/dockerfile.d.mts +3 -0
  140. package/dist/dockerfile.mjs +2 -0
  141. package/dist/dotenv.d.mts +3 -0
  142. package/dist/dotenv.mjs +5 -0
  143. package/dist/dream-maker.d.mts +3 -0
  144. package/dist/dream-maker.mjs +7 -0
  145. package/dist/edge.d.mts +3 -0
  146. package/dist/edge.mjs +12 -0
  147. package/dist/elisp.d.mts +3 -0
  148. package/dist/elisp.mjs +2 -0
  149. package/dist/elixir.d.mts +3 -0
  150. package/dist/elixir.mjs +9 -0
  151. package/dist/elm.d.mts +3 -0
  152. package/dist/elm.mjs +8 -0
  153. package/dist/emacs-lisp.d.mts +3 -0
  154. package/dist/emacs-lisp.mjs +7 -0
  155. package/dist/erb.d.mts +3 -0
  156. package/dist/erb.mjs +10 -0
  157. package/dist/erl.d.mts +3 -0
  158. package/dist/erl.mjs +2 -0
  159. package/dist/erlang.d.mts +3 -0
  160. package/dist/erlang.mjs +7 -0
  161. package/dist/es-tag-css.d.mts +3 -0
  162. package/dist/es-tag-css.mjs +12 -0
  163. package/dist/es-tag-glsl.d.mts +3 -0
  164. package/dist/es-tag-glsl.mjs +12 -0
  165. package/dist/es-tag-html.d.mts +3 -0
  166. package/dist/es-tag-html.mjs +12 -0
  167. package/dist/es-tag-sql.d.mts +3 -0
  168. package/dist/es-tag-sql.mjs +10 -0
  169. package/dist/es-tag-xml.d.mts +3 -0
  170. package/dist/es-tag-xml.mjs +8 -0
  171. package/dist/f.d.mts +3 -0
  172. package/dist/f.mjs +2 -0
  173. package/dist/f03.d.mts +3 -0
  174. package/dist/f03.mjs +2 -0
  175. package/dist/f08.d.mts +3 -0
  176. package/dist/f08.mjs +2 -0
  177. package/dist/f18.d.mts +3 -0
  178. package/dist/f18.mjs +2 -0
  179. package/dist/f77.d.mts +3 -0
  180. package/dist/f77.mjs +2 -0
  181. package/dist/f90.d.mts +3 -0
  182. package/dist/f90.mjs +2 -0
  183. package/dist/f95.d.mts +3 -0
  184. package/dist/f95.mjs +2 -0
  185. package/dist/fennel.d.mts +3 -0
  186. package/dist/fennel.mjs +5 -0
  187. package/dist/fish.d.mts +3 -0
  188. package/dist/fish.mjs +5 -0
  189. package/dist/fluent.d.mts +3 -0
  190. package/dist/fluent.mjs +5 -0
  191. package/dist/for.d.mts +3 -0
  192. package/dist/for.mjs +2 -0
  193. package/dist/fortran-fixed-form.d.mts +3 -0
  194. package/dist/fortran-fixed-form.mjs +8 -0
  195. package/dist/fortran-free-form.d.mts +3 -0
  196. package/dist/fortran-free-form.mjs +7 -0
  197. package/dist/fs.d.mts +3 -0
  198. package/dist/fs.mjs +2 -0
  199. package/dist/fsharp.d.mts +3 -0
  200. package/dist/fsharp.mjs +8 -0
  201. package/dist/fsl.d.mts +3 -0
  202. package/dist/fsl.mjs +2 -0
  203. package/dist/ftl.d.mts +3 -0
  204. package/dist/ftl.mjs +2 -0
  205. package/dist/gdresource.d.mts +3 -0
  206. package/dist/gdresource.mjs +10 -0
  207. package/dist/gdscript.d.mts +3 -0
  208. package/dist/gdscript.mjs +5 -0
  209. package/dist/gdshader.d.mts +3 -0
  210. package/dist/gdshader.mjs +5 -0
  211. package/dist/genie.d.mts +3 -0
  212. package/dist/genie.mjs +5 -0
  213. package/dist/gherkin.d.mts +3 -0
  214. package/dist/gherkin.mjs +5 -0
  215. package/dist/git-commit.d.mts +3 -0
  216. package/dist/git-commit.mjs +8 -0
  217. package/dist/git-rebase.d.mts +3 -0
  218. package/dist/git-rebase.mjs +8 -0
  219. package/dist/gjs.d.mts +3 -0
  220. package/dist/gjs.mjs +2 -0
  221. package/dist/gleam.d.mts +3 -0
  222. package/dist/gleam.mjs +5 -0
  223. package/dist/glimmer-js.d.mts +3 -0
  224. package/dist/glimmer-js.mjs +15 -0
  225. package/dist/glimmer-ts.d.mts +3 -0
  226. package/dist/glimmer-ts.mjs +15 -0
  227. package/dist/glsl.d.mts +3 -0
  228. package/dist/glsl.mjs +8 -0
  229. package/dist/gnuplot.d.mts +3 -0
  230. package/dist/gnuplot.mjs +5 -0
  231. package/dist/go.d.mts +3 -0
  232. package/dist/go.mjs +7 -0
  233. package/dist/gql.d.mts +3 -0
  234. package/dist/gql.mjs +2 -0
  235. package/dist/graphql.d.mts +3 -0
  236. package/dist/graphql.mjs +15 -0
  237. package/dist/groovy.d.mts +3 -0
  238. package/dist/groovy.mjs +5 -0
  239. package/dist/gts.d.mts +3 -0
  240. package/dist/gts.mjs +2 -0
  241. package/dist/hack.d.mts +3 -0
  242. package/dist/hack.mjs +3 -0
  243. package/dist/haml.d.mts +3 -0
  244. package/dist/haml.mjs +11 -0
  245. package/dist/handlebars.d.mts +3 -0
  246. package/dist/handlebars.mjs +14 -0
  247. package/dist/haskell.d.mts +3 -0
  248. package/dist/haskell.mjs +7 -0
  249. package/dist/haxe.d.mts +3 -0
  250. package/dist/haxe.mjs +5 -0
  251. package/dist/hbs.d.mts +3 -0
  252. package/dist/hbs.mjs +2 -0
  253. package/dist/hcl.d.mts +3 -0
  254. package/dist/hcl.mjs +5 -0
  255. package/dist/hjson.d.mts +3 -0
  256. package/dist/hjson.mjs +5 -0
  257. package/dist/hlsl.d.mts +3 -0
  258. package/dist/hlsl.mjs +5 -0
  259. package/dist/hs.d.mts +3 -0
  260. package/dist/hs.mjs +2 -0
  261. package/dist/html-derivative.d.mts +3 -0
  262. package/dist/html-derivative.mjs +8 -0
  263. package/dist/html.d.mts +3 -0
  264. package/dist/html.mjs +11 -0
  265. package/dist/http.d.mts +3 -0
  266. package/dist/http.mjs +14 -0
  267. package/dist/hxml.d.mts +3 -0
  268. package/dist/hxml.mjs +8 -0
  269. package/dist/hy.d.mts +3 -0
  270. package/dist/hy.mjs +5 -0
  271. package/dist/imba.d.mts +3 -0
  272. package/dist/imba.mjs +9 -0
  273. package/dist/index.d.mts +1 -0
  274. package/dist/index.mjs +239 -0
  275. package/dist/ini.d.mts +3 -0
  276. package/dist/ini.mjs +7 -0
  277. package/dist/jade.d.mts +3 -0
  278. package/dist/jade.mjs +2 -0
  279. package/dist/java.d.mts +3 -0
  280. package/dist/java.mjs +7 -0
  281. package/dist/javascript.d.mts +3 -0
  282. package/dist/javascript.mjs +7 -0
  283. package/dist/jinja-html.d.mts +3 -0
  284. package/dist/jinja-html.mjs +8 -0
  285. package/dist/jinja.d.mts +3 -0
  286. package/dist/jinja.mjs +8 -0
  287. package/dist/jison.d.mts +3 -0
  288. package/dist/jison.mjs +8 -0
  289. package/dist/jl.d.mts +3 -0
  290. package/dist/jl.mjs +2 -0
  291. package/dist/js.d.mts +3 -0
  292. package/dist/js.mjs +2 -0
  293. package/dist/json.d.mts +3 -0
  294. package/dist/json.mjs +5 -0
  295. package/dist/json5.d.mts +3 -0
  296. package/dist/json5.mjs +5 -0
  297. package/dist/jsonc.d.mts +3 -0
  298. package/dist/jsonc.mjs +5 -0
  299. package/dist/jsonl.d.mts +3 -0
  300. package/dist/jsonl.mjs +5 -0
  301. package/dist/jsonnet.d.mts +3 -0
  302. package/dist/jsonnet.mjs +5 -0
  303. package/dist/jssm.d.mts +3 -0
  304. package/dist/jssm.mjs +5 -0
  305. package/dist/jsx.d.mts +3 -0
  306. package/dist/jsx.mjs +7 -0
  307. package/dist/julia.d.mts +3 -0
  308. package/dist/julia.mjs +17 -0
  309. package/dist/kotlin.d.mts +3 -0
  310. package/dist/kotlin.mjs +7 -0
  311. package/dist/kql.d.mts +3 -0
  312. package/dist/kql.mjs +2 -0
  313. package/dist/kt.d.mts +3 -0
  314. package/dist/kt.mjs +2 -0
  315. package/dist/kts.d.mts +3 -0
  316. package/dist/kts.mjs +2 -0
  317. package/dist/kusto.d.mts +3 -0
  318. package/dist/kusto.mjs +7 -0
  319. package/dist/latex.d.mts +3 -0
  320. package/dist/latex.mjs +8 -0
  321. package/dist/lean.d.mts +3 -0
  322. package/dist/lean.mjs +5 -0
  323. package/dist/lean4.d.mts +3 -0
  324. package/dist/lean4.mjs +2 -0
  325. package/dist/less.d.mts +3 -0
  326. package/dist/less.mjs +5 -0
  327. package/dist/liquid.d.mts +3 -0
  328. package/dist/liquid.mjs +14 -0
  329. package/dist/lisp.d.mts +3 -0
  330. package/dist/lisp.mjs +2 -0
  331. package/dist/lit.d.mts +3 -0
  332. package/dist/lit.mjs +2 -0
  333. package/dist/log.d.mts +3 -0
  334. package/dist/log.mjs +5 -0
  335. package/dist/logo.d.mts +3 -0
  336. package/dist/logo.mjs +7 -0
  337. package/dist/lua.d.mts +3 -0
  338. package/dist/lua.mjs +9 -0
  339. package/dist/luau.d.mts +3 -0
  340. package/dist/luau.mjs +5 -0
  341. package/dist/make.d.mts +3 -0
  342. package/dist/make.mjs +7 -0
  343. package/dist/makefile.d.mts +3 -0
  344. package/dist/makefile.mjs +2 -0
  345. package/dist/markdown-vue.d.mts +3 -0
  346. package/dist/markdown-vue.mjs +7 -0
  347. package/dist/markdown.d.mts +3 -0
  348. package/dist/markdown.mjs +7 -0
  349. package/dist/marko.d.mts +3 -0
  350. package/dist/marko.mjs +14 -0
  351. package/dist/matlab.d.mts +3 -0
  352. package/dist/matlab.mjs +7 -0
  353. package/dist/md.d.mts +3 -0
  354. package/dist/md.mjs +2 -0
  355. package/dist/mdc.d.mts +3 -0
  356. package/dist/mdc.mjs +13 -0
  357. package/dist/mdx.d.mts +3 -0
  358. package/dist/mdx.mjs +7 -0
  359. package/dist/mediawiki.d.mts +3 -0
  360. package/dist/mediawiki.mjs +2 -0
  361. package/dist/mermaid.d.mts +3 -0
  362. package/dist/mermaid.mjs +7 -0
  363. package/dist/mips.d.mts +3 -0
  364. package/dist/mips.mjs +2 -0
  365. package/dist/mipsasm.d.mts +3 -0
  366. package/dist/mipsasm.mjs +7 -0
  367. package/dist/mmd.d.mts +3 -0
  368. package/dist/mmd.mjs +2 -0
  369. package/dist/mojo.d.mts +3 -0
  370. package/dist/mojo.mjs +7 -0
  371. package/dist/move.d.mts +3 -0
  372. package/dist/move.mjs +5 -0
  373. package/dist/nar.d.mts +3 -0
  374. package/dist/nar.mjs +2 -0
  375. package/dist/narrat.d.mts +3 -0
  376. package/dist/narrat.mjs +5 -0
  377. package/dist/nextflow.d.mts +3 -0
  378. package/dist/nextflow.mjs +5 -0
  379. package/dist/nf.d.mts +3 -0
  380. package/dist/nf.mjs +2 -0
  381. package/dist/nginx.d.mts +3 -0
  382. package/dist/nginx.mjs +8 -0
  383. package/dist/nim.d.mts +3 -0
  384. package/dist/nim.mjs +21 -0
  385. package/dist/nix.d.mts +3 -0
  386. package/dist/nix.mjs +5 -0
  387. package/dist/nu.d.mts +3 -0
  388. package/dist/nu.mjs +2 -0
  389. package/dist/nushell.d.mts +3 -0
  390. package/dist/nushell.mjs +7 -0
  391. package/dist/objc.d.mts +3 -0
  392. package/dist/objc.mjs +2 -0
  393. package/dist/objective-c.d.mts +3 -0
  394. package/dist/objective-c.mjs +7 -0
  395. package/dist/objective-cpp.d.mts +3 -0
  396. package/dist/objective-cpp.mjs +7 -0
  397. package/dist/ocaml.d.mts +3 -0
  398. package/dist/ocaml.mjs +5 -0
  399. package/dist/pascal.d.mts +3 -0
  400. package/dist/pascal.mjs +7 -0
  401. package/dist/perl.d.mts +3 -0
  402. package/dist/perl.mjs +17 -0
  403. package/dist/perl6.d.mts +3 -0
  404. package/dist/perl6.mjs +2 -0
  405. package/dist/php.d.mts +3 -0
  406. package/dist/php.mjs +19 -0
  407. package/dist/plsql.d.mts +3 -0
  408. package/dist/plsql.mjs +5 -0
  409. package/dist/po.d.mts +3 -0
  410. package/dist/po.mjs +7 -0
  411. package/dist/polar.d.mts +3 -0
  412. package/dist/polar.mjs +7 -0
  413. package/dist/postcss.d.mts +3 -0
  414. package/dist/postcss.mjs +5 -0
  415. package/dist/pot.d.mts +3 -0
  416. package/dist/pot.mjs +2 -0
  417. package/dist/potx.d.mts +3 -0
  418. package/dist/potx.mjs +2 -0
  419. package/dist/powerquery.d.mts +3 -0
  420. package/dist/powerquery.mjs +5 -0
  421. package/dist/powershell.d.mts +3 -0
  422. package/dist/powershell.mjs +7 -0
  423. package/dist/prisma.d.mts +3 -0
  424. package/dist/prisma.mjs +5 -0
  425. package/dist/prolog.d.mts +3 -0
  426. package/dist/prolog.mjs +5 -0
  427. package/dist/properties.d.mts +3 -0
  428. package/dist/properties.mjs +2 -0
  429. package/dist/proto.d.mts +3 -0
  430. package/dist/proto.mjs +5 -0
  431. package/dist/protobuf.d.mts +3 -0
  432. package/dist/protobuf.mjs +2 -0
  433. package/dist/ps.d.mts +3 -0
  434. package/dist/ps.mjs +2 -0
  435. package/dist/ps1.d.mts +3 -0
  436. package/dist/ps1.mjs +2 -0
  437. package/dist/pug.d.mts +3 -0
  438. package/dist/pug.mjs +12 -0
  439. package/dist/puppet.d.mts +3 -0
  440. package/dist/puppet.mjs +5 -0
  441. package/dist/purescript.d.mts +3 -0
  442. package/dist/purescript.mjs +3 -0
  443. package/dist/py.d.mts +3 -0
  444. package/dist/py.mjs +2 -0
  445. package/dist/python.d.mts +3 -0
  446. package/dist/python.mjs +7 -0
  447. package/dist/ql.d.mts +3 -0
  448. package/dist/ql.mjs +2 -0
  449. package/dist/qml.d.mts +3 -0
  450. package/dist/qml.mjs +8 -0
  451. package/dist/qmldir.d.mts +3 -0
  452. package/dist/qmldir.mjs +5 -0
  453. package/dist/qss.d.mts +3 -0
  454. package/dist/qss.mjs +5 -0
  455. package/dist/r.d.mts +3 -0
  456. package/dist/r.mjs +7 -0
  457. package/dist/racket.d.mts +3 -0
  458. package/dist/racket.mjs +5 -0
  459. package/dist/raku.d.mts +3 -0
  460. package/dist/raku.mjs +7 -0
  461. package/dist/razor.d.mts +3 -0
  462. package/dist/razor.mjs +3 -0
  463. package/dist/rb.d.mts +3 -0
  464. package/dist/rb.mjs +2 -0
  465. package/dist/reg.d.mts +3 -0
  466. package/dist/reg.mjs +5 -0
  467. package/dist/regex.d.mts +3 -0
  468. package/dist/regex.mjs +2 -0
  469. package/dist/regexp.d.mts +3 -0
  470. package/dist/regexp.mjs +5 -0
  471. package/dist/rel.d.mts +3 -0
  472. package/dist/rel.mjs +5 -0
  473. package/dist/riscv.d.mts +3 -0
  474. package/dist/riscv.mjs +7 -0
  475. package/dist/rs.d.mts +3 -0
  476. package/dist/rs.mjs +2 -0
  477. package/dist/rst.d.mts +3 -0
  478. package/dist/rst.mjs +22 -0
  479. package/dist/ruby.d.mts +3 -0
  480. package/dist/ruby.mjs +31 -0
  481. package/dist/rust.d.mts +3 -0
  482. package/dist/rust.mjs +5 -0
  483. package/dist/sas.d.mts +3 -0
  484. package/dist/sas.mjs +8 -0
  485. package/dist/sass.d.mts +3 -0
  486. package/dist/sass.mjs +5 -0
  487. package/dist/scala.d.mts +3 -0
  488. package/dist/scala.mjs +7 -0
  489. package/dist/scheme.d.mts +3 -0
  490. package/dist/scheme.mjs +7 -0
  491. package/dist/scss.d.mts +3 -0
  492. package/dist/scss.mjs +9 -0
  493. package/dist/sdbl.d.mts +3 -0
  494. package/dist/sdbl.mjs +5 -0
  495. package/dist/sh.d.mts +3 -0
  496. package/dist/sh.mjs +2 -0
  497. package/dist/shader.d.mts +3 -0
  498. package/dist/shader.mjs +2 -0
  499. package/dist/shaderlab.d.mts +3 -0
  500. package/dist/shaderlab.mjs +8 -0
  501. package/dist/shell.d.mts +3 -0
  502. package/dist/shell.mjs +2 -0
  503. package/dist/shellscript.d.mts +3 -0
  504. package/dist/shellscript.mjs +7 -0
  505. package/dist/shellsession.d.mts +3 -0
  506. package/dist/shellsession.mjs +8 -0
  507. package/dist/smalltalk.d.mts +3 -0
  508. package/dist/smalltalk.mjs +7 -0
  509. package/dist/solidity.d.mts +3 -0
  510. package/dist/solidity.mjs +5 -0
  511. package/dist/soy.d.mts +3 -0
  512. package/dist/soy.mjs +8 -0
  513. package/dist/sparql.d.mts +3 -0
  514. package/dist/sparql.mjs +8 -0
  515. package/dist/spl.d.mts +3 -0
  516. package/dist/spl.mjs +2 -0
  517. package/dist/splunk.d.mts +3 -0
  518. package/dist/splunk.mjs +5 -0
  519. package/dist/sql.d.mts +3 -0
  520. package/dist/sql.mjs +7 -0
  521. package/dist/ssh-config.d.mts +3 -0
  522. package/dist/ssh-config.mjs +7 -0
  523. package/dist/stata.d.mts +3 -0
  524. package/dist/stata.mjs +8 -0
  525. package/dist/styl.d.mts +3 -0
  526. package/dist/styl.mjs +2 -0
  527. package/dist/stylus.d.mts +3 -0
  528. package/dist/stylus.mjs +7 -0
  529. package/dist/svelte.d.mts +3 -0
  530. package/dist/svelte.mjs +15 -0
  531. package/dist/swift.d.mts +3 -0
  532. package/dist/swift.mjs +3 -0
  533. package/dist/system-verilog.d.mts +3 -0
  534. package/dist/system-verilog.mjs +5 -0
  535. package/dist/systemd.d.mts +3 -0
  536. package/dist/systemd.mjs +5 -0
  537. package/dist/talon.d.mts +3 -0
  538. package/dist/talon.mjs +2 -0
  539. package/dist/talonscript.d.mts +3 -0
  540. package/dist/talonscript.mjs +5 -0
  541. package/dist/tasl.d.mts +3 -0
  542. package/dist/tasl.mjs +5 -0
  543. package/dist/tcl.d.mts +3 -0
  544. package/dist/tcl.mjs +5 -0
  545. package/dist/templ.d.mts +3 -0
  546. package/dist/templ.mjs +13 -0
  547. package/dist/terraform.d.mts +3 -0
  548. package/dist/terraform.mjs +5 -0
  549. package/dist/tex.d.mts +3 -0
  550. package/dist/tex.mjs +9 -0
  551. package/dist/tf.d.mts +3 -0
  552. package/dist/tf.mjs +2 -0
  553. package/dist/tfvars.d.mts +3 -0
  554. package/dist/tfvars.mjs +2 -0
  555. package/dist/toml.d.mts +3 -0
  556. package/dist/toml.mjs +7 -0
  557. package/dist/ts-tags.d.mts +3 -0
  558. package/dist/ts-tags.mjs +18 -0
  559. package/dist/ts.d.mts +3 -0
  560. package/dist/ts.mjs +2 -0
  561. package/dist/tsp.d.mts +3 -0
  562. package/dist/tsp.mjs +2 -0
  563. package/dist/tsv.d.mts +3 -0
  564. package/dist/tsv.mjs +5 -0
  565. package/dist/tsx.d.mts +3 -0
  566. package/dist/tsx.mjs +7 -0
  567. package/dist/turtle.d.mts +3 -0
  568. package/dist/turtle.mjs +5 -0
  569. package/dist/twig.d.mts +3 -0
  570. package/dist/twig.mjs +19 -0
  571. package/dist/typ.d.mts +3 -0
  572. package/dist/typ.mjs +2 -0
  573. package/dist/typescript.d.mts +3 -0
  574. package/dist/typescript.mjs +7 -0
  575. package/dist/typespec.d.mts +3 -0
  576. package/dist/typespec.mjs +5 -0
  577. package/dist/typst.d.mts +3 -0
  578. package/dist/typst.mjs +5 -0
  579. package/dist/v.d.mts +3 -0
  580. package/dist/v.mjs +7 -0
  581. package/dist/vala.d.mts +3 -0
  582. package/dist/vala.mjs +5 -0
  583. package/dist/vb.d.mts +3 -0
  584. package/dist/vb.mjs +7 -0
  585. package/dist/verilog.d.mts +3 -0
  586. package/dist/verilog.mjs +7 -0
  587. package/dist/vhdl.d.mts +3 -0
  588. package/dist/vhdl.mjs +5 -0
  589. package/dist/vim.d.mts +3 -0
  590. package/dist/vim.mjs +2 -0
  591. package/dist/viml.d.mts +3 -0
  592. package/dist/viml.mjs +5 -0
  593. package/dist/vimscript.d.mts +3 -0
  594. package/dist/vimscript.mjs +2 -0
  595. package/dist/vue-directives.d.mts +3 -0
  596. package/dist/vue-directives.mjs +5 -0
  597. package/dist/vue-html.d.mts +3 -0
  598. package/dist/vue-html.mjs +11 -0
  599. package/dist/vue-interpolations.d.mts +3 -0
  600. package/dist/vue-interpolations.mjs +5 -0
  601. package/dist/vue-sfc-style-variable-injection.d.mts +3 -0
  602. package/dist/vue-sfc-style-variable-injection.mjs +8 -0
  603. package/dist/vue.d.mts +3 -0
  604. package/dist/vue.mjs +27 -0
  605. package/dist/vy.d.mts +3 -0
  606. package/dist/vy.mjs +2 -0
  607. package/dist/vyper.d.mts +3 -0
  608. package/dist/vyper.mjs +7 -0
  609. package/dist/wasm.d.mts +3 -0
  610. package/dist/wasm.mjs +5 -0
  611. package/dist/wenyan.d.mts +3 -0
  612. package/dist/wenyan.mjs +5 -0
  613. package/dist/wgsl.d.mts +3 -0
  614. package/dist/wgsl.mjs +5 -0
  615. package/dist/wiki.d.mts +3 -0
  616. package/dist/wiki.mjs +2 -0
  617. package/dist/wikitext.d.mts +3 -0
  618. package/dist/wikitext.mjs +7 -0
  619. package/dist/wl.d.mts +3 -0
  620. package/dist/wl.mjs +2 -0
  621. package/dist/wolfram.d.mts +3 -0
  622. package/dist/wolfram.mjs +7 -0
  623. package/dist/xml.d.mts +3 -0
  624. package/dist/xml.mjs +8 -0
  625. package/dist/xsl.d.mts +3 -0
  626. package/dist/xsl.mjs +8 -0
  627. package/dist/yaml.d.mts +3 -0
  628. package/dist/yaml.mjs +7 -0
  629. package/dist/yml.d.mts +3 -0
  630. package/dist/yml.mjs +2 -0
  631. package/dist/zenscript.d.mts +3 -0
  632. package/dist/zenscript.mjs +5 -0
  633. package/dist/zig.d.mts +3 -0
  634. package/dist/zig.mjs +5 -0
  635. package/dist/zsh.d.mts +3 -0
  636. package/dist/zsh.mjs +2 -0
  637. package/package.json +358 -0
package/dist/ocaml.mjs ADDED
@@ -0,0 +1,5 @@
1
+ const lang = Object.freeze({displayName:"OCaml",fileTypes:[".ml",".mli"],name:"ocaml",patterns:[{include:"#comment"},{include:"#pragma"},{include:"#decl"}],repository:{attribute:{begin:/(\[)[\p{space}]*((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])@{1,3}(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,beginCaptures:{"1":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/\]/dgv,endCaptures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},patterns:[{include:"#attributePayload"}]},attributeIdentifier:{captures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"punctuation.definition.tag"}},match:/((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])%(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)/dgv},attributePayload:{patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]%|(?<=^|\n(?!$))%))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])[\:\?](?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))|(?<=[\p{space}])|(?=\])/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#pathModuleExtended"},{include:"#pathRecord"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=\])/dgv,patterns:[{include:"#signature"},{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\?|(?<=^|\n(?!$))\?))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=\])/dgv,patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\?|(?<=^|\n(?!$))\?))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=\])|\bwhen\b/dgv,endCaptures:{"1":{}},patterns:[{include:"#pattern"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]when|(?<=^|\n(?!$))when))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=\])/dgv,patterns:[{include:"#term"}]}]},{include:"#term"}]},bindClassTerm:{patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]class|(?<=^|\n(?!$))class|[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(:)|(=)(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"}},patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]class|(?<=^|\n(?!$))class|[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*[\p{space}]*,|[^\p{space}a-z\%])|(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*|(?=\btype\b)/dgv,endCaptures:{"0":{name:"entity.name.function strong emphasis"}},patterns:[{include:"#attributeIdentifier"}]},{begin:/\[/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\]/dgv,patterns:[{include:"#type"}]},{include:"#bindTermArgs"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\b)/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#literalClassType"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\band\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#term"}]}]},bindClassType:{patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]class|(?<=^|\n(?!$))class|[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(:)|(=)(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"}},patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]class|(?<=^|\n(?!$))class|[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*[\p{space}]*,|[^\p{space}a-z\%])|(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*|(?=\btype\b)/dgv,endCaptures:{"0":{name:"entity.name.function strong emphasis"}},patterns:[{include:"#attributeIdentifier"}]},{begin:/\[/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\]/dgv,patterns:[{include:"#type"}]},{include:"#bindTermArgs"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\b)/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#literalClassType"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\band\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#literalClassType"}]}]},bindConstructor:{patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]exception|(?<=^|\n(?!$))exception))(?![\p{L}\p{M}\p{N}\p{Pc}])|(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\+=|(?<=^|\n(?!$))\+=|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\||(?<=^|\n(?!$))\|))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(:)|(\bof\b)|((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\|(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"punctuation.definition.tag"},"3":{name:"support.type strong"}},patterns:[{include:"#attributeIdentifier"},{match:/\.\./dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"},{match:/\b\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*\b(?![\p{space}]*(?:\.|\([^\*]))/dgv,name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]of|(?<=^|\n(?!$))of))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\|(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#type"}]}]},bindSignature:{patterns:[{include:"#comment"},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#comment"},{include:"#pathModuleExtended"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\band\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#signature"}]}]},bindStructure:{patterns:[{include:"#comment"},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and))(?![\p{L}\p{M}\p{N}\p{Pc}])|(?=[A-Z])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(:(?!=))|(:?=)(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"}},patterns:[{include:"#comment"},{match:/\bmodule\b/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename"},{match:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"entity.name.function strong emphasis"},{begin:/\((?!\))/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{include:"#comment"},{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]):(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"}},end:/(?=\))/dgv,patterns:[{include:"#signature"}]},{include:"#variableModule"}]},{include:"#literalUnit"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\b(and)\b|((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{name:"support.type strong"}},patterns:[{include:"#signature"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:=|(?<=^|\n(?!$)):=|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\b(?:(and)|(with))\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#structure"}]}]},bindTerm:{patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]!|(?<=^|\n(?!$))!))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]external|(?<=^|\n(?!$))external|[^\p{L}\p{M}\p{N}\p{Pc}]let|(?<=^|\n(?!$))let|[^\p{L}\p{M}\p{N}\p{Pc}]method|(?<=^|\n(?!$))method|[^\p{L}\p{M}\p{N}\p{Pc}]val|(?<=^|\n(?!$))val))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(\bmodule\b)|(\bopen\b)|(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(:)|((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"4":{name:"support.type strong"}},patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]!|(?<=^|\n(?!$))!))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]external|(?<=^|\n(?!$))external|[^\p{L}\p{M}\p{N}\p{Pc}]let|(?<=^|\n(?!$))let|[^\p{L}\p{M}\p{N}\p{Pc}]method|(?<=^|\n(?!$))method|[^\p{L}\p{M}\p{N}\p{Pc}]val|(?<=^|\n(?!$))val))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=\b(?:module|open)\b)|(?=(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*[\p{space}]*,|[^\p{space}a-z\%])|(\brec\b)|((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"entity.name.function strong emphasis"}},patterns:[{include:"#attributeIdentifier"},{include:"#comment"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]rec|(?<=^|\n(?!$))rec))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)|(?=[^\p{space}A-Za-z])/dgv,endCaptures:{"0":{name:"entity.name.function strong emphasis"}},patterns:[{include:"#bindTermArgs"}]},{include:"#bindTermArgs"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]module|(?<=^|\n(?!$))module))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#declModule"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]open|(?<=^|\n(?!$))open))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=\bin\b)|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#pathModuleSimple"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\btype\b|(?=[^\p{space}])/dgv,endCaptures:{"0":{name:"keyword.control"}}},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\.(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#pattern"}]},{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\band\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#term"}]}]},bindTermArgs:{patterns:[{applyEndPatternLast:true,begin:/~|\?/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/:|(?=[^\p{space}])/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]~|(?<=^|\n(?!$))~|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\?|(?<=^|\n(?!$))\?))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*|(?<=\))/dgv,endCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}},patterns:[{include:"#comment"},{begin:/\((?!\*)/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{begin:/(?<=\()/dgv,end:/:|=/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}]},{begin:/(?<=:)/dgv,end:/=|(?=\))/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=\))/dgv,patterns:[{include:"#term"}]}]}]}]},{include:"#pattern"}]},bindType:{patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\+=|=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#attributeIdentifier"},{include:"#pathType"},{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"entity.name.function strong"},{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\+=|(?<=^|\n(?!$))\+=|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\band\b|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},patterns:[{include:"#bindConstructor"}]}]},comment:{patterns:[{include:"#attribute"},{include:"#extension"},{include:"#commentBlock"},{include:"#commentDoc"}]},commentBlock:{begin:/\(\*(?!\*[^\)])/dgv,contentName:"emphasis",end:/\*\)/dgv,name:"comment constant.regexp meta.separator.markdown",patterns:[{include:"#commentBlock"},{include:"#commentDoc"}]},commentDoc:{begin:/\(\*\*/dgv,end:/\*\)/dgv,name:"comment constant.regexp meta.separator.markdown",patterns:[{match:/\*/dgv},{include:"#comment"}]},decl:{patterns:[{include:"#declClass"},{include:"#declException"},{include:"#declInclude"},{include:"#declModule"},{include:"#declOpen"},{include:"#declTerm"},{include:"#declType"}]},declClass:{begin:/\bclass\b/dgv,beginCaptures:{"0":{name:"entity.name.class constant.numeric markup.underline"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#comment"},{include:"#pragma"},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]class|(?<=^|\n(?!$))class))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"0":{name:"entity.name.class constant.numeric markup.underline"}},end:/\btype\b|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\b)/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{include:"#bindClassTerm"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#bindClassType"}]}]},declException:{begin:/\bexception\b/dgv,beginCaptures:{"0":{name:"keyword markup.underline"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#attributeIdentifier"},{include:"#comment"},{include:"#pragma"},{include:"#bindConstructor"}]},declInclude:{begin:/\binclude\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#attributeIdentifier"},{include:"#comment"},{include:"#pragma"},{include:"#signature"}]},declModule:{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]module|(?<=^|\n(?!$))module))(?![\p{L}\p{M}\p{N}\p{Pc}])|\bmodule\b/dgv,beginCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename markup.underline"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#comment"},{include:"#pragma"},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]module|(?<=^|\n(?!$))module))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(\btype\b)|(?=[A-Z])/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{include:"#attributeIdentifier"},{include:"#comment"},{match:/\brec\b/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#bindSignature"}]},{begin:/(?=[A-Z])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#bindStructure"}]}]},declOpen:{begin:/\bopen\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#attributeIdentifier"},{include:"#comment"},{include:"#pragma"},{include:"#pathModuleExtended"}]},declTerm:{begin:/\b(?:(external|val)|(method)|(let))\b(!?)/dgv,beginCaptures:{"1":{name:"support.type markup.underline"},"2":{name:"storage.type markup.underline"},"3":{name:"keyword.control markup.underline"},"4":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#comment"},{include:"#pragma"},{include:"#bindTerm"}]},declType:{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])|\btype\b/dgv,beginCaptures:{"0":{name:"keyword markup.underline"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#comment"},{include:"#pragma"},{include:"#bindType"}]},extension:{begin:/(\[)((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])%{1,3}(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,beginCaptures:{"1":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/\]/dgv,endCaptures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},patterns:[{include:"#attributePayload"}]},literal:{patterns:[{include:"#termConstructor"},{include:"#literalArray"},{include:"#literalBoolean"},{include:"#literalCharacter"},{include:"#literalList"},{include:"#literalNumber"},{include:"#literalObjectTerm"},{include:"#literalString"},{include:"#literalRecord"},{include:"#literalUnit"}]},literalArray:{begin:/\[\|/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},end:/\|\]/dgv,patterns:[{include:"#term"}]},literalBoolean:{match:/\bfalse|true\b/dgv,name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},literalCharacter:{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}])'/dgv,end:/'/dgv,name:"markup.punctuation.quote.beginning",patterns:[{include:"#literalCharacterEscape"}]},literalCharacterEscape:{match:/\\(?:[\\"'ntbr]|[\p{Nd}][\p{Nd}][\p{Nd}]|x[0-9A-Fa-f][0-9A-Fa-f]|o[0-3][0-7][0-7])/dgv},literalClassType:{patterns:[{include:"#comment"},{begin:/\bobject\b/dgv,captures:{"0":{name:"punctuation.definition.tag emphasis"}},end:/\bend\b/dgv,patterns:[{begin:/\binherit\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{begin:/\bas\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#variablePattern"}]},{include:"#type"}]},{include:"#pattern"},{include:"#declTerm"}]},{begin:/\[/dgv,end:/\]/dgv}]},literalList:{patterns:[{begin:/\[/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},end:/\]/dgv,patterns:[{include:"#term"}]}]},literalNumber:{match:/(?<![A-Za-z])[\p{Nd}][\p{Nd}]*(\.[\p{Nd}][\p{Nd}]*)?/dgv,name:"constant.numeric"},literalObjectTerm:{patterns:[{include:"#comment"},{begin:/\bobject\b/dgv,captures:{"0":{name:"punctuation.definition.tag emphasis"}},end:/\bend\b/dgv,patterns:[{begin:/\binherit\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{begin:/\bas\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/;;|(?=\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#variablePattern"}]},{include:"#term"}]},{include:"#pattern"},{include:"#declTerm"}]},{begin:/\[/dgv,end:/\]/dgv}]},literalRecord:{begin:/\{/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},end:/\}/dgv,patterns:[{begin:/(?<=\{|;)/dgv,end:/(:)|(=)|(;)|(with)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixSimple"},{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]with|(?<=^|\n(?!$))with))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(:)|(=)|(;)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(;)|(=)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"support.type strong"}},patterns:[{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/;|(?=\})/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#term"}]}]},literalString:{patterns:[{begin:/"/dgv,end:/"/dgv,name:"string beginning.punctuation.definition.quote.markdown",patterns:[{include:"#literalStringEscape"}]},{begin:/(\{)([_a-z]*?)(\|)/dgv,end:/(\|)((?!))(\})/dgv,name:"string beginning.punctuation.definition.quote.markdown",patterns:[{include:"#literalStringEscape"}]}]},literalStringEscape:{match:/\\(?:[\\"ntbr]|[\p{Nd}][\p{Nd}][\p{Nd}]|x[0-9A-Fa-f][0-9A-Fa-f]|o[0-3][0-7][0-7])/dgv},literalUnit:{match:/\(\)/dgv,name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},pathModuleExtended:{patterns:[{include:"#pathModulePrefixExtended"},{match:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"entity.name.class constant.numeric"}]},pathModulePrefixExtended:{begin:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\.|(?=$|\n)|\()/dgv,beginCaptures:{"0":{name:"entity.name.class constant.numeric"}},end:/(?![\p{space}\.]|(?=$|\n)|\()/dgv,patterns:[{include:"#comment"},{begin:/\(/dgv,captures:{"0":{name:"keyword.control"}},end:/\)/dgv,patterns:[{match:/(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\)))/dgv,name:"string.other.link variable.language variable.parameter emphasis"},{include:"#structure"}]},{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\.(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"keyword strong"}},end:/(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\.|(?=$|\n)))|(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*(?:(?=$|\n)|\()))|(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\)))|(?![\p{space}\.A-Z]|(?=$|\n)|\()/dgv,endCaptures:{"1":{name:"entity.name.class constant.numeric"},"2":{name:"entity.name.function strong"},"3":{name:"string.other.link variable.language variable.parameter emphasis"}}}]},pathModulePrefixExtendedParens:{begin:/\(/dgv,captures:{"0":{name:"keyword.control"}},end:/\)/dgv,patterns:[{match:/(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\)))/dgv,name:"string.other.link variable.language variable.parameter emphasis"},{include:"#structure"}]},pathModulePrefixSimple:{begin:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\.)/dgv,beginCaptures:{"0":{name:"entity.name.class constant.numeric"}},end:/(?![\p{space}\.])/dgv,patterns:[{include:"#comment"},{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\.(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"keyword strong"}},end:/(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*\.))|(\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*(?=[\p{space}]*))|(?![\p{space}\.A-Z])/dgv,endCaptures:{"1":{name:"entity.name.class constant.numeric"},"2":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}}}]},pathModuleSimple:{patterns:[{include:"#pathModulePrefixSimple"},{match:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"entity.name.class constant.numeric"}]},pathRecord:{patterns:[{begin:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,end:/(?=[^\p{space}\.])(?!\(\*)/dgv,patterns:[{include:"#comment"},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\.|(?<=^|\n(?!$))\.))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\.(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"keyword strong"}},end:/((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\.(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))|((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|mutable|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)|(?<=\))|(?<=\])/dgv,endCaptures:{"1":{name:"keyword strong"},"2":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixSimple"},{begin:/\((?!\*)/dgv,captures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/\)/dgv,patterns:[{include:"#term"}]},{begin:/\[/dgv,captures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/\]/dgv,patterns:[{include:"#pattern"}]}]}]}]},pattern:{patterns:[{include:"#comment"},{include:"#patternArray"},{include:"#patternLazy"},{include:"#patternList"},{include:"#patternMisc"},{include:"#patternModule"},{include:"#patternRecord"},{include:"#literal"},{include:"#patternParens"},{include:"#patternType"},{include:"#variablePattern"},{include:"#termOperator"}]},patternArray:{begin:/\[\|/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},end:/\|\]/dgv,patterns:[{include:"#pattern"}]},patternLazy:{match:/lazy/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"},patternList:{begin:/\[/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},end:/\]/dgv,patterns:[{include:"#pattern"}]},patternMisc:{captures:{"1":{name:"string.regexp strong"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},match:/((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]),(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))|([\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]+)|\b(as)\b/dgv},patternModule:{begin:/\bmodule\b/dgv,beginCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}},end:/(?=\))/dgv,patterns:[{include:"#declModule"}]},patternParens:{begin:/\((?!\))/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{include:"#comment"},{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]):(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"}},end:/(?=\))/dgv,patterns:[{include:"#type"}]},{include:"#pattern"}]},patternRecord:{begin:/\{/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},end:/\}/dgv,patterns:[{begin:/(?<=\{|;)/dgv,end:/(:)|(=)|(;)|(with)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixSimple"},{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]with|(?<=^|\n(?!$))with))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(:)|(=)|(;)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(;)|(=)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"support.type strong"}},patterns:[{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/;|(?=\})/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#pattern"}]}]},patternType:{begin:/\btype\b/dgv,beginCaptures:{"0":{name:"keyword"}},end:/(?=\))/dgv,patterns:[{include:"#declType"}]},pragma:{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])#(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"punctuation.definition.tag"}},end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#comment"},{include:"#literalNumber"},{include:"#literalString"}]},signature:{patterns:[{include:"#comment"},{include:"#signatureLiteral"},{include:"#signatureFunctor"},{include:"#pathModuleExtended"},{include:"#signatureParens"},{include:"#signatureRecovered"},{include:"#signatureConstraints"}]},signatureConstraints:{begin:/\bwith\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},end:/(?=\))|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]with|(?<=^|\n(?!$))with))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\b(?:(module)|(type))\b/dgv,endCaptures:{"1":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"},"2":{name:"keyword"}}},{include:"#declModule"},{include:"#declType"}]},signatureFunctor:{patterns:[{begin:/\bfunctor\b/dgv,beginCaptures:{"0":{name:"keyword"}},end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]functor|(?<=^|\n(?!$))functor))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(\(\))|(\((?!\)))/dgv,endCaptures:{"1":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{name:"punctuation.definition.tag"}}},{begin:/(?<=\()/dgv,end:/(:)|(\))/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"punctuation.definition.tag"}},patterns:[{include:"#variableModule"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#signature"}]},{begin:/(?<=\))/dgv,end:/(\()|((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,endCaptures:{"1":{name:"punctuation.definition.tag"},"2":{name:"support.type strong"}}},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]->|(?<=^|\n(?!$))->))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#signature"}]}]},{match:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,name:"support.type strong"}]},signatureLiteral:{begin:/\bsig\b/dgv,captures:{"0":{name:"punctuation.definition.tag emphasis"}},end:/\bend\b/dgv,patterns:[{include:"#comment"},{include:"#pragma"},{include:"#decl"}]},signatureParens:{begin:/\((?!\))/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{include:"#comment"},{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]):(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"}},end:/(?=\))/dgv,patterns:[{include:"#signature"}]},{include:"#signature"}]},signatureRecovered:{patterns:[{begin:/\(|(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]->|(?<=^|\n(?!$))->))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]include|(?<=^|\n(?!$))include|[^\p{L}\p{M}\p{N}\p{Pc}]open|(?<=^|\n(?!$))open))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\bmodule\b|(?!(?=$|\n)|[\p{space}]|\bmodule\b)/dgv,endCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}}},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]module|(?<=^|\n(?!$))module))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]module|(?<=^|\n(?!$))module))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\btype\b/dgv,endCaptures:{"0":{name:"keyword"}}},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]type|(?<=^|\n(?!$))type))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\bof\b/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}}},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]of|(?<=^|\n(?!$))of))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#signature"}]}]}]},structure:{patterns:[{include:"#comment"},{include:"#structureLiteral"},{include:"#structureFunctor"},{include:"#pathModuleExtended"},{include:"#structureParens"}]},structureFunctor:{patterns:[{begin:/\bfunctor\b/dgv,beginCaptures:{"0":{name:"keyword"}},end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]functor|(?<=^|\n(?!$))functor))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(\(\))|(\((?!\)))/dgv,endCaptures:{"1":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{name:"punctuation.definition.tag"}}},{begin:/(?<=\()/dgv,end:/(:)|(\))/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"punctuation.definition.tag"}},patterns:[{include:"#variableModule"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},patterns:[{include:"#signature"}]},{begin:/(?<=\))/dgv,end:/(\()|((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,endCaptures:{"1":{name:"punctuation.definition.tag"},"2":{name:"support.type strong"}}},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]->|(?<=^|\n(?!$))->))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,patterns:[{include:"#structure"}]}]},{match:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,name:"support.type strong"}]},structureLiteral:{begin:/\bstruct\b/dgv,captures:{"0":{name:"punctuation.definition.tag emphasis"}},end:/\bend\b/dgv,patterns:[{include:"#comment"},{include:"#pragma"},{include:"#decl"}]},structureParens:{begin:/\(/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{include:"#structureUnpack"},{include:"#structure"}]},structureUnpack:{begin:/\bval\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/(?=\))/dgv},term:{patterns:[{include:"#termLet"},{include:"#termAtomic"}]},termAtomic:{patterns:[{include:"#comment"},{include:"#termConditional"},{include:"#termConstructor"},{include:"#termDelim"},{include:"#termFor"},{include:"#termFunction"},{include:"#literal"},{include:"#termMatch"},{include:"#termMatchRule"},{include:"#termPun"},{include:"#termOperator"},{include:"#termTry"},{include:"#termWhile"},{include:"#pathRecord"}]},termConditional:{match:/\b(?:if|then|else)\b/dgv,name:"keyword.control"},termConstructor:{patterns:[{include:"#pathModulePrefixSimple"},{match:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"constant.language constant.numeric entity.other.attribute-name.id.css strong"}]},termDelim:{patterns:[{begin:/\((?!\))/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{include:"#term"}]},{begin:/\bbegin\b/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\bend\b/dgv,patterns:[{include:"#attributeIdentifier"},{include:"#term"}]}]},termFor:{patterns:[{begin:/\bfor\b/dgv,beginCaptures:{"0":{name:"keyword.control"}},end:/\bdone\b/dgv,endCaptures:{"0":{name:"keyword.control"}},patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]for|(?<=^|\n(?!$))for))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])=(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,endCaptures:{"0":{name:"support.type strong"}},patterns:[{include:"#pattern"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/\b(?:downto|to)\b/dgv,endCaptures:{"0":{name:"keyword.control"}},patterns:[{include:"#term"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]to|(?<=^|\n(?!$))to))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\bdo\b/dgv,endCaptures:{"0":{name:"keyword.control"}},patterns:[{include:"#term"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]do|(?<=^|\n(?!$))do))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=\bdone\b)/dgv,patterns:[{include:"#term"}]}]}]},termFunction:{captures:{"1":{name:"storage.type"},"2":{name:"storage.type"}},match:/\b(?:(fun)|(function))\b/dgv},termLet:{patterns:[{begin:/(?:(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]->|(?<=^|\n(?!$))->))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<=;|\())(?=[\p{space}]|\blet\b)|(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]begin|(?<=^|\n(?!$))begin|[^\p{L}\p{M}\p{N}\p{Pc}]do|(?<=^|\n(?!$))do|[^\p{L}\p{M}\p{N}\p{Pc}]else|(?<=^|\n(?!$))else|[^\p{L}\p{M}\p{N}\p{Pc}]in|(?<=^|\n(?!$))in|[^\p{L}\p{M}\p{N}\p{Pc}]struct|(?<=^|\n(?!$))struct|[^\p{L}\p{M}\p{N}\p{Pc}]then|(?<=^|\n(?!$))then|[^\p{L}\p{M}\p{N}\p{Pc}]try|(?<=^|\n(?!$))try))(?![\p{L}\p{M}\p{N}\p{Pc}])|(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]@@|(?<=^|\n(?!$))@@))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])[\p{space}]+/dgv,end:/\b(?:(and)|(let))\b|(?=[^\p{space}])(?!\(\*)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{name:"storage.type markup.underline"}},patterns:[{include:"#comment"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]and|(?<=^|\n(?!$))and|[^\p{L}\p{M}\p{N}\p{Pc}]let|(?<=^|\n(?!$))let))(?![\p{L}\p{M}\p{N}\p{Pc}])|(let)/dgv,beginCaptures:{"1":{name:"storage.type markup.underline"}},end:/\b(?:(and)|(in))\b|(?=\}|\)|\]|\b(?:end|class|exception|external|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{name:"storage.type markup.underline"}},patterns:[{include:"#bindTerm"}]}]},termMatch:{begin:/\bmatch\b/dgv,captures:{"0":{name:"keyword.control"}},end:/\bwith\b/dgv,patterns:[{include:"#term"}]},termMatchRule:{patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]fun|(?<=^|\n(?!$))fun|[^\p{L}\p{M}\p{N}\p{Pc}]function|(?<=^|\n(?!$))function|[^\p{L}\p{M}\p{N}\p{Pc}]with|(?<=^|\n(?!$))with))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(\|)|(->)(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,endCaptures:{"1":{name:"support.type strong"},"2":{name:"support.type strong"}},patterns:[{include:"#comment"},{include:"#attributeIdentifier"},{include:"#pattern"}]},{begin:/(?<=(?:[^\[\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\||(?<=^|\n(?!$))\|))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])|(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\|(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"support.type strong"}},end:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])(\|)|(->)(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,endCaptures:{"1":{name:"support.type strong"},"2":{name:"support.type strong"}},patterns:[{include:"#pattern"},{begin:/\bwhen\b/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/(?=(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,patterns:[{include:"#term"}]}]}]},termOperator:{patterns:[{begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])#(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"keyword"}},end:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,endCaptures:{"0":{name:"entity.name.function"}}},{captures:{"0":{name:"keyword.control strong"}},match:/<-/dgv},{captures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},match:/(,|[\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]+)|(;)/dgv},{match:/\b(?:and|assert|asr|land|lazy|lsr|lxor|mod|new|or)\b/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"}]},termPun:{applyEndPatternLast:true,begin:/(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])\?|~(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,beginCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},end:/:|(?=[^\p{space}\:])/dgv,endCaptures:{"0":{name:"keyword"}},patterns:[{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]\?|(?<=^|\n(?!$))\?|[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]~|(?<=^|\n(?!$))~))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,endCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}}}]},termTry:{begin:/\btry\b/dgv,captures:{"0":{name:"keyword.control"}},end:/\bwith\b/dgv,patterns:[{include:"#term"}]},termWhile:{patterns:[{begin:/\bwhile\b/dgv,beginCaptures:{"0":{name:"keyword.control"}},end:/\bdone\b/dgv,endCaptures:{"0":{name:"keyword.control"}},patterns:[{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]while|(?<=^|\n(?!$))while))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/\bdo\b/dgv,endCaptures:{"0":{name:"keyword.control"}},patterns:[{include:"#term"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]do|(?<=^|\n(?!$))do))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=\bdone\b)/dgv,patterns:[{include:"#term"}]}]}]},type:{patterns:[{include:"#comment"},{match:/\bnonrec\b/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"},{include:"#pathModulePrefixExtended"},{include:"#typeLabel"},{include:"#typeObject"},{include:"#typeOperator"},{include:"#typeParens"},{include:"#typePolymorphicVariant"},{include:"#typeRecord"},{include:"#typeConstructor"}]},typeConstructor:{patterns:[{begin:/(_)|((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)|(')((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)|(?<=[^\*]\)|\])/dgv,beginCaptures:{"1":{name:"comment constant.regexp meta.separator.markdown"},"3":{name:"string.other.link variable.language variable.parameter emphasis strong emphasis"},"4":{name:"keyword.control emphasis"}},end:/(?=\((?!\*)|\*|:|,|=|\.|>|-|\{|\[|\+|\}|\)|\]|;|\|)|((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)[\p{space}]*(?!\(\*|[\p{L}\p{M}\p{N}\p{Pc}])|(?=;;|\}|\)|\]|\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\b)/dgv,endCaptures:{"1":{name:"entity.name.function strong"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixExtended"}]}]},typeLabel:{patterns:[{begin:/(\??)((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)[\p{space}]*((?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]):(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,captures:{"1":{name:"keyword strong emphasis"},"2":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"},"3":{name:"keyword"}},end:/(?=(?<![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])->(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]))/dgv,patterns:[{include:"#type"}]}]},typeModule:{begin:/\bmodule\b/dgv,beginCaptures:{"0":{name:"markup.inserted constant.language support.constant.property-value entity.name.filename"}},end:/(?=\))/dgv,patterns:[{include:"#pathModuleExtended"},{include:"#signatureConstraints"}]},typeObject:{begin:/</dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},end:/>/dgv,patterns:[{begin:/(?<=<|;)/dgv,end:/(:)|(?=>)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixSimple"},{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(;)|(?=>)/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"support.type strong"}},patterns:[{include:"#type"}]}]},typeOperator:{patterns:[{match:/,|;|[\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]+/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp strong"}]},typeParens:{begin:/\(/dgv,captures:{"0":{name:"punctuation.definition.tag"}},end:/\)/dgv,patterns:[{match:/,/dgv,name:"variable.other.class.js message.error variable.interpolation string.regexp"},{include:"#typeModule"},{include:"#type"}]},typePolymorphicVariant:{begin:/\[/dgv,end:/\]/dgv,patterns:[]},typeRecord:{begin:/\{/dgv,captures:{"0":{name:"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},end:/\}/dgv,patterns:[{begin:/(?<=\{|;)/dgv,end:/(:)|(=)|(;)|(with)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#comment"},{include:"#pathModulePrefixSimple"},{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\p{L}\p{M}\p{N}\p{Pc}]with|(?<=^|\n(?!$))with))(?![\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(:)|(=)|(;)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{name:"support.type strong"},"3":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{match:/(?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv,name:"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]:|(?<=^|\n(?!$)):))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/(;)|(=)|(?=\})/dgv,endCaptures:{"1":{name:"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{name:"support.type strong"}},patterns:[{include:"#type"}]},{begin:/(?<=(?:[^\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$]=|(?<=^|\n(?!$))=))(?![\#\-\:\!\?\.\@\*\/\&\%\^\+\<\=\>\|\~\$])/dgv,end:/;|(?=\})/dgv,endCaptures:{"0":{name:"variable.other.class.js message.error variable.interpolation string.regexp"}},patterns:[{include:"#type"}]}]},variableModule:{captures:{"0":{name:"string.other.link variable.language variable.parameter emphasis"}},match:/\b(?=[A-Z])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*/dgv},variablePattern:{captures:{"1":{name:"comment constant.regexp meta.separator.markdown"},"2":{name:"string.other.link variable.language variable.parameter emphasis"}},match:/(\b_\b)|((?!\b(?:and|'|as|asr|assert|\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\{|\(|\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\+|private|\?|"|rec|\\|\}|\)|\]|;|sig|\/|struct|then|~|to|true|try|type|val|\||virtual|when|while|with)\b(?:[^']|(?=$|\n)))\b(?=[a-z_])[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}']*)/dgv}},scopeName:"source.ocaml",embeddedLangs:undefined,aliases:undefined})
2
+
3
+ export default [
4
+ lang
5
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
@@ -0,0 +1,7 @@
1
+ import { EmulatedRegExp } from 'oniguruma-to-es'
2
+
3
+ const lang = Object.freeze({displayName:"Pascal",fileTypes:["pas","p","pp","dfm","fmx","dpr","dpk","lfm","lpr"],name:"pascal",patterns:[{match:/\b(absolute|abstract|add|all|and_then|array|as|asc|asm|assembler|async|attribute|autoreleasepool|await|begin|bindable|block|by|case|cdecl|class|concat|const|constref|copy|cppdecl|contains|default|delegate|deprecated|desc|distinct|div|each|else|empty|end|ensure|enum|equals|event|except|export|exports|extension|external|far|file|finalization|finalizer|finally|flags|forward|from|future|generic|goto|group|has|helper|if|implements|implies|import|in|index|inherited|initialization|inline|interrupt|into|invariants|is|iterator|label|library|join|lazy|lifetimestrategy|locked|locking|loop|mapped|matching|message|method|mod|module|name|namespace|near|nested|new|nostackframe|not|notify|nullable|object|of|old|oldfpccall|on|only|operator|optional|or_else|order|otherwise|out|override|package|packed|parallel|params|partial|pascal|pinned|platform|pow|private|program|protected|public|published|interface|implementation|qualified|queryable|raises|read|readonly|record|reference|register|remove|resident|require|requires|resourcestring|restricted|result|reverse|safecall|sealed|segment|select|selector|sequence|set|shl|shr|skip|specialize|soft|static|stored|stdcall|step|strict|strong|take|then|threadvar|to|try|tuple|type|unconstrained|unit|unmanaged|unretained|unsafe|uses|using|var|view|virtual|volatile|weak|dynamic|overload|reintroduce|where|with|write|xor|yield)\b/dgiv,name:"keyword.pascal"},{captures:{"1":{name:"storage.type.prototype.pascal"},"2":{name:"entity.name.function.prototype.pascal"}},match:/\b(function|procedure|constructor|destructor)\b\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+(\.[\p{L}\p{M}\p{N}\p{Pc}]+)?)(\([^\n]*?\))?;\p{space}*(?=(?:attribute|forward|external))/dgiv,name:"meta.function.prototype.pascal"},{captures:{"1":{name:"storage.type.function.pascal"},"2":{name:"entity.name.function.pascal"}},match:/\b(function|procedure|constructor|destructor|property|read|write)\b\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+(\.[\p{L}\p{M}\p{N}\p{Pc}]+)?)/dgiv,name:"meta.function.pascal"},{match:/\b(self|result)\b/dgiv,name:"token.variable"},{match:/\b(and|or)\b/dgiv,name:"keyword.operator.pascal"},{match:/\b(break|continue|exit|abort|while|do|downto|for|raise|repeat|until)\b/dgiv,name:"keyword.control.pascal"},{begin:/\{\$/dgv,captures:{"0":{name:"string.regexp"}},end:/\}/dgv,name:"string.regexp"},{match:/\b(ansichar|ansistring|boolean|byte|cardinal|char|comp|currency|double|dword|extended|file|integer|int8|int16|int32|int64|longint|longword|nativeint|nativeuint|olevariant|pansichar|pchar|pwidechar|pointer|real|shortint|shortstring|single|smallint|string|uint8|uint16|uint32|uint64|variant|widechar|widestring|word|wordbool|uintptr|intptr)\b/dgiv,name:"storage.support.type.pascal"},{match:/\b(\p{Nd}+)|(\p{Nd}*\.\p{Nd}+([eE][\-\+]?\p{Nd}+)?)\b/dgv,name:"constant.numeric.pascal"},{match:/\$[0-9a-fA-F]{1,16}\b/dgv,name:"constant.numeric.hex.pascal"},{match:/\b(true|false|nil)\b/dgiv,name:"constant.language.pascal"},{match:/\b(Assert)\b/dgiv,name:"keyword.control"},{begin:/((?<=^|\n(?!$))[ \t]+)?(?=\/\/)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.pascal"}},end:new EmulatedRegExp("","dgv",{"strategy":"not_search_start"}),patterns:[{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.pascal"}},end:/\n/dgv,name:"comment.line.double-slash.pascal.two"}]},{begin:/\(\*/dgv,captures:{"0":{name:"punctuation.definition.comment.pascal"}},end:/\*\)/dgv,name:"comment.block.pascal.one"},{begin:/\{(?!\$)/dgv,captures:{"0":{name:"punctuation.definition.comment.pascal"}},end:/\}/dgv,name:"comment.block.pascal.two"},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.pascal"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.pascal"}},name:"string.quoted.single.pascal",patterns:[{match:/''/dgv,name:"constant.character.escape.apostrophe.pascal"}]},{match:/#\p{Nd}+/dgv,name:"string.other.pascal"}],scopeName:"source.pascal",embeddedLangs:undefined,aliases:undefined})
4
+
5
+ export default [
6
+ lang
7
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
package/dist/perl.mjs ADDED
@@ -0,0 +1,17 @@
1
+ import { EmulatedRegExp } from 'oniguruma-to-es'
2
+ import html from './html.mjs'
3
+ import xml from './xml.mjs'
4
+ import css from './css.mjs'
5
+ import javascript from './javascript.mjs'
6
+ import sql from './sql.mjs'
7
+
8
+ const lang = Object.freeze({displayName:"Perl",name:"perl",patterns:[{include:"#line_comment"},{begin:/(?<=^|\n(?!$))(?==[a-zA-Z]+)/dgv,end:/(?<=^|\n(?!$))(=cut\b[^\n]*(?=$|\n))/dgv,endCaptures:{"1":{patterns:[{include:"#pod"}]}},name:"comment.block.documentation.perl",patterns:[{include:"#pod"}]},{include:"#variable"},{applyEndPatternLast:1,begin:/\b(?=qr\p{space}*[^\p{space}\p{L}\p{M}\p{N}\p{Pc}])/dgv,comment:"string.regexp.compile.perl",end:/((([egimosxradlupcn]*)))(?=(\p{space}+\P{space}|\p{space}*[\;\,\#\{\}\)]|\p{space}*(?=$|\n)))/dgv,endCaptures:{"1":{name:"string.regexp.compile.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:/(qr)\p{space}*\{/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\}/dgv,name:"string.regexp.compile.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:/(qr)\p{space}*\[/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\]/dgv,name:"string.regexp.compile.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:/(qr)\p{space}*</dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/>/dgv,name:"string.regexp.compile.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:/(qr)\p{space}*\(/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\)/dgv,name:"string.regexp.compile.nested_parens.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:/\$(?=[^\p{space}\p{L}\p{M}\p{N}\p{Pc}\\'\{\[\(\<])/dgv},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:/(qr)\p{space}*'/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/'/dgv,name:"string.regexp.compile.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:/(qr)\p{space}*([^\p{space}\p{L}\p{M}\p{N}\p{Pc}'\{\[\(\<])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\2()()/dgv,name:"string.regexp.compile.simple-delimiter.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:/\$(?=[^\p{space}\p{L}\p{M}\p{N}\p{Pc}'\{\[\(\<])/dgv,name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]}]},{applyEndPatternLast:1,begin:/(?<!\{|\+|-)\b(?=m\p{space}*[^\p{space}a-zA-Z0-9])/dgv,comment:"string.regexp.find-m.perl",end:/((([egimosxradlupcn]*)))(?=(\p{space}+\P{space}|\p{space}*[\;\,\#\{\}\)]|\p{space}*(?=$|\n)))/dgv,endCaptures:{"1":{name:"string.regexp.find-m.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:/(m)\p{space}*\{/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\}/dgv,name:"string.regexp.find-m.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:/(m)\p{space}*\[/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\]/dgv,name:"string.regexp.find-m.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:/(m)\p{space}*</dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/>/dgv,name:"string.regexp.find-m.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:/(m)\p{space}*\(/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\)/dgv,name:"string.regexp.find-m.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:/(m)\p{space}*'/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/'/dgv,name:"string.regexp.find-m.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:/(?<!\{|\+|-)(m)(?!_)\p{space}*([^\p{space}a-zA-Z0-9'\{\[\(\<])/dgvy,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\2()()/dgv,name:"string.regexp.find-m.simple-delimiter.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:/\$(?=[^\p{space}a-zA-Z0-9'\{\[\(\<])/dgv,name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{begin:/\[/dgv,beginCaptures:{"1":{name:"punctuation.definition.character-class.begin.perl"}},end:/\]/dgv,endCaptures:{"1":{name:"punctuation.definition.character-class.end.perl"}},name:"constant.other.character-class.set.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:/\$(?=[^\p{space}\p{L}\p{M}\p{N}\p{Pc}'\{\[\(\<])/dgv,name:"keyword.control.anchor.perl"},{include:"#escaped_char"}]},{include:"#nested_parens_interpolated"}]}]},{applyEndPatternLast:1,begin:/\b(?=(?<!&)(s)(\p{space}+\P{space}|\p{space}*[\;\,\{\}\(\)\[\<]|(?=$|\n)))/dgv,comment:"string.regexp.replace.perl",end:/((([egimosxradlupcn]*)))(?=(\p{space}+\P{space}|\p{space}*[\;\,\{\}\)\]\>]|\p{space}*(?=$|\n)))/dgv,endCaptures:{"1":{name:"string.regexp.replace.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:/(s)\p{space}*\{/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\}/dgv,name:"string.regexp.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces"}]},{begin:/(s)\p{space}*\[/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\]/dgv,name:"string.regexp.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets"}]},{begin:/(s)\p{space}*</dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/>/dgv,name:"string.regexp.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt"}]},{begin:/(s)\p{space}*\(/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/\)/dgv,name:"string.regexp.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens"}]},{begin:/\{/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\}/dgv,name:"string.regexp.format.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:/\[/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\]/dgv,name:"string.regexp.format.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:/</dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/>/dgv,name:"string.regexp.format.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:/\(/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\)/dgv,name:"string.regexp.format.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:/'/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/'/dgv,name:"string.regexp.format.single_quote.perl",patterns:[{match:/\\['\\]/dgv,name:"constant.character.escape.perl"}]},{begin:/([^\p{space}\p{L}\p{M}\p{N}\p{Pc}\[\(\{\<\;])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\1()/dgv,name:"string.regexp.format.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{match:/\p{space}+/dgv}]},{begin:/\b(?=s([^\p{space}a-zA-Z0-9\[\(\{\<])[^\n]*\1([egimosxradlupcn]*)([\}\)\;\,]|\p{space}+))/dgv,comment:"string.regexp.replaceXXX",end:/((([egimosxradlupcn]*)))(?=([\}\)\;\,]|\p{space}+|\p{space}*(?=$|\n)))/dgv,endCaptures:{"1":{name:"string.regexp.replace.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:/(s\p{space}*)([^\p{space}a-zA-Z0-9\[\(\{\<])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/(?=\2)()()/dgv,name:"string.regexp.replaceXXX.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:/'/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/'/dgv,name:"string.regexp.replaceXXX.format.single_quote.perl",patterns:[{match:/\\['\\]/dgv,name:"constant.character.escape.perl.perl"}]},{begin:/([^\p{space}a-zA-Z0-9\[\(\{\<])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\1()/dgv,name:"string.regexp.replaceXXX.format.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},{begin:/\b(?=(?<!\\)s\p{space}*([^\p{space}\p{L}\p{M}\p{N}\p{Pc}\[\(\{\<\>]))/dgv,comment:"string.regexp.replace.extended",end:/((([egimosradlupc]*x[egimosradlupc]*)))\b/dgv,endCaptures:{"1":{name:"string.regexp.replace.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:/(s)\p{space}*([^\n])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"},"1":{name:"support.function.perl"}},end:/(?=\2)()()/dgv,name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:/'/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/'(?=[egimosradlupc]*x[egimosradlupc]*)\b/dgv,name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:/([^\n])/dgv,captures:{"0":{name:"punctuation.definition.string.perl"}},end:/\1(?=[egimosradlupc]*x[egimosradlupc]*)\b()/dgv,name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},{begin:/(?<=\(|\{|~|&|\||if|unless|(?<=^|\n(?!$)))\p{space}*((\/))/dgv,beginCaptures:{"1":{name:"string.regexp.find.perl"},"2":{name:"punctuation.definition.string.perl"}},contentName:"string.regexp.find.perl",end:/(((?!)([egimosxradlupcn]*)))(?=(\p{space}+\P{space}|\p{space}*[\;\,\#\{\}\)]|\p{space}*(?=$|\n)))/dgv,endCaptures:{"1":{name:"string.regexp.find.perl"},"2":{name:"punctuation.definition.string.perl"},"3":{name:"keyword.control.regexp-option.perl"}},patterns:[{comment:"This is to prevent thinks like /foo$/ to treat $/ as a variable",match:/\$(?=\/)/dgv,name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"}]},{captures:{"1":{name:"constant.other.key.perl"}},match:/\b([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?==>)/dgv},{match:/(?<=\{)\p{space}*[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*(?=\})/dgv,name:"constant.other.bareword.perl"},{captures:{"1":{name:"keyword.control.perl"},"2":{name:"entity.name.type.class.perl"}},match:/(?<=^|\n(?!$))\p{space}*(package)\p{space}+([^\p{space}\;]+)/dgv,name:"meta.class.perl"},{captures:{"1":{name:"storage.type.sub.perl"},"2":{name:"entity.name.function.perl"},"3":{name:"storage.type.method.perl"}},match:/\b(sub)(?:\p{space}+([\-a-zA-Z0-9_]+))?\p{space}*(?:\([\$\@\*\;]*\))?[^\p{L}\p{M}\p{N}\p{Pc}\{]/dgv,name:"meta.function.perl"},{captures:{"1":{name:"entity.name.function.perl"},"2":{name:"punctuation.definition.parameters.perl"},"3":{name:"variable.parameter.function.perl"}},match:/(?<=^|\n(?!$))\p{space}*(BEGIN|UNITCHECK|CHECK|INIT|END|DESTROY)\b/dgv,name:"meta.function.perl"},{begin:/(?<=^|\n(?!$))(?=(\t| {4}))/dgv,end:/(?=[^\t\p{space}])/dgv,name:"meta.leading-tabs",patterns:[{captures:{"1":{name:"meta.odd-tab"},"2":{name:"meta.even-tab"}},match:/(\t| {4})(\t| {4})?/dgv}]},{captures:{"1":{name:"support.function.perl"},"2":{name:"punctuation.definition.string.perl"},"5":{name:"punctuation.definition.string.perl"},"8":{name:"punctuation.definition.string.perl"}},match:/\b(tr|y)\p{space}*([^A-Za-z0-9\p{space}])([^\n]*?)(?<!\\)(\\{2})*(\2)([^\n]*?)(?<!\\)(\\{2})*(\2)/dgv,name:"string.regexp.replace.perl"},{match:/\b(__FILE__|__LINE__|__PACKAGE__|__SUB__)\b/dgv,name:"constant.language.perl"},{begin:/\b(__DATA__|__END__)\n?/dgv,beginCaptures:{"1":{name:"constant.language.perl"}},contentName:"comment.block.documentation.perl",end:/$/dgv,patterns:[{include:"#pod"}]},{match:/(?<!->)\b(continue|default|die|do|else|elsif|exit|for|foreach|given|goto|if|last|next|redo|return|select|unless|until|wait|when|while|switch|case|require|use|eval)\b/dgv,name:"keyword.control.perl"},{match:/\b(my|our|local)\b/dgv,name:"storage.modifier.perl"},{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}])-[rwxoRWXOezsfdlpSbctugkTBMAC]\b/dgv,name:"keyword.operator.filetest.perl"},{match:/\b(and|or|xor|as|not)\b/dgv,name:"keyword.operator.logical.perl"},{match:/(<=>|=>|->)/dgv,name:"keyword.operator.comparison.perl"},{include:"#heredoc"},{begin:/\bqq\p{space}*([^\(\{\[\<\p{L}\p{M}\p{N}\p{Pc}\p{space}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\1()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/\bqx\p{space}*([^'\(\{\[\<\p{L}\p{M}\p{N}\p{Pc}\p{space}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\1()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/\bqx\p{space}*'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.double.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/(?<!->)\bqw?\p{space}*([^\(\{\[\<\p{L}\p{M}\p{N}\p{Pc}\p{space}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\1()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q.perl"},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.single.perl",patterns:[{match:/\\['\\]/dgv,name:"constant.character.escape.perl"}]},{begin:/`/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/`/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/(?<!->)\bqq\p{space}*\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-paren.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens_interpolated"},{include:"#variable"}]},{begin:/\bqq\p{space}*\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-brace.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces_interpolated"},{include:"#variable"}]},{begin:/\bqq\p{space}*\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-bracket.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets_interpolated"},{include:"#variable"}]},{begin:/\bqq\p{space}*</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt_interpolated"},{include:"#variable"}]},{begin:/(?<!->)\bqx\p{space}*\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-paren.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens_interpolated"},{include:"#variable"}]},{begin:/\bqx\p{space}*\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-brace.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces_interpolated"},{include:"#variable"}]},{begin:/\bqx\p{space}*\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-bracket.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets_interpolated"},{include:"#variable"}]},{begin:/\bqx\p{space}*</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt_interpolated"},{include:"#variable"}]},{begin:/(?<!->)\bqw?\p{space}*\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-paren.perl",patterns:[{include:"#nested_parens"}]},{begin:/\bqw?\p{space}*\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-brace.perl",patterns:[{include:"#nested_braces"}]},{begin:/\bqw?\p{space}*\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-bracket.perl",patterns:[{include:"#nested_brackets"}]},{begin:/\bqw?\p{space}*</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-ltgt.perl",patterns:[{include:"#nested_ltgt"}]},{begin:/(?<=^|\n(?!$))__[\p{L}\p{M}\p{N}\p{Pc}]+__/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.perl"}},end:/(?=$|\n)/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.perl"}},name:"string.unquoted.program-block.perl"},{begin:/\b(format)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*=/dgv,beginCaptures:{"1":{name:"support.function.perl"},"2":{name:"entity.name.function.format.perl"}},end:/(?<=^|\n(?!$))\.\p{space}*(?=$|\n)/dgv,name:"meta.format.perl",patterns:[{include:"#line_comment"},{include:"#variable"}]},{captures:{"1":{name:"support.function.perl"},"2":{name:"entity.name.function.perl"}},match:/\b(x)\p{space}*(\p{Nd}+)\b/dgv},{match:/\b(ARGV|DATA|ENV|SIG|STDERR|STDIN|STDOUT|atan2|bind|binmode|bless|caller|chdir|chmod|chomp|chop|chown|chr|chroot|close|closedir|cmp|connect|cos|crypt|dbmclose|dbmopen|defined|delete|dump|each|endgrent|endhostent|endnetent|endprotoent|endpwent|endservent|eof|eq|eval|exec|exists|exp|fcntl|fileno|flock|fork|formline|ge|getc|getgrent|getgrgid|getgrnam|gethostbyaddr|gethostbyname|gethostent|getlogin|getnetbyaddr|getnetbyname|getnetent|getpeername|getpgrp|getppid|getpriority|getprotobyname|getprotobynumber|getprotoent|getpwent|getpwnam|getpwuid|getservbyname|getservbyport|getservent|getsockname|getsockopt|glob|gmtime|grep|gt|hex|import|index|int|ioctl|join|keys|kill|lc|lcfirst|le|length|link|listen|local|localtime|log|lstat|lt|m|map|mkdir|msgctl|msgget|msgrcv|msgsnd|ne|no|oct|open|opendir|ord|pack|pipe|pop|pos|print|printf|push|quotemeta|rand|read|readdir|readlink|recv|ref|rename|reset|reverse|rewinddir|rindex|rmdir|s|say|scalar|seek|seekdir|semctl|semget|semop|send|setgrent|sethostent|setnetent|setpgrp|setpriority|setprotoent|setpwent|setservent|setsockopt|shift|shmctl|shmget|shmread|shmwrite|shutdown|sin|sleep|socket|socketpair|sort|splice|split|sprintf|sqrt|srand|stat|study|substr|symlink|syscall|sysopen|sysread|system|syswrite|tell|telldir|tie|tied|time|times|tr|truncate|uc|ucfirst|umask|undef|unlink|unpack|unshift|untie|utime|values|vec|waitpid|wantarray|warn|write|y)\b/dgv,name:"support.function.perl"},{captures:{"1":{name:"punctuation.section.scope.begin.perl"},"2":{name:"punctuation.section.scope.end.perl"}},comment:"Match empty brackets for ↩ snippet",match:/(\{)(\})/dgv},{captures:{"1":{name:"punctuation.section.scope.begin.perl"},"2":{name:"punctuation.section.scope.end.perl"}},comment:"Match empty parenthesis for ↩ snippet",match:/(\()(\))/dgv}],repository:{escaped_char:{patterns:[{match:/\\\p{Nd}+/dgv,name:"constant.character.escape.perl"},{match:/\\c[^\p{space}\\]/dgv,name:"constant.character.escape.perl"},{match:/\\g(?:\{(?:[\p{L}\p{M}\p{N}\p{Pc}]*|-\p{Nd}+)\}|\p{Nd}+)/dgv,name:"constant.character.escape.perl"},{match:/\\k(?:\{[\p{L}\p{M}\p{N}\p{Pc}]*\}|<[\p{L}\p{M}\p{N}\p{Pc}]*>|'[\p{L}\p{M}\p{N}\p{Pc}]*')/dgv,name:"constant.character.escape.perl"},{match:/\\N\{[^\}]*\}/dgv,name:"constant.character.escape.perl"},{match:/\\o\{\p{Nd}*\}/dgv,name:"constant.character.escape.perl"},{match:/\\(?:p|P)(?:\{[\p{L}\p{M}\p{N}\p{Pc}]*\}|P)/dgv,name:"constant.character.escape.perl"},{match:/\\x(?:[0-9a-zA-Z]{2}|\{[\p{L}\p{M}\p{N}\p{Pc}]*\})?/dgv,name:"constant.character.escape.perl"},{match:/\\[^\n]/dgv,name:"constant.character.escape.perl"}]},heredoc:{patterns:[{begin:/((((<<(~)?) *')(HTML)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.html.basic",patterns:[{include:"text.html.basic"}]}]},{begin:/((((<<(~)?) *')(XML)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.xml",patterns:[{include:"text.xml"}]}]},{begin:/((((<<(~)?) *')(CSS)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.css",patterns:[{include:"source.css"}]}]},{begin:/((((<<(~)?) *')(JAVASCRIPT)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.js",patterns:[{include:"source.js"}]}]},{begin:/((((<<(~)?) *')(SQL)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.sql",patterns:[{include:"source.sql"}]}]},{begin:/((((<<(~)?) *')(POSTSCRIPT)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.postscript",patterns:[{include:"source.postscript"}]}]},{begin:/((((<<(~)?) *')([^']*)(')))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}}},{begin:/((((<<(~)?) *\\)((?![\=\p{Nd}\$\( ])[^\;\,'"\`\p{space}\)]*)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.raw.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.raw.perl"},"3":{name:"punctuation.definition.string.end.perl"}}},{begin:/((((<<(~)?) *")(HTML)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.html.basic",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.html.basic"}]}]},{begin:/((((<<(~)?) *")(XML)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.xml",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.xml"}]}]},{begin:/((((<<(~)?) *")(CSS)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.css",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.css"}]}]},{begin:/((((<<(~)?) *")(JAVASCRIPT)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.js",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.js"}]}]},{begin:/((((<<(~)?) *")(SQL)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.sql",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.sql"}]}]},{begin:/((((<<(~)?) *")(POSTSCRIPT)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.postscript",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.postscript"}]}]},{begin:/((((<<(~)?) *")([^"]*)(")))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/((((<<(~)?) *)(HTML)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.html.basic",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.html.basic"}]}]},{begin:/((((<<(~)?) *)(XML)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"text.xml",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.xml"}]}]},{begin:/((((<<(~)?) *)(CSS)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.css",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.css"}]}]},{begin:/((((<<(~)?) *)(JAVASCRIPT)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.js",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.js"}]}]},{begin:/((((<<(~)?) *)(SQL)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.sql",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.sql"}]}]},{begin:/((((<<(~)?) *)(POSTSCRIPT)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:/(?<=^|\n(?!$))/dgv,end:/\n/dgv,name:"source.postscript",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.postscript"}]}]},{begin:/((((<<(~)?) *)((?![\=\p{Nd}\$\( ])[^\;\,'"\`\p{space}\)]*)()))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:/((((<<(~)?) *`)([^\`]*)(`)))([^\n]*)\n?/dgv,beginCaptures:{"1":{name:"string.unquoted.heredoc.interpolated.perl"},"2":{name:"punctuation.definition.string.begin.perl"},"3":{name:"punctuation.definition.delimiter.begin.perl"},"7":{name:"punctuation.definition.delimiter.end.perl"},"8":{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.shell.perl",end:/(?<=^|\n(?!$))((?!\5)\p{space}+)?((\6))(?=$|\n)()()()/dgv,endCaptures:{"2":{name:"string.unquoted.heredoc.interpolated.perl"},"3":{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},line_comment:{patterns:[{begin:/((?<=^|\n(?!$))[ \t]+)?(?=#)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.perl"}},end:new EmulatedRegExp("","dgv",{"strategy":"not_search_start"}),patterns:[{begin:/#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.perl"}},end:/\n/dgv,name:"comment.line.number-sign.perl"}]}]},nested_braces:{begin:/\{/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\}/dgv,patterns:[{include:"#escaped_char"},{include:"#nested_braces"}]},nested_braces_interpolated:{begin:/\{/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\}/dgv,patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},nested_brackets:{begin:/\[/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\]/dgv,patterns:[{include:"#escaped_char"},{include:"#nested_brackets"}]},nested_brackets_interpolated:{begin:/\[/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\]/dgv,patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},nested_ltgt:{begin:/</dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/>/dgv,patterns:[{include:"#nested_ltgt"}]},nested_ltgt_interpolated:{begin:/</dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/>/dgv,patterns:[{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},nested_parens:{begin:/\(/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\)/dgv,patterns:[{include:"#escaped_char"},{include:"#nested_parens"}]},nested_parens_interpolated:{begin:/\(/dgv,captures:{"1":{name:"punctuation.section.scope.perl"}},end:/\)/dgv,patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:/\$(?=[^\p{space}\p{L}\p{M}\p{N}\p{Pc}'\{\[\(\<])/dgv,name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},pod:{patterns:[{match:/(?<=^|\n(?!$))=(pod|back|cut)\b/dgv,name:"storage.type.class.pod.perl"},{begin:/(?<=^|\n(?!$))(=begin)\p{space}+(html)\p{space}*(?=$|\n)/dgv,beginCaptures:{"1":{name:"storage.type.class.pod.perl"},"2":{name:"variable.other.pod.perl"}},contentName:"text.embedded.html.basic",end:/(?<=^|\n(?!$))(=end)\p{space}+(html)|(?<=^|\n(?!$))(?==cut)/dgv,endCaptures:{"1":{name:"storage.type.class.pod.perl"},"2":{name:"variable.other.pod.perl"}},name:"meta.embedded.pod.perl",patterns:[{include:"text.html.basic"}]},{captures:{"1":{name:"storage.type.class.pod.perl"},"2":{name:"variable.other.pod.perl",patterns:[{include:"#pod-formatting"}]}},match:/(?<=^|\n(?!$))(=(?:head[1-4]|item|over|encoding|begin|end|for))\b\p{space}*([^\n]*)/dgv},{include:"#pod-formatting"}]},"pod-formatting":{patterns:[{captures:{"1":{name:"markup.italic.pod.perl"},"2":{name:"markup.italic.pod.perl"}},match:/I(?:<([^\<\>]+)>|<+(\p{space}+(?:(?<!\p{space})>|[^\>])+\p{space}+)>+)/dgv,name:"entity.name.type.instance.pod.perl"},{captures:{"1":{name:"markup.bold.pod.perl"},"2":{name:"markup.bold.pod.perl"}},match:/B(?:<([^\<\>]+)>|<+(\p{space}+(?:(?<!\p{space})>|[^\>])+\p{space}+)>+)/dgv,name:"entity.name.type.instance.pod.perl"},{captures:{"1":{name:"markup.raw.pod.perl"},"2":{name:"markup.raw.pod.perl"}},match:/C(?:<([^\<\>]+)>|<+(\\s+(?:(?<!\\s)>|[^\>])+\\s+)>+)/dgv,name:"entity.name.type.instance.pod.perl"},{captures:{"1":{name:"markup.underline.link.hyperlink.pod.perl"}},match:/L<([^\>]+)>/dgv,name:"entity.name.type.instance.pod.perl"},{match:/[EFSXZ]<[^\>]*>/dgv,name:"entity.name.type.instance.pod.perl"}]},variable:{patterns:[{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)&(?![A-Za-z0-9_])/dgv,name:"variable.other.regexp.match.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)`(?![A-Za-z0-9_])/dgv,name:"variable.other.regexp.pre-match.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)'(?![A-Za-z0-9_])/dgv,name:"variable.other.regexp.post-match.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)\+(?![A-Za-z0-9_])/dgv,name:"variable.other.regexp.last-paren-match.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)"(?![A-Za-z0-9_])/dgv,name:"variable.other.readwrite.list-separator.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)0(?![A-Za-z0-9_])/dgv,name:"variable.other.predefined.program-name.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)[_ab\*\.\/\|\,\\\;\#\%\=\-\~\^\:\?\!\$\<\>\(\)\[\]\@](?![A-Za-z0-9_])/dgv,name:"variable.other.predefined.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/(\$)\p{Nd}+(?![A-Za-z0-9_])/dgv,name:"variable.other.subpattern.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/([\$\@\%](#)?)([a-zA-Zx7f-xff\$]|::)([a-zA-Z0-9_x7f-xff\$]|::)*\b/dgv,name:"variable.other.readwrite.global.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"},"2":{name:"punctuation.definition.variable.perl"}},match:/(\$\{)(?:[a-zA-Zx7f-xff\$]|::)(?:[a-zA-Z0-9_x7f-xff\$]|::)*(\})/dgv,name:"variable.other.readwrite.global.perl"},{captures:{"1":{name:"punctuation.definition.variable.perl"}},match:/([\$\@\%](#)?)[0-9_]\b/dgv,name:"variable.other.readwrite.global.special.perl"}]}},scopeName:"source.perl",embeddedLangs:["html","xml","css","javascript","sql"],aliases:undefined})
9
+
10
+ export default [
11
+ ...html,
12
+ ...xml,
13
+ ...css,
14
+ ...javascript,
15
+ ...sql,
16
+ lang
17
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
package/dist/perl6.mjs ADDED
@@ -0,0 +1,2 @@
1
+ /* Alias perl6 for raku */
2
+ export { default } from './raku.mjs'
package/dist/php.d.mts ADDED
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs