Strip only trailing whitespace, not newlines. Also, strip *all* trailing whitespace, not just the first.

This commit is contained in:
Nathan Sobo
2012-04-23 10:24:24 -06:00
parent 802a4259e9
commit 89ed9f39f1
2 changed files with 6 additions and 6 deletions

View File

@@ -7,7 +7,7 @@ describe "StripTrailingWhitespace", ->
beforeEach ->
rootView = new RootView
StripTrailingWhitespace.initialize(rootView)
StripTrailingWhitespace.activate(rootView)
rootView.focus()
editor = rootView.activeEditor()
@@ -15,9 +15,9 @@ describe "StripTrailingWhitespace", ->
spyOn(fs, 'write')
# works for buffers that are already open when extension is initialized
editor.insertText("foo ")
editor.insertText("foo \nbar\t \n\nbaz")
editor.buffer.saveAs("/tmp/test")
expect(editor.buffer.getText()).toBe "foo"
expect(editor.buffer.getText()).toBe "foo\nbar\n\nbaz"
# works for buffers that are opened after extension is initialized
rootView.open(require.resolve('fixtures/sample.txt'))
@@ -25,4 +25,4 @@ describe "StripTrailingWhitespace", ->
editor.insertText(" ")
editor.buffer.save()
expect(editor.buffer.getText()).toBe 'Some text.'
expect(editor.buffer.getText()).toBe 'Some text.\n'

View File

@@ -1,5 +1,5 @@
module.exports =
initialize: (rootView) ->
activate: (rootView) ->
for buffer in rootView.project.buffers
@stripTrailingWhitespaceBeforeSave(buffer)
@@ -8,5 +8,5 @@ module.exports =
stripTrailingWhitespaceBeforeSave: (buffer) ->
buffer.on 'before-save', ->
buffer.scan /\s+$/, (match, range, { replace }) ->
buffer.scan /[ \t]+$/g, (match, range, { replace }) ->
replace('')