@codingame/monaco-editor-wrapper 3.9.2 → 4.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/dist/C2Hs-configuration.json.js +3 -0
  2. package/dist/C2Hs.json.js +3 -0
  3. package/dist/COBOL.tmLanguage.json.js +3 -0
  4. package/dist/Erlang.plist.js +2 -1751
  5. package/dist/Hsc2Hs-configuration.json.js +3 -0
  6. package/dist/Hsc2Hs.json.js +3 -0
  7. package/dist/JavaProperties.tmLanguage.json.js +3 -0
  8. package/dist/Kotlin.tmLanguage.js +2 -723
  9. package/dist/META.json.js +3 -0
  10. package/dist/META.json2.js +3 -0
  11. package/dist/Markdown Redcarpet.json.js +3 -0
  12. package/dist/RMarkdown.json.js +3 -0
  13. package/dist/Rcpp.json.js +3 -0
  14. package/dist/Rd (R Documentation).json.js +3 -0
  15. package/dist/Scala.tmLanguage.json.js +3 -0
  16. package/dist/_commonjsHelpers.js +35 -0
  17. package/dist/_rollupPluginBabelHelpers.js +1 -1
  18. package/dist/add.svg.js +3 -0
  19. package/dist/add.svg2.js +3 -0
  20. package/dist/adddep-dark.svg.js +3 -0
  21. package/dist/adddep-light.svg.js +3 -0
  22. package/dist/alex.json.js +3 -0
  23. package/dist/angular-directives.json.js +3 -0
  24. package/dist/angular-interpolations.json.js +3 -0
  25. package/dist/angular-template-language-configuration.json.js +3 -0
  26. package/dist/arrow-circle-up-dark.svg.js +3 -0
  27. package/dist/arrow-circle-up-light.svg.js +3 -0
  28. package/dist/aspnetcorerazor.tmLanguage.json.js +3 -0
  29. package/dist/atd.json.js +3 -0
  30. package/dist/book-dark.svg.js +3 -0
  31. package/dist/book-light.svg.js +3 -0
  32. package/dist/book-open-dark.svg.js +3 -0
  33. package/dist/book-open-light.svg.js +3 -0
  34. package/dist/buildtarget.json.js +3 -0
  35. package/dist/cabal-configuration.json.js +3 -0
  36. package/dist/cabal.json.js +3 -0
  37. package/dist/codeblock-cabal.json.js +3 -0
  38. package/dist/codeblock-haskell.json.js +3 -0
  39. package/dist/codeblock-literate-haskell.json.js +3 -0
  40. package/dist/codeblock.json.js +3 -0
  41. package/dist/codeblock.json2.js +3 -0
  42. package/dist/configuration/index.d.ts +0 -1
  43. package/dist/cram.json.js +3 -0
  44. package/dist/csharp.json.js +3 -0
  45. package/dist/css.worker.js +1 -1
  46. package/dist/d.json.js +3 -0
  47. package/dist/d.json2.js +3 -0
  48. package/dist/dart-language-configuration.json.js +3 -0
  49. package/dist/dart.json.js +3 -0
  50. package/dist/dcf-configuration.json.js +3 -0
  51. package/dist/dcf.json.js +3 -0
  52. package/dist/diet.json.js +3 -0
  53. package/dist/diet.json2.js +3 -0
  54. package/dist/diet.json3.js +3 -0
  55. package/dist/django-html.tmLanguage.json.js +3 -0
  56. package/dist/django-txt.tmLanguage.json.js +3 -0
  57. package/dist/dml.json.js +3 -0
  58. package/dist/document-search-dark.svg.js +3 -0
  59. package/dist/document-search-light.svg.js +3 -0
  60. package/dist/documentation-inverse.svg.js +3 -0
  61. package/dist/documentation.svg.js +3 -0
  62. package/dist/dub-convert-inverse.svg.js +3 -0
  63. package/dist/dub-convert.svg.js +3 -0
  64. package/dist/dune-project.json.js +3 -0
  65. package/dist/dune-project.json2.js +3 -0
  66. package/dist/dune-workspace.json.js +3 -0
  67. package/dist/dune.json.js +3 -0
  68. package/dist/dune.json2.js +3 -0
  69. package/dist/dune.json3.js +3 -0
  70. package/dist/edit-dub-inverse.svg.js +3 -0
  71. package/dist/edit-dub.svg.js +3 -0
  72. package/dist/edit-source-inverse.svg.js +3 -0
  73. package/dist/edit-source.svg.js +3 -0
  74. package/dist/eex-language-configuration.json.js +3 -0
  75. package/dist/eex.json.js +3 -0
  76. package/dist/elixir-language-configuration.json.js +3 -0
  77. package/dist/elixir.json.js +3 -0
  78. package/dist/erlang.configuration.json.js +3 -0
  79. package/dist/erlang.json.js +3 -0
  80. package/dist/expression.json.js +3 -0
  81. package/dist/extension-web.js.js +3 -0
  82. package/dist/extension-web.js2.js +3 -0
  83. package/dist/extension.browser.js.js +3 -0
  84. package/dist/extensions.d.ts +35 -0
  85. package/dist/features/htmlContribution.js +0 -1
  86. package/dist/features/jsonContribution.d.ts +2 -4
  87. package/dist/features/jsonContribution.js +10 -29
  88. package/dist/features/typescriptContribution.js +2 -2
  89. package/dist/file_type_java.svg.js +3 -0
  90. package/dist/file_type_scala.svg.js +3 -0
  91. package/dist/filters.json.js +3 -0
  92. package/dist/focus-dark.svg.js +3 -0
  93. package/dist/focus-light.svg.js +3 -0
  94. package/dist/general.json.js +3 -0
  95. package/dist/get-inverse.svg.js +3 -0
  96. package/dist/get.svg.js +3 -0
  97. package/dist/go.json.js +3 -0
  98. package/dist/go.mod.language-configuration.json.js +3 -0
  99. package/dist/go.mod.tmGrammar.json.js +3 -0
  100. package/dist/go.sum.tmGrammar.json.js +3 -0
  101. package/dist/govulncheck.tmGrammar.json.js +3 -0
  102. package/dist/happy.json.js +3 -0
  103. package/dist/haskell-configuration.json.js +3 -0
  104. package/dist/haskell.json.js +3 -0
  105. package/dist/hot-reload-tb.png.js +3 -0
  106. package/dist/hot-reload.svg.js +3 -0
  107. package/dist/html-eex.json.js +3 -0
  108. package/dist/html.worker.js +1 -1
  109. package/dist/index.d.ts +2 -3
  110. package/dist/index.js +9 -6
  111. package/dist/index2.js +2 -1351
  112. package/dist/inline-styles.json.js +3 -0
  113. package/dist/inline-template.json.js +3 -0
  114. package/dist/inspector.svg.js +3 -0
  115. package/dist/java-properties-configuration.json.js +3 -0
  116. package/dist/java.json.js +3 -0
  117. package/dist/javascript.json.js +3 -0
  118. package/dist/json.worker.js +1 -1
  119. package/dist/jvm-bytecode-verbose.json.js +3 -0
  120. package/dist/jvm-bytecode.json.js +3 -0
  121. package/dist/kotlin.configuration.json.js +3 -0
  122. package/dist/kotlin.json.js +3 -0
  123. package/dist/lang-config.json.js +3 -0
  124. package/dist/language-configuration.json.js +3 -0
  125. package/dist/language-configuration.json2.js +3 -0
  126. package/dist/language-configuration.json3.js +3 -0
  127. package/dist/language-configuration.json4.js +3 -0
  128. package/dist/language-configuration.json5.js +3 -0
  129. package/dist/language-configuration.json6.js +3 -0
  130. package/dist/language-configuration.json7.js +3 -0
  131. package/dist/language-configuration.json8.js +3 -0
  132. package/dist/languages/index.d.ts +0 -2
  133. package/dist/literate-haskell-configuration.json.js +3 -0
  134. package/dist/literateHaskell.json.js +3 -0
  135. package/dist/main.js +839 -3070
  136. package/dist/markdown-svelte-css.json.js +3 -0
  137. package/dist/markdown-svelte-js.json.js +3 -0
  138. package/dist/markdown-svelte.json.js +3 -0
  139. package/dist/menhir-action.json.js +3 -0
  140. package/dist/menhir.json.js +3 -0
  141. package/dist/menhir.json2.js +3 -0
  142. package/dist/merlin.json.js +3 -0
  143. package/dist/monaco.d.ts +6 -9
  144. package/dist/oasis.json.js +3 -0
  145. package/dist/oasis.json2.js +3 -0
  146. package/dist/ocaml-markdown-codeblock.json.js +3 -0
  147. package/dist/ocaml.interface.json.js +3 -0
  148. package/dist/ocaml.json.js +3 -0
  149. package/dist/ocaml.json2.js +3 -0
  150. package/dist/ocaml.json3.js +3 -0
  151. package/dist/ocamlbuild.json.js +3 -0
  152. package/dist/ocamlbuild.json2.js +3 -0
  153. package/dist/ocamldoc.json.js +3 -0
  154. package/dist/ocamlformat.json.js +3 -0
  155. package/dist/ocamlformat.json2.js +3 -0
  156. package/dist/ocamllex.json.js +3 -0
  157. package/dist/ocamllex.json2.js +3 -0
  158. package/dist/ocamllex.json3.js +3 -0
  159. package/dist/opam-install.json.js +3 -0
  160. package/dist/opam-install.json2.js +3 -0
  161. package/dist/opam.json.js +3 -0
  162. package/dist/opam.json2.js +3 -0
  163. package/dist/outdated-inverse.svg.js +3 -0
  164. package/dist/outdated.svg.js +3 -0
  165. package/dist/pascal.configuration.json.js +3 -0
  166. package/dist/pascal.json.js +3 -0
  167. package/dist/pascal.tmLanguage.js +2 -168
  168. package/dist/performance.svg.js +3 -0
  169. package/dist/pgsql.tmLanguage.js +2 -283
  170. package/dist/pip-requirements.json.js +3 -0
  171. package/dist/pip-requirements.tmLanguage.json.js +3 -0
  172. package/dist/plus-dark.svg.js +3 -0
  173. package/dist/plus-light.svg.js +3 -0
  174. package/dist/postcss.json.js +3 -0
  175. package/dist/preview-right-dark.svg.js +3 -0
  176. package/dist/preview-right-light.svg.js +3 -0
  177. package/dist/pug-svelte-dotblock.json.js +3 -0
  178. package/dist/pug-svelte-tags.json.js +3 -0
  179. package/dist/pug-svelte.json.js +3 -0
  180. package/dist/r-configuration.json.js +3 -0
  181. package/dist/r-snippets.json.js +3 -0
  182. package/dist/r.json.js +3 -0
  183. package/dist/rbuildignore-configuration.json.js +3 -0
  184. package/dist/rbuildignore.json.js +3 -0
  185. package/dist/rd-configuration.json.js +3 -0
  186. package/dist/reason-markdown-codeblock.json.js +3 -0
  187. package/dist/reason.json.js +3 -0
  188. package/dist/reason.json2.js +3 -0
  189. package/dist/ref-group-by-type-dark.svg.js +3 -0
  190. package/dist/ref-group-by-type-light.svg.js +3 -0
  191. package/dist/ref-ungroup-by-type-dark.svg.js +3 -0
  192. package/dist/ref-ungroup-by-type-light.svg.js +3 -0
  193. package/dist/refresh-dark.svg.js +3 -0
  194. package/dist/refresh-dark.svg2.js +3 -0
  195. package/dist/refresh-light.svg.js +3 -0
  196. package/dist/refresh-light.svg2.js +3 -0
  197. package/dist/repl.svg.js +3 -0
  198. package/dist/repl.svg2.js +3 -0
  199. package/dist/rmarkdown.json2.js +3 -0
  200. package/dist/rmd-configuration.json.js +3 -0
  201. package/dist/rnamespace-configuration.json.js +3 -0
  202. package/dist/rnamespace.json.js +3 -0
  203. package/dist/save.svg.js +3 -0
  204. package/dist/save.svg2.js +3 -0
  205. package/dist/scalameta-logo.png.js +3 -0
  206. package/dist/sdl.json.js +3 -0
  207. package/dist/semanticdb.json.js +3 -0
  208. package/dist/services.d.ts +4 -0
  209. package/dist/solidity.configuration.json.js +3 -0
  210. package/dist/solidity.json.js +3 -0
  211. package/dist/solidity.json2.js +3 -0
  212. package/dist/svelte.json.js +3 -0
  213. package/dist/svelte.tmLanguage.json.js +3 -0
  214. package/dist/switch-impl-intf.dark.svg.js +3 -0
  215. package/dist/switch-impl-intf.light.svg.js +3 -0
  216. package/dist/systemverilog.json.js +3 -0
  217. package/dist/systemverilog.tmLanguage.json.js +3 -0
  218. package/dist/tags.json.js +3 -0
  219. package/dist/tasty.json.js +3 -0
  220. package/dist/tcl.json.js +3 -0
  221. package/dist/tcl.json2.js +3 -0
  222. package/dist/template.json.js +3 -0
  223. package/dist/theme/index.d.ts +1 -4
  224. package/dist/tools/EditorOpenHandlerRegistry.d.ts +3 -2
  225. package/dist/ts.worker.js +1 -1
  226. package/dist/typescript.json.js +3 -0
  227. package/dist/upgrade-inverse.svg.js +3 -0
  228. package/dist/upgrade.svg.js +3 -0
  229. package/dist/vim.js +37 -36
  230. package/dist/vs2019_dark.json.js +3 -0
  231. package/dist/vs2019_light.json.js +3 -0
  232. package/dist/worker.js +14 -2
  233. package/dist/x-dark.svg.js +3 -0
  234. package/dist/x-light.svg.js +3 -0
  235. package/package.json +40 -42
  236. package/stats.html +90 -1429
  237. package/dist/COBOL.tmLanguage.js +0 -172
  238. package/dist/HTML (Eex)2.js +0 -100
  239. package/dist/JSON.tmLanguage.js +0 -221
  240. package/dist/JSONC.tmLanguage.js +0 -221
  241. package/dist/JavaProperties.tmLanguage.js +0 -116
  242. package/dist/JavaScript.tmLanguage.js +0 -5922
  243. package/dist/JavaScriptReact.tmLanguage.js +0 -5922
  244. package/dist/META.js +0 -100
  245. package/dist/MagicPython.tmLanguage.js +0 -4221
  246. package/dist/MagicRegExp.tmLanguage.js +0 -505
  247. package/dist/Markdown Redcarpet.js +0 -221
  248. package/dist/RMarkdown.js +0 -25
  249. package/dist/Rcpp.js +0 -50
  250. package/dist/Rd (R Documentation).js +0 -131
  251. package/dist/Regular Expressions (JavaScript).tmLanguage.js +0 -166
  252. package/dist/Scala.tmLanguage.js +0 -1291
  253. package/dist/TypeScript.tmLanguage.js +0 -5673
  254. package/dist/TypeScriptReact.tmLanguage.js +0 -5922
  255. package/dist/angular.js +0 -74
  256. package/dist/asp-vb-net.tmlanguage.js +0 -247
  257. package/dist/aspnetcorerazor.js +0 -72
  258. package/dist/aspnetcorerazor.tmLanguage.js +0 -1522
  259. package/dist/atd.js +0 -110
  260. package/dist/atd2.js +0 -114
  261. package/dist/buildignore.r.js +0 -5
  262. package/dist/buildtarget.js +0 -53
  263. package/dist/c.js +0 -101
  264. package/dist/c.tmLanguage.js +0 -3565
  265. package/dist/cabal.js +0 -10
  266. package/dist/cabal.tmLanguage.js +0 -66
  267. package/dist/clojure.js +0 -68
  268. package/dist/clojure.tmLanguage.js +0 -439
  269. package/dist/cobol.js +0 -6
  270. package/dist/cobol2.js +0 -337
  271. package/dist/codeblock-cabal.js +0 -42
  272. package/dist/codeblock-haskell.js +0 -42
  273. package/dist/codeblock-literate-haskell.js +0 -42
  274. package/dist/codeblock.js +0 -59
  275. package/dist/codeblock2.js +0 -36
  276. package/dist/codeblock3.js +0 -95
  277. package/dist/coffeescript-coffeescript.code-snippets.js +0 -18
  278. package/dist/coffeescript.js +0 -91
  279. package/dist/coffeescript.tmLanguage.js +0 -1324
  280. package/dist/configuration/files.d.ts +0 -6
  281. package/dist/cpp-c.code-snippets.js +0 -18
  282. package/dist/cpp-cpp.code-snippets.js +0 -18
  283. package/dist/cpp.js +0 -101
  284. package/dist/cpp.tmLanguage.js +0 -16485
  285. package/dist/cpptools.js +0 -2608
  286. package/dist/cram.js +0 -257
  287. package/dist/csharp.js +0 -92
  288. package/dist/csharp.tmLanguage.js +0 -4992
  289. package/dist/css.js +0 -106
  290. package/dist/css.tmLanguage.js +0 -1873
  291. package/dist/cuda-cpp.js +0 -101
  292. package/dist/cuda-cpp.tmLanguage.js +0 -19993
  293. package/dist/d-diet.js +0 -92
  294. package/dist/d.js +0 -3173
  295. package/dist/d2.js +0 -97
  296. package/dist/d3.js +0 -609
  297. package/dist/dart.js +0 -543
  298. package/dist/dart2.js +0 -103
  299. package/dist/dart3.js +0 -1124
  300. package/dist/dcf.js +0 -93
  301. package/dist/debian-control.r.js +0 -69
  302. package/dist/diet.js +0 -758
  303. package/dist/diet2.js +0 -100
  304. package/dist/django-html.js +0 -155
  305. package/dist/django-html.tmLanguage.js +0 -715
  306. package/dist/django-txt.js +0 -155
  307. package/dist/django-txt.tmLanguage.js +0 -269
  308. package/dist/dml.js +0 -169
  309. package/dist/dml2.js +0 -90
  310. package/dist/dockercompose.js +0 -82
  311. package/dist/dpp.js +0 -97
  312. package/dist/dscript.js +0 -90
  313. package/dist/dune-project.js +0 -481
  314. package/dist/dune-project2.js +0 -65
  315. package/dist/dune-workspace.js +0 -298
  316. package/dist/dune-workspace2.js +0 -65
  317. package/dist/dune.js +0 -2962
  318. package/dist/dune2.js +0 -65
  319. package/dist/eex.js +0 -55
  320. package/dist/elixir-snippets.js +0 -184
  321. package/dist/elixir.js +0 -2341
  322. package/dist/elixir2.js +0 -69
  323. package/dist/elixir3.js +0 -40
  324. package/dist/erlang-erlang.js +0 -195
  325. package/dist/erlang.js +0 -81
  326. package/dist/erlang2.js +0 -92
  327. package/dist/expression.js +0 -846
  328. package/dist/features/extensionConfigurations.d.ts +0 -1
  329. package/dist/features/extensionConfigurations.js +0 -44
  330. package/dist/fsharp-fsharp.code-snippets.js +0 -18
  331. package/dist/fsharp.js +0 -80
  332. package/dist/fsharp.tmLanguage.js +0 -1844
  333. package/dist/go.js +0 -103
  334. package/dist/go.mod.js +0 -8
  335. package/dist/go.mod.tmGrammar.js +0 -182
  336. package/dist/go.sum.tmGrammar.js +0 -55
  337. package/dist/go.tmLanguage.js +0 -1025
  338. package/dist/go.work.js +0 -8
  339. package/dist/govulncheck.tmGrammar.js +0 -138
  340. package/dist/groovy-groovy.code-snippets.js +0 -229
  341. package/dist/groovy.js +0 -79
  342. package/dist/groovy.tmLanguage.js +0 -1391
  343. package/dist/haskell.js +0 -88
  344. package/dist/haskell.tmLanguage.js +0 -629
  345. package/dist/haskell2.js +0 -16
  346. package/dist/html (eex).js +0 -31
  347. package/dist/html-derivative.tmLanguage.js +0 -57
  348. package/dist/html-html.code-snippets.js +0 -20
  349. package/dist/html.js +0 -11
  350. package/dist/html.tmLanguage.js +0 -2652
  351. package/dist/html.tmLanguage2.js +0 -107
  352. package/dist/inline-styles.js +0 -104
  353. package/dist/inline-template.js +0 -88
  354. package/dist/jade.js +0 -11
  355. package/dist/java-java.js +0 -125
  356. package/dist/java-properties.js +0 -73
  357. package/dist/java.js +0 -95
  358. package/dist/java.tmLanguage.js +0 -1863
  359. package/dist/java2.js +0 -888
  360. package/dist/javascript-javascript.code-snippets.js +0 -205
  361. package/dist/javascript.js +0 -197
  362. package/dist/javascriptreact.js +0 -197
  363. package/dist/jsdoc.js.injection.tmLanguage.js +0 -32
  364. package/dist/jsdoc.ts.injection.tmLanguage.js +0 -32
  365. package/dist/json.js +0 -75
  366. package/dist/jsonc.js +0 -75
  367. package/dist/jsx-tags.js +0 -158
  368. package/dist/jvm-bytecode-verbose.js +0 -1231
  369. package/dist/jvm-bytecode.js +0 -565
  370. package/dist/kotlin-kotlin.js +0 -117
  371. package/dist/kotlin.js +0 -103
  372. package/dist/kotlinscript.js +0 -103
  373. package/dist/languages/extensions/extensionConfigurationLoader.d.ts +0 -3
  374. package/dist/languages/extensions/grammarLoader.d.ts +0 -2
  375. package/dist/languages/extensions/languageConfigurationLoader.d.ts +0 -2
  376. package/dist/languages/extensions/snippetLoader.d.ts +0 -2
  377. package/dist/languages/extensions/themeLoader.d.ts +0 -2
  378. package/dist/languages/snippets/index.d.ts +0 -1
  379. package/dist/languages/textMate/index.d.ts +0 -1
  380. package/dist/languages/textMate/semanticTokens.d.ts +0 -1
  381. package/dist/literate haskell.js +0 -88
  382. package/dist/literateHaskell.tmLanguage.js +0 -70
  383. package/dist/lua.js +0 -84
  384. package/dist/lua.tmLanguage.js +0 -906
  385. package/dist/lua2.js +0 -2859
  386. package/dist/markdown-basics-markdown.code-snippets.js +0 -121
  387. package/dist/markdown-svelte-css.js +0 -37
  388. package/dist/markdown-svelte-js.js +0 -37
  389. package/dist/markdown-svelte.js +0 -59
  390. package/dist/markdown-vue.js +0 -54
  391. package/dist/markdown.js +0 -49
  392. package/dist/markdown.tmLanguage.js +0 -3006
  393. package/dist/menhir-action.js +0 -51
  394. package/dist/menhir.js +0 -597
  395. package/dist/merlin.js +0 -111
  396. package/dist/namespace.r.js +0 -88
  397. package/dist/oasis.js +0 -99
  398. package/dist/objective-c.js +0 -79
  399. package/dist/objective-c.tmLanguage.js +0 -3763
  400. package/dist/objective-cpp.js +0 -79
  401. package/dist/ocaml-dune-project.js +0 -38
  402. package/dist/ocaml-dune.js +0 -53
  403. package/dist/ocaml-markdown-codeblock.js +0 -42
  404. package/dist/ocaml-ocaml.js +0 -88
  405. package/dist/ocaml-ocamllex.js +0 -12
  406. package/dist/ocaml.META.js +0 -29
  407. package/dist/ocaml.interface.js +0 -292
  408. package/dist/ocaml.interface2.js +0 -114
  409. package/dist/ocaml.js +0 -903
  410. package/dist/ocaml.menhir.js +0 -81
  411. package/dist/ocaml.oasis.js +0 -18
  412. package/dist/ocaml.ocamlbuild.js +0 -45
  413. package/dist/ocaml.ocamlformat.js +0 -8
  414. package/dist/ocaml.ocamllex.js +0 -60
  415. package/dist/ocaml.opam-install.js +0 -49
  416. package/dist/ocaml.opam.js +0 -69
  417. package/dist/ocaml2.js +0 -114
  418. package/dist/ocaml3.js +0 -136
  419. package/dist/ocamlbuild.js +0 -189
  420. package/dist/ocamldoc.js +0 -54
  421. package/dist/ocamlformat.js +0 -206
  422. package/dist/ocamllex.js +0 -133
  423. package/dist/omnisharp-csharp.js +0 -508
  424. package/dist/omnisharp.js +0 -590
  425. package/dist/opam-install.js +0 -40
  426. package/dist/opam.js +0 -140
  427. package/dist/pascal-pascal.js +0 -382
  428. package/dist/pascal.js +0 -80
  429. package/dist/pascal2.js +0 -26
  430. package/dist/perl.js +0 -93
  431. package/dist/perl.tmLanguage.js +0 -2986
  432. package/dist/perl6.js +0 -86
  433. package/dist/perl6.tmLanguage.js +0 -323
  434. package/dist/php-php.code-snippets.js +0 -267
  435. package/dist/php.js +0 -154
  436. package/dist/php.tmLanguage.js +0 -4008
  437. package/dist/pip-requirements.js +0 -8
  438. package/dist/pip-requirements.tmLanguage.js +0 -89
  439. package/dist/plaintext.js +0 -11
  440. package/dist/platform.tmLanguage.js +0 -1135
  441. package/dist/postcss.src.yaml.js +0 -393
  442. package/dist/postgres.js +0 -80
  443. package/dist/postgresql.js +0 -75
  444. package/dist/powershell.js +0 -107
  445. package/dist/powershell.tmLanguage.js +0 -1037
  446. package/dist/pug-svelte-dotblock.js +0 -69
  447. package/dist/pug-svelte-tags.js +0 -215
  448. package/dist/pug-svelte.js +0 -307
  449. package/dist/python.js +0 -236
  450. package/dist/r.js +0 -664
  451. package/dist/r2.js +0 -88
  452. package/dist/rbuildignore.js +0 -39
  453. package/dist/rd.js +0 -81
  454. package/dist/reason-markdown-codeblock.js +0 -42
  455. package/dist/reason.js +0 -79
  456. package/dist/rmd.js +0 -84
  457. package/dist/rnamespace.js +0 -283
  458. package/dist/ruby.js +0 -95
  459. package/dist/ruby.tmLanguage.js +0 -2784
  460. package/dist/rust.js +0 -84
  461. package/dist/rust.tmLanguage.js +0 -1178
  462. package/dist/sassdoc.tmLanguage.js +0 -362
  463. package/dist/scala.js +0 -85
  464. package/dist/scalameta.js +0 -223
  465. package/dist/scss.js +0 -117
  466. package/dist/scss.tmLanguage.js +0 -1887
  467. package/dist/sdl.js +0 -162
  468. package/dist/sdl2.js +0 -90
  469. package/dist/semanticdb.js +0 -62
  470. package/dist/shell-unix-bash.tmLanguage.js +0 -2016
  471. package/dist/shellscript.js +0 -93
  472. package/dist/solargraph.js +0 -192
  473. package/dist/solidity-solidity.js +0 -213
  474. package/dist/solidity.js +0 -1187
  475. package/dist/solidity2.js +0 -71
  476. package/dist/solidity3.js +0 -137
  477. package/dist/sql.js +0 -99
  478. package/dist/sql.tmLanguage.js +0 -636
  479. package/dist/svelte.js +0 -120
  480. package/dist/svelte.svelte-vscode-javascript.js +0 -45
  481. package/dist/svelte.svelte-vscode-svelte.js +0 -46
  482. package/dist/svelte.svelte-vscode-typescript.js +0 -43
  483. package/dist/svelte.svelte-vscode.js +0 -383
  484. package/dist/svelte.tmLanguage.src.yaml.js +0 -1099
  485. package/dist/svlangserver-systemverilog.js +0 -395
  486. package/dist/svlangserver.js +0 -85
  487. package/dist/swift-swift.code-snippets.js +0 -183
  488. package/dist/swift.js +0 -90
  489. package/dist/swift.tmLanguage.js +0 -3312
  490. package/dist/systemverilog.js +0 -187
  491. package/dist/systemverilog.tmLanguage.js +0 -1259
  492. package/dist/tasty.js +0 -72
  493. package/dist/tcl-tcl.js +0 -151
  494. package/dist/tcl.js +0 -78
  495. package/dist/tcl.tmlanguage.yaml.js +0 -5484
  496. package/dist/template.js +0 -207
  497. package/dist/theme-defaults~dark_plus.js +0 -207
  498. package/dist/theme-defaults~dark_plus_experimental.js +0 -146
  499. package/dist/theme-defaults~dark_vs.js +0 -412
  500. package/dist/theme-defaults~hc_black.js +0 -471
  501. package/dist/theme-defaults~hc_light.js +0 -595
  502. package/dist/theme-defaults~light_plus.js +0 -209
  503. package/dist/theme-defaults~light_plus_experimental.js +0 -159
  504. package/dist/theme-defaults~light_vs.js +0 -441
  505. package/dist/typescript-basics-typescript.code-snippets.js +0 -313
  506. package/dist/typescript-language-features.js +0 -1090
  507. package/dist/typescript.js +0 -216
  508. package/dist/typescriptreact.js +0 -216
  509. package/dist/vb-vb.code-snippets.js +0 -88
  510. package/dist/vb.js +0 -79
  511. package/dist/verilog.js +0 -187
  512. package/dist/volar-vue.js +0 -343
  513. package/dist/vscode-R-r-snippets.js +0 -534
  514. package/dist/vscode-R-rmarkdown.js +0 -461
  515. package/dist/vscode-R.js +0 -648
  516. package/dist/vscode-django-filters.js +0 -340
  517. package/dist/vscode-django.js +0 -37
  518. package/dist/vscode-go-go.js +0 -276
  519. package/dist/vscode-go.js +0 -1604
  520. package/dist/vscode-groovy.js +0 -28
  521. package/dist/vscode-python.js +0 -686
  522. package/dist/vue-directives.js +0 -25
  523. package/dist/vue-interpolations.js +0 -25
  524. package/dist/vue-sfc-style-variable-injection.js +0 -63
  525. package/dist/vue.js +0 -151
  526. package/dist/vue.tmLanguage.js +0 -1218
  527. package/dist/xml.js +0 -116
  528. package/dist/xml.tmLanguage.js +0 -395
  529. package/dist/xsl.js +0 -39
  530. package/dist/xsl.tmLanguage.js +0 -102
  531. package/dist/yaml.js +0 -82
  532. package/dist/yaml.tmLanguage.js +0 -629
  533. /package/dist/{extensions → editor}/autofold.d.ts +0 -0
  534. /package/dist/{extensions → editor}/cobol.d.ts +0 -0
  535. /package/dist/{extensions → editor}/index.d.ts +0 -0
