From d312f2b940d48b855c2aebbb4edec2b02fa263f0 Mon Sep 17 00:00:00 2001 From: Erich Gamma Date: Tue, 11 Jul 2017 11:02:08 +0200 Subject: [PATCH 1/9] Add a schema association for babelrc #30380 --- extensions/javascript/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extensions/javascript/package.json b/extensions/javascript/package.json index b8c76ba64aaf2..b0c0aed37229d 100644 --- a/extensions/javascript/package.json +++ b/extensions/javascript/package.json @@ -102,14 +102,14 @@ "fileMatch": "bower.json", "url": "http://json.schemastore.org/bower" }, - { - "fileMatch": ".bower.json", - "url": "http://json.schemastore.org/bower" - }, { "fileMatch": ".bowerrc", "url": "http://json.schemastore.org/bowerrc" }, + { + "fileMatch": ".babelrc", + "url": "http://json.schemastore.org/babelrc" + }, { "fileMatch": "jsconfig.json", "url": "http://json.schemastore.org/jsconfig" From 3e124d8eba63cf71ffead137847f94ac378af669 Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 11 Jul 2017 17:48:27 +0800 Subject: [PATCH 2/9] [php] update grammar --- extensions/php/syntaxes/php.tmLanguage.json | 47 +++++++---- .../php/test/colorize-results/test_php.json | 80 +++++++++++++++++-- 2 files changed, 104 insertions(+), 23 deletions(-) diff --git a/extensions/php/syntaxes/php.tmLanguage.json b/extensions/php/syntaxes/php.tmLanguage.json index 8b457cf3c6f9c..aa2c416530237 100644 --- a/extensions/php/syntaxes/php.tmLanguage.json +++ b/extensions/php/syntaxes/php.tmLanguage.json @@ -4,7 +4,7 @@ "If you want to provide a fix or improvement, please create a pull request against the original repository.", "Once accepted there, we are happy to receive an update request." ], - "version": "https://github.com/atom/language-php/commit/e1290265f3d68316347e0ab2665686016b4b24b7", + "version": "https://github.com/atom/language-php/commit/16d8c3ea6f30c808e270a7be02a33e27ed19eed0", "scopeName": "text.html.php", "name": "PHP", "fileTypes": [ @@ -449,6 +449,10 @@ { "include": "#comments" }, + { + "match": ",", + "name": "punctuation.separator.delimiter.php" + }, { "begin": "(?xi)\n(array) # Typehint\n\\s+((&)?\\s*(\\$+)[a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*) # Variable name with possible reference\n\\s*(=)\\s*(array)\\s*(\\() # Default value", "beginCaptures": { @@ -535,21 +539,34 @@ } }, { - "begin": "(?xi)\n([a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*) # Typehinted class name\n\\s*((&)?\\s*(\\.\\.\\.)?(\\$+)[a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*) # Variable name with possible reference", + "begin": "(?xi)\n(\\\\?(?:[a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*\\\\)*) # Optional namespace\n([a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*) # Typehinted class name\n\\s+((&)?\\s*(\\.\\.\\.)?(\\$+)[a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*) # Variable name with possible reference", "beginCaptures": { "1": { - "name": "storage.type.php" + "name": "support.other.namespace.php", + "patterns": [ + { + "match": "(?i)[a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*", + "name": "storage.type.php" + }, + { + "match": "\\\\", + "name": "punctuation.separator.inheritance.php" + } + ] }, "2": { - "name": "variable.other.php" + "name": "storage.type.php" }, "3": { - "name": "storage.modifier.reference.php" + "name": "variable.other.php" }, "4": { - "name": "keyword.operator.variadic.php" + "name": "storage.modifier.reference.php" }, "5": { + "name": "keyword.operator.variadic.php" + }, + "6": { "name": "punctuation.definition.variable.php" } }, @@ -1760,13 +1777,10 @@ "name": "keyword.control.exception.php" }, { - "begin": "(?i)\\b(function)\\s*(&)?\\s*(?=\\()", + "begin": "(?i)\\b(function)\\s*(?=\\()", "beginCaptures": { "1": { "name": "storage.type.function.php" - }, - "2": { - "name": "storage.modifier.reference.php" } }, "end": "(?={)", @@ -1829,7 +1843,7 @@ ] }, { - "begin": "(?x)\n((?:(?:final|abstract|public|private|protected|static)\\s+)*)\n(function)\n\\s*(&)?\\s*\n(?i:\n (__(?:call|construct|debugInfo|destruct|get|set|isset|unset|tostring|\n clone|set_state|sleep|wakeup|autoload|invoke|callStatic))\n |([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)\n)\n\\s*(\\()", + "begin": "(?x)\n((?:(?:final|abstract|public|private|protected|static)\\s+)*)\n(function)\\s+\n(?i:\n (__(?:call|construct|debugInfo|destruct|get|set|isset|unset|tostring|\n clone|set_state|sleep|wakeup|autoload|invoke|callStatic))\n |([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)\n)\n\\s*(\\()", "beginCaptures": { "1": { "patterns": [ @@ -1843,15 +1857,12 @@ "name": "storage.type.function.php" }, "3": { - "name": "storage.modifier.reference.php" - }, - "4": { "name": "support.function.magic.php" }, - "5": { + "4": { "name": "entity.name.function.php" }, - "6": { + "5": { "name": "punctuation.definition.parameters.begin.bracket.round.php" } }, @@ -2099,6 +2110,10 @@ }, { "include": "#constants" + }, + { + "match": ",", + "name": "punctuation.separator.delimiter.php" } ] }, diff --git a/extensions/php/test/colorize-results/test_php.json b/extensions/php/test/colorize-results/test_php.json index 997b0b2fbadc0..dcbe3ab7cfa53 100644 --- a/extensions/php/test/colorize-results/test_php.json +++ b/extensions/php/test/colorize-results/test_php.json @@ -550,7 +550,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", @@ -594,7 +605,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", @@ -638,7 +660,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", @@ -683,7 +716,7 @@ }, { "c": ",", - "t": "text.html.php meta.embedded.block.php source.php meta.array.php", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -737,7 +770,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", @@ -781,7 +825,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", @@ -825,7 +880,18 @@ } }, { - "c": ", ", + "c": ",", + "t": "text.html.php meta.embedded.block.php source.php meta.array.php punctuation.separator.delimiter.php", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "text.html.php meta.embedded.block.php source.php meta.array.php", "r": { "dark_plus": "default: #D4D4D4", From ad61de65fc569de88bc10c53e3e126c52de81e9d Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 11 Jul 2017 18:18:26 +0800 Subject: [PATCH 3/9] [scss] update grammar --- extensions/scss/syntaxes/scss.json | 69 +- .../scss/test/colorize-results/test_scss.json | 849 +++++++++++++----- 2 files changed, 651 insertions(+), 267 deletions(-) diff --git a/extensions/scss/syntaxes/scss.json b/extensions/scss/syntaxes/scss.json index d60a4be60eda1..11ae1c1a34e98 100644 --- a/extensions/scss/syntaxes/scss.json +++ b/extensions/scss/syntaxes/scss.json @@ -4,6 +4,7 @@ "If you want to provide a fix or improvement, please create a pull request against the original repository.", "Once accepted there, we are happy to receive an update request." ], + "version": "https://github.com/atom/language-sass/commit/2d8c5f85f3be978ac8fc7a40d11b4c493385a457", "scopeName": "source.css.scss", "name": "SCSS", "fileTypes": [ @@ -67,6 +68,10 @@ }, { "include": "#at_rule_supports" + }, + { + "match": ";", + "name": "punctuation.terminator.rule.css" } ], "repository": { @@ -171,14 +176,14 @@ "begin": "\\s*((@)extend\\b)\\s*", "captures": { "1": { - "name": "keyword.control.at-rule.import.scss" + "name": "keyword.control.at-rule.extend.scss" }, "2": { "name": "punctuation.definition.keyword.scss" } }, "end": "\\s*(?=;)", - "name": "meta.at-rule.import.scss", + "name": "meta.at-rule.extend.scss", "patterns": [ { "include": "#variable" @@ -1069,7 +1074,7 @@ "name": "punctuation.definition.map.end.bracket.round.scss" } }, - "name": "meta.set.variable.map.scss", + "name": "meta.definition.variable.map.scss", "patterns": [ { "include": "#comment_block" @@ -1451,7 +1456,7 @@ } }, "selector_placeholder": { - "match": "(?x)\n(%) # Valid placeholder-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,.\\#)\\[:{>+~|] # - Another selector\n | /\\* # - A block comment\n)", + "match": "(?x)\n(%) # Valid placeholder-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= ; # - End of statement\n | $ # - End of the line\n | [\\s,.\\#)\\[:{>+~|] # - Another selector\n | /\\* # - A block comment\n)", "name": "entity.other.attribute-name.placeholder.css", "captures": { "1": { @@ -1646,32 +1651,48 @@ ] }, "variable_setting": { - "begin": "\\s*(\\$[A-Za-z0-9_-]+\\b)\\s*(:)\\s*", - "captures": { - "1": { - "name": "variable.scss" - }, - "2": { - "name": "punctuation.separator.key-value.scss" + "begin": "(?=\\$[\\w-]+\\s*:)", + "end": ";", + "endCaptures": { + "0": { + "name": "punctuation.terminator.rule.scss" } }, - "end": "\\s*(?=;)", - "name": "meta.set.variable.scss", + "contentName": "meta.definition.variable.scss", "patterns": [ { - "include": "#comment_block" - }, - { - "include": "#comment_line" - }, - { - "include": "#map" - }, - { - "include": "#property_values" + "match": "\\$[\\w-]+(?=\\s*:)", + "name": "variable.scss" }, { - "include": "#variable" + "begin": ":", + "beginCaptures": { + "0": { + "name": "punctuation.separator.key-value.scss" + } + }, + "end": "(?=;)", + "patterns": [ + { + "include": "#comment_block" + }, + { + "include": "#comment_line" + }, + { + "include": "#map" + }, + { + "include": "#property_values" + }, + { + "include": "#variable" + }, + { + "match": ",", + "name": "punctuation.separator.delimiter.scss" + } + ] } ] }, diff --git a/extensions/scss/test/colorize-results/test_scss.json b/extensions/scss/test/colorize-results/test_scss.json index ffcdbc7f034ad..961c9da09121e 100644 --- a/extensions/scss/test/colorize-results/test_scss.json +++ b/extensions/scss/test/colorize-results/test_scss.json @@ -155,7 +155,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -1606,7 +1606,7 @@ } }, { - "c": " color: black;", + "c": " color: black", "t": "source.css.scss", "r": { "dark_plus": "default: #D4D4D4", @@ -1616,6 +1616,17 @@ "hc_black": "default: #FFFFFF" } }, + { + "c": ";", + "t": "source.css.scss punctuation.terminator.rule.css", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, { "c": "}", "t": "source.css.scss", @@ -2321,7 +2332,29 @@ } }, { - "c": " foo: 1px; ", + "c": " foo: 1px", + "t": "source.css.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": ";", + "t": "source.css.scss punctuation.terminator.rule.css", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "source.css.scss", "r": { "dark_plus": "default: #D4D4D4", @@ -2806,7 +2839,7 @@ }, { "c": "$width", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -2817,7 +2850,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2828,7 +2861,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2839,7 +2872,7 @@ }, { "c": "5", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -2850,7 +2883,7 @@ }, { "c": "em", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.em.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css keyword.other.unit.em.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -2861,7 +2894,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2872,7 +2905,7 @@ }, { "c": "$width", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -2883,7 +2916,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2894,7 +2927,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2905,7 +2938,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.begin.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss punctuation.definition.string.begin.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -2916,7 +2949,7 @@ }, { "c": "Second width?", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -2927,7 +2960,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.end.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss punctuation.definition.string.end.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -2938,7 +2971,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -2949,7 +2982,7 @@ }, { "c": "!default", - "t": "source.css.scss meta.set.variable.scss keyword.other.default.scss", + "t": "source.css.scss meta.definition.variable.scss keyword.other.default.scss", "r": { "dark_plus": "keyword: #569CD6", "light_plus": "keyword: #0000FF", @@ -2960,7 +2993,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3015,7 +3048,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3026,7 +3059,7 @@ }, { "c": "$localvar", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3037,7 +3070,7 @@ }, { "c": ":", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3048,7 +3081,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3059,7 +3092,7 @@ }, { "c": "6", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3070,7 +3103,7 @@ }, { "c": "em", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.em.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.em.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -3081,7 +3114,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3158,7 +3191,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3169,7 +3202,7 @@ }, { "c": "$font-size", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3180,7 +3213,7 @@ }, { "c": ":", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3191,7 +3224,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3202,7 +3235,7 @@ }, { "c": "12", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3213,7 +3246,7 @@ }, { "c": "px", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -3224,7 +3257,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3235,7 +3268,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3246,7 +3279,7 @@ }, { "c": "$line-height", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3257,7 +3290,7 @@ }, { "c": ":", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3268,7 +3301,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3279,7 +3312,7 @@ }, { "c": "30", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3290,7 +3323,7 @@ }, { "c": "px", - "t": "source.css.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -3301,7 +3334,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3455,7 +3488,7 @@ }, { "c": "$name", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3466,7 +3499,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3477,7 +3510,7 @@ }, { "c": " foo", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3488,7 +3521,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3499,7 +3532,7 @@ }, { "c": "$attr", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3510,7 +3543,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3521,7 +3554,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3532,7 +3565,7 @@ }, { "c": "border", - "t": "source.css.scss meta.set.variable.scss support.constant.property-value.css", + "t": "source.css.scss meta.definition.variable.scss support.constant.property-value.css", "r": { "dark_plus": "support.constant.property-value: #CE9178", "light_plus": "support.constant.property-value: #0451A5", @@ -3543,7 +3576,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3796,7 +3829,7 @@ }, { "c": "$grid-background-column-color", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -3807,7 +3840,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3818,7 +3851,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3829,7 +3862,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3840,7 +3873,7 @@ }, { "c": "rgba", - "t": "source.css.scss meta.set.variable.scss support.function.misc.scss", + "t": "source.css.scss meta.definition.variable.scss support.function.misc.scss", "r": { "dark_plus": "support.function: #DCDCAA", "light_plus": "support.function: #795E26", @@ -3851,7 +3884,7 @@ }, { "c": "(", - "t": "source.css.scss meta.set.variable.scss punctuation.section.function.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.section.function.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3862,7 +3895,7 @@ }, { "c": "100", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3873,7 +3906,7 @@ }, { "c": ",", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.delimiter.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.delimiter.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3884,7 +3917,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3895,7 +3928,7 @@ }, { "c": "100", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3906,7 +3939,7 @@ }, { "c": ",", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.delimiter.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.delimiter.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3917,7 +3950,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3928,7 +3961,7 @@ }, { "c": "225", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3939,7 +3972,7 @@ }, { "c": ",", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.delimiter.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.delimiter.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3950,7 +3983,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3961,7 +3994,7 @@ }, { "c": "0.25", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -3972,7 +4005,7 @@ }, { "c": ")", - "t": "source.css.scss meta.set.variable.scss punctuation.section.function.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.section.function.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3983,7 +4016,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3994,7 +4027,7 @@ }, { "c": "!default", - "t": "source.css.scss meta.set.variable.scss keyword.other.default.scss", + "t": "source.css.scss meta.definition.variable.scss keyword.other.default.scss", "r": { "dark_plus": "keyword: #569CD6", "light_plus": "keyword: #0000FF", @@ -4005,7 +4038,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5380,7 +5413,7 @@ }, { "c": "$grid-width", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -5391,7 +5424,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5402,7 +5435,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5413,7 +5446,7 @@ }, { "c": "40", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -5424,7 +5457,7 @@ }, { "c": "px", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -5435,7 +5468,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5446,7 +5479,7 @@ }, { "c": "$gutter-width", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -5457,7 +5490,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5468,7 +5501,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5479,7 +5512,7 @@ }, { "c": "10", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -5490,7 +5523,7 @@ }, { "c": "px", - "t": "source.css.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.definition.variable.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -5501,7 +5534,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -5864,7 +5897,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6150,7 +6183,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6161,7 +6194,7 @@ }, { "c": "$family", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -6172,7 +6205,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6183,7 +6216,7 @@ }, { "c": " ", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6194,7 +6227,7 @@ }, { "c": "unquote", - "t": "source.css.scss meta.set.variable.scss support.function.misc.scss", + "t": "source.css.scss meta.definition.variable.scss support.function.misc.scss", "r": { "dark_plus": "support.function: #DCDCAA", "light_plus": "support.function: #795E26", @@ -6205,7 +6238,7 @@ }, { "c": "(", - "t": "source.css.scss meta.set.variable.scss punctuation.section.function.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.section.function.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6216,7 +6249,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.begin.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss punctuation.definition.string.begin.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -6227,7 +6260,7 @@ }, { "c": "Droid+Sans", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -6238,7 +6271,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.end.scss", + "t": "source.css.scss meta.definition.variable.scss string.quoted.double.scss punctuation.definition.string.end.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -6249,7 +6282,7 @@ }, { "c": ")", - "t": "source.css.scss meta.set.variable.scss punctuation.section.function.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.section.function.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6260,7 +6293,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6447,7 +6480,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -6579,7 +6612,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7360,7 +7393,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7371,7 +7404,7 @@ }, { "c": "@", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss punctuation.definition.keyword.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss punctuation.definition.keyword.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -7382,7 +7415,7 @@ }, { "c": "extend", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -7393,7 +7426,7 @@ }, { "c": " .error", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7404,7 +7437,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7844,7 +7877,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7855,7 +7888,7 @@ }, { "c": "@", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss punctuation.definition.keyword.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss punctuation.definition.keyword.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -7866,7 +7899,7 @@ }, { "c": "extend", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -7877,7 +7910,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7888,7 +7921,7 @@ }, { "c": "%", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss entity.other.attribute-name.placeholder.css punctuation.definition.entity.css", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.placeholder.css punctuation.definition.entity.css", "r": { "dark_plus": "entity.other.attribute-name: #9CDCFE", "light_plus": "entity.other.attribute-name: #FF0000", @@ -7899,7 +7932,7 @@ }, { "c": "extreme", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss entity.other.attribute-name.placeholder.css", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.placeholder.css", "r": { "dark_plus": "entity.other.attribute-name: #9CDCFE", "light_plus": "entity.other.attribute-name: #FF0000", @@ -7910,7 +7943,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -7921,7 +7954,7 @@ }, { "c": "!optional", - "t": "source.css.scss meta.property-list.scss meta.at-rule.import.scss keyword.other.optional.scss", + "t": "source.css.scss meta.property-list.scss meta.at-rule.extend.scss keyword.other.optional.scss", "r": { "dark_plus": "keyword: #569CD6", "light_plus": "keyword: #0000FF", @@ -7932,7 +7965,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8020,7 +8053,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8383,7 +8416,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8394,7 +8427,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8405,7 +8438,7 @@ }, { "c": "$x", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -8416,7 +8449,7 @@ }, { "c": ":", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8427,7 +8460,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8438,7 +8471,7 @@ }, { "c": "1", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -8449,7 +8482,7 @@ }, { "c": "px", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -8460,7 +8493,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8471,7 +8504,7 @@ }, { "c": "*", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss keyword.operator.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss keyword.operator.css", "r": { "dark_plus": "keyword.operator: #D4D4D4", "light_plus": "keyword.operator: #000000", @@ -8482,7 +8515,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8493,7 +8526,7 @@ }, { "c": "$x", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -8504,7 +8537,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8768,7 +8801,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8779,7 +8812,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8790,7 +8823,7 @@ }, { "c": "$y", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -8801,7 +8834,7 @@ }, { "c": ":", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8812,7 +8845,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8823,7 +8856,7 @@ }, { "c": "1", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -8834,7 +8867,7 @@ }, { "c": "px", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -8845,7 +8878,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8856,7 +8889,7 @@ }, { "c": "*", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss keyword.operator.css", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss keyword.operator.css", "r": { "dark_plus": "keyword.operator: #D4D4D4", "light_plus": "keyword.operator: #000000", @@ -8867,7 +8900,7 @@ }, { "c": " ", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -8878,7 +8911,7 @@ }, { "c": "$y", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -8889,7 +8922,7 @@ }, { "c": ";", - "t": "source.css.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -9978,7 +10011,7 @@ }, { "c": "$type", - "t": "source.css.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.definition.variable.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -9989,7 +10022,7 @@ }, { "c": ":", - "t": "source.css.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.definition.variable.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -10000,7 +10033,7 @@ }, { "c": " monster", - "t": "source.css.scss meta.set.variable.scss", + "t": "source.css.scss meta.definition.variable.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -10011,7 +10044,7 @@ }, { "c": ";", - "t": "source.css.scss", + "t": "source.css.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11309,7 +11342,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss", + "t": "source.css.scss meta.at-rule.each.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11661,7 +11694,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11672,7 +11705,7 @@ }, { "c": "$i", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -11683,7 +11716,7 @@ }, { "c": ":", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11694,7 +11727,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11705,7 +11738,7 @@ }, { "c": "$i", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -11716,7 +11749,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11727,7 +11760,7 @@ }, { "c": "-", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss keyword.operator.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss keyword.operator.css", "r": { "dark_plus": "keyword.operator: #D4D4D4", "light_plus": "keyword.operator: #000000", @@ -11738,7 +11771,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -11749,7 +11782,7 @@ }, { "c": "2", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -11760,7 +11793,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12431,7 +12464,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12442,7 +12475,7 @@ }, { "c": "$z", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -12453,7 +12486,7 @@ }, { "c": ":", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12464,7 +12497,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12475,7 +12508,7 @@ }, { "c": "100", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -12486,7 +12519,7 @@ }, { "c": "%", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.percentage.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.percentage.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -12497,7 +12530,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12585,7 +12618,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -12695,7 +12728,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -13278,7 +13311,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -13970,7 +14003,18 @@ } }, { - "c": "; ", + "c": ";", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.css", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", @@ -14719,7 +14763,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -15236,7 +15280,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -15390,7 +15434,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -15599,7 +15643,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16754,7 +16798,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16765,7 +16809,7 @@ }, { "c": "$foo", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -16776,7 +16820,7 @@ }, { "c": ":", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss punctuation.separator.key-value.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16787,7 +16831,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16798,7 +16842,7 @@ }, { "c": "1", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -16809,7 +16853,7 @@ }, { "c": "px", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css keyword.other.unit.px.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss constant.numeric.css keyword.other.unit.px.css", "r": { "dark_plus": "keyword.other.unit: #B5CEA8", "light_plus": "keyword.other.unit: #09885A", @@ -16819,8 +16863,8 @@ } }, { - "c": " }", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16830,8 +16874,8 @@ } }, { - "c": " foo: {", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": "}", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16841,8 +16885,96 @@ } }, { - "c": " foo : ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "foo", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-name.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": ": ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "{", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.begin.bracket.curly.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "foo", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": ":", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16853,7 +16985,7 @@ }, { "c": "white", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss support.constant.color.w3c-standard-color-name.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss support.constant.color.w3c-standard-color-name.css", "r": { "dark_plus": "support.constant.color: #CE9178", "light_plus": "support.constant.color: #0451A5", @@ -16863,8 +16995,8 @@ } }, { - "c": " }", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16874,8 +17006,8 @@ } }, { - "c": " foo.bar1 {", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": "}", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16885,8 +17017,8 @@ } }, { - "c": " @extend tr.", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16896,19 +17028,151 @@ } }, { - "c": "default", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss support.constant.property-value.css", + "c": "foo", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-name.scss", "r": { - "dark_plus": "support.constant.property-value: #CE9178", - "light_plus": "support.constant.property-value: #0451A5", + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", "dark_vs": "default: #D4D4D4", - "light_vs": "support.constant.property-value: #0451A5", - "hc_black": "support.constant.property-value: #CE9178" + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": ".", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.other.attribute-name.class.css punctuation.definition.entity.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" + } + }, + { + "c": "bar1", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.other.attribute-name.class.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "{", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.begin.bracket.curly.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "@", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss punctuation.definition.keyword.scss", + "r": { + "dark_plus": "keyword.control: #C586C0", + "light_plus": "keyword.control: #AF00DB", + "dark_vs": "keyword.control: #569CD6", + "light_vs": "keyword.control: #0000FF", + "hc_black": "keyword.control: #C586C0" + } + }, + { + "c": "extend", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss", + "r": { + "dark_plus": "keyword.control: #C586C0", + "light_plus": "keyword.control: #AF00DB", + "dark_vs": "keyword.control: #569CD6", + "light_vs": "keyword.control: #0000FF", + "hc_black": "keyword.control: #C586C0" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "tr", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.name.tag.css", + "r": { + "dark_plus": "entity.name.tag.css: #D7BA7D", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag.css: #D7BA7D", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag.css: #D7BA7D" + } + }, + { + "c": ".", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.class.css punctuation.definition.entity.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" + } + }, + { + "c": "default", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.class.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" } }, { "c": " }", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": " foo", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16918,8 +17182,30 @@ } }, { - "c": " foo.bar2 {", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": ".", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.class.css punctuation.definition.entity.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" + } + }, + { + "c": "bar2", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.other.attribute-name.class.css", + "r": { + "dark_plus": "entity.other.attribute-name.class.css: #D7BA7D", + "light_plus": "entity.other.attribute-name.class.css: #800000", + "dark_vs": "entity.other.attribute-name.class.css: #D7BA7D", + "light_vs": "entity.other.attribute-name.class.css: #800000", + "hc_black": "entity.other.attribute-name.class.css: #D7BA7D" + } + }, + { + "c": " {", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16930,7 +17216,7 @@ }, { "c": " @import ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16941,7 +17227,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.begin.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss string.quoted.double.scss punctuation.definition.string.begin.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -16952,7 +17238,7 @@ }, { "c": "compass", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss string.quoted.double.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss string.quoted.double.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -16963,7 +17249,7 @@ }, { "c": "\"", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss string.quoted.double.scss punctuation.definition.string.end.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss string.quoted.double.scss punctuation.definition.string.end.scss", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -16974,7 +17260,7 @@ }, { "c": " }", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16985,7 +17271,7 @@ }, { "c": " bar: ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -16996,7 +17282,7 @@ }, { "c": "black", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss support.constant.color.w3c-standard-color-name.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss support.constant.color.w3c-standard-color-name.css", "r": { "dark_plus": "support.constant.color: #CE9178", "light_plus": "support.constant.color: #0451A5", @@ -17007,7 +17293,7 @@ }, { "c": "}", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17017,41 +17303,118 @@ } }, { - "c": "/*", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss comment.block.scss punctuation.definition.comment.scss", + "c": "/", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { - "dark_plus": "comment: #608B4E", - "light_plus": "comment: #008000", - "dark_vs": "comment: #608B4E", - "light_vs": "comment: #008000", - "hc_black": "comment: #7CA668" + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" } }, { - "c": " rules without whitespace ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss comment.block.scss", + "c": "*", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.name.tag.wildcard.scss", "r": { - "dark_plus": "comment: #608B4E", - "light_plus": "comment: #008000", - "dark_vs": "comment: #608B4E", - "light_vs": "comment: #008000", - "hc_black": "comment: #7CA668" + "dark_plus": "entity.name.tag: #569CD6", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag: #569CD6", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag: #569CD6" } }, { - "c": "*/", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss comment.block.scss punctuation.definition.comment.scss", + "c": " rules without ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { - "dark_plus": "comment: #608B4E", - "light_plus": "comment: #008000", - "dark_vs": "comment: #608B4E", - "light_vs": "comment: #008000", - "hc_black": "comment: #7CA668" + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" } }, { - "c": "legend {foo{a:s}", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "c": "whitespace", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss support.constant.property-value.css", + "r": { + "dark_plus": "support.constant.property-value: #CE9178", + "light_plus": "support.constant.property-value: #0451A5", + "dark_vs": "default: #D4D4D4", + "light_vs": "support.constant.property-value: #0451A5", + "hc_black": "support.constant.property-value: #CE9178" + } + }, + { + "c": " ", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "*", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.name.tag.wildcard.scss", + "r": { + "dark_plus": "entity.name.tag: #569CD6", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag: #569CD6", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag: #569CD6" + } + }, + { + "c": "/", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.operator.css", + "r": { + "dark_plus": "keyword.operator: #D4D4D4", + "light_plus": "keyword.operator: #000000", + "dark_vs": "keyword.operator: #D4D4D4", + "light_vs": "keyword.operator: #000000", + "hc_black": "keyword.operator: #D4D4D4" + } + }, + { + "c": "legend", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.name.tag.css", + "r": { + "dark_plus": "entity.name.tag.css: #D7BA7D", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag.css: #D7BA7D", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag.css: #D7BA7D" + } + }, + { + "c": " {foo{", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "a", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss entity.name.tag.css", + "r": { + "dark_plus": "entity.name.tag.css: #D7BA7D", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag.css: #D7BA7D", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag.css: #D7BA7D" + } + }, + { + "c": ":s}", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17062,7 +17425,7 @@ }, { "c": "margin-top", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss support.type.property-name.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss support.type.property-name.css", "r": { "dark_plus": "support.type.property-name: #9CDCFE", "light_plus": "support.type.property-name: #FF0000", @@ -17073,7 +17436,7 @@ }, { "c": ":", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17084,7 +17447,7 @@ }, { "c": "0", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.set.variable.scss constant.numeric.css", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss constant.numeric.css", "r": { "dark_plus": "constant.numeric: #B5CEA8", "light_plus": "constant.numeric: #09885A", @@ -17095,7 +17458,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17392,7 +17755,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17403,7 +17766,7 @@ }, { "c": "@", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss punctuation.definition.keyword.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss punctuation.definition.keyword.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -17414,7 +17777,7 @@ }, { "c": "extend", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -17425,7 +17788,7 @@ }, { "c": " .", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17436,7 +17799,7 @@ }, { "c": "#{", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss punctuation.definition.interpolation.begin.bracket.curly.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss punctuation.definition.interpolation.begin.bracket.curly.scss", "r": { "dark_plus": "variable: #9CDCFE", "light_plus": "variable: #001080", @@ -17447,7 +17810,7 @@ }, { "c": "$a", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -17458,7 +17821,7 @@ }, { "c": "}", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss punctuation.definition.interpolation.end.bracket.curly.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss punctuation.definition.interpolation.end.bracket.curly.scss", "r": { "dark_plus": "variable: #9CDCFE", "light_plus": "variable: #001080", @@ -17469,7 +17832,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17480,7 +17843,7 @@ }, { "c": " ", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17491,7 +17854,7 @@ }, { "c": "@", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss punctuation.definition.keyword.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss punctuation.definition.keyword.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -17502,7 +17865,7 @@ }, { "c": "extend", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss keyword.control.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss keyword.control.at-rule.extend.scss", "r": { "dark_plus": "keyword.control: #C586C0", "light_plus": "keyword.control: #AF00DB", @@ -17513,7 +17876,7 @@ }, { "c": " #", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17524,7 +17887,7 @@ }, { "c": "#{", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss punctuation.definition.interpolation.begin.bracket.curly.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss punctuation.definition.interpolation.begin.bracket.curly.scss", "r": { "dark_plus": "variable: #9CDCFE", "light_plus": "variable: #001080", @@ -17535,7 +17898,7 @@ }, { "c": "$a", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss variable.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss variable.scss", "r": { "dark_plus": "variable.scss: #9CDCFE", "light_plus": "variable.scss: #FF0000", @@ -17546,7 +17909,7 @@ }, { "c": "}", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.import.scss variable.interpolation.scss punctuation.definition.interpolation.end.bracket.curly.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.at-rule.extend.scss variable.interpolation.scss punctuation.definition.interpolation.end.bracket.curly.scss", "r": { "dark_plus": "variable: #9CDCFE", "light_plus": "variable: #001080", @@ -17557,7 +17920,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -17964,7 +18327,7 @@ }, { "c": ";", - "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss", + "t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.css", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", From fdf8a61dc22cb030d1f06c739561dc2db59235ba Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 11 Jul 2017 18:26:13 +0800 Subject: [PATCH 4/9] [razor] update grammar (fixes #30084) --- extensions/razor/package.json | 2 +- extensions/razor/syntaxes/cshtml.json | 110 +++++++++++++++++++++----- 2 files changed, 90 insertions(+), 22 deletions(-) diff --git a/extensions/razor/package.json b/extensions/razor/package.json index 1f50b33eeaffd..f2b69806fdeb9 100644 --- a/extensions/razor/package.json +++ b/extensions/razor/package.json @@ -6,7 +6,7 @@ "vscode": "0.10.x" }, "scripts": { - "update-grammar": "node ../../build/npm/update-grammar.js demyte/language-cshtml grammars/cshtml.cson ./syntaxes/cshtml.json" + "update-grammar": "node ../../build/npm/update-grammar.js demyte/language-cshtml grammars/cshtml.json ./syntaxes/cshtml.json" }, "contributes": { "languages": [{ diff --git a/extensions/razor/syntaxes/cshtml.json b/extensions/razor/syntaxes/cshtml.json index 180ad0e68dd23..241e448680099 100644 --- a/extensions/razor/syntaxes/cshtml.json +++ b/extensions/razor/syntaxes/cshtml.json @@ -1,9 +1,10 @@ { "information_for_contributors": [ - "This file has been converted from https://github.com/demyte/language-cshtml/blob/master/grammars/cshtml.cson", + "This file has been converted from https://github.com/demyte/language-cshtml/blob/master/grammars/cshtml.json", "If you want to provide a fix or improvement, please create a pull request against the original repository.", "Once accepted there, we are happy to receive an update request." ], + "version": "https://github.com/demyte/language-cshtml/commit/cbf0e35971324e861247145e92f4cbbe0bc42d0e", "name": "ASP.NET Razor", "scopeName": "text.html.cshtml", "fileTypes": [ @@ -35,21 +36,14 @@ } }, "patterns": [ - { - "name": "string.quoted.single.cshtml", - "match": "'" - }, { "include": "#embedded-code" }, { - "include": "#comments" + "include": "#general-includes" }, { "include": "source.cs" - }, - { - "include": "text.html.basic" } ], "end": "\\}", @@ -59,18 +53,14 @@ } } }, - { - "name": "string.quoted.single.cshtml", - "match": "'" - }, { "include": "#embedded-code" }, { - "include": "#comments" + "include": "#general-includes" }, { - "include": "text.html.basic" + "include": "source.cs" } ], "end": "\\}", @@ -107,17 +97,32 @@ "include": "#embedded-code" }, { - "include": "#comments" + "include": "#general-includes" + } + ], + "end": "(\\n|\\s)", + "comments": "Single statement Razor tags" + }, + { + "begin": "(@\\()", + "captures": { + "0": { + "name": "punctuation.section.embedded.begin.cshtml" + } + }, + "patterns": [ + { + "include": "#embedded-code" }, { - "include": "source.cs" + "include": "#general-includes" }, { - "include": "text.html.basic" + "include": "source.cs" } ], - "end": "(\\n|\\s)", - "comments": "Covers single line Razor tags" + "end": "(\\))", + "comments": "Covers same line Razor statments with embedded C#" }, { "include": "#comments" @@ -139,7 +144,7 @@ }, "patterns": [ { - "include": "#comments" + "include": "#general-includes" } ] }, @@ -152,6 +157,69 @@ }, "end": "\\*@", "name": "comment.block.cshtml" + }, + "line-comments": { + "name": "comment.line.double-slash.cshtml", + "begin": "(\\s*)//", + "end": "$(\\s*)" + }, + "block-comments": { + "name": "comment.block.cshtml", + "begin": "/\\*", + "end": "((?=})|(\\*/))" + }, + "single-quotes": { + "name": "string.quoted.single.cshtml", + "begin": "'", + "end": "'" + }, + "double-quotes": { + "name": "string.quoted.double.cshtml", + "begin": "\"", + "end": "\"", + "patterns": [ + { + "include": "text.html.basic" + } + ] + }, + "round-brackets": { + "name": "string.bracers.round.cshtml", + "begin": "\\(", + "end": "\\)" + }, + "squiggly-brackets": { + "name": "string.bracers.squiggly.cshtml", + "begin": "{", + "end": "}" + }, + "general-includes": { + "patterns": [ + { + "include": "#comments" + }, + { + "include": "#line-comments" + }, + { + "include": "#block-comments" + }, + { + "include": "#round-brackets" + }, + { + "include": "#squiggly-brackets" + }, + { + "include": "#single-quotes" + }, + { + "include": "#double-quotes" + }, + { + "include": "text.html.basic" + } + ] } } } \ No newline at end of file From c5bb500df0055ae1d179aec3f1f404c0459aa02d Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 11 Jul 2017 18:30:03 +0800 Subject: [PATCH 5/9] [razor] update grammar tests --- .../test/colorize-results/test_cshtml.json | 481 +++++++++--------- 1 file changed, 246 insertions(+), 235 deletions(-) diff --git a/extensions/razor/test/colorize-results/test_cshtml.json b/extensions/razor/test/colorize-results/test_cshtml.json index b87c41d8f04a8..2e3dbe31e970a 100644 --- a/extensions/razor/test/colorize-results/test_cshtml.json +++ b/extensions/razor/test/colorize-results/test_cshtml.json @@ -66,7 +66,29 @@ } }, { - "c": " = ", + "c": " ", + "t": "text.html.cshtml section.embedded.source.cshtml", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "=", + "t": "text.html.cshtml section.embedded.source.cshtml keyword.operator.assignment.cs", + "r": { + "dark_plus": "keyword.operator: #D4D4D4", + "light_plus": "keyword.operator: #000000", + "dark_vs": "keyword.operator: #D4D4D4", + "light_vs": "keyword.operator: #000000", + "hc_black": "keyword.operator: #D4D4D4" + } + }, + { + "c": " ", "t": "text.html.cshtml section.embedded.source.cshtml", "r": { "dark_plus": "default: #D4D4D4", @@ -89,7 +111,7 @@ }, { "c": ";", - "t": "text.html.cshtml section.embedded.source.cshtml", + "t": "text.html.cshtml section.embedded.source.cshtml punctuation.terminator.statement.cs", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -143,7 +165,7 @@ } }, { - "c": " = \"\";", + "c": " ", "t": "text.html.cshtml section.embedded.source.cshtml", "r": { "dark_plus": "default: #D4D4D4", @@ -153,6 +175,50 @@ "hc_black": "default: #FFFFFF" } }, + { + "c": "=", + "t": "text.html.cshtml section.embedded.source.cshtml keyword.operator.assignment.cs", + "r": { + "dark_plus": "keyword.operator: #D4D4D4", + "light_plus": "keyword.operator: #000000", + "dark_vs": "keyword.operator: #D4D4D4", + "light_vs": "keyword.operator: #000000", + "hc_black": "keyword.operator: #D4D4D4" + } + }, + { + "c": " ", + "t": "text.html.cshtml section.embedded.source.cshtml", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "\"\"", + "t": "text.html.cshtml section.embedded.source.cshtml string.quoted.double.cshtml", + "r": { + "dark_plus": "string: #CE9178", + "light_plus": "string: #A31515", + "dark_vs": "string: #CE9178", + "light_vs": "string: #A31515", + "hc_black": "string: #CE9178" + } + }, + { + "c": ";", + "t": "text.html.cshtml section.embedded.source.cshtml punctuation.terminator.statement.cs", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, { "c": " ", "t": "text.html.cshtml section.embedded.source.cshtml", @@ -231,7 +297,7 @@ } }, { - "c": " (", + "c": " ", "t": "text.html.cshtml section.embedded.source.cshtml", "r": { "dark_plus": "default: #D4D4D4", @@ -242,18 +308,18 @@ } }, { - "c": "IsPost", - "t": "text.html.cshtml section.embedded.source.cshtml keyword.control.cshtml", + "c": "(IsPost)", + "t": "text.html.cshtml section.embedded.source.cshtml string.bracers.round.cshtml", "r": { - "dark_plus": "keyword.control: #C586C0", - "light_plus": "keyword.control: #AF00DB", - "dark_vs": "keyword.control: #569CD6", - "light_vs": "keyword.control: #0000FF", - "hc_black": "keyword.control: #C586C0" + "dark_plus": "string: #CE9178", + "light_plus": "string: #A31515", + "dark_vs": "string: #CE9178", + "light_vs": "string: #A31515", + "hc_black": "string: #CE9178" } }, { - "c": ") ", + "c": " ", "t": "text.html.cshtml section.embedded.source.cshtml", "r": { "dark_plus": "default: #D4D4D4", @@ -275,30 +341,8 @@ } }, { - "c": " ", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.whitespace.comment.leading.cs", - "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" - } - }, - { - "c": "//", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cs punctuation.definition.comment.cs", - "r": { - "dark_plus": "comment: #608B4E", - "light_plus": "comment: #008000", - "dark_vs": "comment: #608B4E", - "light_vs": "comment: #008000", - "hc_black": "comment: #7CA668" - } - }, - { - "c": " Retrieve the numbers that the user entered.", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cs", + "c": " // Retrieve the numbers that the user entered.", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cshtml", "r": { "dark_plus": "comment: #608B4E", "light_plus": "comment: #008000", @@ -616,30 +660,8 @@ } }, { - "c": " ", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.whitespace.comment.leading.cs", - "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" - } - }, - { - "c": "//", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cs punctuation.definition.comment.cs", - "r": { - "dark_plus": "comment: #608B4E", - "light_plus": "comment: #008000", - "dark_vs": "comment: #608B4E", - "light_vs": "comment: #008000", - "hc_black": "comment: #7CA668" - } - }, - { - "c": " Convert the entered strings into integers numbers and add.", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cs", + "c": " // Convert the entered strings into integers numbers and add.", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml comment.line.double-slash.cshtml", "r": { "dark_plus": "comment: #608B4E", "light_plus": "comment: #008000", @@ -737,25 +759,14 @@ } }, { - "c": "(", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.parenthesis.open.cs", - "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" - } - }, - { - "c": ")", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.parenthesis.close.cs", + "c": "()", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.bracers.round.cshtml", "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" + "dark_plus": "string: #CE9178", + "light_plus": "string: #A31515", + "dark_vs": "string: #CE9178", + "light_vs": "string: #A31515", + "hc_black": "string: #CE9178" } }, { @@ -825,25 +836,14 @@ } }, { - "c": "(", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.parenthesis.open.cs", + "c": "()", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.bracers.round.cshtml", "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" - } - }, - { - "c": ")", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml punctuation.parenthesis.close.cs", - "r": { - "dark_plus": "default: #D4D4D4", - "light_plus": "default: #000000", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "default: #FFFFFF" + "dark_plus": "string: #CE9178", + "light_plus": "string: #A31515", + "dark_vs": "string: #CE9178", + "light_vs": "string: #A31515", + "hc_black": "string: #CE9178" } }, { @@ -870,57 +870,68 @@ }, { "c": "<", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.begin.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { "c": "italic", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.control.cshtml", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html entity.name.tag.other.html", "r": { - "dark_plus": "keyword.control: #C586C0", - "light_plus": "keyword.control: #AF00DB", - "dark_vs": "keyword.control: #569CD6", - "light_vs": "keyword.control: #0000FF", - "hc_black": "keyword.control: #C586C0" + "dark_plus": "entity.name.tag: #569CD6", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag: #569CD6", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag: #569CD6" } }, { - "c": "><", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", + "c": ">", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.end.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" + } + }, + { + "c": "<", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.begin.html", + "r": { + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { "c": "bold", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.control.cshtml", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html entity.name.tag.other.html", "r": { - "dark_plus": "keyword.control: #C586C0", - "light_plus": "keyword.control: #AF00DB", - "dark_vs": "keyword.control: #569CD6", - "light_vs": "keyword.control: #0000FF", - "hc_black": "keyword.control: #C586C0" + "dark_plus": "entity.name.tag: #569CD6", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag: #569CD6", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag: #569CD6" } }, { "c": ">", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.end.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { @@ -968,30 +979,8 @@ } }, { - "c": "\"", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.quoted.double.cs punctuation.definition.string.begin.cs", - "r": { - "dark_plus": "string: #CE9178", - "light_plus": "string: #A31515", - "dark_vs": "string: #CE9178", - "light_vs": "string: #A31515", - "hc_black": "string: #CE9178" - } - }, - { - "c": "Total = ", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.quoted.double.cs", - "r": { - "dark_plus": "string: #CE9178", - "light_plus": "string: #A31515", - "dark_vs": "string: #CE9178", - "light_vs": "string: #A31515", - "hc_black": "string: #CE9178" - } - }, - { - "c": "\"", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.quoted.double.cs punctuation.definition.string.end.cs", + "c": "\"Total = \"", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml string.quoted.double.cshtml", "r": { "dark_plus": "string: #CE9178", "light_plus": "string: #A31515", @@ -1056,80 +1045,69 @@ } }, { - "c": "<", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", - "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" - } - }, - { - "c": "/", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.arithmetic.cs", + "c": "<", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", + "c": ">", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.end.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { - "c": "/", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.arithmetic.cs", + "c": "", - "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml keyword.operator.relational.cs", + "t": "text.html.cshtml section.embedded.source.cshtml section.embedded.source.cshtml meta.tag.other.html punctuation.definition.tag.end.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { @@ -3168,30 +3146,19 @@ } }, { - "c": "<", - "t": "text.html.cshtml keyword.operator.relational.cs", - "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" - } - }, - { - "c": "/", - "t": "text.html.cshtml keyword.operator.arithmetic.cs", + "c": "", - "t": "text.html.cshtml keyword.operator.relational.cs", + "t": "text.html.cshtml meta.tag.block.any.html punctuation.definition.tag.end.html", "r": { - "dark_plus": "keyword.operator: #D4D4D4", - "light_plus": "keyword.operator: #000000", - "dark_vs": "keyword.operator: #D4D4D4", - "light_vs": "keyword.operator: #000000", - "hc_black": "keyword.operator: #D4D4D4" + "dark_plus": "punctuation.definition.tag: #808080", + "light_plus": "punctuation.definition.tag: #800000", + "dark_vs": "punctuation.definition.tag: #808080", + "light_vs": "punctuation.definition.tag: #800000", + "hc_black": "punctuation.definition.tag: #808080" } }, { @@ -3256,8 +3223,52 @@ } }, { - "c": "@(totalMessage+\"!\")", - "t": "text.html.cshtml", + "c": "@(", + "t": "text.html.cshtml punctuation.section.embedded.begin.cshtml", + "r": { + "dark_plus": "default: #D4D4D4", + "light_plus": "default: #000000", + "dark_vs": "default: #D4D4D4", + "light_vs": "default: #000000", + "hc_black": "default: #FFFFFF" + } + }, + { + "c": "totalMessage", + "t": "text.html.cshtml keyword.control.cshtml", + "r": { + "dark_plus": "keyword.control: #C586C0", + "light_plus": "keyword.control: #AF00DB", + "dark_vs": "keyword.control: #569CD6", + "light_vs": "keyword.control: #0000FF", + "hc_black": "keyword.control: #C586C0" + } + }, + { + "c": "+", + "t": "text.html.cshtml keyword.operator.arithmetic.cs", + "r": { + "dark_plus": "keyword.operator: #D4D4D4", + "light_plus": "keyword.operator: #000000", + "dark_vs": "keyword.operator: #D4D4D4", + "light_vs": "keyword.operator: #000000", + "hc_black": "keyword.operator: #D4D4D4" + } + }, + { + "c": "\"!\"", + "t": "text.html.cshtml string.quoted.double.cshtml", + "r": { + "dark_plus": "string: #CE9178", + "light_plus": "string: #A31515", + "dark_vs": "string: #CE9178", + "light_vs": "string: #A31515", + "hc_black": "string: #CE9178" + } + }, + { + "c": ")", + "t": "text.html.cshtml punctuation.section.embedded.begin.cshtml", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3323,7 +3334,7 @@ }, { "c": ".", - "t": "text.html.cshtml punctuation.accessor.cs", + "t": "text.html.cshtml", "r": { "dark_plus": "default: #D4D4D4", "light_plus": "default: #000000", @@ -3334,13 +3345,13 @@ }, { "c": "com", - "t": "text.html.cshtml variable.other.object.property.cs", + "t": "text.html.cshtml entity.name.tag.source.cshtml", "r": { - "dark_plus": "variable: #9CDCFE", - "light_plus": "variable: #001080", - "dark_vs": "default: #D4D4D4", - "light_vs": "default: #000000", - "hc_black": "variable: #9CDCFE" + "dark_plus": "entity.name.tag: #569CD6", + "light_plus": "entity.name.tag: #800000", + "dark_vs": "entity.name.tag: #569CD6", + "light_vs": "entity.name.tag: #800000", + "hc_black": "entity.name.tag: #569CD6" } }, { From c2f967ac1f04ae05e61e21faf1449c100dffda9f Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 11 Jul 2017 18:37:09 +0800 Subject: [PATCH 6/9] [cpp] update grammar --- extensions/cpp/syntaxes/c++.json | 1 + extensions/cpp/syntaxes/c.json | 38 ++++++++++--------- .../test/colorize-results/test-23630_cpp.json | 24 ++++++------ 3 files changed, 33 insertions(+), 30 deletions(-) diff --git a/extensions/cpp/syntaxes/c++.json b/extensions/cpp/syntaxes/c++.json index bc627e3a036f3..4cd5c4e8d91be 100644 --- a/extensions/cpp/syntaxes/c++.json +++ b/extensions/cpp/syntaxes/c++.json @@ -4,6 +4,7 @@ "If you want to provide a fix or improvement, please create a pull request against the original repository.", "Once accepted there, we are happy to receive an update request." ], + "version": "https://github.com/atom/language-c/commit/3a269f88b12e512fb9495dc006a1dabf325d3d7f", "scopeName": "source.cpp", "fileTypes": [ "cc", diff --git a/extensions/cpp/syntaxes/c.json b/extensions/cpp/syntaxes/c.json index b83b31ad22e41..c81bd51eadcfa 100644 --- a/extensions/cpp/syntaxes/c.json +++ b/extensions/cpp/syntaxes/c.json @@ -4,10 +4,12 @@ "If you want to provide a fix or improvement, please create a pull request against the original repository.", "Once accepted there, we are happy to receive an update request." ], + "version": "https://github.com/atom/language-c/commit/0a57fd7ee32bd14e3ee8291434263d744a8ecf1e", "scopeName": "source.c", "fileTypes": [ "c", - "h.in" + "h.in", + "xpm" ], "firstLineMatch": "(?i)-\\*-[^*]*(Mode:\\s*)?C(\\s*;.*?)?\\s*-\\*-", "name": "C", @@ -273,7 +275,7 @@ "include": "#parens" }, { - "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|sizeof|[cr]?iterate|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\s*\\()\n(?=\n (?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\s*\\( # actual name\n |\n (?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\s*\\()\n(?=\n (?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\s*\\( # actual name\n |\n (?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", "end": "(?<=\\))(?!\\w)", "name": "meta.function.c", "patterns": [ @@ -404,7 +406,7 @@ ] }, "c_function_call": { - "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|sizeof|[cr]?iterate)\\s*\\()\n(?=\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\s*\\( # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate)\\s*\\()\n(?=\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\s*\\( # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", "end": "(?<=\\))(?!\\w)", "name": "meta.function-call.c", "patterns": [ @@ -778,7 +780,7 @@ }, "patterns": [ { - "begin": "\\G(?=.)", + "begin": "\\G", "end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\s*\\()\n(?=\n (?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\s*\\( # actual name\n |\n (?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\\s*\\(\n)", "end": "(?<=\\))(?!\\w)|(?=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate)\\s*\\()\n(\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++ # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", "beginCaptures": { "1": { "name": "entity.name.function.c" @@ -1850,7 +1852,7 @@ "include": "#vararg_ellipses" }, { - "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|sizeof|[cr]?iterate)\\s*\\()\n(\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++ # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate)\\s*\\()\n(\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++ # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", "beginCaptures": { "1": { "name": "entity.name.function.c" @@ -1910,7 +1912,7 @@ "include": "#operators" }, { - "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|sizeof|[cr]?iterate)\\s*\\()\n(\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++ # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", + "begin": "(?x)\n(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate)\\s*\\()\n(\n(?:[A-Za-z_][A-Za-z0-9_]*+|::)++ # actual name\n|\n(?:(?<=operator)(?:[-*&<>=+!]+|\\(\\)|\\[\\]))\n)\n\\s*(\\()", "beginCaptures": { "1": { "name": "entity.name.function.c" diff --git a/extensions/cpp/test/colorize-results/test-23630_cpp.json b/extensions/cpp/test/colorize-results/test-23630_cpp.json index f22786a105f5c..0f6ce5827aee3 100644 --- a/extensions/cpp/test/colorize-results/test-23630_cpp.json +++ b/extensions/cpp/test/colorize-results/test-23630_cpp.json @@ -100,24 +100,24 @@ }, { "c": "#", - "t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c punctuation.definition.directive.c", + "t": "source.cpp meta.preprocessor.c", "r": { - "dark_plus": "keyword.control: #C586C0", - "light_plus": "keyword.control: #AF00DB", - "dark_vs": "keyword.control: #569CD6", - "light_vs": "keyword.control: #0000FF", - "hc_black": "keyword.control: #C586C0" + "dark_plus": "meta.preprocessor: #569CD6", + "light_plus": "meta.preprocessor: #0000FF", + "dark_vs": "meta.preprocessor: #569CD6", + "light_vs": "meta.preprocessor: #0000FF", + "hc_black": "meta.preprocessor: #569CD6" } }, { "c": "endif", - "t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c", + "t": "source.cpp meta.preprocessor.c entity.name.function.preprocessor.c", "r": { - "dark_plus": "keyword.control: #C586C0", - "light_plus": "keyword.control: #AF00DB", - "dark_vs": "keyword.control: #569CD6", - "light_vs": "keyword.control: #0000FF", - "hc_black": "keyword.control: #C586C0" + "dark_plus": "entity.name.function: #DCDCAA", + "light_plus": "entity.name.function: #795E26", + "dark_vs": "meta.preprocessor: #569CD6", + "light_vs": "meta.preprocessor: #0000FF", + "hc_black": "entity.name.function: #DCDCAA" } } ] \ No newline at end of file From 2ae81ab6ec6a7b7dfdb391c54d46f1696b21b945 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Tue, 11 Jul 2017 17:33:05 +0200 Subject: [PATCH 7/9] Reverting the changes. Show root as section in when single root. --- .../workbench/parts/files/browser/views/explorerView.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/parts/files/browser/views/explorerView.ts b/src/vs/workbench/parts/files/browser/views/explorerView.ts index 357105eb10a77..3d900ba57fbb6 100644 --- a/src/vs/workbench/parts/files/browser/views/explorerView.ts +++ b/src/vs/workbench/parts/files/browser/views/explorerView.ts @@ -142,7 +142,8 @@ export class ExplorerView extends CollapsibleView { } public get name(): string { - return nls.localize('folders', "Folders"); + const workspace = this.contextService.getWorkspace(); + return workspace.roots.length === 1 ? workspace.name : nls.localize('folders', "Folders"); } public set name(value) { @@ -726,8 +727,6 @@ export class ExplorerView extends CollapsibleView { let targetsToExpand: URI[] = []; if (this.settings[ExplorerView.MEMENTO_EXPANDED_FOLDER_RESOURCES]) { targetsToExpand = this.settings[ExplorerView.MEMENTO_EXPANDED_FOLDER_RESOURCES].map((e: string) => URI.parse(e)); - } else if (this.model.roots.length === 1) { - targetsToExpand = this.model.roots.map(root => root.resource); // always expand single root folder } // First time refresh: Receive target through active editor input or selection and also include settings from previous session @@ -777,7 +776,7 @@ export class ExplorerView extends CollapsibleView { // Subsequent refresh: Merge stat into our local model and refresh tree modelStats.forEach((modelStat, index) => FileStat.mergeLocalWithDisk(modelStat, this.model.roots[index])); - const input = this.model; + const input = this.model.roots.length === 1 ? this.model.roots[0] : this.model; if (input === this.explorerViewer.getInput()) { return this.explorerViewer.refresh(); } @@ -788,6 +787,7 @@ export class ExplorerView extends CollapsibleView { const statsToExpand = expanded.length ? [this.model.roots[0]].concat(expanded) : targetsToExpand.map(expand => this.model.findClosest(expand)); + // Display roots only when there is more than 1 root // Make sure to expand all folders that where expanded in the previous session return this.explorerViewer.setInput(input).then(() => this.explorerViewer.expandAll(statsToExpand)); }, e => TPromise.wrapError(e)); From 38f0dea2b63aa34556e4aba7ff10eb1175e38e11 Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Tue, 11 Jul 2017 17:54:21 +0200 Subject: [PATCH 8/9] fix #29469, remove unsued code --- src/vs/editor/common/modes.ts | 9 +------ .../contrib/quickFix/browser/quickFix.ts | 12 ++++++--- .../quickFix/browser/quickFixCommands.ts | 25 +---------------- .../contrib/quickFix/browser/quickFixModel.ts | 4 +-- .../quickFix/browser/quickFixWidget.ts | 6 ++--- .../test/browser/quickFixModel.test.ts | 2 +- .../standalone/browser/standaloneLanguages.ts | 4 +-- src/vs/monaco.d.ts | 10 +------ .../mainThreadLanguageFeatures.ts | 2 +- src/vs/workbench/api/node/extHost.protocol.ts | 2 +- .../workbench/api/node/extHostApiCommands.ts | 4 +-- .../api/node/extHostLanguageFeatures.ts | 11 +++----- .../api/extHostLanguageFeatures.test.ts | 27 ++++++++++++++++--- 13 files changed, 49 insertions(+), 69 deletions(-) diff --git a/src/vs/editor/common/modes.ts b/src/vs/editor/common/modes.ts index 4d85cdfa5ac5a..4dfb8d548329d 100644 --- a/src/vs/editor/common/modes.ts +++ b/src/vs/editor/common/modes.ts @@ -258,13 +258,6 @@ export interface ISuggestSupport { resolveCompletionItem?(model: editorCommon.IModel, position: Position, item: ISuggestion, token: CancellationToken): ISuggestion | Thenable; } -/** - * Interface used to quick fix typing errors while accesing member fields. - */ -export interface CodeAction { - command: Command; - score: number; -} /** * The code action interface defines the contract between extensions and * the [light bulb](https://code.visualstudio.com/docs/editor/editingevolved#_code-action) feature. @@ -274,7 +267,7 @@ export interface CodeActionProvider { /** * Provide commands for the given document and range. */ - provideCodeActions(model: editorCommon.IReadOnlyModel, range: Range, token: CancellationToken): CodeAction[] | Thenable; + provideCodeActions(model: editorCommon.IReadOnlyModel, range: Range, token: CancellationToken): Command[] | Thenable; } /** diff --git a/src/vs/editor/contrib/quickFix/browser/quickFix.ts b/src/vs/editor/contrib/quickFix/browser/quickFix.ts index 9d50f40a6a82b..6f13bbbc48c55 100644 --- a/src/vs/editor/contrib/quickFix/browser/quickFix.ts +++ b/src/vs/editor/contrib/quickFix/browser/quickFix.ts @@ -7,20 +7,24 @@ import URI from 'vs/base/common/uri'; import { IReadOnlyModel } from 'vs/editor/common/editorCommon'; import { Range } from 'vs/editor/common/core/range'; -import { CodeAction, CodeActionProviderRegistry } from 'vs/editor/common/modes'; +import { Command, CodeActionProviderRegistry } from 'vs/editor/common/modes'; import { asWinJsPromise } from 'vs/base/common/async'; import { TPromise } from 'vs/base/common/winjs.base'; import { onUnexpectedExternalError, illegalArgument } from 'vs/base/common/errors'; import { IModelService } from 'vs/editor/common/services/modelService'; import { CommonEditorRegistry } from 'vs/editor/common/editorCommonExtensions'; -export function getCodeActions(model: IReadOnlyModel, range: Range): TPromise { +export function getCodeActions(model: IReadOnlyModel, range: Range): TPromise { - const allResults: CodeAction[] = []; + const allResults: Command[] = []; const promises = CodeActionProviderRegistry.all(model).map(support => { return asWinJsPromise(token => support.provideCodeActions(model, range, token)).then(result => { if (Array.isArray(result)) { - allResults.push(...result); + for (const quickFix of result) { + if (quickFix) { + allResults.push(quickFix); + } + } } }, err => { onUnexpectedExternalError(err); diff --git a/src/vs/editor/contrib/quickFix/browser/quickFixCommands.ts b/src/vs/editor/contrib/quickFix/browser/quickFixCommands.ts index 1d2106784056f..605591babeb54 100644 --- a/src/vs/editor/contrib/quickFix/browser/quickFixCommands.ts +++ b/src/vs/editor/contrib/quickFix/browser/quickFixCommands.ts @@ -12,16 +12,11 @@ import { IContextMenuService } from 'vs/platform/contextview/browser/contextView import { ContextKeyExpr, IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding'; import { IMarkerService } from 'vs/platform/markers/common/markers'; -import { ICommonCodeEditor, IEditorContribution, IReadOnlyModel } from 'vs/editor/common/editorCommon'; +import { ICommonCodeEditor, IEditorContribution } from 'vs/editor/common/editorCommon'; import { EditorContextKeys } from 'vs/editor/common/editorContextKeys'; -import { Range } from 'vs/editor/common/core/range'; import { editorAction, ServicesAccessor, EditorAction } from 'vs/editor/common/editorCommonExtensions'; import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; import { editorContribution } from 'vs/editor/browser/editorBrowserExtensions'; -import { CodeAction, CodeActionProviderRegistry } from 'vs/editor/common/modes'; -import { asWinJsPromise } from 'vs/base/common/async'; -import { TPromise } from 'vs/base/common/winjs.base'; -import { onUnexpectedExternalError } from 'vs/base/common/errors'; import { QuickFixContextMenu } from './quickFixWidget'; import { LightBulbWidget } from './lightBulbWidget'; import { QuickFixModel, QuickFixComputeEvent } from './quickFixModel'; @@ -135,21 +130,3 @@ export class QuickFixAction extends EditorAction { } } } - - -export function getCodeActions(model: IReadOnlyModel, range: Range): TPromise { - - const allResults: CodeAction[] = []; - const promises = CodeActionProviderRegistry.all(model).map(support => { - return asWinJsPromise(token => support.provideCodeActions(model, range, token)).then(result => { - if (Array.isArray(result)) { - allResults.push(...result); - } - }, err => { - onUnexpectedExternalError(err); - }); - }); - - return TPromise.join(promises).then(() => allResults); -} - diff --git a/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts b/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts index 4688f618cfd0b..702bd002dab18 100644 --- a/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts +++ b/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts @@ -12,7 +12,7 @@ import { TPromise } from 'vs/base/common/winjs.base'; import { IMarker, IMarkerService } from 'vs/platform/markers/common/markers'; import { Range } from 'vs/editor/common/core/range'; import { ICommonCodeEditor } from 'vs/editor/common/editorCommon'; -import { CodeActionProviderRegistry, CodeAction } from 'vs/editor/common/modes'; +import { CodeActionProviderRegistry, Command } from 'vs/editor/common/modes'; import { getCodeActions } from './quickFix'; import { Position } from 'vs/editor/common/core/position'; @@ -126,7 +126,7 @@ export interface QuickFixComputeEvent { type: 'auto' | 'manual'; range: Range; position: Position; - fixes: TPromise; + fixes: TPromise; } export class QuickFixModel { diff --git a/src/vs/editor/contrib/quickFix/browser/quickFixWidget.ts b/src/vs/editor/contrib/quickFix/browser/quickFixWidget.ts index 8c3b5cff5228f..6cd9f41c1b72b 100644 --- a/src/vs/editor/contrib/quickFix/browser/quickFixWidget.ts +++ b/src/vs/editor/contrib/quickFix/browser/quickFixWidget.ts @@ -10,7 +10,7 @@ import { always } from 'vs/base/common/async'; import { getDomNodePagePosition } from 'vs/base/browser/dom'; import { Position } from 'vs/editor/common/core/position'; import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; -import { CodeAction } from 'vs/editor/common/modes'; +import { Command } from 'vs/editor/common/modes'; import { IContextMenuService } from 'vs/platform/contextview/browser/contextView'; import { ICommandService } from 'vs/platform/commands/common/commands'; import { Action } from 'vs/base/common/actions'; @@ -32,10 +32,10 @@ export class QuickFixContextMenu { this._commandService = commandService; } - show(fixes: TPromise, at: { x: number; y: number } | Position) { + show(fixes: TPromise, at: { x: number; y: number } | Position) { const actions = fixes.then(value => { - return value.map(({ command }) => { + return value.map(command => { return new Action(command.id, command.title, undefined, true, () => { return always( this._commandService.executeCommand(command.id, ...command.arguments), diff --git a/src/vs/editor/contrib/quickFix/test/browser/quickFixModel.test.ts b/src/vs/editor/contrib/quickFix/test/browser/quickFixModel.test.ts index fd3484ef05f1c..d6d70dbc2c019 100644 --- a/src/vs/editor/contrib/quickFix/test/browser/quickFixModel.test.ts +++ b/src/vs/editor/contrib/quickFix/test/browser/quickFixModel.test.ts @@ -38,7 +38,7 @@ suite('QuickFix', () => { setup(() => { reg = CodeActionProviderRegistry.register(languageIdentifier.language, { provideCodeActions() { - return [{ command: { id: 'test-command', title: 'test', arguments: [] }, score: 1 }]; + return [{ id: 'test-command', title: 'test', arguments: [] }]; } }); markerService = new MarkerService(); diff --git a/src/vs/editor/standalone/browser/standaloneLanguages.ts b/src/vs/editor/standalone/browser/standaloneLanguages.ts index 176488944508b..833bcf2d4d798 100644 --- a/src/vs/editor/standalone/browser/standaloneLanguages.ts +++ b/src/vs/editor/standalone/browser/standaloneLanguages.ts @@ -329,7 +329,7 @@ export function registerCodeLensProvider(languageId: string, provider: modes.Cod */ export function registerCodeActionProvider(languageId: string, provider: CodeActionProvider): IDisposable { return modes.CodeActionProviderRegistry.register(languageId, { - provideCodeActions: (model: editorCommon.IReadOnlyModel, range: Range, token: CancellationToken): modes.CodeAction[] | Thenable => { + provideCodeActions: (model: editorCommon.IReadOnlyModel, range: Range, token: CancellationToken): modes.Command[] | Thenable => { let markers = StaticServices.markerService.get().read({ resource: model.uri }).filter(m => { return Range.areIntersectingOrTouching(m, range); }); @@ -404,7 +404,7 @@ export interface CodeActionProvider { /** * Provide commands for the given document and range. */ - provideCodeActions(model: editorCommon.IReadOnlyModel, range: Range, context: CodeActionContext, token: CancellationToken): modes.CodeAction[] | Thenable; + provideCodeActions(model: editorCommon.IReadOnlyModel, range: Range, context: CodeActionContext, token: CancellationToken): modes.Command[] | Thenable; } /** diff --git a/src/vs/monaco.d.ts b/src/vs/monaco.d.ts index 7e3864f54b5c6..0fc13a41c8660 100644 --- a/src/vs/monaco.d.ts +++ b/src/vs/monaco.d.ts @@ -4050,7 +4050,7 @@ declare module monaco.languages { /** * Provide commands for the given document and range. */ - provideCodeActions(model: editor.IReadOnlyModel, range: Range, context: CodeActionContext, token: CancellationToken): CodeAction[] | Thenable; + provideCodeActions(model: editor.IReadOnlyModel, range: Range, context: CodeActionContext, token: CancellationToken): Command[] | Thenable; } /** @@ -4425,14 +4425,6 @@ declare module monaco.languages { provideHover(model: editor.IReadOnlyModel, position: Position, token: CancellationToken): Hover | Thenable; } - /** - * Interface used to quick fix typing errors while accesing member fields. - */ - export interface CodeAction { - command: Command; - score: number; - } - /** * Represents a parameter of a callable-signature. A parameter can * have a label and a doc-comment. diff --git a/src/vs/workbench/api/electron-browser/mainThreadLanguageFeatures.ts b/src/vs/workbench/api/electron-browser/mainThreadLanguageFeatures.ts index 03934ca9335e5..57e178733b3da 100644 --- a/src/vs/workbench/api/electron-browser/mainThreadLanguageFeatures.ts +++ b/src/vs/workbench/api/electron-browser/mainThreadLanguageFeatures.ts @@ -157,7 +157,7 @@ export class MainThreadLanguageFeatures extends MainThreadLanguageFeaturesShape $registerQuickFixSupport(handle: number, selector: vscode.DocumentSelector): TPromise { this._registrations[handle] = modes.CodeActionProviderRegistry.register(selector, { - provideCodeActions: (model: IReadOnlyModel, range: EditorRange, token: CancellationToken): Thenable => { + provideCodeActions: (model: IReadOnlyModel, range: EditorRange, token: CancellationToken): Thenable => { return this._heapService.trackRecursive(wireCancellationToken(token, this._proxy.$provideCodeActions(handle, model.uri, range))); } }); diff --git a/src/vs/workbench/api/node/extHost.protocol.ts b/src/vs/workbench/api/node/extHost.protocol.ts index 9b626f9c5c2b7..61e383fedc1e3 100644 --- a/src/vs/workbench/api/node/extHost.protocol.ts +++ b/src/vs/workbench/api/node/extHost.protocol.ts @@ -464,7 +464,7 @@ export abstract class ExtHostLanguageFeaturesShape { $provideHover(handle: number, resource: URI, position: IPosition): TPromise { throw ni(); } $provideDocumentHighlights(handle: number, resource: URI, position: IPosition): TPromise { throw ni(); } $provideReferences(handle: number, resource: URI, position: IPosition, context: modes.ReferenceContext): TPromise { throw ni(); } - $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise { throw ni(); } + $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise { throw ni(); } $provideDocumentFormattingEdits(handle: number, resource: URI, options: modes.FormattingOptions): TPromise { throw ni(); } $provideDocumentRangeFormattingEdits(handle: number, resource: URI, range: IRange, options: modes.FormattingOptions): TPromise { throw ni(); } $provideOnTypeFormattingEdits(handle: number, resource: URI, position: IPosition, ch: string, options: modes.FormattingOptions): TPromise { throw ni(); } diff --git a/src/vs/workbench/api/node/extHostApiCommands.ts b/src/vs/workbench/api/node/extHostApiCommands.ts index 9f3e5af1cbc76..c34a32838b762 100644 --- a/src/vs/workbench/api/node/extHostApiCommands.ts +++ b/src/vs/workbench/api/node/extHostApiCommands.ts @@ -399,11 +399,11 @@ export class ExtHostApiCommands { resource, range: typeConverters.fromRange(range) }; - return this._commands.executeCommand('_executeCodeActionProvider', args).then(value => { + return this._commands.executeCommand('_executeCodeActionProvider', args).then(value => { if (!Array.isArray(value)) { return undefined; } - return value.map(quickFix => this._commands.converter.fromInternal(quickFix.command)); + return value.map(quickFix => this._commands.converter.fromInternal(quickFix)); }); } diff --git a/src/vs/workbench/api/node/extHostLanguageFeatures.ts b/src/vs/workbench/api/node/extHostLanguageFeatures.ts index 2bf60e23f7ae4..cb5ef37adbbfa 100644 --- a/src/vs/workbench/api/node/extHostLanguageFeatures.ts +++ b/src/vs/workbench/api/node/extHostLanguageFeatures.ts @@ -271,7 +271,7 @@ class QuickFixAdapter { this._provider = provider; } - provideCodeActions(resource: URI, range: IRange): TPromise { + provideCodeActions(resource: URI, range: IRange): TPromise { const doc = this._documents.getDocumentData(resource).document; const ran = TypeConverters.toRange(range); @@ -291,12 +291,7 @@ class QuickFixAdapter { if (!Array.isArray(commands)) { return undefined; } - return commands.map((command, i) => { - return { - command: this._commands.toInternal(command), - score: i - }; - }); + return commands.map(command => this._commands.toInternal(command)); }); } } @@ -843,7 +838,7 @@ export class ExtHostLanguageFeatures extends ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise { + $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise { return this._withAdapter(handle, QuickFixAdapter, adapter => adapter.provideCodeActions(resource, range)); } diff --git a/src/vs/workbench/test/electron-browser/api/extHostLanguageFeatures.test.ts b/src/vs/workbench/test/electron-browser/api/extHostLanguageFeatures.test.ts index 3cfcedbac4b3b..bdfb54052d74f 100644 --- a/src/vs/workbench/test/electron-browser/api/extHostLanguageFeatures.test.ts +++ b/src/vs/workbench/test/electron-browser/api/extHostLanguageFeatures.test.ts @@ -650,10 +650,29 @@ suite('ExtHostLanguageFeatures', function () { assert.equal(value.length, 2); let [first, second] = value; - assert.equal(first.command.title, 'Testing1'); - assert.equal(first.command.id, 'test1'); - assert.equal(second.command.title, 'Testing2'); - assert.equal(second.command.id, 'test2'); + assert.equal(first.title, 'Testing1'); + assert.equal(first.id, 'test1'); + assert.equal(second.title, 'Testing2'); + assert.equal(second.id, 'test2'); + }); + }); + }); + + test('Cannot read property \'id\' of undefined, #29469', function () { + + disposables.push(extHost.registerCodeActionProvider(defaultSelector, { + provideCodeActions(): any { + return [ + undefined, + null, + { command: 'test', title: 'Testing' } + ]; + } + })); + + return threadService.sync().then(() => { + return getCodeActions(model, model.getFullModelRange()).then(value => { + assert.equal(value.length, 1); }); }); }); From 7bb3b89031cbce46536ba870868d889d639e12f1 Mon Sep 17 00:00:00 2001 From: Joao Moreno Date: Tue, 11 Jul 2017 18:10:50 +0200 Subject: [PATCH 9/9] increase mooncake blob service timeouts --- build/tfs/common/publish.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/build/tfs/common/publish.ts b/build/tfs/common/publish.ts index e8fa56b7fa35d..a9e51dda74a89 100644 --- a/build/tfs/common/publish.ts +++ b/build/tfs/common/publish.ts @@ -178,6 +178,9 @@ async function publish(commit: string, quality: string, platform: string, type: const mooncakeBlobService = azure.createBlobService(storageAccount, process.env['MOONCAKE_STORAGE_ACCESS_KEY'], `${storageAccount}.blob.core.chinacloudapi.cn`) .withFilter(new azure.ExponentialRetryPolicyFilter(20)); + // mooncake is fussy and far away, this is needed! + mooncakeBlobService.defaultClientRequestTimeoutInMs = 10 * 60 * 1000; + await Promise.all([ assertContainer(blobService, quality), assertContainer(mooncakeBlobService, quality)