   handleUserSnippetsDidChange: ->
     userSnippetsPath = @getUserSnippetsPath()
     atom.config.transact =>
-      @clearSnippetsForPath(userSnippetsPath)
+      @clearUnparsedSnippetsForPath(userSnippetsPath)
       @loadSnippetsFile userSnippetsPath, (result) =>
         @add(userSnippetsPath, result)
 

    longestPrefixMatch

  getSnippets: (editor) ->
    @snippetsByPrefixForScopes(editor.getLastCursor().getScopeDescriptor())

  snippetToExpandUnderCursor: (editor) ->
    return false unless editor.getLastSelection().isEmpty()

    settingsBySelector[selector] = value
    @scopedPropertyStore.addProperties(path, settingsBySelector, priority: @priorityForSource(path))

  clearUnparsedSnippetsForPath: (path) ->
    for scopeSelector of @scopedPropertyStore.propertiesForSource(path)
      settings = @scopedPropertyStore.propertiesForSourceAndSelector(path, scopeSelector)
      @scopedPropertyStore.removePropertiesForSourceAndSelector(path, scopeSelector)

  parsedSnippetsByPrefixForScope: (descriptor) ->
    scopeDescriptor = ScopeDescriptor.fromObject(descriptor)
    unparsedSnippetsByPrefix = @scopedPropertyStore.getPropertyValue(scopeDescriptor.getScopeChain(), "snippets")
    unparsedSnippetsByPrefix ?= {}
    snippets = {}
    for prefix, attributes of unparsedSnippetsByPrefix
      continue if typeof attributes?.body isnt 'string'

      {name, body, bodyTree, description, descriptionMoreURL} = attributes
