@lvce-editor/shared-process 0.7.11 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/defaultSettings.json +2 -0
- package/extensions/builtin.language-basics-elm/src/tokenizeElm.js +276 -6
- package/extensions/builtin.theme-atom-one-dark/README.md +10 -0
- package/extensions/builtin.theme-atom-one-dark/color-theme.json +154 -0
- package/extensions/builtin.theme-atom-one-dark/extension.json +12 -0
- package/extensions/builtin.theme-ayu/README.md +10 -0
- package/extensions/builtin.theme-ayu/color-theme.json +174 -0
- package/extensions/builtin.theme-ayu/extension.json +12 -0
- package/extensions/builtin.theme-cobalt2/README.md +18 -0
- package/extensions/builtin.theme-cobalt2/color-theme.json +135 -0
- package/extensions/builtin.theme-cobalt2/extension.json +12 -0
- package/extensions/builtin.theme-high-contrast/README.md +9 -0
- package/extensions/builtin.theme-high-contrast/color-theme.json +86 -0
- package/extensions/builtin.theme-high-contrast/extension.json +11 -0
- package/extensions/builtin.theme-monokai/README.md +10 -0
- package/extensions/builtin.theme-monokai/color-theme.json +121 -0
- package/extensions/builtin.theme-monokai/extension.json +11 -0
- package/extensions/builtin.theme-palenight/README.md +10 -0
- package/extensions/builtin.theme-palenight/color-theme.json +161 -0
- package/extensions/builtin.theme-palenight/extension.json +12 -0
- package/extensions/builtin.theme-slime/README.md +1 -1
- package/package.json +3 -3
- package/src/parts/ExtensionManagement/ExtensionManagement.ipc.js +1 -0
- package/src/parts/ExtensionManagement/ExtensionManagementColorTheme.js +38 -12
- package/src/parts/FileSystemWatch/FileSystemWatch.js +6 -0
- package/src/parts/ModuleMap/ModuleMap.js +1 -0
- package/src/parts/RequiresSocket/RequiresSocket.js +1 -0
|
@@ -1,28 +1,298 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @enum number
|
|
3
|
+
*/
|
|
4
|
+
export const State = {
|
|
5
|
+
TopLevelContent: 1,
|
|
6
|
+
Keyword: 2,
|
|
7
|
+
AfterKeyword: 3,
|
|
8
|
+
InsideBlockComment: 4,
|
|
9
|
+
AfterKeywordImport: 5,
|
|
10
|
+
AfterKeywordImportAfterWhitespace: 6,
|
|
11
|
+
AfterTypeColon: 7,
|
|
12
|
+
AfterKeywordType: 8,
|
|
13
|
+
AfterKeywordTypeAfterWhitespace: 9,
|
|
14
|
+
InsideTypeRightHandSide: 10,
|
|
15
|
+
AfterTypeName: 11,
|
|
16
|
+
AfterTypeNameAfterWhitespace: 12,
|
|
17
|
+
InsideLineComment: 13,
|
|
18
|
+
AfterKeywordModule: 14,
|
|
19
|
+
AfterModuleName: 15,
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export const StateMap = {
|
|
23
|
+
[State.TopLevelContent]: 'TopLevelContent',
|
|
24
|
+
}
|
|
25
|
+
|
|
1
26
|
/**
|
|
2
27
|
* @enum number
|
|
3
28
|
*/
|
|
4
29
|
export const TokenType = {
|
|
5
|
-
|
|
30
|
+
None: 1,
|
|
31
|
+
Whitespace: 2,
|
|
32
|
+
PunctuationString: 3,
|
|
33
|
+
String: 4,
|
|
34
|
+
Keyword: 5,
|
|
35
|
+
Numeric: 6,
|
|
36
|
+
Punctuation: 7,
|
|
37
|
+
VariableName: 8,
|
|
38
|
+
Comment: 885,
|
|
39
|
+
Text: 9,
|
|
40
|
+
LanguageConstantBoolean: 10,
|
|
41
|
+
Definition: 11,
|
|
42
|
+
Type: 12,
|
|
43
|
+
KeywordImport: 14,
|
|
6
44
|
}
|
|
7
45
|
|
|
8
46
|
export const TokenMap = {
|
|
47
|
+
[TokenType.None]: 'None',
|
|
48
|
+
[TokenType.Whitespace]: 'Whitespace',
|
|
49
|
+
[TokenType.PunctuationString]: 'PunctuationString',
|
|
50
|
+
[TokenType.String]: 'String',
|
|
51
|
+
[TokenType.Keyword]: 'Keyword',
|
|
52
|
+
[TokenType.Numeric]: 'Numeric',
|
|
53
|
+
[TokenType.Punctuation]: 'Punctuation',
|
|
54
|
+
[TokenType.VariableName]: 'VariableName',
|
|
55
|
+
[TokenType.Comment]: 'Comment',
|
|
9
56
|
[TokenType.Text]: 'Text',
|
|
57
|
+
[TokenType.LanguageConstantBoolean]: 'LanguageConstantBoolean',
|
|
58
|
+
[TokenType.Definition]: 'Type',
|
|
59
|
+
[TokenType.Type]: 'TypeName',
|
|
60
|
+
[TokenType.Type]: 'Type',
|
|
61
|
+
[TokenType.KeywordImport]: 'KeywordImport',
|
|
10
62
|
}
|
|
11
63
|
|
|
12
64
|
export const initialLineState = {
|
|
13
|
-
state:
|
|
14
|
-
tokens: [],
|
|
65
|
+
state: State.TopLevelContent,
|
|
15
66
|
}
|
|
16
67
|
|
|
68
|
+
const RE_WHITESPACE = /^\s+/
|
|
69
|
+
const RE_WHITESPACE_SINGLE_LINE = /^( |\t)+/
|
|
70
|
+
const RE_WHITESPACE_NEWLINE = /^\n/
|
|
71
|
+
const RE_CONSTANT = /^(true|false|null)/
|
|
72
|
+
const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"\n]+/
|
|
73
|
+
const RE_STRING_SINGLE_QUOTE_CONTENT = /^[^'\n]+/
|
|
74
|
+
const RE_DOUBLE_QUOTE = /^"/
|
|
75
|
+
const RE_CURLY_OPEN = /^\{/
|
|
76
|
+
const RE_CURLY_CLOSE = /^\}/
|
|
77
|
+
const RE_SQUARE_OPEN = /^\[/
|
|
78
|
+
const RE_SQUARE_CLOSE = /^\]/
|
|
79
|
+
const RE_COMMA = /^,/
|
|
80
|
+
const RE_COLON = /^:/
|
|
81
|
+
const RE_NUMERIC =
|
|
82
|
+
/^((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)\b/
|
|
83
|
+
|
|
84
|
+
const RE_KEYWORD =
|
|
85
|
+
/^(?:where|type|True|then|port|of|module|let|in|import|if|False|exposing|else|case|as)\b/
|
|
86
|
+
const RE_LANGUAGE_CONSTANT = /^(?:True|False)\b/
|
|
87
|
+
const RE_IMPORT = /^[a-zA-Z\.]+/
|
|
88
|
+
const RE_SEMICOLON = /^;/
|
|
89
|
+
const RE_VARIABLE_NAME = /^[a-zA-Z][a-zA-Z\d\_\-]*/
|
|
90
|
+
const RE_ROUND_OPEN = /^\(/
|
|
91
|
+
const RE_ROUND_CLOSE = /^\)/
|
|
92
|
+
const RE_DOT = /^\./
|
|
93
|
+
const RE_EQUAL_SIGN = /^=/
|
|
94
|
+
const RE_SINGLE_QUOTE = /^'/
|
|
95
|
+
const RE_LINE_COMMENT = /^\-\-[^\n]*/
|
|
96
|
+
const RE_BLOCK_COMMENT_START = /^\{\-/
|
|
97
|
+
const RE_BLOCK_COMMENT_END = /^\-\}/
|
|
98
|
+
const RE_BLOCK_COMMENT_CONTENT = /^.+(?=\-\})/s
|
|
99
|
+
const RE_PUNCTUATION = /^(?:\(|\)|\[|\]|\||\->)/
|
|
100
|
+
const RE_WORD_ALIAS = /^alias/
|
|
101
|
+
const RE_ANYTHING_UNTIL_END = /^.+/s
|
|
102
|
+
|
|
17
103
|
export const hasArrayReturn = true
|
|
18
104
|
|
|
19
105
|
/**
|
|
20
106
|
* @param {string} line
|
|
107
|
+
* @param {any} lineState
|
|
21
108
|
*/
|
|
22
|
-
export const tokenizeLine = (line) => {
|
|
23
|
-
|
|
109
|
+
export const tokenizeLine = (line, lineState) => {
|
|
110
|
+
let next = null
|
|
111
|
+
let index = 0
|
|
112
|
+
let tokens = []
|
|
113
|
+
let token = TokenType.None
|
|
114
|
+
let state = lineState.state
|
|
115
|
+
while (index < line.length) {
|
|
116
|
+
const part = line.slice(index)
|
|
117
|
+
switch (state) {
|
|
118
|
+
case State.TopLevelContent:
|
|
119
|
+
if ((next = part.match(RE_WHITESPACE))) {
|
|
120
|
+
token = TokenType.Whitespace
|
|
121
|
+
state = State.TopLevelContent
|
|
122
|
+
} else if ((next = part.match(RE_KEYWORD))) {
|
|
123
|
+
state = State.Keyword
|
|
124
|
+
continue
|
|
125
|
+
} else if ((next = part.match(RE_VARIABLE_NAME))) {
|
|
126
|
+
token = TokenType.VariableName
|
|
127
|
+
state = State.TopLevelContent
|
|
128
|
+
} else if ((next = part.match(RE_LINE_COMMENT))) {
|
|
129
|
+
token = TokenType.Comment
|
|
130
|
+
state = State.TopLevelContent
|
|
131
|
+
} else if ((next = part.match(RE_BLOCK_COMMENT_START))) {
|
|
132
|
+
token = TokenType.Comment
|
|
133
|
+
state = State.InsideBlockComment
|
|
134
|
+
} else if ((next = part.match(RE_COLON))) {
|
|
135
|
+
token = TokenType.Punctuation
|
|
136
|
+
state = State.AfterTypeColon
|
|
137
|
+
} else if ((next = part.match(RE_PUNCTUATION))) {
|
|
138
|
+
token = TokenType.Punctuation
|
|
139
|
+
state = State.TopLevelContent
|
|
140
|
+
} else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
|
|
141
|
+
token = TokenType.Text
|
|
142
|
+
state = State.TopLevelContent
|
|
143
|
+
} else {
|
|
144
|
+
part.startsWith('Bool') //?
|
|
145
|
+
throw new Error('no')
|
|
146
|
+
}
|
|
147
|
+
break
|
|
148
|
+
case State.InsideBlockComment:
|
|
149
|
+
if ((next = part.match(RE_BLOCK_COMMENT_END))) {
|
|
150
|
+
token = TokenType.Comment
|
|
151
|
+
state = State.TopLevelContent
|
|
152
|
+
} else if ((next = part.match(RE_BLOCK_COMMENT_CONTENT))) {
|
|
153
|
+
token = TokenType.Comment
|
|
154
|
+
state = State.InsideBlockComment
|
|
155
|
+
} else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
|
|
156
|
+
token = TokenType.Comment
|
|
157
|
+
state = State.InsideBlockComment
|
|
158
|
+
} else {
|
|
159
|
+
part //?
|
|
160
|
+
throw new Error('no')
|
|
161
|
+
}
|
|
162
|
+
break
|
|
163
|
+
case State.Keyword:
|
|
164
|
+
const keyword = next[0]
|
|
165
|
+
switch (keyword) {
|
|
166
|
+
case 'import':
|
|
167
|
+
case 'exposing':
|
|
168
|
+
token = TokenType.Keyword
|
|
169
|
+
state = State.TopLevelContent
|
|
170
|
+
break
|
|
171
|
+
case 'False':
|
|
172
|
+
case 'True':
|
|
173
|
+
token = TokenType.LanguageConstantBoolean
|
|
174
|
+
state = State.TopLevelContent
|
|
175
|
+
break
|
|
176
|
+
case 'type':
|
|
177
|
+
token = TokenType.Keyword
|
|
178
|
+
state = State.AfterKeywordType
|
|
179
|
+
break
|
|
180
|
+
case 'module':
|
|
181
|
+
token = TokenType.KeywordImport
|
|
182
|
+
state = State.AfterKeywordModule
|
|
183
|
+
break
|
|
184
|
+
case 'port':
|
|
185
|
+
token = TokenType.Keyword
|
|
186
|
+
state = State.TopLevelContent
|
|
187
|
+
break
|
|
188
|
+
default:
|
|
189
|
+
throw new Error('no')
|
|
190
|
+
}
|
|
191
|
+
break
|
|
192
|
+
case State.AfterKeywordType:
|
|
193
|
+
if ((next = part.match(RE_WHITESPACE))) {
|
|
194
|
+
token = TokenType.Whitespace
|
|
195
|
+
state = State.AfterKeywordTypeAfterWhitespace
|
|
196
|
+
} else {
|
|
197
|
+
throw new Error('no')
|
|
198
|
+
}
|
|
199
|
+
break
|
|
200
|
+
case State.AfterKeywordTypeAfterWhitespace:
|
|
201
|
+
if ((next = part.match(RE_WORD_ALIAS))) {
|
|
202
|
+
token = TokenType.Keyword
|
|
203
|
+
state = State.AfterKeywordType
|
|
204
|
+
} else if ((next = part.match(RE_VARIABLE_NAME))) {
|
|
205
|
+
token = TokenType.Type
|
|
206
|
+
state = State.AfterTypeName
|
|
207
|
+
} else {
|
|
208
|
+
part //?
|
|
209
|
+
throw new Error('no')
|
|
210
|
+
}
|
|
211
|
+
break
|
|
212
|
+
case State.AfterTypeName:
|
|
213
|
+
if ((next = part.match(RE_WHITESPACE))) {
|
|
214
|
+
token = TokenType.Whitespace
|
|
215
|
+
state = State.AfterTypeNameAfterWhitespace
|
|
216
|
+
} else {
|
|
217
|
+
throw new Error('no')
|
|
218
|
+
}
|
|
219
|
+
break
|
|
220
|
+
case State.AfterTypeNameAfterWhitespace:
|
|
221
|
+
if ((next = part.match(RE_EQUAL_SIGN))) {
|
|
222
|
+
token = TokenType.Punctuation
|
|
223
|
+
state = State.InsideTypeRightHandSide
|
|
224
|
+
} else {
|
|
225
|
+
part //?
|
|
226
|
+
part.startsWith('M') //?
|
|
227
|
+
throw new Error('no')
|
|
228
|
+
}
|
|
229
|
+
break
|
|
230
|
+
case State.InsideTypeRightHandSide:
|
|
231
|
+
if ((next = part.match(RE_VARIABLE_NAME))) {
|
|
232
|
+
token = TokenType.Type
|
|
233
|
+
state = State.InsideTypeRightHandSide
|
|
234
|
+
} else if ((next = part.match(RE_WHITESPACE))) {
|
|
235
|
+
token = TokenType.Whitespace
|
|
236
|
+
state = State.InsideTypeRightHandSide
|
|
237
|
+
} else if ((next = part.match(RE_PUNCTUATION))) {
|
|
238
|
+
token = TokenType.Punctuation
|
|
239
|
+
state = State.InsideTypeRightHandSide
|
|
240
|
+
} else {
|
|
241
|
+
part //?
|
|
242
|
+
throw new Error('no')
|
|
243
|
+
}
|
|
244
|
+
break
|
|
245
|
+
case State.AfterTypeColon:
|
|
246
|
+
if ((next = part.match(RE_WHITESPACE_SINGLE_LINE))) {
|
|
247
|
+
token = TokenType.Whitespace
|
|
248
|
+
state = State.AfterTypeColon
|
|
249
|
+
} else if ((next = part.match(RE_VARIABLE_NAME))) {
|
|
250
|
+
token = TokenType.Type
|
|
251
|
+
state = State.AfterTypeColon
|
|
252
|
+
} else if ((next = part.match(RE_WHITESPACE_NEWLINE))) {
|
|
253
|
+
token = TokenType.Whitespace
|
|
254
|
+
state = State.TopLevelContent
|
|
255
|
+
} else if ((next = part.match(RE_PUNCTUATION))) {
|
|
256
|
+
token = TokenType.Punctuation
|
|
257
|
+
state = State.AfterTypeColon
|
|
258
|
+
} else {
|
|
259
|
+
part //?
|
|
260
|
+
throw new Error('no')
|
|
261
|
+
}
|
|
262
|
+
break
|
|
263
|
+
case State.AfterKeywordModule:
|
|
264
|
+
if ((next = part.match(RE_WHITESPACE))) {
|
|
265
|
+
token = TokenType.Whitespace
|
|
266
|
+
state = State.AfterKeywordModule
|
|
267
|
+
} else if ((next = part.match(RE_VARIABLE_NAME))) {
|
|
268
|
+
token = TokenType.VariableName
|
|
269
|
+
state = State.AfterModuleName
|
|
270
|
+
} else {
|
|
271
|
+
throw new Error('no')
|
|
272
|
+
}
|
|
273
|
+
break
|
|
274
|
+
case State.AfterModuleName:
|
|
275
|
+
if ((next = part.match(RE_WHITESPACE))) {
|
|
276
|
+
token = TokenType.Whitespace
|
|
277
|
+
state = State.TopLevelContent
|
|
278
|
+
} else {
|
|
279
|
+
throw new Error('no')
|
|
280
|
+
}
|
|
281
|
+
break
|
|
282
|
+
default:
|
|
283
|
+
throw new Error('no')
|
|
284
|
+
}
|
|
285
|
+
const tokenLength = next[0].length
|
|
286
|
+
index += tokenLength
|
|
287
|
+
tokens.push(token, tokenLength)
|
|
288
|
+
}
|
|
289
|
+
if (state === State.InsideLineComment) {
|
|
290
|
+
state = State.TopLevelContent
|
|
291
|
+
}
|
|
24
292
|
return {
|
|
25
|
-
state
|
|
293
|
+
state,
|
|
26
294
|
tokens,
|
|
27
295
|
}
|
|
28
296
|
}
|
|
297
|
+
|
|
298
|
+
tokenizeLine(`port module Main exposing (..)`, initialLineState)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Theme Atom One Dark
|
|
2
|
+
|
|
3
|
+
## Gitpod
|
|
4
|
+
|
|
5
|
+
[](https://gitpod.io/#https://github.com/lvce-editor/theme-atom-one-dark)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Credits
|
|
9
|
+
|
|
10
|
+
Extension is based on https://github.com/akamud/vscode-theme-onedark by @akamud (License MIT).
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "dark",
|
|
3
|
+
"colors": {
|
|
4
|
+
"ActivityBarBackground": "#333842",
|
|
5
|
+
"ActivityBarForeground": "rgba(215, 218, 224, 0.4)",
|
|
6
|
+
"ActivityBarActiveForeground": "#D7DAE0",
|
|
7
|
+
|
|
8
|
+
"BadgeBackground": "rgb(82, 139, 255)",
|
|
9
|
+
"BadgeForeground": "rgb(215, 218, 224)",
|
|
10
|
+
|
|
11
|
+
"ContextMenuBackground": "rgb(53, 59, 69)",
|
|
12
|
+
|
|
13
|
+
"EditorBackGround": "",
|
|
14
|
+
"EditorScrollBarBackground": "rgba(90, 99, 117, 0.5)",
|
|
15
|
+
"EditorCursorBackground": "#528bff",
|
|
16
|
+
"EditorSelectionBackground": "#3e4451",
|
|
17
|
+
|
|
18
|
+
"FocusOutline": "#528bff",
|
|
19
|
+
|
|
20
|
+
"InputBackground": "#1B1D23",
|
|
21
|
+
|
|
22
|
+
"ListActiveSelectionBackground": "#2C313A",
|
|
23
|
+
"ListActiveSelectionForeground": "",
|
|
24
|
+
"ListHoverBackground": "#2C313A66",
|
|
25
|
+
"ListHoverForeground": "",
|
|
26
|
+
"ListInactiveSelectionBackground": "",
|
|
27
|
+
"ListForeground": "rgb(204, 204, 204)",
|
|
28
|
+
|
|
29
|
+
"MainBackground": "#282C34",
|
|
30
|
+
|
|
31
|
+
"MenuBackground": "rgb(53, 59, 69)",
|
|
32
|
+
"MenuItemHoverBackground": "rgb(44, 49, 58)",
|
|
33
|
+
|
|
34
|
+
"PanelBackground": "rgb(40, 44, 52)",
|
|
35
|
+
"PanelBorderTopColor": "",
|
|
36
|
+
"PanelTabActiveForeground": "rgb(231, 231, 231)",
|
|
37
|
+
"PanelTabForeground": "rgba(231, 231, 231, 0.6)",
|
|
38
|
+
|
|
39
|
+
"QuickPickBackground": "rgb(33, 37, 43)",
|
|
40
|
+
|
|
41
|
+
"SideBarBackground": "#21252B",
|
|
42
|
+
|
|
43
|
+
"StatusBarBackground": "#21252B",
|
|
44
|
+
"StatusBarBorderTopColor": "transparent",
|
|
45
|
+
|
|
46
|
+
"TabForeground": "rgba(157, 165, 180, 0.6)",
|
|
47
|
+
"TabActiveForeground": "#d7dae0",
|
|
48
|
+
"TabActiveBackground": "#282c34",
|
|
49
|
+
"TabBackground": "#21252b",
|
|
50
|
+
|
|
51
|
+
"TabsBackground": "#21252b",
|
|
52
|
+
|
|
53
|
+
"TitleBarBackground": "#21252B",
|
|
54
|
+
"TitleBarBorderBottomColor": "",
|
|
55
|
+
"TitleBarColor": "",
|
|
56
|
+
"TitleBarColorInactive": "",
|
|
57
|
+
|
|
58
|
+
"TreeItemHoverBackground": "rgba(44, 49, 58, 0.4)"
|
|
59
|
+
},
|
|
60
|
+
"tokenColors": [
|
|
61
|
+
{
|
|
62
|
+
"name": "TagName",
|
|
63
|
+
"foreground": "#E06C75"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"name": "PunctuationTag",
|
|
67
|
+
"foreground": "#ABB2BF"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name": "AttributeName",
|
|
71
|
+
"foreground": "#D19A66"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "String",
|
|
75
|
+
"foreground": "#98C379"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "JsonPropertyValueString",
|
|
79
|
+
"foreground": "#98C379"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"name": "PunctuationString",
|
|
83
|
+
"foreground": "#98C379"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name": "CssSelector",
|
|
87
|
+
"foreground": "#D19A66"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"name": "CssPropertyName",
|
|
91
|
+
"foreground": "#ABB2BF"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"name": "CssPropertyValue",
|
|
95
|
+
"foreground": "#D19A66"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "Punctuation",
|
|
99
|
+
"foreground": "#ABB2BF"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name": "Keyword",
|
|
103
|
+
"foreground": "#C678DD"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"name": "Numeric",
|
|
107
|
+
"foreground": "#D19A66"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "Comment",
|
|
111
|
+
"foreground": "#5C6370"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"name": "VariableName",
|
|
115
|
+
"foreground": "#ABB2BF"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"name": "JsonPropertyName",
|
|
119
|
+
"foreground": "#E06C75"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "LanguageConstant",
|
|
123
|
+
"foreground": "#D19A66"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"name": "KeywordImport",
|
|
127
|
+
"foreground": "#C678DD"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"name": "Macro",
|
|
131
|
+
"foreground": "#C678DD"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"name": "Heading",
|
|
135
|
+
"foreground": "#e06c75"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "KeywordNew",
|
|
139
|
+
"foreground": "#C678DD"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"name": "KeywordReturn",
|
|
143
|
+
"foreground": "#C678DD"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"name": "Text",
|
|
147
|
+
"foreground": "#ABB2BF"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"name": "PropertyName",
|
|
151
|
+
"foreground": "#E06C75"
|
|
152
|
+
}
|
|
153
|
+
]
|
|
154
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Theme Ayu
|
|
2
|
+
|
|
3
|
+
## Gitpod
|
|
4
|
+
|
|
5
|
+
[](https://gitpod.io/#https://github.com/lvce-editor/theme-ayu)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Credits
|
|
9
|
+
|
|
10
|
+
Extension is based on https://github.com/ayu-theme/vscode-ayu by @dempfi (License MIT)
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "dark",
|
|
3
|
+
"colors": {
|
|
4
|
+
"ActivityBarBackground": "#f8f9fa",
|
|
5
|
+
"ActivityBarActiveForeground": "#8a9199cc",
|
|
6
|
+
"ActivityBarForeground": "#8a919999",
|
|
7
|
+
"ActivityBarBorder": "#f8f9fa",
|
|
8
|
+
|
|
9
|
+
"BadgeBackground": "#ffaa33",
|
|
10
|
+
"BadgeForeground": "#f8f9fa",
|
|
11
|
+
|
|
12
|
+
"ContextMenuBackground": "rgb(252, 252, 252)",
|
|
13
|
+
"ContextMenuForeground": "rgb(138, 145, 153)",
|
|
14
|
+
|
|
15
|
+
"EditorBackGround": "",
|
|
16
|
+
"EditorScrollBarBackground": "rgba(138, 145, 153, 0.6)",
|
|
17
|
+
"EditorCursorBackground": "#ffaa33",
|
|
18
|
+
"EditorSelectionBackground": "rgba(3, 91, 214, 0.15)",
|
|
19
|
+
|
|
20
|
+
"FocusOutline": "#ffaa33b3",
|
|
21
|
+
|
|
22
|
+
"InputBoxForeground": "rgb(92, 97, 102)",
|
|
23
|
+
|
|
24
|
+
"ListActiveSelectionBackground": "#56728f1f",
|
|
25
|
+
"ListActiveSelectionForeground": "#5c6166",
|
|
26
|
+
"ListHoverBackground": "#56728f1f",
|
|
27
|
+
"ListHoverForeground": "",
|
|
28
|
+
"ListInactiveSelectionBackground": "",
|
|
29
|
+
"ListForeground": "rgb(138, 145, 153)",
|
|
30
|
+
|
|
31
|
+
"MainBackground": "#f8f9fa",
|
|
32
|
+
|
|
33
|
+
"MenuBackground": "rgb(252, 252, 252)",
|
|
34
|
+
"MenuForeground": "rgb(138, 145, 153)",
|
|
35
|
+
"MenuBoxShadow": "rgb(0 0 0 / 15%) 0px 2px 4px",
|
|
36
|
+
|
|
37
|
+
"MenuItemHoverForeground": "rgb(92, 97, 102)",
|
|
38
|
+
"MenuItemHoverBackground": "rgba(86, 114, 143, 0.12)",
|
|
39
|
+
|
|
40
|
+
"PanelBackground": "#f8f9fa",
|
|
41
|
+
"PanelBorderTopColor": "#6b7d8f1f",
|
|
42
|
+
"PanelTabForeground": "rgb(138, 145, 153)",
|
|
43
|
+
"PanelTabActiveForeground": "rgb(92, 97, 102)",
|
|
44
|
+
|
|
45
|
+
"QuickPickBackground": "rgb(243, 244, 245)",
|
|
46
|
+
|
|
47
|
+
"SideBarBackground": "#f8f9fa",
|
|
48
|
+
"SideBarBorder": "#f8f9fa",
|
|
49
|
+
"SideBarForeground": "rgb(138, 145, 153)",
|
|
50
|
+
|
|
51
|
+
"StatusBarBackground": "#f8f9fa",
|
|
52
|
+
"StatusBarForeground": "#8a9199",
|
|
53
|
+
"StatusBarBorderTopColor": "#f8f9fa",
|
|
54
|
+
|
|
55
|
+
"TabForeground": "rgb(138, 145, 153)",
|
|
56
|
+
"TabActiveForeground": "rgb(92, 97, 102)",
|
|
57
|
+
"TabActiveBackground": "",
|
|
58
|
+
"TabInactiveBackground": "",
|
|
59
|
+
|
|
60
|
+
"TitleBarBackground": "",
|
|
61
|
+
"TitleBarBorderBottomColor": "",
|
|
62
|
+
"TitleBarForeground": "#8a9199",
|
|
63
|
+
"TitleBarColorInactive": "",
|
|
64
|
+
"TitleBarItemHoverForeground": "rgba(0, 0, 0, 0.1)",
|
|
65
|
+
|
|
66
|
+
"TreeItemForeground": "#8a9199"
|
|
67
|
+
},
|
|
68
|
+
"tokenColors": [
|
|
69
|
+
{
|
|
70
|
+
"name": "CssSelector",
|
|
71
|
+
"foreground": "#f2ae49"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "CssPropertyName",
|
|
75
|
+
"foreground": "#55b4d4"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "CssPropertyValue",
|
|
79
|
+
"foreground": "#ed9366"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"name": "TagName",
|
|
83
|
+
"foreground": "#55b4d4"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name": "PunctuationTag",
|
|
87
|
+
"foreground": "rgba(85, 180, 212, 0.5)"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"name": "AttributeName",
|
|
91
|
+
"foreground": "#f2ae49"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"name": "String",
|
|
95
|
+
"foreground": "#86B300"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "JsonPropertyValueString",
|
|
99
|
+
"foreground": "#86B300"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name": "PunctuationString",
|
|
103
|
+
"foreground": "#86b300"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"name": "JsonPropertyName",
|
|
107
|
+
"foreground": "#55B4D4"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "Punctuation",
|
|
111
|
+
"foreground": "#5C6166B3"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"name": "LanguageConstant",
|
|
115
|
+
"foreground": "#A37ACC"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"name": "VariableName",
|
|
119
|
+
"foreground": "#5c6166"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "KeywordImport",
|
|
123
|
+
"foreground": "#FA8D3E"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"name": "Text",
|
|
127
|
+
"foreground": "#5c6166"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"name": "Comment",
|
|
131
|
+
"foreground": "#787B8099"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"name": "Keyword",
|
|
135
|
+
"foreground": "#fa8d3e"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "Numeric",
|
|
139
|
+
"foreground": "#a37acc"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"name": "Type",
|
|
143
|
+
"foreground": "#399ee6"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"name": "Regex",
|
|
147
|
+
"foreground": "#4CBF99"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"name": "Parameter",
|
|
151
|
+
"foreground": "#a37acc"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"name": "Function",
|
|
155
|
+
"foreground": "#f2ae49"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "KeywordControl",
|
|
159
|
+
"foreground": "#FA8D3E"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"name": "Heading",
|
|
163
|
+
"foreground": "#86b300"
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"name": "VariableName",
|
|
167
|
+
"foreground": "#a37acc"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"name": "KeywordReturn",
|
|
171
|
+
"foreground": "#fa8d3e"
|
|
172
|
+
}
|
|
173
|
+
]
|
|
174
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "builtin.theme-ayu",
|
|
3
|
+
"name": "Ayu Theme",
|
|
4
|
+
"description": "A simple theme with bright colors and comes in three versions — dark, light and mirage for all day long comfortable work.",
|
|
5
|
+
"colorThemes": [
|
|
6
|
+
{
|
|
7
|
+
"id": "ayu",
|
|
8
|
+
"label": "Ayu",
|
|
9
|
+
"path": "color-theme.json"
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
}
|