From 28dd7d4acdb594fe28a4f136ab2c849d18cb0705 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Fri, 11 Apr 2014 09:11:49 -0600 Subject: [PATCH] Treat all whitespace lines as not having leading whitespace Instead it's treated as all trailing whitespace, as it was originally. --- spec/tokenized-buffer-spec.coffee | 4 ++-- src/token.coffee | 4 ++-- src/tokenized-line.coffee | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/spec/tokenized-buffer-spec.coffee b/spec/tokenized-buffer-spec.coffee index b498bd9e8..c1f29196a 100644 --- a/spec/tokenized-buffer-spec.coffee +++ b/spec/tokenized-buffer-spec.coffee @@ -483,9 +483,9 @@ describe "TokenizedBuffer", -> expect(tokenizedBuffer.lineForScreenRow(5).tokens[3].hasLeadingWhitespace).toBe true expect(tokenizedBuffer.lineForScreenRow(5).tokens[4].hasLeadingWhitespace).toBe false - # Lines that are *only* whitespace are considered to have leading whitespace + # Lines that are *only* whitespace are not considered to have leading whitespace buffer.insert([10, 0], ' ') - expect(tokenizedBuffer.lineForScreenRow(10).tokens[0].hasLeadingWhitespace).toBe true + expect(tokenizedBuffer.lineForScreenRow(10).tokens[0].hasLeadingWhitespace).toBe false it "sets ::hasTrailingWhitespace to true on tokens that have trailing whitespace", -> buffer.insert([0, Infinity], ' ') diff --git a/src/token.coffee b/src/token.coffee index aabd60bdb..f42c5a9cc 100644 --- a/src/token.coffee +++ b/src/token.coffee @@ -144,7 +144,7 @@ class Token leadingHtml = '' trailingHtml = '' - if @hasLeadingWhitespace and not @hasTrailingWhitespace and match = LeadingWhitespaceRegex.exec(@value) + if @hasLeadingWhitespace and match = LeadingWhitespaceRegex.exec(@value) classes = 'leading-whitespace' classes += ' indent-guide' if hasIndentGuide classes += ' invisible-character' if invisibles.space @@ -156,7 +156,7 @@ class Token if @hasTrailingWhitespace and match = TrailingWhitespaceRegex.exec(@value) classes = 'trailing-whitespace' - classes += ' indent-guide' if hasIndentGuide and @hasLeadingWhitespace + classes += ' indent-guide' if hasIndentGuide and not @hasLeadingWhitespace classes += ' invisible-character' if invisibles.space match[0] = match[0].replace(CharacterRegex, invisibles.space) if invisibles.space diff --git a/src/tokenized-line.coffee b/src/tokenized-line.coffee index dd7576e16..1bbec7972 100644 --- a/src/tokenized-line.coffee +++ b/src/tokenized-line.coffee @@ -119,7 +119,7 @@ class TokenizedLine outputTokens markLeadingAndTrailingWhitespaceTokens: -> - firstNonWhitespacePosition = @text.search(/\S|$/) + firstNonWhitespacePosition = @text.search(/\S/) firstTrailingWhitespacePosition = @text.search(/\s*$/) lineIsWhitespaceOnly = firstTrailingWhitespacePosition is 0 position = 0