 module.exports =
 class Search extends SearchBase
   propertiesToRestoreOnReopen: ['projects']
+
+  getRange: (point, filePath) =>
+    if @isRegExpSearch
+      null
+    else
+      Range.fromPointWithDelta(point, 0, @searchTerm.length)
 
   checkReady: ->
     if @options.currentProject

  flattenSortAndSetRangeHint: (items) =>
    items = _.flatten(items)
    items = _.sortBy items, (item) -> item.filePath
    searchTermLength = @searchTerm.length
    for item in items
      item.setRangeHint({@isRegExpSearch, searchTermLength})
    return items

  getItems: (filePath) ->

      items.push(new Item(parsed))

class Item
  constructor: (parsed, project) ->
    {row, column, @filePath, @text} = parsed
    @point = new Point(row, column)
    @filePath = path.join(project, @filePath) if project

  setRangeHint: (@getRange) ->
  # this.range is populated on-need via @setRange which is externally set by provider.
  Object.defineProperty @prototype, 'range',
    get: ->
      @_range ?= @getRange(@point, @filePath)

search = ({command, args, project, filePath}) ->
  options =
