[Lazarus] Should the "at" word be painted as reserved word ?

Martin lazarus at mfriebe.de
Mon Feb 13 04:33:35 CET 2012


On 13/02/2012 02:13, Bernd wrote:
> 2012/2/12 ik<idokan at gmail.com>:
>
>> Raise Exception.Create('') at get_caller_frame(get_frame);
>>
>> Does not paint the "at" code as reserve word.
>> It is not a reserved word according to the documentation, but on this
>> specific case, it act as one imho.
> According to my "Sprachgefühl" this cannot be anything other than a
> reserved word. Its not an identifier, its not an operator, it can only
> be a reserved word.
>
>> Do you think like me, that it should be painted on this case as a reserve
>> word ?
> +1

It does not matter how they are named. From a user point of view they 
could be highlighted. Or at least as an option.
Such context sensitive stuff is already done in some places.

The problem is how the parser works. And each context addition adds to 
the workload. It is enough, if one file contains them, for all to be 
affected.
I do not think this one will be trouble, it depends what is added next.
Also I am not sure if it currently is worth the work (after all it must 
ONLY be in that very specific context, the way the scanning works, the 
scanner may only have a fragment of the statement when decision is due)

There are other things too:
> 1. Why SynPasHighlighter thinks that "contains" is a keyword (and
> types it in bold)?
> 2. In declaration of external functions like the following
>    procedure P; external 'someLib' name 'someName';
> the "name" is like a keyword. So it would be nice if it'll be in bold
> font.

I have plans to make changes that could reduce those issues, but not 
very soon...




More information about the Lazarus mailing list