Reasonable. This is a learning step for new users of MLS.
> On May 9, 2019, at 1:43 PM, Guy Steele <guy.ste...@oracle.com> wrote: > > One possibility is language enforcement: at the part of the processing of a > multiline string where whitespace is stripped off to the left of the > rectangle, it could be an error if that leading whitespace is not “spelled > the same” on all lines from which it is being stripped. I lean toward > recommending this. > >> On May 9, 2019, at 12:40 PM, Jim Laskey <james.las...@oracle.com >> <mailto:james.las...@oracle.com>> wrote: >> >> The proposed solution does not solve the mixed leading white space problem. >> As long as the white space is consistent across lines with the tabs, it >> works fine. >> >> Otherwise, the developer has two solutions; >> >> 1) Uuse your editor to detab or detab + entab. Either makes the white space >> consistent. >> >> 2) Write a custom String::transform method that does the trimMargins thing. >> >> String string = """ >> |> line 1 >> |> line 2 >> """.transform(s -> s.replaceAll("\\w*\\| <smb://w*//|>> ", "")); >> The lone line discussion could fall out an automatic trimMargins solution, >> but it gets messy. >> -- Jim >> >> >> >> >> >>> On May 9, 2019, at 12:59 PM, Tagir Valeev <amae...@gmail.com >>> <mailto:amae...@gmail.com>> wrote: >>> >>> Hello! >>> >>> Great draft, thank you. I'm especially happy that the expert group came to >>> the conclusion that automatic builtin processing of the indentation is >>> important. I proposed to do this in January, 2018 [1]. While the solution >>> proposed in JEP draft is not as radical as proposed by me, I still like it >>> better than the previous RSL proposal. >>> >>> One thing which seems missing is dealing with tabs. What if user file is >>> invented with tabs? Should they be also processed? More specifically, what >>> is a "white space" in strip indent algorithm description? Only \u0020 >>> symbol or \u0020 & \u0009? Or anything for which Character.isWhiteSpace() >>> returns true? Also if tabs are included do single tab costs the same as >>> single space? You may imagine that somebody pastes part of multiline string >>> from StackOverflow where tabs were used for indent and see some unexpected >>> results (e.g. indent changes for the untouched lines while visually in the >>> editor pasted lines look having the same indent as surrounding ones). I >>> admit that defining what is "expected result" is hard, especially taking >>> into account that most editors provide a setting for the tab size and >>> different users may have different tab size. Nevertheless I feel that tab >>> handling should be explicitly spelled out (even if it's "tab is not >>> considered as a white-space character"). >>> >>> With best regards, >>> Tagir Valeev. >>> >>> [1] >>> http://mail.openjdk.java.net/pipermail/amber-spec-experts/2018-January/000251.html >>> >>> <http://mail.openjdk.java.net/pipermail/amber-spec-experts/2018-January/000251.html> >>> чт, 9 мая 2019 г., 19:07 Jim Laskey <james.las...@oracle.com >>> <mailto:james.las...@oracle.com>>: >>> At this point I think the only outstanding issue is long line continuation. >>> While we can postpone continuation until a later release, I think we should >>> at least lay out the details to see if we need to do anything now. I'll >>> follow up with a (long line continuation) synopsis e-mail in a few. >>> >>> Meanwhile, please review the JEP and comment back here. >>> >>> Cheers, >>> >>> -- Jim >>> >>> >>> html: http://cr.openjdk.java.net/~jlaskey/Strings/MLS/MultilineStrings.html >>> <http://cr.openjdk.java.net/~jlaskey/Strings/MLS/MultilineStrings.html> >>> markdown: >>> http://cr.openjdk.java.net/~jlaskey/Strings/MLS/MultilineStrings.md >>> <http://cr.openjdk.java.net/~jlaskey/Strings/MLS/MultilineStrings.md> >>> >>> >> >