diff --git a/src/token.coffee b/src/token.coffee index 7b24764ae..6a6683a73 100644 --- a/src/token.coffee +++ b/src/token.coffee @@ -21,7 +21,8 @@ class Token hasInvisibleCharacters: false constructor: (properties) -> - {@value, @scopes, @isAtomic, @bufferDelta, @isHardTab, @hasPairedCharacter, @isSoftWrapIndentation} = properties + {@value, @scopes, @isAtomic, @isHardTab, @bufferDelta} = properties + {@hasInvisibleCharacters, @hasPairedCharacter, @isSoftWrapIndentation} = properties @firstNonWhitespaceIndex = properties.firstNonWhitespaceIndex ? null @firstTrailingWhitespaceIndex = properties.firstTrailingWhitespaceIndex ? null diff --git a/src/tokenized-line.coffee b/src/tokenized-line.coffee index 352ca1264..10ed3a27e 100644 --- a/src/tokenized-line.coffee +++ b/src/tokenized-line.coffee @@ -155,6 +155,7 @@ class TokenizedLine when HardTab tokenProperties.isAtomic = true tokenProperties.bufferDelta = 1 + tokenProperties.hasInvisibleCharacters = true if @invisibles?.tab when PairedCharacter tokenProperties.isAtomic = true tokenProperties.hasPairedCharacter = true @@ -165,10 +166,12 @@ class TokenizedLine if offset < @firstNonWhitespaceIndex tokenProperties.firstNonWhitespaceIndex = Math.min(tokenProperties.value.length, @firstNonWhitespaceIndex - offset) + tokenProperties.hasInvisibleCharacters = true if @invisibles?.space if @lineEnding? and (offset + tokenProperties.value.length > @firstTrailingWhitespaceIndex) tokenProperties.firstTrailingWhitespaceIndex = Math.max(0, @firstTrailingWhitespaceIndex - offset) + tokenProperties.hasInvisibleCharacters = true if @invisibles?.space offset += tokenProperties.value.length