@openclaw/diffs 2026.5.27 → 2026.5.28-beta.1

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 (838) hide show
  1. package/README.md +1 -0
  2. package/dist/assets/viewer-runtime.js +50 -50
  3. package/dist/index.js +419 -81
  4. package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts +22 -7
  5. package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts.map +1 -1
  6. package/node_modules/@pierre/diffs/dist/components/CodeView.js +202 -105
  7. package/node_modules/@pierre/diffs/dist/components/CodeView.js.map +1 -1
  8. package/node_modules/@pierre/diffs/dist/components/File.d.ts +2 -0
  9. package/node_modules/@pierre/diffs/dist/components/File.d.ts.map +1 -1
  10. package/node_modules/@pierre/diffs/dist/components/File.js +13 -9
  11. package/node_modules/@pierre/diffs/dist/components/File.js.map +1 -1
  12. package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts +2 -0
  13. package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts.map +1 -1
  14. package/node_modules/@pierre/diffs/dist/components/FileDiff.js +12 -6
  15. package/node_modules/@pierre/diffs/dist/components/FileDiff.js.map +1 -1
  16. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts +4 -2
  17. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts.map +1 -1
  18. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js +23 -6
  19. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js.map +1 -1
  20. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts +9 -8
  21. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
  22. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js +329 -142
  23. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js.map +1 -1
  24. package/node_modules/@pierre/diffs/dist/constants.d.ts.map +1 -1
  25. package/node_modules/@pierre/diffs/dist/index.d.ts +2 -2
  26. package/node_modules/@pierre/diffs/dist/index.js +3 -3
  27. package/node_modules/@pierre/diffs/dist/react/index.d.ts +2 -2
  28. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts +1 -0
  29. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
  30. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js +12 -5
  31. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js.map +1 -1
  32. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts +1 -0
  33. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts.map +1 -1
  34. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js +4 -1
  35. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js.map +1 -1
  36. package/node_modules/@pierre/diffs/dist/ssr/index.d.ts +2 -2
  37. package/node_modules/@pierre/diffs/dist/types.d.ts +7 -1
  38. package/node_modules/@pierre/diffs/dist/types.d.ts.map +1 -1
  39. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts +28 -0
  40. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -0
  41. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.js +111 -0
  42. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.js.map +1 -0
  43. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.d.ts +8 -0
  44. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -0
  45. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.js +31 -0
  46. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.js.map +1 -0
  47. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.d.ts +8 -0
  48. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.d.ts.map +1 -0
  49. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.js +24 -0
  50. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.js.map +1 -0
  51. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js +29 -30
  52. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js.map +1 -1
  53. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js +8 -1
  54. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js.map +1 -1
  55. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts +65 -0
  56. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts.map +1 -0
  57. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.js +94 -0
  58. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.js.map +1 -0
  59. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts +4 -1
  60. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts.map +1 -1
  61. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js +49 -24
  62. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js.map +1 -1
  63. package/node_modules/@pierre/diffs/dist/worker/types.d.ts +2 -0
  64. package/node_modules/@pierre/diffs/dist/worker/types.d.ts.map +1 -1
  65. package/node_modules/@pierre/diffs/dist/worker/worker-portable.js +163 -40
  66. package/node_modules/@pierre/diffs/dist/worker/worker-portable.js.map +1 -1
  67. package/node_modules/@pierre/diffs/dist/worker/worker.js +60 -30
  68. package/node_modules/@pierre/diffs/dist/worker/worker.js.map +1 -1
  69. package/node_modules/@pierre/diffs/package.json +1 -1
  70. package/node_modules/@shikijs/core/node_modules/@shikijs/types/LICENSE +22 -0
  71. package/node_modules/@shikijs/core/node_modules/@shikijs/types/README.md +7 -0
  72. package/node_modules/@shikijs/core/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  73. package/node_modules/@shikijs/core/node_modules/@shikijs/types/dist/index.mjs +8 -0
  74. package/node_modules/@shikijs/core/node_modules/@shikijs/types/package.json +36 -0
  75. package/node_modules/@shikijs/engine-javascript/node_modules/@shikijs/types/LICENSE +22 -0
  76. package/node_modules/@shikijs/engine-javascript/node_modules/@shikijs/types/README.md +7 -0
  77. package/node_modules/@shikijs/engine-javascript/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  78. package/node_modules/@shikijs/engine-javascript/node_modules/@shikijs/types/dist/index.mjs +8 -0
  79. package/node_modules/@shikijs/engine-javascript/node_modules/@shikijs/types/package.json +36 -0
  80. package/node_modules/@shikijs/engine-oniguruma/node_modules/@shikijs/types/LICENSE +22 -0
  81. package/node_modules/@shikijs/engine-oniguruma/node_modules/@shikijs/types/README.md +7 -0
  82. package/node_modules/@shikijs/engine-oniguruma/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  83. package/node_modules/@shikijs/engine-oniguruma/node_modules/@shikijs/types/dist/index.mjs +8 -0
  84. package/node_modules/@shikijs/engine-oniguruma/node_modules/@shikijs/types/package.json +36 -0
  85. package/node_modules/@shikijs/langs/dist/apex.mjs +1 -1
  86. package/node_modules/@shikijs/langs/dist/bird2.mjs +1 -1
  87. package/node_modules/@shikijs/langs/dist/c3.mjs +1 -1
  88. package/node_modules/@shikijs/langs/dist/cobol.mjs +1 -1
  89. package/node_modules/@shikijs/langs/dist/csharp.mjs +1 -1
  90. package/node_modules/@shikijs/langs/dist/css.mjs +1 -1
  91. package/node_modules/@shikijs/langs/dist/dart.mjs +1 -1
  92. package/node_modules/@shikijs/langs/dist/emacs-lisp.mjs +1 -1
  93. package/node_modules/@shikijs/langs/dist/es-tag-sql.mjs +1 -1
  94. package/node_modules/@shikijs/langs/dist/go.mjs +1 -1
  95. package/node_modules/@shikijs/langs/dist/hack.mjs +1 -1
  96. package/node_modules/@shikijs/langs/dist/julia.mjs +1 -1
  97. package/node_modules/@shikijs/langs/dist/just.mjs +1 -1
  98. package/node_modules/@shikijs/langs/dist/kusto.mjs +1 -1
  99. package/node_modules/@shikijs/langs/dist/latex.mjs +1 -1
  100. package/node_modules/@shikijs/langs/dist/luau.mjs +1 -1
  101. package/node_modules/@shikijs/langs/dist/nextflow-groovy.mjs +1 -1
  102. package/node_modules/@shikijs/langs/dist/php.mjs +1 -1
  103. package/node_modules/@shikijs/langs/dist/ruby.mjs +1 -1
  104. package/node_modules/@shikijs/langs/dist/sql.mjs +1 -1
  105. package/node_modules/@shikijs/langs/dist/typespec.mjs +1 -1
  106. package/node_modules/@shikijs/langs/package.json +6 -3
  107. package/node_modules/@shikijs/themes/node_modules/@shikijs/types/LICENSE +22 -0
  108. package/node_modules/@shikijs/themes/node_modules/@shikijs/types/README.md +7 -0
  109. package/node_modules/@shikijs/themes/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  110. package/node_modules/@shikijs/themes/node_modules/@shikijs/types/dist/index.mjs +8 -0
  111. package/node_modules/@shikijs/themes/node_modules/@shikijs/types/package.json +36 -0
  112. package/node_modules/@shikijs/transformers/node_modules/@shikijs/types/LICENSE +22 -0
  113. package/node_modules/@shikijs/transformers/node_modules/@shikijs/types/README.md +7 -0
  114. package/node_modules/@shikijs/transformers/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  115. package/node_modules/@shikijs/transformers/node_modules/@shikijs/types/dist/index.mjs +8 -0
  116. package/node_modules/@shikijs/transformers/node_modules/@shikijs/types/package.json +36 -0
  117. package/node_modules/@shikijs/types/dist/index.d.mts +686 -684
  118. package/node_modules/@shikijs/types/dist/index.mjs +8 -7
  119. package/node_modules/@shikijs/types/package.json +6 -3
  120. package/node_modules/diff/CONTRIBUTING.md +1 -1
  121. package/node_modules/diff/dist/diff.js +32 -73
  122. package/node_modules/diff/dist/diff.min.js +1 -1
  123. package/node_modules/diff/libcjs/diff/word.d.ts.map +1 -1
  124. package/node_modules/diff/libcjs/diff/word.js +31 -15
  125. package/node_modules/diff/libcjs/util/string.d.ts +2 -14
  126. package/node_modules/diff/libcjs/util/string.d.ts.map +1 -1
  127. package/node_modules/diff/libcjs/util/string.js +2 -61
  128. package/node_modules/diff/libesm/diff/word.d.ts.map +1 -1
  129. package/node_modules/diff/libesm/diff/word.js +31 -16
  130. package/node_modules/diff/libesm/util/string.d.ts +2 -14
  131. package/node_modules/diff/libesm/util/string.d.ts.map +1 -1
  132. package/node_modules/diff/libesm/util/string.js +2 -58
  133. package/node_modules/diff/package.json +24 -22
  134. package/node_modules/diff/release-notes.md +0 -28
  135. package/node_modules/shiki/node_modules/@shikijs/langs/LICENSE +22 -0
  136. package/node_modules/shiki/node_modules/@shikijs/langs/README.md +7 -0
  137. package/node_modules/shiki/node_modules/@shikijs/langs/dist/1c-query.d.mts +3 -0
  138. package/node_modules/shiki/node_modules/@shikijs/langs/dist/1c-query.mjs +2 -0
  139. package/node_modules/shiki/node_modules/@shikijs/langs/dist/1c.d.mts +3 -0
  140. package/node_modules/shiki/node_modules/@shikijs/langs/dist/1c.mjs +2 -0
  141. package/node_modules/shiki/node_modules/@shikijs/langs/dist/abap.d.mts +3 -0
  142. package/node_modules/shiki/node_modules/@shikijs/langs/dist/abap.mjs +5 -0
  143. package/node_modules/shiki/node_modules/@shikijs/langs/dist/actionscript-3.d.mts +3 -0
  144. package/node_modules/shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs +5 -0
  145. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ada.d.mts +3 -0
  146. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ada.mjs +5 -0
  147. package/node_modules/shiki/node_modules/@shikijs/langs/dist/adoc.d.mts +3 -0
  148. package/node_modules/shiki/node_modules/@shikijs/langs/dist/adoc.mjs +2 -0
  149. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-expression.d.mts +3 -0
  150. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs +5 -0
  151. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-html.d.mts +3 -0
  152. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-html.mjs +16 -0
  153. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-inline-style.d.mts +3 -0
  154. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs +8 -0
  155. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-inline-template.d.mts +3 -0
  156. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs +10 -0
  157. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.d.mts +3 -0
  158. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs +8 -0
  159. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.d.mts +3 -0
  160. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs +10 -0
  161. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-template.d.mts +3 -0
  162. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-template.mjs +8 -0
  163. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-ts.d.mts +3 -0
  164. package/node_modules/shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs +18 -0
  165. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apache.d.mts +3 -0
  166. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apache.mjs +5 -0
  167. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.d.mts +3 -0
  168. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.mjs +5 -0
  169. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apl.d.mts +3 -0
  170. package/node_modules/shiki/node_modules/@shikijs/langs/dist/apl.mjs +16 -0
  171. package/node_modules/shiki/node_modules/@shikijs/langs/dist/applescript.d.mts +3 -0
  172. package/node_modules/shiki/node_modules/@shikijs/langs/dist/applescript.mjs +5 -0
  173. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ara.d.mts +3 -0
  174. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ara.mjs +5 -0
  175. package/node_modules/shiki/node_modules/@shikijs/langs/dist/asciidoc.d.mts +3 -0
  176. package/node_modules/shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs +5 -0
  177. package/node_modules/shiki/node_modules/@shikijs/langs/dist/asm.d.mts +3 -0
  178. package/node_modules/shiki/node_modules/@shikijs/langs/dist/asm.mjs +5 -0
  179. package/node_modules/shiki/node_modules/@shikijs/langs/dist/astro.d.mts +3 -0
  180. package/node_modules/shiki/node_modules/@shikijs/langs/dist/astro.mjs +18 -0
  181. package/node_modules/shiki/node_modules/@shikijs/langs/dist/awk.d.mts +3 -0
  182. package/node_modules/shiki/node_modules/@shikijs/langs/dist/awk.mjs +5 -0
  183. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ballerina.d.mts +3 -0
  184. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ballerina.mjs +5 -0
  185. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bash.d.mts +3 -0
  186. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bash.mjs +2 -0
  187. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bat.d.mts +3 -0
  188. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bat.mjs +5 -0
  189. package/node_modules/shiki/node_modules/@shikijs/langs/dist/batch.d.mts +3 -0
  190. package/node_modules/shiki/node_modules/@shikijs/langs/dist/batch.mjs +2 -0
  191. package/node_modules/shiki/node_modules/@shikijs/langs/dist/be.d.mts +3 -0
  192. package/node_modules/shiki/node_modules/@shikijs/langs/dist/be.mjs +2 -0
  193. package/node_modules/shiki/node_modules/@shikijs/langs/dist/beancount.d.mts +3 -0
  194. package/node_modules/shiki/node_modules/@shikijs/langs/dist/beancount.mjs +5 -0
  195. package/node_modules/shiki/node_modules/@shikijs/langs/dist/berry.d.mts +3 -0
  196. package/node_modules/shiki/node_modules/@shikijs/langs/dist/berry.mjs +5 -0
  197. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bibtex.d.mts +3 -0
  198. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bibtex.mjs +5 -0
  199. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bicep.d.mts +3 -0
  200. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bicep.mjs +5 -0
  201. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bird.d.mts +3 -0
  202. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bird.mjs +2 -0
  203. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bird2.d.mts +3 -0
  204. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bird2.mjs +5 -0
  205. package/node_modules/shiki/node_modules/@shikijs/langs/dist/blade.d.mts +3 -0
  206. package/node_modules/shiki/node_modules/@shikijs/langs/dist/blade.mjs +20 -0
  207. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bsl.d.mts +3 -0
  208. package/node_modules/shiki/node_modules/@shikijs/langs/dist/bsl.mjs +8 -0
  209. package/node_modules/shiki/node_modules/@shikijs/langs/dist/c.d.mts +3 -0
  210. package/node_modules/shiki/node_modules/@shikijs/langs/dist/c.mjs +5 -0
  211. package/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.d.mts +3 -0
  212. package/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.mjs +5 -0
  213. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cadence.d.mts +3 -0
  214. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cadence.mjs +5 -0
  215. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cairo.d.mts +3 -0
  216. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cairo.mjs +8 -0
  217. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cdc.d.mts +3 -0
  218. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cdc.mjs +2 -0
  219. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cjs.d.mts +3 -0
  220. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cjs.mjs +2 -0
  221. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clarity.d.mts +3 -0
  222. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clarity.mjs +5 -0
  223. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clj.d.mts +3 -0
  224. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clj.mjs +2 -0
  225. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clojure.d.mts +3 -0
  226. package/node_modules/shiki/node_modules/@shikijs/langs/dist/clojure.mjs +5 -0
  227. package/node_modules/shiki/node_modules/@shikijs/langs/dist/closure-templates.d.mts +3 -0
  228. package/node_modules/shiki/node_modules/@shikijs/langs/dist/closure-templates.mjs +2 -0
  229. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cmake.d.mts +3 -0
  230. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cmake.mjs +5 -0
  231. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cmd.d.mts +3 -0
  232. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cmd.mjs +2 -0
  233. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cobol.d.mts +3 -0
  234. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cobol.mjs +10 -0
  235. package/node_modules/shiki/node_modules/@shikijs/langs/dist/codeowners.d.mts +3 -0
  236. package/node_modules/shiki/node_modules/@shikijs/langs/dist/codeowners.mjs +5 -0
  237. package/node_modules/shiki/node_modules/@shikijs/langs/dist/codeql.d.mts +3 -0
  238. package/node_modules/shiki/node_modules/@shikijs/langs/dist/codeql.mjs +5 -0
  239. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coffee.d.mts +3 -0
  240. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coffee.mjs +8 -0
  241. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coffeescript.d.mts +3 -0
  242. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coffeescript.mjs +2 -0
  243. package/node_modules/shiki/node_modules/@shikijs/langs/dist/common-lisp.d.mts +3 -0
  244. package/node_modules/shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs +5 -0
  245. package/node_modules/shiki/node_modules/@shikijs/langs/dist/console.d.mts +3 -0
  246. package/node_modules/shiki/node_modules/@shikijs/langs/dist/console.mjs +2 -0
  247. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coq.d.mts +3 -0
  248. package/node_modules/shiki/node_modules/@shikijs/langs/dist/coq.mjs +5 -0
  249. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cpp-macro.d.mts +3 -0
  250. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs +12 -0
  251. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cpp.d.mts +3 -0
  252. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cpp.mjs +14 -0
  253. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cql.d.mts +3 -0
  254. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cql.mjs +2 -0
  255. package/node_modules/shiki/node_modules/@shikijs/langs/dist/crystal.d.mts +3 -0
  256. package/node_modules/shiki/node_modules/@shikijs/langs/dist/crystal.mjs +18 -0
  257. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cs.d.mts +3 -0
  258. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cs.mjs +2 -0
  259. package/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.d.mts +3 -0
  260. package/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.mjs +5 -0
  261. package/node_modules/shiki/node_modules/@shikijs/langs/dist/css.d.mts +3 -0
  262. package/node_modules/shiki/node_modules/@shikijs/langs/dist/css.mjs +5 -0
  263. package/node_modules/shiki/node_modules/@shikijs/langs/dist/csv.d.mts +3 -0
  264. package/node_modules/shiki/node_modules/@shikijs/langs/dist/csv.mjs +5 -0
  265. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cts.d.mts +3 -0
  266. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cts.mjs +2 -0
  267. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cue.d.mts +3 -0
  268. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cue.mjs +5 -0
  269. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cypher.d.mts +3 -0
  270. package/node_modules/shiki/node_modules/@shikijs/langs/dist/cypher.mjs +5 -0
  271. package/node_modules/shiki/node_modules/@shikijs/langs/dist/d.d.mts +3 -0
  272. package/node_modules/shiki/node_modules/@shikijs/langs/dist/d.mjs +5 -0
  273. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dart.d.mts +3 -0
  274. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dart.mjs +5 -0
  275. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dax.d.mts +3 -0
  276. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dax.mjs +5 -0
  277. package/node_modules/shiki/node_modules/@shikijs/langs/dist/desktop.d.mts +3 -0
  278. package/node_modules/shiki/node_modules/@shikijs/langs/dist/desktop.mjs +5 -0
  279. package/node_modules/shiki/node_modules/@shikijs/langs/dist/diff.d.mts +3 -0
  280. package/node_modules/shiki/node_modules/@shikijs/langs/dist/diff.mjs +5 -0
  281. package/node_modules/shiki/node_modules/@shikijs/langs/dist/docker.d.mts +3 -0
  282. package/node_modules/shiki/node_modules/@shikijs/langs/dist/docker.mjs +5 -0
  283. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dockerfile.d.mts +3 -0
  284. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dockerfile.mjs +2 -0
  285. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dotenv.d.mts +3 -0
  286. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dotenv.mjs +5 -0
  287. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dream-maker.d.mts +3 -0
  288. package/node_modules/shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs +5 -0
  289. package/node_modules/shiki/node_modules/@shikijs/langs/dist/edge.d.mts +3 -0
  290. package/node_modules/shiki/node_modules/@shikijs/langs/dist/edge.mjs +12 -0
  291. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elisp.d.mts +3 -0
  292. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elisp.mjs +2 -0
  293. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elixir.d.mts +3 -0
  294. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elixir.mjs +8 -0
  295. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elm.d.mts +3 -0
  296. package/node_modules/shiki/node_modules/@shikijs/langs/dist/elm.mjs +8 -0
  297. package/node_modules/shiki/node_modules/@shikijs/langs/dist/emacs-lisp.d.mts +3 -0
  298. package/node_modules/shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs +5 -0
  299. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erb.d.mts +3 -0
  300. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erb.mjs +10 -0
  301. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erl.d.mts +3 -0
  302. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erl.mjs +2 -0
  303. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erlang.d.mts +3 -0
  304. package/node_modules/shiki/node_modules/@shikijs/langs/dist/erlang.mjs +8 -0
  305. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-css.d.mts +3 -0
  306. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs +12 -0
  307. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.d.mts +3 -0
  308. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs +12 -0
  309. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-html.d.mts +3 -0
  310. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs +12 -0
  311. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-sql.d.mts +3 -0
  312. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs +10 -0
  313. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-xml.d.mts +3 -0
  314. package/node_modules/shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs +8 -0
  315. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f.d.mts +3 -0
  316. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f.mjs +2 -0
  317. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f03.d.mts +3 -0
  318. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f03.mjs +2 -0
  319. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f08.d.mts +3 -0
  320. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f08.mjs +2 -0
  321. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f18.d.mts +3 -0
  322. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f18.mjs +2 -0
  323. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f77.d.mts +3 -0
  324. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f77.mjs +2 -0
  325. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f90.d.mts +3 -0
  326. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f90.mjs +2 -0
  327. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f95.d.mts +3 -0
  328. package/node_modules/shiki/node_modules/@shikijs/langs/dist/f95.mjs +2 -0
  329. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fennel.d.mts +3 -0
  330. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fennel.mjs +5 -0
  331. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fish.d.mts +3 -0
  332. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fish.mjs +5 -0
  333. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fluent.d.mts +3 -0
  334. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fluent.mjs +5 -0
  335. package/node_modules/shiki/node_modules/@shikijs/langs/dist/for.d.mts +3 -0
  336. package/node_modules/shiki/node_modules/@shikijs/langs/dist/for.mjs +2 -0
  337. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.d.mts +3 -0
  338. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs +8 -0
  339. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fortran-free-form.d.mts +3 -0
  340. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs +5 -0
  341. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fs.d.mts +3 -0
  342. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fs.mjs +2 -0
  343. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fsharp.d.mts +3 -0
  344. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fsharp.mjs +8 -0
  345. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fsl.d.mts +3 -0
  346. package/node_modules/shiki/node_modules/@shikijs/langs/dist/fsl.mjs +2 -0
  347. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ftl.d.mts +3 -0
  348. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ftl.mjs +2 -0
  349. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gd.d.mts +3 -0
  350. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gd.mjs +2 -0
  351. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdresource.d.mts +3 -0
  352. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdresource.mjs +10 -0
  353. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdscript.d.mts +3 -0
  354. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdscript.mjs +5 -0
  355. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdshader.d.mts +3 -0
  356. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gdshader.mjs +5 -0
  357. package/node_modules/shiki/node_modules/@shikijs/langs/dist/genie.d.mts +3 -0
  358. package/node_modules/shiki/node_modules/@shikijs/langs/dist/genie.mjs +5 -0
  359. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gherkin.d.mts +3 -0
  360. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gherkin.mjs +5 -0
  361. package/node_modules/shiki/node_modules/@shikijs/langs/dist/git-commit.d.mts +3 -0
  362. package/node_modules/shiki/node_modules/@shikijs/langs/dist/git-commit.mjs +8 -0
  363. package/node_modules/shiki/node_modules/@shikijs/langs/dist/git-rebase.d.mts +3 -0
  364. package/node_modules/shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs +8 -0
  365. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gjs.d.mts +3 -0
  366. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gjs.mjs +2 -0
  367. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gleam.d.mts +3 -0
  368. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gleam.mjs +5 -0
  369. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glimmer-js.d.mts +3 -0
  370. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs +14 -0
  371. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glimmer-ts.d.mts +3 -0
  372. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs +14 -0
  373. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glsl.d.mts +3 -0
  374. package/node_modules/shiki/node_modules/@shikijs/langs/dist/glsl.mjs +8 -0
  375. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gn.d.mts +3 -0
  376. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gn.mjs +5 -0
  377. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gnuplot.d.mts +3 -0
  378. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs +5 -0
  379. package/node_modules/shiki/node_modules/@shikijs/langs/dist/go.d.mts +3 -0
  380. package/node_modules/shiki/node_modules/@shikijs/langs/dist/go.mjs +5 -0
  381. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gql.d.mts +3 -0
  382. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gql.mjs +2 -0
  383. package/node_modules/shiki/node_modules/@shikijs/langs/dist/graphql.d.mts +3 -0
  384. package/node_modules/shiki/node_modules/@shikijs/langs/dist/graphql.mjs +14 -0
  385. package/node_modules/shiki/node_modules/@shikijs/langs/dist/groovy.d.mts +3 -0
  386. package/node_modules/shiki/node_modules/@shikijs/langs/dist/groovy.mjs +5 -0
  387. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gts.d.mts +3 -0
  388. package/node_modules/shiki/node_modules/@shikijs/langs/dist/gts.mjs +2 -0
  389. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.d.mts +3 -0
  390. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.mjs +10 -0
  391. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haml.d.mts +3 -0
  392. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haml.mjs +10 -0
  393. package/node_modules/shiki/node_modules/@shikijs/langs/dist/handlebars.d.mts +3 -0
  394. package/node_modules/shiki/node_modules/@shikijs/langs/dist/handlebars.mjs +14 -0
  395. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haskell.d.mts +3 -0
  396. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haskell.mjs +5 -0
  397. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haxe.d.mts +3 -0
  398. package/node_modules/shiki/node_modules/@shikijs/langs/dist/haxe.mjs +5 -0
  399. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hbs.d.mts +3 -0
  400. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hbs.mjs +2 -0
  401. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hcl.d.mts +3 -0
  402. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hcl.mjs +5 -0
  403. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hjson.d.mts +3 -0
  404. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hjson.mjs +5 -0
  405. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hlsl.d.mts +3 -0
  406. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hlsl.mjs +5 -0
  407. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hs.d.mts +3 -0
  408. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hs.mjs +2 -0
  409. package/node_modules/shiki/node_modules/@shikijs/langs/dist/html-derivative.d.mts +3 -0
  410. package/node_modules/shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs +8 -0
  411. package/node_modules/shiki/node_modules/@shikijs/langs/dist/html.d.mts +3 -0
  412. package/node_modules/shiki/node_modules/@shikijs/langs/dist/html.mjs +10 -0
  413. package/node_modules/shiki/node_modules/@shikijs/langs/dist/http.d.mts +3 -0
  414. package/node_modules/shiki/node_modules/@shikijs/langs/dist/http.mjs +14 -0
  415. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hurl.d.mts +3 -0
  416. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hurl.mjs +12 -0
  417. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hxml.d.mts +3 -0
  418. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hxml.mjs +8 -0
  419. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hy.d.mts +3 -0
  420. package/node_modules/shiki/node_modules/@shikijs/langs/dist/hy.mjs +5 -0
  421. package/node_modules/shiki/node_modules/@shikijs/langs/dist/imba.d.mts +3 -0
  422. package/node_modules/shiki/node_modules/@shikijs/langs/dist/imba.mjs +5 -0
  423. package/node_modules/shiki/node_modules/@shikijs/langs/dist/index.d.mts +3 -0
  424. package/node_modules/shiki/node_modules/@shikijs/langs/dist/index.mjs +353 -0
  425. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ini.d.mts +3 -0
  426. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ini.mjs +5 -0
  427. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jade.d.mts +3 -0
  428. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jade.mjs +2 -0
  429. package/node_modules/shiki/node_modules/@shikijs/langs/dist/java.d.mts +3 -0
  430. package/node_modules/shiki/node_modules/@shikijs/langs/dist/java.mjs +5 -0
  431. package/node_modules/shiki/node_modules/@shikijs/langs/dist/javascript.d.mts +3 -0
  432. package/node_modules/shiki/node_modules/@shikijs/langs/dist/javascript.mjs +5 -0
  433. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jinja-html.d.mts +3 -0
  434. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs +8 -0
  435. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jinja.d.mts +3 -0
  436. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jinja.mjs +8 -0
  437. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jison.d.mts +3 -0
  438. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jison.mjs +8 -0
  439. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jl.d.mts +3 -0
  440. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jl.mjs +2 -0
  441. package/node_modules/shiki/node_modules/@shikijs/langs/dist/js.d.mts +3 -0
  442. package/node_modules/shiki/node_modules/@shikijs/langs/dist/js.mjs +2 -0
  443. package/node_modules/shiki/node_modules/@shikijs/langs/dist/json.d.mts +3 -0
  444. package/node_modules/shiki/node_modules/@shikijs/langs/dist/json.mjs +5 -0
  445. package/node_modules/shiki/node_modules/@shikijs/langs/dist/json5.d.mts +3 -0
  446. package/node_modules/shiki/node_modules/@shikijs/langs/dist/json5.mjs +5 -0
  447. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonc.d.mts +3 -0
  448. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonc.mjs +5 -0
  449. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonl.d.mts +3 -0
  450. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonl.mjs +5 -0
  451. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonnet.d.mts +3 -0
  452. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs +5 -0
  453. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jssm.d.mts +3 -0
  454. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jssm.mjs +5 -0
  455. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsx.d.mts +3 -0
  456. package/node_modules/shiki/node_modules/@shikijs/langs/dist/jsx.mjs +5 -0
  457. package/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.d.mts +3 -0
  458. package/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.mjs +16 -0
  459. package/node_modules/shiki/node_modules/@shikijs/langs/dist/just.d.mts +3 -0
  460. package/node_modules/shiki/node_modules/@shikijs/langs/dist/just.mjs +18 -0
  461. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kdl.d.mts +3 -0
  462. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kdl.mjs +5 -0
  463. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kotlin.d.mts +3 -0
  464. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kotlin.mjs +5 -0
  465. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kql.d.mts +3 -0
  466. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kql.mjs +2 -0
  467. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kt.d.mts +3 -0
  468. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kt.mjs +2 -0
  469. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kts.d.mts +3 -0
  470. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kts.mjs +2 -0
  471. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kusto.d.mts +3 -0
  472. package/node_modules/shiki/node_modules/@shikijs/langs/dist/kusto.mjs +5 -0
  473. package/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.d.mts +3 -0
  474. package/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.mjs +8 -0
  475. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lean.d.mts +3 -0
  476. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lean.mjs +5 -0
  477. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lean4.d.mts +3 -0
  478. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lean4.mjs +2 -0
  479. package/node_modules/shiki/node_modules/@shikijs/langs/dist/less.d.mts +3 -0
  480. package/node_modules/shiki/node_modules/@shikijs/langs/dist/less.mjs +5 -0
  481. package/node_modules/shiki/node_modules/@shikijs/langs/dist/liquid.d.mts +3 -0
  482. package/node_modules/shiki/node_modules/@shikijs/langs/dist/liquid.mjs +14 -0
  483. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lisp.d.mts +3 -0
  484. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lisp.mjs +2 -0
  485. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lit.d.mts +3 -0
  486. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lit.mjs +2 -0
  487. package/node_modules/shiki/node_modules/@shikijs/langs/dist/llvm.d.mts +3 -0
  488. package/node_modules/shiki/node_modules/@shikijs/langs/dist/llvm.mjs +5 -0
  489. package/node_modules/shiki/node_modules/@shikijs/langs/dist/log.d.mts +3 -0
  490. package/node_modules/shiki/node_modules/@shikijs/langs/dist/log.mjs +5 -0
  491. package/node_modules/shiki/node_modules/@shikijs/langs/dist/logo.d.mts +3 -0
  492. package/node_modules/shiki/node_modules/@shikijs/langs/dist/logo.mjs +5 -0
  493. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lua.d.mts +3 -0
  494. package/node_modules/shiki/node_modules/@shikijs/langs/dist/lua.mjs +8 -0
  495. package/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.d.mts +3 -0
  496. package/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.mjs +5 -0
  497. package/node_modules/shiki/node_modules/@shikijs/langs/dist/make.d.mts +3 -0
  498. package/node_modules/shiki/node_modules/@shikijs/langs/dist/make.mjs +5 -0
  499. package/node_modules/shiki/node_modules/@shikijs/langs/dist/makefile.d.mts +3 -0
  500. package/node_modules/shiki/node_modules/@shikijs/langs/dist/makefile.mjs +2 -0
  501. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown-nix.d.mts +3 -0
  502. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown-nix.mjs +5 -0
  503. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown-vue.d.mts +3 -0
  504. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs +5 -0
  505. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown.d.mts +3 -0
  506. package/node_modules/shiki/node_modules/@shikijs/langs/dist/markdown.mjs +5 -0
  507. package/node_modules/shiki/node_modules/@shikijs/langs/dist/marko.d.mts +3 -0
  508. package/node_modules/shiki/node_modules/@shikijs/langs/dist/marko.mjs +14 -0
  509. package/node_modules/shiki/node_modules/@shikijs/langs/dist/matlab.d.mts +3 -0
  510. package/node_modules/shiki/node_modules/@shikijs/langs/dist/matlab.mjs +5 -0
  511. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mbt.d.mts +3 -0
  512. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mbt.mjs +2 -0
  513. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mbti.d.mts +3 -0
  514. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mbti.mjs +2 -0
  515. package/node_modules/shiki/node_modules/@shikijs/langs/dist/md.d.mts +3 -0
  516. package/node_modules/shiki/node_modules/@shikijs/langs/dist/md.mjs +2 -0
  517. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mdc.d.mts +3 -0
  518. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mdc.mjs +12 -0
  519. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mdx.d.mts +3 -0
  520. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mdx.mjs +5 -0
  521. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mediawiki.d.mts +3 -0
  522. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mediawiki.mjs +2 -0
  523. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mermaid.d.mts +3 -0
  524. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mermaid.mjs +5 -0
  525. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mips.d.mts +3 -0
  526. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mips.mjs +2 -0
  527. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mipsasm.d.mts +3 -0
  528. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs +5 -0
  529. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mjs.d.mts +3 -0
  530. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mjs.mjs +2 -0
  531. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mmd.d.mts +3 -0
  532. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mmd.mjs +2 -0
  533. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mojo.d.mts +3 -0
  534. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mojo.mjs +5 -0
  535. package/node_modules/shiki/node_modules/@shikijs/langs/dist/moonbit.d.mts +3 -0
  536. package/node_modules/shiki/node_modules/@shikijs/langs/dist/moonbit.mjs +5 -0
  537. package/node_modules/shiki/node_modules/@shikijs/langs/dist/move.d.mts +3 -0
  538. package/node_modules/shiki/node_modules/@shikijs/langs/dist/move.mjs +5 -0
  539. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mts.d.mts +3 -0
  540. package/node_modules/shiki/node_modules/@shikijs/langs/dist/mts.mjs +2 -0
  541. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nar.d.mts +3 -0
  542. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nar.mjs +2 -0
  543. package/node_modules/shiki/node_modules/@shikijs/langs/dist/narrat.d.mts +3 -0
  544. package/node_modules/shiki/node_modules/@shikijs/langs/dist/narrat.mjs +5 -0
  545. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nextflow-groovy.d.mts +3 -0
  546. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nextflow-groovy.mjs +5 -0
  547. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nextflow.d.mts +3 -0
  548. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nextflow.mjs +8 -0
  549. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nf.d.mts +3 -0
  550. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nf.mjs +2 -0
  551. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nginx.d.mts +3 -0
  552. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nginx.mjs +8 -0
  553. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nim.d.mts +3 -0
  554. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nim.mjs +20 -0
  555. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nix.d.mts +3 -0
  556. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nix.mjs +8 -0
  557. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nu.d.mts +3 -0
  558. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nu.mjs +2 -0
  559. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nushell.d.mts +3 -0
  560. package/node_modules/shiki/node_modules/@shikijs/langs/dist/nushell.mjs +5 -0
  561. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objc.d.mts +3 -0
  562. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objc.mjs +2 -0
  563. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objective-c.d.mts +3 -0
  564. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objective-c.mjs +5 -0
  565. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objective-cpp.d.mts +3 -0
  566. package/node_modules/shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs +5 -0
  567. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ocaml.d.mts +3 -0
  568. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ocaml.mjs +5 -0
  569. package/node_modules/shiki/node_modules/@shikijs/langs/dist/odin.d.mts +3 -0
  570. package/node_modules/shiki/node_modules/@shikijs/langs/dist/odin.mjs +5 -0
  571. package/node_modules/shiki/node_modules/@shikijs/langs/dist/openscad.d.mts +3 -0
  572. package/node_modules/shiki/node_modules/@shikijs/langs/dist/openscad.mjs +5 -0
  573. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pascal.d.mts +3 -0
  574. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pascal.mjs +5 -0
  575. package/node_modules/shiki/node_modules/@shikijs/langs/dist/perl.d.mts +3 -0
  576. package/node_modules/shiki/node_modules/@shikijs/langs/dist/perl.mjs +16 -0
  577. package/node_modules/shiki/node_modules/@shikijs/langs/dist/perl6.d.mts +3 -0
  578. package/node_modules/shiki/node_modules/@shikijs/langs/dist/perl6.mjs +2 -0
  579. package/node_modules/shiki/node_modules/@shikijs/langs/dist/php.d.mts +3 -0
  580. package/node_modules/shiki/node_modules/@shikijs/langs/dist/php.mjs +18 -0
  581. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pkl.d.mts +3 -0
  582. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pkl.mjs +5 -0
  583. package/node_modules/shiki/node_modules/@shikijs/langs/dist/plsql.d.mts +3 -0
  584. package/node_modules/shiki/node_modules/@shikijs/langs/dist/plsql.mjs +5 -0
  585. package/node_modules/shiki/node_modules/@shikijs/langs/dist/po.d.mts +3 -0
  586. package/node_modules/shiki/node_modules/@shikijs/langs/dist/po.mjs +5 -0
  587. package/node_modules/shiki/node_modules/@shikijs/langs/dist/polar.d.mts +3 -0
  588. package/node_modules/shiki/node_modules/@shikijs/langs/dist/polar.mjs +5 -0
  589. package/node_modules/shiki/node_modules/@shikijs/langs/dist/postcss.d.mts +3 -0
  590. package/node_modules/shiki/node_modules/@shikijs/langs/dist/postcss.mjs +5 -0
  591. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pot.d.mts +3 -0
  592. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pot.mjs +2 -0
  593. package/node_modules/shiki/node_modules/@shikijs/langs/dist/potx.d.mts +3 -0
  594. package/node_modules/shiki/node_modules/@shikijs/langs/dist/potx.mjs +2 -0
  595. package/node_modules/shiki/node_modules/@shikijs/langs/dist/powerquery.d.mts +3 -0
  596. package/node_modules/shiki/node_modules/@shikijs/langs/dist/powerquery.mjs +5 -0
  597. package/node_modules/shiki/node_modules/@shikijs/langs/dist/powershell.d.mts +3 -0
  598. package/node_modules/shiki/node_modules/@shikijs/langs/dist/powershell.mjs +5 -0
  599. package/node_modules/shiki/node_modules/@shikijs/langs/dist/prisma.d.mts +3 -0
  600. package/node_modules/shiki/node_modules/@shikijs/langs/dist/prisma.mjs +5 -0
  601. package/node_modules/shiki/node_modules/@shikijs/langs/dist/prolog.d.mts +3 -0
  602. package/node_modules/shiki/node_modules/@shikijs/langs/dist/prolog.mjs +5 -0
  603. package/node_modules/shiki/node_modules/@shikijs/langs/dist/properties.d.mts +3 -0
  604. package/node_modules/shiki/node_modules/@shikijs/langs/dist/properties.mjs +2 -0
  605. package/node_modules/shiki/node_modules/@shikijs/langs/dist/proto.d.mts +3 -0
  606. package/node_modules/shiki/node_modules/@shikijs/langs/dist/proto.mjs +5 -0
  607. package/node_modules/shiki/node_modules/@shikijs/langs/dist/protobuf.d.mts +3 -0
  608. package/node_modules/shiki/node_modules/@shikijs/langs/dist/protobuf.mjs +2 -0
  609. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ps.d.mts +3 -0
  610. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ps.mjs +2 -0
  611. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ps1.d.mts +3 -0
  612. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ps1.mjs +2 -0
  613. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pug.d.mts +3 -0
  614. package/node_modules/shiki/node_modules/@shikijs/langs/dist/pug.mjs +12 -0
  615. package/node_modules/shiki/node_modules/@shikijs/langs/dist/puppet.d.mts +3 -0
  616. package/node_modules/shiki/node_modules/@shikijs/langs/dist/puppet.mjs +5 -0
  617. package/node_modules/shiki/node_modules/@shikijs/langs/dist/purescript.d.mts +3 -0
  618. package/node_modules/shiki/node_modules/@shikijs/langs/dist/purescript.mjs +5 -0
  619. package/node_modules/shiki/node_modules/@shikijs/langs/dist/py.d.mts +3 -0
  620. package/node_modules/shiki/node_modules/@shikijs/langs/dist/py.mjs +2 -0
  621. package/node_modules/shiki/node_modules/@shikijs/langs/dist/python.d.mts +3 -0
  622. package/node_modules/shiki/node_modules/@shikijs/langs/dist/python.mjs +5 -0
  623. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ql.d.mts +3 -0
  624. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ql.mjs +2 -0
  625. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qml.d.mts +3 -0
  626. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qml.mjs +8 -0
  627. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qmldir.d.mts +3 -0
  628. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qmldir.mjs +5 -0
  629. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qss.d.mts +3 -0
  630. package/node_modules/shiki/node_modules/@shikijs/langs/dist/qss.mjs +5 -0
  631. package/node_modules/shiki/node_modules/@shikijs/langs/dist/r.d.mts +3 -0
  632. package/node_modules/shiki/node_modules/@shikijs/langs/dist/r.mjs +5 -0
  633. package/node_modules/shiki/node_modules/@shikijs/langs/dist/racket.d.mts +3 -0
  634. package/node_modules/shiki/node_modules/@shikijs/langs/dist/racket.mjs +5 -0
  635. package/node_modules/shiki/node_modules/@shikijs/langs/dist/raku.d.mts +3 -0
  636. package/node_modules/shiki/node_modules/@shikijs/langs/dist/raku.mjs +5 -0
  637. package/node_modules/shiki/node_modules/@shikijs/langs/dist/razor.d.mts +3 -0
  638. package/node_modules/shiki/node_modules/@shikijs/langs/dist/razor.mjs +10 -0
  639. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rb.d.mts +3 -0
  640. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rb.mjs +2 -0
  641. package/node_modules/shiki/node_modules/@shikijs/langs/dist/reg.d.mts +3 -0
  642. package/node_modules/shiki/node_modules/@shikijs/langs/dist/reg.mjs +5 -0
  643. package/node_modules/shiki/node_modules/@shikijs/langs/dist/regex.d.mts +3 -0
  644. package/node_modules/shiki/node_modules/@shikijs/langs/dist/regex.mjs +2 -0
  645. package/node_modules/shiki/node_modules/@shikijs/langs/dist/regexp.d.mts +3 -0
  646. package/node_modules/shiki/node_modules/@shikijs/langs/dist/regexp.mjs +5 -0
  647. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rel.d.mts +3 -0
  648. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rel.mjs +5 -0
  649. package/node_modules/shiki/node_modules/@shikijs/langs/dist/riscv.d.mts +3 -0
  650. package/node_modules/shiki/node_modules/@shikijs/langs/dist/riscv.mjs +5 -0
  651. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ron.d.mts +3 -0
  652. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ron.mjs +5 -0
  653. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rosmsg.d.mts +3 -0
  654. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rosmsg.mjs +5 -0
  655. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rs.d.mts +3 -0
  656. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rs.mjs +2 -0
  657. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rst.d.mts +3 -0
  658. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rst.mjs +22 -0
  659. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ruby.d.mts +3 -0
  660. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ruby.mjs +30 -0
  661. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rust.d.mts +3 -0
  662. package/node_modules/shiki/node_modules/@shikijs/langs/dist/rust.mjs +5 -0
  663. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sas.d.mts +3 -0
  664. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sas.mjs +8 -0
  665. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sass.d.mts +3 -0
  666. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sass.mjs +5 -0
  667. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scad.d.mts +3 -0
  668. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scad.mjs +2 -0
  669. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scala.d.mts +3 -0
  670. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scala.mjs +5 -0
  671. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scheme.d.mts +3 -0
  672. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scheme.mjs +5 -0
  673. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scss.d.mts +3 -0
  674. package/node_modules/shiki/node_modules/@shikijs/langs/dist/scss.mjs +8 -0
  675. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sdbl.d.mts +3 -0
  676. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sdbl.mjs +5 -0
  677. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sh.d.mts +3 -0
  678. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sh.mjs +2 -0
  679. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shader.d.mts +3 -0
  680. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shader.mjs +2 -0
  681. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shaderlab.d.mts +3 -0
  682. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs +8 -0
  683. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shell.d.mts +3 -0
  684. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shell.mjs +2 -0
  685. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shellscript.d.mts +3 -0
  686. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shellscript.mjs +5 -0
  687. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shellsession.d.mts +3 -0
  688. package/node_modules/shiki/node_modules/@shikijs/langs/dist/shellsession.mjs +8 -0
  689. package/node_modules/shiki/node_modules/@shikijs/langs/dist/smalltalk.d.mts +3 -0
  690. package/node_modules/shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs +5 -0
  691. package/node_modules/shiki/node_modules/@shikijs/langs/dist/solidity.d.mts +3 -0
  692. package/node_modules/shiki/node_modules/@shikijs/langs/dist/solidity.mjs +5 -0
  693. package/node_modules/shiki/node_modules/@shikijs/langs/dist/soy.d.mts +3 -0
  694. package/node_modules/shiki/node_modules/@shikijs/langs/dist/soy.mjs +8 -0
  695. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sparql.d.mts +3 -0
  696. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sparql.mjs +8 -0
  697. package/node_modules/shiki/node_modules/@shikijs/langs/dist/spl.d.mts +3 -0
  698. package/node_modules/shiki/node_modules/@shikijs/langs/dist/spl.mjs +2 -0
  699. package/node_modules/shiki/node_modules/@shikijs/langs/dist/splunk.d.mts +3 -0
  700. package/node_modules/shiki/node_modules/@shikijs/langs/dist/splunk.mjs +5 -0
  701. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.d.mts +3 -0
  702. package/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.mjs +5 -0
  703. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ssh-config.d.mts +3 -0
  704. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs +5 -0
  705. package/node_modules/shiki/node_modules/@shikijs/langs/dist/stata.d.mts +3 -0
  706. package/node_modules/shiki/node_modules/@shikijs/langs/dist/stata.mjs +8 -0
  707. package/node_modules/shiki/node_modules/@shikijs/langs/dist/styl.d.mts +3 -0
  708. package/node_modules/shiki/node_modules/@shikijs/langs/dist/styl.mjs +2 -0
  709. package/node_modules/shiki/node_modules/@shikijs/langs/dist/stylus.d.mts +3 -0
  710. package/node_modules/shiki/node_modules/@shikijs/langs/dist/stylus.mjs +5 -0
  711. package/node_modules/shiki/node_modules/@shikijs/langs/dist/surql.d.mts +3 -0
  712. package/node_modules/shiki/node_modules/@shikijs/langs/dist/surql.mjs +2 -0
  713. package/node_modules/shiki/node_modules/@shikijs/langs/dist/surrealql.d.mts +3 -0
  714. package/node_modules/shiki/node_modules/@shikijs/langs/dist/surrealql.mjs +8 -0
  715. package/node_modules/shiki/node_modules/@shikijs/langs/dist/svelte.d.mts +3 -0
  716. package/node_modules/shiki/node_modules/@shikijs/langs/dist/svelte.mjs +14 -0
  717. package/node_modules/shiki/node_modules/@shikijs/langs/dist/swift.d.mts +3 -0
  718. package/node_modules/shiki/node_modules/@shikijs/langs/dist/swift.mjs +5 -0
  719. package/node_modules/shiki/node_modules/@shikijs/langs/dist/system-verilog.d.mts +3 -0
  720. package/node_modules/shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs +5 -0
  721. package/node_modules/shiki/node_modules/@shikijs/langs/dist/systemd.d.mts +3 -0
  722. package/node_modules/shiki/node_modules/@shikijs/langs/dist/systemd.mjs +5 -0
  723. package/node_modules/shiki/node_modules/@shikijs/langs/dist/talon.d.mts +3 -0
  724. package/node_modules/shiki/node_modules/@shikijs/langs/dist/talon.mjs +2 -0
  725. package/node_modules/shiki/node_modules/@shikijs/langs/dist/talonscript.d.mts +3 -0
  726. package/node_modules/shiki/node_modules/@shikijs/langs/dist/talonscript.mjs +5 -0
  727. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tasl.d.mts +3 -0
  728. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tasl.mjs +5 -0
  729. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tcl.d.mts +3 -0
  730. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tcl.mjs +5 -0
  731. package/node_modules/shiki/node_modules/@shikijs/langs/dist/templ.d.mts +3 -0
  732. package/node_modules/shiki/node_modules/@shikijs/langs/dist/templ.mjs +12 -0
  733. package/node_modules/shiki/node_modules/@shikijs/langs/dist/terraform.d.mts +3 -0
  734. package/node_modules/shiki/node_modules/@shikijs/langs/dist/terraform.mjs +5 -0
  735. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tex.d.mts +3 -0
  736. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tex.mjs +8 -0
  737. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tf.d.mts +3 -0
  738. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tf.mjs +2 -0
  739. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tfvars.d.mts +3 -0
  740. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tfvars.mjs +2 -0
  741. package/node_modules/shiki/node_modules/@shikijs/langs/dist/toml.d.mts +3 -0
  742. package/node_modules/shiki/node_modules/@shikijs/langs/dist/toml.mjs +5 -0
  743. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tres.d.mts +3 -0
  744. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tres.mjs +2 -0
  745. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ts-tags.d.mts +3 -0
  746. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs +18 -0
  747. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ts.d.mts +3 -0
  748. package/node_modules/shiki/node_modules/@shikijs/langs/dist/ts.mjs +2 -0
  749. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tscn.d.mts +3 -0
  750. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tscn.mjs +2 -0
  751. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsp.d.mts +3 -0
  752. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsp.mjs +2 -0
  753. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsv.d.mts +3 -0
  754. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsv.mjs +5 -0
  755. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsx.d.mts +3 -0
  756. package/node_modules/shiki/node_modules/@shikijs/langs/dist/tsx.mjs +5 -0
  757. package/node_modules/shiki/node_modules/@shikijs/langs/dist/turtle.d.mts +3 -0
  758. package/node_modules/shiki/node_modules/@shikijs/langs/dist/turtle.mjs +5 -0
  759. package/node_modules/shiki/node_modules/@shikijs/langs/dist/twig.d.mts +3 -0
  760. package/node_modules/shiki/node_modules/@shikijs/langs/dist/twig.mjs +18 -0
  761. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typ.d.mts +3 -0
  762. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typ.mjs +2 -0
  763. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typescript.d.mts +3 -0
  764. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typescript.mjs +5 -0
  765. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typespec.d.mts +3 -0
  766. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typespec.mjs +5 -0
  767. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typst.d.mts +3 -0
  768. package/node_modules/shiki/node_modules/@shikijs/langs/dist/typst.mjs +5 -0
  769. package/node_modules/shiki/node_modules/@shikijs/langs/dist/v.d.mts +3 -0
  770. package/node_modules/shiki/node_modules/@shikijs/langs/dist/v.mjs +5 -0
  771. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vala.d.mts +3 -0
  772. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vala.mjs +5 -0
  773. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vb.d.mts +3 -0
  774. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vb.mjs +5 -0
  775. package/node_modules/shiki/node_modules/@shikijs/langs/dist/verilog.d.mts +3 -0
  776. package/node_modules/shiki/node_modules/@shikijs/langs/dist/verilog.mjs +5 -0
  777. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vhdl.d.mts +3 -0
  778. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vhdl.mjs +5 -0
  779. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vim.d.mts +3 -0
  780. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vim.mjs +2 -0
  781. package/node_modules/shiki/node_modules/@shikijs/langs/dist/viml.d.mts +3 -0
  782. package/node_modules/shiki/node_modules/@shikijs/langs/dist/viml.mjs +5 -0
  783. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vimscript.d.mts +3 -0
  784. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vimscript.mjs +2 -0
  785. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-directives.d.mts +3 -0
  786. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs +5 -0
  787. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-html.d.mts +3 -0
  788. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-html.mjs +8 -0
  789. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-interpolations.d.mts +3 -0
  790. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs +5 -0
  791. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.d.mts +3 -0
  792. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs +8 -0
  793. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-vine.d.mts +3 -0
  794. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue-vine.mjs +18 -0
  795. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue.d.mts +3 -0
  796. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vue.mjs +26 -0
  797. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vy.d.mts +3 -0
  798. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vy.mjs +2 -0
  799. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vyper.d.mts +3 -0
  800. package/node_modules/shiki/node_modules/@shikijs/langs/dist/vyper.mjs +5 -0
  801. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wasm.d.mts +3 -0
  802. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wasm.mjs +5 -0
  803. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wenyan.d.mts +3 -0
  804. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wenyan.mjs +5 -0
  805. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wgsl.d.mts +3 -0
  806. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wgsl.mjs +5 -0
  807. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wiki.d.mts +3 -0
  808. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wiki.mjs +2 -0
  809. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wikitext.d.mts +3 -0
  810. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wikitext.mjs +5 -0
  811. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wit.d.mts +3 -0
  812. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wit.mjs +5 -0
  813. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wl.d.mts +3 -0
  814. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wl.mjs +2 -0
  815. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wolfram.d.mts +3 -0
  816. package/node_modules/shiki/node_modules/@shikijs/langs/dist/wolfram.mjs +5 -0
  817. package/node_modules/shiki/node_modules/@shikijs/langs/dist/xml.d.mts +3 -0
  818. package/node_modules/shiki/node_modules/@shikijs/langs/dist/xml.mjs +8 -0
  819. package/node_modules/shiki/node_modules/@shikijs/langs/dist/xsl.d.mts +3 -0
  820. package/node_modules/shiki/node_modules/@shikijs/langs/dist/xsl.mjs +8 -0
  821. package/node_modules/shiki/node_modules/@shikijs/langs/dist/yaml.d.mts +3 -0
  822. package/node_modules/shiki/node_modules/@shikijs/langs/dist/yaml.mjs +5 -0
  823. package/node_modules/shiki/node_modules/@shikijs/langs/dist/yml.d.mts +3 -0
  824. package/node_modules/shiki/node_modules/@shikijs/langs/dist/yml.mjs +2 -0
  825. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zenscript.d.mts +3 -0
  826. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zenscript.mjs +5 -0
  827. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zig.d.mts +3 -0
  828. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zig.mjs +5 -0
  829. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zsh.d.mts +3 -0
  830. package/node_modules/shiki/node_modules/@shikijs/langs/dist/zsh.mjs +2 -0
  831. package/node_modules/shiki/node_modules/@shikijs/langs/package.json +384 -0
  832. package/node_modules/shiki/node_modules/@shikijs/types/LICENSE +22 -0
  833. package/node_modules/shiki/node_modules/@shikijs/types/README.md +7 -0
  834. package/node_modules/shiki/node_modules/@shikijs/types/dist/index.d.mts +885 -0
  835. package/node_modules/shiki/node_modules/@shikijs/types/dist/index.mjs +8 -0
  836. package/node_modules/shiki/node_modules/@shikijs/types/package.json +36 -0
  837. package/npm-shrinkwrap.json +90 -14
  838. package/package.json +10 -8
