[swift-evolution] [Accepted] SE-0168: Multi-Line String Literals

Kevin Nattinger swift at nattinger.net
Wed Apr 19 17:13:49 CDT 2017


Not to mention that many IDEs (at least have options to) trim trailing whitespace automatically, so it has a fair to high likelihood of breaking unexpectedly and invisibly.

> On Apr 19, 2017, at 3:09 PM, Joe Groff via swift-evolution <swift-evolution at swift.org> wrote:
> 
> 
>> On Apr 19, 2017, at 3:07 PM, Xiaodi Wu <xiaodi.wu at gmail.com <mailto:xiaodi.wu at gmail.com>> wrote:
>> 
>> Hmm, I don't know that I agree. What's the harm of trailing spaces, and if a warning, how would I silence it given that \ is rejected as a way to suppress a literal newline?
> 
> \("") comes to mind, if nothing else. Other common tools like Git already flag trailing whitespace by default, so even if Swift doesn't warn about it, you might still need to satisfy other tools in your pipeline.
> 
> -Joe
> 
>> 
>> On Wed, Apr 19, 2017 at 17:02 Joe Groff via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>> On Apr 19, 2017, at 2:43 PM, Adrian Zubarev <adrian.zubarev at devandartist.com <mailto:adrian.zubarev at devandartist.com>> wrote:
>>> 
>>> First of all, thank you for accepting the proposal. However I still have one single concern left about the trailing whitespaces. Will the final implemented version raise a warning or produce an error when there are trailing whitespaces?
>>> 
>>> The whole idea of a trailing \ was in first place to prevent new line injection but also for trailing whitespace character precision.
>>> 
>>> The following example could have 1000 characters, but a different developer who reads the code wouldn’t even notice.
>>> 
>>> """
>>> Foo<space><space>…<space>
>>> Bar
>>> """
>>> That’s what the trailing backslash was meant for. To prevent unwanted whitespaces, or if you really need them, to force you to be precise about them.
>>> 
>>> """
>>> Foo<space><space><space>\n\
>>> Bar
>>> """
>> 
>> That seems like a reasonable thing to warn about. That also reminds me, blank lines should be accepted within a literal even if they aren't "indented" with invisible whitespace.
>> 
>> -Joe
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
> 
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170419/f1415167/attachment.html>


More information about the swift-evolution mailing list