Hi Tween
First I would like to thank you for Shout because this is really good. I think that a lot of squeak teachers will really like it. I'm planning to use that for my books. I will evaluate it carefully and how I can customize it for my needs.
I have two questions.
Question 1.
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.
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?
Stef
----- Original Message ----- From: "stéphane ducasse" ducasse@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
squeak-fr@lists.squeakfoundation.org