@lvce-editor/shared-process 0.18.8 → 0.18.9

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 (187) hide show
  1. package/package.json +4 -4
  2. package/src/parts/ExportStatic/ExportStatic.js +5 -5
  3. package/src/parts/Platform/Platform.js +3 -3
  4. package/extensions/builtin.language-basics-bat/README.md +0 -14
  5. package/extensions/builtin.language-basics-bat/extension.json +0 -12
  6. package/extensions/builtin.language-basics-bat/src/tokenizeBat.js +0 -33
  7. package/extensions/builtin.language-basics-c/README.md +0 -14
  8. package/extensions/builtin.language-basics-c/extension.json +0 -12
  9. package/extensions/builtin.language-basics-c/src/tokenizeC.js +0 -211
  10. package/extensions/builtin.language-basics-coffeescript/README.md +0 -14
  11. package/extensions/builtin.language-basics-coffeescript/extension.json +0 -12
  12. package/extensions/builtin.language-basics-coffeescript/src/tokenizeCoffeeScript.js +0 -257
  13. package/extensions/builtin.language-basics-cpp/README.md +0 -14
  14. package/extensions/builtin.language-basics-cpp/extension.json +0 -32
  15. package/extensions/builtin.language-basics-cpp/languageConfiguration.json +0 -5
  16. package/extensions/builtin.language-basics-cpp/src/tokenizeCpp.js +0 -317
  17. package/extensions/builtin.language-basics-cson/README.md +0 -16
  18. package/extensions/builtin.language-basics-cson/extension.json +0 -13
  19. package/extensions/builtin.language-basics-cson/languageConfiguration.json +0 -21
  20. package/extensions/builtin.language-basics-cson/src/tokenizeCson.js +0 -207
  21. package/extensions/builtin.language-basics-css/README.md +0 -16
  22. package/extensions/builtin.language-basics-css/extension.json +0 -13
  23. package/extensions/builtin.language-basics-css/languageConfiguration.json +0 -21
  24. package/extensions/builtin.language-basics-css/src/tokenizeCss.js +0 -659
  25. package/extensions/builtin.language-basics-dart/README.md +0 -14
  26. package/extensions/builtin.language-basics-dart/extension.json +0 -12
  27. package/extensions/builtin.language-basics-dart/src/tokenizeDart.js +0 -133
  28. package/extensions/builtin.language-basics-desktop/README.md +0 -14
  29. package/extensions/builtin.language-basics-desktop/extension.json +0 -12
  30. package/extensions/builtin.language-basics-desktop/src/tokenizeDesktop.js +0 -166
  31. package/extensions/builtin.language-basics-docker/README.md +0 -14
  32. package/extensions/builtin.language-basics-docker/extension.json +0 -24
  33. package/extensions/builtin.language-basics-docker/src/tokenizeDockerfile.js +0 -131
  34. package/extensions/builtin.language-basics-dotenv/README.md +0 -14
  35. package/extensions/builtin.language-basics-dotenv/extension.json +0 -26
  36. package/extensions/builtin.language-basics-dotenv/src/tokenizeDotenv.js +0 -301
  37. package/extensions/builtin.language-basics-editorconfig/README.md +0 -14
  38. package/extensions/builtin.language-basics-editorconfig/extension.json +0 -12
  39. package/extensions/builtin.language-basics-editorconfig/src/tokenizeEditorConfig.js +0 -173
  40. package/extensions/builtin.language-basics-elixir/README.md +0 -14
  41. package/extensions/builtin.language-basics-elixir/extension.json +0 -12
  42. package/extensions/builtin.language-basics-elixir/src/tokenizeElixir.js +0 -150
  43. package/extensions/builtin.language-basics-elm/README.md +0 -14
  44. package/extensions/builtin.language-basics-elm/extension.json +0 -12
  45. package/extensions/builtin.language-basics-elm/src/tokenizeElm.js +0 -298
  46. package/extensions/builtin.language-basics-gitattributes/README.md +0 -14
  47. package/extensions/builtin.language-basics-gitattributes/extension.json +0 -12
  48. package/extensions/builtin.language-basics-gitattributes/src/tokenizeGitAttributes.js +0 -159
  49. package/extensions/builtin.language-basics-gn/README.md +0 -14
  50. package/extensions/builtin.language-basics-gn/extension.json +0 -12
  51. package/extensions/builtin.language-basics-gn/src/tokenizeGn.js +0 -178
  52. package/extensions/builtin.language-basics-go/README.md +0 -14
  53. package/extensions/builtin.language-basics-go/extension.json +0 -13
  54. package/extensions/builtin.language-basics-go/src/tokenizeGo.js +0 -295
  55. package/extensions/builtin.language-basics-graphql/README.md +0 -14
  56. package/extensions/builtin.language-basics-graphql/extension.json +0 -12
  57. package/extensions/builtin.language-basics-graphql/src/tokenizeGraphql.js +0 -432
  58. package/extensions/builtin.language-basics-html/README.md +0 -14
  59. package/extensions/builtin.language-basics-html/extension.json +0 -13
  60. package/extensions/builtin.language-basics-html/languageConfiguration.json +0 -66
  61. package/extensions/builtin.language-basics-html/src/tokenizeHtml.js +0 -551
  62. package/extensions/builtin.language-basics-java/README.md +0 -14
  63. package/extensions/builtin.language-basics-java/extension.json +0 -13
  64. package/extensions/builtin.language-basics-java/languageConfiguration.json +0 -31
  65. package/extensions/builtin.language-basics-java/src/tokenizeJava.js +0 -253
  66. package/extensions/builtin.language-basics-javascript/README.md +0 -14
  67. package/extensions/builtin.language-basics-javascript/extension.json +0 -14
  68. package/extensions/builtin.language-basics-javascript/languageConfiguration.json +0 -40
  69. package/extensions/builtin.language-basics-javascript/src/tokenizeJavaScript.js +0 -614
  70. package/extensions/builtin.language-basics-json/README.md +0 -14
  71. package/extensions/builtin.language-basics-json/extension.json +0 -60
  72. package/extensions/builtin.language-basics-json/src/tokenizeJson.js +0 -356
  73. package/extensions/builtin.language-basics-jsx/README.md +0 -14
  74. package/extensions/builtin.language-basics-jsx/extension.json +0 -13
  75. package/extensions/builtin.language-basics-jsx/src/tokenizeJsx.js +0 -661
  76. package/extensions/builtin.language-basics-julia/README.md +0 -18
  77. package/extensions/builtin.language-basics-julia/extension.json +0 -12
  78. package/extensions/builtin.language-basics-julia/src/tokenizeJulia.js +0 -181
  79. package/extensions/builtin.language-basics-kotlin/README.md +0 -14
  80. package/extensions/builtin.language-basics-kotlin/extension.json +0 -12
  81. package/extensions/builtin.language-basics-kotlin/src/tokenizeKotlin.js +0 -274
  82. package/extensions/builtin.language-basics-less/LICENSE +0 -21
  83. package/extensions/builtin.language-basics-less/README.md +0 -14
  84. package/extensions/builtin.language-basics-less/extension.json +0 -12
  85. package/extensions/builtin.language-basics-less/languageConfiguration.json +0 -17
  86. package/extensions/builtin.language-basics-less/src/tokenizeLess.js +0 -609
  87. package/extensions/builtin.language-basics-markdown/README.md +0 -14
  88. package/extensions/builtin.language-basics-markdown/extension.json +0 -12
  89. package/extensions/builtin.language-basics-markdown/src/tokenizeMarkdown.js +0 -441
  90. package/extensions/builtin.language-basics-mdx/README.md +0 -14
  91. package/extensions/builtin.language-basics-mdx/extension.json +0 -12
  92. package/extensions/builtin.language-basics-mdx/src/tokenizeMdx.js +0 -395
  93. package/extensions/builtin.language-basics-nvmrc/README.md +0 -14
  94. package/extensions/builtin.language-basics-nvmrc/extension.json +0 -12
  95. package/extensions/builtin.language-basics-nvmrc/src/tokenizeNvmrc.js +0 -30
  96. package/extensions/builtin.language-basics-perl/README.md +0 -14
  97. package/extensions/builtin.language-basics-perl/extension.json +0 -13
  98. package/extensions/builtin.language-basics-perl/src/tokenizePerl.js +0 -200
  99. package/extensions/builtin.language-basics-plaintext/README.md +0 -14
  100. package/extensions/builtin.language-basics-plaintext/extension.json +0 -12
  101. package/extensions/builtin.language-basics-plaintext/src/tokenizePlaintext.js +0 -28
  102. package/extensions/builtin.language-basics-powershell/README.md +0 -14
  103. package/extensions/builtin.language-basics-powershell/extension.json +0 -12
  104. package/extensions/builtin.language-basics-powershell/src/tokenizePowershell.js +0 -141
  105. package/extensions/builtin.language-basics-python/README.md +0 -14
  106. package/extensions/builtin.language-basics-python/extension.json +0 -15
  107. package/extensions/builtin.language-basics-python/languageConfiguration.json +0 -5
  108. package/extensions/builtin.language-basics-python/src/tokenizePython.js +0 -304
  109. package/extensions/builtin.language-basics-r/README.md +0 -14
  110. package/extensions/builtin.language-basics-r/extension.json +0 -12
  111. package/extensions/builtin.language-basics-r/src/tokenizeR.js +0 -71
  112. package/extensions/builtin.language-basics-ruby/README.md +0 -14
  113. package/extensions/builtin.language-basics-ruby/extension.json +0 -48
  114. package/extensions/builtin.language-basics-ruby/src/tokenizeRuby.js +0 -248
  115. package/extensions/builtin.language-basics-rust/LICENSE +0 -21
  116. package/extensions/builtin.language-basics-rust/README.md +0 -14
  117. package/extensions/builtin.language-basics-rust/extension.json +0 -12
  118. package/extensions/builtin.language-basics-rust/languageConfiguration.json +0 -17
  119. package/extensions/builtin.language-basics-rust/src/tokenizeRust.js +0 -158
  120. package/extensions/builtin.language-basics-scss/README.md +0 -14
  121. package/extensions/builtin.language-basics-scss/extension.json +0 -12
  122. package/extensions/builtin.language-basics-scss/src/tokenizeScss.js +0 -28
  123. package/extensions/builtin.language-basics-shellscript/README.md +0 -14
  124. package/extensions/builtin.language-basics-shellscript/extension.json +0 -56
  125. package/extensions/builtin.language-basics-shellscript/src/tokenizeShellScript.js +0 -569
  126. package/extensions/builtin.language-basics-svelte/README.md +0 -14
  127. package/extensions/builtin.language-basics-svelte/extension.json +0 -13
  128. package/extensions/builtin.language-basics-svelte/src/tokenizeSvelte.js +0 -428
  129. package/extensions/builtin.language-basics-toml/README.md +0 -14
  130. package/extensions/builtin.language-basics-toml/extension.json +0 -14
  131. package/extensions/builtin.language-basics-toml/src/tokenizeToml.js +0 -299
  132. package/extensions/builtin.language-basics-typescript/README.md +0 -14
  133. package/extensions/builtin.language-basics-typescript/extension.json +0 -17
  134. package/extensions/builtin.language-basics-typescript/src/tokenizeTypeScript.js +0 -1602
  135. package/extensions/builtin.language-basics-vue/README.md +0 -14
  136. package/extensions/builtin.language-basics-vue/extension.json +0 -13
  137. package/extensions/builtin.language-basics-vue/src/tokenizeVue.js +0 -327
  138. package/extensions/builtin.language-basics-wgsl/README.md +0 -16
  139. package/extensions/builtin.language-basics-wgsl/extension.json +0 -13
  140. package/extensions/builtin.language-basics-wgsl/languageConfiguration.json +0 -21
  141. package/extensions/builtin.language-basics-wgsl/src/tokenizeWgsl.js +0 -226
  142. package/extensions/builtin.language-basics-xml/README.md +0 -14
  143. package/extensions/builtin.language-basics-xml/extension.json +0 -85
  144. package/extensions/builtin.language-basics-xml/src/tokenizeXml.js +0 -328
  145. package/extensions/builtin.language-basics-yaml/README.md +0 -14
  146. package/extensions/builtin.language-basics-yaml/extension.json +0 -13
  147. package/extensions/builtin.language-basics-yaml/src/tokenizeYaml.js +0 -405
  148. package/extensions/builtin.theme-atom-one-dark/README.md +0 -11
  149. package/extensions/builtin.theme-atom-one-dark/color-theme.json +0 -216
  150. package/extensions/builtin.theme-atom-one-dark/extension.json +0 -12
  151. package/extensions/builtin.theme-atom-one-dark/images/demo.png +0 -0
  152. package/extensions/builtin.theme-ayu/README.md +0 -11
  153. package/extensions/builtin.theme-ayu/color-theme.json +0 -217
  154. package/extensions/builtin.theme-ayu/extension.json +0 -12
  155. package/extensions/builtin.theme-cobalt2/README.md +0 -20
  156. package/extensions/builtin.theme-cobalt2/color-theme.json +0 -202
  157. package/extensions/builtin.theme-cobalt2/extension.json +0 -13
  158. package/extensions/builtin.theme-cobalt2/images/demo.png +0 -0
  159. package/extensions/builtin.theme-cobalt2/images/logo.png +0 -0
  160. package/extensions/builtin.theme-gruvbox/README.md +0 -20
  161. package/extensions/builtin.theme-gruvbox/color-theme.json +0 -217
  162. package/extensions/builtin.theme-gruvbox/extension.json +0 -12
  163. package/extensions/builtin.theme-high-contrast/README.md +0 -9
  164. package/extensions/builtin.theme-high-contrast/color-theme.json +0 -86
  165. package/extensions/builtin.theme-high-contrast/extension.json +0 -11
  166. package/extensions/builtin.theme-material/README.md +0 -9
  167. package/extensions/builtin.theme-material/color-theme.json +0 -183
  168. package/extensions/builtin.theme-material/extension.json +0 -12
  169. package/extensions/builtin.theme-monokai/README.md +0 -10
  170. package/extensions/builtin.theme-monokai/color-theme.json +0 -151
  171. package/extensions/builtin.theme-monokai/extension.json +0 -11
  172. package/extensions/builtin.theme-noctis-uva/README.md +0 -11
  173. package/extensions/builtin.theme-noctis-uva/color-theme.json +0 -204
  174. package/extensions/builtin.theme-noctis-uva/extension.json +0 -12
  175. package/extensions/builtin.theme-noctis-uva/images/demo.png +0 -0
  176. package/extensions/builtin.theme-palenight/README.md +0 -11
  177. package/extensions/builtin.theme-palenight/color-theme.json +0 -209
  178. package/extensions/builtin.theme-palenight/extension.json +0 -12
  179. package/extensions/builtin.theme-palenight/images/demo.png +0 -0
  180. package/extensions/builtin.theme-slime/README.md +0 -5
  181. package/extensions/builtin.theme-slime/color-theme.json +0 -290
  182. package/extensions/builtin.theme-slime/extension.json +0 -13
  183. package/extensions/builtin.theme-slime/icon.png +0 -0
  184. package/extensions/builtin.vscode-icons/README.md +0 -20
  185. package/extensions/builtin.vscode-icons/extension.json +0 -13
  186. package/extensions/builtin.vscode-icons/icon-theme.json +0 -3815
  187. package/extensions/builtin.vscode-icons/icon.png +0 -0
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@lvce-editor/shared-process",
3
- "version": "0.18.8",
3
+ "version": "0.18.9",
4
4
  "main": "index.js",
