From d90aea620bf51d66ad6b93d7f5bb98d33de9a57e Mon Sep 17 00:00:00 2001 From: Sean Wood Date: Mon, 30 Jan 2017 08:14:40 +0200 Subject: [PATCH 1/2] Prevent non-custom-property completions in variable scopes --- lib/provider.coffee | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) mode change 100644 => 100755 lib/provider.coffee diff --git a/lib/provider.coffee b/lib/provider.coffee old mode 100644 new mode 100755 index 7bd6e8a..a652a4b --- a/lib/provider.coffee +++ b/lib/provider.coffee @@ -24,16 +24,17 @@ module.exports = scopes = request.scopeDescriptor.getScopesArray() isSass = hasScope(scopes, 'source.sass') - if @isCompletingValue(request) - completions = @getPropertyValueCompletions(request) - else if @isCompletingPseudoSelector(request) - completions = @getPseudoSelectorCompletions(request) - else - if isSass and @isCompletingNameOrTag(request) - completions = @getPropertyNameCompletions(request) - .concat(@getTagCompletions(request)) - else if not isSass and @isCompletingName(request) - completions = @getPropertyNameCompletions(request) + if not @isCompletingCustomProperty(request) + if @isCompletingValue(request) + completions = @getPropertyValueCompletions(request) + else if @isCompletingPseudoSelector(request) + completions = @getPseudoSelectorCompletions(request) + else + if isSass and @isCompletingNameOrTag(request) + completions = @getPropertyNameCompletions(request) + .concat(@getTagCompletions(request)) + else if not isSass and @isCompletingName(request) + completions = @getPropertyNameCompletions(request) if not isSass and @isCompletingTagSelector(request) tagCompletions = @getTagCompletions(request) @@ -55,6 +56,12 @@ module.exports = {@pseudoSelectors, @properties, @tags} = JSON.parse(content) unless error? return + isCompletingCustomProperty: ({scopeDescriptor}) -> + scopes = scopeDescriptor.getScopesArray() + + (hasScope(scopes, 'variable.css')) or + (hasScope(scopes, 'meta.function.variable.css')) + isCompletingValue: ({scopeDescriptor, bufferPosition, prefix, editor}) -> scopes = scopeDescriptor.getScopesArray() From 5c370a1513728960b173ebf9e7bf4036d2636cb8 Mon Sep 17 00:00:00 2001 From: Sean Wood Date: Mon, 30 Jan 2017 21:25:25 +0200 Subject: [PATCH 2/2] Fix unfavourable syntax --- lib/provider.coffee | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/provider.coffee b/lib/provider.coffee index a652a4b..993aaf1 100755 --- a/lib/provider.coffee +++ b/lib/provider.coffee @@ -24,7 +24,7 @@ module.exports = scopes = request.scopeDescriptor.getScopesArray() isSass = hasScope(scopes, 'source.sass') - if not @isCompletingCustomProperty(request) + unless @isCompletingCustomProperty(request) if @isCompletingValue(request) completions = @getPropertyValueCompletions(request) else if @isCompletingPseudoSelector(request) @@ -59,8 +59,8 @@ module.exports = isCompletingCustomProperty: ({scopeDescriptor}) -> scopes = scopeDescriptor.getScopesArray() - (hasScope(scopes, 'variable.css')) or - (hasScope(scopes, 'meta.function.variable.css')) + hasScope(scopes, 'variable.css') or + hasScope(scopes, 'meta.function.variable.css') isCompletingValue: ({scopeDescriptor, bufferPosition, prefix, editor}) -> scopes = scopeDescriptor.getScopesArray()