pull/6/head
宇天 2018-12-01 21:17:55 +08:00
parent 46d2553150
commit 9c83d8c2ee
13 changed files with 1742 additions and 680 deletions

View File

@ -1,4 +1,7 @@
.vscode/**
.vscode-test/**
.gitignore
src
src/**
build.js
vsc-extension-quickstart.md

View File

@ -1,4 +1,11 @@
# 更新日志
## [1.1.0] 2018-12-01
- 优化php和ts的语法高亮 [#1](https://github.com/yutent/one-plain/issues/1)
- 修复json的属性高亮异常
- 其他一些细节的调整
## [1.0.3] 2018-11-30
- 正式上架插件商店。

36
build.js Normal file
View File

@ -0,0 +1,36 @@
/**
* 米白色主题
* @author yutent<yutent@doui.cc>
* @date 2018/12/01 13:33:44
*/
'use strict'
const fs = require('iofs')
const path = require('path')
const colors = require('./src/colors')
const base = require('./src/base')
const es = require('./src/es')
const php = require('./src/php')
const html = require('./src/html')
const markdown = require('./src/markdown')
const json = require('./src/json')
const tokenColors = [].concat(base, html, es, php, markdown, json)
for (let it of tokenColors) {
if (Array.isArray(it.scope)) {
it.scope = it.scope.join(', ')
}
}
const theme = {
name: '米白色主题',
type: 'light',
colors,
tokenColors
}
fs.echo(JSON.stringify(theme, '', 2), path.join('./themes', 'color-theme.json'))
console.log('Build complete...')

View File

