TIDEMemo : Parameters hint stop working if ";" is used a argument separator in a function/procedure

Hello,

In a TIDEMemo compiled with Delphi 11.3 in VCL Win32. TMS Scripter 7.30. With PascalScripter :

If you write :

procedure Increase(var C);
begin                                                                                                                   
   Showmessage(                                              
end; 
            

=> Parameters hint work after '(' of showmessage

procedure Increase(var C; AInc);
begin                                                                                                                   
   Showmessage(                                              
end; 

=> Parameters hint doesn't work after '(' of showmessage

But :

procedure Increase(var C, AInc);
begin                                                                                                                   
   Showmessage(                                              
end; 

=> Parameter Hint will work after '(' of showmessage
I have replaced argument list separator ";" by ","

Why ?
The problem it is that if it's exists only one ";" argument separator in a function/procedure of a script Parameter hint will stop working everywhere in the TIDEMemo !

PS : "Increase(var C; AInc);" function of my sample has been taken in your documentation "scripter-user-guide.pdf" page 59

Full sample in attachment
TIDEMemo.zip (94,9 Ko)

Unfortunately there as situations where indeed the "code insight" would not respond. The parser for code and parameter is partial and not exactly the same as the regular parser of the script for execution.

Hello Wagner,

That a shame because your TIDEMemo is became so powerful and efficient, like all you have coded !
I have left the TSynEdit to use this component now.

Maybe a little workaround but a bit complicated with more than 10 years of existing scripts.
Can you confirm me that for Scripter (TatPascalScripter) :

Procedure MyProcedure(ADateStart:TDateTime;ADuration:integer);

work exactly the same like :

Procedure MyProcedure(ADateStart:TDateTime,ADuration:integer);

or

Procedure MyProcedure(ADateStart,ADuration);

Because it's doesn't like ";" argument separator and all variable are variant in scripter ?

Yes, all of those syntax work fine.