diff --git a/spec/language-mode-spec.coffee b/spec/language-mode-spec.coffee index 51cb7c36c..4899663b8 100644 --- a/spec/language-mode-spec.coffee +++ b/spec/language-mode-spec.coffee @@ -46,6 +46,16 @@ describe "LanguageMode", -> languageMode.toggleLineCommentsForBufferRows(0, 0) expect(buffer.lineForRow(0)).toBe " // var i;" + buffer.setText(' ') + languageMode.toggleLineCommentsForBufferRows(0, 0) + expect(buffer.lineForRow(0)).toBe " // " + + buffer.setText (' a\n \n b') + languageMode.toggleLineCommentsForBufferRows(0, 2) + expect(buffer.lineForRow(0)).toBe " // a" + expect(buffer.lineForRow(1)).toBe " // " + expect(buffer.lineForRow(2)).toBe " // b" + describe ".rowRangeForCodeFoldAtBufferRow(bufferRow)", -> it "returns the start/end rows of the foldable region starting at the given row", -> expect(languageMode.rowRangeForCodeFoldAtBufferRow(0)).toEqual [0, 12] diff --git a/src/language-mode.coffee b/src/language-mode.coffee index bc075a662..31b66f7bc 100644 --- a/src/language-mode.coffee +++ b/src/language-mode.coffee @@ -74,7 +74,10 @@ class LanguageMode columnEnd = columnStart + match[2].length buffer.change([[row, columnStart], [row, columnEnd]], "") else - indent = @minIndentLevelForRowRange(start, end) + if start is end + indent = @editor.indentationForBufferRow(start) + else + indent = @minIndentLevelForRowRange(start, end) indentString = @editor.buildIndentString(indent) tabLength = @editor.getTabLength() indentRegex = new RegExp("(\t|[ ]{#{tabLength}}){#{Math.floor(indent)}}")