@ -3,7 +3,7 @@
"displayName": "米白色主题",
"description": "🔥 米白色主题",
"icon": "logo.png",
"version": "1.0.3",
"version": "1.1.0",
"publisher": "yutent",
"author": "Yutent [@yutent]",
"engines": {

343
src/base.js Normal file
View File

@ -0,0 +1,343 @@
const vars = require('./var')
module.exports = [
{
name: 'Comment',
scope: ['comment', 'punctuation.definition.comment'],
settings: {
fontStyle: 'italic',
foreground: '#B6D5E0'
}
},
{
name: 'Variables',
scope: ['variable', 'string constant.other.placeholder'],
settings: {
foreground: vars.common2
}
},
{
name: 'Colors',
scope: ['constant.other.color'],
settings: {
foreground: vars.common2
}
},
{
name: 'Invalid',
scope: ['invalid', 'invalid.illegal'],
settings: {
foreground: vars.common2
}
},
{
name: 'Invalid deprecated',
scope: ['invalid.deprecated'],
settings: {
fontStyle: 'italic',
foreground: '#FFB62C'
}
},
{
name: 'Unimplemented',
scope: 'invalid.unimplemented',
settings: {
foreground: vars.common2
}
},
{
name: 'Keyword, Storage',
scope: ['keyword', 'storage.type', 'storage.modifier'],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Keyword, Storage',
scope: ['storage.type', 'keyword.control'],
settings: {
fontStyle: 'italic'
}
},
{
name: 'Operator, Misc',
scope: [
'keyword.control',
'constant.other.color',
'meta.tag',
'punctuation.definition.tag',
'punctuation.separator.inheritance.php',
'punctuation.definition.tag.html',
'punctuation.definition.tag.begin.html',
'punctuation.definition.tag.end.html',
'punctuation.section.embedded',
'keyword.other.template',
'keyword.other.substitution'
],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Operator, Misc',
scope: [
'punctuation.definition.generic.begin.wxml',
'punctuation.definition.generic.end.wxml'
],
settings: {
foreground: '#f7820c'
}
},
{
name: 'Keyword Control',
scope: ['keyword.control'],
settings: {
fontStyle: 'italic'
}
},
{
name: 'Tag',
scope: ['entity.name.tag', 'meta.tag.sgml', 'markup.deleted.git_gutter'],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Function, Special Method, Block Level',
scope: [
'entity.name.function',
'meta.function-call',
'variable.function',
'support.function',
'keyword.other.special-method',
'meta.block-level'
],
settings: {
foreground: '#0099ff'
}
},
{
name: 'C-related Block Level Variables',
scope: ['source.cpp meta.block variable.other'],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Variables constant',
scope: ['variable.other.constant'],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Other Variable, String Link',
scope: ['support.other.variable', 'string.other.link'],
settings: {
foreground: '#FF5370'
}
},
{
name: 'Number, Constant, Function Argument, Tag Attribute, Embedded',
scope: [
'constant.numeric',
'constant.language',
'support.constant',
'constant.character',
'variable.parameter',
'keyword.other.unit'
],
settings: {
fontStyle: 'italic',
foreground: '#7c4dff'
}
},
{
name: 'func parameter',
scope: ['variable.parameter'],
settings: {
foreground: '#f5be09',
fontStyle: 'italic'
}
},
{
name: 'Number, Function Argument, Tag Attribute, Embedded',
scope: ['variable.parameter.function.language.special'],
settings: {
foreground: '#E53935'
}
},
{
name: 'Number, Constant, Function Argument, Tag Attribute, Embedded',
scope: 'constant.character.entity.wxml',
settings: {
fontStyle: 'italic',
foreground: vars.common2
}
},
{
name: 'String',
scope: ['string'],
settings: {
foreground: '#53c659'
}
},
{
name: 'Punctuation',
scope: 'punctuation',
settings: {
foreground: vars.common
}
},
{
name: 'Symbols, Inherited Class, Markup Heading',
scope: [
'constant.other.symbol',
'constant.other.key',
'entity.other.inherited-class',
'markup.heading',
'markup.inserted.git_gutter',
'meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js'
],
settings: {
foreground: vars.common2
}
},
{
name: 'Class, Support',
scope: [
'entity.name.class',
'entity.name.type.class',
'support.type',
'support.class',
'support.orther.namespace.use.php',
'meta.use.php',
'support.other.namespace.php',
'markup.changed.git_gutter',
'support.type.sys-types'
],
settings: {
fontStyle: 'bold italic',
foreground: '#FFB62C'
}
},
{
name: 'Entity Types',
scope: ['support.type'],
settings: {
foreground: '#8796B0'
}
},
{
name: 'CSS Class and Support',
scope: [
'source.css support.type.property-name',
'source.sass support.type.property-name',
'source.scss support.type.property-name',
'source.less support.type.property-name',
'source.stylus support.type.property-name',
'source.postcss support.type.property-name'
],
settings: {
foreground: '#8796B0'
}
},
{
name: 'Sub-methods',
scope: [
'entity.name.module.js',
'variable.import.parameter.js',
'variable.other.class.js'
],
settings: {
foreground: '#E53935'
}
},
{
name: 'Language methods',
scope: ['variable.language'],
settings: {
fontStyle: 'italic',
foreground: '#E53935'
}
},
{
name: 'entity.name.method.js',
scope: ['entity.name.method.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: 'Attributes',
scope: ['entity.other.attribute-name'],
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'Inserted',
scope: ['markup.inserted'],
settings: {
foreground: '#91B859'
}
},
{
name: 'Deleted',
scope: ['markup.deleted'],
settings: {
foreground: '#E53935'
}
},
{
name: 'Changed',
scope: ['markup.changed'],
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'Regular Expressions',
scope: ['string.regexp'],
settings: {
foreground: '#0099ff'
}
},
{
name: 'Escape Characters',
scope: ['constant.character.escape'],
settings: {
foreground: '#39ADB5'
}
},
{
name: 'URL',
scope: ['*url*', '*link*', '*uri*'],
settings: {
fontStyle: 'underline'
}
},
{
name: 'Decorators',
scope: [
'tag.decorator.js entity.name.tag.js',
'tag.decorator.js punctuation.definition.tag.js'
],
settings: {
fontStyle: 'italic',
foreground: '#6182B8'
}
}
]

175
src/colors.js Normal file
View File

@ -0,0 +1,175 @@
const vars = require('./var')
module.exports = {
focusBorder: vars.transparent,
'scrollbar.shadow': vars.transparent,
'editorLink.activeForeground': vars.common,
'selection.background': '#80CBC440',
'progressBar.background': '#80CBC4',
'textLink.foreground': '#80CBC4',
'textLink.activeForeground': vars.common,
'editorCursor.foreground': vars.dark,
'editorRuler.foreground': '#B0BEC5',
'editorLineNumber.foreground': '#CFD8DC',
'editorLineNumber.activeForeground': '#627883',
'editorBracketMatch.border': vars.dark + 50,
'editorBracketMatch.background': vars.white,
'editorWhitespace.foreground': vars.plain2,
'editor.background': vars.white,
'editor.foreground': '#546e7a',
'editor.lineHighlightBackground': '#CCD7DA50',
'editor.selectionBackground': '#80CBC440',
'editor.selectionHighlightBackground': '#80CBC400',
'editor.selectionHighlightBorder': '#B6D5E0',
'editor.snippetTabstopHighlightBackground': '#80CBC400',
'editor.findMatchBackground': '#fd800855',
'editor.findMatchHighlightBackground': '#B6D5E000',
'editor.findMatchBorder': '#fd800800',
'editor.findMatchHighlightBorder': '#B6D5E0',
'editorOverviewRuler.border': vars.white,
'editorHoverWidget.background': vars.white,
'editorHoverWidget.border': '#00000010',
'editorIndentGuide.background': vars.plain2,
'editorIndentGuide.activeBackground': vars.plain3,
'editorGroupHeader.tabsBackground': vars.white,
'editorGroup.border': vars.plain2,
'editorGutter.modifiedBackground': '#6182B860',
'editorGutter.addedBackground': '#91B85960',
'editorGutter.deletedBackground': '#E5393560',
'editorSuggestWidget.background': vars.white,
'editorSuggestWidget.foreground': vars.common,
'editorSuggestWidget.highlightForeground': '#546e7a',
'editorSuggestWidget.selectedBackground': '#CCD7DA50',
'editorSuggestWidget.border': vars.black + 10,
'editorError.foreground': '#E5393570',
'editorWarning.foreground': '#91B85970',
'editorWidget.background': vars.plain1,
'editorWidget.resizeBorder': '#80CBC4',
'editorWidget.border': vars.plain3,
'editorMarkerNavigation.background': '#90A4AE05',
'tab.activeBorder': '#3fc2a7',
'tab.unfocusedActiveBorder': vars.common,
'tab.activeBackground': vars.plain2,
'tab.activeForeground': vars.black,
'tab.inactiveForeground': '#627883',
'tab.inactiveBackground': vars.white,
'tab.unfocusedActiveForeground': vars.common,
'tab.border': vars.white,
'statusBar.noFolderBackground': vars.white,
'statusBar.border': vars.plain3,
'statusBar.background': vars.plain1,
'statusBar.foreground': '#7E939E',
'statusBar.debuggingBackground': '#7C4DFF',
'statusBar.debuggingForeground': vars.white,
'statusBarItem.hoverBackground': '#90A4AE20',
'activityBar.background': vars.plain1,
'activityBar.border': vars.plain3,
'activityBar.foreground': '#19b491',
'activityBar.inactiveForeground': '#a7beca',
'activityBarBadge.background': '#EA4224',
'activityBarBadge.foreground': vars.white,
'titleBar.activeBackground': vars.plain3,
'titleBar.activeForeground': '#3fc2a7',
'titleBar.inactiveBackground': vars.plain1,
'titleBar.inactiveForeground': '#627883',
'titleBar.border': vars.plain3,
'sideBar.background': vars.plain1,
'sideBar.foreground': '#627883',
'sideBar.border': vars.plain3,
'sideBarTitle.foreground': vars.common,
'sideBarSectionHeader.background': vars.plain1,
'input.background': vars.white,
'input.foreground': vars.common,
'input.placeholderForeground': '#90A4AE60',
'input.border': vars.plain3,
'inputValidation.errorBorder': '#E5393550',
'inputValidation.infoBorder': '#6182B850',
'inputValidation.warningBorder': '#FFB62C50',
'dropdown.background': vars.white,
'dropdown.border': '#00000010',
'list.hoverForeground': '#B1C7D3',
'list.hoverBackground': vars.plain1,
'list.activeSelectionBackground': vars.plain1,
'list.activeSelectionForeground': '#80CBC4',
'list.inactiveSelectionForeground': '#80CBC4',
'list.inactiveSelectionBackground': '#CCD7DA50',
'list.focusBackground': '#90A4AE20',
'list.focusForeground': vars.common,
'list.highlightForeground': '#80CBC4',
'terminal.ansiWhite': vars.grey2,
'terminal.ansiBlack': vars.black,
'terminal.ansiBlue': vars.blue2,
'terminal.ansiCyan': vars.cyan2,
'terminal.ansiGreen': vars.green2,
'terminal.ansiMagenta': vars.magenta2,
'terminal.ansiRed': vars.red2,
'terminal.ansiYellow': vars.yellow2,
'terminal.ansiBrightWhite': vars.grey1,
'terminal.ansiBrightBlack': vars.dark,
'terminal.ansiBrightBlue': vars.blue1,
'terminal.ansiBrightCyan': vars.cyan1,
'terminal.ansiBrightGreen': vars.green1,
'terminal.ansiBrightMagenta': vars.magenta1,
'terminal.ansiBrightRed': vars.red1,
'terminal.ansiBrightYellow': vars.yellow1,
'scrollbarSlider.background': vars.common + 20,
'scrollbarSlider.hoverBackground': vars.common + 10,
'scrollbarSlider.activeBackground': '#80CBC4',
'widget.shadow': vars.black + 20,
'panel.border': vars.plain3,
'panel.background': vars.plain1,
'panel.dropBackground': vars.common,
'panelTitle.inactiveForeground': vars.common,
'panelTitle.activeForeground': '#16967a',
'panelTitle.activeBorder': '#3fc2a7',
'diffEditor.insertedTextBackground': '#91B85915',
'diffEditor.removedTextBackground': '#E5393520',
'notifications.background': vars.white,
'notifications.foreground': vars.common,
'notificationLink.foreground': '#80CBC4',
'badge.background': '#CCD7DA30',
'badge.foreground': vars.common,
'button.background': '#80CBC440',
'extensionButton.prominentBackground': '#91B85990',
'extensionButton.prominentHoverBackground': '#91B859',
'peekView.border': '#00000020',
'peekViewEditor.background': '#90A4AE05',
'peekViewTitle.background': '#90A4AE05',
'peekViewResult.background': '#90A4AE05',
'peekViewEditorGutter.background': '#90A4AE05',
'peekViewTitleDescription.foreground': '#90A4AE60',
'peekViewResult.matchHighlightBackground': '#80CBC440',
'peekViewEditor.matchHighlightBackground': '#80CBC440',
'debugToolBar.background': vars.white,
'pickerGroup.foreground': '#80CBC4',
'gitDecoration.deletedResourceForeground': '#E5393590',
'gitDecoration.conflictingResourceForeground': '#FFB62C90',
'gitDecoration.modifiedResourceForeground': '#6182B890',
'gitDecoration.untrackedResourceForeground': '#91B85990',
'gitDecoration.ignoredResourceForeground': '#62788390',
'peekViewResult.selectionBackground': '#62788370',
'breadcrumb.background': vars.white,
'breadcrumb.foreground': '#627883',
'breadcrumb.focusForeground': vars.common,
'breadcrumb.activeSelectionForeground': '#80CBC4',
'breadcrumbPicker.background': vars.plain1,
'menu.background': vars.white,
'menu.foreground': vars.common,
'menu.selectionBackground': '#CCD7DA50',
'menu.selectionForeground': '#80CBC4',
'menu.selectionBorder': '#CCD7DA50',
'menu.separatorBackground': vars.common,
'menubar.selectionBackground': '#CCD7DA50',
'menubar.selectionForeground': '#80CBC4',
'menubar.selectionBorder': '#CCD7DA50',
'settings.dropdownForeground': vars.common,
'settings.dropdownBackground': vars.plain1,
'settings.numberInputForeground': vars.common,
'settings.numberInputBackground': vars.plain1,
'settings.textInputForeground': vars.common,
'settings.textInputBackground': vars.plain1,
'settings.headerForeground': '#80CBC4',
'settings.modifiedItemIndicator': '#80CBC4',
'settings.checkboxBackground': vars.plain1,
'settings.checkboxForeground': vars.common
}

56
src/es.js Normal file
View File

@ -0,0 +1,56 @@
module.exports = [
{
name: 'ES7 Bind Operator',
scope: ['source.js constant.other.object.key.js string.unquoted.label.js'],
settings: {
fontStyle: 'italic',
foreground: '#E53935'
}
},
{
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: 'math js/ts',
scope: 'support.constant.math',
settings: {
foreground: '#ffb62c',
fontStyle: 'bold italic'
}
},
{
name: 'math property js/ts',
scope: 'support.constant.property.math',
settings: {
foreground: '#7c4dff'
}
},
// 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'
}
}
]

