         retVal.push(matchesMatching[winner])
       @matches = retVal
 
+    if @matches.length == 0 and @startUp
+      @editor.setCursorBufferPosition(@startUpPos)
+
+
 
   execute: (count=1) ->
     super(count) if @input.characters.length > 0

    super(@editorView, @vimState)
    Search.currentSearch = @
    @reverse = @initiallyReversed = false

    # FIXME: This must depend on the current language
    @input = new Input(@getCurrentWordMatch())

    [true]

  scan: ->
    if @startUp
      @startUpPos = @editor.getCursorBufferPosition()
      min = -1
      iwin = -1
      for i in [0..@characters.length - 1]
        matchesCharacter = @searchFor(@characters[i])
        if matchesCharacter.length > 0
          dst = matchesCharacter[0].range.start.toArray()
          if @startUpPos.toArray()[0] == dst[0] and @startUpPos.toArray()[1] < dst[1]
            if dst[1] < min or min == -1
              line = dst[0]
              min = dst[1]
              iwin = i
      if iwin != -1
        @editor.setCursorBufferPosition(new Point(line,min))
        @character = @characters[iwin]
        @matching = @charactersMatching[iwin]
        @reverse = @reverseSearch[iwin]

    matchesCharacter = @searchFor(@character)
    matchesMatching = @searchFor(@matching)
    if matchesMatching.length == 0
