@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
@@ -1,133 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- const State = {
5
- None: 0,
6
- TopLevelContent: 1,
7
- InsideSingleQuoteString: 2,
8
- InsideDoubleQuoteString: 3,
9
- }
10
-
11
- /**
12
- * @enum number
13
- */
14
- export const TokenType = {
15
- None: 99999999,
16
- Keyword: 951,
17
- Whitespace: 0,
18
- NewLine: 771,
19
- VariableName: 2,
20
- Punctuation: 3,
21
- String: 4,
22
- Numeric: 5,
23
- Attribute: 6,
24
- }
25
-
26
- export const TokenMap = {
27
- [TokenType.None]: 'None',
28
- [TokenType.Keyword]: 'Keyword',
29
- [TokenType.Whitespace]: 'Whitespace',
30
- [TokenType.NewLine]: 'NewLine',
31
- [TokenType.VariableName]: 'VariableName',
32
- [TokenType.Punctuation]: 'Punctuation',
33
- [TokenType.String]: 'String',
34
- [TokenType.Numeric]: 'Numeric',
35
- [TokenType.Attribute]: 'Attribute',
36
- }
37
-
38
- export const initialLineState = {
39
- state: State.TopLevelContent,
40
- }
41
-
42
- export const hasArrayReturn = true
43
-
44
- const RE_KEYWORD =
45
- /^(?:abstract|as|assert|async|await|break|case|catch|class|const|continue|covariant|default|deferred|do|dynamic|else|enum|export|extends|extension|external|factory|false|final|finally|for|Function|get|hide|if|implements|import|in|interface|is|late|library|mixin|new|null|on|operator|part|required|rethrow|return|set|show|static|super|switch|sync|this|throw|true|try|typedef|var|void|while|with|yield)\b/
46
-
47
- const RE_WHITESPACE = /^\s+/
48
- const RE_VARIABLE_NAME = /^[a-zA-Z]+/
49
- const RE_PUNCTUATION = /^[:,;\{\}\[\]\.=\(\)>+<]/
50
- const RE_QUOTE_SINGLE = /^'/
51
- const RE_QUOTE_DOUBLE = /^"/
52
- const RE_STRING_SINGLE_QUOTE_CONTENT = /^[^']+/
53
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"]+/
54
- const RE_NUMERIC = /^\d+/
55
- const RE_TRIPLE_DOUBLE_QUOTE = /^"""/
56
- const RE_STRING_TRIPLE_CONTENT = /^.+?(?="""|$)/s
57
- const RE_ATTRIBUTE = /^@\w+/
58
-
59
- /**
60
- * @param {string} line
61
- * @param {any} lineState
62
- */
63
- export const tokenizeLine = (line, lineState) => {
64
- let next = null
65
- let index = 0
66
- let tokens = []
67
- let token = TokenType.None
68
- let state = lineState.state
69
- while (index < line.length) {
70
- const part = line.slice(index)
71
- switch (state) {
72
- case State.TopLevelContent:
73
- if ((next = part.match(RE_WHITESPACE))) {
74
- token = TokenType.Whitespace
75
- state = State.TopLevelContent
76
- } else if ((next = part.match(RE_KEYWORD))) {
77
- token = TokenType.Keyword
78
- state = State.TopLevelContent
79
- } else if ((next = part.match(RE_VARIABLE_NAME))) {
80
- token = TokenType.VariableName
81
- state = State.TopLevelContent
82
- } else if ((next = part.match(RE_PUNCTUATION))) {
83
- token = TokenType.Punctuation
84
- state = State.TopLevelContent
85
- } else if ((next = part.match(RE_NUMERIC))) {
86
- token = TokenType.Numeric
87
- state = State.TopLevelContent
88
- } else if ((next = part.match(RE_QUOTE_SINGLE))) {
89
- token = TokenType.Punctuation
90
- state = State.InsideSingleQuoteString
91
- } else if ((next = part.match(RE_QUOTE_DOUBLE))) {
92
- token = TokenType.Punctuation
93
- state = State.InsideDoubleQuoteString
94
- } else {
95
- part //?
96
- throw new Error('no')
97
- }
98
- break
99
- case State.InsideSingleQuoteString:
100
- if ((next = part.match(RE_QUOTE_SINGLE))) {
101
- token = TokenType.Punctuation
102
- state = State.TopLevelContent
103
- } else if ((next = part.match(RE_STRING_SINGLE_QUOTE_CONTENT))) {
104
- token = TokenType.String
105
- state = State.InsideSingleQuoteString
106
- } else {
107
- throw new Error('no')
108
- }
109
- break
110
- case State.InsideDoubleQuoteString:
111
- if ((next = part.match(RE_QUOTE_DOUBLE))) {
112
- token = TokenType.Punctuation
113
- state = State.TopLevelContent
114
- } else if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
115
- token = TokenType.String
116
- state = State.InsideDoubleQuoteString
117
- } else {
118
- throw new Error('no')
119
- }
120
- break
121
- default:
122
- state
123
- throw new Error('no')
124
- }
125
- const tokenLength = next[0].length
126
- index += tokenLength
127
- tokens.push(token, tokenLength)
128
- }
129
- return {
130
- state,
131
- tokens,
132
- }
133
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Desktop
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-desktop.git &&
7
- cd language-basics-desktop &&
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-desktop)
@@ -1,12 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-desktop",
3
- "name": "Language Basics desktop",
4
- "description": "Provides syntax highlighting and bracket matching in desktop files.",
5
- "languages": [
6
- {
7
- "id": "desktop",
8
- "extensions": [".desktop"],
9
- "tokenize": "src/tokenizeDesktop.js"
10
- }
11
- ]
12
- }
@@ -1,166 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const State = {
5
- TopLevelContent: 1,
6
- InsideLineComment: 2,
7
- AfterPropertyName: 3,
8
- AfterPropertyNameAfterEqualSign: 4,
9
- InsideString: 5,
10
- }
11
-
12
- export const StateMap = {
13
- [State.TopLevelContent]: 'TopLevelContent',
14
- [State.InsideLineComment]: 'InsideLineComment',
15
- }
16
-
17
- /**
18
- * @enum number
19
- */
20
- export const TokenType = {
21
- CssSelector: 1,
22
- Whitespace: 2,
23
- None: 57,
24
- Unknown: 881,
25
- NewLine: 884,
26
- Comment: 885,
27
- Query: 886,
28
- Text: 887,
29
- PropertyName: 12,
30
- PropertyValueString: 14,
31
- Punctuation: 13,
32
- LanguageConstant: 11,
33
- }
34
-
35
- export const TokenMap = {
36
- [TokenType.CssSelector]: 'CssSelector',
37
- [TokenType.Whitespace]: 'Whitespace',
38
- [TokenType.None]: 'None',
39
- [TokenType.Unknown]: 'Unknown',
40
- [TokenType.NewLine]: 'NewLine',
41
- [TokenType.Comment]: 'Comment',
42
- [TokenType.Query]: 'Query',
43
- [TokenType.Text]: 'Text',
44
- [TokenType.Punctuation]: 'Punctuation',
45
- [TokenType.LanguageConstant]: 'LanguageConstant',
46
- [TokenType.PropertyName]: 'JsonPropertyName',
47
- [TokenType.LanguageConstant]: 'LanguageConstant',
48
- [TokenType.Punctuation]: 'Punctuation',
49
- [TokenType.PropertyValueString]: 'YamlPropertyValueString',
50
- }
51
-
52
- const RE_LINE_COMMENT_START = /^#/
53
- const RE_WHITESPACE = /^ +/
54
- const RE_CURLY_OPEN = /^\{/
55
- const RE_CURLY_CLOSE = /^\}/
56
- const RE_PROPERTY_NAME = /^[a-zA-Z\-\_\d]+\b(?=\s*=)/
57
- const RE_COLON = /^:/
58
- const RE_PROPERTY_VALUE = /^[^;\}]+/
59
- const RE_SEMICOLON = /^;/
60
- const RE_COMMA = /^,/
61
- const RE_ANYTHING = /^.+/s
62
- const RE_NUMERIC = /^(([0-9]+\.?[0-9]*)|(\.[0-9]+))/
63
- const RE_ANYTHING_UNTIL_CLOSE_BRACE = /^[^\}]+/
64
- const RE_BLOCK_COMMENT_START = /^\/\*/
65
- const RE_BLOCK_COMMENT_END = /^\*\//
66
- const RE_BLOCK_COMMENT_CONTENT = /^.+?(?=\*\/|$)/s
67
- const RE_ROUND_OPEN = /^\(/
68
- const RE_ROUND_CLOSE = /^\)/
69
- const RE_PSEUDO_SELECTOR_CONTENT = /^[^\)]+/
70
- const RE_SQUARE_OPEN = /^\[/
71
- const RE_SQUARE_CLOSE = /^\]/
72
- const RE_ATTRIBUTE_SELECTOR_CONTENT = /^[^\]]+/
73
- const RE_QUERY = /^@[a-z\-]+/
74
- const RE_STAR = /^\*/
75
- const RE_QUERY_NAME = /^[a-z\-]+/
76
- const RE_QUERY_CONTENT = /^[^\)]+/
77
- const RE_COMBINATOR = /^[\+\>\~]/
78
- const RE_EQUAL_SIGN = /^=/
79
- const RE_QUOTE_DOUBLE = /^"/
80
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"]+/
81
- const RE_LINE_COMMENT = /^#.*/s
82
- const RE_LANGUAGE_CONSTANT = /^(?:true|false)\b/
83
-
84
- export const initialLineState = {
85
- state: State.TopLevelContent,
86
- tokens: [],
87
- stack: [],
88
- }
89
-
90
- export const hasArrayReturn = true
91
-
92
- /**
93
- * @param {string} line
94
- * @param {any} lineState
95
- */
96
- export const tokenizeLine = (line, lineState) => {
97
- let next = null
98
- let index = 0
99
- let tokens = []
100
- let token = TokenType.None
101
- let state = lineState.state
102
- while (index < line.length) {
103
- const part = line.slice(index)
104
- switch (state) {
105
- case State.TopLevelContent:
106
- if ((next = part.match(RE_PROPERTY_NAME))) {
107
- token = TokenType.PropertyName
108
- state = State.AfterPropertyName
109
- } else if ((next = part.match(RE_LINE_COMMENT))) {
110
- token = TokenType.Comment
111
- state = State.TopLevelContent
112
- } else if ((next = part.match(RE_WHITESPACE))) {
113
- token = TokenType.Whitespace
114
- state = State.TopLevelContent
115
- } else if ((next = part.match(RE_ANYTHING))) {
116
- token = TokenType.Text
117
- state = State.TopLevelContent
118
- } else {
119
- part //?
120
- throw new Error('no')
121
- }
122
- break
123
- case State.AfterPropertyName:
124
- if ((next = part.match(RE_EQUAL_SIGN))) {
125
- token = TokenType.Punctuation
126
- state = State.AfterPropertyNameAfterEqualSign
127
- } else if ((next = part.match(RE_WHITESPACE))) {
128
- token = TokenType.Whitespace
129
- state = State.AfterPropertyName
130
- } else {
131
- throw new Error('no')
132
- }
133
- break
134
- case State.AfterPropertyNameAfterEqualSign:
135
- if ((next = part.match(RE_WHITESPACE))) {
136
- token = TokenType.Whitespace
137
- state = State.AfterPropertyNameAfterEqualSign
138
- } else if ((next = part.match(RE_LANGUAGE_CONSTANT))) {
139
- token = TokenType.LanguageConstant
140
- state = State.TopLevelContent
141
- } else if ((next = part.match(RE_LINE_COMMENT))) {
142
- token = TokenType.Comment
143
- state = State.TopLevelContent
144
- } else if ((next = part.match(RE_QUOTE_DOUBLE))) {
145
- token = TokenType.Punctuation
146
- state = State.InsideString
147
- } else if ((next = part.match(RE_ANYTHING))) {
148
- token = TokenType.PropertyValueString
149
- state = State.TopLevelContent
150
- } else {
151
- throw new Error('no')
152
- }
153
- break
154
- default:
155
- console.log({ state, line })
156
- throw new Error('no')
157
- }
158
- const tokenLength = next[0].length
159
- index += tokenLength
160
- tokens.push(token, tokenLength)
161
- }
162
- return {
163
- state,
164
- tokens,
165
- }
166
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Docker
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-docker.git &&
7
- cd language-basics-docker &&
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-docker)
@@ -1,24 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-docker",
3
- "version": "0.0.9",
4
- "name": "Language Basics Docker",
5
- "description": "Provides syntax highlighting and bracket matching in Dockerfile files.",
6
- "languages": [
7
- {
8
- "id": "dockerfile",
9
- "extensions": [
10
- ".dockerfile",
11
- ".containerfile"
12
- ],
13
- "fileNames": [
14
- "Dockerfile",
15
- "Containerfile"
16
- ],
17
- "fileNamePatterns": [
18
- "Dockerfile.*",
19
- "Containerfile.*"
20
- ],
21
- "tokenize": "src/tokenizeDockerfile.js"
22
- }
23
- ]
24
- }
@@ -1,131 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const State = {
5
- TopLevelContent: 1,
6
- AfterSelector: 2,
7
- InsideSelector: 3,
8
- AfterPropertyName: 4,
9
- AfterPropertyNameAfterColon: 5,
10
- AfterPropertyValue: 6,
11
- InsideBlockComment: 7,
12
- InsidePseudoSelector: 8,
13
- InsideAttributeSelector: 9,
14
- AfterQuery: 10,
15
- InsideRound: 11,
16
- AfterQueryWithRules: 12,
17
- InsideLineComment: 5,
18
- InsideString: 2,
19
- }
20
-
21
- /**
22
- * @enum number
23
- */
24
- export const TokenType = {
25
- None: 0,
26
- Text: 1,
27
- VariableName: 2,
28
- Keyword: 3,
29
- Whitespace: 4,
30
- Comment: 885,
31
- String: 886,
32
- PunctuationString: 13,
33
- }
34
-
35
- export const TokenMap = {
36
- [TokenType.Text]: 'Text',
37
- [TokenType.VariableName]: 'VariableName',
38
- [TokenType.Whitespace]: 'Whitespace',
39
- [TokenType.Keyword]: 'Keyword',
40
- [TokenType.Comment]: 'Comment',
41
- [TokenType.String]: 'String',
42
- [TokenType.PunctuationString]: 'PunctuationString',
43
- }
44
-
45
- export const initialLineState = {
46
- state: 1,
47
- tokens: [],
48
- }
49
-
50
- const RE_WHITESPACE = /^ +/
51
- const RE_ANYTHING = /^.+/s
52
- const RE_KEYWORD =
53
- /^(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)\b/
54
- const RE_LINE_COMMENT_START = /^#/
55
- const RE_PLAIN_TEXT = /^[^"\\]+/
56
- const RE_QUOTE_DOUBLE = /^"/
57
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"]+/
58
-
59
- export const hasArrayReturn = true
60
-
61
- /**
62
- * @param {string} line
63
- * @param {any} lineState
64
- */
65
- export const tokenizeLine = (line, lineState) => {
66
- let next = null
67
- let index = 0
68
- let tokens = []
69
- let token = TokenType.None
70
- let state = lineState.state
71
- while (index < line.length) {
72
- const part = line.slice(index)
73
- switch (state) {
74
- case State.TopLevelContent:
75
- if ((next = part.match(RE_KEYWORD))) {
76
- token = TokenType.Keyword
77
- state = State.TopLevelContent
78
- } else if ((next = part.match(RE_WHITESPACE))) {
79
- token = TokenType.Whitespace
80
- state = State.TopLevelContent
81
- } else if ((next = part.match(RE_LINE_COMMENT_START))) {
82
- token = TokenType.Comment
83
- state = State.InsideLineComment
84
- } else if ((next = part.match(RE_QUOTE_DOUBLE))) {
85
- token = TokenType.PunctuationString
86
- state = State.InsideString
87
- } else if ((next = part.match(RE_PLAIN_TEXT))) {
88
- token = TokenType.Text
89
- state = State.TopLevelContent
90
- } else if ((next = part.match(RE_ANYTHING))) {
91
- token = TokenType.Text
92
- state = State.TopLevelContent
93
- } else {
94
- throw new Error('no')
95
- }
96
- break
97
- case State.InsideLineComment:
98
- if ((next = part.match(RE_ANYTHING))) {
99
- token = TokenType.Comment
100
- state = State.TopLevelContent
101
- } else {
102
- throw new Error('no')
103
- }
104
- break
105
- case State.InsideString:
106
- if ((next = part.match(RE_QUOTE_DOUBLE))) {
107
- token = TokenType.PunctuationString
108
- state = State.TopLevelContent
109
- } else if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
110
- token = TokenType.String
111
- state = State.InsideString
112
- } else {
113
- throw new Error('no')
114
- }
115
- break
116
- default:
117
- console.log({ state, line })
118
- throw new Error('no')
119
- }
120
- const tokenLength = next[0].length
121
- index += tokenLength
122
- tokens.push(token, tokenLength)
123
- }
124
- if (state === State.InsideLineComment) {
125
- state = State.TopLevelContent
126
- }
127
- return {
128
- state,
129
- tokens,
130
- }
131
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Dotenv
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-dotenv.git &&
7
- cd language-basics-dotenv &&
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-dotenv)
@@ -1,26 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-dotenv",
3
- "name": "Language Basics Dotenv",
4
- "description": "Provides syntax highlighting and bracket matching in dotenv files.",
5
- "languages": [
6
- {
7
- "id": "dotenv",
8
- "extensions": [".env"],
9
- "fileNames": [
10
- "sampledotenv",
11
- ".env.local",
12
- ".env.example",
13
- ".env.development.example",
14
- ".env.production.example",
15
- ".env.development",
16
- ".env.production",
17
- ".env.dev",
18
- ".env.sample",
19
- ".env.dist",
20
- ".env.test"
21
- ],
22
- "configuration": "./languageConfiguration.json",
23
- "tokenize": "src/tokenizeDotenv.js"
24
- }
25
- ]
26
- }