From 52ceeb127087d43757d337d7539c331ed654ad04 Mon Sep 17 00:00:00 2001 From: Dan Arnfield Date: Thu, 10 Oct 2024 17:13:02 -0500 Subject: [PATCH] Add Railscasts Extended theme (#526) Co-authored-by: Mauricio Bonani --- README.md | 2 + .../railscasts-extended/theme-custom.css | 1 + .../railscasts-extended/theme-mermaid.json | 1 + .../railscasts-extended/theme-monaco.json | 995 ++++++++++++++++++ src/themes/railscasts-extended/theme.scss | 301 ++++++ 5 files changed, 1300 insertions(+) create mode 100644 src/themes/railscasts-extended/theme-custom.css create mode 100644 src/themes/railscasts-extended/theme-mermaid.json create mode 100644 src/themes/railscasts-extended/theme-monaco.json create mode 100644 src/themes/railscasts-extended/theme.scss diff --git a/README.md b/README.md index e9f434c..784a4b2 100644 --- a/README.md +++ b/README.md @@ -57,6 +57,7 @@ npm install @node-red-contrib-themes/theme-collection | `oled` | A Node-RED dark theme for OLED displays | | `one-dark-pro` | Based on the Default theme from [One Dark Pro][theme-one-dark-pro] | | `one-dark-pro-darker` | Based on the Darker theme from [One Dark Pro][theme-one-dark-pro] | +| `railscasts-extended` | Based on the [Railscasts Extended theme][theme-railscasts-extended] for Sublime Text | | `solarized-dark` | Based on the [Solarized color palette][solarized] | | `solarized-light` | Based on the [Solarized color palette][solarized] | | `tokyo-night` | Based on the Tokyo Night theme from [Tokyo Night theme][theme-tokyo-night] | @@ -149,6 +150,7 @@ This project is licensed under the [MIT license][license]. [theme-noctis]: https://marketplace.visualstudio.com/items?itemName=liviuschera.noctis [theme-oceanic-next]: https://github.com/voronianski/oceanic-next-color-scheme [theme-one-dark-pro]: https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme +[theme-railscasts-extended]: https://github.com/jzelenkov/sublime-railscasts-extended [theme-tokyo-night]: https://marketplace.visualstudio.com/items?itemName=enkia.tokyo-night [theme-zenburn]: https://github.com/jnurmine/Zenburn [totally-information]: https://github.com/TotallyInformation diff --git a/src/themes/railscasts-extended/theme-custom.css b/src/themes/railscasts-extended/theme-custom.css new file mode 100644 index 0000000..750f989 --- /dev/null +++ b/src/themes/railscasts-extended/theme-custom.css @@ -0,0 +1 @@ +/* Theme customizations */ diff --git a/src/themes/railscasts-extended/theme-mermaid.json b/src/themes/railscasts-extended/theme-mermaid.json new file mode 100644 index 0000000..18ede69 --- /dev/null +++ b/src/themes/railscasts-extended/theme-mermaid.json @@ -0,0 +1 @@ +"dark" diff --git a/src/themes/railscasts-extended/theme-monaco.json b/src/themes/railscasts-extended/theme-monaco.json new file mode 100644 index 0000000..3396f53 --- /dev/null +++ b/src/themes/railscasts-extended/theme-monaco.json @@ -0,0 +1,995 @@ +{ + "base": "vs-dark", + "colors": { + "editor.background": "#222222", + "editor.foreground": "#e6e1dc", + "editor.lineHighlightBackground": "#333435", + "editor.selectionBackground": "#3d4456e0", + "editorCursor.foreground": "#ffffed", + "editorIndentGuide.activeBackground1": "#7fb11b", + "editorWhitespace.foreground": "#404040", + "sideBar.background": "#292929" + }, + "encodedTokensColors": [], + "inherit": true, + "rules": [ + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "comment" + }, + { + "foreground": "#A5C261", + "token": "string" + }, + { + "foreground": "#A5C261", + "token": "constant.numeric" + }, + { + "foreground": "#6E9CBE", + "token": "constant.language" + }, + { + "foreground": "#A5C261", + "token": "meta.preprocessor" + }, + { + "foreground": "#A5C261", + "token": "constant.character" + }, + { + "foreground": "#A5C261", + "token": " constant.other" + }, + { + "foreground": "#E6E1DC", + "token": "variable.other.block" + }, + { + "foreground": "#D0D0FF", + "token": "variable.language" + }, + { + "foreground": "#D0D0FF", + "token": " variable.other" + }, + { + "fontStyle": " italic", + "foreground": "#DA4939", + "token": "type" + }, + { + "foreground": "#CC7833", + "token": "keyword" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "storage" + }, + { + "fontStyle": " italic", + "foreground": "#DA4939", + "token": "storage.type" + }, + { + "fontStyle": " underline", + "foreground": "#FFC66D", + "token": "entity.name.class" + }, + { + "fontStyle": "italic underline", + "foreground": "#FFC66D", + "token": "entity.other.inherited-class" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": "entity.name.function" + }, + { + "fontStyle": "", + "foreground": "#E8BF6A", + "token": "entity.name.tag" + }, + { + "fontStyle": "", + "foreground": "#E8BF6A", + "token": "entity.other.attribute-name" + }, + { + "fontStyle": "", + "foreground": "#DA4939", + "token": "support.function" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": "support.constant" + }, + { + "fontStyle": "", + "foreground": "#6E9CBE", + "token": "support.type" + }, + { + "fontStyle": "", + "foreground": "#6E9CBE", + "token": " support.class" + }, + { + "fontStyle": "", + "token": "support.other.variable" + }, + { + "foreground": "#DA4939", + "token": "string constant" + }, + { + "foreground": "#A5C261", + "token": "string.regexp" + }, + { + "fontStyle": "", + "foreground": "#519F50", + "token": "constant.character.escaped" + }, + { + "fontStyle": "", + "foreground": "#519F50", + "token": " constant.character.escape" + }, + { + "fontStyle": "", + "foreground": "#519F50", + "token": " string source" + }, + { + "fontStyle": "", + "foreground": "#519F50", + "token": " string source.ruby" + }, + { + "foreground": "#D0D0FF", + "token": "string variable" + }, + { + "foreground": "#FFFFFF", + "token": "punctuation.definition.variable" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "entity" + }, + { + "foreground": "#C8CECC", + "token": "meta.tag.sgml.doctype.xml" + }, + { + "foreground": "#C8CECC", + "token": " declaration.sgml.html declaration.doctype" + }, + { + "foreground": "#C8CECC", + "token": " declaration.sgml.html declaration.doctype entity" + }, + { + "foreground": "#C8CECC", + "token": " declaration.sgml.html declaration.doctype string" + }, + { + "foreground": "#C8CECC", + "token": " declaration.xml-processing" + }, + { + "foreground": "#C8CECC", + "token": " declaration.xml-processing entity" + }, + { + "foreground": "#C8CECC", + "token": " declaration.xml-processing string" + }, + { + "foreground": "#C8CECC", + "token": " doctype" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "comment.block.html" + }, + { + "fontStyle": "italic", + "token": "entity.name.tag.script.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": "text.html.basic meta.tag.other.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " text.html.basic meta.tag.any.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " text.html.basic meta.tag.block.any" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " text.html.basic meta.tag.inline.any" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " text.html.basic meta.tag.structure.any.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " text.html.basic source.js.embedded.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " punctuation.separator.key-value.html" + }, + { + "foreground": "#E8BF6A", + "token": "text.html.basic entity.other.attribute-name.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": "text.html.basic meta.tag.structure.any.html punctuation.definition.string.begin.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " punctuation.definition.string.begin.html" + }, + { + "fontStyle": "", + "foreground": "#A5C261", + "token": " punctuation.definition.string.end.html " + }, + { + "foreground": "#E8BF6A", + "token": "punctuation.definition.tag.end" + }, + { + "foreground": "#E8BF6A", + "token": " punctuation.definition.tag.begin" + }, + { + "foreground": "#E8BF6A", + "token": " punctuation.definition.tag" + }, + { + "foreground": "#FD971F", + "token": "variable.parameter.handlebars" + }, + { + "foreground": "#A5C261", + "token": "support.constant.handlebars" + }, + { + "foreground": "#A5C261", + "token": " meta.function.block.start.handlebars" + }, + { + "foreground": "#CC7833", + "token": "meta.preprocessor.at-rule keyword.control.at-rule" + }, + { + "foreground": "#7FB11B", + "token": "meta.selector.css entity.other.attribute-name.id" + }, + { + "fontStyle": "", + "foreground": "#7FB11B", + "token": "entity.other.attribute-name.id.css" + }, + { + "foreground": "#FFC66D", + "token": "meta.selector.css entity.other.attribute-name.class" + }, + { + "foreground": "#6E9CBE", + "token": "support.type.property-name.css" + }, + { + "foreground": "#9D9DFF", + "token": "meta.constructor.argument.css" + }, + { + "foreground": "#FFFFFF", + "token": "punctuation.section.property-list.css" + }, + { + "foreground": "#FFFFFF", + "token": "punctuation.definition.tag.css" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "punctuation.separator.key-value.css" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": " punctuation.terminator.rule.css" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": "entity.other.attribute-name.pseudo-element.css" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": " entity.other.attribute-name.pseudo-class.css" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": " entity.other.attribute-name.pseudo-selector.css" + }, + { + "foreground": "#D0D0FF", + "token": "variable.other.less" + }, + { + "fontStyle": "italic", + "foreground": "#E0FDCE", + "token": "entity.other.less.mixin" + }, + { + "fontStyle": "", + "foreground": "#FF9117", + "token": "entity.other.attribute-name.pseudo-element.less" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": "meta.function.js" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": " entity.name.function.js" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": " support.function.dom.js" + }, + { + "fontStyle": "", + "foreground": "#E6E1DC", + "token": "meta.function.js" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "storage.type.js" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "text.html.basic source.js.embedded.html" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "storage.type.function.js" + }, + { + "foreground": "#A5C261", + "token": "constant.numeric.js" + }, + { + "foreground": "#FFFFFF", + "token": "meta.brace.square.js" + }, + { + "foreground": "#FFFFFF", + "token": "meta.brace.round" + }, + { + "foreground": "#FFFFFF", + "token": " punctuation.definition.parameters.begin.js" + }, + { + "foreground": "#FFFFFF", + "token": " punctuation.definition.parameters.end.js" + }, + { + "foreground": "#FFFFFF", + "token": "meta.brace.curly.js" + }, + { + "foreground": "#A5C261", + "token": "meta.structure.dictionary.json string.quoted.double.json" + }, + { + "foreground": "#FFFFFF", + "token": "keyword.operator.index-start.php" + }, + { + "foreground": "#FFFFFF", + "token": " keyword.operator.index-end.php" + }, + { + "foreground": "#FFFFFF", + "token": "meta.array.php" + }, + { + "fontStyle": "", + "foreground": "#DA4939", + "token": "meta.array.php support.function.construct.php" + }, + { + "fontStyle": "", + "foreground": "#DA4939", + "token": " meta.array.empty.php support.function.construct.php" + }, + { + "foreground": "#DA4939", + "token": "support.function.construct.php" + }, + { + "foreground": "#DA4939", + "token": "storage.type.function.php" + }, + { + "foreground": "#A5C261", + "token": "constant.numeric.php" + }, + { + "foreground": "#DA4939", + "token": "keyword.other.new.php" + }, + { + "fontStyle": " italic", + "foreground": "#6E9CBE", + "token": "support.class.php" + }, + { + "foreground": "#9D9DFF", + "token": "variable.other.property.php" + }, + { + "foreground": "#DA4939", + "token": "storage.modifier.extends.php" + }, + { + "foreground": "#DA4939", + "token": " storage.type.class.php" + }, + { + "foreground": "#DA4939", + "token": " keyword.operator.class.php" + }, + { + "fontStyle": "", + "foreground": "#6E9CBE", + "token": "meta.other.inherited-class.php" + }, + { + "foreground": "#6E9CBE", + "token": "storage.type.php" + }, + { + "foreground": "#FFC66D", + "token": "entity.name.function.php" + }, + { + "foreground": "#DA4939", + "token": "support.function.construct.php" + }, + { + "foreground": "#FFFFFF", + "token": "entity.name.type.class.php" + }, + { + "foreground": "#FFFFFF", + "token": " meta.function-call.php" + }, + { + "foreground": "#FFFFFF", + "token": " meta.function-call.static.php" + }, + { + "foreground": "#FFFFFF", + "token": " meta.function-call.object.php" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "keyword.other.phpdoc" + }, + { + "foreground": "#FFFFFF", + "token": "source.php.embedded.block.html" + }, + { + "background": "#404142", + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "invalid" + }, + { + "background": "#404142", + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "invalid.illegal" + }, + { + "background": "#702929", + "foreground": "#FFFFFF", + "token": "invalid.deprecated" + }, + { + "background": "#282828", + "token": "meta.diff" + }, + { + "background": "#660000", + "foreground": "#F92672", + "token": "markup.deleted" + }, + { + "background": "#144212", + "foreground": "#A6E22E", + "token": "markup.inserted" + }, + { + "foreground": "#967EFB", + "token": "markup.changed" + }, + { + "background": "#2F33AB", + "token": "meta.diff.range" + }, + { + "background": "#2F33AB", + "token": " meta.diff.header" + }, + { + "fontStyle": "", + "foreground": "#BC9458", + "token": "storage.type.class.python" + }, + { + "fontStyle": "", + "foreground": "#BC9458", + "token": " storage.type.function.python" + }, + { + "fontStyle": "", + "foreground": "#BC9458", + "token": " storage.modifier.global.python" + }, + { + "foreground": "#CC7833DD", + "token": "keyword.control.import.python" + }, + { + "foreground": "#CC7833DD", + "token": " keyword.control.import.from.python" + }, + { + "foreground": "#6E9CBE", + "token": "support.type.exception.python" + }, + { + "foreground": "#DA4939", + "token": "punctuation.definition.variable.perl" + }, + { + "foreground": "#DA4939", + "token": " variable.other.readwrite.global.perl" + }, + { + "foreground": "#DA4939", + "token": " variable.other.predefined.perl" + }, + { + "foreground": "#DA4939", + "token": " keyword.operator.comparison.perl" + }, + { + "foreground": "#DA4939", + "token": "support.function.perl" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "comment.line.number-sign.perl" + }, + { + "foreground": "#FFFFFF", + "token": "punctuation.definition.string.begin.perl" + }, + { + "foreground": "#FFFFFF", + "token": " punctuation.definition.string.end.perl" + }, + { + "foreground": "#519F50", + "token": "constant.character.escape.perl" + }, + { + "foreground": "#A5C261", + "token": "constant.language.ruby" + }, + { + "foreground": "#A5C261", + "token": " constant.numeric.ruby" + }, + { + "fontStyle": "", + "foreground": "#D0D0FF", + "token": "punctuation.definition.variable.ruby" + }, + { + "foreground": "#E6E1DC", + "token": "meta.function.method.with-arguments.ruby" + }, + { + "foreground": "#E8BF6A", + "token": "entity.name.function.ruby" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "keyword.control.ruby" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": " keyword.control.def.ruby" + }, + { + "foreground": "#CC7833", + "token": "keyword.control.class.ruby" + }, + { + "foreground": "#CC7833", + "token": " meta.class.ruby" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "entity.name.type.class.ruby" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "keyword.control.ruby" + }, + { + "fontStyle": "", + "foreground": "#E6E1DC", + "token": "support.class.ruby" + }, + { + "foreground": "#CC7833", + "token": "keyword.other.special-method.ruby" + }, + { + "fontStyle": "", + "foreground": "#DA4939", + "token": "variable.other.constant.ruby" + }, + { + "fontStyle": "", + "foreground": "#6E9CBE", + "token": "constant.other.symbol.ruby" + }, + { + "foreground": "#A5C261", + "token": "punctuation.definition.string.begin.ruby" + }, + { + "foreground": "#A5C261", + "token": " punctuation.definition.string.end.ruby" + }, + { + "foreground": "#519F50", + "token": "punctuation.section.embedded.ruby" + }, + { + "foreground": "#CC7833", + "token": "keyword.other.special-method.ruby" + }, + { + "foreground": "#FFFFFF", + "token": "text.html.markdown" + }, + { + "foreground": "#CC7833", + "token": "text.html.markdown markup.raw.inline" + }, + { + "foreground": "#E0EDDD", + "token": "text.html.markdown meta.dummy.line-break" + }, + { + "fontStyle": "", + "foreground": "#7FB11B", + "token": "markdown.heading" + }, + { + "fontStyle": "", + "foreground": "#7FB11B", + "token": " markup.heading | markup.heading entity.name" + }, + { + "fontStyle": "", + "foreground": "#7FB11B", + "token": " markup.heading.markdown punctuation.definition.heading.markdown" + }, + { + "fontStyle": "italic", + "foreground": "#D0D0FF", + "token": "markup.italic" + }, + { + "fontStyle": "bold", + "foreground": "#D0D0FF", + "token": "markup.bold" + }, + { + "fontStyle": "underline", + "foreground": "#E8BF6A", + "token": "markup.underline" + }, + { + "fontStyle": "italic", + "foreground": "#6E9CBE", + "token": "markup.quote" + }, + { + "fontStyle": "italic", + "foreground": "#6E9CBE", + "token": " punctuation.definition.blockquote.markdown" + }, + { + "fontStyle": "italic", + "foreground": "#6E9CBE", + "token": "markup.quote" + }, + { + "fontStyle": "underline", + "foreground": "#A5C261", + "token": "string.other.link.title.markdown" + }, + { + "foreground": "#9D9DFF", + "token": "markup.raw.block" + }, + { + "foreground": "#FFFFFF", + "token": "punctuation.definition.list_item.markdown" + }, + { + "background": "#222222", + "foreground": "#FFFFFF", + "token": "markup.raw.block.fenced.markdown" + }, + { + "background": "#222222", + "foreground": "#BC9458", + "token": "punctuation.definition.fenced.markdown" + }, + { + "background": "#222222", + "foreground": "#BC9458", + "token": " variable.language.fenced.markdown" + }, + { + "fontStyle": "", + "foreground": "#BC9458", + "token": "variable.language.fenced.markdown" + }, + { + "background": "#FFFFFF0F", + "fontStyle": "bold", + "foreground": "#FFFFFF33", + "token": "meta.separator" + }, + { + "background": "#2222221A", + "foreground": "#FFC66D", + "token": "markup.table" + }, + { + "fontStyle": "", + "foreground": "#D3201F", + "token": "other.package.exclude" + }, + { + "fontStyle": "", + "foreground": "#D3201F", + "token": " other.remove" + }, + { + "foreground": "#DA4939", + "token": "support.function.builtin.shell" + }, + { + "foreground": "#DA4939", + "token": "variable.other.normal.shell" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "source.shell" + }, + { + "fontStyle": "", + "foreground": "#FD971F", + "token": "meta.scope.for-in-loop.shell" + }, + { + "fontStyle": "", + "foreground": "#FD971F", + "token": " variable.other.loop.shell" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": "entity.name.function.shell" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "punctuation.definition.string.end.shell" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": " punctuation.definition.string.begin.shell" + }, + { + "fontStyle": "", + "foreground": "#FD971F", + "token": "meta.scope.case-block.shell" + }, + { + "fontStyle": "", + "foreground": "#FD971F", + "token": " meta.scope.case-body.shell" + }, + { + "fontStyle": "", + "foreground": "#FFFFFF", + "token": "punctuation.definition.logical-expression.shell" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "comment.line.number-sign.shell" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "comment.line.number-sign.makefile" + }, + { + "fontStyle": "italic", + "foreground": "#BC9458", + "token": "punctuation.definition.comment.makefile" + }, + { + "fontStyle": "", + "foreground": "#CC7833", + "token": "variable.other.makefile" + }, + { + "fontStyle": "", + "foreground": "#FFC66D", + "token": "entity.name.function.makefile" + }, + { + "fontStyle": "", + "foreground": "#DA4939", + "token": "meta.function.makefile" + }, + { + "foreground": "#DA4939", + "token": "markup.deleted.git_gutter" + }, + { + "foreground": "#8DBF5D", + "token": "markup.inserted.git_gutter" + }, + { + "foreground": "#FFC66D", + "token": "markup.changed.git_gutter" + }, + { + "foreground": "#565656", + "token": "markup.ignored.git_gutter" + }, + { + "foreground": "#565656", + "token": "markup.untracked.git_gutter" + }, + { + "background": "#FFFFAA", + "foreground": "#333333", + "token": "sublimelinter.annotations" + }, + { + "background": "#FF4A52", + "foreground": "#FFFFFF", + "token": "sublimelinter.outline.illegal" + }, + { + "background": "#FF0000", + "token": "sublimelinter.underline.illegal" + }, + { + "background": "#DF9400", + "foreground": "#FFFFFF", + "token": "sublimelinter.outline.warning" + }, + { + "background": "#FF0000", + "token": "sublimelinter.underline.warning" + }, + { + "background": "#FFFFFF33", + "foreground": "#FFFFFF", + "token": "sublimelinter.outline.violation" + }, + { + "background": "#FF0000", + "token": "sublimelinter.underline.violation" + }, + { + "foreground": "#A5C26190", + "token": "constant.numeric.line-number.find-in-files - match" + }, + { + "foreground": "#A5C261", + "token": "entity.name.filename.find-in-files" + }, + { + "foreground": "#D02000", + "token": "sublimelinter.mark.error" + }, + { + "foreground": "#DDB700", + "token": "sublimelinter.mark.warning" + }, + { + "foreground": "#FFFFFF", + "token": "sublimelinter.gutter-mark" + }, + { + "foreground": "#6796E6", + "token": "token.info-token" + }, + { + "foreground": "#CD9731", + "token": "token.warn-token" + }, + { + "foreground": "#F44747", + "token": "token.error-token" + }, + { + "foreground": "#B267E6", + "token": "token.debug-token" + } + ] +} diff --git a/src/themes/railscasts-extended/theme.scss b/src/themes/railscasts-extended/theme.scss new file mode 100644 index 0000000..433b490 --- /dev/null +++ b/src/themes/railscasts-extended/theme.scss @@ -0,0 +1,301 @@ +$primary-font: "Helvetica Neue", Arial, Helvetica, sans-serif; +$primary-font-size: 14px; +$monospace-font: Menlo, Consolas, "DejaVu Sans Mono", Courier, monospace; + +$primary-background: #222222; + +$secondary-background: #2f2f2f; +$secondary-background-selected: #404040; +$secondary-background-inactive: $primary-background; +$secondary-background-hover: #333435; +$secondary-background-disabled: $primary-background; + +$tertiary-background: $primary-background; + +$shadow: rgba(0, 0, 0, 0.2); + +// Main body text +$primary-text-color: #e6e1dc; +// UI control label text +$secondary-text-color: scale-color($primary-text-color, $lightness: -20%); +$secondary-text-color-focus: scale-color($secondary-text-color, $lightness: 50%); +$secondary-text-color-hover: $secondary-text-color-focus; +$secondary-text-color-active: $secondary-text-color-focus; +$secondary-text-color-selected: $secondary-text-color-focus; +$secondary-text-color-inactive: $secondary-text-color; +$secondary-text-color-disabled: rgba($primary-text-color, 0.4); +$secondary-text-color-disabled-active: rgba($primary-text-color, 0.5); +$secondary-text-color-disabled-inactive: rgba($primary-text-color, 0.4); + +// Sub label text +$tertiary-text-color: #ffffed; +// Heading text +$header-text-color: $primary-text-color; + +$text-color-error: #da4939; +$text-color-warning: #ffc66d; +$text-color-success: #519f50; +$text-color-code: $primary-text-color; +$text-color-link: #6e9cbe; + +$primary-border-color: #202020; +$secondary-border-color: scale-color($primary-border-color, $lightness: -14%); +$tertiary-border-color: scale-color($primary-border-color, $lightness: -7%); + +$border-color-error: #df2935; +$border-color-warning: #ffcf70; +$border-color-success: #4b8400; + +$form-background: $secondary-background; +$form-placeholder-color: $secondary-text-color; +$form-text-color: $primary-text-color; +$form-text-color-disabled: $secondary-text-color-disabled; +$form-input-focus-color: rgba(85, 150, 230, 0.8); +$form-input-border-color: $tertiary-border-color; +$form-input-border-selected-color: #a5c261; +$form-input-border-error-color: #da4939; +$form-input-background: $secondary-background; +$form-input-background-disabled: $secondary-background-disabled; +$form-button-background: $secondary-background-selected; + +$form-tips-background: $primary-background; + +$text-editor-color: $primary-text-color; +$text-editor-background: $secondary-background; +$text-editor-color-disabled: $secondary-text-color-inactive; +$text-editor-background-disabled: $secondary-background-disabled; +$text-editor-gutter-background: $primary-background; +$text-editor-gutter-color: #444d56; +$text-editor-gutter-active-line-background: $secondary-background; +$text-editor-active-line-background: #2b3036; +$text-editor-selection-background: #17e5e633; + +$event-log-background: $secondary-background; +$event-log-color: $primary-text-color; +$event-log-active-line-background: $primary-background; +$event-log-selection-background: $secondary-background-selected; + +$list-item-color: $primary-text-color; +$list-item-secondary-color: $secondary-text-color; +$list-item-background: $secondary-background; +$list-item-background-disabled: $secondary-background-disabled; +$list-item-background-hover: $secondary-background-hover; +$list-item-background-selected: $secondary-background-selected; +$list-item-border-selected: $secondary-text-color-selected; + +$tab-text-color-active: $header-text-color; +$tab-text-color-inactive: $secondary-text-color-inactive; +$tab-text-color-disabled-active: $secondary-text-color-disabled-active; +$tab-text-color-disabled-inactive: $secondary-text-color-disabled-inactive; + +$tab-badge-color: $tertiary-text-color; +$tab-background: $secondary-background; +$tab-background-active: $secondary-background; +$tab-background-active-alpha: rgba($tab-background-active, 0.001); +$tab-background-selected: $secondary-background-selected; +$tab-background-selected-alpha: rgba($tab-background-selected, 0.001); +$tab-background-inactive: $secondary-background-inactive; +$tab-background-inactive-alpha: rgba($tab-background-inactive, 0.001); +$tab-background-hover: $secondary-background-hover; +$tab-background-hover-alpha: rgba($tab-background-hover, 0.001); + +$palette-header-background: $primary-background; +$palette-header-color: $header-text-color; +$palette-content-background: $secondary-background; + +$workspace-button-background: $secondary-background; +$workspace-button-background-hover: $secondary-background-hover; +$workspace-button-background-active: $secondary-background-selected; + +$workspace-button-color: $secondary-text-color; +$workspace-button-color-disabled: $secondary-text-color-disabled; +$workspace-button-color-focus: $secondary-text-color-focus; +$workspace-button-color-hover: $secondary-text-color-hover; +$workspace-button-color-active: $secondary-text-color-active; +$workspace-button-color-selected: $secondary-text-color-selected; + +$workspace-button-color-primary: #eee; +$workspace-button-background-primary: #ad1625; +$workspace-button-background-primary-hover: #6e0a1e; + +$workspace-button-color-focus-outline: $form-input-focus-color; + +$shade-color: rgba(160, 160, 160, 0.5); + +$popover-background: $secondary-background-hover; +$popover-border: $popover-background; +$popover-color: $primary-text-color; +$popover-button-border-color: $primary-border-color; +$popover-button-border-color-hover: $secondary-text-color-hover; + +$diff-text-header-color: $secondary-text-color; +$diff-text-header-background: $secondary-background; +$diff-state-color: $primary-text-color; +$diff-state-prefix-color: $secondary-text-color; +$diff-state-added: #a6e22e; +$diff-state-deleted: #f92672; +$diff-state-changed: #967efb; +$diff-state-changed-background: $secondary-background; +$diff-state-unchanged: $primary-text-color; +$diff-state-unchanged-background: $primary-background; + +$diff-state-conflicted: purple; +$diff-state-moved: #3f81b3; +$diff-state-conflict: #e4676b; +$diff-state-conflict-background: #ffea0047; + +$diff-state-added-background: #9bb95533; +$diff-state-added-border: rgba($diff-state-added-background, 0.1); +$diff-state-added-header-background: #9bb95533; +$diff-state-added-header-border: rgba($diff-state-added-header-background, 0.1); + +$diff-state-deleted-background: #ff000033; +$diff-state-deleted-border: rgba($diff-state-deleted-background, 0.1); +$diff-state-deleted-header-background: #ff000033; +$diff-state-deleted-header-border: rgba($diff-state-deleted-header-background, 0.1); + +$diff-merge-header-color: #800080; +$diff-merge-header-background: #e5f9ff; +$diff-merge-header-border-color: #b2edff; + +$menuBackground: $primary-background; +$menuDivider: $secondary-border-color; +$menuColor: $primary-text-color; +$menuActiveColor: $secondary-text-color-active; +$menuActiveBackground: $secondary-background-hover; +$menuDisabledColor: $secondary-text-color-disabled; +$menuHoverColor: $secondary-text-color-hover; +$menuHoverBackground: $secondary-background-hover; +$menuCaret: $tertiary-text-color; + +$view-navigator-background: rgba($primary-background, 0.8); + +$view-lasso-stroke: #ff7f0e; +$view-lasso-fill: rgba(20, 125, 255, 0.1); + +$view-background: $secondary-background; +$view-grid-color: #ffffff0f; + +$node-label-color: #333; +$node-port-label-color: #888; +$node-border: #999; +$node-border-unknown: #f33; +$node-border-placeholder: #aaa; +$node-background-placeholder: #eee; + +$node-port-background: #d9d9d9; +$node-port-background-hover: #eee; +$node-icon-color: #fff; +$node-icon-background-color: rgba(0, 0, 0, 0.05); +$node-icon-background-color-fill: #000; +$node-icon-background-color-opacity: 0.05; +$node-icon-border-color: #000; +$node-icon-border-color-opacity: 0.1; + +$node-config-background: #f3f3f3; +$node-config-icon-container-disabled: #aaa; + +$node-link-port-background: #eee; + +$node-status-error-border: rgb(145, 16, 2); +$node-status-error-background: rgb(255, 102, 0); +$node-status-changed-border: rgb(28, 102, 140); +$node-status-changed-background: rgb(0, 188, 255); + +$node-status-colors: ( + red: #c00, + green: #5a8, + yellow: #f9df31, + blue: #53a3f3, + grey: #d3d3d3 +); + +$node-selected-color: #ff7f0e; +$port-selected-color: #ff7f0e; + +$link-color: #999; +$link-link-color: #aaa; +$link-disabled-color: #ccc; +$link-link-active-color: #ff7f0e; +$link-unknown-color: #f00; + +$clipboard-textarea-background: $primary-background; + +$deploy-button-color: #eee; +$deploy-button-color-active: #ccc; +$deploy-button-color-disabled: #999; +$deploy-button-background: #8c101c; +$deploy-button-background-hover: #6e0a1e; +$deploy-button-background-active: #4c0a17; +$deploy-button-background-disabled: #444; +$deploy-button-background-disabled-hover: #555; + +$header-background: #000; +$header-button-background-active: #121212; +$header-accent: #c02020; +$header-menu-color: #eee; +$header-menu-color-disabled: #666; +$header-menu-heading-color: #fff; +$header-menu-sublabel-color: #aeaeae; +$header-menu-background: #121212; +$header-menu-item-hover: #323232; +$header-menu-item-border-active: #777677; +$headerMenuItemDivider: #464646; +$headerMenuCaret: #c7c7c7; + +$vcCommitShaColor: #c38888; + +$dnd-background: rgba(0, 0, 0, 0.3); +$dnd-color: #fff; + +$notification-border-default: #325c80; +$notification-border-success: $border-color-success; +$notification-border-warning: $border-color-warning; +$notification-border-error: $border-color-error; + +$debug-message-background: $secondary-background; +$debug-message-background-hover: $secondary-background-hover; + +$debug-message-text-color: $primary-text-color; +$debug-message-text-color-meta: #b392f0; +$debug-message-text-color-object-key: #d1d5da; +$debug-message-text-color-msg-type-other: #4e94ce; +$debug-message-text-color-msg-type-string: #ce9178; +$debug-message-text-color-msg-type-null: #d1d5da; +$debug-message-text-color-msg-type-meta: #c586c0; +$debug-message-text-color-msg-type-number: #b5cea8; + +$debug-message-border: $primary-background; +$debug-message-border-hover: $secondary-background-hover; +$debug-message-border-warning: $border-color-warning; +$debug-message-border-error: $border-color-error; + +$group-default-fill: $primary-background; +$group-default-fill-opacity: 0.5; +$group-default-stroke: $primary-border-color; +$group-default-stroke-opacity: 1; +$group-default-label-color: $primary-text-color; + +$tourGuide-border: #c56c6c; +$tourGuide-heading-color: #c56c6c; + +$grip-color: rgba($primary-text-color, 0.5); + +$icons-flow-color: $primary-text-color; + +$spinner-color: $primary-text-color; + +$tab-icon-color: rgba($primary-text-color, 0.2); + +$user-profile-colors: ( + 1: #822e81, + 2: #955e42, + 3: #9c914f, + 4: #748e54, + 5: #06bcc1 +); + +// Deprecated +$text-color-green: $text-color-success; +$info-text-code-color: $text-color-code; +$info-text-link-color: $text-color-link;