diff --git a/.eslintrc b/.eslintrc
deleted file mode 100644
index b48890d..0000000
--- a/.eslintrc
+++ /dev/null
@@ -1,168 +0,0 @@
-{
- "parser": "babel-eslint",
- "env": {
- "browser": false,
- "node": true,
- "es6": true
- },
- "ecmaFeatures": {
- "jsx": false,
- "modules": true,
- "classes": true
- },
- "globals": {
- "module": 0
- },
- "rules": {
- "no-cond-assign": 1, // disallow assignment in conditional expressions
- "no-console": 0, // disallow use of console (off by default in the node environment)
- "no-constant-condition": 1, // disallow use of constant expressions in conditions
- "no-comma-dangle": 0, // disallow trailing commas in object literals
- "no-control-regex": 1, // disallow control characters in regular expressions
- "no-debugger": 1, // disallow use of debugger
- "no-dupe-keys": 1, // disallow duplicate keys when creating object literals
- "no-empty": 0, // disallow empty statements
- "no-empty-character-class": 1, // disallow the use of empty character classes in regular expressions
- "no-ex-assign": 1, // disallow assigning to the exception in a catch block
- "no-extra-boolean-cast": 1, // disallow double-negation boolean casts in a boolean context
- "no-extra-parens": 0, // disallow unnecessary parentheses (off by default)
- "no-extra-semi": 1, // disallow unnecessary semicolons
- "no-func-assign": 1, // disallow overwriting functions written as function declarations
- "no-inner-declarations": 0, // disallow function or variable declarations in nested blocks
- "no-invalid-regexp": 1, // disallow invalid regular expression strings in the RegExp constructor
- "no-negated-in-lhs": 1, // disallow negation of the left operand of an in expression
- "no-obj-calls": 1, // disallow the use of object properties of the global object (Math and JSON) as functions
- "no-regex-spaces": 1, // disallow multiple spaces in a regular expression literal
- "no-reserved-keys": 0, // disallow reserved words being used as object literal keys (off by default)
- "no-sparse-arrays": 1, // disallow sparse arrays
- "no-unreachable": 1, // disallow unreachable statements after a return, throw, continue, or break statement
- "use-isnan": 1, // disallow comparisons with the value NaN
- "valid-jsdoc": 0, // Ensure JSDoc comments are valid (off by default)
- "valid-typeof": 1, // Ensure that the results of typeof are compared against a valid string
-
- // Best Practices
- // These are rules designed to prevent you from making mistakes. They either prescribe a better way of doing something or help you avoid footguns.
-
- "block-scoped-var": 0, // treat var statements as if they were block scoped (off by default)
- "complexity": 0, // specify the maximum cyclomatic complexity allowed in a program (off by default)
- "consistent-return": 0, // require return statements to either always or never specify values
- "curly": 1, // specify curly brace conventions for all control statements
- "default-case": 0, // require default case in switch statements (off by default)
- "dot-notation": 1, // encourages use of dot notation whenever possible
- "eqeqeq": 1, // require the use of === and !==
- "guard-for-in": 0, // make sure for-in loops have an if statement (off by default)
- "no-alert": 1, // disallow the use of alert, confirm, and prompt
- "no-caller": 1, // disallow use of arguments.caller or arguments.callee
- "no-div-regex": 1, // disallow division operators explicitly at beginning of regular expression (off by default)
- "no-else-return": 0, // disallow else after a return in an if (off by default)
- "no-eq-null": 0, // disallow comparisons to null without a type-checking operator (off by default)
- "no-eval": 1, // disallow use of eval()
- "no-extend-native": 1, // disallow adding to native types
- "no-extra-bind": 1, // disallow unnecessary function binding
- "no-fallthrough": 1, // disallow fallthrough of case statements
- "no-floating-decimal": 1, // disallow the use of leading or trailing decimal points in numeric literals (off by default)
- "no-implied-eval": 1, // disallow use of eval()-like methods
- "no-labels": 1, // disallow use of labeled statements
- "no-iterator": 1, // disallow usage of __iterator__ property
- "no-lone-blocks": 1, // disallow unnecessary nested blocks
- "no-loop-func": 0, // disallow creation of functions within loops
- "no-multi-str": 0, // disallow use of multiline strings
- "no-native-reassign": 0, // disallow reassignments of native objects
- "no-new": 1, // disallow use of new operator when not part of the assignment or comparison
- "no-new-func": 1, // disallow use of new operator for Function object
- "no-new-wrappers": 1, // disallows creating new instances of String,Number, and Boolean
- "no-octal": 1, // disallow use of octal literals
- "no-octal-escape": 1, // disallow use of octal escape sequences in string literals, such as var foo = "Copyright \251";
- "no-proto": 1, // disallow usage of __proto__ property
- "no-redeclare": 0, // disallow declaring the same variable more then once
- "no-return-assign": 1, // disallow use of assignment in return statement
- "no-script-url": 1, // disallow use of javascript: urls.
- "no-self-compare": 1, // disallow comparisons where both sides are exactly the same (off by default)
- "no-sequences": 1, // disallow use of comma operator
- "no-unused-expressions": 0, // disallow usage of expressions in statement position
- "no-void": 1, // disallow use of void operator (off by default)
- "no-warning-comments": 0, // disallow usage of configurable warning terms in comments": 1, // e.g. TODO or FIXME (off by default)
- "no-with": 1, // disallow use of the with statement
- "radix": 1, // require use of the second argument for parseInt() (off by default)
- "vars-on-top": 0, // requires to declare all vars on top of their containing scope (off by default)
- "wrap-iife": 0, // require immediate function invocation to be wrapped in parentheses (off by default)
- "yoda": 1, // require or disallow Yoda conditions
-
- // Strict Mode
- // These rules relate to using strict mode.
-
- "strict": 0, // require that all functions are run in strict mode
-
- // Variables
- // These rules have to do with variable declarations.
-
- "no-catch-shadow": 1, // disallow the catch clause parameter name being the same as a variable in the outer scope (off by default in the node environment)
- "no-delete-var": 1, // disallow deletion of variables
- "no-label-var": 1, // disallow labels that share a name with a variable
- "no-shadow": 1, // disallow declaration of variables already declared in the outer scope
- "no-shadow-restricted-names": 1, // disallow shadowing of names such as arguments
- "no-undef": 2, // disallow use of undeclared variables unless mentioned in a /*global */ block
- "no-undefined": 0, // disallow use of undefined variable (off by default)
- "no-undef-init": 1, // disallow use of undefined when initializing variables
- "no-unused-vars": [1, {"vars": "all", "args": "none"}], // disallow declaration of variables that are not used in the code
- "no-use-before-define": 0, // disallow use of variables before they are defined
-
- // Node.js
- // These rules are specific to JavaScript running on Node.js.
-
- "handle-callback-err": 1, // enforces error handling in callbacks (off by default) (on by default in the node environment)
- "no-mixed-requires": 1, // disallow mixing regular variable and require declarations (off by default) (on by default in the node environment)
- "no-new-require": 1, // disallow use of new operator with the require function (off by default) (on by default in the node environment)
- "no-path-concat": 1, // disallow string concatenation with __dirname and __filename (off by default) (on by default in the node environment)
- "no-process-exit": 0, // disallow process.exit() (on by default in the node environment)
- "no-restricted-modules": 1, // restrict usage of specified node modules (off by default)
- "no-sync": 0, // disallow use of synchronous methods (off by default)
-
- // Stylistic Issues
- // These rules are purely matters of style and are quite subjective.
-
- "key-spacing": 0,
- "comma-spacing": 0,
- "no-multi-spaces": 0,
- "brace-style": 0, // enforce one true brace style (off by default)
- "camelcase": 1, // require camel case names
- "consistent-this": [1, "self"], // enforces consistent naming when capturing the current execution context (off by default)
- "eol-last": 1, // enforce newline at the end of file, with no multiple empty lines
- "func-names": 0, // require function expressions to have a name (off by default)
- "func-style": 0, // enforces use of function declarations or expressions (off by default)
- "new-cap": 0, // require a capital letter for constructors
- "new-parens": 1, // disallow the omission of parentheses when invoking a constructor with no arguments
- "no-nested-ternary": 0, // disallow nested ternary expressions (off by default)
- "no-array-constructor": 1, // disallow use of the Array constructor
- "no-lonely-if": 0, // disallow if as the only statement in an else block (off by default)
- "no-new-object": 1, // disallow use of the Object constructor
- "no-spaced-func": 1, // disallow space between function identifier and application
- "semi-spacing": 1, // disallow space before semicolon
- "no-ternary": 0, // disallow the use of ternary operators (off by default)
- "no-trailing-spaces": 1, // disallow trailing whitespace at the end of lines
- "no-underscore-dangle": 0, // disallow dangling underscores in identifiers
- "no-mixed-spaces-and-tabs": 1, // disallow mixed spaces and tabs for indentation
- "quotes": [1, "single"], // specify whether double or single quotes should be used
- "quote-props": 0, // require quotes around object literal property names (off by default)
- "semi": 0, // require or disallow use of semicolons instead of ASI
- "sort-vars": 0, // sort variables within the same declaration block (off by default)
- "keyword-spacing": 1, // require a space after certain keywords (off by default)
- "space-in-brackets": 0, // require or disallow spaces inside brackets (off by default)
- "space-in-parens": 0, // require or disallow spaces inside parentheses (off by default)
- "space-infix-ops": 1, // require spaces around operators
- "max-nested-callbacks": 0, // specify the maximum depth callbacks can be nested (off by default)
- "one-var": 0, // allow just one var statement per function (off by default)
- "wrap-regex": 0, // require regex literals to be wrapped in parentheses (off by default)
-
- // Legacy
- // The following rules are included for compatibility with JSHint and JSLint. While the names of the rules may not match up with the JSHint/JSLint counterpart, the functionality is the same.
-
- "max-depth": 0, // specify the maximum depth that blocks can be nested (off by default)
- "max-len": 0, // specify the maximum length of a line in your program (off by default)
- "max-params": 0, // limits the number of parameters that can be used in the function declaration. (off by default)
- "max-statements": 0, // specify the maximum number of statement allowed in a function (off by default)
- "no-bitwise": 0, // disallow use of bitwise operators (off by default)
- "no-plusplus": 0 // disallow use of unary operators, ++ and -- (off by default)
- }
-}
-
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e988d1b..c18a256 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,15 @@ This change log adheres to standards from [Keep a CHANGELOG].
[Semantic Versioning]: http://semver.org/
[Keep a CHANGELOG]: http://keepachangelog.com
+## [1.2.1] 2021-06-03
+
+### :rocket: Enhancement
+* All rules are now updated to `sublime-color-scheme`.
+* Slightly lighten minimap color.
+
+### :house: Internal
+* Update installation information.
+
## [1.2.0] 2021-06-03
#### :rocket: Enhancement
@@ -37,6 +46,7 @@ This change log adheres to standards from [Keep a CHANGELOG].
* Add Scrollbars (Whoa, magical!)
* Support for 'Skins' plugin.
+[1.2.1]: https://github.com/erremauro/TwoDark/compare/v1.2.0...v1.2.1
[1.2.0]: https://github.com/erremauro/TwoDark/compare/v1.1.2...v1.2.0
[1.1.2]: https://github.com/erremauro/TwoDark/compare/v1.1.1...v1.1.2
[1.1.1]: https://github.com/erremauro/TwoDark/compare/v1.1.0...v1.1.1
diff --git a/README.md b/README.md
index 8e01774..675798d 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,10 @@
# TwoDark
-It's like [OneDark][2] for Atom, but it's called [TwoDark][1] and works with
-[Sublime Text][3].
+Atom's OneDark-UI inspired theme for [Sublime Text][3].
## Why?
-Even if other [OneDark][2] inspired theme for Sublime Text exists,
+Even if other OneDark inspired theme for Sublime Text exists,
I felt that they were all missing– for their own reasons –some of the details that I liked from the original. That's why I decided to roll the version that I wanted to use.
I hope you enjoy it.
@@ -50,21 +49,11 @@ preferences. (or ⌘, on Mac)
"draw_shadows": false,
"highlight_modified_tabs": true,
"caret_extra_width": 1,
+ "caret_style": "smooth",
}
```
-## Credits and Thanks
-
-- GitHub for OneDark, Atom and all the good stuff.
-- [Jannik Siebert][4] for the original App Icon design.
-- [IceTimux][5] for [OneDark Color Scheme][6]
-
-
[1]: https://erremauro.github.io/TwoDark
-[2]: https://github.com/atom/one-dark-ui
[3]: http://www.sublimetext.com
-[4]: https://dribbble.com/janniks
-[5]: https://github.com/IceTimux/
-[6]: https://github.com/IceTimux/one-dark-sublime-text-3-color-scheme
[screenshot]: screenshots/TwoDark.png
[zip]: https://github.com/erremauro/TwoDark/archive/master.zip
diff --git a/TwoDark.sublime-color-scheme b/TwoDark.sublime-color-scheme
index 5c1b5a0..4a0f7c6 100644
--- a/TwoDark.sublime-color-scheme
+++ b/TwoDark.sublime-color-scheme
@@ -3,135 +3,102 @@
"author": "Roberto Mauro ",
"variables":
{
- "rm_blue": "hsl(220, 13%, 18%)",
- "rm_blue1": "hsl(220, 100%, 66%)",
- "rm_blue2": "#2B313A",
- "rm_blue3": "#3D4350",
- "rm_blue4": "#5C6370",
- "rm_white": "hsl(219, 14%, 71%)",
"black": "hsl(0, 0%, 0%)",
- "blue": "hsl(207, 82%, 66%)",
- "blue2": "hsl(209, 13%, 35%)",
- "blue3": "hsl(210, 15%, 24%)",
- "blue4": "hsl(210, 13%, 45%)",
- "blue5": "hsl(187, 47%, 55%)",
- "blue6": "hsl(221, 12%, 69%)",
- "green": "hsl(95, 38%, 62%)",
- "grey": "hsl(0, 0%, 20%)",
- "orange": "hsl(39, 67%, 69%)",
- "orange2": "hsl(29, 54%, 61%)",
- "orange3": "hsl(40, 94%, 68%)",
+ "darker_grey": "hsl(220, 13%, 18%)",
+ "dark_grey": "hsl(216, 15%, 20%)",
+ "grey": "hsl(221, 13%, 28%)",
+ "light_grey": "hsl(219, 10%, 40%)",
+ "light_grey2": "hsl(209, 13%, 35%",
+ "lighter_grey": "hsl(206, 11%, 45%)",
+ "white": "hsl(219, 14%, 71%)",
"pink": "hsl(286, 60%, 67%)",
+ "lighter_orange": "hsl(21, 93%, 66%)",
+ "ligh_orange": "hsl(19, 59%, 57%)",
+ "orange": "hsl(29, 54%, 61%)",
+ "light_red": "hsl(359, 83%, 71%)",
"red": "hsl(355, 65%, 65%)",
- "red2": "hsl(13, 93%, 66%)",
- "white": "hsl(0, 0%, 100%)",
- "white2": "hsl(0, 0%, 97%)",
- "white3": "hsl(219, 28%, 88%)"
+ "deep_red": "hsla(5, 48%, 51%, 1)",
+ "electric_blue": "hsl(220, 100%, 66%)",
+ "blue": "hsl(207, 82%, 66%)",
+ "cyan": "hsl(187, 47%, 55%)",
+ "yellow": "hsl(40, 94%, 68%)",
+ "green": "hsl(95, 38%, 62%)",
+ "mocha": "hsla(55, 5%, 43%)"
},
"globals":
{
- "foreground": "var(rm_white)",
- "background": "var(rm_blue)",
- "invisibles": "#65737e",
- "caret": "var(rm_blue1)",
- "line_highlight": "var(rm_blue2)",
- "selection": "var(rm_blue3)",
- "selection_border":"#4f5b66",
- "inactive_selection": "var(blue2)",
+ "foreground": "var(white)",
+ "background": "var(darker_grey)",
+ "invisibles": "var(lighter_grey)",
+ "caret": "var(electric_blue)",
+ "line_highlight": "var(dark_grey)",
+ "selection": "var(grey)",
+ "selection_border":"var(light_grey2)",
+ "inactive_selection": "var(light_grey2)",
"misspelling": "var(red)",
"shadow": "color(var(black) alpha(0.25))",
- "active_guide": "var(blue5)",
- "stack_guide": "color(var(blue5) alpha(0.5))",
- "highlight": "var(blue5)",
+ "active_guide": "var(cyan)",
+ "stack_guide": "color(var(cyan) alpha(0.5))",
+ "highlight": "var(cyan)",
"find_highlight_foreground": "var(grey)",
- "find_highlight": "var(orange3)",
+ "find_highlight": "var(yellow)",
"brackets_options": "underline",
- "brackets_foreground": "var(orange)",
+ "brackets_foreground": "var(cyan)",
"bracket_contents_options": "underline",
- "bracket_contents_foreground": "var(blue5)",
+ "bracket_contents_foreground": "var(cyan)",
"tags_options": "stippled_underline",
"tags_foreground": "var(pink)"
},
"rules":
[
{
- "name": "Comment",
- "scope": "comment, punctuation.definition.comment",
- "foreground": "var(rm_blue4)"
- },
- {
- "name": "Delimiters",
- "foreground": "#ABB2BF"
- },
- {
- "name": "String",
- "scope": "string, punctuation.definition.string",
- "foreground": "var(green)"
- },
- {
- "name": "Punctuation",
- "scope": "punctuation.definition",
- "foreground": "var(blue5)"
- },
- {
- "name": "Number",
- "scope": "constant.numeric",
- "foreground": "#D19A66"
+ "scope": "variable.parameter.function",
+ "foreground": "var(white)"
},
{
- "name": "Built-in constant",
- "scope": "constant.language",
- "foreground": "var(red)",
+ "scope": "comment, punctuation.definition.comment",
+ "foreground": "var(light_grey)",
"font_style": "italic"
},
{
- "name": "User-defined constant",
- "scope": "constant.character, constant.other",
- "foreground": "var(pink)"
- },
- {
- "scope": "variable",
- "foreground": "var(red)"
+ "name": "Delimiters",
+ "scope": "none",
+ "foreground": "var(white)"
},
{
- "name": "Member Variable",
- "scope": "variable.member",
- "foreground": "var(red)"
+ "name": "Operator",
+ "scope": "keyword.operator",
+ "foreground": "var(white)"
},
{
"name": "Keyword",
- "scope": "keyword - keyword.operator, keyword.operator.word",
+ "scope": "keyword",
"foreground": "var(pink)"
},
{
- "name": "Operators",
- "scope": "keyword.operator",
- "foreground": "var(rm_white)"
- },
- {
- "name": "Punctuation",
- "scope": "punctuation.separator, punctuation.terminator",
- "foreground": "var(rm_white)"
+ "name": "Variable",
+ "scope": "variable",
+ "foreground": "var(red)"
},
{
- "name": "Punctuation",
- "scope": "punctuation.section",
- "foreground": "var(rm_white)"
+ "name": "Functions",
+ "scope": "entity.name.function, meta.require, support.function.any-method",
+ "foreground": "var(blue)"
},
{
- "name": "Accessor",
- "scope": "punctuation.accessor",
- "foreground": "var(blue6)"
+ "name": "Classes",
+ "scope": "support.class, entity.name.class, entity.name.type.class",
+ "foreground": "var(yellow)"
},
{
- "name": "Annotation Punctuation",
- "scope": "punctuation.definition.annotation",
- "foreground": "var(blue5)"
+ "name": "Classes",
+ "scope": "meta.class",
+ "foreground": "var(white)"
},
{
- "name": "JavaScript Dollar",
- "scope": "variable.other.dollar.only.js, variable.other.object.dollar.only.js, variable.type.dollar.only.js, support.class.dollar.only.js",
- "foreground": "var(blue5)"
+ "name": "Methods",
+ "scope": "keyword.other.special-method",
+ "foreground": "var(blue)"
},
{
"name": "Storage",
@@ -139,196 +106,199 @@
"foreground": "var(pink)"
},
{
- "name": "Storage type",
- "scope": "storage.type",
- "foreground": "var(pink)",
+ "name": "Support",
+ "scope": "support.function",
+ "foreground": "var(cyan)"
},
{
- "name": "Entity name",
- "scope": "entity.name.function",
- "foreground": "var(blue)"
+ "name": "Strings, Inherited Class",
+ "scope": "string, constant.other.symbol, entity.other.inherited-class",
+ "foreground": "var(green)"
},
{
- "name": "Entity name",
- "scope": "entity.name - (entity.name.section | entity.name.tag | entity.name.label)",
+ "name": "Integers",
+ "scope": "constant.numeric",
"foreground": "var(orange)"
},
{
- "name": "Inherited class",
- "scope": "entity.other.inherited-class",
- "foreground": "var(green)",
- "font_style": ""
+ "name": "Floats",
+ "scope": "none",
+ "foreground": "var(orange)"
},
{
- "name": "Function argument",
- "scope": "variable.parameter.function",
- "foreground": "var(rm_white)"
+ "name": "Boolean",
+ "scope": "none",
+ "foreground": "var(orange)"
},
{
- "name": "Language variable",
- "scope": "variable.language",
- "foreground": "var(red)",
- "font_style": "italic"
+ "name": "Constant",
+ "scope": "constant",
+ "foreground": "var(orange)"
},
{
- "name": "Tag name",
+ "name": "Tags",
"scope": "entity.name.tag",
"foreground": "var(red)"
},
{
- "name": "Tag attribute",
+ "name": "Attributes",
"scope": "entity.other.attribute-name",
- "foreground": "var(orange2)"
+ "foreground": "var(orange)"
},
{
- "name": "Function call",
- "scope": "variable.function, variable.annotation",
- "foreground": "var(red)"
+ "name": "Attributes IDs",
+ "scope": "entity.other.attribute-name.id, punctuation.definition.entity",
+ "foreground": "var(orange)"
},
{
- "name": "Library function",
- "scope": "support.function, support.macro",
- "foreground": "var(blue5)",
- "font_style": ""
+ "name": "Selector",
+ "scope": "meta.selector",
+ "foreground": "var(pink)"
},
{
- "name": "Library constant",
- "scope": "support.constant",
- "foreground": "var(pink)",
- "font_style": ""
+ "name": "Values",
+ "scope": "none",
+ "foreground": "var(orange)"
},
{
- "name": "Library class/type",
- "scope": "support.type, support.class",
- "foreground": "var(blue)",
- "font_style": "italic"
+ "name": "Headings",
+ "scope": "markup.heading punctuation.definition.heading, entity.name.section",
+ "foreground": "var(blue)"
},
{
- "name": "Invalid",
- "scope": "invalid",
- "foreground": "var(white2)",
- "background": "var(red)"
+ "name": "Units",
+ "scope": "keyword.other.unit",
+ "foreground": "var(orange)"
},
{
- "name": "Invalid deprecated",
- "scope": "invalid.deprecated",
- "foreground": "var(white2)",
- "background": "var(orange2)"
+ "name": "Bold",
+ "scope": "markup.bold, punctuation.definition.bold",
+ "foreground": "var(orange)"
},
{
- "name": "YAML Key",
- "scope": "entity.name.tag.yaml",
- "foreground": "var(blue5)"
+ "name": "Italic",
+ "scope": "markup.italic, punctuation.definition.italic",
+ "foreground": "var(pink)"
},
{
- "name": "YAML String",
- "scope": "source.yaml string.unquoted",
- "foreground": "var(white3)"
+ "name": "Code",
+ "scope": "markup.raw.inline",
+ "foreground": "var(green)"
},
{
- "name": "markup headings",
- "scope": "markup.heading",
- "font_style": "bold"
+ "name": "Link Text",
+ "scope": "string.other.link, punctuation.definition.string.end.markdown",
+ "foreground": "var(red)"
},
{
- "name": "markup headings",
- "scope": "markup.heading punctuation.definition.heading, entity.name.section",
- "foreground": "var(blue)"
+ "name": "Link Url",
+ "scope": "meta.link",
+ "foreground": "var(orange)"
},
{
- "name": "markup links",
- "scope": "string.other.link, markup.underline.link, punctuation.definition",
- "foreground": "var(orange)"
+ "name": "Lists",
+ "scope": "markup.list",
+ "foreground": "var(red)"
},
{
- "name": "markup bold",
- "scope": "markup.bold, text punctuation.definition.bold",
- "font_style": "bold",
+ "name": "Quotes",
+ "scope": "markup.quote",
"foreground": "var(orange)"
},
{
- "name": "markup italic",
- "scope": "markup.italic, text punctuation.definition.italic",
- "font_style": "italic",
- "foreground": "var(pink)"
+ "name": "Separator",
+ "scope": "meta.separator",
+ "foreground": "var(white)",
+ "background": "var(grey)"
},
{
- "name": "markup bold/italic",
- "scope": "markup.italic markup.bold | markup.bold markup.italic",
- "font_style": "bold italic",
+ "name": "diff:Inserted",
+ "scope": "markup.inserted",
+ "foreground": "var(green)"
},
{
- "name": "markup hr",
- "scope": "punctuation.definition.thematic-break",
- "foreground": "var(orange)"
+ "name": "diff:Deleted",
+ "scope": "markup.deleted",
+ "foreground": "var(red)"
},
{
- "name": "markup list",
- "scope": "markup.list, markup.list punctuation.definition.list_item",
- "foreground": "var(red)"
+ "name": "diff:Changed",
+ "scope": "markup.changed",
+ "foreground": "var(pink)"
},
{
- "name": "markup blockquote",
- "scope": "markup.quote, markup.quote punctuation.definition.blockquote",
- "foreground": "var(orange)"
+ "name": "Colors",
+ "scope": "constant.other.color",
+ "foreground": "var(cyan)"
},
{
- "name": "markup code",
- "scope": "markup.raw.inline, markup.raw.inline punctuation.definition",
- "foreground": "var(green)"
- }, {
- "name": "diff.header",
- "scope": "meta.diff, meta.diff.header",
- "foreground": "var(pink)"
+ "name": "Regular Expression",
+ "scope": "string.regexp",
+ "foreground": "var(cyan)"
},
{
- "name": "diff.deleted",
- "scope": "markup.deleted",
- "foreground": "var(red)"
+ "name": "Escape Characters",
+ "scope": "constant.character.escape",
+ "foreground": "var(cyan)"
},
{
- "name": "diff.inserted",
- "scope": "markup.inserted",
- "foreground": "var(green)"
+ "name": "Embedded",
+ "scope": "punctuation.section.embedded, variable.interpolation",
+ "foreground": "var(deep_red)"
},
{
- "name": "diff.changed",
- "scope": "markup.changed",
- "foreground": "var(orange)"
+ "name": "Illegal",
+ "scope": "invalid.illegal",
+ "background": "var(light_red)",
+ "foreground": "var(dark_grey)",
},
{
- "name": "CSS Properties",
- "scope": "support.type.property-name",
- "foreground": "var(white3)"
+ "name": "Broken",
+ "scope": "invalid.broken",
+ "background": "var(lighter_orange)",
+ "foreground": "var(darker_grey)"
},
{
- "scope": "constant.numeric.line-number.match",
- "foreground": "var(red)"
+ "name": "Deprecated",
+ "scope": "invalid.deprecated",
+ "background": "var(light_orange)",
+ "foreground": "var(darker_grey)",
},
{
- "scope": "message.error",
- "foreground": "var(red)"
+ "name": "Unimplemented",
+ "scope": "invalid.unimplemented",
+ "background": "var(mocha)",
+ "foreground": "var(darker_grey)"
},
-
{
- "scope": "diff.deleted",
- "background": "hsla(357, 45%, 60%, 0.15)",
- "foreground_adjust": "l(+ 5%)"
+ "name": "Javascript Dollar",
+ "scope": "variable.other.dollar.only.js, variable.other.object.dollar.only.js, variable.type.dollar.only.js, support.class.dollar.only.js",
+ "foreground": "var(white)"
+ },
+ {
+ "name": "Python logical keyword",
+ "scope": "source.python keyword.operator.logical.python",
+ "foreground": "var(pink)"
},
{
- "scope": "diff.deleted.char",
- "background": "hsla(357, 60%, 60%, 0.30)",
- "foreground_adjust": "l(+ 10%)"
+ "name": "Python function parameter",
+ "scope": "meta.function-call.python, meta.function.parameters.python, variable.parameter.function.python",
+ "foreground": "var(orange)"
},
{
- "scope": "diff.inserted",
- "background": "hsla(180, 45%, 60%, 0.15)",
- "foreground_adjust": "l(+ 5%)"
+ "name": "Python class begin",
+ "scope": "source.python meta.class.python punctuation.definition.inheritance.begin.python",
+ "foreground": "var(orange)"
},
{
- "scope": "diff.inserted.char",
- "background": "hsla(180, 60%, 60%, 0.30)",
- "foreground_adjust": "l(+ 10%)"
- }
+ "name": "Python class end",
+ "scope": "source.python meta.class.python punctuation.definition.inheritance.end.python",
+ "foreground": "var(orange)"
+ },
+ {
+ "name": "Javascript meta constant",
+ "scope": "source.js meta.function.js support.constant.js",
+ "foreground": "var(orange)"
+ },
]
}
diff --git a/TwoDark.sublime-theme b/TwoDark.sublime-theme
index 19ffff6..7e3572a 100644
--- a/TwoDark.sublime-theme
+++ b/TwoDark.sublime-theme
@@ -295,8 +295,8 @@
//
{
"class": "minimap_control",
- "settings": ["always_show_minimap_viewport"],
- "viewport_color": [255, 255, 255, 15],
+ "settings": ["!always_show_minimap_viewport"],
+ "viewport_color": [255, 255, 255, 10],
},
//
// LABELS
@@ -646,7 +646,7 @@
},
{
"class": "quick_panel",
- "row_padding": [5, 2],
+ "row_padding": [10, 2],
"layer0.tint": [157, 165, 180],
"layer0.opacity": 1.0,
"dark_content": true,
@@ -698,7 +698,6 @@
//
// CODE COMPLETION DROPDOWN
//
-
{
"class": "popup_control",
"content_margin": [0,0],
diff --git a/gulp.config.js b/gulp.config.js
deleted file mode 100644
index 110e1b5..0000000
--- a/gulp.config.js
+++ /dev/null
@@ -1,33 +0,0 @@
-var svgPath = './src/svg'
- , tmp = './.tmp'
- , destPath = process.env['NODE_ENV'] === 'debug' ? tmp : './'
- , gfx = { prefix: 'gfx' }
- , icons = { prefix: 'icns' }
-
-gfx = Object.assign(gfx, {
- src: svgPath + '/' + gfx.prefix + '_*.svg',
- dest: destPath + 'TwoDark',
-})
-
-icons = Object.assign(icons, {
- src: svgPath + '/' + icons.prefix + '_*.svg',
- dest: destPath + 'icons',
-})
-
-var config = {
- gfx: gfx,
- icons: icons,
- theme: './TwoDark.sublime-theme',
- iconsPrefs: './icons/Prefs',
- svgPath: svgPath,
- allSvg: svgPath + '/*.svg',
- tmp: tmp,
- patterns: {
- images: /(Theme\s-\sTwoDark\/TwoDark\/)(.+\.png)/g,
- imagesDir: /(Theme\s-\sTwoDark\/TwoDark\/)/i,
- gfxFiles: /^gfx_.+\.svg/gi,
- icnsFiles: /^icns_.+\.svg/gi
- }
-}
-
-module.exports = config
\ No newline at end of file
diff --git a/gulpfile.js b/gulpfile.js
deleted file mode 100644
index 2497e55..0000000
--- a/gulpfile.js
+++ /dev/null
@@ -1,123 +0,0 @@
-var fs = require( 'fs-extra' )
- , es = require('event-stream')
- , path = require( 'path' )
- , gulp = require( 'gulp' )
- , gulpLoadPlugins = require( 'gulp-load-plugins' )
- , svg2png = require( './lib/gulp-svg2png' )
- , TaskUtil = require('./lib/task-util')
- , config = require( './gulp.config.js' )
-var $ = gulpLoadPlugins()
-
-// Monitor svg changes and rebuild changed file.
-gulp.task( 'watch', function() {
- TaskUtil.log( 'Monitoring file changes at ' + config.svgPath )
- var opts = {
- ignoreInitial: true,
- events: [ 'add', 'change' ]
- }
- return $.watch( config.allSvg, opts, function( file ) {
- var basename = path.basename( file.path )
- if ( basename.match( config.patterns.gfxFiles ) ) {
- return build( file.path, config.gfx.dest, config.gfx.prefix )
- }
- else if ( basename.match( config.patterns.icnsFiles ) ) {
- return build( file.path, config.icons.dest, config.icons.prefix )
- }
- })
-})
-
-// Build all graphic files and icons.
-gulp.task( 'default', [ 'build-gfx', 'build-icons' ] )
-
-// Build all graphic files.
-gulp.task( 'build-gfx', function() {
- TaskUtil.log( 'Building graphic files...' )
- return build( config.gfx.src, config.gfx.dest, config.gfx.prefix )
-})
-
-// Build all icon files.
-gulp.task( 'build-icons', function() {
- TaskUtil.log( 'Building icon files...' )
- return build( config.icons.src, config.icons.dest, config.icons.prefix )
-})
-
-// Compress source svg files.
-gulp.task( 'compress', function() {
- TaskUtil.log( 'Compressing svg sources...' )
- return gulp.src( config.allSvg )
- .pipe( $.svgmin() )
- .pipe( gulp.dest( './') )
-})
-
-// Clean built graphic and icons from unwanted files.
-gulp.task( 'cleanup', function() {
- TaskUtil.log( 'Removing unwanted files from built images...' )
- return TaskUtil.getThemeImages().then( function( themeImages ) {
- themeImages = themeImages.concat(
- TaskUtil.copyImagesWithFactor( themeImages, 2 )
- )
- var graphics = TaskUtil.readDirs( config.gfx.dest )
- var unwanted = TaskUtil.arrDiff( graphics, themeImages )
- if ( unwanted.length > 0 ) {
- for ( var i = 0; i < unwanted.length; i++ ) {
- fs.unlinkSync( config.gfx.dest + '/' + unwanted[i] )
- }
- }
- })
-})
-
-// Safe delete all graphic files and icons.
-gulp.task( 'clean-all', function() {
- TaskUtil.log( 'Cleaning the project...' )
- return TaskUtil.cleanDirs( [ config.gfx.dest, config.icons.dest ] )
-})
-
-// List missing graphic files
-gulp.task( 'missing', [ 'missing-icons' ], function() {
- return TaskUtil.getThemeImages().then( function( themeImages ) {
- themeImages = themeImages.concat(
- TaskUtil.copyImagesWithFactor( themeImages, 2 )
- )
-
- var graphics = TaskUtil.readDirs( config.gfx.dest )
- var missing = TaskUtil.arrDiff( themeImages, graphics )
-
- TaskUtil.printMissing( missing, 'graphics' )
- })
-})
-
-
-gulp.task( 'missing-icons', function() {
- return TaskUtil.getThemeIcons().then( function( expectedIcons ) {
- var icons = TaskUtil.readDirs( config.icons.dest )
- var missing = TaskUtil.arrDiff( expectedIcons, icons )
-
- TaskUtil.printMissing( missing, 'icons' )
- })
- .fail( function( err ) {
- throw err
- })
-})
-
-/**
- * Convert all svg files at `path` to `.png`
- * Rendered files are built for standard and retina resolutions.
- * @param {!string|Vinyl} file - Source glob, file path or Vinyl file.
- * @param {!string} dest - Destination glob or directory path.
- * @param {!string} prefix - Type prefix (i.e. gfx|icns)
- * @returns {Stream}
- */
-function build( file, dest, prefix ) {
- var changedSvg = typeof file === 'string' ? gulp.src( file ) : file
- var standard = changedSvg
- .pipe( svg2png() )
- .pipe( $.rename( function( pngFile ) {
- pngFile.basename = TaskUtil.rename( pngFile.basename, prefix + '_' )
- } ) )
- var retina = changedSvg
- .pipe( svg2png( { factor: 2 } ) )
- .pipe( $.rename( function( pngFile ) {
- pngFile.basename = TaskUtil.rename( pngFile.basename, prefix + '_', 2 )
- } ) )
- return es.merge( standard, retina ).pipe( gulp.dest( dest ) )
-}
diff --git a/messages.json b/messages.json
index 383c548..ad061aa 100644
--- a/messages.json
+++ b/messages.json
@@ -3,5 +3,6 @@
"1.1.0": "messages/1.1.0.txt",
"1.1.1": "messages/1.1.1.txt",
"1.1.2": "messages/1.1.2.txt",
- "1.2.0": "messages/1.2.0.txt"
+ "1.2.0": "messages/1.2.0.txt",
+ "1.2.1": "messages/1.2.1.txt"
}
diff --git a/messages/1.2.0.txt b/messages/1.2.0.txt
index 94dce12..ad5dfe5 100644
--- a/messages/1.2.0.txt
+++ b/messages/1.2.0.txt
@@ -10,14 +10,15 @@ preferences and make the following changes:
Please note that the new color scheme could have small inconsistencies here
and there that are planned to be fixed in future versions.
-You're welcome to submit any issue or even better a fix at https://github.com/erremauro/TwoDark
+You're welcome to submit any issue or even better a fix at
+https://github.com/erremauro/TwoDark
TwoDark Changelog
==================
## [1.2.0] 2021-06-03
-### Enhancements
+### Enhancement
* Convert color theme to `sublime-color-scheme`.
* Add @3x retina icons resolution.
diff --git a/messages/1.2.1.txt b/messages/1.2.1.txt
new file mode 100644
index 0000000..8ff37e7
--- /dev/null
+++ b/messages/1.2.1.txt
@@ -0,0 +1,49 @@
+TwoDark v1.2.1 is here!
+
+This version migrate to `sublime-color-scheme` format! Head over to your
+preferences and make the following changes:
+
+ {
+ "theme": "TwoDark.sublime-theme",
+ "color_scheme": "Packages/Theme - TwoDark/TwoDark.sublime-color-scheme",
+ "draw_shadows": false,
+ "highlight_modified_tabs": true,
+ "caret_extra_width": 1,
+ "caret_style": "smooth",
+ }
+
+TwoDark Changelog
+==================
+
+## [1.2.1] 2021-06-03
+
+### Enhancement
+* All rules are now updated to `sublime-color-scheme`.
+* Slightly lighten minimap color.
+
+### Internal
+* Update installation information.
+
+## [1.2.0] 2021-06-03
+
+### Enhancement
+
+* Convert color theme to `sublime-color-scheme`.
+* Add @3x retina icons resolution.
+
+### BugFix
+
+* Fix Sidebar icons color.
+
+## [1.1.1] 2016-12-08
+
+### Enhancement
+
+* Scrollbars background color has been darkened to match the general ui palette.
+
+## [1.1.0] 2016-12-08
+
+### Enhancement
+
+* Add Scrollbars (Whoa, magical!)
+* Support for 'Skins' plugin.
diff --git a/messages/install.txt b/messages/install.txt
index 382aceb..b1b973e 100644
--- a/messages/install.txt
+++ b/messages/install.txt
@@ -1,11 +1,12 @@
-In life I took many forms and seen many places.
+Thank you for choosing TwoDark!
-Now I've traveled through time and space just to meet **you** at the perfect time, in the perfect place. I'm install.txt
+If you find any issue or you'd like to collaborate to the project,
+head over https://github.com/erremauro/TwoDark.git
-How to Activate
-===============
+## Configurations
-To activate the UI Theme and Color Scheme, modify you user preferences by selecting: `Sublime Text` -> Preferences -> Settings - User
+To activate the UI Theme and Color Scheme, modify you user preferences by
+selecting: `Sublime Text` -> Preferences -> Settings - User
{
"theme": "TwoDark.sublime-theme",
@@ -13,7 +14,7 @@ To activate the UI Theme and Color Scheme, modify you user preferences by select
"draw_shadows": false,
"highlight_modified_tabs": true,
"caret_extra_width": 1,
+ "caret_style": "smooth",
}
Restart Sublime Text after activating the theme.
-
diff --git a/package.json b/package.json
index 32add46..59ce825 100644
--- a/package.json
+++ b/package.json
@@ -1,8 +1,12 @@
{
"name": "TwoDark",
- "version": "1.2.0",
+ "version": "1.2.1",
"description": "It's like OneDark for Atom, but it's called TwoDark and works for SublimeText",
- "main": "build.js",
+ "author": "Roberto Mauro ",
+ "homepage": "https://github.com/erremauro/TwoDark#readme",
+ "license": "MIT",
+ "bugs": "https://github.com/erremauro/TwoDark/issues",
+ "main": "scripts/build.js",
"scripts": {
"build": "node scripts/build",
"convert-gfx": "node scripts/convert-gfx.js",
@@ -12,6 +16,9 @@
"type": "git",
"url": "git+https://github.com/erremauro/TwoDark.git"
},
+ "engines": {
+ "node": ">=14.17.0"
+ },
"keywords": [
"theme",
"sublime",
@@ -22,12 +29,6 @@
"editor",
"packagecontrol"
],
- "author": "Roberto Mauro ",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/erremauro/TwoDark/issues"
- },
- "homepage": "https://github.com/erremauro/TwoDark#readme",
"dependencies": {
"glob": "^7.1.7",
"sharp": "^0.28.3"