app-ai-solution-exp 0.1.2

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 (173) hide show
  1. package/bin/app-ai-solution-exp.js +20 -0
  2. package/out/main/index.js +1631 -0
  3. package/out/preload/index.js +108 -0
  4. package/out/renderer/assets/abap-D5KwWAsZ.js +1399 -0
  5. package/out/renderer/assets/apex-DVGUZ64i.js +331 -0
  6. package/out/renderer/assets/azcli-BEAhqcuE.js +69 -0
  7. package/out/renderer/assets/bat-Bqkp9Cfu.js +101 -0
  8. package/out/renderer/assets/bicep-DIlfshcM.js +110 -0
  9. package/out/renderer/assets/cameligo-CLaaYNMV.js +175 -0
  10. package/out/renderer/assets/clojure-fcgFaMHx.js +762 -0
  11. package/out/renderer/assets/codicon-ngg6Pgfi.ttf +0 -0
  12. package/out/renderer/assets/coffee-CzJ5oEdj.js +233 -0
  13. package/out/renderer/assets/cpp-CcN6f0ik.js +390 -0
  14. package/out/renderer/assets/csharp-BJeIuvde.js +327 -0
  15. package/out/renderer/assets/csp-D_3BK2Wp.js +54 -0
  16. package/out/renderer/assets/css-i3rI3_64.js +186 -0
  17. package/out/renderer/assets/css.worker-umuuUiIb.js +53567 -0
  18. package/out/renderer/assets/cssMode-BlKZF8mS.js +208 -0
  19. package/out/renderer/assets/cypher-D0--_GAN.js +264 -0
  20. package/out/renderer/assets/dart-vLMHv35g.js +282 -0
  21. package/out/renderer/assets/dockerfile--oxj0cAH.js +131 -0
  22. package/out/renderer/assets/ecl-CeuUgzaZ.js +457 -0
  23. package/out/renderer/assets/editor.worker-CNgWLVu7.js +13695 -0
  24. package/out/renderer/assets/elixir-eLfY1jWH.js +570 -0
  25. package/out/renderer/assets/flow9-ZSTChSMd.js +143 -0
  26. package/out/renderer/assets/freemarker2-BTb0QKKy.js +995 -0
  27. package/out/renderer/assets/fsharp-D2uoxuLH.js +218 -0
  28. package/out/renderer/assets/go-brnMpFrj.js +219 -0
  29. package/out/renderer/assets/graphql-BeiGgjIU.js +152 -0
  30. package/out/renderer/assets/handlebars-DKVnkZoO.js +414 -0
  31. package/out/renderer/assets/hcl-CrX1Es2W.js +184 -0
  32. package/out/renderer/assets/html-DSHBWNSF.js +303 -0
  33. package/out/renderer/assets/html.worker-BT47iy49.js +29777 -0
  34. package/out/renderer/assets/htmlMode-hdSFcfq-.js +224 -0
  35. package/out/renderer/assets/index-ByP1RhpK.js +309272 -0
  36. package/out/renderer/assets/index-CgixHIqL.css +11502 -0
  37. package/out/renderer/assets/ini-BcQysCTb.js +72 -0
  38. package/out/renderer/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
  39. package/out/renderer/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
  40. package/out/renderer/assets/inter-cyrillic-500-normal-BasfLYem.woff2 +0 -0
  41. package/out/renderer/assets/inter-cyrillic-500-normal-CxZf_p3X.woff +0 -0
  42. package/out/renderer/assets/inter-cyrillic-600-normal-4D_pXhcN.woff +0 -0
  43. package/out/renderer/assets/inter-cyrillic-600-normal-CWCymEST.woff2 +0 -0
  44. package/out/renderer/assets/inter-cyrillic-700-normal-CjBOestx.woff2 +0 -0
  45. package/out/renderer/assets/inter-cyrillic-700-normal-DrXBdSj3.woff +0 -0
  46. package/out/renderer/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
  47. package/out/renderer/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
  48. package/out/renderer/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2 +0 -0
  49. package/out/renderer/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff +0 -0
  50. package/out/renderer/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff +0 -0
  51. package/out/renderer/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2 +0 -0
  52. package/out/renderer/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2 +0 -0
  53. package/out/renderer/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff +0 -0
  54. package/out/renderer/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
  55. package/out/renderer/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
  56. package/out/renderer/assets/inter-greek-500-normal-BIZE56-Y.woff2 +0 -0
  57. package/out/renderer/assets/inter-greek-500-normal-Xzm54t5V.woff +0 -0
  58. package/out/renderer/assets/inter-greek-600-normal-BZpKdvQh.woff +0 -0
  59. package/out/renderer/assets/inter-greek-600-normal-plRanbMR.woff2 +0 -0
  60. package/out/renderer/assets/inter-greek-700-normal-BUv2fZ6O.woff +0 -0
  61. package/out/renderer/assets/inter-greek-700-normal-C3JjAnD8.woff2 +0 -0
  62. package/out/renderer/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
  63. package/out/renderer/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
  64. package/out/renderer/assets/inter-greek-ext-500-normal-2j5mBUwD.woff +0 -0
  65. package/out/renderer/assets/inter-greek-ext-500-normal-C4iEst2y.woff2 +0 -0
  66. package/out/renderer/assets/inter-greek-ext-600-normal-B8X0CLgF.woff +0 -0
  67. package/out/renderer/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2 +0 -0
  68. package/out/renderer/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff +0 -0
  69. package/out/renderer/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2 +0 -0
  70. package/out/renderer/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
  71. package/out/renderer/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
  72. package/out/renderer/assets/inter-latin-500-normal-BL9OpVg8.woff +0 -0
  73. package/out/renderer/assets/inter-latin-500-normal-Cerq10X2.woff2 +0 -0
  74. package/out/renderer/assets/inter-latin-600-normal-CiBQ2DWP.woff +0 -0
  75. package/out/renderer/assets/inter-latin-600-normal-LgqL8muc.woff2 +0 -0
  76. package/out/renderer/assets/inter-latin-700-normal-BLAVimhd.woff +0 -0
  77. package/out/renderer/assets/inter-latin-700-normal-Yt3aPRUw.woff2 +0 -0
  78. package/out/renderer/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
  79. package/out/renderer/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
  80. package/out/renderer/assets/inter-latin-ext-500-normal-BxGbmqWO.woff +0 -0
  81. package/out/renderer/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2 +0 -0
  82. package/out/renderer/assets/inter-latin-ext-600-normal-CIVaiw4L.woff +0 -0
  83. package/out/renderer/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2 +0 -0
  84. package/out/renderer/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2 +0 -0
  85. package/out/renderer/assets/inter-latin-ext-700-normal-TidjK2hL.woff +0 -0
  86. package/out/renderer/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
  87. package/out/renderer/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
  88. package/out/renderer/assets/inter-vietnamese-500-normal-DOriooB6.woff2 +0 -0
  89. package/out/renderer/assets/inter-vietnamese-500-normal-mJboJaSs.woff +0 -0
  90. package/out/renderer/assets/inter-vietnamese-600-normal-BuLX-rYi.woff +0 -0
  91. package/out/renderer/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 +0 -0
  92. package/out/renderer/assets/inter-vietnamese-700-normal-BZaoP0fm.woff +0 -0
  93. package/out/renderer/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2 +0 -0
  94. package/out/renderer/assets/java-Dt3iMn2o.js +233 -0
  95. package/out/renderer/assets/javascript-Ae6t5gfn.js +72 -0
  96. package/out/renderer/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
  97. package/out/renderer/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
  98. package/out/renderer/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff +0 -0
  99. package/out/renderer/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2 +0 -0
  100. package/out/renderer/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
  101. package/out/renderer/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
  102. package/out/renderer/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff +0 -0
  103. package/out/renderer/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2 +0 -0
  104. package/out/renderer/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  105. package/out/renderer/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  106. package/out/renderer/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
  107. package/out/renderer/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
  108. package/out/renderer/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
  109. package/out/renderer/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
  110. package/out/renderer/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2 +0 -0
  111. package/out/renderer/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff +0 -0
  112. package/out/renderer/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
  113. package/out/renderer/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff +0 -0
  114. package/out/renderer/assets/json.worker-D4JVmXIe.js +21424 -0
  115. package/out/renderer/assets/jsonMode-B3dQSNhP.js +931 -0
  116. package/out/renderer/assets/julia-Cm3ItYL_.js +512 -0
  117. package/out/renderer/assets/kotlin-Ddo1SjA5.js +253 -0
  118. package/out/renderer/assets/less-B7Qaxw-O.js +162 -0
  119. package/out/renderer/assets/lexon-C1U0m2n9.js +158 -0
  120. package/out/renderer/assets/liquid-Zgyb8DZ5.js +235 -0
  121. package/out/renderer/assets/lspLanguageFeatures-CkDn9c2y.js +1841 -0
  122. package/out/renderer/assets/lua-hNsuGJkO.js +163 -0
  123. package/out/renderer/assets/m3-6ko6q9-_.js +211 -0
  124. package/out/renderer/assets/markdown-B0YTnTxW.js +230 -0
  125. package/out/renderer/assets/mdx-C8e8DFOf.js +159 -0
  126. package/out/renderer/assets/mips-CJm71dS3.js +199 -0
  127. package/out/renderer/assets/msdax-BBeIktCY.js +376 -0
  128. package/out/renderer/assets/mysql-BWiizXSn.js +879 -0
  129. package/out/renderer/assets/objective-c-B1L1C5EC.js +184 -0
  130. package/out/renderer/assets/pascal-DMQyD4Xk.js +252 -0
  131. package/out/renderer/assets/pascaligo-VA_LQ1oU.js +165 -0
  132. package/out/renderer/assets/perl-DC0Z0tlO.js +627 -0
  133. package/out/renderer/assets/pgsql-DaSGFTLp.js +852 -0
  134. package/out/renderer/assets/php-Bkx1qpkQ.js +501 -0
  135. package/out/renderer/assets/pla-DEV89yYj.js +138 -0
  136. package/out/renderer/assets/postiats-CVVurEnu.js +908 -0
  137. package/out/renderer/assets/powerquery-BQ_t1ZiQ.js +891 -0
  138. package/out/renderer/assets/powershell-BXiKvz7Z.js +240 -0
  139. package/out/renderer/assets/protobuf-CndvAUGu.js +421 -0
  140. package/out/renderer/assets/pug-BxCXwerb.js +403 -0
  141. package/out/renderer/assets/python-8eSQckTG.js +295 -0
  142. package/out/renderer/assets/qsharp-BWK6YLKm.js +302 -0
  143. package/out/renderer/assets/r-CtqYUQ6l.js +244 -0
  144. package/out/renderer/assets/razor-eAkN4Qfv.js +545 -0
  145. package/out/renderer/assets/redis-O7gSt3oh.js +303 -0
  146. package/out/renderer/assets/redshift-CvYMMYZY.js +810 -0
  147. package/out/renderer/assets/restructuredtext-B-KQCVu_.js +175 -0
  148. package/out/renderer/assets/ruby-DCd4DmAr.js +512 -0
  149. package/out/renderer/assets/rust-B1c0VCeq.js +344 -0
  150. package/out/renderer/assets/sb-Chfc_wZF.js +116 -0
  151. package/out/renderer/assets/scala-DbVzH-3O.js +371 -0
  152. package/out/renderer/assets/scheme-D7PxodDG.js +109 -0
  153. package/out/renderer/assets/scss-B42qMyAu.js +261 -0
  154. package/out/renderer/assets/shell-vZEubQ82.js +222 -0
  155. package/out/renderer/assets/solidity-yHOxYChb.js +1368 -0
  156. package/out/renderer/assets/sophia-D7pU0Y1d.js +200 -0
  157. package/out/renderer/assets/sparql-DxuVdnRl.js +202 -0
  158. package/out/renderer/assets/sql-BAGepFCR.js +854 -0
  159. package/out/renderer/assets/st-C-b0Dh53.js +417 -0
  160. package/out/renderer/assets/swift-BmOZGynf.js +313 -0
  161. package/out/renderer/assets/systemverilog-BOC0OOdC.js +577 -0
  162. package/out/renderer/assets/tcl-Bb4GCwBr.js +233 -0
  163. package/out/renderer/assets/ts.worker-C7hW3aY-.js +225330 -0
  164. package/out/renderer/assets/tsMode-D7ET908H.js +1265 -0
  165. package/out/renderer/assets/twig-DvgEGWAV.js +393 -0
  166. package/out/renderer/assets/typescript-BhqUlrW4.js +337 -0
  167. package/out/renderer/assets/typespec-R77Ln7Jb.js +128 -0
  168. package/out/renderer/assets/vb-Bm6ESA0Q.js +373 -0
  169. package/out/renderer/assets/wgsl-_KPae5vw.js +454 -0
  170. package/out/renderer/assets/xml-Bg3Ctug6.js +89 -0
  171. package/out/renderer/assets/yaml-C9aCL4uU.js +200 -0
  172. package/out/renderer/index.html +13 -0
  173. package/package.json +110 -0
