Bugs item #1728662, was opened at 2007-05-31 02:46
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=102439&aid=1728662&group_id=2439

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Istvan Szollosi (szteven)
Assigned to: Nobody/Anonymous (nobody)
Summary: GAP and Pascal folding bug

Initial Comment:
Folding is erroneous when the keyword causing fold-level change is not 
delimited by some white space from the rest (issue already mentioned for Pascal 
in bug report 1609317).

For example in Pascal the following code causes folding error:

   for i := 1 to 10 do
   begin
     writeln()
   ;end;

The GAP lexer also has this bug, since the code folding part is "inspired" by 
that of Pascal.
In GAP

   IsDirectSummand := function(s)
      # function body
   end;

... folds correctly, but the following does not:

   IsDirectSummand:=function(s)
      # same function body
   end;

The problem is that the beginning of a potential keyword is set (only!) at the 
point when the "keyword state" follows the "default state".
But the frontier between "keyword state" and anything else could mark the 
beginning of a folding keyword, so i changed the two lexers accordingly. 

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=102439&aid=1728662&group_id=2439
_______________________________________________
Scintilla-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scintilla-interest

Reply via email to