> On May 14, 2019, at 5:25 PM, Brian Goetz <brian.go...@oracle.com> wrote: > >> Most of the examples in the JEP follow these rules as a convention already. >> The concatenation examples would benefit from following it. > > Sorry, not seeing it — how would the concatenation examples benefit? Example? >
Sure, let me elaborate. I think this: ~~~ String code = """ public void print(""" + type + """ o) { System.out.println(Objects.toString(o)); } """; ~~~ should be presented like this: ~~~ String code = """ public void print(""" + type + """ o) { System.out.println(Objects.toString(o)); } """; ~~~ It's not great, and replace/format is the "right" solution, but if somebody wants to do concatenation, this style does a better job of indicating where the indent prefix ends and the content begins. The delimiter gives a visual indication of where the "block" is located. Further illustrations: Things like this are following the convention I'm proposing we enforce: ~~~ String html = """ <html> <body> <p>Hello, world</p> </body> </html> """; ~~~ As is this: ~~~ """ line 1 line 2 line 3""" ~~~ This one doesn't, but it's a simple matter of putting some spaces before the closing delimiter to fix it: ~~~ String empty = """ """; ~~~ This concatenation example follows the convention (although note that there's no newline between '{' and 'System'): ~~~ String code = "public void print(Object o) {" + """ System.out.println(Objects.toString(o)); } """; ~~~