92
src/html.js Normal file
View File

@ -0,0 +1,92 @@
module.exports = [
{
name: 'HTML Attributes',
scope: [
'text.html.basic entity.other.attribute-name.html',
'text.html.basic entity.other.attribute-name',
'text.xhtml.basic entity.other.attribute-name.xhtml',
'text.xhtml.basic entity.other.attribute-name'
],
settings: {
fontStyle: 'italic',
foreground: '#FFB62C'
}
},
{
name: 'CSS Classes',
scope: ['entity.other.attribute-name.class'],
settings: {
foreground: '#FFB62C'
}
},
{
name: "CSS ID's",
scope: ['source.sass keyword.control'],
settings: {
foreground: '#6182B8'
}
},
{
name: 'Markup - Italic',
scope: ['markup.italic'],
settings: {
fontStyle: 'italic',
foreground: '#FF5370'
}
},
{
name: 'Markup - Bold',
scope: ['markup.bold', 'markup.bold string'],
settings: {
fontStyle: 'bold',
foreground: '#FF5370'
}
},
{
name: 'Markup - Bold-Italic',
scope: [
'markup.bold markup.italic',
'markup.italic markup.bold',
'markup.quote markup.bold',
'markup.bold markup.italic string',
'markup.italic markup.bold string',
'markup.quote markup.bold string'
],
settings: {
fontStyle: 'bold',
foreground: '#FF5370'
}
},
{
name: 'Markup - Underline',
scope: ['markup.underline'],
settings: {
fontStyle: 'underline',
foreground: '#F76D47'
}
},
{
name: 'Markup - Quote',
scope: ['markup.quote'],
settings: {
fontStyle: 'italic'
}
},
{
name: 'Markup - Raw Block',
scope: ['markup.raw.block'],
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'Markup - Table',
scope: ['markup.table'],
settings: {
foreground: '#90A4AE'
}
}
]