@@ -1,1752 +1,3 @@
1
- var comment = "The recognition of function definitions and compiler directives (such as module, record and macro definitions) requires that each of the aforementioned constructs must be the first string inside a line (except for whitespace). Also, the function/module/record/macro names must be given unquoted. -- desp";
2
- var fileTypes = [
3
- "erl",
4
- "escript",
5
- "hrl",
6
- "xrl",
7
- "yrl"
8
- ];
9
- var keyEquivalent = "^~E";
10
- var name = "Erlang";
11
- var patterns = [
12
- {
13
- include: "#module-directive"
14
- },
15
- {
16
- include: "#import-export-directive"
17
- },
18
- {
19
- include: "#behaviour-directive"
20
- },
21
- {
22
- include: "#record-directive"
23
- },
24
- {
25
- include: "#define-directive"
26
- },
27
- {
28
- include: "#macro-directive"
29
- },
30
- {
31
- include: "#directive"
32
- },
33
- {
34
- include: "#function"
35
- },
36
- {
37
- include: "#everything-else"
38
- }
39
- ];
40
- var repository = {
41
- atom: {
42
- patterns: [
43
- {
44
- begin: "(')",
45
- beginCaptures: {
46
- "1": {
47
- name: "punctuation.definition.symbol.begin.erlang"
48
- }
49
- },
50
- end: "(')",
51
- endCaptures: {
52
- "1": {
53
- name: "punctuation.definition.symbol.end.erlang"
54
- }
55
- },
56
- name: "constant.other.symbol.quoted.single.erlang",
57
- patterns: [
58
- {
59
- captures: {
60
- "1": {
61
- name: "punctuation.definition.escape.erlang"
62
- },
63
- "3": {
64
- name: "punctuation.definition.escape.erlang"
65
- }
66
- },
67
- match: "(\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2})",
68
- name: "constant.other.symbol.escape.erlang"
69
- },
70
- {
71
- match: "\\\\\\^?.?",
72
- name: "invalid.illegal.atom.erlang"
73
- }
74
- ]
75
- },
76
- {
77
- match: "[a-z][a-zA-Z\\d@_]*+",
78
- name: "constant.other.symbol.unquoted.erlang"
79
- }
80
- ]
81
- },
82
- "behaviour-directive": {
83
- captures: {
84
- "1": {
85
- name: "punctuation.section.directive.begin.erlang"
86
- },
87
- "2": {
88
- name: "keyword.control.directive.behaviour.erlang"
89
- },
90
- "3": {
91
- name: "punctuation.definition.parameters.begin.erlang"
92
- },
93
- "4": {
94
- name: "entity.name.type.class.behaviour.definition.erlang"
95
- },
96
- "5": {
97
- name: "punctuation.definition.parameters.end.erlang"
98
- },
99
- "6": {
100
- name: "punctuation.section.directive.end.erlang"
101
- }
102
- },
103
- match: "^\\s*+(-)\\s*+(behaviour)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\))\\s*+(\\.)",
104
- name: "meta.directive.behaviour.erlang"
105
- },
106
- binary: {
107
- begin: "(<<)",
108
- beginCaptures: {
109
- "1": {
110
- name: "punctuation.definition.binary.begin.erlang"
111
- }
112
- },
113
- end: "(>>)",
114
- endCaptures: {
115
- "1": {
116
- name: "punctuation.definition.binary.end.erlang"
117
- }
118
- },
119
- name: "meta.structure.binary.erlang",
120
- patterns: [
121
- {
122
- captures: {
123
- "1": {
124
- name: "punctuation.separator.binary.erlang"
125
- },
126
- "2": {
127
- name: "punctuation.separator.value-size.erlang"
128
- }
129
- },
130
- match: "(,)|(:)"
131
- },
132
- {
133
- include: "#internal-type-specifiers"
134
- },
135
- {
136
- include: "#everything-else"
137
- }
138
- ]
139
- },
140
- character: {
141
- patterns: [
142
- {
143
- captures: {
144
- "1": {
145
- name: "punctuation.definition.character.erlang"
146
- },
147
- "2": {
148
- name: "constant.character.escape.erlang"
149
- },
150
- "3": {
151
- name: "punctuation.definition.escape.erlang"
152
- },
153
- "5": {
154
- name: "punctuation.definition.escape.erlang"
155
- }
156
- },
157
- match: "(\\$)((\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2}))",
158
- name: "constant.character.erlang"
159
- },
160
- {
161
- match: "\\$\\\\\\^?.?",
162
- name: "invalid.illegal.character.erlang"
163
- },
164
- {
165
- captures: {
166
- "1": {
167
- name: "punctuation.definition.character.erlang"
168
- }
169
- },
170
- match: "(\\$)[ \\S]",
171
- name: "constant.character.erlang"
172
- },
173
- {
174
- match: "\\$.?",
175
- name: "invalid.illegal.character.erlang"
176
- }
177
- ]
178
- },
179
- comment: {
180
- begin: "(^[ \\t]+)?(?=%)",
181
- beginCaptures: {
182
- "1": {
183
- name: "punctuation.whitespace.comment.leading.erlang"
184
- }
185
- },
186
- end: "(?!\\G)",
187
- patterns: [
188
- {
189
- begin: "%",
190
- beginCaptures: {
191
- "0": {
192
- name: "punctuation.definition.comment.erlang"
193
- }
194
- },
195
- end: "\\n",
196
- name: "comment.line.percentage.erlang"
197
- }
198
- ]
199
- },
200
- "define-directive": {
201
- patterns: [
202
- {
203
- begin: "^\\s*+(-)\\s*+(define)\\s*+(\\()\\s*+([a-zA-Z\\d@_]++)\\s*+",
204
- beginCaptures: {
205
- "1": {
206
- name: "punctuation.section.directive.begin.erlang"
207
- },
208
- "2": {
209
- name: "keyword.control.directive.define.erlang"
210
- },
211
- "3": {
212
- name: "punctuation.definition.parameters.begin.erlang"
213
- },
214
- "4": {
215
- name: "entity.name.function.macro.definition.erlang"
216
- }
217
- },
218
- end: "(\\))\\s*+(\\.)",
219
- endCaptures: {
220
- "1": {
221
- name: "punctuation.definition.parameters.end.erlang"
222
- },
223
- "2": {
224
- name: "punctuation.section.directive.end.erlang"
225
- }
226
- },
227
- name: "meta.directive.define.erlang",
228
- patterns: [
229
- {
230
- include: "#everything-else"
231
- }
232
- ]
233
- },
234
- {
235
- begin: "(?=^\\s*+-\\s*+define\\s*+\\(\\s*+[a-zA-Z\\d@_]++\\s*+\\()",
236
- end: "(\\))\\s*+(\\.)",
237
- endCaptures: {
238
- "1": {
239
- name: "punctuation.definition.parameters.end.erlang"
240
- },
241
- "2": {
242
- name: "punctuation.section.directive.end.erlang"
243
- }
244
- },
245
- name: "meta.directive.define.erlang",
246
- patterns: [
247
- {
248
- begin: "^\\s*+(-)\\s*+(define)\\s*+(\\()\\s*+([a-zA-Z\\d@_]++)\\s*+(\\()",
249
- beginCaptures: {
250
- "1": {
251
- name: "punctuation.section.directive.begin.erlang"
252
- },
253
- "2": {
254
- name: "keyword.control.directive.define.erlang"
255
- },
256
- "3": {
257
- name: "punctuation.definition.parameters.begin.erlang"
258
- },
259
- "4": {
260
- name: "entity.name.function.macro.definition.erlang"
261
- },
262
- "5": {
263
- name: "punctuation.definition.parameters.begin.erlang"
264
- }
265
- },
266
- end: "(\\))\\s*(,)",
267
- endCaptures: {
268
- "1": {
269
- name: "punctuation.definition.parameters.end.erlang"
270
- },
271
- "2": {
272
- name: "punctuation.separator.parameters.erlang"
273
- }
274
- },
275
- patterns: [
276
- {
277
- match: ",",
278
- name: "punctuation.separator.parameters.erlang"
279
- },
280
- {
281
- include: "#everything-else"
282
- }
283
- ]
284
- },
285
- {
286
- match: "\\|\\||\\||:|;|,|\\.|->",
287
- name: "punctuation.separator.define.erlang"
288
- },
289
- {
290
- include: "#everything-else"
291
- }
292
- ]
293
- }
294
- ]
295
- },
296
- directive: {
297
- patterns: [
298
- {
299
- begin: "^\\s*+(-)\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\(?)",
300
- beginCaptures: {
301
- "1": {
302
- name: "punctuation.section.directive.begin.erlang"
303
- },
304
- "2": {
305
- name: "keyword.control.directive.erlang"
306
- },
307
- "3": {
308
- name: "punctuation.definition.parameters.begin.erlang"
309
- }
310
- },
311
- end: "(\\)?)\\s*+(\\.)",
312
- endCaptures: {
313
- "1": {
314
- name: "punctuation.definition.parameters.end.erlang"
315
- },
316
- "2": {
317
- name: "punctuation.section.directive.end.erlang"
318
- }
319
- },
320
- name: "meta.directive.erlang",
321
- patterns: [
322
- {
323
- include: "#everything-else"
324
- }
325
- ]
326
- },
327
- {
328
- captures: {
329
- "1": {
330
- name: "punctuation.section.directive.begin.erlang"
331
- },
332
- "2": {
333
- name: "keyword.control.directive.erlang"
334
- },
335
- "3": {
336
- name: "punctuation.section.directive.end.erlang"
337
- }
338
- },
339
- match: "^\\s*+(-)\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\.)",
340
- name: "meta.directive.erlang"
341
- }
342
- ]
343
- },
344
- "everything-else": {
345
- patterns: [
346
- {
347
- include: "#comment"
348
- },
349
- {
350
- include: "#record-usage"
351
- },
352
- {
353
- include: "#macro-usage"
354
- },
355
- {
356
- include: "#expression"
357
- },
358
- {
359
- include: "#keyword"
360
- },
361
- {
362
- include: "#textual-operator"
363
- },
364
- {
365
- include: "#language-constant"
366
- },
367
- {
368
- include: "#function-call"
369
- },
370
- {
371
- include: "#tuple"
372
- },
373
- {
374
- include: "#list"
375
- },
376
- {
377
- include: "#binary"
378
- },
379
- {
380
- include: "#parenthesized-expression"
381
- },
382
- {
383
- include: "#character"
384
- },
385
- {
386
- include: "#number"
387
- },
388
- {
389
- include: "#atom"
390
- },
391
- {
392
- include: "#string"
393
- },
394
- {
395
- include: "#symbolic-operator"
396
- },
397
- {
398
- include: "#variable"
399
- }
400
- ]
401
- },
402
- expression: {
403
- patterns: [
404
- {
405
- begin: "\\b(if)\\b",
406
- beginCaptures: {
407
- "1": {
408
- name: "keyword.control.if.erlang"
409
- }
410
- },
411
- end: "\\b(end)\\b",
412
- endCaptures: {
413
- "1": {
414
- name: "keyword.control.end.erlang"
415
- }
416
- },
417
- name: "meta.expression.if.erlang",
418
- patterns: [
419
- {
420
- include: "#internal-expression-punctuation"
421
- },
422
- {
423
- include: "#everything-else"
424
- }
425
- ]
426
- },
427
- {
428
- begin: "\\b(case)\\b",
429
- beginCaptures: {
430
- "1": {
431
- name: "keyword.control.case.erlang"
432
- }
433
- },
434
- end: "\\b(end)\\b",
435
- endCaptures: {
436
- "1": {
437
- name: "keyword.control.end.erlang"
438
- }
439
- },
440
- name: "meta.expression.case.erlang",
441
- patterns: [
442
- {
443
- include: "#internal-expression-punctuation"
444
- },
445
- {
446
- include: "#everything-else"
447
- }
448
- ]
449
- },
450
- {
451
- begin: "\\b(receive)\\b",
452
- beginCaptures: {
453
- "1": {
454
- name: "keyword.control.receive.erlang"
455
- }
456
- },
457
- end: "\\b(end)\\b",
458
- endCaptures: {
459
- "1": {
460
- name: "keyword.control.end.erlang"
461
- }
462
- },
463
- name: "meta.expression.receive.erlang",
464
- patterns: [
465
- {
466
- include: "#internal-expression-punctuation"
467
- },
468
- {
469
- include: "#everything-else"
470
- }
471
- ]
472
- },
473
- {
474
- captures: {
475
- "1": {
476
- name: "keyword.control.fun.erlang"
477
- },
478
- "4": {
479
- name: "entity.name.type.class.module.erlang"
480
- },
481
- "5": {
482
- name: "variable.other.erlang"
483
- },
484
- "6": {
485
- name: "punctuation.separator.module-function.erlang"
486
- },
487
- "8": {
488
- name: "entity.name.function.erlang"
489
- },
490
- "9": {
491
- name: "variable.other.erlang"
492
- },
493
- "10": {
494
- name: "punctuation.separator.function-arity.erlang"
495
- }
496
- },
497
- comment: "Implicit function expression with optional module qualifier when both module and function can be atom or variable",
498
- match: "\\b(fun)\\s+((([a-z][a-zA-Z\\d@_]*+)|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)\\s*+)?(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*(/)",
499
- name: "meta.expression.fun.implicit.erlang"
500
- },
501
- {
502
- begin: "\\b(fun)\\s+(([a-z][a-zA-Z\\d@_]*+)|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)",
503
- beginCaptures: {
504
- "1": {
505
- name: "keyword.control.fun.erlang"
506
- },
507
- "3": {
508
- name: "entity.name.type.class.module.erlang"
509
- },
510
- "4": {
511
- name: "variable.other.erlang"
512
- },
513
- "5": {
514
- name: "punctuation.separator.module-function.erlang"
515
- }
516
- },
517
- comment: "Implicit function expression with module qualifier when module can be atom or variable and function can by anything",
518
- end: "(/)",
519
- endCaptures: {
520
- "1": {
521
- name: "punctuation.separator.function-arity.erlang"
522
- }
523
- },
524
- name: "meta.expression.fun.implicit.erlang",
525
- patterns: [
526
- {
527
- include: "#everything-else"
528
- }
529
- ]
530
- },
531
- {
532
- begin: "\\b(fun)\\s+(?!\\()",
533
- beginCaptures: {
534
- "1": {
535
- name: "keyword.control.fun.erlang"
536
- }
537
- },
538
- comment: "Implicit function expression when both module and function can by anything",
539
- end: "(/)",
540
- endCaptures: {
541
- "1": {
542
- name: "punctuation.separator.function-arity.erlang"
543
- }
544
- },
545
- name: "meta.expression.fun.implicit.erlang",
546
- patterns: [
547
- {
548
- include: "#everything-else"
549
- }
550
- ]
551
- },
552
- {
553
- begin: "\\b(fun)\\s*+(\\()(?=(\\s*+\\())",
554
- beginCaptures: {
555
- "1": {
556
- name: "entity.name.function.erlang"
557
- },
558
- "2": {
559
- name: "punctuation.definition.parameters.begin.erlang"
560
- }
561
- },
562
- comment: "Function type in type specification",
563
- end: "(\\))",
564
- endCaptures: {
565
- "1": {
566
- name: "punctuation.definition.parameters.end.erlang"
567
- }
568
- },
569
- patterns: [
570
- {
571
- include: "#everything-else"
572
- }
573
- ]
574
- },
575
- {
576
- begin: "\\b(fun)\\b",
577
- beginCaptures: {
578
- "1": {
579
- name: "keyword.control.fun.erlang"
580
- }
581
- },
582
- comment: "Explicit function expression",
583
- end: "\\b(end)\\b",
584
- endCaptures: {
585
- "1": {
586
- name: "keyword.control.end.erlang"
587
- }
588
- },
589
- name: "meta.expression.fun.erlang",
590
- patterns: [
591
- {
592
- begin: "(?=\\()",
593
- end: "(;)|(?=\\bend\\b)",
594
- endCaptures: {
595
- "1": {
596
- name: "punctuation.separator.clauses.erlang"
597
- }
598
- },
599
- patterns: [
600
- {
601
- include: "#internal-function-parts"
602
- }
603
- ]
604
- },
605
- {
606
- include: "#everything-else"
607
- }
608
- ]
609
- },
610
- {
611
- begin: "\\b(try)\\b",
612
- beginCaptures: {
613
- "1": {
614
- name: "keyword.control.try.erlang"
615
- }
616
- },
617
- end: "\\b(end)\\b",
618
- endCaptures: {
619
- "1": {
620
- name: "keyword.control.end.erlang"
621
- }
622
- },
623
- name: "meta.expression.try.erlang",
624
- patterns: [
625
- {
626
- include: "#internal-expression-punctuation"
627
- },
628
- {
629
- include: "#everything-else"
630
- }
631
- ]
632
- },
633
- {
634
- begin: "\\b(begin)\\b",
635
- beginCaptures: {
636
- "1": {
637
- name: "keyword.control.begin.erlang"
638
- }
639
- },
640
- end: "\\b(end)\\b",
641
- endCaptures: {
642
- "1": {
643
- name: "keyword.control.end.erlang"
644
- }
645
- },
646
- name: "meta.expression.begin.erlang",
647
- patterns: [
648
- {
649
- include: "#internal-expression-punctuation"
650
- },
651
- {
652
- include: "#everything-else"
653
- }
654
- ]
655
- }
656
- ]
657
- },
658
- "function": {
659
- begin: "^\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(?=\\()",
660
- beginCaptures: {
661
- "1": {
662
- name: "entity.name.function.definition.erlang"
663
- }
664
- },
665
- end: "(\\.)",
666
- endCaptures: {
667
- "1": {
668
- name: "punctuation.terminator.function.erlang"
669
- }
670
- },
671
- name: "meta.function.erlang",
672
- patterns: [
673
- {
674
- captures: {
675
- "1": {
676
- name: "entity.name.function.erlang"
677
- }
678
- },
679
- match: "^\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(?=\\()"
680
- },
681
- {
682
- begin: "(?=\\()",
683
- end: "(;)|(?=\\.)",
684
- endCaptures: {
685
- "1": {
686
- name: "punctuation.separator.clauses.erlang"
687
- }
688
- },
689
- patterns: [
690
- {
691
- include: "#parenthesized-expression"
692
- },
693
- {
694
- include: "#internal-function-parts"
695
- }
696
- ]
697
- },
698
- {
699
- include: "#everything-else"
700
- }
701
- ]
702
- },
703
- "function-call": {
704
- begin: "(?=([a-z][a-zA-Z\\d@_]*+|'[^']*+'|_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)\\s*+(\\(|:\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+'|_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)\\s*+\\())",
705
- end: "(\\))",
706
- endCaptures: {
707
- "1": {
708
- name: "punctuation.definition.parameters.end.erlang"
709
- }
710
- },
711
- name: "meta.function-call.erlang",
712
- patterns: [
713
- {
714
- begin: "((erlang)\\s*+(:)\\s*+)?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)\\s*+(\\()",
715
- beginCaptures: {
716
- "2": {
717
- name: "entity.name.type.class.module.erlang"
718
- },
719
- "3": {
720
- name: "punctuation.separator.module-function.erlang"
721
- },
722
- "4": {
723
- name: "entity.name.function.guard.erlang"
724
- },
725
- "5": {
726
- name: "punctuation.definition.parameters.begin.erlang"
727
- }
728
- },
729
- end: "(?=\\))",
730
- patterns: [
731
- {
732
- match: ",",
733
- name: "punctuation.separator.parameters.erlang"
734
- },
735
- {
736
- include: "#everything-else"
737
- }
738
- ]
739
- },
740
- {
741
- begin: "((([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)\\s*+)?(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(\\()",
742
- beginCaptures: {
743
- "3": {
744
- name: "entity.name.type.class.module.erlang"
745
- },
746
- "4": {
747
- name: "variable.other.erlang"
748
- },
749
- "5": {
750
- name: "punctuation.separator.module-function.erlang"
751
- },
752
- "7": {
753
- name: "entity.name.function.erlang"
754
- },
755
- "8": {
756
- name: "variable.other.erlang"
757
- },
758
- "9": {
759
- name: "punctuation.definition.parameters.begin.erlang"
760
- }
761
- },
762
- end: "(?=\\))",
763
- patterns: [
764
- {
765
- match: ",",
766
- name: "punctuation.separator.parameters.erlang"
767
- },
768
- {
769
- include: "#everything-else"
770
- }
771
- ]
772
- }
773
- ]
774
- },
775
- "import-export-directive": {
776
- patterns: [
777
- {
778
- begin: "^\\s*+(-)\\s*+(import)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(,)",
779
- beginCaptures: {
780
- "1": {
781
- name: "punctuation.section.directive.begin.erlang"
782
- },
783
- "2": {
784
- name: "keyword.control.directive.import.erlang"
785
- },
786
- "3": {
787
- name: "punctuation.definition.parameters.begin.erlang"
788
- },
789
- "4": {
790
- name: "entity.name.type.class.module.erlang"
791
- },
792
- "5": {
793
- name: "punctuation.separator.parameters.erlang"
794
- }
795
- },
796
- end: "(\\))\\s*+(\\.)",
797
- endCaptures: {
798
- "1": {
799
- name: "punctuation.definition.parameters.end.erlang"
800
- },
801
- "2": {
802
- name: "punctuation.section.directive.end.erlang"
803
- }
804
- },
805
- name: "meta.directive.import.erlang",
806
- patterns: [
807
- {
808
- include: "#internal-function-list"
809
- }
810
- ]
811
- },
812
- {
813
- begin: "^\\s*+(-)\\s*+(export)\\s*+(\\()",
814
- beginCaptures: {
815
- "1": {
816
- name: "punctuation.section.directive.begin.erlang"
817
- },
818
- "2": {
819
- name: "keyword.control.directive.export.erlang"
820
- },
821
- "3": {
822
- name: "punctuation.definition.parameters.begin.erlang"
823
- }
824
- },
825
- end: "(\\))\\s*+(\\.)",
826
- endCaptures: {
827
- "1": {
828
- name: "punctuation.definition.parameters.end.erlang"
829
- },
830
- "2": {
831
- name: "punctuation.section.directive.end.erlang"
832
- }
833
- },
834
- name: "meta.directive.export.erlang",
835
- patterns: [
836
- {
837
- include: "#internal-function-list"
838
- }
839
- ]
840
- }
841
- ]
842
- },
843
- "internal-expression-punctuation": {
844
- captures: {
845
- "1": {
846
- name: "punctuation.separator.clause-head-body.erlang"
847
- },
848
- "2": {
849
- name: "punctuation.separator.clauses.erlang"
850
- },
851
- "3": {
852
- name: "punctuation.separator.expressions.erlang"
853
- }
854
- },
855
- match: "(->)|(;)|(,)"
856
- },
857
- "internal-function-list": {
858
- begin: "(\\[)",
859
- beginCaptures: {
860
- "1": {
861
- name: "punctuation.definition.list.begin.erlang"
862
- }
863
- },
864
- end: "(\\])",
865
- endCaptures: {
866
- "1": {
867
- name: "punctuation.definition.list.end.erlang"
868
- }
869
- },
870
- name: "meta.structure.list.function.erlang",
871
- patterns: [
872
- {
873
- begin: "([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(/)",
874
- beginCaptures: {
875
- "1": {
876
- name: "entity.name.function.erlang"
877
- },
878
- "2": {
879
- name: "punctuation.separator.function-arity.erlang"
880
- }
881
- },
882
- end: "(,)|(?=\\])",
883
- endCaptures: {
884
- "1": {
885
- name: "punctuation.separator.list.erlang"
886
- }
887
- },
888
- patterns: [
889
- {
890
- include: "#everything-else"
891
- }
892
- ]
893
- },
894
- {
895
- include: "#everything-else"
896
- }
897
- ]
898
- },
899
- "internal-function-parts": {
900
- patterns: [
901
- {
902
- begin: "(?=\\()",
903
- end: "(->)",
904
- endCaptures: {
905
- "1": {
906
- name: "punctuation.separator.clause-head-body.erlang"
907
- }
908
- },
909
- patterns: [
910
- {
911
- begin: "(\\()",
912
- beginCaptures: {
913
- "1": {
914
- name: "punctuation.definition.parameters.begin.erlang"
915
- }
916
- },
917
- end: "(\\))",
918
- endCaptures: {
919
- "1": {
920
- name: "punctuation.definition.parameters.end.erlang"
921
- }
922
- },
923
- patterns: [
924
- {
925
- match: ",",
926
- name: "punctuation.separator.parameters.erlang"
927
- },
928
- {
929
- include: "#everything-else"
930
- }
931
- ]
932
- },
933
- {
934
- match: ",|;",
935
- name: "punctuation.separator.guards.erlang"
936
- },
937
- {
938
- include: "#everything-else"
939
- }
940
- ]
941
- },
942
- {
943
- match: ",",
944
- name: "punctuation.separator.expressions.erlang"
945
- },
946
- {
947
- include: "#everything-else"
948
- }
949
- ]
950
- },
951
- "internal-record-body": {
952
- begin: "(\\{)",
953
- beginCaptures: {
954
- "1": {
955
- name: "punctuation.definition.class.record.begin.erlang"
956
- }
957
- },
958
- end: "(\\})",
959
- endCaptures: {
960
- "1": {
961
- name: "punctuation.definition.class.record.end.erlang"
962
- }
963
- },
964
- name: "meta.structure.record.erlang",
965
- patterns: [
966
- {
967
- begin: "(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_))",
968
- beginCaptures: {
969
- "2": {
970
- name: "variable.other.field.erlang"
971
- },
972
- "3": {
973
- name: "variable.language.omitted.field.erlang"
974
- }
975
- },
976
- end: "(,)|(?=\\})",
977
- endCaptures: {
978
- "1": {
979
- name: "punctuation.separator.class.record.erlang"
980
- }
981
- },
982
- patterns: [
983
- {
984
- include: "#everything-else"
985
- }
986
- ]
987
- },
988
- {
989
- include: "#everything-else"
990
- }
991
- ]
992
- },
993
- "internal-type-specifiers": {
994
- begin: "(/)",
995
- beginCaptures: {
996
- "1": {
997
- name: "punctuation.separator.value-type.erlang"
998
- }
999
- },
1000
- end: "(?=,|:|>>)",
1001
- patterns: [
1002
- {
1003
- captures: {
1004
- "1": {
1005
- name: "storage.type.erlang"
1006
- },
1007
- "2": {
1008
- name: "storage.modifier.signedness.erlang"
1009
- },
1010
- "3": {
1011
- name: "storage.modifier.endianness.erlang"
1012
- },
1013
- "4": {
1014
- name: "storage.modifier.unit.erlang"
1015
- },
1016
- "5": {
1017
- name: "punctuation.separator.unit-specifiers.erlang"
1018
- },
1019
- "6": {
1020
- name: "constant.numeric.integer.decimal.erlang"
1021
- },
1022
- "7": {
1023
- name: "punctuation.separator.type-specifiers.erlang"
1024
- }
1025
- },
1026
- match: "(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)(\\d++)|(-)"
1027
- }
1028
- ]
1029
- },
1030
- keyword: {
1031
- match: "\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when)\\b",
1032
- name: "keyword.control.erlang"
1033
- },
1034
- "language-constant": {
1035
- match: "\\b(false|true|undefined)\\b",
1036
- name: "constant.language"
1037
- },
1038
- list: {
1039
- begin: "(\\[)",
1040
- beginCaptures: {
1041
- "1": {
1042
- name: "punctuation.definition.list.begin.erlang"
1043
- }
1044
- },
1045
- end: "(\\])",
1046
- endCaptures: {
1047
- "1": {
1048
- name: "punctuation.definition.list.end.erlang"
1049
- }
1050
- },
1051
- name: "meta.structure.list.erlang",
1052
- patterns: [
1053
- {
1054
- match: "\\||\\|\\||,",
1055
- name: "punctuation.separator.list.erlang"
1056
- },
1057
- {
1058
- include: "#everything-else"
1059
- }
1060
- ]
1061
- },
1062
- "macro-directive": {
1063
- patterns: [
1064
- {
1065
- captures: {
1066
- "1": {
1067
- name: "punctuation.section.directive.begin.erlang"
1068
- },
1069
- "2": {
1070
- name: "keyword.control.directive.ifdef.erlang"
1071
- },
1072
- "3": {
1073
- name: "punctuation.definition.parameters.begin.erlang"
1074
- },
1075
- "4": {
1076
- name: "entity.name.function.macro.erlang"
1077
- },
1078
- "5": {
1079
- name: "punctuation.definition.parameters.end.erlang"
1080
- },
1081
- "6": {
1082
- name: "punctuation.section.directive.end.erlang"
1083
- }
1084
- },
1085
- match: "^\\s*+(-)\\s*+(ifdef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)",
1086
- name: "meta.directive.ifdef.erlang"
1087
- },
1088
- {
1089
- captures: {
1090
- "1": {
1091
- name: "punctuation.section.directive.begin.erlang"
1092
- },
1093
- "2": {
1094
- name: "keyword.control.directive.ifndef.erlang"
1095
- },
1096
- "3": {
1097
- name: "punctuation.definition.parameters.begin.erlang"
1098
- },
1099
- "4": {
1100
- name: "entity.name.function.macro.erlang"
1101
- },
1102
- "5": {
1103
- name: "punctuation.definition.parameters.end.erlang"
1104
- },
1105
- "6": {
1106
- name: "punctuation.section.directive.end.erlang"
1107
- }
1108
- },
1109
- match: "^\\s*+(-)\\s*+(ifndef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)",
1110
- name: "meta.directive.ifndef.erlang"
1111
- },
1112
- {
1113
- captures: {
1114
- "1": {
1115
- name: "punctuation.section.directive.begin.erlang"
1116
- },
1117
- "2": {
1118
- name: "keyword.control.directive.undef.erlang"
1119
- },
1120
- "3": {
1121
- name: "punctuation.definition.parameters.begin.erlang"
1122
- },
1123
- "4": {
1124
- name: "entity.name.function.macro.erlang"
1125
- },
1126
- "5": {
1127
- name: "punctuation.definition.parameters.end.erlang"
1128
- },
1129
- "6": {
1130
- name: "punctuation.section.directive.end.erlang"
1131
- }
1132
- },
1133
- match: "^\\s*+(-)\\s*+(undef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)",
1134
- name: "meta.directive.undef.erlang"
1135
- }
1136
- ]
1137
- },
1138
- "macro-usage": {
1139
- captures: {
1140
- "1": {
1141
- name: "keyword.operator.macro.erlang"
1142
- },
1143
- "2": {
1144
- name: "entity.name.function.macro.erlang"
1145
- }
1146
- },
1147
- match: "(\\?\\??)\\s*+([a-zA-Z\\d@_]++)",
1148
- name: "meta.macro-usage.erlang"
1149
- },
1150
- "module-directive": {
1151
- captures: {
1152
- "1": {
1153
- name: "punctuation.section.directive.begin.erlang"
1154
- },
1155
- "2": {
1156
- name: "keyword.control.directive.module.erlang"
1157
- },
1158
- "3": {
1159
- name: "punctuation.definition.parameters.begin.erlang"
1160
- },
1161
- "4": {
1162
- name: "entity.name.type.class.module.definition.erlang"
1163
- },
1164
- "5": {
1165
- name: "punctuation.definition.parameters.end.erlang"
1166
- },
1167
- "6": {
1168
- name: "punctuation.section.directive.end.erlang"
1169
- }
1170
- },
1171
- match: "^\\s*+(-)\\s*+(module)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\))\\s*+(\\.)",
1172
- name: "meta.directive.module.erlang"
1173
- },
1174
- number: {
1175
- begin: "(?=\\d)",
1176
- end: "(?!\\d)",
1177
- patterns: [
1178
- {
1179
- captures: {
1180
- "1": {
1181
- name: "punctuation.separator.integer-float.erlang"
1182
- },
1183
- "2": {
1184
- name: "punctuation.separator.float-exponent.erlang"
1185
- }
1186
- },
1187
- match: "\\d++(\\.)\\d++([eE][\\+\\-]?\\d++)?",
1188
- name: "constant.numeric.float.erlang"
1189
- },
1190
- {
1191
- captures: {
1192
- "1": {
1193
- name: "punctuation.separator.base-integer.erlang"
1194
- }
1195
- },
1196
- match: "2(#)([0-1]++_)*[0-1]++",
1197
- name: "constant.numeric.integer.binary.erlang"
1198
- },
1199
- {
1200
- captures: {
1201
- "1": {
1202
- name: "punctuation.separator.base-integer.erlang"
1203
- }
1204
- },
1205
- match: "3(#)([0-2]++_)*[0-2]++",
1206
- name: "constant.numeric.integer.base-3.erlang"
1207
- },
1208
- {
1209
- captures: {
1210
- "1": {
1211
- name: "punctuation.separator.base-integer.erlang"
1212
- }
1213
- },
1214
- match: "4(#)([0-3]++_)*[0-3]++",
1215
- name: "constant.numeric.integer.base-4.erlang"
1216
- },
1217
- {
1218
- captures: {
1219
- "1": {
1220
- name: "punctuation.separator.base-integer.erlang"
1221
- }
1222
- },
1223
- match: "5(#)([0-4]++_)*[0-4]++",
1224
- name: "constant.numeric.integer.base-5.erlang"
1225
- },
1226
- {
1227
- captures: {
1228
- "1": {
1229
- name: "punctuation.separator.base-integer.erlang"
1230
- }
1231
- },
1232
- match: "6(#)([0-5]++_)*[0-5]++",
1233
- name: "constant.numeric.integer.base-6.erlang"
1234
- },
1235
- {
1236
- captures: {
1237
- "1": {
1238
- name: "punctuation.separator.base-integer.erlang"
1239
- }
1240
- },
1241
- match: "7(#)([0-6]++_)*[0-6]++",
1242
- name: "constant.numeric.integer.base-7.erlang"
1243
- },
1244
- {
1245
- captures: {
1246
- "1": {
1247
- name: "punctuation.separator.base-integer.erlang"
1248
- }
1249
- },
1250
- match: "8(#)([0-7]++_)*[0-7]++",
1251
- name: "constant.numeric.integer.octal.erlang"
1252
- },
1253
- {
1254
- captures: {
1255
- "1": {
1256
- name: "punctuation.separator.base-integer.erlang"
1257
- }
1258
- },
1259
- match: "9(#)([0-8]++_)*[0-8]++",
1260
- name: "constant.numeric.integer.base-9.erlang"
1261
- },
1262
- {
1263
- captures: {
1264
- "1": {
1265
- name: "punctuation.separator.base-integer.erlang"
1266
- }
1267
- },
1268
- match: "10(#)(\\d++_)*\\d++",
1269
- name: "constant.numeric.integer.decimal.erlang"
1270
- },
1271
- {
1272
- captures: {
1273
- "1": {
1274
- name: "punctuation.separator.base-integer.erlang"
1275
- }
1276
- },
1277
- match: "11(#)([\\daA]++_)*[\\daA]++",
1278
- name: "constant.numeric.integer.base-11.erlang"
1279
- },
1280
- {
1281
- captures: {
1282
- "1": {
1283
- name: "punctuation.separator.base-integer.erlang"
1284
- }
1285
- },
1286
- match: "12(#)([\\da-bA-B]++_)*[\\da-bA-B]++",
1287
- name: "constant.numeric.integer.base-12.erlang"
1288
- },
1289
- {
1290
- captures: {
1291
- "1": {
1292
- name: "punctuation.separator.base-integer.erlang"
1293
- }
1294
- },
1295
- match: "13(#)([\\da-cA-C]++_)*[\\da-cA-C]++",
1296
- name: "constant.numeric.integer.base-13.erlang"
1297
- },
1298
- {
1299
- captures: {
1300
- "1": {
1301
- name: "punctuation.separator.base-integer.erlang"
1302
- }
1303
- },
1304
- match: "14(#)([\\da-dA-D]++_)*[\\da-dA-D]++",
1305
- name: "constant.numeric.integer.base-14.erlang"
1306
- },
1307
- {
1308
- captures: {
1309
- "1": {
1310
- name: "punctuation.separator.base-integer.erlang"
1311
- }
1312
- },
1313
- match: "15(#)([\\da-eA-E]++_)*[\\da-eA-E]++",
1314
- name: "constant.numeric.integer.base-15.erlang"
1315
- },
1316
- {
1317
- captures: {
1318
- "1": {
1319
- name: "punctuation.separator.base-integer.erlang"
1320
- }
1321
- },
1322
- match: "16(#)([\\da-fA-F]++_)*[\\da-fA-F]++",
1323
- name: "constant.numeric.integer.hexadecimal.erlang"
1324
- },
1325
- {
1326
- captures: {
1327
- "1": {
1328
- name: "punctuation.separator.base-integer.erlang"
1329
- }
1330
- },
1331
- match: "17(#)([\\da-gA-G]++_)*[\\da-gA-G]++",
1332
- name: "constant.numeric.integer.base-17.erlang"
1333
- },
1334
- {
1335
- captures: {
1336
- "1": {
1337
- name: "punctuation.separator.base-integer.erlang"
1338
- }
1339
- },
1340
- match: "18(#)([\\da-hA-H]++_)*[\\da-hA-H]++",
1341
- name: "constant.numeric.integer.base-18.erlang"
1342
- },
1343
- {
1344
- captures: {
1345
- "1": {
1346
- name: "punctuation.separator.base-integer.erlang"
1347
- }
1348
- },
1349
- match: "19(#)([\\da-iA-I]++_)*[\\da-iA-I]++",
1350
- name: "constant.numeric.integer.base-19.erlang"
1351
- },
1352
- {
1353
- captures: {
1354
- "1": {
1355
- name: "punctuation.separator.base-integer.erlang"
1356
- }
1357
- },
1358
- match: "20(#)([\\da-jA-J]++_)*[\\da-jA-J]++",
1359
- name: "constant.numeric.integer.base-20.erlang"
1360
- },
1361
- {
1362
- captures: {
1363
- "1": {
1364
- name: "punctuation.separator.base-integer.erlang"
1365
- }
1366
- },
1367
- match: "21(#)([\\da-kA-K]++_)*[\\da-kA-K]++",
1368
- name: "constant.numeric.integer.base-21.erlang"
1369
- },
1370
- {
1371
- captures: {
1372
- "1": {
1373
- name: "punctuation.separator.base-integer.erlang"
1374
- }
1375
- },
1376
- match: "22(#)([\\da-lA-L]++_)*[\\da-lA-L]++",
1377
- name: "constant.numeric.integer.base-22.erlang"
1378
- },
1379
- {
1380
- captures: {
1381
- "1": {
1382
- name: "punctuation.separator.base-integer.erlang"
1383
- }
1384
- },
1385
- match: "23(#)([\\da-mA-M]++_)*[\\da-mA-M]++",
1386
- name: "constant.numeric.integer.base-23.erlang"
1387
- },
1388
- {
1389
- captures: {
1390
- "1": {
1391
- name: "punctuation.separator.base-integer.erlang"
1392
- }
1393
- },
1394
- match: "24(#)([\\da-nA-N]++_)*[\\da-nA-N]++",
1395
- name: "constant.numeric.integer.base-24.erlang"
1396
- },
1397
- {
1398
- captures: {
1399
- "1": {
1400
- name: "punctuation.separator.base-integer.erlang"
1401
- }
1402
- },
1403
- match: "25(#)([\\da-oA-O]++_)*[\\da-oA-O]++",
1404
- name: "constant.numeric.integer.base-25.erlang"
1405
- },
1406
- {
1407
- captures: {
1408
- "1": {
1409
- name: "punctuation.separator.base-integer.erlang"
1410
- }
1411
- },
1412
- match: "26(#)([\\da-pA-P]++_)*[\\da-pA-P]++",
1413
- name: "constant.numeric.integer.base-26.erlang"
1414
- },
1415
- {
1416
- captures: {
1417
- "1": {
1418
- name: "punctuation.separator.base-integer.erlang"
1419
- }
1420
- },
1421
- match: "27(#)([\\da-qA-Q]++_)*[\\da-qA-Q]++",
1422
- name: "constant.numeric.integer.base-27.erlang"
1423
- },
1424
- {
1425
- captures: {
1426
- "1": {
1427
- name: "punctuation.separator.base-integer.erlang"
1428
- }
1429
- },
1430
- match: "28(#)([\\da-rA-R]++_)*[\\da-rA-R]++",
1431
- name: "constant.numeric.integer.base-28.erlang"
1432
- },
1433
- {
1434
- captures: {
1435
- "1": {
1436
- name: "punctuation.separator.base-integer.erlang"
1437
- }
1438
- },
1439
- match: "29(#)([\\da-sA-S]++_)*[\\da-sA-S]++",
1440
- name: "constant.numeric.integer.base-29.erlang"
1441
- },
1442
- {
1443
- captures: {
1444
- "1": {
1445
- name: "punctuation.separator.base-integer.erlang"
1446
- }
1447
- },
1448
- match: "30(#)([\\da-tA-T]++_)*[\\da-tA-T]++",
1449
- name: "constant.numeric.integer.base-30.erlang"
1450
- },
1451
- {
1452
- captures: {
1453
- "1": {
1454
- name: "punctuation.separator.base-integer.erlang"
1455
- }
1456
- },
1457
- match: "31(#)([\\da-uA-U]++_)*[\\da-uA-U]++",
1458
- name: "constant.numeric.integer.base-31.erlang"
1459
- },
1460
- {
1461
- captures: {
1462
- "1": {
1463
- name: "punctuation.separator.base-integer.erlang"
1464
- }
1465
- },
1466
- match: "32(#)([\\da-vA-V]++_)*[\\da-vA-V]++",
1467
- name: "constant.numeric.integer.base-32.erlang"
1468
- },
1469
- {
1470
- captures: {
1471
- "1": {
1472
- name: "punctuation.separator.base-integer.erlang"
1473
- }
1474
- },
1475
- match: "33(#)([\\da-wA-W]++_)*[\\da-wA-W]++",
1476
- name: "constant.numeric.integer.base-33.erlang"
1477
- },
1478
- {
1479
- captures: {
1480
- "1": {
1481
- name: "punctuation.separator.base-integer.erlang"
1482
- }
1483
- },
1484
- match: "34(#)([\\da-xA-X]++_)*[\\da-xA-X]++",
1485
- name: "constant.numeric.integer.base-34.erlang"
1486
- },
1487
- {
1488
- captures: {
1489
- "1": {
1490
- name: "punctuation.separator.base-integer.erlang"
1491
- }
1492
- },
1493
- match: "35(#)([\\da-yA-Y]++_)*[\\da-yA-Y]++",
1494
- name: "constant.numeric.integer.base-35.erlang"
1495
- },
1496
- {
1497
- captures: {
1498
- "1": {
1499
- name: "punctuation.separator.base-integer.erlang"
1500
- }
1501
- },
1502
- match: "36(#)([\\da-zA-Z]++_)*[\\da-zA-Z]++",
1503
- name: "constant.numeric.integer.base-36.erlang"
1504
- },
1505
- {
1506
- match: "\\d++#([\\da-zA-Z]++_)*[\\da-zA-Z]++",
1507
- name: "invalid.illegal.integer.erlang"
1508
- },
1509
- {
1510
- match: "(\\d++_)*\\d++",
1511
- name: "constant.numeric.integer.decimal.erlang"
1512
- }
1513
- ]
1514
- },
1515
- "parenthesized-expression": {
1516
- begin: "(\\()",
1517
- beginCaptures: {
1518
- "1": {
1519
- name: "punctuation.section.expression.begin.erlang"
1520
- }
1521
- },
1522
- end: "(\\))",
1523
- endCaptures: {
1524
- "1": {
1525
- name: "punctuation.section.expression.end.erlang"
1526
- }
1527
- },
1528
- name: "meta.expression.parenthesized",
1529
- patterns: [
1530
- {
1531
- include: "#everything-else"
1532
- }
1533
- ]
1534
- },
1535
- "record-directive": {
1536
- begin: "^\\s*+(-)\\s*+(record)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(,)",
1537
- beginCaptures: {
1538
- "1": {
1539
- name: "punctuation.section.directive.begin.erlang"
1540
- },
1541
- "2": {
1542
- name: "keyword.control.directive.import.erlang"
1543
- },
1544
- "3": {
1545
- name: "punctuation.definition.parameters.begin.erlang"
1546
- },
1547
- "4": {
1548
- name: "entity.name.type.class.record.definition.erlang"
1549
- },
1550
- "5": {
1551
- name: "punctuation.separator.parameters.erlang"
1552
- }
1553
- },
1554
- end: "(\\))\\s*+(\\.)",
1555
- endCaptures: {
1556
- "1": {
1557
- name: "punctuation.definition.parameters.end.erlang"
1558
- },
1559
- "2": {
1560
- name: "punctuation.section.directive.end.erlang"
1561
- }
1562
- },
1563
- name: "meta.directive.record.erlang",
1564
- patterns: [
1565
- {
1566
- include: "#internal-record-body"
1567
- },
1568
- {
1569
- include: "#comment"
1570
- }
1571
- ]
1572
- },
1573
- "record-usage": {
1574
- patterns: [
1575
- {
1576
- captures: {
1577
- "1": {
1578
- name: "keyword.operator.record.erlang"
1579
- },
1580
- "2": {
1581
- name: "entity.name.type.class.record.erlang"
1582
- },
1583
- "3": {
1584
- name: "punctuation.separator.record-field.erlang"
1585
- },
1586
- "4": {
1587
- name: "variable.other.field.erlang"
1588
- }
1589
- },
1590
- match: "(#)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(\\.)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')",
1591
- name: "meta.record-usage.erlang"
1592
- },
1593
- {
1594
- begin: "(#)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')",
1595
- beginCaptures: {
1596
- "1": {
1597
- name: "keyword.operator.record.erlang"
1598
- },
1599
- "2": {
1600
- name: "entity.name.type.class.record.erlang"
1601
- }
1602
- },
1603
- end: "(?<=\\})",
1604
- name: "meta.record-usage.erlang",
1605
- patterns: [
1606
- {
1607
- include: "#internal-record-body"
1608
- }
1609
- ]
1610
- }
1611
- ]
1612
- },
1613
- string: {
1614
- begin: "(\")",
1615
- beginCaptures: {
1616
- "1": {
1617
- name: "punctuation.definition.string.begin.erlang"
1618
- }
1619
- },
1620
- end: "(\")",
1621
- endCaptures: {
1622
- "1": {
1623
- name: "punctuation.definition.string.end.erlang"
1624
- }
1625
- },
1626
- name: "string.quoted.double.erlang",
1627
- patterns: [
1628
- {
1629
- captures: {
1630
- "1": {
1631
- name: "punctuation.definition.escape.erlang"
1632
- },
1633
- "3": {
1634
- name: "punctuation.definition.escape.erlang"
1635
- }
1636
- },
1637
- match: "(\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2})",
1638
- name: "constant.character.escape.erlang"
1639
- },
1640
- {
1641
- match: "\\\\\\^?.?",
1642
- name: "invalid.illegal.string.erlang"
1643
- },
1644
- {
1645
- captures: {
1646
- "1": {
1647
- name: "punctuation.definition.placeholder.erlang"
1648
- },
1649
- "3": {
1650
- name: "punctuation.separator.placeholder-parts.erlang"
1651
- },
1652
- "4": {
1653
- name: "punctuation.separator.placeholder-parts.erlang"
1654
- },
1655
- "6": {
1656
- name: "punctuation.separator.placeholder-parts.erlang"
1657
- },
1658
- "8": {
1659
- name: "punctuation.separator.placeholder-parts.erlang"
1660
- },
1661
- "10": {
1662
- name: "punctuation.separator.placeholder-parts.erlang"
1663
- },
1664
- "12": {
1665
- name: "punctuation.separator.placeholder-parts.erlang"
1666
- }
1667
- },
1668
- match: "(~)((\\-)?\\d++|(\\*))?((\\.)(\\d++|(\\*)))?((\\.)((\\*)|.))?[~cfegswpWPBX#bx\\+ni]",
1669
- name: "constant.other.placeholder.erlang"
1670
- },
1671
- {
1672
- captures: {
1673
- "1": {
1674
- name: "punctuation.definition.placeholder.erlang"
1675
- },
1676
- "2": {
1677
- name: "punctuation.separator.placeholder-parts.erlang"
1678
- }
1679
- },
1680
- match: "(~)(\\*)?(\\d++)?[~du\\-#fsacl]",
1681
- name: "constant.other.placeholder.erlang"
1682
- },
1683
- {
1684
- match: "~[^\"]?",
1685
- name: "invalid.illegal.string.erlang"
1686
- }
1687
- ]
1688
- },
1689
- "symbolic-operator": {
1690
- match: "\\+\\+|\\+|--|-|\\*|/=|/|=/=|=:=|==|=<|=|<-|<|>=|>|!|::",
1691
- name: "keyword.operator.symbolic.erlang"
1692
- },
1693
- "textual-operator": {
1694
- match: "\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\b",
1695
- name: "keyword.operator.textual.erlang"
1696
- },
1697
- tuple: {
1698
- begin: "(\\{)",
1699
- beginCaptures: {
1700
- "1": {
1701
- name: "punctuation.definition.tuple.begin.erlang"
1702
- }
1703
- },
1704
- end: "(\\})",
1705
- endCaptures: {
1706
- "1": {
1707
- name: "punctuation.definition.tuple.end.erlang"
1708
- }
1709
- },
1710
- name: "meta.structure.tuple.erlang",
1711
- patterns: [
1712
- {
1713
- match: ",",
1714
- name: "punctuation.separator.tuple.erlang"
1715
- },
1716
- {
1717
- include: "#everything-else"
1718
- }
1719
- ]
1720
- },
1721
- variable: {
1722
- captures: {
1723
- "1": {
1724
- name: "variable.other.erlang"
1725
- },
1726
- "2": {
1727
- name: "variable.language.omitted.erlang"
1728
- }
1729
- },
1730
- match: "(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)|(_)"
1731
- }
1732
- };
1733
- var scopeName = "source.erlang";
1734
- var uuid = "58EA597D-5158-4BF7-9FB2-B05135D1E166";
1735
- var information_for_contributors = [
1736
- "This file has been converted from https://github.com/pgourlain/vscode_erlang/blob/master/",
1737
- "If you want to provide a fix or improvement, please create a pull request against the original repository.",
1738
- "Once accepted there, we are happy to receive an update request."
1739
- ];
1740
- var Erlang_plist = {
1741
- comment: comment,
1742
- fileTypes: fileTypes,
1743
- keyEquivalent: keyEquivalent,
1744
- name: name,
1745
- patterns: patterns,
1746
- repository: repository,
1747
- scopeName: scopeName,
1748
- uuid: uuid,
1749
- information_for_contributors: information_for_contributors
1750
- };
1
+ var Erlang_plist = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>comment</key>\n\t<string>The recognition of function definitions and compiler directives (such as module, record and macro definitions) requires that each of the aforementioned constructs must be the first string inside a line (except for whitespace). Also, the function/module/record/macro names must be given unquoted. -- desp</string>\n\t<key>fileTypes</key>\n\t<array>\n\t\t<string>erl</string>\n\t\t<string>escript</string>\n\t\t<string>hrl</string>\n\t\t<string>xrl</string>\n\t\t<string>yrl</string>\n\t</array>\n\t<key>keyEquivalent</key>\n\t<string>^~E</string>\n\t<key>name</key>\n\t<string>Erlang</string>\n\t<key>patterns</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#module-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#import-export-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#behaviour-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#record-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#define-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#macro-directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#directive</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#function</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>include</key>\n\t\t\t<string>#everything-else</string>\n\t\t</dict>\n\t</array>\n\t<key>repository</key>\n\t<dict>\n\t\t<key>atom</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(')</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.symbol.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(')</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.symbol.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.other.symbol.quoted.single.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>(\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2})</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>constant.other.symbol.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>\\\\\\^?.?</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>invalid.illegal.atom.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>[a-z][a-zA-Z\\d@_]*+</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.other.symbol.unquoted.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>behaviour-directive</key>\n\t\t<dict>\n\t\t\t<key>captures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>keyword.control.directive.behaviour.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>3</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>4</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>entity.name.type.class.behaviour.definition.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>5</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>6</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>match</key>\n\t\t\t<string>^\\s*+(-)\\s*+(behaviour)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\))\\s*+(\\.)</string>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.directive.behaviour.erlang</string>\n\t\t</dict>\n\t\t<key>binary</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(&lt;&lt;)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.binary.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(&gt;&gt;)</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.binary.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.structure.binary.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.binary.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.value-size.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(,)|(:)</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#internal-type-specifiers</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>character</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.character.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>constant.character.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(\\$)((\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2}))</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.character.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\$\\\\\\^?.?</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>invalid.illegal.character.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.character.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(\\$)[ \\S]</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.character.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\$.?</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>invalid.illegal.character.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>comment</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(^[ \\t]+)?(?=%)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.whitespace.comment.leading.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(?!\\G)</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>%</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>0</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.comment.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\n</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>comment.line.percentage.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>define-directive</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(define)\\s*+(\\()\\s*+([a-zA-Z\\d@_]++)\\s*+</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.define.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.macro.definition.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.define.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(?=^\\s*+-\\s*+define\\s*+\\(\\s*+[a-zA-Z\\d@_]++\\s*+\\()</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.define.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t\t\t<string>^\\s*+(-)\\s*+(define)\\s*+(\\()\\s*+([a-zA-Z\\d@_]++)\\s*+(\\()</string>\n\t\t\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>keyword.control.directive.define.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>entity.name.function.macro.definition.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>end</key>\n\t\t\t\t\t\t\t<string>(\\))\\s*(,)</string>\n\t\t\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t\t\t<string>,</string>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>\\|\\||\\||:|;|,|\\.|-&gt;</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.define.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>directive</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\(?)</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\)?)\\s*+(\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\.)</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>everything-else</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#comment</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#record-usage</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#macro-usage</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#expression</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#keyword</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#textual-operator</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#language-constant</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#function-call</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#tuple</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#list</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#binary</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#parenthesized-expression</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#character</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#number</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#atom</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#string</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#symbolic-operator</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#variable</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>expression</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(if)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.if.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.if.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-expression-punctuation</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(case)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.case.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.case.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-expression-punctuation</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(receive)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.receive.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.receive.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-expression-punctuation</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.fun.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>10</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.function-arity.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.module.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.module-function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>8</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>9</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>comment</key>\n\t\t\t\t\t<string>Implicit function expression with optional module qualifier when both module and function can be atom or variable</string>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\b(fun)\\s+((([a-z][a-zA-Z\\d@_]*+)|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)\\s*+)?(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*(/)</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.fun.implicit.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(fun)\\s+(([a-z][a-zA-Z\\d@_]*+)|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.fun.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.module.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.module-function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>comment</key>\n\t\t\t\t\t<string>Implicit function expression with module qualifier when module can be atom or variable and function can by anything</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(/)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.function-arity.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.fun.implicit.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(fun)\\s+(?!\\()</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.fun.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>comment</key>\n\t\t\t\t\t<string>Implicit function expression when both module and function can by anything</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(/)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.function-arity.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.fun.implicit.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(fun)\\s*+(\\()(?=(\\s*+\\())</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>comment</key>\n\t\t\t\t\t<string>Function type in type specification</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\))</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(fun)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.fun.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>comment</key>\n\t\t\t\t\t<string>Explicit function expression</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.fun.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t\t\t<string>(?=\\()</string>\n\t\t\t\t\t\t\t<key>end</key>\n\t\t\t\t\t\t\t<string>(;)|(?=\\bend\\b)</string>\n\t\t\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.separator.clauses.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t\t\t<string>#internal-function-parts</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(try)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.try.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.try.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-expression-punctuation</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>\\b(begin)\\b</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>\\b(end)\\b</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.expression.begin.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-expression-punctuation</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>function</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>^\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(?=\\()</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>entity.name.function.definition.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\.)</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.terminator.function.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.function.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>^\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(?=\\()</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(?=\\()</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(;)|(?=\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.clauses.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#parenthesized-expression</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-function-parts</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>function-call</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(?=([a-z][a-zA-Z\\d@_]*+|'[^']*+'|_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)\\s*+(\\(|:\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+'|_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)\\s*+\\())</string>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\))</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.function-call.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>((erlang)\\s*+(:)\\s*+)?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)\\s*+(\\()</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.module.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.module-function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.guard.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(?=\\))</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>,</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>((([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(:)\\s*+)?(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+))\\s*+(\\()</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.module.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.module-function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>7</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>8</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>9</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(?=\\))</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>,</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>import-export-directive</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(import)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(,)</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.import.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.module.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.import.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-function-list</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(export)\\s*+(\\()</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.export.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.export.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-function-list</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>internal-expression-punctuation</key>\n\t\t<dict>\n\t\t\t<key>captures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.clause-head-body.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.clauses.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>3</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.expressions.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>match</key>\n\t\t\t<string>(-&gt;)|(;)|(,)</string>\n\t\t</dict>\n\t\t<key>internal-function-list</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\\[)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.list.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\])</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.list.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.structure.list.function.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(/)</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.function-arity.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(,)|(?=\\])</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.list.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>internal-function-parts</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(?=\\()</string>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(-&gt;)</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.clause-head-body.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t\t\t<string>(\\()</string>\n\t\t\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>end</key>\n\t\t\t\t\t\t\t<string>(\\))</string>\n\t\t\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t\t\t<string>,</string>\n\t\t\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>match</key>\n\t\t\t\t\t\t\t<string>,|;</string>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.guards.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>,</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.expressions.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>internal-record-body</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\\{)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.class.record.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\})</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.class.record.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.structure.record.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(([a-z][a-zA-Z\\d@_]*+|'[^']*+')|(_))</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.field.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.language.omitted.field.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(,)|(?=\\})</string>\n\t\t\t\t\t<key>endCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.class.record.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>internal-type-specifiers</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(/)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.value-type.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(?=,|:|&gt;&gt;)</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>storage.type.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>storage.modifier.signedness.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>storage.modifier.endianness.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>storage.modifier.unit.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.unit-specifiers.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>constant.numeric.integer.decimal.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>7</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.type-specifiers.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)(\\d++)|(-)</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>keyword</key>\n\t\t<dict>\n\t\t\t<key>match</key>\n\t\t\t<string>\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when)\\b</string>\n\t\t\t<key>name</key>\n\t\t\t<string>keyword.control.erlang</string>\n\t\t</dict>\n\t\t<key>language-constant</key>\n\t\t<dict>\n\t\t\t<key>match</key>\n\t\t\t<string>\\b(false|true|undefined)\\b</string>\n\t\t\t<key>name</key>\n\t\t\t<string>constant.language</string>\n\t\t</dict>\n\t\t<key>list</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\\[)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.list.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\])</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.list.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.structure.list.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\||\\|\\||,</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.list.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>macro-directive</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.ifdef.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.macro.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(ifdef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.ifdef.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.ifndef.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.macro.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(ifndef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.ifndef.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.control.directive.undef.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.function.macro.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>5</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>^\\s*+(-)\\s*+(undef)\\s*+(\\()\\s*+([a-zA-z\\d@_]++)\\s*+(\\))\\s*+(\\.)</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.directive.undef.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>macro-usage</key>\n\t\t<dict>\n\t\t\t<key>captures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>keyword.operator.macro.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>entity.name.function.macro.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>match</key>\n\t\t\t<string>(\\?\\??)\\s*+([a-zA-Z\\d@_]++)</string>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.macro-usage.erlang</string>\n\t\t</dict>\n\t\t<key>module-directive</key>\n\t\t<dict>\n\t\t\t<key>captures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>keyword.control.directive.module.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>3</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>4</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>entity.name.type.class.module.definition.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>5</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>6</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>match</key>\n\t\t\t<string>^\\s*+(-)\\s*+(module)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+)\\s*+(\\))\\s*+(\\.)</string>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.directive.module.erlang</string>\n\t\t</dict>\n\t\t<key>number</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(?=\\d)</string>\n\t\t\t<key>end</key>\n\t\t\t<string>(?!\\d)</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.integer-float.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.float-exponent.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\d++(\\.)\\d++([eE][\\+\\-]?\\d++)?</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.float.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>2(#)([0-1]++_)*[0-1]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.binary.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>3(#)([0-2]++_)*[0-2]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-3.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>4(#)([0-3]++_)*[0-3]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-4.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>5(#)([0-4]++_)*[0-4]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-5.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>6(#)([0-5]++_)*[0-5]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-6.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>7(#)([0-6]++_)*[0-6]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-7.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>8(#)([0-7]++_)*[0-7]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.octal.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>9(#)([0-8]++_)*[0-8]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-9.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>10(#)(\\d++_)*\\d++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.decimal.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>11(#)([\\daA]++_)*[\\daA]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-11.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>12(#)([\\da-bA-B]++_)*[\\da-bA-B]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-12.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>13(#)([\\da-cA-C]++_)*[\\da-cA-C]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-13.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>14(#)([\\da-dA-D]++_)*[\\da-dA-D]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-14.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>15(#)([\\da-eA-E]++_)*[\\da-eA-E]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-15.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>16(#)([\\da-fA-F]++_)*[\\da-fA-F]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.hexadecimal.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>17(#)([\\da-gA-G]++_)*[\\da-gA-G]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-17.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>18(#)([\\da-hA-H]++_)*[\\da-hA-H]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-18.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>19(#)([\\da-iA-I]++_)*[\\da-iA-I]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-19.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>20(#)([\\da-jA-J]++_)*[\\da-jA-J]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-20.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>21(#)([\\da-kA-K]++_)*[\\da-kA-K]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-21.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>22(#)([\\da-lA-L]++_)*[\\da-lA-L]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-22.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>23(#)([\\da-mA-M]++_)*[\\da-mA-M]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-23.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>24(#)([\\da-nA-N]++_)*[\\da-nA-N]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-24.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>25(#)([\\da-oA-O]++_)*[\\da-oA-O]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-25.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>26(#)([\\da-pA-P]++_)*[\\da-pA-P]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-26.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>27(#)([\\da-qA-Q]++_)*[\\da-qA-Q]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-27.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>28(#)([\\da-rA-R]++_)*[\\da-rA-R]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-28.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>29(#)([\\da-sA-S]++_)*[\\da-sA-S]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-29.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>30(#)([\\da-tA-T]++_)*[\\da-tA-T]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-30.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>31(#)([\\da-uA-U]++_)*[\\da-uA-U]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-31.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>32(#)([\\da-vA-V]++_)*[\\da-vA-V]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-32.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>33(#)([\\da-wA-W]++_)*[\\da-wA-W]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-33.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>34(#)([\\da-xA-X]++_)*[\\da-xA-X]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-34.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>35(#)([\\da-yA-Y]++_)*[\\da-yA-Y]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-35.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.base-integer.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>36(#)([\\da-zA-Z]++_)*[\\da-zA-Z]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.base-36.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\d++#([\\da-zA-Z]++_)*[\\da-zA-Z]++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>invalid.illegal.integer.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(\\d++_)*\\d++</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.numeric.integer.decimal.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>parenthesized-expression</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\\()</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.expression.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\))</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.expression.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.expression.parenthesized</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>record-directive</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>^\\s*+(-)\\s*+(record)\\s*+(\\()\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(,)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>keyword.control.directive.import.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>3</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>4</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>entity.name.type.class.record.definition.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>5</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.parameters.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\))\\s*+(\\.)</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.parameters.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.section.directive.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.directive.record.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#internal-record-body</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#comment</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>record-usage</key>\n\t\t<dict>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.operator.record.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.record.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.record-field.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>variable.other.field.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(#)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')\\s*+(\\.)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.record-usage.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>begin</key>\n\t\t\t\t\t<string>(#)\\s*+([a-z][a-zA-Z\\d@_]*+|'[^']*+')</string>\n\t\t\t\t\t<key>beginCaptures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>keyword.operator.record.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>entity.name.type.class.record.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>end</key>\n\t\t\t\t\t<string>(?&lt;=\\})</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>meta.record-usage.erlang</string>\n\t\t\t\t\t<key>patterns</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>include</key>\n\t\t\t\t\t\t\t<string>#internal-record-body</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>string</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\")</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.string.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\")</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.string.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>string.quoted.double.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.escape.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(\\\\)([bdefnrstv\\\\'\"]|(\\^)[@-_a-z]|[0-7]{1,3}|x[\\da-fA-F]{2})</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.character.escape.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>\\\\\\^?.?</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>invalid.illegal.string.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.placeholder.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>10</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>12</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>3</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>4</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>6</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>8</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(~)((\\-)?\\d++|(\\*))?((\\.)(\\d++|(\\*)))?((\\.)((\\*)|.))?[~cfegswpWPBX#bx\\+ni]</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.other.placeholder.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>captures</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>1</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.definition.placeholder.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<key>2</key>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>name</key>\n\t\t\t\t\t\t\t<string>punctuation.separator.placeholder-parts.erlang</string>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>(~)(\\*)?(\\d++)?[~du\\-#fsacl]</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>constant.other.placeholder.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>~[^\"]?</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>invalid.illegal.string.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>symbolic-operator</key>\n\t\t<dict>\n\t\t\t<key>match</key>\n\t\t\t<string>\\+\\+|\\+|--|-|\\*|/=|/|=/=|=:=|==|=&lt;|=|&lt;-|&lt;|&gt;=|&gt;|!|::</string>\n\t\t\t<key>name</key>\n\t\t\t<string>keyword.operator.symbolic.erlang</string>\n\t\t</dict>\n\t\t<key>textual-operator</key>\n\t\t<dict>\n\t\t\t<key>match</key>\n\t\t\t<string>\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\b</string>\n\t\t\t<key>name</key>\n\t\t\t<string>keyword.operator.textual.erlang</string>\n\t\t</dict>\n\t\t<key>tuple</key>\n\t\t<dict>\n\t\t\t<key>begin</key>\n\t\t\t<string>(\\{)</string>\n\t\t\t<key>beginCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.tuple.begin.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>end</key>\n\t\t\t<string>(\\})</string>\n\t\t\t<key>endCaptures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.definition.tuple.end.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>name</key>\n\t\t\t<string>meta.structure.tuple.erlang</string>\n\t\t\t<key>patterns</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>match</key>\n\t\t\t\t\t<string>,</string>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>punctuation.separator.tuple.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>include</key>\n\t\t\t\t\t<string>#everything-else</string>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>variable</key>\n\t\t<dict>\n\t\t\t<key>captures</key>\n\t\t\t<dict>\n\t\t\t\t<key>1</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>variable.other.erlang</string>\n\t\t\t\t</dict>\n\t\t\t\t<key>2</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>name</key>\n\t\t\t\t\t<string>variable.language.omitted.erlang</string>\n\t\t\t\t</dict>\n\t\t\t</dict>\n\t\t\t<key>match</key>\n\t\t\t<string>(_[a-zA-Z\\d@_]++|[A-Z][a-zA-Z\\d@_]*+)|(_)</string>\n\t\t</dict>\n\t</dict>\n\t<key>scopeName</key>\n\t<string>source.erlang</string>\n\t<key>uuid</key>\n\t<string>58EA597D-5158-4BF7-9FB2-B05135D1E166</string>\n</dict>\n</plist>\n";
1751
2
 
1752
- export { comment, Erlang_plist as default, fileTypes, information_for_contributors, keyEquivalent, name, patterns, repository, scopeName, uuid };
3
+ export { Erlang_plist as default };