On 04 Apr 2014, at 19:26, J.F. Rick <self@je77.com> wrote:

On Fri, Apr 4, 2014 at 6:41 PM, Ben Coman <btc@openinworld.com> wrote:
For assignment, I would say bold both := and the variable being assigned to.

I like that a lot, especially since it draws the two critical elements of variable and assignment together. On a minor note, both := and = are currently the same color: black. That only furthers the ":= is a message" misconception. It might be worthwhile also giving := its own color, given its uniqueness.



yes this would be nice. And a fix for that. 

Did you also see that what I like is to make a distinction between a possible selector and a wrong one? because this is nice.


 
Underlining sounds interesting, but there are a few choices:
a. nested underlining - self someMessage: (self otherMessage: arg 1 and: arg2) and: arg3
b. non-nested underlining - only underline #otherMessage:and: and not #someMessage:and:
c. dynamically underline only message where cursor is located.

I think you could do nested underlining in the same way that nested blocks and parentheses work. someMessage: and the second and: are underlined in black. otherMessage: and the first and: are underlined in green. That way nesting is clear. This would also be useful for code with nested conditionals, probably the most common occurrence of nested multi-part messages. I also like (c) as a minimally intrusive change that could help novices when they write code. It has the disadvantage that novices couldn't look at a piece of foreign code and get where the multi-part messages were. 

Cheers,

Jeff

--
Jochen "Jeff" Rick, Ph.D.
http://www.je77.com/
Skype ID: jochenrick