<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<meta content="text/html; charset=UTF-8">
<style type="text/css" style="">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr">
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Helvetica,sans-serif">
<p>> <span style="font-size:12pt">It is! but do we really need a collect for this static list?</span></p>
<div>> We could put that code in a comment and just return the resulting string…</div>
<p></p>
<p><br>
</p>
<p>My suggestion would be</p>
<div id="x_Signature">
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; 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">
<div name="x_divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div>
<div class="x__rp_T4" id="x_Item.MessagePartBody">
<div class="x__rp_U4 x_ms-font-weight-regular x_ms-font-color-neutralDark x_rpHighlightAllClass x_rpHighlightBodyClass" id="x_Item.MessageUniqueBody" style="font-family:wf_segoe-ui_normal,"Segoe UI","Segoe WP",Tahoma,Arial,sans-serif,serif,EmojiFont">
<div dir="ltr">
<div id="x_divtagdefaultwrapper"><font face="Calibri,Helvetica,sans-serif,EmojiFont,Apple Color Emoji,Segoe UI Emoji,NotoColorEmoji,Segoe UI Symbol,Android Emoji,EmojiSymbols">
<div id="x_Signature">
<div style="margin:0px"><font style="font-family:Calibri,Arial,Helvetica,sans-serif,serif,EmojiFont">
<div><font size="3" color="black"><span style="font-size:12pt"><a href="http://www.hpi.de/" target="_blank" rel="noopener noreferrer" id="LPNoLP"><font size="2"><span id="LPlnk909538"><font color="#757B80"></font></span></font></a></span></font></div>
</font></div>
</div>
</font></div>
</div>
</div>
</div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><br>
</div>
<div class="x__rp_T4" id="x_Item.MessagePartBody">^  Separators ifNil: [Separators := self <span>allCharacters select: [:ea | ea isSeparator]]</span></div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><span><br>
</span></div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><span>Then we won't need to duplicate the logic.</span></div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><span><br>
</span></div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><span>Best,</span></div>
<div class="x__rp_T4" id="x_Item.MessagePartBody"><span>Christoph</span></div>
</div>
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Tobias Pape <Das.Linux@gmx.de><br>
<b>Gesendet:</b> Montag, 21. Juni 2021 12:37:13<br>
<b>An:</b> The general-purpose Squeak developers list<br>
<b>Betreff:</b> Re: [squeak-dev] The Trunk: Collections-pre.857.mcz</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt;">
<div class="PlainText">Hi Dave<br>
<br>
<br>
> On 4. Oct 2019, at 15:26, David T. Lewis <lewis@mail.msen.com> wrote:<br>
> <br>
> +1<br>
> <br>
> This sounds like a good approach to me. If I understand correctly, it<br>
> amounts to this:<br>
> <br>
> Character class>>separators<br>
>    "Answer a collection of the standard ASCII separator characters."<br>
> <br>
>    ^ #(32 "space"<br>
>        13 "cr"<br>
>        9 "tab"<br>
>        10 "line feed"<br>
>        12 "form feed"<br>
>        1 "text separator")<br>
>        collect: [:v | Character value: v] as: String<br>
> <br>
> This seems simple and clear to me.<br>
<br>
It is! but do we really need a collect for this static list?<br>
We could put that code in a comment and just return the resulting string…<br>
<br>
Best regards<br>
        -Tobias<br>
<br>
> <br>
> There are a lot of senders of #separators in the image, so it is<br>
> possible that it might have some unintended side effect. But that<br>
> seems unlikely.<br>
> <br>
> Dave<br>
> <br>
> <br>
> On Fri, Oct 04, 2019 at 01:01:30PM +0200, patrick.rein@hpi.uni-potsdam.de wrote:<br>
>> Hi everyone,<br>
>> <br>
>> in the context of the new text anchor layouting infrastructure there is still one thing missing. Currently start of header is not included in Character class>>#separators. This leads to problems with text editing Morphs. As start of header is not printed
 at all (not even as white space) I would rather classify it as a separator and add it to the list in Character class>>#separators and to Character>>#isSeparator. The advantage of this approach is that we would not need any special case in the text editing
 morphs. The disadvantage is that the list of separators will be less obvious to understand.<br>
>> <br>
>> Any thoughts about this? <br>
>> <br>
>> Bests<br>
>> Patrick<br>
>> <br>
>> P.S.: Conceptually start of header (or heading) is a control character. ietf says: " A communication control character used at the beginning of a sequence of characters which constitute a machine-sensible address or routing information.  Such a sequence
 is referred to as the "heading."  An STX character has the effect of terminating a heading."<br>
>> (<a href="https://tools.ietf.org/html/rfc20#section-5.2">https://tools.ietf.org/html/rfc20#section-5.2</a>)<br>
>> <br>
>>> Patrick Rein uploaded a new version of Collections to project The Trunk:<br>
>>> <a href="http://source.squeak.org/trunk/Collections-pre.857.mcz">http://source.squeak.org/trunk/Collections-pre.857.mcz</a><br>
>>> <br>
>>> ==================== Summary ====================<br>
>>> <br>
>>> Name: Collections-pre.857<br>
>>> Author: pre<br>
>>> Time: 4 October 2019, 11:04:30.363303 am<br>
>>> UUID: 5ef00b65-3884-c445-b276-0cc01f0b10a1<br>
>>> Ancestors: Collections-pre.856<br>
>>> <br>
>>> Adds startOfHeader to Character, adds empty abstract implementations of scanFrom:, writeScanOn: to TextAttribute to allow for Texts which include TextAttributes which do not implement serialization to still be serialized, adds a comment to these methods.<br>
>>> <br>
>>> =============== Diff against Collections-pre.856 ===============<br>
>>> <br>
>>> Item was added:<br>
>>> + ----- Method: Character class>>startOfHeader (in category 'accessing untypeable characters') -----<br>
>>> + startOfHeader<br>
>>> + <br>
>>> +    ^ self value: 1 !<br>
>>> <br>
>>> Item was added:<br>
>>> + ----- Method: TextAttribute class>>scanFrom: (in category 'fileIn/Out') -----<br>
>>> + scanFrom: strm<br>
>>> +    "Read the text attribute properties from the stream. When this method has<br>
>>> +    been called the concrete TextAttribute class has already been selected via<br>
>>> +    scanCharacter. (see TextAttribute class>>#newFrom:).<br>
>>> +    For writing the format see TextAttribute>>#writeScanOn:"!<br>
>>> <br>
>>> Item was added:<br>
>>> + ----- Method: TextAttribute>>writeScanOn: (in category 'fileIn/fileOut') -----<br>
>>> + writeScanOn: strm<br>
>>> +    "Implement this method for a text attribute to define how it it should be written<br>
>>> +    to a serialized form of a text object. The form should correspond to the source<br>
>>> +    file format, i.e. use a scan character to denote its subclass.<br>
>>> +    As TextAttributes are stored in RunArrays, this method is mostly called from RunArray>>#write scan.<br>
>>> +    For reading the written information see TextAttribute class>>#scanFrom:"<br>
>>> +    <br>
>>> +    "Do nothing because of abstract class"!<br>
>>> <br>
>>> <br>
>> <br>
> <br>
<br>
<br>
<br>
</div>
</span></font>
</body>
</html>