nimpretty: fixes #9398

This commit is contained in:
Araq
2018-10-24 00:53:41 +02:00
parent 72370c8dfa
commit e3a0415650
4 changed files with 21 additions and 2 deletions

View File

@@ -1118,6 +1118,7 @@ proc skip(L: var TLexer, tok: var TToken) =
tok.strongSpaceA = 0
when defined(nimpretty):
var hasComment = false
var commentIndent = L.currLineIndent
tok.commentOffsetA = L.offsetBase + pos
tok.commentOffsetB = tok.commentOffsetA
tok.line = -1
@@ -1146,6 +1147,8 @@ proc skip(L: var TLexer, tok: var TToken) =
else:
break
tok.strongSpaceA = 0
when defined(nimpretty):
if buf[pos] == '#': commentIndent = indent
if buf[pos] > ' ' and (buf[pos] != '#' or buf[pos+1] == '#'):
tok.indent = indent
L.currLineIndent = indent
@@ -1155,7 +1158,9 @@ proc skip(L: var TLexer, tok: var TToken) =
if buf[pos+1] == '#': break
when defined(nimpretty):
hasComment = true
if tok.line < 0: tok.line = L.lineNumber
if tok.line < 0:
tok.line = L.lineNumber
#commentIndent = L.currLineIndent # if tok.strongSpaceA == 0: -1 else: tok.strongSpaceA
if buf[pos+1] == '[':
skipMultiLineComment(L, tok, pos+2, false)
@@ -1177,6 +1182,7 @@ proc skip(L: var TLexer, tok: var TToken) =
if hasComment:
tok.commentOffsetB = L.offsetBase + pos - 1
tok.tokType = tkComment
tok.indent = commentIndent
if gIndentationWidth <= 0:
gIndentationWidth = tok.indent

View File

@@ -1,4 +1,5 @@
var x: int = 2
echo x # bug #9144
echo x
# bug #9144

View File

@@ -7,3 +7,9 @@ proc fun*() =
echo "ok"
## doc comment
# regular comment
proc funB() =
echo "ok1"
# echo "ok2"
fun()

View File

@@ -7,3 +7,9 @@ proc fun*()=
echo "ok"
## doc comment
# regular comment
proc funB() =
echo "ok1"
# echo "ok2"
fun()