76
src/json.js Normal file
View File

@ -0,0 +1,76 @@
const vars = require('./var')
module.exports = [
{
name: 'JSON Key - Level 0',
scope:
'source.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: vars.common
}
},
{
name: 'JSON Key - Level 1',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#FFB62C'
}
},
{
name: 'JSON Key - Level 2',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#F76D47'
}
},
{
name: 'JSON Key - Level 3',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#E53935'
}
},
{
name: 'JSON Key - Level 4',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#C17E70'
}
},
{
name: 'JSON Key - Level 5',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#6182B8'
}
},
{
name: 'JSON Key - Level 6',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#FF5370'
}
},
{
name: 'JSON Key - Level 7',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'JSON Key - Level 8',
scope:
'source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json',
settings: {
foreground: '#91B859'
}
}
]

92
src/markdown.js Normal file
View File

@ -0,0 +1,92 @@
module.exports = [
{
name: 'Markdown - Plain',
scope: ['text.html.markdown', 'punctuation.definition.list_item.markdown'],
settings: {
foreground: '#90A4AE'
}
},
{
name: 'Markdown - Markup Raw Inline',
scope: ['text.html.markdown markup.inline.raw.markdown'],
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'Markdown - Markup Raw Inline Punctuation',
scope: [
'text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown'
],
settings: {
foreground: '#E7EAEC'
}
},
{
name: 'Markdown - Heading',
scope: [
'markdown.heading',
'markup.heading | markup.heading entity.name',
'markup.heading.markdown punctuation.definition.heading.markdown'
],
settings: {
foreground: '#91B859'
}
},
{
name: 'Markdown - Blockquote',
scope: ['markup.quote punctuation.definition.blockquote.markdown'],
settings: {
foreground: '#E7EAEC'
}
},
{
name: 'Markdown - Link',
scope: ['string.other.link.title.markdown'],
settings: {
foreground: '#6182B8'
}
},
{
name: 'Markdown - Link Description',
scope: ['string.other.link.description.title.markdown'],
settings: {
foreground: '#7C4DFF'
}
},
{
name: 'Markdown - Link Anchor',
scope: ['constant.other.reference.link.markdown'],
settings: {
foreground: '#FFB62C'
}
},
{
name: 'Markdown - Fenced Bode Block Variable',
scope: [
'markup.fenced_code.block.markdown',
'markup.inline.raw.string.markdown'
],
settings: {
foreground: '#90A4AE90'
}
},
{
name: 'Markdown - Fenced Language',
scope: ['variable.language.fenced.markdown'],
settings: {
foreground: '#E7EAEC'
}
},
{
name: 'Markdown - Separator',
scope: ['meta.separator'],
settings: {
fontStyle: 'bold',
foreground: '#E7EAEC'
}
}
]

