Initial Commit - Australis
This commit is contained in:
2
.prettierignore
Normal file
2
.prettierignore
Normal file
@@ -0,0 +1,2 @@
|
||||
**/rules.ts
|
||||
**/vsCodeThemeGenerator.ts
|
||||
217
demo/generate.ts
217
demo/generate.ts
@@ -1,124 +1,121 @@
|
||||
import * as path from 'path';
|
||||
import { generateTheme, IColorSet } from '../dist';
|
||||
import * as path from "path";
|
||||
import { generateTheme, IColorSet } from "../dist";
|
||||
|
||||
const sapphireColors = {
|
||||
red: '#DA6771',
|
||||
redLight: '#e5949b',
|
||||
green: '#4EB071',
|
||||
greenDim: '#275839',
|
||||
yellow: '#fff099',
|
||||
blue: '#399EF4',
|
||||
blueLight: '#9fcff9',
|
||||
pink: '#B168DF',
|
||||
teal: '#21C5C7',
|
||||
grey: '#4A5160'
|
||||
// Australis Color List
|
||||
// Black 222531 - 373b46
|
||||
// White a9bcc3 - c7e7f9
|
||||
// Red ff491a - ff854f
|
||||
// Green 16B866 - 51e08a
|
||||
// Blue 6388D8 - a4c4ff
|
||||
// Yellow e1c631 - FFE14E
|
||||
// Magenta 9d78ff - d8adff
|
||||
// Cyan 00b1a8 - 42dcd1
|
||||
|
||||
// Dark 30 - 414751
|
||||
// Dark 40 - 565f69
|
||||
// Dark 50 - 6e7882
|
||||
// Dark 60 - 86929d
|
||||
|
||||
// Bright 70 - 9daeb6
|
||||
// Bright 80 - b3cbcf
|
||||
// Bright 90 - cce7ec
|
||||
|
||||
const australisColors = {
|
||||
black: "#222531",
|
||||
blackLight: "#373b46",
|
||||
white: "#a9bcc3",
|
||||
whiteLight: "#c7e7f9",
|
||||
red: "#ff491a",
|
||||
redLight: "#ff854f",
|
||||
green: "#16B866",
|
||||
greenLight: "#51e08a",
|
||||
blue: "#6388D8",
|
||||
blueLight: "#a4c4ff",
|
||||
yellow: "#e1c631",
|
||||
yellowLight: "#FFE14E",
|
||||
magenta: "#9d78ff",
|
||||
magentaLight: "#d8adff",
|
||||
cyan: "#00b1a8",
|
||||
cyanLight: "#42dcd1",
|
||||
dark_30: "#414751",
|
||||
dark_40: "#565f69",
|
||||
dark_50: "#6e7882",
|
||||
dark_60: "#86929d",
|
||||
bright_70: "#9daeb6",
|
||||
bright_80: "#b3cbcf",
|
||||
bright_90: "#cce7ec",
|
||||
};
|
||||
|
||||
const sapphireColorSet: IColorSet = {
|
||||
type: 'dark',
|
||||
const australisColorSet: IColorSet = {
|
||||
type: "dark",
|
||||
base: {
|
||||
background: '#12171f',
|
||||
foreground: '#efefef',
|
||||
color1: sapphireColors.blue,
|
||||
color2: sapphireColors.red,
|
||||
color3: sapphireColors.green,
|
||||
color4: sapphireColors.yellow
|
||||
background: australisColors.black,
|
||||
foreground: australisColors.white,
|
||||
color1: australisColors.blueLight,
|
||||
color2: australisColors.yellowLight,
|
||||
color3: australisColors.greenLight,
|
||||
color4: australisColors.magentaLight,
|
||||
},
|
||||
syntax: {
|
||||
identifier: sapphireColors.blueLight,
|
||||
string: sapphireColors.red,
|
||||
number: sapphireColors.redLight,
|
||||
keyword: sapphireColors.blue,
|
||||
boolean: sapphireColors.blue,
|
||||
function: sapphireColors.teal,
|
||||
functionCall: sapphireColors.yellow,
|
||||
storage: sapphireColors.blue,
|
||||
comment: sapphireColors.grey,
|
||||
class: sapphireColors.teal,
|
||||
classMember: sapphireColors.teal,
|
||||
type: sapphireColors.green,
|
||||
cssClass: sapphireColors.blue,
|
||||
cssId: sapphireColors.red,
|
||||
cssTag: sapphireColors.teal,
|
||||
markdownQuote: '#c0c0c0'
|
||||
identifier: australisColors.blueLight,
|
||||
string: australisColors.cyanLight,
|
||||
stringEscape: australisColors.yellowLight,
|
||||
number: australisColors.cyanLight,
|
||||
keyword: australisColors.greenLight,
|
||||
boolean: australisColors.blueLight,
|
||||
function: australisColors.magentaLight,
|
||||
functionCall: australisColors.blueLight,
|
||||
storage: australisColors.blueLight,
|
||||
comment: australisColors.dark_40,
|
||||
class: australisColors.greenLight,
|
||||
classMember: australisColors.green,
|
||||
type: australisColors.whiteLight,
|
||||
cssClass: australisColors.blueLight,
|
||||
cssId: australisColors.blue,
|
||||
cssTag: australisColors.greenLight,
|
||||
markdownQuote: australisColors.dark_40,
|
||||
constants: australisColors.blue,
|
||||
},
|
||||
ui: {
|
||||
cursor: '#ffffff',
|
||||
guide: '#263040',
|
||||
invisibles: '#263040',
|
||||
rangeHighlight: '#263040',
|
||||
// Bright red 50% opacity
|
||||
findMatchHighlight: '#cb606080',
|
||||
// Brighter red 50% opacity
|
||||
currentFindMatchHighlight: '#ff777780',
|
||||
selection: '#153958',
|
||||
// Blue 50% opacity
|
||||
selectionHighlight: '#2b74b380',
|
||||
// White with ~10% opacity
|
||||
wordHighlight: '#ffffff18',
|
||||
wordHighlightStrong: '#ffffff18',
|
||||
activeLinkForeground: sapphireColors.blue
|
||||
cursor: australisColors.whiteLight,
|
||||
guide: australisColors.blackLight,
|
||||
invisibles: australisColors.blackLight,
|
||||
lineHighlight: australisColors.dark_30 + "80",
|
||||
rangeHighlight: australisColors.dark_30 + "80",
|
||||
findMatchHighlight: australisColors.green + "40",
|
||||
findRangeHighlight: australisColors.dark_30 + "40",
|
||||
currentFindMatchHighlight: australisColors.green + "80",
|
||||
selection: australisColors.blue + "40",
|
||||
selectionHighlight: australisColors.blue + "20",
|
||||
wordHighlight: australisColors.magenta + "18",
|
||||
wordHighlightStrong: australisColors.magenta + "18",
|
||||
activeLinkForeground: australisColors.blue,
|
||||
},
|
||||
terminal: {
|
||||
black: '#666666',
|
||||
red: sapphireColors.red,
|
||||
green: sapphireColors.green,
|
||||
yellow: sapphireColors.yellow,
|
||||
blue: sapphireColors.blue,
|
||||
magenta: sapphireColors.pink,
|
||||
cyan: sapphireColors.teal,
|
||||
white: '#efefef',
|
||||
brightBlack: '#666666',
|
||||
brightRed: sapphireColors.red,
|
||||
brightGreen: sapphireColors.green,
|
||||
brightYellow: sapphireColors.yellow,
|
||||
brightBlue: sapphireColors.blue,
|
||||
brightMagenta: sapphireColors.pink,
|
||||
brightCyan: sapphireColors.teal,
|
||||
brightWhite: '#efefef'
|
||||
black: australisColors.black,
|
||||
red: australisColors.red,
|
||||
green: australisColors.green,
|
||||
yellow: australisColors.yellow,
|
||||
blue: australisColors.blue,
|
||||
magenta: australisColors.magenta,
|
||||
cyan: australisColors.cyan,
|
||||
white: australisColors.white,
|
||||
brightBlack: australisColors.dark_40,
|
||||
brightRed: australisColors.redLight,
|
||||
brightGreen: australisColors.greenLight,
|
||||
brightYellow: australisColors.yellowLight,
|
||||
brightBlue: australisColors.blueLight,
|
||||
brightMagenta: australisColors.magentaLight,
|
||||
brightCyan: australisColors.cyanLight,
|
||||
brightWhite: australisColors.whiteLight,
|
||||
},
|
||||
overrides: {
|
||||
'editorError.foreground': '#ff0000'
|
||||
}
|
||||
"editorError.foreground": australisColors.red,
|
||||
},
|
||||
};
|
||||
|
||||
const minimalDarkColorSet: IColorSet = {
|
||||
type: 'dark',
|
||||
base: {
|
||||
background: '#22272f',
|
||||
foreground: '#efefef',
|
||||
color1: sapphireColors.blue,
|
||||
color2: sapphireColors.red,
|
||||
color3: sapphireColors.green,
|
||||
color4: sapphireColors.yellow
|
||||
}
|
||||
};
|
||||
|
||||
const minimalLightColorSet: IColorSet = {
|
||||
type: 'light',
|
||||
base: {
|
||||
background: '#efefff',
|
||||
foreground: '#000011',
|
||||
color1: sapphireColors.blue,
|
||||
color2: sapphireColors.red,
|
||||
color3: sapphireColors.green,
|
||||
color4: sapphireColors.yellow
|
||||
}
|
||||
};
|
||||
|
||||
const minimalCoverageColorSet: IColorSet = {
|
||||
type: 'dark',
|
||||
base: {
|
||||
background: '#FF0000',
|
||||
foreground: '#0000FF',
|
||||
color1: '#00FF00',
|
||||
color2: '#00FF00',
|
||||
color3: '#00FF00',
|
||||
color4: '#00FF00'
|
||||
}
|
||||
};
|
||||
|
||||
generateTheme('Generated Theme', sapphireColorSet, path.join(__dirname, 'theme.json'));
|
||||
generateTheme('Generated Theme (minimal, dark)', minimalDarkColorSet, path.join(__dirname, 'theme-minimal-dark.json'));
|
||||
generateTheme('Generated Theme (minimal, light)', minimalLightColorSet, path.join(__dirname, 'theme-minimal-light.json'));
|
||||
generateTheme('Generated Theme (minimal, coverage)', minimalCoverageColorSet, path.join(__dirname, 'theme-minimal-coverage.json'));
|
||||
generateTheme(
|
||||
"Australis Dark",
|
||||
australisColorSet,
|
||||
path.join(__dirname, "theme.json")
|
||||
);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "generated-theme",
|
||||
"displayName": "Generated Theme",
|
||||
"name": "australis-theme",
|
||||
"displayName": "Australis",
|
||||
"description": "...",
|
||||
"categories": [ "Themes" ],
|
||||
"version": "0.0.1",
|
||||
@@ -9,7 +9,7 @@
|
||||
"contributes": {
|
||||
"themes": [
|
||||
{
|
||||
"label": "Generated Theme",
|
||||
"label": "Australis (Dark)",
|
||||
"uiTheme": "vs-dark",
|
||||
"path": "./theme.json"
|
||||
},
|
||||
|
||||
297
package-lock.json
generated
297
package-lock.json
generated
@@ -1,359 +1,445 @@
|
||||
{
|
||||
"name": "vscode-theme-generator",
|
||||
"version": "0.2.1",
|
||||
"lockfileVersion": 1,
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": {
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "vscode-theme-generator",
|
||||
"version": "0.2.1",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@types/node": "^14.14.21",
|
||||
"tslint": "^5.9.1",
|
||||
"tslint-consistent-codestyle": "^1.13.0",
|
||||
"typescript": "^4.9.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/code-frame": {
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
|
||||
"integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"@babel/highlight": "^7.10.4"
|
||||
}
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
"node_modules/@babel/helper-validator-identifier": {
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
|
||||
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/highlight": {
|
||||
"node_modules/@babel/highlight": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
|
||||
"integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"@babel/helper-validator-identifier": "^7.10.4",
|
||||
"chalk": "^2.0.0",
|
||||
"js-tokens": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"@fimbul/bifrost": {
|
||||
"node_modules/@fimbul/bifrost": {
|
||||
"version": "0.21.0",
|
||||
"resolved": "https://registry.npmjs.org/@fimbul/bifrost/-/bifrost-0.21.0.tgz",
|
||||
"integrity": "sha512-ou8VU+nTmOW1jeg+FT+sn+an/M0Xb9G16RucrfhjXGWv1Q97kCoM5CG9Qj7GYOSdu7km72k7nY83Eyr53Bkakg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"@fimbul/ymir": "^0.21.0",
|
||||
"get-caller-file": "^2.0.0",
|
||||
"tslib": "^1.8.1",
|
||||
"tsutils": "^3.5.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tsutils": {
|
||||
"version": "3.19.1",
|
||||
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz",
|
||||
"integrity": "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"tslib": "^1.8.1"
|
||||
}
|
||||
}
|
||||
"peerDependencies": {
|
||||
"tslint": "^5.0.0",
|
||||
"typescript": ">= 3.3.0 || >= 3.6.0-dev || >= 3.7.0-dev"
|
||||
}
|
||||
},
|
||||
"@fimbul/ymir": {
|
||||
"node_modules/@fimbul/bifrost/node_modules/tsutils": {
|
||||
"version": "3.19.1",
|
||||
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz",
|
||||
"integrity": "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"tslib": "^1.8.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
|
||||
}
|
||||
},
|
||||
"node_modules/@fimbul/ymir": {
|
||||
"version": "0.21.0",
|
||||
"resolved": "https://registry.npmjs.org/@fimbul/ymir/-/ymir-0.21.0.tgz",
|
||||
"integrity": "sha512-T/y7WqPsm4n3zhT08EpB5sfdm2Kvw3gurAxr2Lr5dQeLi8ZsMlNT/Jby+ZmuuAAd1PnXYzKp+2SXgIkQIIMCUg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"inversify": "^5.0.0",
|
||||
"reflect-metadata": "^0.1.12",
|
||||
"tslib": "^1.8.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"tsutils": ">=2.29.0",
|
||||
"typescript": ">= 3.3.0 || >= 3.6.0-dev || >= 3.7.0-dev"
|
||||
}
|
||||
},
|
||||
"@types/node": {
|
||||
"node_modules/@types/node": {
|
||||
"version": "14.14.21",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.21.tgz",
|
||||
"integrity": "sha512-cHYfKsnwllYhjOzuC5q1VpguABBeecUp24yFluHpn/BQaVxB1CuQ1FSRZCzrPxrkIfWISXV2LbeoBthLWg0+0A==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-styles": {
|
||||
"node_modules/ansi-styles": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"color-convert": "^1.9.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"argparse": {
|
||||
"node_modules/argparse": {
|
||||
"version": "1.0.10",
|
||||
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
|
||||
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"sprintf-js": "~1.0.2"
|
||||
}
|
||||
},
|
||||
"balanced-match": {
|
||||
"node_modules/balanced-match": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
|
||||
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
|
||||
"dev": true
|
||||
},
|
||||
"brace-expansion": {
|
||||
"node_modules/brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
}
|
||||
},
|
||||
"builtin-modules": {
|
||||
"node_modules/builtin-modules": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
|
||||
"integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"chalk": {
|
||||
"node_modules/chalk": {
|
||||
"version": "2.4.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"ansi-styles": "^3.2.1",
|
||||
"escape-string-regexp": "^1.0.5",
|
||||
"supports-color": "^5.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"node_modules/color-convert": {
|
||||
"version": "1.9.3",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
||||
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"color-name": "1.1.3"
|
||||
}
|
||||
},
|
||||
"color-name": {
|
||||
"node_modules/color-name": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
|
||||
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
|
||||
"dev": true
|
||||
},
|
||||
"commander": {
|
||||
"node_modules/commander": {
|
||||
"version": "2.20.3",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
|
||||
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
|
||||
"dev": true
|
||||
},
|
||||
"concat-map": {
|
||||
"node_modules/concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
||||
"dev": true
|
||||
},
|
||||
"diff": {
|
||||
"node_modules/diff": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
|
||||
"integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.3.1"
|
||||
}
|
||||
},
|
||||
"escape-string-regexp": {
|
||||
"node_modules/escape-string-regexp": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
||||
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.8.0"
|
||||
}
|
||||
},
|
||||
"esprima": {
|
||||
"node_modules/esprima": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
|
||||
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"esparse": "bin/esparse.js",
|
||||
"esvalidate": "bin/esvalidate.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"fs.realpath": {
|
||||
"node_modules/fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
|
||||
"dev": true
|
||||
},
|
||||
"function-bind": {
|
||||
"node_modules/function-bind": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
|
||||
"dev": true
|
||||
},
|
||||
"get-caller-file": {
|
||||
"node_modules/get-caller-file": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": "6.* || 8.* || >= 10.*"
|
||||
}
|
||||
},
|
||||
"glob": {
|
||||
"node_modules/glob": {
|
||||
"version": "7.1.6",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
|
||||
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
|
||||
"deprecated": "Glob versions prior to v9 are no longer supported",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.0.4",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"has": {
|
||||
"node_modules/has": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4.0"
|
||||
}
|
||||
},
|
||||
"has-flag": {
|
||||
"node_modules/has-flag": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
|
||||
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"inflight": {
|
||||
"node_modules/inflight": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||
"deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"inherits": {
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
|
||||
"dev": true
|
||||
},
|
||||
"inversify": {
|
||||
"node_modules/inversify": {
|
||||
"version": "5.0.5",
|
||||
"resolved": "https://registry.npmjs.org/inversify/-/inversify-5.0.5.tgz",
|
||||
"integrity": "sha512-60QsfPz8NAU/GZqXu8hJ+BhNf/C/c+Hp0eDc6XMIJTxBiP36AQyyQKpBkOVTLWBFDQWYVHpbbEuIsHu9dLuJDA==",
|
||||
"dev": true
|
||||
},
|
||||
"is-core-module": {
|
||||
"node_modules/is-core-module": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz",
|
||||
"integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"has": "^1.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"js-tokens": {
|
||||
"node_modules/js-tokens": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
||||
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
|
||||
"dev": true
|
||||
},
|
||||
"js-yaml": {
|
||||
"node_modules/js-yaml": {
|
||||
"version": "3.14.1",
|
||||
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
|
||||
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"argparse": "^1.0.7",
|
||||
"esprima": "^4.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"js-yaml": "bin/js-yaml.js"
|
||||
}
|
||||
},
|
||||
"minimatch": {
|
||||
"node_modules/minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"minimist": {
|
||||
"node_modules/minimist": {
|
||||
"version": "1.2.6",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
|
||||
"integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
|
||||
"dev": true
|
||||
},
|
||||
"mkdirp": {
|
||||
"node_modules/mkdirp": {
|
||||
"version": "0.5.5",
|
||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
|
||||
"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"minimist": "^1.2.5"
|
||||
},
|
||||
"bin": {
|
||||
"mkdirp": "bin/cmd.js"
|
||||
}
|
||||
},
|
||||
"once": {
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"path-is-absolute": {
|
||||
"node_modules/path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"path-parse": {
|
||||
"node_modules/path-parse": {
|
||||
"version": "1.0.7",
|
||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
|
||||
"dev": true
|
||||
},
|
||||
"reflect-metadata": {
|
||||
"node_modules/reflect-metadata": {
|
||||
"version": "0.1.13",
|
||||
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
|
||||
"integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==",
|
||||
"dev": true
|
||||
},
|
||||
"resolve": {
|
||||
"node_modules/resolve": {
|
||||
"version": "1.19.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz",
|
||||
"integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"is-core-module": "^2.1.0",
|
||||
"path-parse": "^1.0.6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"semver": {
|
||||
"node_modules/semver": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
|
||||
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"semver": "bin/semver"
|
||||
}
|
||||
},
|
||||
"sprintf-js": {
|
||||
"node_modules/sprintf-js": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
|
||||
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
|
||||
"dev": true
|
||||
},
|
||||
"supports-color": {
|
||||
"node_modules/supports-color": {
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"has-flag": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"tslib": {
|
||||
"node_modules/tslib": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
|
||||
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
|
||||
"dev": true
|
||||
},
|
||||
"tslint": {
|
||||
"node_modules/tslint": {
|
||||
"version": "5.20.1",
|
||||
"resolved": "https://registry.npmjs.org/tslint/-/tslint-5.20.1.tgz",
|
||||
"integrity": "sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
"builtin-modules": "^1.1.1",
|
||||
"chalk": "^2.3.0",
|
||||
@@ -367,35 +453,58 @@
|
||||
"semver": "^5.3.0",
|
||||
"tslib": "^1.8.0",
|
||||
"tsutils": "^2.29.0"
|
||||
},
|
||||
"bin": {
|
||||
"tslint": "bin/tslint"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.8.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": ">=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev"
|
||||
}
|
||||
},
|
||||
"tslint-consistent-codestyle": {
|
||||
"node_modules/tslint-consistent-codestyle": {
|
||||
"version": "1.16.0",
|
||||
"resolved": "https://registry.npmjs.org/tslint-consistent-codestyle/-/tslint-consistent-codestyle-1.16.0.tgz",
|
||||
"integrity": "sha512-ebR/xHyMEuU36hGNOgCfjGBNYxBPixf0yU1Yoo6s3BrpBRFccjPOmIVaVvQsWAUAMdmfzHOCihVkcaMfimqvHw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"@fimbul/bifrost": "^0.21.0",
|
||||
"tslib": "^1.7.1",
|
||||
"tsutils": "^2.29.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"tslint": "^5.0.0",
|
||||
"typescript": ">=2.1.4 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >=3.1.0-dev || >=3.2.0-dev || >=3.3.0-dev || >=3.4.0-dev"
|
||||
}
|
||||
},
|
||||
"tsutils": {
|
||||
"node_modules/tsutils": {
|
||||
"version": "2.29.0",
|
||||
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
|
||||
"integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"dependencies": {
|
||||
"tslib": "^1.8.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev"
|
||||
}
|
||||
},
|
||||
"typescript": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz",
|
||||
"integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==",
|
||||
"dev": true
|
||||
"node_modules/typescript": {
|
||||
"version": "4.9.5",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
|
||||
"integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"tsc": "bin/tsc",
|
||||
"tsserver": "bin/tsserver"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.2.0"
|
||||
}
|
||||
},
|
||||
"wrappy": {
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
|
||||
|
||||
@@ -25,6 +25,6 @@
|
||||
"@types/node": "^14.14.21",
|
||||
"tslint": "^5.9.1",
|
||||
"tslint-consistent-codestyle": "^1.13.0",
|
||||
"typescript": "^4.1.3"
|
||||
"typescript": "^4.9.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ export interface IThemeGenerator {
|
||||
generateTheme(name: string, colorSet: IColorSet): string;
|
||||
}
|
||||
|
||||
export interface IBaseColorSet {
|
||||
export interface IBaseColorSet {
|
||||
/** The default background color */
|
||||
background: string;
|
||||
/** The default foreground color */
|
||||
@@ -14,7 +14,7 @@ export interface IBaseColorSet {
|
||||
}
|
||||
|
||||
export interface IColorSet {
|
||||
type?: 'light' | 'dark';
|
||||
type?: "light" | "dark";
|
||||
base: IBaseColorSet;
|
||||
syntax?: {
|
||||
boolean?: string;
|
||||
@@ -35,6 +35,7 @@ export interface IColorSet {
|
||||
cssId?: string;
|
||||
cssTag?: string;
|
||||
markdownQuote?: string;
|
||||
constants?: string;
|
||||
};
|
||||
ui?: {
|
||||
/** The color of the editor cursor/caret */
|
||||
|
||||
22
src/rules.ts
22
src/rules.ts
@@ -70,24 +70,29 @@ export const tokenRules: IRuleGenerator[] = [
|
||||
// string: It's important that string is put first so that other scopes can override strings
|
||||
// within template expressions
|
||||
{ color: s => s.syntax.string, generate: getSimpleColorGenerator('String', 'string') },
|
||||
{ color: s => s.syntax.stringEscape, generate: getSimpleColorGenerator('String Escape', 'constant.character.escape, text.html constant.character.entity.named, punctuation.definition.entity.html') },
|
||||
{ color: s => s.syntax.stringEscape, generate: getSimpleColorGenerator('String Escape', 'constant.character.escape, text.html constant.character.entity.named, punctuation.definition.entity.html, constant.character.string.escape, constant.regexp') },
|
||||
{ color: s => s.syntax.boolean, generate: getSimpleColorGenerator('Boolean', 'constant.language.boolean') },
|
||||
{ color: s => s.syntax.number, generate: getSimpleColorGenerator('Number', 'constant.numeric') },
|
||||
{ color: s => s.syntax.identifier, generate: getSimpleColorGenerator('Identifier', 'variable, support.variable, support.class, support.constant, meta.definition.variable entity.name.function') },
|
||||
// { color: s => s.syntax.identifier, generate: getSimpleColorGenerator('Identifier', 'variable, support.variable, support.class, meta.definition.variable entity.name.function') },
|
||||
// { color: s => s.syntax.constants, generate: getSimpleColorGenerator('Constants', 'constant, variable.other.constant, support.constant') },
|
||||
{ color: s => s.syntax.identifier, generate: getSimpleColorGenerator('Identifier', 'support.variable, support.class, meta.definition.variable entity.name.function, variable.other') },
|
||||
{ color: s => s.syntax.constants, generate: getSimpleColorGenerator('Constants', 'constant, variable.other.constant, support.constant, variable.other.property') },
|
||||
|
||||
// support.type.object: module.exports (ts)
|
||||
{ color: s => s.syntax.keyword, generate: getSimpleColorGenerator('Keyword', 'keyword, modifier, variable.language.this, support.type.object, constant.language') },
|
||||
// support.function: eg. join in path.join in TypeScript
|
||||
{ color: s => s.syntax.functionCall, generate: getSimpleColorGenerator('Function call', 'entity.name.function, support.function') },
|
||||
{ color: s => s.syntax.functionCall, generate: getSimpleColorGenerator('Function call', 'entity.name.function, support.function, meta.function-call, meta.function-call.object, meta.function-call.php, meta.function-call.static, meta.method-call.java meta.method, meta.method.groovy, support.function.any-method.lua, keyword.operator.function.infix') },
|
||||
{ color: s => s.syntax.constants, generate: getSimpleColorGenerator('Function Parameters', 'meta.function-call.arguments, entity.name.variable.parameter, meta.at-rule.function variable, meta.at-rule.mixin variable, meta.function.arguments variable.other.php, meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql, variable.parameter') },
|
||||
{ color: s => s.base.color4, generate: getSimpleColorGenerator('Separators', 'constant.other.symbol.hashkey punctuation.definition.constant.ruby, entity.other.attribute-name.placeholder punctuation, entity.other.attribute-name.pseudo-class punctuation, entity.other.attribute-name.pseudo-element punctuation, meta.group.double.toml, meta.group.toml, meta.object-binding-pattern-variable punctuation.destructuring, punctuation.colon.graphql, punctuation.definition.block.scalar.folded.yaml, punctuation.definition.block.scalar.literal.yaml, punctuation.definition.block.sequence.item.yaml, punctuation.definition.entity.other.inherited-class, punctuation.function.swift, punctuation.separator.dictionary.key-value, punctuation.separator.hash, punctuation.separator.inheritance, punctuation.separator.key-value, punctuation.separator.key-value.mapping.yaml, punctuation.separator.namespace, punctuation.separator.pointer-access, punctuation.separator.slice, string.unquoted.heredoc punctuation.definition.string, support.other.chomping-indicator.yaml, punctuation.separator.annotation') },
|
||||
// storage.type: var (ts)
|
||||
// storage.modifier: private (ts)
|
||||
{ color: s => s.syntax.storage, generate: getSimpleColorGenerator('Storage', 'storage.type, storage.modifier') },
|
||||
// module.support: imported modules in TypeScript
|
||||
{ color: s => s.syntax.identifier, generate: getSimpleColorGenerator('Modules', 'support.module, support.node', FontStyle.ITALIC) },
|
||||
// support.type: `boolean` (ts)
|
||||
{ color: s => s.syntax.type, generate: getSimpleColorGenerator('Type', 'support.type') },
|
||||
// entity.name.type: `: SomeType` (ts)
|
||||
{ color: s => s.syntax.type, generate: getSimpleColorGenerator('Type', 'entity.name.type, entity.other.inherited-class') },
|
||||
{ color: s => s.syntax.comment, generate: getSimpleColorGenerator('Comment', 'comment', FontStyle.ITALIC) },
|
||||
{ color: s => s.syntax.type, generate: getSimpleColorGenerator('Type', 'support.type, entity.name.type, entity.other.inherited-class, entity.name.type, keyword.primitive-datatypes.swift, keyword.type.cs, meta.protocol-list.objc, meta.return-type.objc, source.go storage.type, source.groovy storage.type, source.java storage.type, source.powershell entity.other.attribute-name, storage.class.std.rust, storage.type.attribute.swift, storage.type.c, storage.type.core.rust, storage.type.cs, storage.type.groovy, storage.type.objc, storage.type.php, storage.type.haskell, storage.type.ocaml') },
|
||||
{ color: s => s.syntax.comment, generate: getSimpleColorGenerator('Comment', 'comment, wildcard.comment, unused.comment, punctuation.definition.comment', FontStyle.ITALIC) },
|
||||
{ color: s => s.syntax.class, generate: getSimpleColorGenerator('Class', 'entity.name.type.class', FontStyle.UNDERLINE) },
|
||||
// variable.object.property: `class A { meth = 0; }` (ts)
|
||||
// meta.field.declaration entity.name.function: `class A { meth = () => 0; }` (ts)
|
||||
@@ -104,8 +109,9 @@ export const tokenRules: IRuleGenerator[] = [
|
||||
/**
|
||||
* JSON
|
||||
*/
|
||||
{ color: s => s.syntax.identifier, generate: getSimpleColorGenerator('JSON key', 'meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json') },
|
||||
{ color: s => s.syntax.keyword, generate: getSimpleColorGenerator('JSON constant', 'constant.language.json') },
|
||||
//{ color: s => s.syntax.identifier, generate: getSimpleColorGenerator('JSON key', 'meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json') },
|
||||
{ color: s => s.syntax.type, generate: getSimpleColorGenerator('JSON key', 'meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json') },
|
||||
{ color: s => s.syntax.constants, generate: getSimpleColorGenerator('JSON constant', 'constant.language.json') },
|
||||
/**
|
||||
* CSS
|
||||
*/
|
||||
|
||||
@@ -189,7 +189,7 @@ export class VscodeThemeGenerator implements IThemeGenerator {
|
||||
// editor.findMatchBackground: Color of the current search match.
|
||||
if (colorSet.ui.currentFindMatchHighlight) theme.colors['editor.findMatchBackground'] = colorSet.ui.currentFindMatchHighlight;
|
||||
// editor.findMatchHighlightBackground: Color of the other search matches.
|
||||
if (colorSet.ui.findMatchHighlight) theme.colors['editor.findMatchHighlight'] = colorSet.ui.findMatchHighlight;
|
||||
if (colorSet.ui.findMatchHighlight) theme.colors['editor.findMatchHighlightBackground'] = colorSet.ui.findMatchHighlight;
|
||||
// editor.findRangeHighlightBackground: Color the range limiting the search.
|
||||
if (colorSet.ui.findRangeHighlight) theme.colors['editor.findRangeHighlightBackground'] = colorSet.ui.findRangeHighlight;
|
||||
// editor.hoverHighlightBackground: Highlight below the word for which a hover is shown.
|
||||
|
||||
Reference in New Issue
Block a user