@@ -0,0 +1,163 @@
1
+ const conf = {
2
+ comments: {
3
+ lineComment: "--",
4
+ blockComment: ["--[[", "]]"]
5
+ },
6
+ brackets: [
7
+ ["{", "}"],
8
+ ["[", "]"],
9
+ ["(", ")"]
10
+ ],
11
+ autoClosingPairs: [
12
+ { open: "{", close: "}" },
13
+ { open: "[", close: "]" },
14
+ { open: "(", close: ")" },
15
+ { open: '"', close: '"' },
16
+ { open: "'", close: "'" }
17
+ ],
18
+ surroundingPairs: [
19
+ { open: "{", close: "}" },
20
+ { open: "[", close: "]" },
21
+ { open: "(", close: ")" },
22
+ { open: '"', close: '"' },
23
+ { open: "'", close: "'" }
24
+ ]
25
+ };
26
+ const language = {
27
+ defaultToken: "",
28
+ tokenPostfix: ".lua",
29
+ keywords: [
30
+ "and",
31
+ "break",
32
+ "do",
33
+ "else",
34
+ "elseif",
35
+ "end",
36
+ "false",
37
+ "for",
38
+ "function",
39
+ "goto",
40
+ "if",
41
+ "in",
42
+ "local",
43
+ "nil",
44
+ "not",
45
+ "or",
46
+ "repeat",
47
+ "return",
48
+ "then",
49
+ "true",
50
+ "until",
51
+ "while"
52
+ ],
53
+ brackets: [
54
+ { token: "delimiter.bracket", open: "{", close: "}" },
55
+ { token: "delimiter.array", open: "[", close: "]" },
56
+ { token: "delimiter.parenthesis", open: "(", close: ")" }
57
+ ],
58
+ operators: [
59
+ "+",
60
+ "-",
61
+ "*",
62
+ "/",
63
+ "%",
64
+ "^",
65
+ "#",
66
+ "==",
67
+ "~=",
68
+ "<=",
69
+ ">=",
70
+ "<",
71
+ ">",
72
+ "=",
73
+ ";",
74
+ ":",
75
+ ",",
76
+ ".",
77
+ "..",
78
+ "..."
79
+ ],
80
+ // we include these common regular expressions
81
+ symbols: /[=><!~?:&|+\-*\/\^%]+/,
82
+ escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
83
+ // The main tokenizer for our languages
84
+ tokenizer: {
85
+ root: [
86
+ // identifiers and keywords
87
+ [
88
+ /[a-zA-Z_]\w*/,
89
+ {
90
+ cases: {
91
+ "@keywords": { token: "keyword.$0" },
92
+ "@default": "identifier"
93
+ }
94
+ }
95
+ ],
96
+ // whitespace
97
+ { include: "@whitespace" },
98
+ // keys
99
+ [/(,)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/, ["delimiter", "", "key", "", "delimiter"]],
100
+ [/({)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/, ["@brackets", "", "key", "", "delimiter"]],
101
+ // delimiters and operators
102
+ [/[{}()\[\]]/, "@brackets"],
103
+ [
104
+ /@symbols/,
105
+ {
106
+ cases: {
107
+ "@operators": "delimiter",
108
+ "@default": ""
109
+ }
110
+ }
111
+ ],
112
+ // numbers
113
+ [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
114
+ [/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/, "number.hex"],
115
+ [/\d+?/, "number"],
116
+ // delimiter: after number because of .\d floats
117
+ [/[;,.]/, "delimiter"],
118
+ // strings: recover on non-terminated strings
119
+ [/"([^"\\]|\\.)*$/, "string.invalid"],
120
+ // non-teminated string
121
+ [/'([^'\\]|\\.)*$/, "string.invalid"],
122
+ // non-teminated string
123
+ [/"/, "string", '@string."'],
124
+ [/'/, "string", "@string.'"]
125
+ ],
126
+ whitespace: [
127
+ [/[ \t\r\n]+/, ""],
128
+ [/--\[([=]*)\[/, "comment", "@comment.$1"],
129
+ [/--.*$/, "comment"]
130
+ ],
131
+ comment: [
132
+ [/[^\]]+/, "comment"],
133
+ [
134
+ /\]([=]*)\]/,
135
+ {
136
+ cases: {
137
+ "$1==$S2": { token: "comment", next: "@pop" },
138
+ "@default": "comment"
139
+ }
140
+ }
141
+ ],
142
+ [/./, "comment"]
143
+ ],
144
+ string: [
145
+ [/[^\\"']+/, "string"],
146
+ [/@escapes/, "string.escape"],
147
+ [/\\./, "string.escape.invalid"],
148
+ [
149
+ /["']/,
150
+ {
151
+ cases: {
152
+ "$#==$S2": { token: "string", next: "@pop" },
153
+ "@default": "string"
154
+ }
155
+ }
156
+ ]
157
+ ]
158
+ }
159
+ };
160
+ export {
161
+ conf,
162
+ language
163
+ };
@@ -0,0 +1,211 @@
1
+ const conf = {
2
+ comments: {
3
+ blockComment: ["(*", "*)"]
4
+ },
5
+ brackets: [
6
+ ["{", "}"],
7
+ ["[", "]"],
8
+ ["(", ")"]
9
+ ],
10
+ autoClosingPairs: [
11
+ { open: "[", close: "]" },
12
+ { open: "{", close: "}" },
13
+ { open: "(", close: ")" },
14
+ { open: "(*", close: "*)" },
15
+ { open: "<*", close: "*>" },
16
+ { open: "'", close: "'", notIn: ["string", "comment"] },
17
+ { open: '"', close: '"', notIn: ["string", "comment"] }
18
+ ]
19
+ };
20
+ const language = {
21
+ defaultToken: "",
22
+ tokenPostfix: ".m3",
23
+ brackets: [
24
+ { token: "delimiter.curly", open: "{", close: "}" },
25
+ { token: "delimiter.parenthesis", open: "(", close: ")" },
26
+ { token: "delimiter.square", open: "[", close: "]" }
27
+ ],
28
+ keywords: [
29
+ "AND",
30
+ "ANY",
31
+ "ARRAY",
32
+ "AS",
33
+ "BEGIN",
34
+ "BITS",
35
+ "BRANDED",
36
+ "BY",
37
+ "CASE",
38
+ "CONST",
39
+ "DIV",
40
+ "DO",
41
+ "ELSE",
42
+ "ELSIF",
43
+ "END",
44
+ "EVAL",
45
+ "EXCEPT",
46
+ "EXCEPTION",
47
+ "EXIT",
48
+ "EXPORTS",
49
+ "FINALLY",
50
+ "FOR",
51
+ "FROM",
52
+ "GENERIC",
53
+ "IF",
54
+ "IMPORT",
55
+ "IN",
56
+ "INTERFACE",
57
+ "LOCK",
58
+ "LOOP",
59
+ "METHODS",
60
+ "MOD",
61
+ "MODULE",
62
+ "NOT",
63
+ "OBJECT",
64
+ "OF",
65
+ "OR",
66
+ "OVERRIDES",
67
+ "PROCEDURE",
68
+ "RAISE",
69
+ "RAISES",
70
+ "READONLY",
71
+ "RECORD",
72
+ "REF",
73
+ "REPEAT",
74
+ "RETURN",
75
+ "REVEAL",
76
+ "SET",
77
+ "THEN",
78
+ "TO",
79
+ "TRY",
80
+ "TYPE",
81
+ "TYPECASE",
82
+ "UNSAFE",
83
+ "UNTIL",
84
+ "UNTRACED",
85
+ "VALUE",
86
+ "VAR",
87
+ "WHILE",
88
+ "WITH"
89
+ ],
90
+ reservedConstNames: [
91
+ "ABS",
92
+ "ADR",
93
+ "ADRSIZE",
94
+ "BITSIZE",
95
+ "BYTESIZE",
96
+ "CEILING",
97
+ "DEC",
98
+ "DISPOSE",
99
+ "FALSE",
100
+ "FIRST",
101
+ "FLOAT",
102
+ "FLOOR",
103
+ "INC",
104
+ "ISTYPE",
105
+ "LAST",
106
+ "LOOPHOLE",
107
+ "MAX",
108
+ "MIN",
109
+ "NARROW",
110
+ "NEW",
111
+ "NIL",
112
+ "NUMBER",
113
+ "ORD",
114
+ "ROUND",
115
+ "SUBARRAY",
116
+ "TRUE",
117
+ "TRUNC",
118
+ "TYPECODE",
119
+ "VAL"
120
+ ],
121
+ reservedTypeNames: [
122
+ "ADDRESS",
123
+ "ANY",
124
+ "BOOLEAN",
125
+ "CARDINAL",
126
+ "CHAR",
127
+ "EXTENDED",
128
+ "INTEGER",
129
+ "LONGCARD",
130
+ "LONGINT",
131
+ "LONGREAL",
132
+ "MUTEX",
133
+ "NULL",
134
+ "REAL",
135
+ "REFANY",
136
+ "ROOT",
137
+ "TEXT"
138
+ ],
139
+ operators: ["+", "-", "*", "/", "&", "^", "."],
140
+ relations: ["=", "#", "<", "<=", ">", ">=", "<:", ":"],
141
+ delimiters: ["|", "..", "=>", ",", ";", ":="],
142
+ symbols: /[>=<#.,:;+\-*/&^]+/,
143
+ escapes: /\\(?:[\\fnrt"']|[0-7]{3})/,
144
+ tokenizer: {
145
+ root: [
146
+ // Identifiers and keywords
147
+ [/_\w*/, "invalid"],
148
+ [
149
+ /[a-zA-Z][a-zA-Z0-9_]*/,
150
+ {
151
+ cases: {
152
+ "@keywords": { token: "keyword.$0" },
153
+ "@reservedConstNames": { token: "constant.reserved.$0" },
154
+ "@reservedTypeNames": { token: "type.reserved.$0" },
155
+ "@default": "identifier"
156
+ }
157
+ }
158
+ ],
159
+ // Whitespace
160
+ { include: "@whitespace" },
161
+ [/[{}()\[\]]/, "@brackets"],
162
+ // Integer- and real literals
163
+ [/[0-9]+\.[0-9]+(?:[DdEeXx][\+\-]?[0-9]+)?/, "number.float"],
164
+ [/[0-9]+(?:\_[0-9a-fA-F]+)?L?/, "number"],
165
+ // Operators, relations, and delimiters
166
+ [
167
+ /@symbols/,
168
+ {
169
+ cases: {
170
+ "@operators": "operators",
171
+ "@relations": "operators",
172
+ "@delimiters": "delimiter",
173
+ "@default": "invalid"
174
+ }
175
+ }
176
+ ],
177
+ // Character literals
178
+ [/'[^\\']'/, "string.char"],
179
+ [/(')(@escapes)(')/, ["string.char", "string.escape", "string.char"]],
180
+ [/'/, "invalid"],
181
+ // Text literals
182
+ [/"([^"\\]|\\.)*$/, "invalid"],
183
+ [/"/, "string.text", "@text"]
184
+ ],
185
+ text: [
186
+ [/[^\\"]+/, "string.text"],
187
+ [/@escapes/, "string.escape"],
188
+ [/\\./, "invalid"],
189
+ [/"/, "string.text", "@pop"]
190
+ ],
191
+ comment: [
192
+ [/\(\*/, "comment", "@push"],
193
+ [/\*\)/, "comment", "@pop"],
194
+ [/./, "comment"]
195
+ ],
196
+ pragma: [
197
+ [/<\*/, "keyword.pragma", "@push"],
198
+ [/\*>/, "keyword.pragma", "@pop"],
199
+ [/./, "keyword.pragma"]
200
+ ],
201
+ whitespace: [
202
+ [/[ \t\r\n]+/, "white"],
203
+ [/\(\*/, "comment", "@comment"],
204
+ [/<\*/, "keyword.pragma", "@pragma"]
205
+ ]
206
+ }
207
+ };
208
+ export {
209
+ conf,
210
+ language
211
+ };
@@ -0,0 +1,230 @@
1
+ const conf = {
2
+ comments: {
3
+ blockComment: ["<!--", "-->"]
4
+ },
5
+ brackets: [
6
+ ["{", "}"],
7
+ ["[", "]"],
8
+ ["(", ")"]
9
+ ],
10
+ autoClosingPairs: [
11
+ { open: "{", close: "}" },
12
+ { open: "[", close: "]" },
13
+ { open: "(", close: ")" },
14
+ { open: "<", close: ">", notIn: ["string"] }
15
+ ],
16
+ surroundingPairs: [
17
+ { open: "(", close: ")" },
18
+ { open: "[", close: "]" },
19
+ { open: "`", close: "`" }
20
+ ],
21
+ folding: {
22
+ markers: {
23
+ start: new RegExp("^\\s*<!--\\s*#?region\\b.*-->"),
24
+ end: new RegExp("^\\s*<!--\\s*#?endregion\\b.*-->")
25
+ }
26
+ }
27
+ };
28
+ const language = {
29
+ defaultToken: "",
30
+ tokenPostfix: ".md",
31
+ // escape codes
32
+ control: /[\\`*_\[\]{}()#+\-\.!]/,
33
+ noncontrol: /[^\\`*_\[\]{}()#+\-\.!]/,
34
+ escapes: /\\(?:@control)/,
35
+ // escape codes for javascript/CSS strings
36
+ jsescapes: /\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,
37
+ // non matched elements
38
+ empty: [
39
+ "area",
40
+ "base",
41
+ "basefont",
42
+ "br",
43
+ "col",
44
+ "frame",
45
+ "hr",
46
+ "img",
47
+ "input",
48
+ "isindex",
49
+ "link",
50
+ "meta",
51
+ "param"
52
+ ],
53
+ tokenizer: {
54
+ root: [
55
+ // markdown tables
56
+ [/^\s*\|/, "@rematch", "@table_header"],
57
+ // headers (with #)
58
+ [/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/, ["white", "keyword", "keyword", "keyword"]],
59
+ // headers (with =)
60
+ [/^\s*(=+|\-+)\s*$/, "keyword"],
61
+ // headers (with ***)
62
+ [/^\s*((\*[ ]?)+)\s*$/, "meta.separator"],
63
+ // quote
64
+ [/^\s*>+/, "comment"],
65
+ // list (starting with * or number)
66
+ [/^\s*([\*\-+:]|\d+\.)\s/, "keyword"],
67
+ // code block (4 spaces indent)
68
+ [/^(\t|[ ]{4})[^ ].*$/, "string"],
69
+ // code block (3 tilde)
70
+ [/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/, { token: "string", next: "@codeblock" }],
71
+ // github style code blocks (with backticks and language)
72
+ [
73
+ /^\s*```\s*((?:\w|[\/\-#])+).*$/,
74
+ { token: "string", next: "@codeblockgh", nextEmbedded: "$1" }
75
+ ],
76
+ // github style code blocks (with backticks but no language)
77
+ [/^\s*```\s*$/, { token: "string", next: "@codeblock" }],
78
+ // markup within lines
79
+ { include: "@linecontent" }
80
+ ],
81
+ table_header: [
82
+ { include: "@table_common" },
83
+ [/[^\|]+/, "keyword.table.header"]
84
+ // table header
85
+ ],
86
+ table_body: [{ include: "@table_common" }, { include: "@linecontent" }],
87
+ table_common: [
88
+ [/\s*[\-:]+\s*/, { token: "keyword", switchTo: "table_body" }],
89
+ // header-divider
90
+ [/^\s*\|/, "keyword.table.left"],
91
+ // opening |
92
+ [/^\s*[^\|]/, "@rematch", "@pop"],
93
+ // exiting
94
+ [/^\s*$/, "@rematch", "@pop"],
95
+ // exiting
96
+ [
97
+ /\|/,
98
+ {
99
+ cases: {
100
+ "@eos": "keyword.table.right",
101
+ // closing |
102
+ "@default": "keyword.table.middle"
103
+ // inner |
104
+ }
105
+ }
106
+ ]
107
+ ],
108
+ codeblock: [
109
+ [/^\s*~~~\s*$/, { token: "string", next: "@pop" }],
110
+ [/^\s*```\s*$/, { token: "string", next: "@pop" }],
111
+ [/.*$/, "variable.source"]
112
+ ],
113
+ // github style code blocks
114
+ codeblockgh: [
115
+ [/```\s*$/, { token: "string", next: "@pop", nextEmbedded: "@pop" }],
116
+ [/[^`]+/, "variable.source"]
117
+ ],
118
+ linecontent: [
119
+ // escapes
120
+ [/&\w+;/, "string.escape"],
121
+ [/@escapes/, "escape"],
122
+ // various markup
123
+ [/\b__([^\\_]|@escapes|_(?!_))+__\b/, "strong"],
124
+ [/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/, "strong"],
125
+ [/\b_[^_]+_\b/, "emphasis"],
126
+ [/\*([^\\*]|@escapes)+\*/, "emphasis"],
127
+ [/`([^\\`]|@escapes)+`/, "variable"],
128
+ // links
129
+ [/\{+[^}]+\}+/, "string.target"],
130
+ [/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/, ["string.link", "", "string.link"]],
131
+ [/(!?\[)((?:[^\]\\]|@escapes)*)(\])/, "string.link"],
132
+ // or html
133
+ { include: "html" }
134
+ ],
135
+ // Note: it is tempting to rather switch to the real HTML mode instead of building our own here
136
+ // but currently there is a limitation in Monarch that prevents us from doing it: The opening
137
+ // '<' would start the HTML mode, however there is no way to jump 1 character back to let the
138
+ // HTML mode also tokenize the opening angle bracket. Thus, even though we could jump to HTML,
139
+ // we cannot correctly tokenize it in that mode yet.
140
+ html: [
141
+ // html tags
142
+ [/<(\w+)\/>/, "tag"],
143
+ [
144
+ /<(\w+)(\-|\w)*/,
145
+ {
146
+ cases: {
147
+ "@empty": { token: "tag", next: "@tag.$1" },
148
+ "@default": { token: "tag", next: "@tag.$1" }
149
+ }
150
+ }
151
+ ],
152
+ [/<\/(\w+)(\-|\w)*\s*>/, { token: "tag" }],
153
+ [/<!--/, "comment", "@comment"]
154
+ ],
155
+ comment: [
156
+ [/[^<\-]+/, "comment.content"],
157
+ [/-->/, "comment", "@pop"],
158
+ [/<!--/, "comment.content.invalid"],
159
+ [/[<\-]/, "comment.content"]
160
+ ],
161
+ // Almost full HTML tag matching, complete with embedded scripts & styles
162
+ tag: [
163
+ [/[ \t\r\n]+/, "white"],
164
+ [
165
+ /(type)(\s*=\s*)(")([^"]+)(")/,
166
+ [
167
+ "attribute.name.html",
168
+ "delimiter.html",
169
+ "string.html",
170
+ { token: "string.html", switchTo: "@tag.$S2.$4" },
171
+ "string.html"
172
+ ]
173
+ ],
174
+ [
175
+ /(type)(\s*=\s*)(')([^']+)(')/,
176
+ [
177
+ "attribute.name.html",
178
+ "delimiter.html",
179
+ "string.html",
180
+ { token: "string.html", switchTo: "@tag.$S2.$4" },
181
+ "string.html"
182
+ ]
183
+ ],
184
+ [/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/, ["attribute.name.html", "delimiter.html", "string.html"]],
185
+ [/\w+/, "attribute.name.html"],
186
+ [/\/>/, "tag", "@pop"],
187
+ [
188
+ />/,
189
+ {
190
+ cases: {
191
+ "$S2==style": {
192
+ token: "tag",
193
+ switchTo: "embeddedStyle",
194
+ nextEmbedded: "text/css"
195
+ },
196
+ "$S2==script": {
197
+ cases: {
198
+ $S3: {
199
+ token: "tag",
200
+ switchTo: "embeddedScript",
201
+ nextEmbedded: "$S3"
202
+ },
203
+ "@default": {
204
+ token: "tag",
205
+ switchTo: "embeddedScript",
206
+ nextEmbedded: "text/javascript"
207
+ }
208
+ }
209
+ },
210
+ "@default": { token: "tag", next: "@pop" }
211
+ }
212
+ }
213
+ ]
214
+ ],
215
+ embeddedStyle: [
216
+ [/[^<]+/, ""],
217
+ [/<\/style\s*>/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }],
218
+ [/</, ""]
219
+ ],
220
+ embeddedScript: [
221
+ [/[^<]+/, ""],
222
+ [/<\/script\s*>/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }],
223
+ [/</, ""]
224
+ ]
225
+ }
226
+ };
227
+ export {
228
+ conf,
229
+ language
230
+ };