<div dir="ltr">OK, scratch the previous color idea: how about green (add), blue (change) and red (delete)? See attached for a first cut of the proposed color scheme. The implementation is ugly and hacky but it works (sort of)... still thinking about the best approach.<div><br></div><div>One additional thing I was thinking about was extending the list coloring to categories so I did that for deleted methods since it was easy. Not sure if I'm going to have time right now to go that far as it has more issues to deal with, but I wanted to play around with the concept.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 9, 2020 at 10:04 PM Phil B <<a href="mailto:pbpublist@gmail.com">pbpublist@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">If it looks good, I'd say go ahead and integrate it. I saw your color changes so I've been playing around with it and my current thinking is that this is going to require some invasive changes in other areas so probably better to do the list stuff as a separate changeset.<div><br></div><div>Also, since we're fixing things: are you OK if I change the diff coloring from reds for adds and blue for deletes to blue for adds and red for deletes? This has been bugging me forever: in every diff tool I've ever used red means deleted!</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 9, 2020 at 9:33 PM Juan Vuletich <<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>
<div bgcolor="#ffffff">
Hi Phil,<br>
<br>
Your latest code looks great to me. Just say when you want it
integrated. Thanks!<br>
<br>
BTW, today I pushed some updates that, after some cleanup and
refactoring, enable colors, bold, italic, etc on ListMorphs.
Relevant change set is #4011. It is almost trivial. To try this, add
to CodeFileBrowser:<br>
<br>
messageList<br>
^ super messageList collect: [ :str | | text |<br>
text _ str asText color: Color random.<br>
Random withDefaultDo: [ :random |<br>
random next > 0.7<br>
ifTrue: [ text _ text bold ]<br>
ifFalse: [ random next > 0.7 ifTrue: [ text _
text italic ]]].<br>
text ]<br>
<br>
Or simply<br>
<br>
messageList<br>
^ super messageList collect: [ :str | str blue ]<br>
<br>
WRT older change sets in the repo, thanks for reminding us. I just
added the 3001-4000.zip file, and removed all the changesets in
CoreUpdates/ , except those not yet loaded in the images.<br>
<br>
Cheers,<br>
<pre cols="72">--
Juan Vuletich
<a href="http://www.cuis-smalltalk.org" target="_blank">www.cuis-smalltalk.org</a>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a href="https://github.com/jvuletich" target="_blank">https://github.com/jvuletich</a>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
@JuanVuletich</pre>
<br>
<br>
On 1/9/2020 6:10 PM, Phil B wrote:
<blockquote type="cite">
<div dir="ltr">
<div>Juan,</div>
<div><br>
</div>
(Somewhat related: it looks like it's time to archive the 3xxx
series changes in the repo since github cuts web directory
listings off at 1000)
<div><br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Thu, Jan 9, 2020 at
7:21 AM Juan Vuletich <<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.org</a>>
wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div>If not, why don't we go with a half step of
turning it off by default and see how people
react before removing the option entirely?</div>
</div>
</div>
</blockquote>
<br>
Because current behavior is inconsistent, and keeping it
adds unneeded complexity to the code. Let's make it
better and simpler at the same time.<br>
</div>
</blockquote>
<div><br>
</div>
<div>Done.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
Besides, in #infoViewContents, when method is
not in 'base' it says '**NEW** Method not in
the system'. It should read something like
'**ADDED** Method not in base'. Same for
class. It says 'Class not in the system', and
should say 'Class not in base'. All these
messages should stay like now if base is
Smalltalk image, though.<br>
</div>
</blockquote>
<div><br>
</div>
<div>So change 'system' to 'base' if base is not
an image? (keep in mind that it is possible
that base could be a file and case could be the
image or base and case could both be images.
Also, there's no guarantee that 'image' refers
to the currently, locally running image...)</div>
</div>
</div>
</blockquote>
<br>
Maybe we could have a couple new ivars:
'caseDescription' and 'baseDescription', and build the
user messages with them. This would make it easier to
tweak them until we are happy.<br>
</div>
</blockquote>
<div><br>
</div>
<div>Also done.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
Another issue is that in '*** removed methods
***' it shows actively methods deleted in a
change set, but not missing methods (defined
in 'base' but not in 'case'). Maybe, when
'base' is not the Smalltalk image, a new
category with 'methods not included' or such
could be added.<br>
</div>
</blockquote>
<div><br>
</div>
<div>The current behavior doesn't show this does
it? I was trying to minimize breakage or
behavior changes (at least for now), but we can
change this if you want. This is an area I had
planned to fill out more later once it seemed
like the core changes are solid.</div>
</div>
</div>
</blockquote>
<br>
Current behavior doesn't do it because it was thought
for ChangeSets. A ChangeSet doesn't include "all the
stuff", just the part it affects. Therefore, deletions
must be explicit to be acknowledged. A packages is
different. And this becomes clearer when base and case
can be different versions of a package, possibly not
loaded in the image.<br>
<br>
But we can do this after integrating your first work,
checking that people is happy with them, and fixing any
breakage.<br>
</div>
</blockquote>
<div><br>
</div>
<div>OK.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff">
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
Finally (I know, I'm asking lots of things!),
it would be cool to have, in the message list,
added methods in red, and removed/missing
methods in blue. This might not be trivial.
Not sure if our lists can do color
highlighting.<br>
</div>
</blockquote>
<div><br>
</div>
<div>I agree that would be nice to have but I
don't think lists can currently do that. If you
add colored highlighting support to lists, I'll
use it :-)</div>
</div>
</div>
</blockquote>
<br>
Fair enough! I'll do it.<br>
</div>
</blockquote>
<div><br>
</div>
<div>Ready when you are.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff">
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> <br>
And maybe we could change the colors... Red
for new stuff is too strong, and usually means
'NO' (like a stop sign). Maybe Green would be
better. Not sure.<br>
</div>
</blockquote>
<div><br>
</div>
<div>I agree... red for add makes no sense. But
that was consistent with current behavior so I
kept it. I would prefer something green (or
blue) for adds, yellow for changes and red for
deletes. However, I wanted to hold off on
changing coloring logic until after we're sure
that these changes otherwise make sense and
don't break anything. While I'm reasonably
comfortable with the changes relative to the
base image, I was hoping to get it integrated to
see if this breaks anyone else's stuff before
actively trying to change the look/behavior too
much to minimize confusion.</div>
</div>
</div>
</blockquote>
<br>
Ok. This makes sense. Let's change colors later.
Hopefully soon, before this loses moment.<br>
</div>
</blockquote>
<div><br>
</div>
<div>Agreed.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#ffffff"> Cheers,<br>
<pre cols="72">--
Juan Vuletich
<a href="http://www.cuis-smalltalk.org" target="_blank">www.cuis-smalltalk.org</a>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a href="https://github.com/jvuletich" target="_blank">https://github.com/jvuletich</a>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
@JuanVuletich</pre>
</div>
</blockquote>
<div><br>
</div>
<div>Thanks,</div>
<div>Phil <br>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</blockquote></div>
</blockquote></div>