Revision: 3397 http://geany.svn.sourceforge.net/geany/?rev=3397&view=rev Author: ntrel Date: 2008-12-18 16:26:26 +0000 (Thu, 18 Dec 2008)
Log Message: ----------- Also parse headings with tags inside header tag.
Modified Paths: -------------- trunk/ChangeLog trunk/tagmanager/html.c
Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2008-12-17 16:28:36 UTC (rev 3396) +++ trunk/ChangeLog 2008-12-18 16:26:26 UTC (rev 3397) @@ -1,3 +1,9 @@ +2008-12-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com> + + * tagmanager/html.c: + Also parse headings with tags inside header tag. + + 2008-12-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keyfile.c:
Modified: trunk/tagmanager/html.c =================================================================== --- trunk/tagmanager/html.c 2008-12-17 16:28:36 UTC (rev 3396) +++ trunk/tagmanager/html.c 2008-12-18 16:26:26 UTC (rev 3397) @@ -23,16 +23,7 @@ static void installHtmlRegex (const langType language) { #define POSSIBLE_ATTRIBUTES "([ \t]+[a-z]+="?[^>"]*"?)*" -/* the following matches headings with "<a>" tags inside like - * <h1><a href="#id109">Some Text</a></h1> - * but it fails matching simple headings like - * <h1>Some Text</h1> */ -/*#define INNER_HEADING "[ \t]*<.*>(.+)<.*>[ \t]*"*/
-/* this matches simple heading without nested tags */ -/** TODO combine both pattern to be able to match both heading styles */ -#define INNER_HEADING "[ \t]*(.+)[ \t]*" - addTagRegex (language, "<a" POSSIBLE_ATTRIBUTES @@ -41,20 +32,29 @@ "[ \t]*>", "\2", "m,member,named anchors", "i");
+ addTagRegex (language, "^[ \t]*function[ \t]*([A-Za-z0-9_]+)[ \t]*\(", + "\1", "f,function,JavaScript functions", NULL); + +/* the following matches headings with tags inside like + * <h1><a href="#id109"><i>Some Text</i></a></h1> + * and + * <h1>Some Text</h1> */ +#define SPACES "[ \t]*" +#define ATTRS "[^>]*" +#define INNER_HEADING \ + ATTRS ">" SPACES "(<" ATTRS ">" SPACES ")*([^<]+).*" + addTagRegex (language, - "<h1.*>" INNER_HEADING "</h1>", - "\1", "n,namespace,H1 heading", "i"); + "<h1" INNER_HEADING "</h1>", + "\2", "n,namespace,H1 heading", "i");
addTagRegex (language, - "<h2.*>" INNER_HEADING "</h2>", - "\1", "c,class,H2 heading", "i"); + "<h2" INNER_HEADING "</h2>", + "\2", "c,class,H2 heading", "i");
addTagRegex (language, - "<h3.*>" INNER_HEADING "</h3>", - "\1", "v,variable,H3 heading", "i"); - - addTagRegex (language, "^[ \t]*function[ \t]*([A-Za-z0-9_]+)[ \t]*\(", - "\1", "f,function,JavaScript functions", NULL); + "<h3" INNER_HEADING "</h3>", + "\2", "v,variable,H3 heading", "i"); }
/* Create parser definition stucture */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.