150
src/php.js Normal file
View File

@ -0,0 +1,150 @@
const vars = require('./var')
module.exports = [
{
name: 'PHP Constants',
scope: [
'constant.other.php',
'support.constant.ext.php',
'support.constant.std.php,support.constant.core.php',
'support.constant.parser-token.php',
'constant'
],
settings: {
foreground: '#ffb62c'
}
},
{
name: 'Class name php',
scope: 'variable.other.class.php',
settings: {
foreground: '#e06c75'
}
},
// 变量 以及 $this
{
name: 'php dollar sign',
scope: [
'punctuation.definition.variable.php',
'variable.language.this.php'
],
settings: {
foreground: vars.common2
}
},
{
name: 'php heredoc/nowdoc',
scope: 'keyword.operator.heredoc.php,keyword.operator.nowdoc.php',
settings: {
foreground: '#c678dd'
}
},
{
name: 'php goto',
scope: 'entity.name.goto-label.php,support.other.php',
settings: {
foreground: '#61AFEF'
}
},
{
name: 'php logical/bitwise operator',
scope:
'keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php',
settings: {
foreground: '#56b6c2'
}
},
{
name: 'php regexp operator',
scope: 'keyword.operator.regexp.php',
settings: {
foreground: '#c678dd'
}
},
{
name: 'php comparison',
scope: 'keyword.operator.comparison.php',
settings: {
foreground: '#56b6c2'
}
},
{
name: 'php instanceof',
scope: 'keyword.operator.type.php',
settings: {
foreground: '#c678dd'
}
},
{
name: 'php illegal.non-null-typehinted',
scope: 'invalid.illegal.non-null-typehinted.php',
settings: {
foreground: '#f44747'
}
},
{
name: 'php types',
scope: [
[
'storage.type.php',
'meta.other.type.phpdoc.php',
'keyword.other.type.php',
'keyword.other.array.phpdoc.php'
]
],
settings: {
foreground: '#ffb62c',
fontStyle: 'bold italic'
}
},
{
name: 'php call-function',
scope: [
'meta.function-call.php',
'meta.function-call.object.php',
'meta.function-call.static.php'
],
settings: {
foreground: '#61AFEF'
}
},
{
name: 'laravel blade tag',
scope: [
'text.html.laravel-blade',
'source.php.embedded.line.html',
'entity.name.tag.laravel-blade'
],
settings: {
foreground: '#c678dd'
}
},
{
name: 'laravel blade @',
scope: [
'text.html.laravel-blade',
'source.php.embedded.line.html',
'support.constant.laravel-blade'
],
settings: {
foreground: '#c678dd'
}
},
{
name: 'use statement for other classes',
scope: [
'support.other.namespace.use.php',
'support.other.namespace.use-as.php',
'support.other.namespace.php',
'entity.other.alias.php',
'meta.interface.php'
],
settings: {
foreground: '#E5C07B'
}
}
]

25
src/var.js Normal file
View File

@ -0,0 +1,25 @@
module.exports = {
common: '#90a4ae',
common2: '#546e7a',
transparent: '#ffffff00',
black: '#000000',
white: '#ffffff',
dark: '#272727',
plain1: '#f7f8fb',
plain2: '#f3f5fb',
plain3: '#e7e8eb',
grey1: '#ebebeb',
grey2: '#c0c0c0',
blue1: '#70acf7',
blue2: '#0096ff',
cyan1: '#3fc2a7',
cyan2: '#19b491',
green1: '#2ecc71',
green2: '#27ae60',
red1: '#ff4628',
red2: '#ea4224',
yellow1: '#f39c12',
yellow2: '#e67e22',
magenta1: '#be7ee7',
magenta2: '#9437ff'
}

File diff suppressed because it is too large Load Diff