Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

Commit

Permalink
Merge pull request #84 from atom/revert-82-dsifford-function-params-fix
Browse files Browse the repository at this point in the history
Revert "Improve mixin scopes"
  • Loading branch information
50Wliu committed Nov 1, 2017
2 parents c244ada + b5b3438 commit 0a4a8df
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 327 deletions.
290 changes: 25 additions & 265 deletions grammars/less.cson
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@
'include': '#strings'
}
{
'include': '#mixins'
'captures':
'1':
'name': 'entity.other.attribute-name.class.mixin.css'
'match': '(\\.[_a-zA-Z][a-zA-Z0-9_-]*(?=\\())'
}
{
'captures':
Expand Down Expand Up @@ -216,7 +219,11 @@
]
}
{
'include': '#variables'
'match': '(@|\\-\\-)[\\w-]+(?=\\s*)'
'name': 'variable.other.less'
'captures':
'1':
'name': 'punctuation.definition.variable.less'
}
{
'include': '#variable_interpolation'
Expand Down Expand Up @@ -263,10 +270,12 @@
"name": "keyword.other.important.css"
}
{
'include': '#operators'
'match': '\\*|\\/|\\-|\\+|~|=|<=|>=|<|>'
'name': 'keyword.operator.less'
}
{
'include': '#logical_operators'
'match': '\\b(not|and|when)\\b'
'name': 'keyword.control.logical.operator.less'
}
{
'include': 'source.css#tag-names'
Expand Down Expand Up @@ -311,13 +320,22 @@
'name': 'punctuation.separator.key-value.css'
}
{
'include': '#booleans'
# true is truthy, everything else is false: there is no 'false' keyword
# http://lesscss.org/features/#mixin-guards-feature-guard-comparison-operators
'match': '\\btrue\\b'
'name': 'constant.language.boolean.less'
}
{
'match': '\\bdefault\\b'
'name': 'support.function.default.less'
}
{
'include': '#function_type_checking'
'match': '\\b(isurl|isstring|isnumber|iskeyword|iscolor)\\b'
'name': 'support.function.type-checking.less'
}
{
'include': '#function_unit_checking'
'match': '\\b(isunit|ispixel|ispercentage|isem)\\b'
'name': 'support.function.unit-checking.less'
}
{
'include': 'source.css#property-keywords'
Expand All @@ -336,17 +354,6 @@
}
]
'repository':
'booleans':
# true is truthy, everything else is false: there is no 'false' keyword
# http://lesscss.org/features/#mixin-guards-feature-guard-comparison-operators
'match': '\\btrue\\b'
'name': 'constant.language.boolean.less'
'variables':
'match': '(@|\\-\\-)[\\w-]+'
'name': 'variable.other.less'
'captures':
'1':
'name': 'punctuation.definition.variable.less'
'variable_interpolation':
'match': '@{[a-zA-Z0-9_-]+}'
'name': 'variable.other.interpolation.less'
Expand Down Expand Up @@ -396,12 +403,6 @@
'brace_round':
'match': '\\(|\\)'
'name': 'meta.brace.round.css'
'operators':
'match': '\\*|\\/|\\-|\\+|~|=|<=|>=|<|>'
'name': 'keyword.operator.less'
'logical_operators':
'match': '\\b(not|and|when)\\b'
'name': 'keyword.control.logical.operator.less'
'property_values':
'begin': '(?<!&)(:)\\s*(?!(\\s*{))(?!.*(?<!@){)'
'beginCaptures':
Expand Down Expand Up @@ -455,244 +456,3 @@
'less_builtin_functions':
'match': '\\b(abs|acos|alpha|argb|asin|atan|average|blue|calc|ceil|color|contrast|convert|convert|cos|darken|data-uri|desaturate|difference|e|escape|exclusion|extract|fade|fadein|fadeout|floor|format|green|greyscale|hardlight|hsl|hsla|hsv|hsva|hsvhue|hsvsaturation|hsvvalue|hue|length|lighten|lightness|luma|max|min|mix|mod|multiply|negation|overlay|percentage|pi|pow|red|replace|round|saturate|saturation|screen|sin|softlight|spin|sqrt|tan|unit)\\b'
'name': 'support.function.any-method.builtin.less'
'function_type_checking':
'begin': '\\b(isurl|isstring|isnumber|iskeyword|iscolor)(\\()'
'beginCaptures':
'1':
'name': 'support.function.type-checking.less'
'2':
'name': 'meta.brace.round.css'
'end': '\\)'
'endCaptures':
'0':
'name': 'meta.brace.round.css'
'patterns': [
{
'include': '#property_values'
}
{
'include': '#variables'
}
]
'function_default':
'match': '\\b(default)(\\()(\\))'
'captures':
'1':
'name': 'support.function.default.less'
'2':
'name': 'meta.brace.round.css'
'3':
'name': 'meta.brace.round.css'
'function_unit_checking':
'begin': '\\b(isunit|ispixel|ispercentage|isem)(\\()'
'beginCaptures':
'1':
'name': 'support.function.unit-checking.less'
'2':
'name': 'meta.brace.round.css'
'end': '\\)'
'endCaptures':
'0':
'name': 'meta.brace.round.css'
'patterns': [
{
'include': '#property_values'
}
{
'include': '#variables'
}
]
'mixins':
'name': 'meta.mixin.less'
'begin': '((\\.)[_a-zA-Z][a-zA-Z0-9_-]*)(?=\\s*\\()'
'beginCaptures':
'0':
'name': 'meta.definition.mixin.less'
'1':
'name': 'entity.name.mixin.less'
'2':
'name': 'punctuation.definition.mixin.less'
'end': '(?<=})'
'patterns': [
{
'include': '#mixin_parameters'
}
{
'include': '#mixin_guards'
}
{
'include': '$self'
}
]
'mixin_parameters':
'name': 'meta.parameters.less'
'begin': '\\((?=\\s*@|\\))'
'beginCaptures':
'0':
'name': 'punctuation.definition.parameters.begin.bracket.round.less'
'end': '\\)'
'endCaptures':
'0':
'name': 'punctuation.definition.parameters.end.bracket.round.less'
'patterns': [
{
'include': '#mixin_parameter_semicolon'
}
{
'include': '#mixin_parameter_comma'
}
{
'include': '#mixin_parameter'
}
]
'mixin_parameter_semicolon':
'begin': '(@)[a-zA-Z][a-zA-Z0-9-]*(?=.*?;)'
'beginCaptures':
'0':
'name': 'variable.parameter.less'
'1':
'name': 'punctuation.definition.variable.less'
'end': ';'
'endCaptures':
'0':
'name': 'punctuation.separator.parameter.less'
'patterns': [
{
'match': ':'
'name': 'punctuation.separator.key-value.less'
}
{
'include': 'source.css#numeric-values'
}
{
'include': 'source.css#color-keywords'
}
{
'include': 'source.css#functions'
}
{
'include': '#less_builtin_functions'
}
{
'include': 'source.css#property-keywords'
}
{
'include': '#strings'
}
{
'include': 'source.css#commas'
}
]
'mixin_parameter_comma':
'begin': '(@)[a-zA-Z][a-zA-Z0-9-]*(?=.*?,\\s*@)'
'beginCaptures':
'0':
'name': 'variable.parameter.less'
'1':
'name': 'punctuation.definition.variable.less'
'end': ',(?=\\s*@)'
'endCaptures':
'0':
'name': 'punctuation.separator.parameter.less'
'patterns': [
{
'match': ':'
'name': 'punctuation.separator.key-value.less'
}
{
'include': 'source.css#numeric-values'
}
{
'include': 'source.css#color-keywords'
}
{
'include': 'source.css#functions'
}
{
'include': '#less_builtin_functions'
}
{
'include': 'source.css#property-keywords'
}
{
'include': '#strings'
}
]
'mixin_parameter':
'begin': '(@)[a-zA-Z][a-zA-Z0-9-]*'
'beginCaptures':
'0':
'name': 'variable.parameter.less'
'1':
'name': 'punctuation.definition.variable.less'
'end': '(?=\\))'
'patterns': [
{
'match': ':'
'name': 'punctuation.separator.key-value.less'
}
{
'include': 'source.css#numeric-values'
}
{
'include': 'source.css#color-keywords'
}
{
'include': 'source.css#functions'
}
{
'include': '#less_builtin_functions'
}
{
'include': 'source.css#property-keywords'
}
{
'include': '#strings'
}
{
'include': 'source.css#commas'
}
]
'mixin_guards':
'name': 'meta.guard.less'
'begin': '(?:(when|and|when\\s+not|and\\s+not)\\s*|(,)\\s*)+(\\()'
'beginCaptures':
'1':
'name': 'keyword.control.logical.operator.less'
'2':
'name': 'punctuation.separator.list.comma.css'
'3':
'name': 'meta.brace.round.css'
'end': '\\)'
'endCaptures':
'0':
'name': 'meta.brace.round.css'
'patterns': [
{
'include': '#function_type_checking'
}
{
'include': '#function_default'
}
{
'include': '#function_unit_checking'
}
{
'include': '#property_values'
}
{
'include': '#variables'
}
{
'include': 'source.css#numeric-values'
}
{
'include': '#booleans'
}
{
'include': '#strings'
}
{
'include': '#operators'
}
]
Loading

0 comments on commit 0a4a8df

Please sign in to comment.