diff --git a/src/scripts/finish-themes.ts b/src/scripts/finish-themes.ts index e0351a6..f40dd41 100644 --- a/src/scripts/finish-themes.ts +++ b/src/scripts/finish-themes.ts @@ -2,6 +2,7 @@ import * as fs from 'fs'; import * as path from 'path'; var cjson = require('strip-json-comments'); +import * as generate_light_schemes from './generate-light-schemes'; export function main(): void { mainWithDir('.'); @@ -15,7 +16,7 @@ export function mainWithDir(workingDirectory: string): void { files.forEach(f => { let json = JSON.parse(cjson(fs.readFileSync(path.resolve(workingDirectory, f), 'utf8'))); - if (f.indexOf('-light') != -1) { + if (!generate_light_schemes.isColorDark(json['colors']['editor.background'])) { json.type = 'light'; } fs.writeFileSync(path.resolve(workingDirectory, f), JSON.stringify(json, null, 4)); diff --git a/src/scripts/generate-light-schemes.ts b/src/scripts/generate-light-schemes.ts index 58a1318..a22a868 100644 --- a/src/scripts/generate-light-schemes.ts +++ b/src/scripts/generate-light-schemes.ts @@ -259,7 +259,7 @@ function isSchemeDark(schemeFile: string, pathToSchemeFolder: string): SchemePro return schemeProperties; } -function isColorDark(inputColor: string): boolean { +export function isColorDark(inputColor: string): boolean { let c = color(inputColor); // algorithm from https://docs.microsoft.com/en-us/windows/uwp/style/color return (5 * c.green() + 2 * c.red() + c.blue()) <= 8 * 128; diff --git a/themes.md b/themes.md index 2368134..820bddc 100644 --- a/themes.md +++ b/themes.md @@ -146,5 +146,7 @@ Unikitty Dark Unikitty Light Woodland Dark Woodland Light +XCode Dusk Dark +XCode Dusk Light Zenburn Dark Zenburn Light diff --git a/themes/base16-github.json b/themes/base16-github.json index b78f350..e81568e 100644 --- a/themes/base16-github.json +++ b/themes/base16-github.json @@ -1,6 +1,6 @@ { "name": "Base16 Github", - "type": "dark", + "type": "light", "colors": { "foreground": "#333333", "widget.shadow": "#ffffff", diff --git a/themes/base16-xcode-dusk-dark.json b/themes/base16-xcode-dusk-dark.json new file mode 100644 index 0000000..6305215 --- /dev/null +++ b/themes/base16-xcode-dusk-dark.json @@ -0,0 +1,872 @@ +{ + "name": "Base16 XCode Dusk Dark", + "type": "dark", + "colors": { + "foreground": "#939599", + "widget.shadow": "#282B35", + "selection.background": "#53555D", + "errorForeground": "#B21889", + "button.background": "#3D4048", + "button.foreground": "#939599", + "button.hoverBackground": "#686A71", + "dropdown.background": "#282B35", + "dropdown.foreground": "#939599", + "input.background": "#282B35", + "input.foreground": "#939599", + "input.placeholderForeground": "#686A71", + "inputOption.activeBorder": "#786DC5", + "inputValidation.errorBackground": "#B21889", + "inputValidation.errorBorder": "#B21889", + "inputValidation.infoBackground": "#790EAD", + "inputValidation.infoBorder": "#790EAD", + "inputValidation.warningBackground": "#438288", + "inputValidation.warningBorder": "#438288", + "scrollbar.shadow": "#3D4048", + "scrollbarSlider.activeBackground": "#7E80866f", + "scrollbarSlider.background": "#53555D6f", + "scrollbarSlider.hoverBackground": "#686A716f", + "badge.background": "#282B35", + "badge.foreground": "#939599", + "progressBar.background": "#686A71", + "list.activeSelectionBackground": "#53555D", + "list.activeSelectionForeground": "#939599", + "list.dropBackground": "#BEBFC2", + "list.focusBackground": "#53555D", + "list.focusForeground": "#939599", + "list.highlightForeground": "#BEBFC2", + "list.hoverBackground": "#686A71", + "list.hoverForeground": "#939599", + "list.inactiveSelectionBackground": "#53555D", + "list.inactiveSelectionForeground": "#939599", + "activityBar.background": "#282B35", + "activityBar.dropBackground": "#BEBFC2", + "activityBar.foreground": "#939599", + "activityBarBadge.background": "#790EAD", + "activityBarBadge.foreground": "#BEBFC2", + "sideBar.background": "#3D4048", + "sideBar.foreground": "#939599", + "sideBarSectionHeader.background": "#686A71", + "sideBarSectionHeader.foreground": "#939599", + "sideBarTitle.foreground": "#939599", + "editorGroup.background": "#282B35", + "editorGroup.dropBackground": "#53555D6f", + "editorGroupHeader.noTabsBackground": "#3D4048", + "editorGroupHeader.tabsBackground": "#3D4048", + "tab.activeBackground": "#282B35", + "tab.activeForeground": "#939599", + "tab.inactiveBackground": "#3D4048", + "tab.inactiveForeground": "#686A71", + "tab.unfocusedActiveForeground": "#7E8086", + "tab.unfocusedInactiveForeground": "#7E8086", + "editor.background": "#282B35", + "editor.foreground": "#939599", + "editorLineNumber.foreground": "#686A71", + "editorCursor.foreground": "#939599", + "editor.selectionBackground": "#53555D", + "editor.selectionHighlightBackground": "#3D4048", + "editor.inactiveSelectionBackground": "#53555D", + "editor.wordHighlightBackground": "#53555D", + "editor.wordHighlightStrongBackground": "#686A71", + "editor.findMatchBackground": "#4382886f", + "editor.findMatchHighlightBackground": "#786DC56f", + "editor.findRangeHighlightBackground": "#f0f", + "editor.hoverHighlightBackground": "#53555D", + "editor.lineHighlightBackground": "#3D4048", + "editorLink.activeForeground": "#790EAD", + "editor.rangeHighlightBackground": "#3D4048", + "editorWhitespace.foreground": "#686A71", + "editorIndentGuide.background": "#686A71", + "editorRuler.foreground": "#686A71", + "editorCodeLens.foreground": "#53555D", + "editorBracketMatch.background": "#53555D", + "editorError.foreground": "#B21889", + "editorWarning.foreground": "#B21889", + "editorGutter.addedBackground": "#DF0002", + "editorGutter.background": "#282B35", + "editorGutter.deletedBackground": "#B21889", + "editorGutter.modifiedBackground": "#B21889", + "diffEditor.insertedTextBackground": "#DF000220", + "diffEditor.removedTextBackground": "#B2188920", + "editorWidget.background": "#282B35", + "editorSuggestWidget.background": "#3D4048", + "editorSuggestWidget.foreground": "#939599", + "editorSuggestWidget.highlightForeground": "#f0f", + "editorSuggestWidget.selectedBackground": "#53555D", + "editorHoverWidget.background": "#282B35", + "debugExceptionWidget.background": "#3D4048", + "editorMarkerNavigation.background": "#3D4048", + "editorMarkerNavigationError.background": "#B21889", + "editorMarkerNavigationWarning.background": "#438288", + "peekViewEditor.background": "#3D4048", + "peekViewEditor.matchHighlightBackground": "#786DC56f", + "peekViewEditorGutter.background": "#3D4048", + "peekViewResult.background": "#282B35", + "peekViewResult.fileForeground": "#939599", + "peekViewResult.lineForeground": "#686A71", + "peekViewResult.matchHighlightBackground": "#786DC56f", + "peekViewResult.selectionBackground": "#53555D", + "peekViewResult.selectionForeground": "#939599", + "peekViewTitle.background": "#53555D", + "peekViewTitleDescription.foreground": "#686A71", + "peekViewTitleLabel.foreground": "#939599", + "merge.currentContentBackground": "#790EAD40", + "merge.currentHeaderBackground": "#790EAD40", + "merge.incomingContentBackground": "#DF000260", + "merge.incomingHeaderBackground": "#DF000260", + "editorOverviewRuler.currentContentForeground": "#790EAD", + "editorOverviewRuler.incomingContentForeground": "#DF0002", + "panel.background": "#282B35", + "panelTitle.activeForeground": "#939599", + "panelTitle.inactiveForeground": "#686A71", + "statusBar.background": "#790EAD", + "statusBar.debuggingBackground": "#786DC5", + "statusBar.debuggingForeground": "#BEBFC2", + "statusBar.foreground": "#BEBFC2", + "statusBar.noFolderBackground": "#B21889", + "statusBar.noFolderForeground": "#BEBFC2", + "statusBarItem.activeBackground": "#686A71", + "statusBarItem.hoverBackground": "#53555D", + "statusBarItem.prominentBackground": "#f0f", + "statusBarItem.prominentHoverBackground": "#f00", + "titleBar.activeBackground": "#282B35", + "titleBar.activeForeground": "#939599", + "titleBar.inactiveBackground": "#3D4048", + "titleBar.inactiveForeground": "#686A71", + "notification.background": "#53555D", + "notification.foreground": "#939599", + "extensionButton.prominentBackground": "#DF0002", + "extensionButton.prominentForeground": "#BEBFC2", + "extensionButton.prominentHoverBackground": "#53555D", + "pickerGroup.foreground": "#686A71", + "terminal.background": "#282B35", + "terminal.foreground": "#939599", + "terminal.ansiBlack": "#53555D", + "terminal.ansiBrightBlack": "#686A71", + "terminal.ansiRed": "#B21889", + "terminal.ansiBrightRed": "#B21889", + "terminal.ansiYellow": "#786DC5", + "terminal.ansiBrightYellow": "#438288", + "terminal.ansiGreen": "#DF0002", + "terminal.ansiBrightGreen": "#DF0002", + "terminal.ansiCyan": "#00A0BE", + "terminal.ansiBrightCyan": "#00A0BE", + "terminal.ansiBlue": "#790EAD", + "terminal.ansiBrightBlue": "#790EAD", + "terminal.ansiMagenta": "#B21889", + "terminal.ansiBrightMagenta": "#B21889", + "terminal.ansiWhite": "#A9AAAE", + "terminal.ansiBrightWhite": "#BEBFC2", + "debugToolBar.background": "#3D4048", + "welcomePage.buttonBackground": "#3D4048", + "welcomePage.buttonHoverBackground": "#53555D", + "walkThrough.embeddedEditorBackground": "#282B35", + "descriptionForeground": "#686A71", + "textBlockQuote.background": "#3D4048", + "textBlockQuote.border": "#790EAD", + "textCodeBlock.background": "#282B35", + "textLink.activeForeground": "#00A0BE", + "textLink.foreground": "#790EAD", + "textPreformat.foreground": "#790EAD", + "textSeparator.foreground": "#f0f" + }, + "tokenColors": [ + { + "settings": { + "foreground": "#eeffffff", + "background": "#263238ff" + } + }, + { + "name": "Comment", + "scope": [ + "comment", + "punctuation.definition.comment" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#686A71" + } + }, + { + "name": "Variables", + "scope": [ + "variable", + "string constant.other.placeholder" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Colors", + "scope": [ + "constant.other.color" + ], + "settings": { + "foreground": "#0f0" + } + }, + { + "name": "Invalid", + "scope": [ + "invalid", + "invalid.illegal" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Invalid - Deprecated", + "scope": [ + "invalid.deprecated" + ], + "settings": { + "foreground": "#C77C48" + } + }, + { + "name": "Keyword, Storage", + "scope": [ + "keyword", + "storage.type", + "storage.modifier" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Keyword Control", + "scope": [ + "keyword.control.flow" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Operator, Misc", + "scope": [ + "keyword.control", + "constant.other.color", + "punctuation", + "punctuation.section.class.end", + "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": "#939599" + } + }, + { + "name": "Embedded", + "scope": [ + "punctuation.section.embedded", + "variable.interpolation" + ], + "settings": { + "foreground": "#C77C48" + } + }, + { + "name": "Tag", + "scope": [ + "entity.name.tag", + "meta.tag.sgml", + "markup.deleted.git_gutter" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Function, Special Method", + "scope": [ + "entity.name.function", + "meta.function-call", + "variable.function", + "support.function", + "keyword.other.special-method" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Block Level Variables", + "scope": [ + "meta.block variable.other" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Other Variable, String Link", + "scope": [ + "support.other.variable", + "string.other.link" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Number, Constant, Function Argument, Tag Attribute, Embedded", + "scope": [ + "constant.numeric", + "constant.language", + "support.constant", + "constant.character", + "constant.escape", + "variable.parameter", + "keyword.other.unit", + "keyword.other" + ], + "settings": { + "foreground": "#786DC5" + } + }, + { + "name": "String, Symbols, Inherited Class, Markup Heading", + "scope": [ + "string", + "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": { + "fontStyle": "normal", + "foreground": "#DF0002" + } + }, + { + "name": "Class, Support", + "scope": [ + "entity.name", + "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": { + "foreground": "#438288" + } + }, + { + "name": "Entity Types", + "scope": [ + "support.type" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "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": "#00A0BE" + } + }, + { + "name": "Sub-methods", + "scope": [ + "entity.name.module.js", + "variable.import.parameter.js", + "variable.other.class.js" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Language methods", + "scope": [ + "variable.language" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#B21889" + } + }, + { + "name": "entity.name.method.js", + "scope": [ + "entity.name.method.js" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#82AAFF" + } + }, + { + "name": "meta.method.js", + "scope": [ + "meta.class-method.js entity.name.function.js", + "variable.function.constructor" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Attributes", + "scope": [ + "entity.other.attribute-name" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "HTML Attributes", + "scope": [ + "text.html.basic entity.other.attribute-name.html", + "text.html.basic entity.other.attribute-name" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#438288" + } + }, + { + "name": "CSS Classes", + "scope": [ + "entity.other.attribute-name.class" + ], + "settings": { + "foreground": "#438288" + } + }, + { + "name": "CSS ID's", + "scope": [ + "source.sass keyword.control" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Inserted", + "scope": [ + "markup.inserted" + ], + "settings": { + "foreground": "#DF0002" + } + }, + { + "name": "Deleted", + "scope": [ + "markup.deleted" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Changed", + "scope": [ + "markup.changed" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Regular Expressions", + "scope": [ + "string.regexp" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "name": "Escape Characters", + "scope": [ + "constant.character.escape" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "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": "#790EAD" + } + }, + { + "name": "ES7 Bind Operator", + "scope": [ + "source.js constant.other.object.key.js string.unquoted.label.js" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#FF5370" + } + }, + { + "name": "JSON Key - Level 0", + "scope": [ + "source.json meta.structure.dictionary.json support.type.property-name.json" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "name": "Markdown - Plain", + "scope": [ + "text.html.markdown", + "punctuation.definition.list_item.markdown" + ], + "settings": { + "foreground": "#939599" + } + }, + { + "name": "Markdown - Markup Raw Inline", + "scope": [ + "text.html.markdown markup.inline.raw.markdown" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Markup Raw Inline Punctuation", + "scope": [ + "text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "name": "Markdown - Line Break", + "scope": [ + "text.html.markdown meta.dummy.line-break" + ], + "settings": { + "foreground": "" + } + }, + { + "name": "Markdown - Heading", + "scope": [ + "markdown.heading", + "markup.heading | markup.heading entity.name", + "markup.heading.markdown punctuation.definition.heading.markdown" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Markup - Italic", + "scope": [ + "markup.italic" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#B21889" + } + }, + { + "name": "Markup - Bold", + "scope": [ + "markup.bold", + "markup.bold string" + ], + "settings": { + "fontStyle": "bold", + "foreground": "#B21889" + } + }, + { + "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": "#B21889" + } + }, + { + "name": "Markup - Underline", + "scope": [ + "markup.underline" + ], + "settings": { + "fontStyle": "underline", + "foreground": "#786DC5" + } + }, + { + "name": "Markup - Strike", + "scope": [ + "markup.strike" + ], + "settings": { + "fontStyle": "strike", + "foreground": "" + } + }, + { + "name": "Markdown - Blockquote", + "scope": [ + "markup.quote punctuation.definition.blockquote.markdown" + ], + "settings": { + "background": "#00A0BE", + "foreground": "#00A0BE" + } + }, + { + "name": "Markup - Quote", + "scope": [ + "markup.quote" + ], + "settings": { + "fontStyle": "italic", + "foreground": "" + } + }, + { + "name": "Markdown - Link", + "scope": [ + "string.other.link.title.markdown" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Markdown - Link Description", + "scope": [ + "string.other.link.description.title.markdown" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Link Anchor", + "scope": [ + "constant.other.reference.link.markdown" + ], + "settings": { + "foreground": "#438288" + } + }, + { + "name": "Markup - Raw Block", + "scope": [ + "markup.raw.block" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Raw Block Fenced", + "scope": [ + "markup.raw.block.fenced.markdown" + ], + "settings": { + "foreground": "#00000050" + } + }, + { + "name": "Markdown - Fenced Bode Block", + "scope": [ + "punctuation.definition.fenced.markdown" + ], + "settings": { + "foreground": "#00000050" + } + }, + { + "name": "Markdown - Fenced Bode Block Variable", + "scope": [ + "markup.raw.block.fenced.markdown", + "variable.language.fenced.markdown" + ], + "settings": { + "foreground": "#f0f" + } + }, + { + "name": "Markdown - Fenced Language", + "scope": [ + "variable.language.fenced.markdown" + ], + "settings": { + "foreground": "#f00" + } + }, + { + "name": "Markdown - Separator", + "scope": [ + "meta.separator" + ], + "settings": { + "fontStyle": "bold", + "background": "#00000050", + "foreground": "#f0f" + } + }, + { + "name": "Markup - Table", + "scope": [ + "markup.table" + ], + "settings": { + "foreground": "#f0f" + } + }, + { + "scope": "token.info-token", + "settings": { + "foreground": "#790EAD" + } + }, + { + "scope": "token.warn-token", + "settings": { + "foreground": "#438288" + } + }, + { + "scope": "token.error-token", + "settings": { + "foreground": "#B21889" + } + }, + { + "scope": "token.debug-token", + "settings": { + "foreground": "#B21889" + } + } + ] +} \ No newline at end of file diff --git a/themes/base16-xcode-dusk-light.json b/themes/base16-xcode-dusk-light.json new file mode 100644 index 0000000..ed48df9 --- /dev/null +++ b/themes/base16-xcode-dusk-light.json @@ -0,0 +1,872 @@ +{ + "name": "Base16 XCode Dusk Light", + "type": "light", + "colors": { + "foreground": "#53555D", + "widget.shadow": "#BEBFC2", + "selection.background": "#939599", + "errorForeground": "#B21889", + "button.background": "#A9AAAE", + "button.foreground": "#53555D", + "button.hoverBackground": "#7E8086", + "dropdown.background": "#BEBFC2", + "dropdown.foreground": "#53555D", + "input.background": "#BEBFC2", + "input.foreground": "#53555D", + "input.placeholderForeground": "#7E8086", + "inputOption.activeBorder": "#786DC5", + "inputValidation.errorBackground": "#B21889", + "inputValidation.errorBorder": "#B21889", + "inputValidation.infoBackground": "#790EAD", + "inputValidation.infoBorder": "#790EAD", + "inputValidation.warningBackground": "#438288", + "inputValidation.warningBorder": "#438288", + "scrollbar.shadow": "#A9AAAE", + "scrollbarSlider.activeBackground": "#686A716f", + "scrollbarSlider.background": "#9395996f", + "scrollbarSlider.hoverBackground": "#7E80866f", + "badge.background": "#BEBFC2", + "badge.foreground": "#53555D", + "progressBar.background": "#7E8086", + "list.activeSelectionBackground": "#939599", + "list.activeSelectionForeground": "#53555D", + "list.dropBackground": "#282B35", + "list.focusBackground": "#939599", + "list.focusForeground": "#53555D", + "list.highlightForeground": "#282B35", + "list.hoverBackground": "#7E8086", + "list.hoverForeground": "#53555D", + "list.inactiveSelectionBackground": "#939599", + "list.inactiveSelectionForeground": "#53555D", + "activityBar.background": "#BEBFC2", + "activityBar.dropBackground": "#282B35", + "activityBar.foreground": "#53555D", + "activityBarBadge.background": "#790EAD", + "activityBarBadge.foreground": "#282B35", + "sideBar.background": "#A9AAAE", + "sideBar.foreground": "#53555D", + "sideBarSectionHeader.background": "#7E8086", + "sideBarSectionHeader.foreground": "#53555D", + "sideBarTitle.foreground": "#53555D", + "editorGroup.background": "#BEBFC2", + "editorGroup.dropBackground": "#9395996f", + "editorGroupHeader.noTabsBackground": "#A9AAAE", + "editorGroupHeader.tabsBackground": "#A9AAAE", + "tab.activeBackground": "#BEBFC2", + "tab.activeForeground": "#53555D", + "tab.inactiveBackground": "#A9AAAE", + "tab.inactiveForeground": "#7E8086", + "tab.unfocusedActiveForeground": "#686A71", + "tab.unfocusedInactiveForeground": "#686A71", + "editor.background": "#BEBFC2", + "editor.foreground": "#53555D", + "editorLineNumber.foreground": "#7E8086", + "editorCursor.foreground": "#53555D", + "editor.selectionBackground": "#939599", + "editor.selectionHighlightBackground": "#A9AAAE", + "editor.inactiveSelectionBackground": "#939599", + "editor.wordHighlightBackground": "#939599", + "editor.wordHighlightStrongBackground": "#7E8086", + "editor.findMatchBackground": "#4382886f", + "editor.findMatchHighlightBackground": "#786DC56f", + "editor.findRangeHighlightBackground": "#f0f", + "editor.hoverHighlightBackground": "#939599", + "editor.lineHighlightBackground": "#A9AAAE", + "editorLink.activeForeground": "#790EAD", + "editor.rangeHighlightBackground": "#A9AAAE", + "editorWhitespace.foreground": "#7E8086", + "editorIndentGuide.background": "#7E8086", + "editorRuler.foreground": "#7E8086", + "editorCodeLens.foreground": "#939599", + "editorBracketMatch.background": "#939599", + "editorError.foreground": "#B21889", + "editorWarning.foreground": "#B21889", + "editorGutter.addedBackground": "#DF0002", + "editorGutter.background": "#BEBFC2", + "editorGutter.deletedBackground": "#B21889", + "editorGutter.modifiedBackground": "#B21889", + "diffEditor.insertedTextBackground": "#DF000220", + "diffEditor.removedTextBackground": "#B2188920", + "editorWidget.background": "#BEBFC2", + "editorSuggestWidget.background": "#A9AAAE", + "editorSuggestWidget.foreground": "#53555D", + "editorSuggestWidget.highlightForeground": "#f0f", + "editorSuggestWidget.selectedBackground": "#939599", + "editorHoverWidget.background": "#BEBFC2", + "debugExceptionWidget.background": "#A9AAAE", + "editorMarkerNavigation.background": "#A9AAAE", + "editorMarkerNavigationError.background": "#B21889", + "editorMarkerNavigationWarning.background": "#438288", + "peekViewEditor.background": "#A9AAAE", + "peekViewEditor.matchHighlightBackground": "#786DC56f", + "peekViewEditorGutter.background": "#A9AAAE", + "peekViewResult.background": "#BEBFC2", + "peekViewResult.fileForeground": "#53555D", + "peekViewResult.lineForeground": "#7E8086", + "peekViewResult.matchHighlightBackground": "#786DC56f", + "peekViewResult.selectionBackground": "#939599", + "peekViewResult.selectionForeground": "#53555D", + "peekViewTitle.background": "#939599", + "peekViewTitleDescription.foreground": "#7E8086", + "peekViewTitleLabel.foreground": "#53555D", + "merge.currentContentBackground": "#790EAD40", + "merge.currentHeaderBackground": "#790EAD40", + "merge.incomingContentBackground": "#DF000260", + "merge.incomingHeaderBackground": "#DF000260", + "editorOverviewRuler.currentContentForeground": "#790EAD", + "editorOverviewRuler.incomingContentForeground": "#DF0002", + "panel.background": "#BEBFC2", + "panelTitle.activeForeground": "#53555D", + "panelTitle.inactiveForeground": "#7E8086", + "statusBar.background": "#790EAD", + "statusBar.debuggingBackground": "#786DC5", + "statusBar.debuggingForeground": "#282B35", + "statusBar.foreground": "#282B35", + "statusBar.noFolderBackground": "#B21889", + "statusBar.noFolderForeground": "#282B35", + "statusBarItem.activeBackground": "#7E8086", + "statusBarItem.hoverBackground": "#939599", + "statusBarItem.prominentBackground": "#f0f", + "statusBarItem.prominentHoverBackground": "#f00", + "titleBar.activeBackground": "#BEBFC2", + "titleBar.activeForeground": "#53555D", + "titleBar.inactiveBackground": "#A9AAAE", + "titleBar.inactiveForeground": "#7E8086", + "notification.background": "#939599", + "notification.foreground": "#53555D", + "extensionButton.prominentBackground": "#DF0002", + "extensionButton.prominentForeground": "#282B35", + "extensionButton.prominentHoverBackground": "#939599", + "pickerGroup.foreground": "#7E8086", + "terminal.background": "#BEBFC2", + "terminal.foreground": "#53555D", + "terminal.ansiBlack": "#939599", + "terminal.ansiBrightBlack": "#7E8086", + "terminal.ansiRed": "#B21889", + "terminal.ansiBrightRed": "#B21889", + "terminal.ansiYellow": "#786DC5", + "terminal.ansiBrightYellow": "#438288", + "terminal.ansiGreen": "#DF0002", + "terminal.ansiBrightGreen": "#DF0002", + "terminal.ansiCyan": "#00A0BE", + "terminal.ansiBrightCyan": "#00A0BE", + "terminal.ansiBlue": "#790EAD", + "terminal.ansiBrightBlue": "#790EAD", + "terminal.ansiMagenta": "#B21889", + "terminal.ansiBrightMagenta": "#B21889", + "terminal.ansiWhite": "#3D4048", + "terminal.ansiBrightWhite": "#282B35", + "debugToolBar.background": "#A9AAAE", + "welcomePage.buttonBackground": "#A9AAAE", + "welcomePage.buttonHoverBackground": "#939599", + "walkThrough.embeddedEditorBackground": "#BEBFC2", + "descriptionForeground": "#7E8086", + "textBlockQuote.background": "#A9AAAE", + "textBlockQuote.border": "#790EAD", + "textCodeBlock.background": "#BEBFC2", + "textLink.activeForeground": "#00A0BE", + "textLink.foreground": "#790EAD", + "textPreformat.foreground": "#790EAD", + "textSeparator.foreground": "#f0f" + }, + "tokenColors": [ + { + "settings": { + "foreground": "#eeffffff", + "background": "#263238ff" + } + }, + { + "name": "Comment", + "scope": [ + "comment", + "punctuation.definition.comment" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#7E8086" + } + }, + { + "name": "Variables", + "scope": [ + "variable", + "string constant.other.placeholder" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Colors", + "scope": [ + "constant.other.color" + ], + "settings": { + "foreground": "#0f0" + } + }, + { + "name": "Invalid", + "scope": [ + "invalid", + "invalid.illegal" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Invalid - Deprecated", + "scope": [ + "invalid.deprecated" + ], + "settings": { + "foreground": "#C77C48" + } + }, + { + "name": "Keyword, Storage", + "scope": [ + "keyword", + "storage.type", + "storage.modifier" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Keyword Control", + "scope": [ + "keyword.control.flow" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Operator, Misc", + "scope": [ + "keyword.control", + "constant.other.color", + "punctuation", + "punctuation.section.class.end", + "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": "#53555D" + } + }, + { + "name": "Embedded", + "scope": [ + "punctuation.section.embedded", + "variable.interpolation" + ], + "settings": { + "foreground": "#C77C48" + } + }, + { + "name": "Tag", + "scope": [ + "entity.name.tag", + "meta.tag.sgml", + "markup.deleted.git_gutter" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Function, Special Method", + "scope": [ + "entity.name.function", + "meta.function-call", + "variable.function", + "support.function", + "keyword.other.special-method" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Block Level Variables", + "scope": [ + "meta.block variable.other" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Other Variable, String Link", + "scope": [ + "support.other.variable", + "string.other.link" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Number, Constant, Function Argument, Tag Attribute, Embedded", + "scope": [ + "constant.numeric", + "constant.language", + "support.constant", + "constant.character", + "constant.escape", + "variable.parameter", + "keyword.other.unit", + "keyword.other" + ], + "settings": { + "foreground": "#786DC5" + } + }, + { + "name": "String, Symbols, Inherited Class, Markup Heading", + "scope": [ + "string", + "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": { + "fontStyle": "normal", + "foreground": "#DF0002" + } + }, + { + "name": "Class, Support", + "scope": [ + "entity.name", + "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": { + "foreground": "#438288" + } + }, + { + "name": "Entity Types", + "scope": [ + "support.type" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "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": "#00A0BE" + } + }, + { + "name": "Sub-methods", + "scope": [ + "entity.name.module.js", + "variable.import.parameter.js", + "variable.other.class.js" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Language methods", + "scope": [ + "variable.language" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#B21889" + } + }, + { + "name": "entity.name.method.js", + "scope": [ + "entity.name.method.js" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#82AAFF" + } + }, + { + "name": "meta.method.js", + "scope": [ + "meta.class-method.js entity.name.function.js", + "variable.function.constructor" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Attributes", + "scope": [ + "entity.other.attribute-name" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "HTML Attributes", + "scope": [ + "text.html.basic entity.other.attribute-name.html", + "text.html.basic entity.other.attribute-name" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#438288" + } + }, + { + "name": "CSS Classes", + "scope": [ + "entity.other.attribute-name.class" + ], + "settings": { + "foreground": "#438288" + } + }, + { + "name": "CSS ID's", + "scope": [ + "source.sass keyword.control" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Inserted", + "scope": [ + "markup.inserted" + ], + "settings": { + "foreground": "#DF0002" + } + }, + { + "name": "Deleted", + "scope": [ + "markup.deleted" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Changed", + "scope": [ + "markup.changed" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Regular Expressions", + "scope": [ + "string.regexp" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "name": "Escape Characters", + "scope": [ + "constant.character.escape" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "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": "#790EAD" + } + }, + { + "name": "ES7 Bind Operator", + "scope": [ + "source.js constant.other.object.key.js string.unquoted.label.js" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#FF5370" + } + }, + { + "name": "JSON Key - Level 0", + "scope": [ + "source.json meta.structure.dictionary.json support.type.property-name.json" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "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": "#790EAD" + } + }, + { + "name": "Markdown - Plain", + "scope": [ + "text.html.markdown", + "punctuation.definition.list_item.markdown" + ], + "settings": { + "foreground": "#53555D" + } + }, + { + "name": "Markdown - Markup Raw Inline", + "scope": [ + "text.html.markdown markup.inline.raw.markdown" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Markup Raw Inline Punctuation", + "scope": [ + "text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown" + ], + "settings": { + "foreground": "#00A0BE" + } + }, + { + "name": "Markdown - Line Break", + "scope": [ + "text.html.markdown meta.dummy.line-break" + ], + "settings": { + "foreground": "" + } + }, + { + "name": "Markdown - Heading", + "scope": [ + "markdown.heading", + "markup.heading | markup.heading entity.name", + "markup.heading.markdown punctuation.definition.heading.markdown" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Markup - Italic", + "scope": [ + "markup.italic" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#B21889" + } + }, + { + "name": "Markup - Bold", + "scope": [ + "markup.bold", + "markup.bold string" + ], + "settings": { + "fontStyle": "bold", + "foreground": "#B21889" + } + }, + { + "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": "#B21889" + } + }, + { + "name": "Markup - Underline", + "scope": [ + "markup.underline" + ], + "settings": { + "fontStyle": "underline", + "foreground": "#786DC5" + } + }, + { + "name": "Markup - Strike", + "scope": [ + "markup.strike" + ], + "settings": { + "fontStyle": "strike", + "foreground": "" + } + }, + { + "name": "Markdown - Blockquote", + "scope": [ + "markup.quote punctuation.definition.blockquote.markdown" + ], + "settings": { + "background": "#00A0BE", + "foreground": "#00A0BE" + } + }, + { + "name": "Markup - Quote", + "scope": [ + "markup.quote" + ], + "settings": { + "fontStyle": "italic", + "foreground": "" + } + }, + { + "name": "Markdown - Link", + "scope": [ + "string.other.link.title.markdown" + ], + "settings": { + "foreground": "#790EAD" + } + }, + { + "name": "Markdown - Link Description", + "scope": [ + "string.other.link.description.title.markdown" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Link Anchor", + "scope": [ + "constant.other.reference.link.markdown" + ], + "settings": { + "foreground": "#438288" + } + }, + { + "name": "Markup - Raw Block", + "scope": [ + "markup.raw.block" + ], + "settings": { + "foreground": "#B21889" + } + }, + { + "name": "Markdown - Raw Block Fenced", + "scope": [ + "markup.raw.block.fenced.markdown" + ], + "settings": { + "foreground": "#00000050" + } + }, + { + "name": "Markdown - Fenced Bode Block", + "scope": [ + "punctuation.definition.fenced.markdown" + ], + "settings": { + "foreground": "#00000050" + } + }, + { + "name": "Markdown - Fenced Bode Block Variable", + "scope": [ + "markup.raw.block.fenced.markdown", + "variable.language.fenced.markdown" + ], + "settings": { + "foreground": "#f0f" + } + }, + { + "name": "Markdown - Fenced Language", + "scope": [ + "variable.language.fenced.markdown" + ], + "settings": { + "foreground": "#f00" + } + }, + { + "name": "Markdown - Separator", + "scope": [ + "meta.separator" + ], + "settings": { + "fontStyle": "bold", + "background": "#00000050", + "foreground": "#f0f" + } + }, + { + "name": "Markup - Table", + "scope": [ + "markup.table" + ], + "settings": { + "foreground": "#f0f" + } + }, + { + "scope": "token.info-token", + "settings": { + "foreground": "#790EAD" + } + }, + { + "scope": "token.warn-token", + "settings": { + "foreground": "#438288" + } + }, + { + "scope": "token.error-token", + "settings": { + "foreground": "#B21889" + } + }, + { + "scope": "token.debug-token", + "settings": { + "foreground": "#B21889" + } + } + ] +} \ No newline at end of file