In the current implementation (SATySFi 0.0.5), trailing line breaks in a literal trimmed inconsistently.
`string`# style literal removes up to one trailing line break (U+000A), `string`# style literal up to two line breaks. Anyway, spaces (U+0020) followed by the trailing line breaks won't be trimmed.
Hereinafter ⏎ represents a line break character (U+000A) and ␣ a space (U+0020).
Literal
Interpreted
`a␣⏎`# | a␣
`a␣⏎⏎`# | a␣⏎
`a␣⏎⏎⏎`# | a␣⏎⏎
`a␣⏎` | a␣
`a␣⏎⏎` | a␣
`a␣⏎⏎⏎` | a␣⏎
`a␣⏎⏎⏎⏎` | a␣⏎⏎
I would expect one of the following behaviors:
Both trailing line breaks and spaces are equally treated. I.e., `string`# style literal preserves any trailing line breaks or spaces while `string`# style trims all the trailing line breaks and spaces.
For example, `a␣⏎␣⏎`# and `a␣⏎␣⏎` will represent a␣⏎␣⏎ and a, respectively.
When there are trailing line breaks following spaces, the spaces won't be removed.
`string`# style literal preserves all the trailing line breaks while `string`# style trims all the trailing line breaks.
For example, `a⏎⏎⏎`# and `a⏎⏎⏎` will represent a⏎⏎⏎ and a, respectively.
`string`# style literal preserves up to one trailing line break while `string`# style trims all the trailing line breaks.
For example, `a⏎⏎⏎`# and `a⏎⏎⏎` will represent a⏎⏎ and a, respectively.
In the current implementation (SATySFi 0.0.5), trailing line breaks in a literal trimmed inconsistently.
`string`#
style literal removes up to one trailing line break (U+000A),`string`#
style literal up to two line breaks. Anyway, spaces (U+0020) followed by the trailing line breaks won't be trimmed.Hereinafter ⏎ represents a line break character (U+000A) and ␣ a space (U+0020).
`a␣⏎`#
|a␣
`a␣⏎⏎`#
|a␣⏎
`a␣⏎⏎⏎`#
|a␣⏎⏎
`a␣⏎`
|a␣
`a␣⏎⏎`
|a␣
`a␣⏎⏎⏎`
|a␣⏎
`a␣⏎⏎⏎⏎`
|a␣⏎⏎
I would expect one of the following behaviors:
Both trailing line breaks and spaces are equally treated. I.e.,
`string`#
style literal preserves any trailing line breaks or spaces while`string`#
style trims all the trailing line breaks and spaces.For example,
`a␣⏎␣⏎`#
and`a␣⏎␣⏎`
will representa␣⏎␣⏎
anda
, respectively.When there are trailing line breaks following spaces, the spaces won't be removed.
`string`#
style literal preserves all the trailing line breaks while`string`#
style trims all the trailing line breaks.For example,
`a⏎⏎⏎`#
and`a⏎⏎⏎`
will representa⏎⏎⏎
anda
, respectively.`string`#
style literal preserves up to one trailing line break while`string`#
style trims all the trailing line breaks.For example,
`a⏎⏎⏎`#
and`a⏎⏎⏎`
will representa⏎⏎
anda
, respectively.Original comment: https://satysfi.slack.com/archives/CTGUT75FZ/p1584115832024200