   getPattern: ->
     @pattern
 
-  getFilters: ->
-    filters = []
-    isEscaped = ({range}) => isEscapedCharRange(@editor, range)
-    filters.push(isEscaped)
-    filters
-
   scanPair: (which, direction, from, fn) ->
     switch direction
       when 'forward'

    stack = []
    range = null
    @scanPair which, direction, from, (event) =>
      if @getPairState(event) isnt which
        stack.push(event)
      else
        topEvent = stack.pop()
        if fn(stack, topEvent)
          range = event.range
          event.stop()

    return range

  findCloseForward: (from, {allowForwarding}={}) ->
    @findPair 'close', 'forward', from, (stack, openEvent) ->
      unless openEvent?
        return true

      if stack.length is 0
        {start} = openEvent.range
        start.isEqual(from) or (allowForwarding and start.row is from.row)

  findOpenBackward: (from) ->
    @findPair 'open', 'backward', from, (stack, openEvent) ->
      stack.length is 0

  find: (from, options) ->

        scanRange = new Range([0, 0], from)
        scanFunctionName = 'backwardsScanInBufferRange'

    @editor[scanFunctionName] @getPattern(), scanRange, (event) =>
      if not @allowNextLine and (from.row isnt event.range.start.row)
        event.stop()
        return

      if isEscapedCharRange(@editor, event.range)
        return

      fn(event)