5
5
  "type": "module",
6
6
  "dependencies": {
7
7
  "@babel/code-frame": "^7.22.13",
8
- "@lvce-editor/extension-host": "0.18.8",
9
- "@lvce-editor/extension-host-helper-process": "0.18.8",
8
+ "@lvce-editor/extension-host": "0.18.9",
9
+ "@lvce-editor/extension-host-helper-process": "0.18.9",
10
10
  "@lvce-editor/jsonc-parser": "^1.1.0",
11
11
  "@lvce-editor/pretty-error": "^1.2.0",
12
- "@lvce-editor/pty-host": "0.18.8",
12
+ "@lvce-editor/pty-host": "0.18.9",
13
13
  "@lvce-editor/verror": "^1.1.1",
14
14
  "debug": "^4.3.4",
15
15
  "execa": "^8.0.1",
@@ -130,7 +130,7 @@ const applyOverrides = async ({ root, commitHash, pathPrefix }) => {
130
130
  `return \`\${assetDir}/icon-themes/\${iconThemeId}.json\``,
131
131
  )
132
132
 
133
- const extensionDirents = await FileSystem.readDir(Path.join(root, 'node_modules', '@lvce-editor', 'shared-process', 'extensions'))
133
+ const extensionDirents = await FileSystem.readDir(Path.join(root, 'node_modules', '@lvce-editor', 'server', 'static', commitHash, 'extensions'))
134
134
 
135
135
  const languageBasicsDirents = extensionDirents.filter(isLanguageBasics)
136
136
  const themeDirents = extensionDirents.filter(isTheme)
@@ -151,7 +151,7 @@ const applyOverrides = async ({ root, commitHash, pathPrefix }) => {
151
151
  * @param {string} dirent
152
152
  */
153
153
  const getManifestPath = (dirent) => {
154
- return Path.join(root, 'node_modules', '@lvce-editor', 'shared-process', 'extensions', dirent, 'extension.json')
154
+ return Path.join(root, 'node_modules', '@lvce-editor', 'server', 'static', commitHash, 'extensions', dirent, 'extension.json')
155
155
  }
156
156
 
157
157
  const manifestPaths = languageBasicsDirents.map(getManifestPath)
@@ -161,7 +161,7 @@ const applyOverrides = async ({ root, commitHash, pathPrefix }) => {
161
161
 
162
162
  for (const languageBasicsDirent of languageBasicsDirents) {
163
163
  await FileSystem.copy(
164
- Path.join(root, 'node_modules', '@lvce-editor', 'shared-process', 'extensions', languageBasicsDirent),
164
+ Path.join(root, 'node_modules', '@lvce-editor', 'server', 'static', commitHash, 'extensions', languageBasicsDirent),
165
165
  Path.join(root, 'dist', commitHash, 'extensions', languageBasicsDirent),
166
166
  )
167
167
  }
@@ -169,7 +169,7 @@ const applyOverrides = async ({ root, commitHash, pathPrefix }) => {
169
169
  for (const themeDirent of themeDirents) {
170
170
  const themeId = getThemeName(themeDirent)
171
171
  await FileSystem.copy(
172
- Path.join(root, 'node_modules', '@lvce-editor', 'shared-process', 'extensions', themeDirent, 'color-theme.json'),
172
+ Path.join(root, 'node_modules', '@lvce-editor', 'server', 'static', commitHash, 'extensions', themeDirent, 'color-theme.json'),
173
173
  Path.join(root, 'dist', commitHash, 'themes', `${themeId}.json`),
174
174
  )
175
175
  }
@@ -180,7 +180,7 @@ const applyOverrides = async ({ root, commitHash, pathPrefix }) => {
180
180
  for (const iconThemeDirent of iconThemeDirents) {
181
181
  const iconThemeId = iconThemeDirent.slice('builtin.'.length)
182
182
  await FileSystem.copy(
183
- Path.join(root, 'node_modules', '@lvce-editor', 'shared-process', 'extensions', iconThemeDirent, 'icon-theme.json'),
183
+ Path.join(root, 'node_modules', '@lvce-editor', 'server', 'static', commitHash, 'extensions', iconThemeDirent, 'icon-theme.json'),
184
184
  Path.join(root, 'dist', commitHash, 'icon-themes', `${iconThemeId}.json`),
185
185
  )
186
186
  }
@@ -55,11 +55,11 @@ export const getSetupName = () => {
55
55
  return 'Lvce-Setup'
56
56
  }
57
57
 
58
- export const version = '0.18.8'
58
+ export const version = '0.18.9'
59
59
 
60
- export const commit = 'dad4ebc'
60
+ export const commit = '13190c2'
61
61
 
62
- export const date = '2023-10-05T18:41:48.000Z'
62
+ export const date = '2023-10-07T06:47:09.000Z'
63
63
 
64
64
  export const getVersion = () => {
65
65
  return version
@@ -1,14 +0,0 @@
1
- # Language Basics Bat
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-bat.git &&
7
- cd language-basics-bat &&
8
- npm ci &&
9
- npm test
10
- ```
11
-
12
- ## Gitpod
13
-
14
- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/lvce-editor/language-basics-bat)
@@ -1,12 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-bat",
3
- "name": "Language Basics Bat",
4
- "description": "Provides syntax highlighting and bracket matching in Windows batch files.",
5
- "languages": [
6
- {
7
- "id": "bat",
8
- "extensions": [".bat", ".cmd"],
9
- "tokenize": "src/tokenizeBat.js"
10
- }
11
- ]
12
- }
@@ -1,33 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const TokenType = {
5
- Text: 0,
6
- NewLine: 1,
7
- }
8
-
9
- export const TokenMap = {
10
- [TokenType.Text]: 'Text',
11
- }
12
-
13
- export const initialLineState = {
14
- state: 1,
15
- }
16
-
17
- export const tokenizeLine = (line, lineState) => {
18
- if (line.length === 0) {
19
- return {
20
- state: 1,
21
- tokens: [],
22
- }
23
- }
24
- return {
25
- state: 1,
26
- tokens: [
27
- {
28
- type: TokenType.Text,
29
- length: line.length,
30
- },
31
- ],
32
- }
33
- }
@@ -1,14 +0,0 @@
1
- # Language Basics C
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-c.git &&
7
- cd language-basics-c &&
8
- npm ci &&
9
- npm test
10
- ```
11
-
12
- ## Gitpod
13
-
14
- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/lvce-editor/language-basics-c)
@@ -1,12 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-c",
3
- "name": "Language Basics C",
4
- "description": "Provides syntax highlighting and bracket matching in C files.",
5
- "languages": [
6
- {
7
- "id": "c",
8
- "extensions": [".c"],
9
- "tokenize": "src/tokenizeC.js"
10
- }
11
- ]
12
- }
@@ -1,211 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const State = {
5
- TopLevelContent: 1,
6
- AfterInclude: 2,
7
- InsideLineComment: 3,
8
- InsideDoubleQuoteString: 4,
9
- InsideBlockComment: 5,
10
- }
11
-
12
- export const StateMap = {
13
- [State.TopLevelContent]: 'TopLevelContent',
14
- [State.AfterInclude]: 'AfterInclude',
15
- [State.InsideLineComment]: 'InsideLineComment',
16
- [State.InsideDoubleQuoteString]: 'InsideDoubleQuoteString',
17
- }
18
-
19
- /**
20
- * @enum number
21
- */
22
- export const TokenType = {
23
- Whitespace: 2,
24
- Punctuation: 3,
25
- CurlyOpen: 6,
26
- CurlyClose: 7,
27
- PropertyColon: 8,
28
- VariableName: 10,
29
- None: 57,
30
- Unknown: 881,
31
- Numeric: 883,
32
- NewLine: 884,
33
- Include: 885,
34
- Import: 886,
35
- Keyword: 887,
36
- Comment: 888,
37
- PunctuationString: 889,
38
- String: 890,
39
- PlainText: 891,
40
- }
41
-
42
- export const TokenMap = {
43
- [TokenType.Whitespace]: 'Whitespace',
44
- [TokenType.Punctuation]: 'Punctuation',
45
- [TokenType.CurlyOpen]: 'Punctuation',
46
- [TokenType.PropertyColon]: 'Punctuation',
47
- [TokenType.VariableName]: 'VariableName',
48
- [TokenType.None]: 'None',
49
- [TokenType.Unknown]: 'Unknown',
50
- [TokenType.Numeric]: 'Numeric',
51
- [TokenType.NewLine]: 'NewLine',
52
- [TokenType.Include]: 'Include',
53
- [TokenType.Import]: 'Import',
54
- [TokenType.Keyword]: 'Keyword',
55
- [TokenType.Comment]: 'Comment',
56
- [TokenType.PunctuationString]: 'PunctuationString',
57
- [TokenType.String]: 'String',
58
- [TokenType.PlainText]: 'PlainText',
59
- }
60
-
61
- const RE_SELECTOR = /^[\.a-zA-Z\d\-\:>]+/
62
- const RE_WHITESPACE = /^ +/
63
- const RE_CURLY_OPEN = /^\{/
64
- const RE_CURLY_CLOSE = /^\}/
65
- const RE_PROPERTY_NAME = /^[a-zA-Z\-]+\b/
66
- const RE_COLON = /^:/
67
- const RE_PROPERTY_VALUE = /^[^;]+/
68
- const RE_SEMICOLON = /^;/
69
- const RE_COMMA = /^,/
70
- const RE_ANYTHING = /^.+/s
71
- const RE_NUMERIC = /^(([0-9]+\.?[0-9]*)|(\.[0-9]+))/
72
- const RE_ANYTHING_UNTIL_CLOSE_BRACE = /^[^\}]+/
73
- const RE_INCLUDE = /^#include\b/
74
- const RE_IMPORT = /^<[^>]*>/
75
- const RE_KEYWORD =
76
- /^(?:while|volatile|void|unsigned|union|typedef|switch|struct|static|sizeof|signed|short|return|register|long|int|if|goto|for|float|extern|enum|else|double|do|default|continue|const|char|case|break|auto)\b/
77
- const RE_LINE_COMMENT_START = /^\/\//
78
- const RE_ANYTHING_UNTIL_END = /^.+/s
79
- const RE_VARIABLE_NAME = /^[a-zA-Z][a-zA-Z\d\_]*/
80
- const RE_PUNCTUATION = /^[\(\)=\+\-><\.:\/\{\};,\[\]\*]/
81
- const RE_DOUBLE_QUOTE = /^"/
82
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"]+/
83
- const RE_BLOCK_COMMENT_START = /^\/\*/
84
- const RE_BLOCK_COMMENT_CONTENT = /^.+?(?=\*\/)/
85
- const RE_BLOCK_COMMENT_END = /^\*\//
86
- const RE_SLASH = /^\//
87
-
88
- export const initialLineState = {
89
- state: State.TopLevelContent,
90
- tokens: [],
91
- }
92
-
93
- export const hasArrayReturn = true
94
-
95
- export const isEqualLineState = (lineStateA, lineStateB) => {
96
- return lineStateA.state === lineStateB.state
97
- }
98
-
99
- /**
100
- * @param {string} line
101
- */
102
- export const tokenizeLine = (line, lineState) => {
103
- let next = null
104
- let index = 0
105
- let tokens = []
106
- let token = TokenType.None
107
- let state = lineState.state
108
- while (index < line.length) {
109
- const part = line.slice(index)
110
- switch (state) {
111
- case State.TopLevelContent:
112
- if ((next = part.match(RE_KEYWORD))) {
113
- token = TokenType.Keyword
114
- state = State.TopLevelContent
115
- } else if ((next = part.match(RE_WHITESPACE))) {
116
- token = TokenType.Whitespace
117
- state = State.TopLevelContent
118
- } else if ((next = part.match(RE_VARIABLE_NAME))) {
119
- token = TokenType.VariableName
120
- state = State.TopLevelContent
121
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
122
- token = TokenType.PunctuationString
123
- state = State.InsideDoubleQuoteString
124
- } else if ((next = part.match(RE_INCLUDE))) {
125
- token = TokenType.Include
126
- state = State.AfterInclude
127
- } else if ((next = part.match(RE_SLASH))) {
128
- if ((next = part.match(RE_BLOCK_COMMENT_START))) {
129
- token = TokenType.Comment
130
- state = State.InsideBlockComment
131
- } else if ((next = part.match(RE_LINE_COMMENT_START))) {
132
- token = TokenType.Comment
133
- state = State.InsideLineComment
134
- } else {
135
- next = part.match(RE_SLASH)
136
- token = TokenType.Punctuation
137
- state = State.TopLevelContent
138
- }
139
- } else if ((next = part.match(RE_PUNCTUATION))) {
140
- token = TokenType.Punctuation
141
- state = State.TopLevelContent
142
- } else if ((next = part.match(RE_NUMERIC))) {
143
- token = TokenType.Numeric
144
- state = State.TopLevelContent
145
- } else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
146
- token = TokenType.PlainText
147
- state = State.TopLevelContent
148
- } else {
149
- part //?
150
- throw new Error('no')
151
- }
152
- break
153
- case State.AfterInclude:
154
- if ((next = part.match(RE_WHITESPACE))) {
155
- token = TokenType.Whitespace
156
- state = State.AfterInclude
157
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
158
- token = TokenType.PunctuationString
159
- state = State.InsideDoubleQuoteString
160
- } else if ((next = part.match(RE_IMPORT))) {
161
- token = TokenType.Import
162
- state = State.TopLevelContent
163
- } else {
164
- throw new Error('no')
165
- }
166
- break
167
- case State.InsideLineComment:
168
- if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
169
- token = TokenType.Comment
170
- state = State.TopLevelContent
171
- } else {
172
- throw new Error('no')
173
- }
174
- break
175
- case State.InsideDoubleQuoteString:
176
- if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
177
- token = TokenType.String
178
- state = State.InsideDoubleQuoteString
179
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
180
- token = TokenType.PunctuationString
181
- state = State.TopLevelContent
182
- } else {
183
- throw new Error('no')
184
- }
185
- break
186
- case State.InsideBlockComment:
187
- if ((next = part.match(RE_BLOCK_COMMENT_END))) {
188
- token = TokenType.Comment
189
- state = State.TopLevelContent
190
- } else if ((next = part.match(RE_BLOCK_COMMENT_CONTENT))) {
191
- token = TokenType.Comment
192
- state = State.InsideBlockComment
193
- } else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
194
- token = TokenType.Comment
195
- state = State.InsideBlockComment
196
- } else {
197
- throw new Error('no')
198
- }
199
- break
200
- default:
201
- throw new Error('no')
202
- }
203
- const tokenLength = next[0].length
204
- index += tokenLength
205
- tokens.push(token, tokenLength)
206
- }
207
- return {
208
- state,
209
- tokens,
210
- }
211
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Coffeescript
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-coffeescript.git &&
7
- cd language-basics-coffeescript &&
8
- npm ci &&
9
- npm test
10
- ```
11
-
12
- ## Gitpod
13
-
14
- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/lvce-editor/language-basics-coffeescript)
@@ -1,12 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-coffeescript",
3
- "name": "Language Basics Coffeescript",
4
- "description": "Provides syntax highlighting and bracket matching in Coffeescript files.",
5
- "languages": [
6
- {
7
- "id": "coffeescript",
8
- "extensions": [".coffee"],
9
- "tokenize": "src/tokenizeCoffeeScript.js"
10
- }
11
- ]
12
- }
@@ -1,257 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const State = {
5
- TopLevelContent: 1,
6
- InsideDoubleQuoteString: 2,
7
- InsideSingleQuoteString: 3,
8
- }
9
-
10
- export const StateMap = {
11
- [State.TopLevelContent]: 'TopLevelContent',
12
- }
13
-
14
- /**
15
- * @enum number
16
- */
17
- export const TokenType = {
18
- None: 0,
19
- Text: 1,
20
- Comment: 2,
21
- Whitespace: 3,
22
- VariableName: 4,
23
- Punctuation: 5,
24
- Numeric: 6,
25
- String: 7,
26
- LanguageConstant: 8,
27
- Keyword: 9,
28
- KeywordImport: 215,
29
- KeywordControl: 881,
30
- KeywordModifier: 882,
31
- KeywordReturn: 883,
32
- KeywordNew: 884,
33
- FunctionName: 885,
34
- KeywordThis: 886,
35
- KeywordOperator: 887,
36
- Regex: 888,
37
- }
38
-
39
- export const TokenMap = {
40
- [TokenType.Text]: 'Text',
41
- [TokenType.Comment]: 'Comment',
42
- [TokenType.Whitespace]: 'Whitespace',
43
- [TokenType.VariableName]: 'VariableName',
44
- [TokenType.Punctuation]: 'Punctuation',
45
- [TokenType.Numeric]: 'Numeric',
46
- [TokenType.String]: 'String',
47
- [TokenType.KeywordImport]: 'KeywordImport',
48
- [TokenType.KeywordControl]: 'KeywordControl',
49
- [TokenType.KeywordModifier]: 'KeywordModifier',
50
- [TokenType.KeywordReturn]: 'KeywordReturn',
51
- [TokenType.KeywordNew]: 'KeywordNew',
52
- [TokenType.FunctionName]: 'Function',
53
- [TokenType.KeywordThis]: 'KeywordThis',
54
- [TokenType.KeywordOperator]: 'KeywordOperator',
55
- [TokenType.LanguageConstant]: 'LanguageConstant',
56
- [TokenType.Keyword]: 'Keyword',
57
- [TokenType.Regex]: 'Regex',
58
- }
59
-
60
- const RE_LINE_COMMENT = /^#[^\n]*/
61
- const RE_WHITESPACE = /^\s+/
62
- const RE_VARIABLE_NAME = /^[\@a-zA-Z\_\$][a-zA-Z\_\/\-\$#\d\-]*/
63
- const RE_PUNCTUATION = /^[:,;\{\}\[\]\.=\(\)<>\!\|\+\&\>\)\?\-]/
64
- const RE_NUMERIC =
65
- /^((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)\b/
66
- const RE_STRING_ESCAPE = /^\\./
67
- const RE_BACKSLASH_AT_END = /^\\$/
68
- const RE_ANYTHING = /^.+/s
69
- const RE_QUOTE_DOUBLE = /^"/
70
- const RE_QUOTE_SINGLE = /^'/
71
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"\\]+/
72
- const RE_STRING_SINGLE_QUOTE_CONTENT = /^[^'\\]+/
73
- const RE_KEYWORD =
74
- /^(?:and|arguments|async|await|break|by|case|catch|class|const|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|implements|import|in|Infinity|instanceof|interface|is|isnt|let|loop|NaN|native|new|no|not|null|of|off|on|or|package|private|protected|public|return|static|super|switch|then|this|throw|try|true|typeof|undefined|unless|var|void|when|while|with|yes)\b/
75
- // copied from https://github.com/PrismJS/prism/blob/master/components/prism-javascript.js#L57
76
- const RE_REGEX =
77
- /^((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/
78
- const RE_SLASH = /^\//
79
- const RE_ANYTHING_UNTIL_END = /^.+/s
80
- const RE_FUNCTION_CALL_NAME = /^[\@\w]+(?=\s*('|\=\s*function|\=\s*\(|\?\(|\())/
81
-
82
- export const initialLineState = {
83
- state: 1,
84
- tokens: [],
85
- }
86
-
87
- export const hasArrayReturn = true
88
-
89
- /**
90
- * @param {string} line
91
- * @param {any} lineState
92
- */
93
- export const tokenizeLine = (line, lineState) => {
94
- let next = null
95
- let index = 0
96
- let tokens = []
97
- let token = TokenType.None
98
- let state = lineState.state
99
- while (index < line.length) {
100
- const part = line.slice(index)
101
- switch (state) {
102
- case State.TopLevelContent:
103
- if ((next = part.match(RE_WHITESPACE))) {
104
- token = TokenType.Whitespace
105
- state = State.TopLevelContent
106
- } else if ((next = part.match(RE_KEYWORD))) {
107
- switch (next[0]) {
108
- case 'true':
109
- case 'false':
110
- case 'null':
111
- case 'on':
112
- case 'off':
113
- case 'yes':
114
- case 'no':
115
- case 'undefined':
116
- token = TokenType.LanguageConstant
117
- break
118
- case 'import':
119
- case 'export':
120
- case 'from':
121
- token = TokenType.KeywordImport
122
- break
123
- case 'as':
124
- case 'switch':
125
- case 'default':
126
- case 'case':
127
- case 'else':
128
- case 'then':
129
- case 'if':
130
- case 'break':
131
- case 'throw':
132
- case 'for':
133
- case 'try':
134
- case 'catch':
135
- case 'finally':
136
- case 'while':
137
- case 'when':
138
- case 'unless':
139
- token = TokenType.KeywordControl
140
- break
141
- case 'async':
142
- case 'await':
143
- token = TokenType.KeywordModifier
144
- break
145
- case 'return':
146
- token = TokenType.KeywordReturn
147
- break
148
- case 'new':
149
- token = TokenType.KeywordNew
150
- break
151
- case 'this':
152
- token = TokenType.KeywordThis
153
- break
154
- case 'delete':
155
- case 'typeof':
156
- case 'in':
157
- case 'instanceof':
158
- case 'and':
159
- case 'is':
160
- case 'isnt':
161
- token = TokenType.KeywordOperator
162
- break
163
- case 'Infinity':
164
- token = TokenType.Numeric
165
- break
166
- default:
167
- token = TokenType.Keyword
168
- break
169
- }
170
- state = State.TopLevelContent
171
- } else if ((next = part.match(RE_PUNCTUATION))) {
172
- token = TokenType.Punctuation
173
- state = State.TopLevelContent
174
- } else if ((next = part.match(RE_FUNCTION_CALL_NAME))) {
175
- token = TokenType.FunctionName
176
- state = State.TopLevelContent
177
- } else if ((next = part.match(RE_VARIABLE_NAME))) {
178
- token = TokenType.VariableName
179
- state = State.TopLevelContent
180
- } else if ((next = part.match(RE_NUMERIC))) {
181
- token = TokenType.Numeric
182
- state = State.TopLevelContent
183
- } else if ((next = part.match(RE_SLASH))) {
184
- if ((next = part.match(RE_REGEX))) {
185
- token = TokenType.Regex
186
- state = State.TopLevelContent
187
- } else {
188
- next = part.match(RE_SLASH)
189
- token = TokenType.Punctuation
190
- state = State.TopLevelContent
191
- }
192
- } else if ((next = part.match(RE_QUOTE_DOUBLE))) {
193
- token = TokenType.Punctuation
194
- state = State.InsideDoubleQuoteString
195
- } else if ((next = part.match(RE_QUOTE_SINGLE))) {
196
- token = TokenType.Punctuation
197
- state = State.InsideSingleQuoteString
198
- } else if ((next = part.match(RE_LINE_COMMENT))) {
199
- token = TokenType.Comment
200
- state = State.TopLevelContent
201
- } else if ((next = part.match(RE_NUMERIC))) {
202
- token = TokenType.Numeric
203
- state = State.TopLevelContent
204
- } else if ((next = part.match(RE_ANYTHING))) {
205
- token = TokenType.Text
206
- state = State.TopLevelContent
207
- } else {
208
- part //?
209
- throw new Error('no')
210
- }
211
- break
212
- case State.InsideDoubleQuoteString:
213
- if ((next = part.match(RE_QUOTE_DOUBLE))) {
214
- token = TokenType.Punctuation
215
- state = State.TopLevelContent
216
- } else if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
217
- token = TokenType.String
218
- state = State.InsideDoubleQuoteString
219
- } else if ((next = part.match(RE_STRING_ESCAPE))) {
220
- token = TokenType.String
221
- state = State.InsideDoubleQuoteString
222
- } else if ((next = part.match(RE_BACKSLASH_AT_END))) {
223
- token = TokenType.String
224
- state = State.InsideDoubleQuoteString
225
- } else {
226
- throw new Error('no')
227
- }
228
- break
229
- case State.InsideSingleQuoteString:
230
- if ((next = part.match(RE_QUOTE_SINGLE))) {
231
- token = TokenType.Punctuation
232
- state = State.TopLevelContent
233
- } else if ((next = part.match(RE_STRING_SINGLE_QUOTE_CONTENT))) {
234
- token = TokenType.String
235
- state = State.InsideSingleQuoteString
236
- } else if ((next = part.match(RE_STRING_ESCAPE))) {
237
- token = TokenType.String
238
- state = State.InsideSingleQuoteString
239
- } else if ((next = part.match(RE_BACKSLASH_AT_END))) {
240
- token = TokenType.String
241
- state = State.InsideSingleQuoteString
242
- } else {
243
- throw new Error('no')
244
- }
245
- break
246
- default:
247
- throw new Error('no')
248
- }
249
- const tokenLength = next[0].length
250
- index += tokenLength
251
- tokens.push(token, tokenLength)
252
- }
253
- return {
254
- state,
255
- tokens,
256
- }
257
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Cpp
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-cpp.git &&
7
- cd language-basics-cpp &&
8
- npm ci &&
9
- npm test
10
- ```
11
-
12
- ## Gitpod
13
-
14
- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/lvce-editor/language-basics-cpp)