one-plain/src/es.js

235 lines
5.9 KiB
JavaScript

const vars = require('./var')
module.exports = [
{
name: 'import constant',
scope: ['meta.import variable.other.readwrite.alias'],
settings: {
foreground: vars.blue2
}
},
{
name: 'import path',
scope: ['meta.import string.quoted.single', 'meta.import string.quoted.double'],
settings: {
fontStyle: 'underline',
foreground: vars.common
}
},
{
name: 'import path',
scope: [
'meta.import string.quoted.single punctuation.definition.string.begin',
'meta.import string.quoted.single punctuation.definition.string.end',
'meta.import string.quoted.double punctuation.definition.string.begin',
'meta.import string.quoted.double punctuation.definition.string.end'
],
settings: {
fontStyle: 'none'
}
},
{
name: 'Decorators',
scope: [
'tag.decorator.js entity.name.tag.js',
'tag.decorator.js punctuation.definition.tag.js'
],
settings: {
fontStyle: 'italic',
foreground: '#6182B8'
}
},
{
name: 'meta.method.js',
scope: ['meta.class-method.js entity.name.function.js', 'variable.function.constructor'],
settings: {
foreground: '#6182B8'
}
},
{
name: 'entity.name.method.js',
scope: ['entity.name.method.js'],
settings: {
fontStyle: 'italic',
foreground: '#6182B8'
}
},
{
name: 'Class extends, build-in, dom',
scope: [
'support.type.object.console',
'support.type.object.module',
'support.type.object.dom',
'support.constant.math',
'support.constant.json',
'meta.class.extends variable.other.readwrite',
'meta.function-call.static.without-arguments variable.other.class',
'meta.function-call.static.with-arguments variable.other.class',
'meta.property.class variable.other.class'
],
settings: {
fontStyle: 'bold italic',
foreground: '#ffb62c'
}
},
{
name: 'new Class',
scope: ['new.expr entity.name.type'],
settings: {
fontStyle: 'bold',
foreground: '#ffb62c'
}
},
{
name: 'js/ts doc',
scope: [
'comment.block.documentation entity.name.type.instance.jsdoc',
'comment.block.documentation constant.other.email.link.underline.jsdoc'
],
settings: {
fontStyle: 'italic',
foreground: '#b6d5e0'
}
},
{
name: 'js/ts doc email',
scope: ['comment.block.documentation constant.other.email.link.underline.jsdoc'],
settings: {
fontStyle: 'italic underline'
}
},
{
name: 'ts string express',
scope: [
'punctuation.definition.template-expression.begin',
'punctuation.definition.template-expression.end'
],
settings: {
fontStyle: '',
foreground: '#ff5370'
}
},
{
name: 'Punctuation',
scope: [
'meta.object.member meta.array.literal meta.brace.square',
'meta.object.member meta.arrow meta.brace.round',
'text.html.vue-html meta.brace.round',
'text.html.vue-html meta.directive.vue',
'string.template meta.template.expression meta.array.literal meta.brace.square',
'string.template meta.template.expression meta.brace.round',
'meta.tag.attributes punctuation.section.embedded.begin',
'meta.tag.attributes punctuation.section.embedded.end',
'meta.tag.without-attributes punctuation.section.embedded.begin',
'meta.tag.without-attributes punctuation.section.embedded.end',
'meta.type.annotation meta.brace.square'
],
settings: {
foreground: vars.common
}
},
{
name: 'Variables',
scope: ['string.template meta.template.expression support.variable.property'],
settings: {
foreground: vars.common2
}
},
{
name: 'build-in function',
scope: [
'source.js support.function.node.js',
'meta.group.braces.curly.js support.function',
'meta.function-call.ts support.function.ts',
'meta.function-call.js support.function.js',
'support.function.builtin.js'
],
settings: {
fontStyle: 'italic',
foreground: vars.magenta1
}
},
{
name: 'js/ts italic',
scope: [
'entity.other.attribute-name.js',
'entity.other.attribute-name.ts',
'entity.other.attribute-name.jsx',
'entity.other.attribute-name.tsx'
],
settings: {
fontStyle: 'italic'
}
},
{
name: 'Build-in props',
scope: [
'meta.group.braces.round variable.other.constant',
'support.type.object.module keyword.operator.accessor',
'support.constant.property.math.ts'
],
settings: {
fontStyle: 'italic bold',
foreground: vars.common
}
},
// ts 类型
{
name: 'ts primitive/builtin types',
scope: [
'support.type.primitive.ts',
'support.type.builtin.ts',
'support.type.primitive.tsx',
'support.type.builtin.tsx',
'entity.name.type.module',
'entity.name.type'
],
settings: {
foreground: '#e5c07b',
fontStyle: 'bold italic'
}
},
{
name: 'object keys',
scope: [
'constant.other.object.key string.unquoted.label',
'constant.other.object.key string.quoted.label',
'meta.object.member meta.object-literal.key',
'meta.object.member meta.object-literal.key string.quoted.double',
'meta.object.member meta.object-literal.key string.quoted.single',
'meta.object.member meta.object-literal.key constant.numeric.decimal',
'meta.field.declaration variable.object.property'
],
settings: {
fontStyle: 'italic bold',
foreground: vars.common
}
},
{
name: 'jsx Tag',
scope: [
'entity.name.tag support.class.component',
'text.html.vue-html support.class.component.html'
],
settings: {
fontStyle: 'normal',
foreground: '#ff5370'
}
},
{
name: 'Tag Content String',
scope: ['meta.tag meta.tag.without-attributes meta.jsx.children', 'meta.tag meta.jsx.children'],
settings: {
foreground: '#546e7a'
}
}
]
vs code 浅色主题。
JavaScript 100%