<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Dec 9, 2017 at 2:58 AM, Volodymyr Sapsai <span dir="ltr"><<a href="mailto:vsapsai@apple.com" target="_blank" class="cremed">vsapsai@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">As an extra data point I want to tell that even with an automated formatter the indented leading whitespace does help. If you re-indent a block of code and leading whitespace is preserved, then you get a single chunk in the blame of the file. If you eat the leading whitespace then you have a million little pieces in the blame and it’s less clear just what happened. Something like<div><br></div><div><div><div>1111bc501498 (John Doe      2015-05-12 09:23:57 +0000  178) if (something) {</div><div>1111bc501498 (John Doe      2015-05-12 09:23:57 +0000  179)   // do something</div><div>2222c3ae83d8 (Adam Smith    2014-12-10 19:00:42 +0000  180)</div><div>1111bc501498 (John Doe      2015-05-12 09:23:57 +0000  181)   // do some more stuff</div><div>1111bc501498 (John Doe      2015-05-12 09:23:57 +0000  182) }</div></div><div><br></div><div>If leading whitespace was preserved after reindentation you would get a single blame chunk. The same applies to diff. Empty lines can make chunks too granular.</div></div></div></blockquote><div><br></div><div>This seems like a very specific and actually quite rare case. And I'd personally be happy to see some hint that John Doe wasn't actually to blame for all of those lines (so that I can remember to run "git blame" with "-w").</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space"><div><div>As for requirement</div><div><blockquote type="cite">be used in a project of significant size</blockquote><div><br></div>I want to point out that preserving leading whitespace on whitespace-only lines is Xcode default setting. And as the result many projects can end up using this style. For example, a quick check of <a href="https://github.com/search?l=objective-c&o=desc&q=stars:%3E1&s=stars&type=Repositories" target="_blank" class="cremed">the top 5 Objective-C repositories with the most stars on GitHub</a> shows that 3 out of 5 are using predominantly this style (rs/SDWebImage, BradLarson/<wbr>GPUImage, SnapKit/Masonry). It isn’t representative in any way, I just want to show that such style isn’t that obscure.</div></div></div></blockquote><div><br></div><div>It totally makes sense for an automated indenter in an editor to add these leading spaces, but I think the use case is different from a formatter. And it makes sense for some projects coming from Xcode to not bother to modify anything afterwards. It doesn't mean that this is the style they *want*.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space"><div><div></div><div>Thanks,</div><div>Volodymyr</div><div><div class="h5"><div><br><blockquote type="cite"><div>On Nov 13, 2017, at 05:19, Daniel Jasper via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a>> wrote:</div><br class="m_5521542911959907769Apple-interchange-newline"><div><div dir="ltr">Generally, see here:<div><a href="https://clang.llvm.org/docs/ClangFormatStyleOptions.html#adding-additional-style-options" class="m_5521542911959907769cremed cremed" target="_blank">https://clang.llvm.org/docs/Cl<wbr>angFormatStyleOptions.html#add<wbr>ing-additional-style-options</a><br></div><div><br></div><div>I vaguely remember this question being brought up before and I think we decided against it.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 13, 2017 at 2:14 PM, Manuel Klimek via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><span><div dir="ltr">On Sat, Nov 11, 2017 at 7:20 AM Samuel Williams via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I am interested in contributing to clang-format, to add an option to preserve and correct leading indentation.<div><br></div><div>Right now if you write code such as:</div><div><br></div><div>{</div><div>....int x = 10;</div><div>....</div><div>....return x;</div><div>}</div><div><br></div><div>The line in the middle will be truncated and there is no option to control it.</div><div><br></div><div>Some code prefers to have indented leading whitespace, indented to the same level as the previous line.</div><div><br></div><div>Would such a contribution be accepted and is anyone willing to help me through the process where necessary?</div></div></blockquote><div><br></div></span><div>The current reasoning is that with an automated formatter the indented leading whitespace doesn't help any more.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>Thanks</div><div>Samuel</div></div>
______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank" class="cremed">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
</blockquote></div></div>
<br>______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank" class="cremed">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br></div>
______________________________<wbr>_________________<br>cfe-dev mailing list<br><a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="cremed">cfe-dev@lists.llvm.org</a><br><a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" target="_blank" class="cremed">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br></div></blockquote></div><br></div></div></div></div></blockquote></div><br></div></div>