<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div class="gmail_default"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 20, 2020 at 6:51 AM Jakob Reschke <<a href="mailto:forums.jakob@resfarm.de">forums.jakob@resfarm.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Am Fr., 20. Nov. 2020 um 13:42 Uhr schrieb Thiede, Christoph<br>
<<a href="mailto:Christoph.Thiede@student.hpi.uni-potsdam.de" target="_blank">Christoph.Thiede@student.hpi.uni-potsdam.de</a>>:<br>
><br>
> The problem is that when writing the opening bracket on the same line as the first block statement, the block statements will look inconsistently intended:<br>
><br>
> someBoolean<br>
>     ifTrue:<br>
>         [self doOneThing.<br>
>         self doAnotherThing.<br>
>         "Do you notice the visual glitch above?"].<br>
><br>
<br>
This used to bug me, too. But eventually I realized that it does not<br>
really matter for my reading comprehension. It's like all those<br>
parentheses bugging the Lisp apprentice in the beginning.<br></blockquote><div><br></div><div class="gmail_default">and I would never indent the ifTrue: unless it has a matching ifFalse:, so the above would be </div><div class="gmail_default"><font face="times new roman, serif"><br></font></div><div class="gmail_default"><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" dir="ltr" style="color:rgb(0,0,0)"><font face="times new roman, serif">    someBoolean ifTrue:</font></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" dir="ltr" style="color:rgb(0,0,0)"><font face="times new roman, serif">        [self doOneThing.</font></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" dir="ltr" style="color:rgb(0,0,0)"><font face="times new roman, serif">        self doAnotherThing.</font></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" dir="ltr" style="color:rgb(0,0,0)"><font face="times new roman, serif">        "Do you notice the visual glitch above?"].</font></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" dir="ltr" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><br></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">and otherwise it would be</div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><br></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><span style="font-family:-webkit-standard">    someBoolean</span><br></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><span style="font-family:-webkit-standard">        ifTrue: [self doOneThing]</span></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><span style="font-family:-webkit-standard">        ifFalse: [self doTheOther]</span></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><span style="font-family:-webkit-standard"><br></span></div><div id="gmail-m_-5791969673651276653divtagdefaultwrapper" style="color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"><span style="font-family:-webkit-standard">etc.</span></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<br>
Rectangular block does still have an issue when a complex block is the<br>
receiver of a message, such as with on:do: and ensure:<br>
<br>
    [anything<br>
       ifTrue:<br>
          [...]]<br>
       ensure:<br>
          ["do something else"<br>
          that ifTrue: [...]].<br>
<br>
Because the lower part of the receiver block is indented, the ensure<br>
could be seen as being inside of it, just at a glance.<br>
But the style that puts the opening bracket on the previous like does<br>
not solve this issue at all.<br></blockquote><div><br></div><div class="gmail_default">It does indeed.  I tend to indent the body of the block with two tabs so that it is to the right of the ensure: or on:do:, in those cases.</div><div class="gmail_default"><br></div></div><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><span style="border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div></div></div></div></div>