diff options
author | ryanc-signiq <ryanc@signiq.com> | 2018-03-08 15:33:41 +0800 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2018-03-08 08:33:41 +0100 |
commit | 67fd7a7f865e7e725dfcd4c2ec2c5840f3457f60 (patch) | |
tree | 02195ff37c5131eb82d3db90c1ad4da39a6afc47 /lib/pure | |
parent | 551d7b7dc17d0eb05cbc8fd935c584739ce66bb2 (diff) | |
download | Nim-67fd7a7f865e7e725dfcd4c2ec2c5840f3457f60.tar.gz |
FIXUP: Removed +1 causing substr slicing to skip chars on first iteration of while loop (#7312)
Diffstat (limited to 'lib/pure')
-rw-r--r-- | lib/pure/strutils.nim | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/pure/strutils.nim b/lib/pure/strutils.nim index 0c35c1d52..ddd0e9e62 100644 --- a/lib/pure/strutils.nim +++ b/lib/pure/strutils.nim @@ -1250,7 +1250,7 @@ proc wordWrap*(s: string, maxLineWidth = 80, if len(word) > spaceLeft: if splitLongWords and len(word) > maxLineWidth: result.add(substr(word, 0, spaceLeft-1)) - var w = spaceLeft+1 + var w = spaceLeft var wordLeft = len(word) - spaceLeft while wordLeft > 0: result.add(newLine) @@ -2514,6 +2514,11 @@ when isMainModule: outp = " this is a\nlong text\n--\nmuchlongerthan10chars\nand here\nit goes" doAssert wordWrap(inp, 10, false) == outp + let + longInp = """ThisIsOneVeryLongStringWhichWeWillSplitIntoEightSeparatePartsNow""" + longOutp = "ThisIsOn\neVeryLon\ngStringW\nhichWeWi\nllSplitI\nntoEight\nSeparate\nPartsNow" + doAssert wordWrap(longInp, 8, true) == longOutp + doAssert formatBiggestFloat(1234.567, ffDecimal, -1) == "1234.567000" doAssert formatBiggestFloat(1234.567, ffDecimal, 0) == "1235." doAssert formatBiggestFloat(1234.567, ffDecimal, 1) == "1234.6" |