Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread Martin Frb

On 25/01/2015 13:14, Mattias Gaertner wrote:

The following is now highlighted as constant:
c:=p^;



Fixed.

--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread C Western

Thanks for the quick fix.

Colin

--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread Martin Frb

On 25/01/2015 13:23, Mattias Gaertner wrote:

That is because the highlighter now treats ^{ as constant and so the
{$endif} is not seen by the highlighter code.

AFAIK only ^A..^Z are constants.



No,

program Project1;
begin
  writeln( ^{ );
end.

compiles. Also
  writeln( ^^ );
  writeln( ^. );
even space
  writeln( ^  );
are ok

But
  writeln( ^{ $);
does not.

Seems than directives have a special priority.

Also other multi char tokens (* are split
  writeln( ^(* 8 );
project1.lpr(4,12) Error: Incompatible types: got "Char" expected "LongInt"

So this is:  char * 8




--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread Mattias Gaertner
On Sun, 25 Jan 2015 13:00:17 +
C Western  wrote:

> On 24/01/15 20:33, Martin Frb wrote:
> > On 19/01/2015 17:09, Martin Frb wrote:
> >> On 19/01/2015 13:17, Dmitry Boyarintsev wrote:
> >>>
> >>> CodeTools syntax highlighter won't recognize the syntax as characters
> >>> either (delphi 7 highlighter doesn't recognize it as a character
> >>> escaping as well)
> >>>
> >>
> >> Add  that to the bugtracker please (as synedit HL issue).
> >>
> >> It is probably easy to fix, simple a question of not forgetting it
> >
> > Implemented in Lazarus trunk
> > ^C now highlights as char, except, for things like "type x = ^C;"
> >
> > Note there are places where neither are char, nor a ^SomeType are legal,
> > in those cases there is no rule as what it will be highlighted.
> 
> There seems to be a corner case that needs a little work:
> 
> TypeData :=
> GetTypeData(PropInfo^.PropType{$IFNDEF FPC}^{$ENDIF});
> 
> causes all the rest of the file after "FPC" to show as grayed out, i.e. 
> as if it was one big conditional.

That is because the highlighter now treats ^{ as constant and so the
{$endif} is not seen by the highlighter code.

AFAIK only ^A..^Z are constants.

Mattias

--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread Mattias Gaertner
On Sat, 24 Jan 2015 20:33:18 +
Martin Frb  wrote:

> On 19/01/2015 17:09, Martin Frb wrote:
> > On 19/01/2015 13:17, Dmitry Boyarintsev wrote:
> >>
> >> CodeTools syntax highlighter won't recognize the syntax as characters 
> >> either (delphi 7 highlighter doesn't recognize it as a character 
> >> escaping as well)
> >>
> >
> > Add  that to the bugtracker please (as synedit HL issue).
> >
> > It is probably easy to fix, simple a question of not forgetting it
> 
> Implemented in Lazarus trunk
> ^C now highlights as char, except, for things like "type x = ^C;"
> 
> Note there are places where neither are char, nor a ^SomeType are legal, 
> in those cases there is no rule as what it will be highlighted.

The following is now highlighted as constant:
c:=p^;

Mattias

--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-25 Thread C Western

On 24/01/15 20:33, Martin Frb wrote:

On 19/01/2015 17:09, Martin Frb wrote:

On 19/01/2015 13:17, Dmitry Boyarintsev wrote:


CodeTools syntax highlighter won't recognize the syntax as characters
either (delphi 7 highlighter doesn't recognize it as a character
escaping as well)



Add  that to the bugtracker please (as synedit HL issue).

It is probably easy to fix, simple a question of not forgetting it


Implemented in Lazarus trunk
^C now highlights as char, except, for things like "type x = ^C;"

Note there are places where neither are char, nor a ^SomeType are legal,
in those cases there is no rule as what it will be highlighted.


There seems to be a corner case that needs a little work:

TypeData :=
GetTypeData(PropInfo^.PropType{$IFNDEF FPC}^{$ENDIF});

causes all the rest of the file after "FPC" to show as grayed out, i.e. 
as if it was one big conditional.


Colin


--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] [fpc-pascal] character escaping with ^LETTER

2015-01-24 Thread Martin Frb

On 19/01/2015 17:09, Martin Frb wrote:

On 19/01/2015 13:17, Dmitry Boyarintsev wrote:


CodeTools syntax highlighter won't recognize the syntax as characters 
either (delphi 7 highlighter doesn't recognize it as a character 
escaping as well)




Add  that to the bugtracker please (as synedit HL issue).

It is probably easy to fix, simple a question of not forgetting it


Implemented in Lazarus trunk
^C now highlights as char, except, for things like "type x = ^C;"

Note there are places where neither are char, nor a ^SomeType are legal, 
in those cases there is no rule as what it will be highlighted.


--
___
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus