indentSelectedRows works with hard tabs

This commit is contained in:
Corey Johnson & Nathan Sobo
2012-10-26 10:03:59 -07:00
parent 0aa9f8de57
commit 4c24f4ea65
3 changed files with 63 additions and 28 deletions

View File

@@ -107,7 +107,7 @@ class EditSession
getSoftWrap: -> @softWrap
setSoftWrap: (@softWrap) ->
getTabText: -> new Array(@tabLength + 1).join(" ")
getTabText: -> @buildIndentString(1)
getTabLength: -> @tabLength
clipBufferPosition: (bufferPosition) ->

View File

@@ -165,6 +165,11 @@ class Selection
else
@indentSelectedRows()
indentSelectedRows: ->
range = @getBufferRange()
for row in [range.start.row..range.end.row]
@editSession.buffer.insert([row, 0], @editSession.getTabText()) unless @editSession.buffer.lineLengthForRow(row) == 0
normalizeIndent: (text, options) ->
return text unless /\n/.test(text)
@@ -258,11 +263,6 @@ class Selection
end--
@editSession.buffer.deleteRows(start, end)
indentSelectedRows: ->
range = @getBufferRange()
for row in [range.start.row..range.end.row]
@editSession.buffer.insert([row, 0], @editSession.getTabText()) unless @editSession.buffer.lineLengthForRow(row) == 0
outdentSelectedRows: ->
range = @getBufferRange()
buffer = @editSession.buffer