235 lines
5.9 KiB
JavaScript
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'
|
|
}
|
|
}
|
|
]
|