From: SourceForge.net <no...@so...> - 2008-02-24 21:39:58
|
Patches item #1845842, was opened at 2007-12-06 14:27 Message generated for change (Comment added) made by ezust You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=300588&aid=1845842&group_id=588 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: Chris Petersen (forevermore) >Assigned to: Marcelo Vanzin (vanza) Summary: perl.xml qq([test) syntax higlighting broken Initial Comment: It appears that the regex handler to match the closing parenthesis is matching on the open-bracket character and preventing the string (qq is the same as " ) from closing. ---------------------------------------------------------------------- >Comment By: Alan Ezust (ezust) Date: 2008-02-24 13:39 Message: Logged In: YES user_id=935841 Originator: NO assigning to vanza to review... ---------------------------------------------------------------------- Comment By: Chris Petersen (forevermore) Date: 2008-01-28 16:28 Message: Logged In: YES user_id=162554 Originator: YES Something's still not quite working properly, even with this patch. Basically, I'm trying to fix the perl syntax highlighting for q//, q(), and other forms of this string quoting method. In recent svn (haven't checked in a few days), the following patterns work fine: q/foo/ q(foo) q( foo() ) However, this fails: q( foo\) ) My initial patch just removed the open/close brace matching rule: <RULES SET="QUOTED" DEFAULT="LITERAL1"> <SPAN_REGEXP NO_LINE_BREAK="FALSE" TYPE="LITERAL1" MATCH_TYPE="OPERATOR" DELEGATE="QUOTED" HASH_CHARS="|[{(/"> <BEGIN>([\[{\(])</BEGIN> <END>~1</END> </SPAN_REGEXP> </RULES> That let q( foo\) ) match properly, but broke q( foo() ). My next attempt was to add an ESCAPE="\" to the span_regexp tag under rules, and to the main one that defines the q() regexp (around line 200), but neither had any effect. I'm wondering if this might be a jEdit bug in the rules matching, or if we need a new feature to allow for escape characters in those sequences. ---------------------------------------------------------------------- Comment By: Alan Ezust (ezust) Date: 2008-01-18 13:54 Message: Logged In: YES user_id=935841 Originator: NO moving to the patches tracker... ---------------------------------------------------------------------- Comment By: Chris Petersen (forevermore) Date: 2008-01-18 12:54 Message: Logged In: YES user_id=162554 Originator: YES Attaching a new diff. I don't know why the QUOTED rule was originally created, but perl's qq// type operators don't need to be balanced because they just contain strings. I've also broken qr// format out into a different delegate because it should match other regex pattern colors. Other fixes still include: * typo fix of word "apostrophe" in a comment * color code unquoted hash definitions as literal1 (e.g. a => 'b') File Added: perl.xml.diff ---------------------------------------------------------------------- Comment By: Chris Petersen (forevermore) Date: 2008-01-16 15:08 Message: Logged In: YES user_id=162554 Originator: YES Attaching a diff against svn trunk that works around the qq() syntax matching problem. It also adds a match for literals in hash definitions like (a=>'b') where "a" should be a string), and fixes the "avoid confusion with a sequence of two divisions" section to be a little more restrictive to avoid some false positives. File Added: perl.xml.diff ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=300588&aid=1845842&group_id=588 |