@@ -0,0 +1,5 @@
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Fortran (Free Form)\",\"fileTypes\":[\"f90\",\"F90\",\"f95\",\"F95\",\"f03\",\"F03\",\"f08\",\"F08\",\"f18\",\"F18\",\"fpp\",\"FPP\",\".pf\",\".PF\"],\"firstLineMatch\":\"(?i)-\\\\*- mode: fortran free -\\\\*-\",\"injections\":{\"source.fortran.free - ( string | comment | meta.preprocessor )\":{\"patterns\":[{\"include\":\"#line-continuation-operator\"},{\"include\":\"#preprocessor\"}]},\"string.quoted.double.fortran\":{\"patterns\":[{\"include\":\"#string-line-continuation-operator\"}]},\"string.quoted.single.fortran\":{\"patterns\":[{\"include\":\"#string-line-continuation-operator\"}]}},\"name\":\"fortran-free-form\",\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#include-statement\"},{\"include\":\"#import-statement\"},{\"include\":\"#block-data-definition\"},{\"include\":\"#function-definition\"},{\"include\":\"#module-definition\"},{\"include\":\"#program-definition\"},{\"include\":\"#submodule-definition\"},{\"include\":\"#subroutine-definition\"},{\"include\":\"#procedure-definition\"},{\"include\":\"#derived-type-definition\"},{\"include\":\"#enum-block-construct\"},{\"include\":\"#interface-block-constructs\"},{\"include\":\"#procedure-specification-statement\"},{\"include\":\"#type-specification-statements\"},{\"include\":\"#specification-statements\"},{\"include\":\"#control-constructs\"},{\"include\":\"#control-statements\"},{\"include\":\"#execution-statements\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}],\"repository\":{\"IO-item-list\":{\"begin\":\"(?i)(?=\\\\s*[\\\"'0-9a-z])\",\"contentName\":\"meta.name-list.fortran\",\"end\":\"(?=[\\\\n!);])\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#brackets\"},{\"include\":\"#assignment-keyword\"},{\"include\":\"#operator-keyword\"},{\"include\":\"#variable\"}]},\"IO-keywords\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.generic-spec.read.fortran\"},\"2\":{\"name\":\"keyword.control.generic-spec.write.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.generic-spec.formatted.fortran\"},\"2\":{\"name\":\"keyword.control.generic-spec.unformatted.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(?:(formatted)|(unformatted))\\\\b\"},{\"include\":\"#invalid-word\"}]},\"IO-statements\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(format)(?=\\\\s*[!\\\\&(])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.format.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.IO.fortran\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#line-continuation-operator\"},{\"include\":\"#format-parentheses\"}]},{\"begin\":\"(?i)\\\\b(?:(backspace)|(close)|(endfile)|(inquire)|(open)|(read)|(rewind)|(write))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.backspace.fortran\"},\"2\":{\"name\":\"keyword.control.close.fortran\"},\"3\":{\"name\":\"keyword.control.endfile.fortran\"},\"4\":{\"name\":\"keyword.control.inquire.fortran\"},\"5\":{\"name\":\"keyword.control.open.fortran\"},\"6\":{\"name\":\"keyword.control.read.fortran\"},\"7\":{\"name\":\"keyword.control.rewind.fortran\"},\"8\":{\"name\":\"keyword.control.write.fortran\"},\"9\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.IO.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"},{\"include\":\"#IO-item-list\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.backspace.fortran\"},\"2\":{\"name\":\"keyword.control.endfile.fortran\"},\"3\":{\"name\":\"keyword.control.format.fortran\"},\"4\":{\"name\":\"keyword.control.print.fortran\"},\"5\":{\"name\":\"keyword.control.read.fortran\"},\"6\":{\"name\":\"keyword.control.rewind.fortran\"}},\"match\":\"(?i)\\\\b(?:(backspace)|(endfile)|(format)|(print)|(read)|(rewind))\\\\b\"},{\"begin\":\"(?i)\\\\b(?:(flush)|(wait))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flush.fortran\"},\"2\":{\"name\":\"keyword.control.wait.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.flush.fortran\"}},\"match\":\"(?i)\\\\b(flush)\\\\b\"}]},\"abstract-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.fortran.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(abstract)\\\\b\"},\"abstract-interface-block-construct\":{\"begin\":\"(?i)\\\\b(abstract)\\\\s+(interface)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.attribute.fortran.modern\"},\"2\":{\"name\":\"keyword.control.interface.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran.modern\"}},\"name\":\"meta.interface.abstract.fortran\",\"patterns\":[{\"include\":\"$base\"}]},\"access-attribute\":{\"patterns\":[{\"include\":\"#private-attribute\"},{\"include\":\"#public-attribute\"}]},\"allocatable-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.allocatable.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(allocatable)\\\\b\"},\"allocate-statement\":{\"begin\":\"(?i)\\\\b(allocate)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.allocate.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.allocate.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"arithmetic-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.subtraction.fortran\"},\"2\":{\"name\":\"keyword.operator.addition.fortran\"},\"3\":{\"name\":\"keyword.operator.division.fortran\"},\"4\":{\"name\":\"keyword.operator.power.fortran\"},\"5\":{\"name\":\"keyword.operator.multiplication.fortran\"}},\"match\":\"(-)|(\\\\+)|/(?![/=\\\\\\\\])|(\\\\*\\\\*)|(\\\\*)\"},\"array-constructor\":{\"begin\":\"(?<!\\\\n)(?=\\\\s*(\\\\[|\\\\(/))\",\"end\":\"(?<!\\\\G)\",\"name\":\"meta.contructor.array\",\"patterns\":[{\"include\":\"#brackets\"},{\"begin\":\"\\\\s*(\\\\(/)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.bracket.left.fortran\"}},\"end\":\"(/\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.bracket.left.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}]}]},\"assign-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(assign)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.assign.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.assign.fortran\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.to.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(to)\\\\b\"},{\"include\":\"$base\"}]}]},\"assignment-keyword\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.generic-spec.assignment.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#assignment-operator\"},{\"include\":\"#invalid-word\"}]},\"assignment-operator\":{\"match\":\"(?<![/<=>])(=)(?![=>])\",\"name\":\"keyword.operator.assignment.fortran\"},\"associate-construct\":{\"begin\":\"(?i)\\\\b(associate)\\\\b(?=\\\\s*\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.associate.fortran\"}},\"contentName\":\"meta.block.associate.fortran\",\"end\":\"(?i)\\\\b(end\\\\s*associate)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endassociate.fortran\"}},\"patterns\":[{\"include\":\"$base\"}]},\"asynchronous-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.asynchronous.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(asynchronous)\\\\b\"},\"attribute-specification-statement\":{\"begin\":\"(?i)(?=\\\\b(?:allocatable|asynchronous|contiguous|external|intrinsic|optional|parameter|pointer|private|protected|public|save|target|value|volatile)\\\\b|(bind|dimension|intent)\\\\s*\\\\(|(codimension)\\\\s*\\\\[)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.attribute-specification.fortran\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#allocatable-attribute\"},{\"include\":\"#asynchronous-attribute\"},{\"include\":\"#codimension-attribute\"},{\"include\":\"#contiguous-attribute\"},{\"include\":\"#dimension-attribute\"},{\"include\":\"#external-attribute\"},{\"include\":\"#intent-attribute\"},{\"include\":\"#intrinsic-attribute\"},{\"include\":\"#language-binding-attribute\"},{\"include\":\"#optional-attribute\"},{\"include\":\"#parameter-attribute\"},{\"include\":\"#pointer-attribute\"},{\"include\":\"#protected-attribute\"},{\"include\":\"#save-attribute\"},{\"include\":\"#target-attribute\"},{\"include\":\"#value-attribute\"},{\"include\":\"#volatile-attribute\"},{\"begin\":\"(?=\\\\s*::)\",\"contentName\":\"meta.attribute-list.normal.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"include\":\"#invalid-word\"}]},{\"include\":\"#name-list\"}]},\"block-construct\":{\"begin\":\"(?i)\\\\b(block)\\\\b(?!\\\\s*\\\\bdata\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.associate.fortran\"}},\"contentName\":\"meta.block.block.fortran\",\"end\":\"(?i)\\\\b(end\\\\s*block)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endassociate.fortran\"}},\"patterns\":[{\"include\":\"$base\"}]},\"block-data-definition\":{\"begin\":\"(?i)\\\\b(block\\\\s*data)\\\\b(?:\\\\s+([a-z]\\\\w*)\\\\b)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.block-data.fortran\"},\"2\":{\"name\":\"entity.name.block-data.fortran\"}},\"end\":\"(?i)\\\\b(?:(end\\\\s*block\\\\s*data)(?:\\\\s+(\\\\2))?|(end))\\\\b(?:\\\\s*(\\\\S((?!\\\\n).)*))?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end-block-data.fortran\"},\"2\":{\"name\":\"entity.name.block-data.fortran\"},\"3\":{\"name\":\"keyword.control.end-block-data.fortran\"},\"4\":{\"name\":\"invalid.error.block-data-definition.fortran\"}},\"name\":\"meta.block-data.fortran\",\"patterns\":[{\"include\":\"$base\"}]},\"brackets\":{\"begin\":\"\\\\s*(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.bracket.left.fortran\"}},\"end\":\"(])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.bracket.left.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}]},\"call-statement\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\s*\\\\b(call)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.call.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.call.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\s*[a-z]\\\\w*\\\\s*%)\",\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#line-continuation-operator\"},{\"captures\":{\"1\":{\"name\":\"variable.other.fortran\"},\"2\":{\"name\":\"keyword.accessor.fortran\"}},\"match\":\"(?i)\\\\s*([a-z]\\\\w*)\\\\s*(%)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"}},\"match\":\"(?i)\\\\s*([a-z]\\\\w*)\"},{\"include\":\"#parentheses-dummy-variables\"}]},{\"include\":\"#intrinsic-subroutines\"},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b(?=\\\\s*[\\\\n!;])\"},{\"include\":\"$base\"}]}]},\"character-type\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(character)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.character.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"contentName\":\"meta.type-spec.fortran\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.character.fortran\"},\"2\":{\"name\":\"keyword.operator.multiplication.fortran\"},\"3\":{\"name\":\"constant.numeric.fortran\"}},\"match\":\"(?i)\\\\b(character)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?\"}]},\"codimension-attribute\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(codimension)(?=\\\\s*\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.codimension.fortran\"}},\"end\":\"(?<!\\\\G)\",\"patterns\":[{\"include\":\"#brackets\"}]},\"comments\":{\"begin\":\"!\",\"end\":\"(?=\\\\n)\",\"name\":\"comment.line.fortran\"},\"common-statement\":{\"begin\":\"(?i)\\\\b(common)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.common.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"$base\"}]},\"concurrent-attribute\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(concurrent)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.while.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},\"constants\":{\"patterns\":[{\"include\":\"#logical-constant\"},{\"include\":\"#numeric-constant\"},{\"include\":\"#string-constant\"}]},\"contiguous-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.contigous.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(contiguous)\\\\b\"},\"continue-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(continue)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.continue.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.continue.fortran\",\"patterns\":[{\"include\":\"#invalid-character\"}]}]},\"control-constructs\":{\"patterns\":[{\"include\":\"#named-control-constructs\"},{\"include\":\"#unnamed-control-constructs\"}]},\"control-statements\":{\"patterns\":[{\"include\":\"#assign-statement\"},{\"include\":\"#call-statement\"},{\"include\":\"#continue-statement\"},{\"include\":\"#cycle-statement\"},{\"include\":\"#entry-statement\"},{\"include\":\"#error-stop-statement\"},{\"include\":\"#exit-statement\"},{\"include\":\"#goto-statement\"},{\"include\":\"#pause-statement\"},{\"include\":\"#return-statement\"},{\"include\":\"#stop-statement\"},{\"include\":\"#where-statement\"},{\"include\":\"#image-control-statement\"}]},\"cpp-numeric-constant\":{\"captures\":{\"0\":{\"patterns\":[{\"begin\":\"(?=.)\",\"beginCaptures\":{},\"end\":\"$\",\"endCaptures\":{},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.hexadecimal.cpp\"},\"2\":{\"name\":\"constant.numeric.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"3\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"4\":{\"name\":\"constant.numeric.hexadecimal.cpp\"},\"5\":{\"name\":\"constant.numeric.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"6\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"7\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.cpp\"},\"8\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.cpp\"},\"9\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.cpp\"},\"10\":{\"name\":\"constant.numeric.exponent.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"11\":{\"name\":\"keyword.other.unit.suffix.floating-point.cpp\"},\"12\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?((?<=\\\\h)\\\\.|\\\\.(?=\\\\h))(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"3\":{\"name\":\"constant.numeric.decimal.point.cpp\"},\"4\":{\"name\":\"constant.numeric.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"5\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"6\":{\"name\":\"keyword.other.unit.exponent.decimal.cpp\"},\"7\":{\"name\":\"keyword.operator.plus.exponent.decimal.cpp\"},\"8\":{\"name\":\"keyword.operator.minus.exponent.decimal.cpp\"},\"9\":{\"name\":\"constant.numeric.exponent.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"10\":{\"name\":\"keyword.other.unit.suffix.floating-point.cpp\"},\"11\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?((?<=[0-9])\\\\.|\\\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.binary.cpp\"},\"2\":{\"name\":\"constant.numeric.binary.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"3\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"4\":{\"name\":\"keyword.other.unit.suffix.integer.cpp\"},\"5\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(0[Bb])([01](?:[01]|((?<=\\\\h)'(?=\\\\h)))*)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.octal.cpp\"},\"2\":{\"name\":\"constant.numeric.octal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"3\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"4\":{\"name\":\"keyword.other.unit.suffix.integer.cpp\"},\"5\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(0)((?:[0-7]|((?<=\\\\h)'(?=\\\\h)))+)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.hexadecimal.cpp\"},\"2\":{\"name\":\"constant.numeric.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"3\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"4\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.cpp\"},\"5\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.cpp\"},\"6\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.cpp\"},\"7\":{\"name\":\"constant.numeric.exponent.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"8\":{\"name\":\"keyword.other.unit.suffix.integer.cpp\"},\"9\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.cpp\"},\"3\":{\"name\":\"keyword.other.unit.exponent.decimal.cpp\"},\"4\":{\"name\":\"keyword.operator.plus.exponent.decimal.cpp\"},\"5\":{\"name\":\"keyword.operator.minus.exponent.decimal.cpp\"},\"6\":{\"name\":\"constant.numeric.exponent.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=\\\\h)'(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"7\":{\"name\":\"keyword.other.unit.suffix.integer.cpp\"},\"8\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$\"},{\"match\":\"(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])+\",\"name\":\"invalid.illegal.constant.numeric.cpp\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])*\"},\"critical-construct\":{\"begin\":\"(?i)\\\\b(critical)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.associate.fortran\"}},\"contentName\":\"meta.block.critical.fortran\",\"end\":\"(?i)\\\\b(end\\\\s*critical)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endassociate.fortran\"}},\"patterns\":[{\"include\":\"$base\"}]},\"cycle-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(cycle)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.cycle.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.fortran\",\"patterns\":[]}]},\"data-statement\":{\"begin\":\"(?i)\\\\b(data)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.data.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"$base\"}]},\"deallocate-statement\":{\"begin\":\"(?i)\\\\b(deallocate)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.deallocate.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.deallocate.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"deferred-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.deferred.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(deferred)\\\\b\"},\"derived-type\":{\"begin\":\"(?i)\\\\b(?:(class)|(type))\\\\s*(\\\\()\\\\s*(([a-z]\\\\w*)|\\\\*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.class.fortran\"},\"2\":{\"name\":\"storage.type.type.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"4\":{\"name\":\"entity.name.type.fortran\"}},\"contentName\":\"meta.type-spec.fortran\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.specification.type.derived.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"derived-type-component-attribute-specification\":{\"begin\":\"(?i)(?=\\\\s*\\\\b(?:private|sequence)\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.attribute-specification.fortran\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#sequence-attribute\"},{\"include\":\"#invalid-character\"}]},\"derived-type-component-parameter-specification\":{\"captures\":{\"1\":{\"name\":\"storage.type.integer.fortran\"},\"2\":{\"name\":\"punctuation.comma.fortran\"},\"3\":{\"name\":\"keyword.other.attribute.derived-type.parameter.fortran\"},\"4\":{\"name\":\"keyword.operator.double-colon.fortran\"},\"5\":{\"name\":\"entity.name.derived-type.parameter.fortran\"}},\"match\":\"(?i)\\\\b(integer)\\\\s*(,)\\\\s*(kind|len)\\\\s*(?:(::)\\\\s*([a-z]\\\\w*)?)?\\\\s*(?=[\\\\n!;])\"},\"derived-type-component-procedure-specification\":{\"begin\":\"(?i)(?=\\\\bprocedure\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"contentName\":\"meta.attribute-list.derived-type-component-procedure.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#pass-attribute\"},{\"include\":\"#nopass-attribute\"},{\"include\":\"#invalid-word\"},{\"include\":\"#pointer-attribute\"}]}]},{\"include\":\"#procedure-name-list\"}]},\"derived-type-component-type-specification\":{\"begin\":\"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type)\\\\b(?![^\\\\n!\\\"':;]*\\\\bfunction\\\\b))\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.derived-type.fortran\",\"patterns\":[{\"include\":\"#types\"},{\"include\":\"#line-continuation-operator\"},{\"begin\":\"(?=\\\\s*(,|::))\",\"contentName\":\"meta.attribute-list.derived-type-component-type.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#allocatable-attribute\"},{\"include\":\"#codimension-attribute\"},{\"include\":\"#contiguous-attribute\"},{\"include\":\"#dimension-attribute\"},{\"include\":\"#pointer-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"include\":\"#name-list\"}]},\"derived-type-contains-attribute-specification\":{\"begin\":\"(?i)(?=\\\\bprivate\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.attribute-specification.fortran\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#invalid-character\"}]},\"derived-type-contains-final-procedure-specification\":{\"begin\":\"(?i)\\\\b(final)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.final-procedure.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.procedure.final.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(::))\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"name\":\"meta.attribute-list.derived-type-contains-final-procedure.fortran\",\"patterns\":[{\"include\":\"#invalid-word\"}]},{\"include\":\"#procedure-name\"}]},\"derived-type-contains-generic-procedure-specification\":{\"begin\":\"(?i)\\\\b(generic)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.procedure.generic.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.procedure.generic.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"contentName\":\"meta.attribute-list.derived-type-contains-generic-procedure.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)|^|(?<=&)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!\\\\&,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"begin\":\"(?=\\\\s*[a-z])\",\"contentName\":\"meta.name-list.fortran\",\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#IO-keywords\"},{\"include\":\"#assignment-keyword\"},{\"include\":\"#operator-keyword\"},{\"include\":\"#procedure-name\"},{\"include\":\"#pointer-operators\"}]}]},\"derived-type-contains-procedure-specification\":{\"begin\":\"(?i)(?=\\\\bprocedure\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"contentName\":\"meta.attribute-list.derived-type-contains-procedure.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)|^|(?<=&)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!\\\\&,;])\",\"name\":\"meta.something.fortran\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#deferred-attribute\"},{\"include\":\"#non-overridable-attribute\"},{\"include\":\"#nopass-attribute\"},{\"include\":\"#pass-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"include\":\"#procedure-name-list\"}]},\"derived-type-definition\":{\"begin\":\"(?i)\\\\b(type)\\\\b(?!\\\\s*(\\\\(|is\\\\b|=))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.type.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.derived-type.definition.fortran\",\"patterns\":[{\"begin\":\"\\\\G(?=\\\\s*(,|::))\",\"contentName\":\"meta.attribute-list.derived-type.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#abstract-attribute\"},{\"include\":\"#language-binding-attribute\"},{\"include\":\"#extends-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.fortran\"}},\"end\":\"(?i)(?:^|(?<=;))\\\\s*(end\\\\s*type)(?:\\\\s+(?:(\\\\1)|(\\\\w+)))?\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endtype.fortran\"},\"2\":{\"name\":\"entity.name.type.fortran\"},\"3\":{\"name\":\"invalid.error.derived-type.fortran\"}},\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#comments\"},{\"begin\":\"(?i)^(?!\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)\",\"end\":\"(?i)^(?=\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)\",\"name\":\"meta.block.specification.derived-type.fortran\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#derived-type-component-attribute-specification\"},{\"include\":\"#derived-type-component-parameter-specification\"},{\"include\":\"#derived-type-component-procedure-specification\"},{\"include\":\"#derived-type-component-type-specification\"}]},{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=\\\\s*end\\\\s*type\\\\b)\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#derived-type-contains-attribute-specification\"},{\"include\":\"#derived-type-contains-final-procedure-specification\"},{\"include\":\"#derived-type-contains-generic-procedure-specification\"},{\"include\":\"#derived-type-contains-procedure-specification\"}]}]}]},\"derived-type-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.other.selector.fortran\"}},\"match\":\"\\\\s*(%)\"},\"dimension-attribute\":{\"begin\":\"(?i)\\\\s*\\\\b(dimension)(?=\\\\s*\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.dimension.fortran\"}},\"end\":\"(?<!\\\\G)\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"do-construct\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.enddo.fortran\"}},\"match\":\"(?i)\\\\b(end\\\\s*do)\\\\b\"},{\"begin\":\"(?i)\\\\b(do)\\\\s+(\\\\d{1,5})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.do.fortran\"},\"2\":{\"name\":\"constant.numeric.fortran\"}},\"end\":\"(?i)(?:^|(?<=;))(?=\\\\s*\\\\b\\\\2\\\\b)\",\"name\":\"meta.do.labeled.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#concurrent-attribute\"},{\"include\":\"#while-attribute\"},{\"include\":\"$base\"}]},{\"include\":\"$base\"}]},{\"begin\":\"(?i)\\\\b(do)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.do.fortran\"}},\"end\":\"(?i)\\\\b(?:(continue)|(end\\\\s*do))\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.continue.fortran\"},\"2\":{\"name\":\"keyword.control.enddo.fortran\"}},\"name\":\"meta.block.do.unlabeled.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.loop-control.fortran\",\"patterns\":[{\"include\":\"#concurrent-attribute\"},{\"include\":\"#while-attribute\"},{\"include\":\"$base\"}]},{\"begin\":\"(?i)(?!\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)\",\"end\":\"(?i)(?=\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)\",\"patterns\":[{\"include\":\"$base\"}]}]}]},\"dummy-variable\":{\"captures\":{\"1\":{\"name\":\"variable.parameter.fortran\"}},\"match\":\"(?i)(?:^|(?<=[\\\\&(,]))\\\\s*([a-z]\\\\w*)\"},\"dummy-variable-list\":{\"begin\":\"\\\\G\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.fortran\"}},\"end\":\"\\\\)|(?=\\\\n)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.fortran\"}},\"name\":\"meta.dummy-variable-list\",\"patterns\":[{\"include\":\"#dummy-variable\"}]},\"elemental-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.elemental.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(elemental)\\\\b\"},\"entry-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(entry)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.entry.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.entry.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.entry.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#result-statement\"},{\"include\":\"#language-binding-attribute\"}]}]}]},\"enum-block-construct\":{\"begin\":\"(?i)\\\\b(enum)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.enum.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*enum)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end-enum.fortran\"}},\"name\":\"meta.enum.fortran\",\"patterns\":[{\"begin\":\"\\\\G\\\\s*(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#language-binding-attribute\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)(?!\\\\s*\\\\b(end\\\\s*enum)\\\\b)\",\"end\":\"(?i)(?=\\\\b(end\\\\s*enum)\\\\b)\",\"name\":\"meta.block.specification.enum.fortran\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(?i)\\\\b(enumerator)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.enumerator.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.enumerator-specification.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(,|::))\",\"contentName\":\"meta.attribute-list.enum.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"include\":\"#invalid-word\"}]},{\"include\":\"#comments\"},{\"include\":\"#name-list\"}]}]}]},\"equivalence-statement\":{\"begin\":\"(?i)\\\\b(equivalence)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.common.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"\\\\G|(,)\",\"beginCaptures\":{\"1\":{\"name\":\"puntuation.comma.fortran\"}},\"end\":\"(?=[\\\\n!,;])\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]}]},\"error-stop-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(error\\\\s+stop)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.errorstop.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.errorstop.fortran\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#string-operators\"},{\"include\":\"#variable\"},{\"include\":\"#invalid-character\"}]},\"event-statement\":{\"begin\":\"(?i)\\\\b(event (?:post|wait))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.event.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.event.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"execution-statements\":{\"patterns\":[{\"include\":\"#allocate-statement\"},{\"include\":\"#deallocate-statement\"},{\"include\":\"#IO-statements\"},{\"include\":\"#nullify-statement\"}]},\"exit-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(exit)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exit.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.exit.fortran\",\"patterns\":[]},\"explicit-interface-block-construct\":{\"begin\":\"(?i)\\\\b(interface)\\\\b(?=\\\\s*[\\\\n!;])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.interface.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran.modern\"}},\"name\":\"meta.interface.explicit.fortran\",\"patterns\":[{\"include\":\"$base\"}]},\"extends-attribute\":{\"begin\":\"(?i)\\\\s*\\\\b(extends)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.extends.fortran\"}},\"end\":\"\\\\)|(?=\\\\n)\",\"patterns\":[{\"match\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"name\":\"entity.name.type.fortran\"}]},\"external-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.external.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(external)\\\\b\"},\"fail-image-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.fail-image.fortran\"}},\"match\":\"\\\\b(fail image)\\\\b\",\"name\":\"meta.statement.fail-image.fortran\"},\"forall-construct\":{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\b(forall)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.forall.fortran\"}},\"end\":\"(?<!\\\\G)\",\"patterns\":[{\"begin\":\"(?i)\\\\G(?!\\\\s*[\\\\n!;])\",\"end\":\"(?<!\\\\G)\",\"name\":\"meta.loop-control.fortran\",\"patterns\":[{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?<=\\\\))(?=\\\\s*[\\\\n!;])\",\"end\":\"(?i)\\\\b(end\\\\s*forall)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endforall.fortran\"}},\"name\":\"meta.block.forall.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"begin\":\"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])\",\"end\":\"\\\\n\",\"name\":\"meta.statement.control.forall.fortran\",\"patterns\":[{\"include\":\"$base\"}]}]},\"form-team-statement\":{\"begin\":\"(?i)\\\\b(form team)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.form-team.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.form-team.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"format-descriptor\":{\"begin\":\"\\\\(/\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.bracket.left.fortran\"}},\"contentName\":\"meta.format-descriptor.fortran\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.bracket.right.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#parentheses\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}]},\"format-descriptors\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.other.format-descriptor.fortran\"}},\"match\":\"(?i)(?:\\\\b|(?<=\\\\d)|(?<=P))(EN|ES|EX|DT|DC|DP|RC|RD|RN|RP|RU|RZ|BN|BZ|SP|SS|TL|TR|[ABD-GILOPQSTXZ])(?=$|[^A-Z_a-z]|[D-G](?i))\"},{\"match\":\"/\",\"name\":\"keyword.operator.format.newline.fortran\"},{\"match\":\":\",\"name\":\"keyword.operator.format.separator.fortran\"},{\"match\":\"[$\\\\\\\\]\",\"name\":\"keyword.other.format-descriptor.nonstandard.fortran\"},{\"match\":\"(?i)(?:\\\\b|(?<=\\\\d))\\\\d+H\",\"name\":\"keyword.other.format-descriptor.legacy.fortran\"}]},\"format-parentheses\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#line-continuation-operator\"},{\"match\":\"(?:\\\\b|[-+])\\\\d+(?=[A-Za-z])\",\"name\":\"constant.numeric.fortran\"},{\"include\":\"#format-descriptors\"},{\"include\":\"#format-parentheses\"},{\"include\":\"#parentheses-common\"}]},\"function-definition\":{\"begin\":\"(?i)(?=([^\\\\n!\\\"':;](?!\\\\bend)(?!\\\\bsubroutine\\\\b))*\\\\bfunction\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.function.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bfunction\\\\b))\",\"end\":\"(?i)(?=\\\\bfunction\\\\b)\",\"name\":\"meta.attribute-list.function.fortran\",\"patterns\":[{\"include\":\"#elemental-attribute\"},{\"include\":\"#module-attribute\"},{\"include\":\"#pure-attribute\"},{\"include\":\"#recursive-attribute\"},{\"include\":\"#types\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)\\\\b(function)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.function.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.fortran\"}},\"end\":\"(?i)\\\\s*\\\\b(?:(end\\\\s*function)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.endfunction.fortran\"},\"2\":{\"name\":\"entity.name.function.fortran\"},\"3\":{\"name\":\"keyword.other.endfunction.fortran\"},\"4\":{\"name\":\"invalid.error.function.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G(?!\\\\s*[\\\\n!;])\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.function.first-line.fortran\",\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#result-statement\"},{\"include\":\"#language-binding-attribute\"}]},{\"begin\":\"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))\",\"end\":\"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))\",\"name\":\"meta.block.specification.function.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]}]},\"generic-interface-block-construct\":{\"begin\":\"(?i)\\\\b(interface)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.interface.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.interface.generic.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()\\\\s*(?:(=)|(\\\\S.*))\\\\s*(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.assignment.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"3\":{\"name\":\"keyword.operator.assignment.fortran\"},\"4\":{\"name\":\"invalid.error.generic-interface.fortran\"},\"5\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran\"},\"2\":{\"name\":\"keyword.other.assignment.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"4\":{\"name\":\"keyword.operator.assignment.fortran\"},\"5\":{\"name\":\"invalid.error.generic-interface-end.fortran\"},\"6\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#interface-procedure-statement\"},{\"include\":\"$base\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(operator)\\\\s*(\\\\()\\\\s*(?:(\\\\.[a-z]+\\\\.|==|/=|>=|[<>]|<=|[-+/]|//|\\\\*\\\\*?)|(\\\\S.*))\\\\s*(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.operator.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"3\":{\"name\":\"keyword.operator.fortran\"},\"4\":{\"name\":\"invalid.error.generic-interface-block-op.fortran\"},\"5\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran\"},\"2\":{\"name\":\"keyword.other.operator.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"4\":{\"name\":\"keyword.operator.fortran\"},\"5\":{\"name\":\"invalid.error.generic-interface-block-op-end.fortran\"},\"6\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#interface-procedure-statement\"},{\"include\":\"$base\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()\\\\s*(?:(formatted)|(unformatted)|(\\\\S.*))\\\\s*(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.read.fortran\"},\"2\":{\"name\":\"keyword.other.write.fortran\"},\"3\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"4\":{\"name\":\"keyword.other.formatted.fortran\"},\"5\":{\"name\":\"keyword.other.unformatted.fortran\"},\"6\":{\"name\":\"invalid.error.generic-interface-block.fortran\"},\"7\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(?:(\\\\2)|(\\\\3))\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\4)|(\\\\5)|(\\\\S.*))\\\\s*(\\\\)))?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran\"},\"2\":{\"name\":\"keyword.other.read.fortran\"},\"3\":{\"name\":\"keyword.other.write.fortran\"},\"4\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"5\":{\"name\":\"keyword.other.formatted.fortran\"},\"6\":{\"name\":\"keyword.other.unformatted.fortran\"},\"7\":{\"name\":\"invalid.error.generic-interface-block-end.fortran\"},\"8\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#interface-procedure-statement\"},{\"include\":\"$base\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b)?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endinterface.fortran\"},\"2\":{\"name\":\"entity.name.function.fortran\"}},\"patterns\":[{\"include\":\"#interface-procedure-statement\"},{\"include\":\"$base\"}]}]},\"goto-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(go\\\\s*to)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.goto.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.goto.fortran\",\"patterns\":[{\"include\":\"$base\"}]},\"if-construct\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(if)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#logical-control-expression\"},{\"begin\":\"(?i)\\\\s*\\\\b(then)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.then.fortran\"}},\"contentName\":\"meta.block.if.fortran\",\"end\":\"(?i)\\\\b(end\\\\s*if)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endif.fortran\"}},\"patterns\":[{\"begin\":\"(?i)\\\\b(else\\\\s*if)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elseif.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.then.fortran\"},\"2\":{\"name\":\"meta.label.elseif.fortran\"}},\"match\":\"(?i)\\\\b(then)\\\\b(\\\\s*[a-z]\\\\w*)?\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.else.fortran\"}},\"end\":\"(?i)(?=\\\\b(end\\\\s*if)\\\\b)\",\"patterns\":[{\"begin\":\"(?!(\\\\s*([\\\\n!;])))\",\"end\":\"\\\\s*(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"meta.label.else.fortran\"},\"2\":{\"name\":\"invalid.error.label.else.fortran\"}},\"match\":\"(?i)\\\\s*([a-z]\\\\w*)?\\\\s*\\\\b(\\\\w*)\\\\b\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)(?!\\\\b(end\\\\s*if)\\\\b)\",\"end\":\"(?i)(?=\\\\b(end\\\\s*if)\\\\b)\",\"patterns\":[{\"include\":\"$base\"}]}]},{\"include\":\"$base\"}]},{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.if.fortran\",\"patterns\":[{\"include\":\"$base\"}]}]}]},\"image-control-statement\":{\"patterns\":[{\"include\":\"#sync-all-statement\"},{\"include\":\"#sync-statement\"},{\"include\":\"#event-statement\"},{\"include\":\"#form-team-statement\"},{\"include\":\"#fail-image-statement\"}]},\"implicit-statement\":{\"begin\":\"(?i)\\\\b(implicit)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.implicit.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.implicit.fortran\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.other.none.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(none)\\\\b\"},{\"include\":\"$base\"}]},\"import-statement\":{\"begin\":\"(?i)\\\\b(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.include.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.include.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*(?:(::)|(?=[a-z]))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#name-list\"}]},{\"begin\":\"\\\\G\\\\s*(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.other.all.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(all)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.none.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(none)\\\\b\"},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(only)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.only.fortran\"},\"2\":{\"name\":\"keyword.other.colon.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#name-list\"}]},{\"include\":\"#invalid-word\"}]}]},\"include-statement\":{\"begin\":\"(?i)\\\\b(include)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.include.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.include.fortran\",\"patterns\":[{\"include\":\"#string-constant\"},{\"include\":\"#invalid-character\"}]},\"intent-attribute\":{\"begin\":\"(?i)\\\\s*\\\\b(intent)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.intent.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.modifier.intent.in-out.fortran\"},\"2\":{\"name\":\"storage.modifier.intent.in.fortran\"},\"3\":{\"name\":\"storage.modifier.intent.out.fortran\"}},\"match\":\"(?i)\\\\b(?:(in\\\\s*out)|(in)|(out))\\\\b\"},{\"include\":\"#invalid-word\"}]},\"interface-block-constructs\":{\"patterns\":[{\"include\":\"#abstract-interface-block-construct\"},{\"include\":\"#explicit-interface-block-construct\"},{\"include\":\"#generic-interface-block-construct\"}]},\"interface-procedure-statement\":{\"begin\":\"(?i)(?=[^\\\\n!\\\"';]*\\\\bprocedure\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.procedure.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bprocedure\\\\b))\",\"end\":\"(?i)(?=\\\\bprocedure\\\\b)\",\"name\":\"meta.attribute-list.interface.fortran\",\"patterns\":[{\"include\":\"#module-attribute\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)\\\\s*\\\\b(procedure)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.procedure.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"match\":\"\\\\G\\\\s*(::)\"},{\"include\":\"#procedure-name-list\"}]}]},\"intrinsic-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.intrinsic.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(intrinsic)\\\\b\"},\"intrinsic-functions\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(acosh|asinh|atanh|bge|bgt|ble|blt|dshiftl|dshiftr|findloc|hypot|iall|iany|image_index|iparity|is_contiguous|lcobound|leadz|mask[lr]|merge_bits|norm2|num_images|parity|popcnt|poppar|shift[alr]|storage_size|this_image|trailz|ucobound)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(bessel_[jy][01n]|erf(c(_scaled)?)?|gamma|log_gamma)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(command_argument_count|extends_type_of|is_iostat_end|is_iostat_eor|new_line|same_type_as|selected_char_kind)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(ieee_(class|copy_sign|is_(finite|nan|negative|normal)|logb|next_after|rem|rint|scalb|selected_real_kind|support_(datatype|denormal|divide|inf|io|nan|rounding|sqrt|standard|underflow_control)|unordered|value))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(ieee_support_(flag|halting))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(c_(associated|funloc|loc|sizeof))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(compiler_(options|version))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(null)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b(achar|adjustl|adjustr|all|allocated|associated|any|bit_size|btest|ceiling|count|cshift|digits|dot_product|eoshift|epsilon|exponent|floor|fraction|huge|iachar|iand|ibclr|ibits|ibset|ieor|ior|ishftc?|kind|lbound|len_trim|logical|matmul|maxexponent|maxloc|maxval|merge|minexponent|minloc|minval|modulo|nearest|not|pack|precision|present|product|radix|range|repeat|reshape|rrspacing|scale|scan|selected_(int|real)_kind|set_exponent|shape|size|spacing|spread|sum|tiny|transfer|transpose|trim|ubound|unpack|verify)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b([cdi]?abs|acos|[ad]int|[ad]nint|aimag|amax[01]|amin[01]|d?asin|d?atan|d?atan2|char|conjg|[cd]?cos|d?cosh|cmplx|dble|i?dim|dmax1|dmin1|dprod|[cd]?exp|float|ichar|idint|ifix|index|int|len|lge|lgt|lle|llt|[acd]?log|[ad]?log10|max[01]?|min[01]?|[ad]?mod|(id)?nint|real|[di]?sign|[cd]?sin|d?sinh|sngl|[cd]?sqrt|d?tan|d?tanh)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.intrinsic.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]}]},\"intrinsic-subroutines\":{\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(date_and_time|mvbits|random_number|random_seed|system_clock)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(cpu_time)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(rounding|underflow)_mode)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(flag|halting_mode|status))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(c_f_(p(?:|rocp)ointer))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(execute_command_line|get_command|get_command_argument|get_environment_variable|move_alloc)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]}]},\"invalid-character\":{\"match\":\"(?i)[^\\\\n!;\\\\s]+\",\"name\":\"invalid.error.character.fortran\"},\"invalid-word\":{\"match\":\"(?i)\\\\b\\\\w+\\\\b\",\"name\":\"invalid.error.word.fortran\"},\"language-binding-attribute\":{\"begin\":\"(?i)\\\\s*\\\\b(bind)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.bind.fortran\"}},\"end\":\"\\\\)|(?=\\\\n)\",\"patterns\":[{\"match\":\"(?i)\\\\b(c)\\\\b\",\"name\":\"variable.parameter.fortran\"},{\"include\":\"#dummy-variable\"},{\"include\":\"$base\"}]},\"line-continuation-operator\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.operator.line-continuation.fortran\"}},\"match\":\"(?:^|(?<=;))\\\\s*(&)\"},{\"begin\":\"\\\\s*(&)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.line-continuation.fortran\"}},\"contentName\":\"meta.line-continuation.fortran\",\"end\":\"(?i)^(?:\\\\s*(&))?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.line-continuation.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"\\\\S[^!]*\",\"name\":\"invalid.error.line-cont.fortran\"}]}]},\"logical-constant\":{\"captures\":{\"1\":{\"name\":\"constant.language.logical.false.fortran\"},\"2\":{\"name\":\"constant.language.logical.true.fortran\"}},\"match\":\"(?i)\\\\s*(?:(\\\\.false\\\\.)|(\\\\.true\\\\.))\"},\"logical-control-expression\":{\"begin\":\"\\\\G(?=\\\\s*\\\\()\",\"end\":\"(?<!\\\\G)\",\"name\":\"meta.expression.control.logical.fortran\",\"patterns\":[{\"include\":\"#parentheses\"}]},\"logical-operators\":{\"patterns\":[{\"match\":\"(?i)(\\\\s*\\\\.(and|eqv??|le|lt|ge|gt|ne|neqv|not|or)\\\\.)\",\"name\":\"keyword.logical.fortran\"},{\"match\":\"(==|/=|>=|(?<!=)>|<=?)\",\"name\":\"keyword.logical.fortran.modern\"}]},\"logical-type\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(logical)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.logical.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"contentName\":\"meta.type-spec.fortran\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.character.fortran\"},\"2\":{\"name\":\"keyword.operator.multiplication.fortran\"},\"3\":{\"name\":\"constant.numeric.fortran\"}},\"match\":\"(?i)\\\\b(logical)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?\"}]},\"module-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.module.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(module)\\\\b(?=\\\\s*(?:[\\\\n!;]|[^\\\\n!\\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b))\"},\"module-definition\":{\"begin\":\"(?i)(?=\\\\b(module)\\\\b)(?![^\\\\n!\\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.module.fortran\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.other.program.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(module)\\\\b\"},{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.class.module.fortran\"}},\"end\":\"(?i)\\\\b(?:(end\\\\s*module)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.endmodule.fortran\"},\"2\":{\"name\":\"entity.name.class.module.fortran\"},\"3\":{\"name\":\"keyword.other.endmodule.fortran\"},\"4\":{\"name\":\"invalid.error.module-definition.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))\",\"name\":\"meta.block.specification.module.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"name-list\":{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"contentName\":\"meta.name-list.fortran\",\"end\":\"(?=[\\\\n!);])\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#brackets\"},{\"include\":\"#assignment-keyword\"},{\"include\":\"#operator-keyword\"},{\"include\":\"#variable\"}]},\"named-control-constructs\":{\"applyEndPatternLast\":1,\"begin\":\"(?i)([a-z]\\\\w*)\\\\s*(:)(?=\\\\s*(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)\",\"contentName\":\"meta.named-construct.fortran.modern\",\"end\":\"(?i)(?!\\\\s*\\\\b(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)(?:\\\\b(\\\\1)\\\\b)?([^\\\\n!;\\\\s]*?)?(?=\\\\s*[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"meta.label.end.name.fortran\"},\"2\":{\"name\":\"invalid.error.named-control-constructs.fortran.modern\"}},\"patterns\":[{\"include\":\"#unnamed-control-constructs\"}]},\"namelist-statement\":{\"begin\":\"(?i)\\\\b(namelist)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.namelist.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"$base\"}]},\"non-intrinsic-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non-intrinsic.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(non_intrinsic)\\\\b\"},\"non-overridable-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non-overridable.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(non_overridable)\\\\b\"},\"nopass-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.nopass.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(nopass)\\\\b\"},\"nullify-statement\":{\"begin\":\"(?i)\\\\b(nullify)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.nullify.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.nullify.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"numeric-constant\":{\"match\":\"(?i)[-+]?(\\\\b\\\\d+\\\\.?\\\\d*|\\\\.\\\\d+)(_\\\\w+|d[-+]?\\\\d+|e[-+]?\\\\d+(_\\\\w+)?)?(?![_a-z])\",\"name\":\"constant.numeric.fortran\"},\"numeric-type\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.complex.fortran\"},\"2\":{\"name\":\"storage.type.double.fortran\"},\"3\":{\"name\":\"storage.type.doublecomplex.fortran\"},\"4\":{\"name\":\"storage.type.integer.fortran\"},\"5\":{\"name\":\"storage.type.real.fortran\"},\"6\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"contentName\":\"meta.type-spec.fortran\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.complex.fortran\"},\"2\":{\"name\":\"storage.type.double.fortran\"},\"3\":{\"name\":\"storage.type.doublecomplex.fortran\"},\"4\":{\"name\":\"storage.type.integer.fortran\"},\"5\":{\"name\":\"storage.type.real.fortran\"},\"6\":{\"name\":\"storage.type.dimension.fortran\"},\"7\":{\"name\":\"keyword.operator.multiplication.fortran\"},\"8\":{\"name\":\"constant.numeric.fortran\"}},\"match\":\"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real)|(dimension))\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?\"}]},\"operator-keyword\":{\"begin\":\"(?i)\\\\s*\\\\b(operator)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.generic-spec.operator.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#arithmetic-operators\"},{\"include\":\"#logical-operators\"},{\"include\":\"#user-defined-operators\"},{\"include\":\"#invalid-word\"}]},\"operators\":{\"patterns\":[{\"include\":\"#arithmetic-operators\"},{\"include\":\"#assignment-operator\"},{\"include\":\"#derived-type-operators\"},{\"include\":\"#logical-operators\"},{\"include\":\"#pointer-operators\"},{\"include\":\"#string-operators\"},{\"include\":\"#user-defined-operators\"}]},\"optional-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.optional.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(optional)\\\\b\"},\"parameter-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.parameter.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(parameter)\\\\b\"},\"parentheses\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#parentheses-common\"}]},\"parentheses-common\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}]},\"parentheses-dummy-variables\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#procedure-call-dummy-variable\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#parentheses-common\"}]},\"pass-attribute\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(pass)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.pass.fortran\"}},\"end\":\"\\\\)|(?=\\\\n)\",\"patterns\":[]},{\"captures\":{\"1\":{\"name\":\"storage.modifier.pass.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(pass)\\\\b\"}]},\"pause-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(pause)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.pause.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.pause.fortran\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#invalid-character\"}]},\"pointer-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.pointer.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(pointer)\\\\b\"},\"pointer-operators\":{\"match\":\"(=>)\",\"name\":\"keyword.other.point.fortran\"},\"preprocessor\":{\"begin\":\"^\\\\s*(#:?)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.indicator.fortran\"}},\"end\":\"\\\\n\",\"name\":\"meta.preprocessor\",\"patterns\":[{\"include\":\"#preprocessor-if-construct\"},{\"include\":\"#preprocessor-statements\"}]},\"preprocessor-arithmetic-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.subtraction.fortran\"},\"2\":{\"name\":\"keyword.operator.addition.fortran\"},\"3\":{\"name\":\"keyword.operator.division.fortran\"},\"4\":{\"name\":\"keyword.operator.multiplication.fortran\"}},\"match\":\"(-)|(\\\\+)|(/)|(\\\\*)\"},\"preprocessor-assignment-operator\":{\"match\":\"(?<!=)(=)(?!=)\",\"name\":\"keyword.operator.assignment.preprocessor.fortran\"},\"preprocessor-comments\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.preprocessor\"},\"preprocessor-constants\":{\"patterns\":[{\"include\":\"#cpp-numeric-constant\"},{\"include\":\"#preprocessor-string-constant\"}]},\"preprocessor-define-statement\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(define)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.define.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.macro.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#preprocessor-constants\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},\"preprocessor-defined-function\":{\"captures\":{\"1\":{\"name\":\"keyword.control.preprocessor.defined.fortran\"}},\"match\":\"(?i)\\\\b(defined)\\\\b\"},\"preprocessor-error-statement\":{\"begin\":\"(?i)\\\\G\\\\s*(error)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.error.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.macro.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#preprocessor-string-constant\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},\"preprocessor-if-construct\":{\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(if)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.if.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.conditional.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#cpp-numeric-constant\"},{\"include\":\"#preprocessor-logical-operators\"},{\"include\":\"#preprocessor-arithmetic-operators\"},{\"include\":\"#preprocessor-defined-function\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ifdef)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.ifdef.fortran\"}},\"end\":\"(?=\\\\n)\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#cpp-numeric-constant\"},{\"include\":\"#preprocessor-logical-operators\"},{\"include\":\"#preprocessor-arithmetic-operators\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ifndef)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.ifndef.fortran\"}},\"end\":\"(?=\\\\n)\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#cpp-numeric-constant\"},{\"include\":\"#preprocessor-logical-operators\"},{\"include\":\"#preprocessor-arithmetic-operators\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.else.fortran\"}},\"end\":\"(?=\\\\n)\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#cpp-numeric-constant\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(elif)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.elif.fortran\"}},\"end\":\"(?=\\\\n)\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#cpp-numeric-constant\"},{\"include\":\"#preprocessor-logical-operators\"},{\"include\":\"#preprocessor-arithmetic-operators\"},{\"include\":\"#preprocessor-defined-function\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(endif)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.endif.fortran\"}},\"end\":\"(?=\\\\n)\",\"patterns\":[{\"include\":\"#preprocessor-comments\"}]}]},\"preprocessor-include-statement\":{\"begin\":\"(?i)\\\\G\\\\s*(include)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.include.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.include.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#preprocessor-string-constant\"},{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.preprocessor.fortran\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.preprocessor.fortran\"}},\"name\":\"string.quoted.other.lt-gt.include.preprocessor.fortran\"},{\"include\":\"#line-continuation-operator\"}]},\"preprocessor-line-continuation-operator\":{\"begin\":\"\\\\s*(\\\\\\\\)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.escape.line-continuation.preprocessor.fortran\"}},\"end\":\"(?i)^\"},\"preprocessor-logical-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.preprocessor.and.fortran\"},\"2\":{\"name\":\"keyword.operator.logical.preprocessor.equals.fortran\"},\"3\":{\"name\":\"keyword.operator.logical.preprocessor.not_equals.fortran\"},\"4\":{\"name\":\"keyword.operator.logical.preprocessor.or.fortran\"},\"5\":{\"name\":\"keyword.operator.logical.preprocessor.less_eq.fortran\"},\"6\":{\"name\":\"keyword.operator.logical.preprocessor.more_eq.fortran\"},\"7\":{\"name\":\"keyword.operator.logical.preprocessor.less.fortran\"},\"8\":{\"name\":\"keyword.operator.logical.preprocessor.more.fortran\"},\"9\":{\"name\":\"keyword.operator.logical.preprocessor.complementary.fortran\"},\"10\":{\"name\":\"keyword.operator.logical.preprocessor.xor.fortran\"},\"11\":{\"name\":\"keyword.operator.logical.preprocessor.bitand.fortran\"},\"12\":{\"name\":\"keyword.operator.logical.preprocessor.not.fortran\"},\"13\":{\"name\":\"keyword.operator.logical.preprocessor.bitor.fortran\"}},\"match\":\"(&&)|(==)|(!=)|(\\\\|\\\\|)|(<=)|(>=)|(<)|(>)|(~)|(\\\\^)|(&)|(!)|(\\\\|)\",\"name\":\"keyword.operator.logical.preprocessor.fortran\"},\"preprocessor-operators\":{\"patterns\":[{\"include\":\"#preprocessor-line-continuation-operator\"},{\"include\":\"#preprocessor-logical-operators\"},{\"include\":\"#preprocessor-arithmetic-operators\"}]},\"preprocessor-pragma-statement\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(pragma)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.pragma.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.pragma.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#preprocessor-string-constant\"}]},\"preprocessor-statements\":{\"patterns\":[{\"include\":\"#preprocessor-define-statement\"},{\"include\":\"#preprocessor-error-statement\"},{\"include\":\"#preprocessor-include-statement\"},{\"include\":\"#preprocessor-preprocessor-pragma-statement\"},{\"include\":\"#preprocessor-undefine-statement\"}]},\"preprocessor-string-constant\":{\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.preprocessor.fortran\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.preprocessor.fortran\"}},\"name\":\"string.quoted.double.include.preprocessor.fortran\"},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.preprocessor.fortran\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.preprocessor.fortran\"}},\"name\":\"string.quoted.single.include.preprocessor.fortran\"}]},\"preprocessor-undefine-statement\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(undef)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.preprocessor.undef.fortran\"}},\"end\":\"(?=\\\\n)\",\"name\":\"meta.preprocessor.undef.fortran\",\"patterns\":[{\"include\":\"#preprocessor-comments\"},{\"include\":\"#preprocessor-line-continuation-operator\"}]},\"private-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.private.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(private)\\\\b\"},\"procedure-call-dummy-variable\":{\"match\":\"(?i)\\\\s*([a-z]\\\\w*)(?=\\\\s*=)(?!\\\\s*==)\",\"name\":\"variable.parameter.dummy-variable.fortran.modern\"},\"procedure-definition\":{\"begin\":\"(?i)(?=[^\\\\n!\\\"';]*\\\\bmodule\\\\s+procedure\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.procedure.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(module\\\\s+procedure)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.procedure.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.procedure.fortran\"}},\"end\":\"(?i)\\\\s*\\\\b(?:(end\\\\s*procedure)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.endprocedure.fortran\"},\"2\":{\"name\":\"entity.name.function.procedure.fortran\"},\"3\":{\"name\":\"keyword.other.endprocedure.fortran\"},\"4\":{\"name\":\"invalid.error.procedure-definition.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G(?!\\\\s*[\\\\n!;])\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.first-line.fortran\",\"patterns\":[{\"include\":\"#invalid-character\"}]},{\"begin\":\"(?i)(?!\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))\",\"end\":\"(?i)(?=\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))\",\"name\":\"meta.block.specification.procedure.fortran\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(?i)\\\\s*(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*procedure\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$self\"}]}]}]}]},\"procedure-name\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.procedure.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\"},\"procedure-name-list\":{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"contentName\":\"meta.name-list.fortran\",\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"(?!\\\\s*\\\\n)\",\"end\":\"(,)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"patterns\":[{\"include\":\"#procedure-name\"},{\"include\":\"#pointer-operators\"}]}]},\"procedure-specification-statement\":{\"begin\":\"(?i)(?=\\\\bprocedure\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"contentName\":\"meta.attribute-list.procedure.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)|^|(?<=&)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!\\\\&,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#intent-attribute\"},{\"include\":\"#optional-attribute\"},{\"include\":\"#pointer-attribute\"},{\"include\":\"#protected-attribute\"},{\"include\":\"#save-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"include\":\"#procedure-name-list\"}]},\"procedure-type\":{\"patterns\":[{\"begin\":\"(?i)\\\\b(procedure)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.procedure.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"contentName\":\"meta.type-spec.fortran\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#types\"},{\"include\":\"#procedure-name\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.procedure.fortran\"}},\"match\":\"(?i)\\\\b(procedure)\\\\b\"}]},\"program-definition\":{\"begin\":\"(?i)(?=\\\\b(program)\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.program.fortran\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.program.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(program)\\\\b\"},{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.program.fortran\"}},\"end\":\"(?i)\\\\b(?:(end\\\\s*program)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endprogram.fortran\"},\"2\":{\"name\":\"entity.name.program.fortran\"},\"3\":{\"name\":\"keyword.control.endprogram.fortran\"},\"4\":{\"name\":\"invalid.error.program-definition.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))\",\"name\":\"meta.block.specification.program.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"protected-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.protected.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(protected)\\\\b\"},\"public-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.public.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(public)\\\\b\"},\"pure-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.impure.fortran\"},\"2\":{\"name\":\"storage.modifier.pure.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(?:(impure)|(pure))\\\\b\"},\"recursive-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non_recursive.fortran\"},\"2\":{\"name\":\"storage.modifier.recursive.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(?:(non_recursive)|(recursive))\\\\b\"},\"result-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(result)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.result.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#dummy-variable\"}]},\"return-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.return.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.return.fortran\",\"patterns\":[{\"include\":\"#invalid-character\"}]},\"save-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.save.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(save)\\\\b\"},\"select-case-construct\":{\"begin\":\"(?i)\\\\b(select\\\\s*case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.selectcase.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*select)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endselect.fortran\"}},\"name\":\"meta.block.select.case.fortran\",\"patterns\":[{\"include\":\"#parentheses\"},{\"begin\":\"(?i)\\\\b(case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.case.fortran\"}},\"end\":\"(?i)(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.default.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(default)\\\\b\"},{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},{\"include\":\"$base\"}]},\"select-rank-construct\":{\"begin\":\"(?i)\\\\b(select\\\\s*rank)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.selectrank.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*select)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endselect.fortran\"}},\"name\":\"meta.block.select.rank.fortran\",\"patterns\":[{\"include\":\"#parentheses\"},{\"begin\":\"(?i)\\\\b(rank)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.rank.fortran\"}},\"end\":\"(?i)(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.default.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(default)\\\\b\"},{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},{\"include\":\"$base\"}]},\"select-type-construct\":{\"begin\":\"(?i)\\\\b(select\\\\s*type)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.selecttype.fortran\"}},\"end\":\"(?i)\\\\b(end\\\\s*select)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endselect.fortran\"}},\"name\":\"meta.block.select.type.fortran\",\"patterns\":[{\"include\":\"#parentheses\"},{\"begin\":\"(?i)\\\\b(?:(class)|(type))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.class.fortran\"},\"2\":{\"name\":\"keyword.control.type.fortran\"}},\"end\":\"(?i)(?=[\\\\n!;])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.default.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(default)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.is.fortran\"}},\"match\":\"(?i)\\\\G\\\\s*\\\\b(is)\\\\b\"},{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},{\"include\":\"$base\"}]},\"sequence-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.sequence.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(sequence)\\\\b\"},\"specification-statements\":{\"patterns\":[{\"include\":\"#attribute-specification-statement\"},{\"include\":\"#common-statement\"},{\"include\":\"#data-statement\"},{\"include\":\"#equivalence-statement\"},{\"include\":\"#implicit-statement\"},{\"include\":\"#namelist-statement\"},{\"include\":\"#use-statement\"}]},\"stop-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(stop)\\\\b(?:\\\\s*\\\\b([a-z]\\\\w*)\\\\b)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.stop.fortran\"},\"2\":{\"name\":\"meta.label.stop.stop\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.control.stop.fortran\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#string-operators\"},{\"include\":\"#invalid-character\"}]},\"string-constant\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.fortran\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.fortran\"}},\"name\":\"string.quoted.single.fortran\",\"patterns\":[{\"match\":\"''\",\"name\":\"constant.character.escape.apostrophe.fortran\"}]},{\"applyEndPatternLast\":1,\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.fortran\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.fortran\"}},\"name\":\"string.quoted.double.fortran\",\"patterns\":[{\"match\":\"\\\"\\\"\",\"name\":\"constant.character.escape.quote.fortran\"}]}]},\"string-line-continuation-operator\":{\"begin\":\"(&)(?=\\\\s*\\\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.line-continuation.fortran\"}},\"end\":\"(?i)^(?:(?=\\\\s*[^!\\\\&\\\\s])|\\\\s*(&))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.line-continuation.fortran\"}},\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"\\\\S.*\",\"name\":\"invalid.error.string-line-cont.fortran\"}]},\"string-operators\":{\"match\":\"(//)\",\"name\":\"keyword.other.concatination.fortran\"},\"submodule-definition\":{\"begin\":\"(?i)(?=\\\\b(submodule)\\\\s*\\\\()\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.submodule.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(submodule)\\\\s*(\\\\()\\\\s*(\\\\w+)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.submodule.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"},\"3\":{\"name\":\"entity.name.class.submodule.fortran\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"patterns\":[]},{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.module.submodule.fortran\"}},\"end\":\"(?i)\\\\s*\\\\b(?:(end\\\\s*submodule)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.endsubmodule.fortran\"},\"2\":{\"name\":\"entity.name.module.submodule.fortran\"},\"3\":{\"name\":\"keyword.other.endsubmodule.fortran\"},\"4\":{\"name\":\"invalid.error.submodule.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))\",\"name\":\"meta.block.specification.submodule.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"subroutine-definition\":{\"begin\":\"(?i)(?=([^\\\\n!\\\"':;](?!\\\\bend))*\\\\bsubroutine\\\\b)\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.subroutine.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bsubroutine\\\\b))\",\"end\":\"(?i)(?=\\\\bsubroutine\\\\b)\",\"name\":\"meta.attribute-list.subroutine.fortran\",\"patterns\":[{\"include\":\"#elemental-attribute\"},{\"include\":\"#module-attribute\"},{\"include\":\"#pure-attribute\"},{\"include\":\"#recursive-attribute\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)\\\\s*\\\\b(subroutine)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.subroutine.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"}},\"end\":\"(?i)\\\\b(?:(end\\\\s*subroutine)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.endsubroutine.fortran\"},\"2\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"3\":{\"name\":\"keyword.other.endsubroutine.fortran\"},\"4\":{\"name\":\"invalid.error.subroutine.fortran\"}},\"patterns\":[{\"begin\":\"\\\\G(?!\\\\s*[\\\\n!;])\",\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.first-line.fortran\",\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#language-binding-attribute\"}]},{\"begin\":\"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))\",\"end\":\"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))\",\"name\":\"meta.block.specification.subroutine.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"end\":\"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]}]},\"sync-all-statement\":{\"begin\":\"(?i)\\\\b(sync (?:all|memory))(\\\\s*(?=\\\\())?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.sync-all-memory.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.sync-all-memory.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"sync-statement\":{\"begin\":\"(?i)\\\\b(sync (?:images|team))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.sync-images-team.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.sync-images-team.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"target-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.target.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(target)\\\\b\"},\"type-specification-statements\":{\"begin\":\"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type|dimension)\\\\b(?![^\\\\n!\\\"':;]*\\\\bfunction\\\\b))\",\"end\":\"(?=[\\\\n!);])\",\"name\":\"meta.specification.type.fortran\",\"patterns\":[{\"include\":\"#types\"},{\"begin\":\"(?=\\\\s*(,|::))\",\"contentName\":\"meta.attribute-list.type-specification-statements.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)|^|(?<=&)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!\\\\&,;])\",\"patterns\":[{\"include\":\"#access-attribute\"},{\"include\":\"#allocatable-attribute\"},{\"include\":\"#asynchronous-attribute\"},{\"include\":\"#codimension-attribute\"},{\"include\":\"#contiguous-attribute\"},{\"include\":\"#dimension-attribute\"},{\"include\":\"#external-attribute\"},{\"include\":\"#intent-attribute\"},{\"include\":\"#intrinsic-attribute\"},{\"include\":\"#language-binding-attribute\"},{\"include\":\"#optional-attribute\"},{\"include\":\"#parameter-attribute\"},{\"include\":\"#pointer-attribute\"},{\"include\":\"#protected-attribute\"},{\"include\":\"#save-attribute\"},{\"include\":\"#target-attribute\"},{\"include\":\"#value-attribute\"},{\"include\":\"#volatile-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"include\":\"#name-list\"}]},\"types\":{\"patterns\":[{\"include\":\"#character-type\"},{\"include\":\"#derived-type\"},{\"include\":\"#logical-type\"},{\"include\":\"#numeric-type\"}]},\"unnamed-control-constructs\":{\"patterns\":[{\"include\":\"#associate-construct\"},{\"include\":\"#block-construct\"},{\"include\":\"#critical-construct\"},{\"include\":\"#do-construct\"},{\"include\":\"#forall-construct\"},{\"include\":\"#if-construct\"},{\"include\":\"#select-case-construct\"},{\"include\":\"#select-type-construct\"},{\"include\":\"#select-rank-construct\"},{\"include\":\"#where-construct\"}]},\"use-statement\":{\"begin\":\"(?i)\\\\b(use)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.use.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"name\":\"meta.statement.use.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"contentName\":\"meta.attribute-list.namelist.fortran\",\"end\":\"(::)|(?=[\\\\n!;])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.fortran\"}},\"patterns\":[{\"begin\":\"(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!,;])\",\"patterns\":[{\"include\":\"#intrinsic-attribute\"},{\"include\":\"#non-intrinsic-attribute\"},{\"include\":\"#invalid-word\"}]}]},{\"begin\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.class.module.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"begin\":\"(,)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"end\":\"(?=::|[\\\\n!;])\",\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(only\\\\s*:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.only.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#operator-keyword\"},{\"include\":\"$base\"}]},{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"contentName\":\"meta.name-list.fortran\",\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#operator-keyword\"},{\"include\":\"$base\"}]}]}]}]},\"user-defined-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.user-defined.fortran\"}},\"match\":\"(?i)\\\\s*(\\\\.[a-z]+\\\\.)\"},\"value-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.value.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(value)\\\\b\"},\"variable\":{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\b(?=[a-z])\",\"end\":\"(?<!\\\\G)\",\"name\":\"meta.parameter.fortran\",\"patterns\":[{\"include\":\"#brackets\"},{\"include\":\"#derived-type-operators\"},{\"include\":\"#parentheses-dummy-variables\"},{\"include\":\"#word\"}]},\"volatile-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.volatile.fortran\"}},\"match\":\"(?i)\\\\s*\\\\b(volatile)\\\\b\"},\"where-construct\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\b(where)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.where.fortran\"}},\"end\":\"(?<!\\\\G)\",\"patterns\":[{\"include\":\"#logical-control-expression\"},{\"begin\":\"(?<=\\\\))(?=\\\\s*[\\\\n!;])\",\"end\":\"(?i)\\\\b(end\\\\s*where)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.endwhere.fortran\"}},\"name\":\"meta.block.where.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(else\\\\s*where)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elsewhere.fortran\"}},\"end\":\"\\\\s*(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"captures\":{\"1\":{\"name\":\"meta.label.elsewhere.fortran\"}},\"match\":\"(?i)(\\\\s*[a-z]\\\\w*)?\"},{\"include\":\"#invalid-word\"}]},{\"include\":\"$base\"}]},{\"begin\":\"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])\",\"end\":\"\\\\n\",\"name\":\"meta.statement.control.where.fortran\",\"patterns\":[{\"include\":\"$base\"}]}]}]},\"while-attribute\":{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(while)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.while.fortran\"}},\"end\":\"(?=[\\\\n!;])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"include\":\"#invalid-word\"}]},\"word\":{\"patterns\":[{\"match\":\"(?i)(?:\\\\G|(?<=%))\\\\s*\\\\b([a-z]\\\\w*)\\\\b\"}]}},\"scopeName\":\"source.fortran.free\",\"aliases\":[\"f90\",\"f95\",\"f03\",\"f08\",\"f18\"]}"))
2
+
3
+ export default [
4
+ lang
5
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,2 @@
1
+ /* Alias fs for fsharp */
2
+ export { default } from './fsharp.mjs'
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,8 @@
1
+ import markdown from './markdown.mjs'
2
+
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"F#\",\"name\":\"fsharp\",\"patterns\":[{\"include\":\"#compiler_directives\"},{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#abstract_definition\"},{\"include\":\"#attributes\"},{\"include\":\"#modules\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#du_declaration\"},{\"include\":\"#record_declaration\"},{\"include\":\"#records\"},{\"include\":\"#strp_inlined\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}],\"repository\":{\"abstract_definition\":{\"begin\":\"\\\\b(static\\\\s+)?(abstract)\\\\s+(member)?(\\\\s+\\\\[<.*>])?\\\\s*([,.0-9_`[:alpha:]\\\\s]+)(<)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"support.function.attribute.fsharp\"},\"5\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(with)\\\\b|=|$\",\"endCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"name\":\"abstract.definition.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\??)([ '.0-9^_`[:alpha:]]+)\\\\s*(:)((?!with\\\\b)\\\\b([ '.0-9^_`\\\\w]+))?\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"(?!with|get|set\\\\b)\\\\s*(['.0-9^_`\\\\w]+)\"},{\"include\":\"#keywords\"}]},\"anonymous_functions\":{\"patterns\":[{\"begin\":\"\\\\b(fun)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(->)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"name\":\"function.anonymous\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(->))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#variables\"}]}]},\"anonymous_record_declaration\":{\"begin\":\"(\\\\{\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\|})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"[ '0-9^_`[:alpha:]]+(:)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([ '0-9^_`[:alpha:]]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]},\"attributes\":{\"patterns\":[{\"begin\":\"\\\\[<\",\"end\":\">?]\",\"name\":\"support.function.attribute.fsharp\",\"patterns\":[{\"include\":\"$self\"}]}]},\"cexprs\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"keyword.fsharp\"}},\"match\":\"\\\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\\\s*\\\\{)\",\"name\":\"cexpr.fsharp\"}]},\"chars\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"('\\\\\\\\?.')\",\"name\":\"char.fsharp\"}]},\"comments\":{\"patterns\":[{\"begin\":\"^\\\\s*(\\\\(\\\\*\\\\*(?!\\\\)))((?!\\\\*\\\\)).)*$\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"^(?!\\\\s*(\\\\*)+\\\\)\\\\s*$)\",\"whileCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}}},{\"begin\":\"(\\\\(\\\\*(?!\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"end\":\"(\\\\*+\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.fsharp\",\"patterns\":[{\"comments\":\"Capture // when inside of (* *) like that the rule which capture comments starting by // is not trigger. See https://github.com/ionide/ionide-fsgrammar/issues/155\",\"match\":\"//\",\"name\":\"fast-capture.comment.line.double-slash.fsharp\"},{\"comments\":\"Capture (*) when inside of (* *) so that it doesn't prematurely end the comment block.\",\"match\":\"\\\\(\\\\*\\\\)\",\"name\":\"fast-capture.comment.line.mul-operator.fsharp\"},{\"include\":\"#comments\"}]},{\"captures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"match\":\"((?<!\\\\()(\\\\*)+\\\\))\",\"name\":\"comment.block.markdown.fsharp.end\"},{\"begin\":\"(?<![!%\\\\&+-/<-@^|])///(?!/)\",\"name\":\"comment.line.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"(?<![!%\\\\&+-/<-@^|])///(?!/)\"},{\"match\":\"(?<![!%\\\\&+-/<-@^|])//(.*)$\",\"name\":\"comment.line.double-slash.fsharp\"}]},\"common_binding_definition\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*((?:static |)member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^['.0-9_[:alpha:]]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"begin\":\"(:)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([ '.0-9?^_`[:alpha:]]*)))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(:)\\\\s*(\\\\^['.0-9_[:alpha:]]+)\\\\s*(when)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(?=:)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(['.0-9^_[:alpha:]]+)\"},{\"match\":\"([()])\",\"name\":\"keyword.symbol.fsharp\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(:)\\\\s*([ '.0-9?^_`[:alpha:]]+)(\\\\|\\\\s*(null))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(->)\\\\s*(\\\\()?\\\\s*([ '.0-9?^_`[:alpha:]]+)*\"},{\"begin\":\"(\\\\*)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([ '.0-9?^_`[:alpha:]]+))*)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(\\\\*)(\\\\s*([ '.0-9?^_`[:alpha:]]+))*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(?==)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(<+(?!\\\\s*\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"beginComment\":\"The group (?![[:space:]]*\\\\) is for protection against overload operator. static member (<)\",\"end\":\"((?<!:)>|\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"endComment\":\"The group (?<!:) prevent us from stopping on :> when using SRTP synthax\",\"patterns\":[{\"include\":\"#generic_declaration\"}]},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#record_signature\"}]},{\"include\":\"#definition\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},\"common_declaration\":{\"patterns\":[{\"begin\":\"\\\\s*(->)\\\\s*([ '.0-9^_`[:alpha:]]+)(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([ '.0-9^_`[:alpha:]]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"\\\\s*(->)\\\\s*(?!with|get|set\\\\b)\\\\b(['.0-9^_`\\\\w]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"(\\\\??)([ '.0-9^_`[:alpha:]]+)\\\\s*(:)(\\\\s*([ '.0-9?^_`[:alpha:]]+)(<))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"},\"5\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([ '.0-9^_`[:alpha:]]+)\"},{\"include\":\"#keywords\"}]}]},\"compiler_directives\":{\"patterns\":[{\"captures\":{},\"match\":\"\\\\s?(#(?:if|elif|elseif|else|endif|light|nowarn|warnon))\",\"name\":\"keyword.control.directive.fsharp\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"match\":\"\\\\b-?[0-9][0-9_]*((\\\\.(?!\\\\.)([0-9][0-9_]*([Ee][-+]??[0-9][0-9_]*)?)?)|([Ee][-+]??[0-9][0-9_]*))\",\"name\":\"constant.numeric.float.fsharp\"},{\"match\":\"\\\\b(-?((0([Xx])\\\\h[_\\\\h]*)|(0([Oo])[0-7][0-7_]*)|(0([Bb])[01][01_]*)|([0-9][0-9_]*)))\",\"name\":\"constant.numeric.integer.nativeint.fsharp\"},{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean.fsharp\"},{\"match\":\"\\\\b(null|void)\\\\b\",\"name\":\"constant.other.fsharp\"}]},\"definition\":{\"patterns\":[{\"begin\":\"\\\\b(let mutable|static let mutable|static let|let inline|let|and inline|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\\\s+rec|mutable)?(\\\\s+\\\\[<.*>])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*]|[_[:alpha:]]([.0-9_[:alpha:]]+)*|``[_[:alpha:]]([.0-9_`[:alpha:]\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*((with(?: inline|))\\\\b|(=|\\\\n+=|(?<==)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(use!??|and!??)\\\\s+(\\\\[[^-=]*]|[_[:alpha:]]([.0-9_[:alpha:]]+)*|``[_[:alpha:]]([.0-9_`[:alpha:]\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"\\\\s*(=)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"(?<=with|and)\\\\s*\\\\b(([gs]et)\\\\s*(?=\\\\())(\\\\[[^-=]*]|[_[:alpha:]]([.0-9_[:alpha:]]+)*|``[_[:alpha:]]([.0-9_`[:alpha:]\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"4\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*(=|\\\\n+=|(?<==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(static val mutable|val mutable|val inline|val)(\\\\s+rec|mutable)?(\\\\s+\\\\[<.*>])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*]|[_[:alpha:]]([,.0-9_[:alpha:]]+)*|``[_[:alpha:]]([,.0-9_`[:alpha:]\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\n$\",\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(new)\\\\b\\\\s+(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]}]},\"double_tick\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"},\"2\":{\"name\":\"variable.other.binding.fsharp\"},\"3\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"(``)([^`]*)(``)\",\"name\":\"variable.other.binding.fsharp\"}]},\"du_declaration\":{\"patterns\":[{\"begin\":\"\\\\b(of)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"$|(\\\\|)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"du_declaration.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(['.0-9<>^_`[:alpha:]]+|``[ '.0-9<>^_[:alpha:]]+``)\\\\s*(:)\\\\s*(['.0-9<>^_`[:alpha:]]+|``[ '.0-9<>^_[:alpha:]]+``)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(``([ '.0-9^_[:alpha:]]+)``|['.0-9^_`[:alpha:]]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]}]},\"generic_declaration\":{\"patterns\":[{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*((?:static |)member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['^])['.0-9_[:alpha:]]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"match\":\"\\\\b(private|to|public|internal|function|yield!?|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let!|return!?|interface|with|abstract|enum|member|try|finally|and|when|or|use!??|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\":\",\"name\":\"keyword.symbol.fsharp\"},{\"include\":\"#constants\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['^])['.0-9_[:alpha:]]+)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['^])['.0-9_[:alpha:]]+)\"},{\"include\":\"#tuple_signature\"},{\"include\":\"#generic_declaration\"}]},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([ '.0-9?^_`[:alpha:]]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words are allowed\",\"match\":\"(?!when|and|or\\\\b)\\\\b(['.0-9^_`\\\\w]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"comments\":\"Prevent captures of `|>` as a keyword when defining custom operator like `<|>`\",\"match\":\"(\\\\|)\"},{\"include\":\"#keywords\"}]},\"keywords\":{\"patterns\":[{\"match\":\"\\\\b(private|public|internal)\\\\b\",\"name\":\"storage.modifier\"},{\"match\":\"\\\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use!??|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"\\\\b(match|yield!??|with|if|then|else|elif|for|in|return!?|try|finally|while|do)(?!')\\\\b\",\"name\":\"keyword.control\"},{\"match\":\"(->|<-)\",\"name\":\"keyword.symbol.arrow.fsharp\"},{\"match\":\"[.?]*(&&&|\\\\|\\\\|\\\\||\\\\^\\\\^\\\\^|~~~|~\\\\+|~-|<<<|>>>|\\\\|>|:>|:\\\\?>|[]:;\\\\[]|<>|[=@]|\\\\|\\\\||&&|[%\\\\&_{|}]|\\\\.\\\\.|[!*-\\\\-/>^]|>=|>>|<=??|[()]|<<)[.?]*\",\"name\":\"keyword.symbol.fsharp\"}]},\"member_declaration\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*((?:static |)member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^['.0-9_[:alpha:]]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^['.0-9_[:alpha:]]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"([()])\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"},\"7\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\??)(['.0-9^_`[:alpha:]]+|``[ ',.0-:^_`[:alpha:]]+``)\\\\s*(:?)(\\\\s*([ '.0-9<>?_`[:alpha:]]+))?(\\\\|\\\\s*(null))?\"},{\"include\":\"#keywords\"}]},\"modules\":{\"patterns\":[{\"begin\":\"\\\\b(?:(namespace global)|(namespace|module)\\\\s*(public|internal|private|rec)?\\\\s+([`|[:alpha:]][ '.0-9_[:alpha:]]*))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"storage.modifier.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s?=|\\\\s|$)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"entity.name.section.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z]['0-9_[:alpha:]]*)\",\"name\":\"entity.name.section.fsharp\"}]},{\"begin\":\"\\\\b(open(?: type|))\\\\s+([`|[:alpha:]]['0-9_[:alpha:]]*)(?=(\\\\.[A-Z][0-9_[:alpha:]]*)*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.open.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)(\\\\p{alpha}['0-9_[:alpha:]]*)\",\"name\":\"entity.name.section.fsharp\"},{\"include\":\"#comments\"}]},{\"begin\":\"^\\\\s*(module)\\\\s+([A-Z]['0-9_[:alpha:]]*)\\\\s*(=)\\\\s*([A-Z]['0-9_[:alpha:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.type.namespace.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.alias.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z]['0-9_[:alpha:]]*)\",\"name\":\"entity.name.section.fsharp\"}]}]},\"record_declaration\":{\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(((mutable)\\\\s\\\\p{alpha}+)|['.0-9<>^_`[:alpha:]]*)\\\\s*((?<!:):(?!:))\\\\s*\",\"beginCaptures\":{\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"$|([;}])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([ '0-9^_`[:alpha:]]+)\"},{\"include\":\"#keywords\"}]},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]}]},\"record_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[ '0-9^_`[:alpha:]]+(=)([ '0-9^_`[:alpha:]]+)\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[ '0-9^_`[:alpha:]]+(=)([ '0-9^_`[:alpha:]]+)\"},{\"include\":\"#record_signature\"}]},{\"include\":\"#keywords\"}]},\"records\":{\"patterns\":[{\"begin\":\"\\\\b(type)\\\\s+(private|internal|public)?\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"storage.modifier.fsharp\"}},\"end\":\"\\\\s*((with)|((as)\\\\s+(['0-9[:alpha:]]+))|(=)|[\\\\n=]|(\\\\(\\\\)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.fsharp\"},\"5\":{\"name\":\"variable.parameter.fsharp\"},\"6\":{\"name\":\"keyword.symbol.fsharp\"},\"7\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"record.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(['.0-9^_[:alpha:]]+|``[ ',.0-:^_`[:alpha:]]+``)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"((?<!:)>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['^])``[ ,.0-:^_`[:alpha:]]+``|(['^])[.0-:^_`[:alpha:]]+)\"},{\"match\":\"\\\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"match\":\"(static member|member|new)\"},{\"include\":\"#common_binding_definition\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"(['.0-9^_`\\\\w]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"storage.modifier.fsharp\"}},\"match\":\"\\\\s*(private|internal|public)\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(=)|[\\\\n=]|(\\\\(\\\\))|(as))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#keywords\"}]}]},\"string_formatter\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.format.specifier.fsharp\"}},\"match\":\"(%0?-?(\\\\d+)?(([at])|(\\\\.\\\\d+)?([EFGMefg])|([Xbcdiosux])|([Obs])|(\\\\+?A)))\",\"name\":\"entity.name.type.format.specifier.fsharp\"}]},\"strings\":{\"patterns\":[{\"begin\":\"(?=[^\\\\\\\\])(@\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")(?!\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.literal.fsharp\",\"patterns\":[{\"match\":\"\\\"(\\\")\",\"name\":\"constant.character.string.escape.fsharp\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\"\\\"\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.triple.fsharp\",\"patterns\":[{\"include\":\"#string_formatter\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.double.fsharp\",\"patterns\":[{\"match\":\"\\\\\\\\$[\\\\t ]*\",\"name\":\"punctuation.separator.string.ignore-eol.fsharp\"},{\"match\":\"\\\\\\\\([\\\"'\\\\\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x\\\\h{2})|(u\\\\h{4})|(U00(0\\\\h|10)\\\\h{4}))\",\"name\":\"constant.character.string.escape.fsharp\"},{\"match\":\"\\\\\\\\(([0-9]{1,3})|(x\\\\S{0,2})|(u\\\\S{0,4})|(U\\\\S{0,8})|\\\\S)\",\"name\":\"invalid.illegal.character.string.fsharp\"},{\"include\":\"#string_formatter\"}]}]},\"strp_inlined\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]}]},\"strp_inlined_body\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#anonymous_functions\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^['.0-9_[:alpha:]]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"variable.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"((?:static |)member)\\\\s*(['.0-9<>^_`[:alpha:]]+|``[ '.0-9<>^_[:alpha:]]+``)\\\\s*(:)\"},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#keywords\"},{\"include\":\"#text\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]},\"text\":{\"patterns\":[{\"match\":\"\\\\\\\\\",\"name\":\"text.fsharp\"}]},\"tuple_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([ '.0-9?^_`[:alpha:]]+))+\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([ '.0-9?^_`[:alpha:]]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"include\":\"#keywords\"}]},\"variables\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"(\\\\??)(``[ ',.0-:^_`[:alpha:]]+``|(?!private|struct\\\\b)\\\\b[ '.0-9<>^_`\\\\w[:alpha:]]+)\"}]}},\"scopeName\":\"source.fsharp\",\"embeddedLangs\":[\"markdown\"],\"aliases\":[\"f#\",\"fs\"]}"))
4
+
5
+ export default [
6
+ ...markdown,
7
+ lang
8
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,2 @@
1
+ /* Alias fsl for jssm */
2
+ export { default } from './jssm.mjs'
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,2 @@
1
+ /* Alias ftl for fluent */
2
+ export { default } from './fluent.mjs'
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,2 @@
1
+ /* Alias gd for gdscript */
2
+ export { default } from './gdscript.mjs'
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs
@@ -0,0 +1,10 @@
1
+ import gdshader from './gdshader.mjs'
2
+ import gdscript from './gdscript.mjs'
3
+
4
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDResource\",\"name\":\"gdresource\",\"patterns\":[{\"include\":\"#embedded_shader\"},{\"include\":\"#embedded_gdscript\"},{\"include\":\"#comment\"},{\"include\":\"#heading\"},{\"include\":\"#key_value\"}],\"repository\":{\"comment\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.gdresource\"}},\"match\":\"(;).*$\\\\n?\",\"name\":\"comment.line.gdresource\"},\"data\":{\"patterns\":[{\"include\":\"#comment\"},{\"begin\":\"(?<!\\\\w)(\\\\{)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.table.inline.gdresource\"}},\"end\":\"\\\\s*(})(?!\\\\w)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.table.inline.gdresource\"}},\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]},{\"begin\":\"(?<!\\\\w)(\\\\[)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.array.gdresource\"}},\"end\":\"\\\\s*(])(?!\\\\w)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.array.gdresource\"}},\"patterns\":[{\"include\":\"#data\"}]},{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.triple.basic.block.gdresource\",\"patterns\":[{\"match\":\"\\\\\\\\([\\\\n \\\"/\\\\\\\\bfnrt]|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.gdresource\"},{\"match\":\"\\\\\\\\[^\\\\n\\\"/\\\\\\\\bfnrt]\",\"name\":\"invalid.illegal.escape.gdresource\"}]},{\"match\":\"\\\"res://[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"support.function.any-method.gdresource\"},{\"match\":\"(?<=type=)\\\"[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"support.class.library.gdresource\"},{\"match\":\"(?<=NodePath\\\\(|parent=|name=)\\\"[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"constant.character.escape.gdresource\"},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.basic.line.gdresource\",\"patterns\":[{\"match\":\"\\\\\\\\([\\\\n \\\"/\\\\\\\\bfnrt]|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.gdresource\"},{\"match\":\"\\\\\\\\[^\\\\n\\\"/\\\\\\\\bfnrt]\",\"name\":\"invalid.illegal.escape.gdresource\"}]},{\"match\":\"'.*?'\",\"name\":\"string.quoted.single.literal.line.gdresource\"},{\"match\":\"(?<!\\\\w)(true|false)(?!\\\\w)\",\"name\":\"constant.language.gdresource\"},{\"match\":\"(?<!\\\\w)([-+]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\\\.(0|([1-9](([0-9]|_[0-9])+)?)))?[Ee][-+]?[1-9]_?[0-9]*|\\\\.[0-9_]*))(?!\\\\w)\",\"name\":\"constant.numeric.float.gdresource\"},{\"match\":\"(?<!\\\\w)([-+]?(0|([1-9](([0-9]|_[0-9])+)?)))(?!\\\\w)\",\"name\":\"constant.numeric.integer.gdresource\"},{\"match\":\"(?<!\\\\w)([-+]?inf)(?!\\\\w)\",\"name\":\"constant.numeric.inf.gdresource\"},{\"match\":\"(?<!\\\\w)([-+]?nan)(?!\\\\w)\",\"name\":\"constant.numeric.nan.gdresource\"},{\"match\":\"(?<!\\\\w)(0x((\\\\h((_??\\\\h)+)?)))(?!\\\\w)\",\"name\":\"constant.numeric.hex.gdresource\"},{\"match\":\"(?<!\\\\w)(0o[0-7](_?[0-7])*)(?!\\\\w)\",\"name\":\"constant.numeric.oct.gdresource\"},{\"match\":\"(?<!\\\\w)(0b[01](_?[01])*)(?!\\\\w)\",\"name\":\"constant.numeric.bin.gdresource\"},{\"begin\":\"(?<!\\\\w)(Vector2i??|Vector3i??|Color|Rect2i??|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|Object|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|StringName|Quaternion|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedColorArray)(\\\\()\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.library.gdresource\"}},\"end\":\"\\\\s?(\\\\))\",\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]},{\"begin\":\"(?<!\\\\w)((?:Ext|Sub)Resource)(\\\\()\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.gdresource\"}},\"end\":\"\\\\s?(\\\\))\",\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]}]},\"embedded_gdscript\":{\"begin\":\"(script/source) = \\\"\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"}},\"end\":\"\\\"\",\"patterns\":[{\"include\":\"source.gdscript\"}]},\"embedded_shader\":{\"begin\":\"(code) = \\\"\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"}},\"end\":\"\\\"\",\"name\":\"meta.embedded.block.gdshader\",\"patterns\":[{\"include\":\"source.gdshader\"}]},\"heading\":{\"begin\":\"\\\\[([_a-z]*)\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.gdresource\"}},\"end\":\"]\",\"patterns\":[{\"include\":\"#heading_properties\"},{\"include\":\"#data\"}]},\"heading_properties\":{\"patterns\":[{\"match\":\"(\\\\s*[-A-Z_a-z][-0-9A-Z_a-z]*\\\\s*=)(?=\\\\s*$)\",\"name\":\"invalid.illegal.noValue.gdresource\"},{\"begin\":\"\\\\s*([-A-Z_a-z]\\\\S*|\\\".+\\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"},\"2\":{\"name\":\"punctuation.definition.keyValue.gdresource\"}},\"end\":\"($|(?==)|,?|\\\\s*(?=}))\",\"patterns\":[{\"include\":\"#data\"}]}]},\"key_value\":{\"patterns\":[{\"match\":\"(\\\\s*[-A-Z_a-z][-0-9A-Z_a-z]*\\\\s*=)(?=\\\\s*$)\",\"name\":\"invalid.illegal.noValue.gdresource\"},{\"begin\":\"\\\\s*([-A-Z_a-z]\\\\S*|\\\".+\\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"},\"2\":{\"name\":\"punctuation.definition.keyValue.gdresource\"}},\"end\":\"($|(?==)|,|\\\\s*(?=}))\",\"patterns\":[{\"include\":\"#data\"}]}]}},\"scopeName\":\"source.gdresource\",\"embeddedLangs\":[\"gdshader\",\"gdscript\"],\"aliases\":[\"tscn\",\"tres\"]}"))
5
+
6
+ export default [
7
+ ...gdshader,
8
+ ...gdscript,
9
+ lang
10
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ declare const langs: LanguageRegistration[]
3
+ export default langs