Shout: (Syntax Highlighting as You Type) is cool

Andrew Tween amtween at hotmail.com
Fri May 7 01:04:33 UTC 2004


----- Original Message ----- 
From: "stéphane ducasse" <ducasse at iam.unibe.ch>

Thanks for the feedback and suggestions.

> When I type a variable that is not defined is red until I fall on one
> that is defined. So the message shout send me is that I'm basically all
> the time typing wrong. Have you thought of doing the following?
>
> Imagine the code:
> | aVar|
> aVa
>
> if my cursor is after aVa then the variable is not red but blue, then
> if I press space then it gets red,
> and if I type aVar is does not get red.

I agree that the red gives the wrong impression. It suggests that an
identifier is wrong, when in reality it is incomplete, and could become
correct with some more typing.
Another approach would be to differentiate between an identifier that can
never become correct with extra typing (because no variable begins with that
identifier, e.g. Stringxxxx), and an identifier that could become correct if
the right characters were typed (e.g. Strin  ).
Perhaps showing potentially correct identifiers in underscored grey would be
better than red?
And showing definately incorrect identifiers in red would then be most
appropriate .

So, if I type Strin, it will be underscored grey. Then I type 'g' to make
String and it turns black. If I type a further 'x' to make Stringx , it then
turns red.
This sounds quite easy to do, and has the benefit that the styler does not
need to know about which character was last typed, or where the insert
postion was.
It also works in reverse (start with Stringx in red, delete the x to make
String in black, delete the g to make Strin in underscored grey).
Since the colours and  emphasis can be customised for each token, users
could then configure Shout to show incorrect, incomplete, and correct
identifiers how ever they choose.

> Question 2.
> When I type a method name it would be great to get it red if it is not
> implemented in the system.
> (we could refine that if we know that this is self and super and
> looking also in the superclass but this can be tricky).
> Are you planning to add this feature?

Another good idea.
I had planned to try to implement some kind of auto complete, perhaps a list
that pops up (and disappears) automatically under the current typing.
Maybe the grey underscore idea would be appropriate here also?

Cheers,
Andy


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.672 / Virus Database: 434 - Release Date: 30/04/2004



More information about the Squeak-dev mailing list