From: Matthieu C. <cho...@gm...> - 2006-03-30 07:07:50
|
2006/3/30, Dale Anson <da...@gr...>: > > Looking better! I do see a couple of inconsistencies: > > 1. In this one, > < STRING_LITERAL: > "\"" > ( (~["\"","\\","\n","\r"]) > | ("\\" > ( ["n","t","b","r","f","\\","'","\""] > | ["0"-"7"] ( ["0"-"7"] )? > | ["0"-"3"] ["0"-"7"] ["0"-"7"] > ) > ) > )* > "\"" > > > > the commas in the first row with commas are different color than the > commas in the second row with commas. > > 2. In this one, > < INTEGER_LITERAL: > <DECIMAL_LITERAL> (["l","L"])? > | <HEX_LITERAL> (["l","L"])? > | <OCTAL_LITERAL> (["l","L"])? > > > > the question marks are different color than the question marks in #1. > Also, the leading < is different color than the trailing >. > > 3. In this one, > void ExpressionList() : > { > String s; > } > { > { > System.out.println("Please type in an expression followed by a > \";\" or ^D to quit:"); > System.out.println(""); > } > ( s=3DExpression() ";" > { > System.out.println(s); > System.out.println(""); > System.out.println("Please type in another expression followed b= y > a \";\" or ^D to quit:"); > System.out.println(""); > } > )* > <EOF> > } > > string highlighting missed the escaped double quote in the first > System.out.println, so the text following the first \" is not right. > > This is looking much better! Ok I think this one is good :) <?xml version=3D"1.0"?> <!DOCTYPE MODE SYSTEM "xmode.dtd"> <MODE> <PROPS> <PROPERTY NAME=3D"commentStart" VALUE=3D"/*" /> <PROPERTY NAME=3D"commentEnd" VALUE=3D"*/" /> <PROPERTY NAME=3D"lineComment" VALUE=3D"//" /> <PROPERTY NAME=3D"wordBreakChars" VALUE=3D",+-=3D<>/?^&*"= /> <!-- Auto indent --> <PROPERTY NAME=3D"indentOpenBrackets" VALUE=3D"{" /> <PROPERTY NAME=3D"indentCloseBrackets" VALUE=3D"}" /> <PROPERTY NAME=3D"unalignedOpenBrackets" VALUE=3D"(" /> <PROPERTY NAME=3D"unalignedCloseBrackets" VALUE=3D")" /> <PROPERTY NAME=3D"indentNextLine" VALUE=3D"\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)"/= > <PROPERTY NAME=3D"unindentThisLine" VALUE=3D"^.*(default:\s*|case.*:.*)$" /> <PROPERTY NAME=3D"electricKeys" VALUE=3D":" /> </PROPS> <RULES IGNORE_CASE=3D"FALSE" ESCAPE=3D"\"> <IMPORT DELEGATE=3D"java::MAIN"/> <SEQ_REGEXP HASH_CHAR=3D"<" TYPE=3D"KEYWORD2"><[[:space:]]*\w+([[:space:]]*[,][[:space:]]*\w+[[:spac= e:]]*)*[[:space:]]*></SEQ_REGEXP> <!-- <SPAN DELEGATE=3D"DEFINITION1"> <BEGIN><</BEGIN> <END>></END> </SPAN> --> <SPAN_REGEXP HASH_CHAR=3D"<" DELEGATE=3D"DEFINITION1" TYPE=3D"KEYWORD2"> <BEGIN><[[:space:]]*\w+[[:space:]]*[:]</BEGIN> <END>></END> </SPAN_REGEXP> <!-- regular expression definitions --> <!-- <SEQ_REGEXP HASH_CHAR=3D"<" TYPE=3D"KEYWORD2"><[[:space:]]*\w+[[:space:]]*[:]</SEQ_REGEXP> --> <!-- regular expression label(s) --> <!-- private regular expression labels --> <SEQ_REGEXP HASH_CHAR=3D"#" TYPE=3D"KEYWORD2">[#]\w+[:]</SEQ_REGEXP= > <KEYWORDS> <!-- javacc keywords --> <KEYWORD1>EOF</KEYWORD1> <KEYWORD1>IGNORE_CASE</KEYWORD1> <KEYWORD1>JAVACODE</KEYWORD1> <KEYWORD1>LOOKAHEAD</KEYWORD1> <KEYWORD1>MORE</KEYWORD1> <KEYWORD1>PARSER_BEGIN</KEYWORD1> <KEYWORD1>PARSER_END</KEYWORD1> <KEYWORD1>SKIP</KEYWORD1> <KEYWORD1>SPECIAL_TOKEN</KEYWORD1> <KEYWORD1>TOKEN</KEYWORD1> <KEYWORD1>TOKEN_MGR_DECLS</KEYWORD1> <KEYWORD1>options</KEYWORD1> <!-- DEFAULT is the standard lexical state --> <KEYWORD2>DEFAULT</KEYWORD2> </KEYWORDS> </RULES> <RULES SET=3D"DEFINITION1" DEFAULT=3D"KEYWORD2" ESCAPE=3D"\"> <SPAN TYPE=3D"COMMENT1"> <BEGIN>/*</BEGIN> <END>*/</END> </SPAN> <SPAN TYPE=3D"LITERAL1" NO_LINE_BREAK=3D"TRUE"> <BEGIN>"</BEGIN> <END>"</END> </SPAN> <SEQ TYPE=3D"OPERATOR">,</SEQ> <SEQ TYPE=3D"OPERATOR">-</SEQ> <SEQ TYPE=3D"OPERATOR">?</SEQ> <SEQ TYPE=3D"OPERATOR">:</SEQ> <SEQ TYPE=3D"OPERATOR">|</SEQ> <SEQ TYPE=3D"OPERATOR">[</SEQ> <SEQ TYPE=3D"OPERATOR">]</SEQ> <SEQ TYPE=3D"OPERATOR">(</SEQ> <SEQ TYPE=3D"OPERATOR">)</SEQ> <SEQ TYPE=3D"OPERATOR">*</SEQ> <SEQ TYPE=3D"OPERATOR">~</SEQ> <SEQ TYPE=3D"OPERATOR"><</SEQ> <SEQ TYPE=3D"OPERATOR">></SEQ> </RULES> </MODE> |