   registerCommands: ->
     atom.commands.add @editorElement,
       'core:confirm': => @confirm()
-      'core:move-up': (event) => @moveUpOrDown(event, 'up')
-      'core:move-down': (event) => @moveUpOrDown(event, 'down')
+      'core:move-up': (event) => @moveUpOrDownWrap(event, 'up')
+      'core:move-down': (event) => @moveUpOrDownWrap(event, 'down')
 
       # HACK: PreserveGoalColumn when skipping header row.
       # Following command is earlily invoked than original move-up(down)-wrap,

      if @isInSyncToProviderEditor()
        column = @provider.editor.getCursorBufferPosition().column
      else
        console.log 'this!'
        regExp = cloneRegExp(@provider.initiallySearchedRegexp)
        column = regExp.exec(@items.getSelectedItem().text).index


    @goalColumn = cursor.goalColumn ? cursor.getBufferColumn()

  # Line-wrapped version of 'core:move-up' override default behavior
  moveUpOrDownWrap: (event, direction) ->
    @preserveGoalColumn()

    cursor = @editor.getLastCursor()
    cursorRow = cursor.getBufferRow()
    lastRow = @editor.getLastBufferRow()

    if direction is 'up' and cursorRow is 0
      setBufferRow(cursor, lastRow)
      event.stopImmediatePropagation()
    else if direction is 'down' and cursorRow is lastRow
      setBufferRow(cursor, 0)
      event.stopImmediatePropagation()

  # Even in movemnt not happens, it should confirm current item
