     @editor.getSelections().forEach (selection) ->
       data =
         if isLinewise
-          swrap(selection).getRows().map(-> '')
+          height = swrap(selection).getRows().length
+          Array(height).fill('')
         else
-          [_.multiplyString(' ', selection.getBufferRange().getExtent().column)]
+          width = selection.getBufferRange().getExtent().column
+          [' '.repeat(width)]
       overwrittenBySelection.set(selection, data)
     overwrittenBySelection
 

  complementSpacesToPoint: ({row, column}) ->
    eol = @editor.bufferRangeForBufferRow(row).end
    if (fillCount = column - eol.column) > 0
      spaces = _.multiplyString(' ', fillCount)
      @editor.setTextInBufferRange([eol, eol], spaces)

class MoveSelectedTextDown extends MoveSelectedTextUp
  direction: 'down'

    @withUndoJoin =>
      selections = @editor.getSelectionsOrderedByBufferPosition()
      return if @isCharacterwise() and (not @isMovable(selections[0]))
      selections.reverse() if @direction is 'up'
      @editor.transact =>
        @countTimes =>
          @mutateSelections(selections)
