You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
301 lines
5.1 KiB
301 lines
5.1 KiB
# JOE syntax highlight file for Ant's build scripts |
|
|
|
# http://ant.apache.org/ |
|
|
|
# using the XML highlighter with better colors since |
|
# ant scripts heavily rely on the tags (blue is a bad color here) |
|
# instead of their contents |
|
|
|
# Improved XML highlighter by: Brian Candler <B.Candler@pobox.com> |
|
|
|
=Idle |
|
=Bad red bold |
|
=Tag bold |
|
=Attr |
|
=Constant cyan |
|
=Escape bold cyan |
|
=EntityRef magenta |
|
=Decl cyan |
|
=CommentStart green |
|
=CommentBody green |
|
=CommentEnd green |
|
=PIStart yellow bold |
|
=PIBody yellow |
|
=PIEnd yellow bold |
|
=CdataStart blue bold |
|
=CdataBody bold |
|
=CdataEnd blue bold |
|
|
|
=Keytag bold magenta #fg_310 # brown |
|
|
|
|
|
# http://www.w3.org/TR/2004/REC-xml-20040204/ |
|
# |
|
# NOTE: For UNICODE compatibility, the ranges |
|
# "A-Za-z_:" -- first character of Name |
|
# "A-Za-z0-9._:-" -- subsequent characters of Name |
|
# ought to be replaced with some appropriate Unicode character classes |
|
|
|
:content Idle |
|
* content |
|
"<" tag recolor=-1 |
|
"&" entityref recolor=-1 |
|
|
|
# > is allowed |
|
# ">" error noeat recolor=-1 |
|
|
|
|
|
# In several contexts a space is an error, and since a coloured space is |
|
# not visible, we colour the next non-space character as well. |
|
|
|
:error Bad |
|
* error_visible noeat recolor=-1 |
|
" \t\r\n" error |
|
|
|
:error_visible Bad |
|
* content |
|
|
|
# Matched: & |
|
|
|
:entityref EntityRef |
|
* error noeat recolor=-1 |
|
"A-Za-z0-9._:-" entityref |
|
"#" entityref |
|
";" content |
|
|
|
# Matched: < |
|
|
|
:tag Tag |
|
* error noeat recolor=-1 |
|
"/" end_tag |
|
"A-Za-z_:" start_or_empty_tag buffer |
|
"?" pi_start recolor=-2 |
|
"!" decl recolor=-2 buffer |
|
|
|
# Matched: </ |
|
|
|
:end_tag Tag |
|
* error noeat recolor=-1 |
|
"A-Za-z_:" end_tag2 |
|
|
|
:end_tag2 Tag |
|
* error noeat recolor=-1 |
|
"A-Za-z0-9._:-" end_tag2 |
|
" \t\r\n" end_tag2_sp recolor=-1 |
|
">" content |
|
|
|
:end_tag2_sp Idle |
|
* end_tag3 noeat |
|
|
|
:end_tag3 Tag |
|
* error noeat recolor=-1 |
|
" \t\r\n" end_tag3_sp recolor=-1 |
|
">" content |
|
|
|
:end_tag3_sp Idle |
|
* end_tag_3 noeat |
|
|
|
# Matched: <tag |
|
|
|
# compare tag name of start/empty tags with a list |
|
# of Ant specific keywords |
|
:start_or_empty_tag Tag |
|
* decide_tag_type noeat strings |
|
"target" kw |
|
done |
|
"A-Za-z0-9._:-" start_or_empty_tag |
|
|
|
:kw Keytag |
|
* decide_tag_type noeat |
|
|
|
:decide_tag_type Tag |
|
* error noeat recolor=-1 |
|
"/" empty_tag |
|
" \t\r\n" start_or_empty_tag_sp |
|
">" content |
|
|
|
:start_or_empty_tag_sp Idle |
|
* tag_space noeat |
|
|
|
# Matched: <tag/ |
|
|
|
:empty_tag Tag |
|
* error noeat recolor=-1 |
|
">" content |
|
|
|
# Matched: <tag SPACE |
|
|
|
:tag_space Attr |
|
* error noeat recolor=-1 |
|
" \t\r\n" tag_space_sp recolor=-1 |
|
"A-Za-z_:" attr |
|
"/" empty_tag recolor=-1 |
|
">" close_tag recolor=-1 |
|
|
|
:tag_space_sp Idle |
|
* tag_space noeat |
|
|
|
# Matched: <tag attr |
|
|
|
:attr Attr |
|
* error noeat recolor=-1 |
|
"A-Za-z0-9._:-" attr |
|
" \t\r\n" attr_sp recolor=-1 |
|
"=" string |
|
|
|
:attr_sp Idle |
|
* attr_before noeat |
|
|
|
:attr_before Attr |
|
* error noeat recolor=-1 |
|
" \t\r\n" attr_sp recolor=-1 |
|
"=" string |
|
|
|
# Matched: <tag attr= |
|
|
|
:string Attr |
|
* error noeat recolor=-1 |
|
" \t\r\n" string_sp recolor=-1 |
|
"\"" string_dq recolor=-1 |
|
"'" string_sq recolor=-1 |
|
|
|
:string_sp Idle |
|
* string noeat |
|
|
|
# Matched: <tag attr=" |
|
|
|
:string_dq Constant |
|
* string_dq |
|
"<" error noeat recolor=-1 |
|
"&" char_dq recolor=-1 |
|
"\"" endstring |
|
"$" string_dq call=.antvar() |
|
|
|
# ">" error noeat recolor=-1 |
|
|
|
|
|
:string_sq Constant |
|
* string_sq |
|
"<" error noeat recolor=-1 |
|
"&" char_sq recolor=-1 |
|
"'" endstring |
|
"$" string_sq call=.maybe_antvar() |
|
|
|
# ">" error noeat recolor=-1 |
|
|
|
|
|
:char_dq EntityRef |
|
* error noeat recolor=-1 |
|
"A-Za-z0-9._:-" char_dq |
|
"#" char_dq |
|
";" string_dq |
|
|
|
:char_sq EntityRef |
|
* error noeat recolor=-1 |
|
"A-Za-z0-9._:-" char_sq |
|
"#" char_sq |
|
";" string_sq |
|
|
|
.subr maybe_antvar |
|
# initial state |
|
:maybe_antvar Constant |
|
* NULL return |
|
"{" antvar recolor=-2 |
|
|
|
:antvar Escape |
|
* antvar |
|
"}" NULL return |
|
.end |
|
|
|
# Matched: <tag attr="foo" |
|
|
|
:endstring Attr |
|
* error noeat recolor=-1 |
|
" \t\r\n" tag_space_sp |
|
"/" empty_tag recolor=-1 |
|
">" close_tag recolor=-1 |
|
|
|
# This state is just to recolor the final ">" at the end of <tag attr="val"> |
|
|
|
:close_tag Tag |
|
* content noeat |
|
|
|
# Matched: <? |
|
|
|
:pi_start PIStart |
|
* pi noeat recolor=-1 |
|
|
|
:pi PIBody |
|
* pi |
|
"?" pi2 |
|
|
|
:pi2 PIBody |
|
* pi |
|
">" pi_end recolor=-2 |
|
|
|
:pi_end PIEnd |
|
* content noeat recolor=-1 |
|
|
|
# Matched: <! |
|
|
|
:decl Decl |
|
* decl strings |
|
"!--" comment_start recolor=-5 |
|
"![CDATA[" cdata_start recolor=-10 |
|
done |
|
"<" decl_nest |
|
">" content |
|
|
|
# We allow one level of <...> nesting within declarations |
|
|
|
:decl_nest Decl |
|
* decl_nest |
|
">" decl |
|
|
|
# Matched: <!-- |
|
|
|
:comment_start CommentStart |
|
* comment noeat |
|
|
|
:comment CommentBody |
|
* comment |
|
"-" comment2 |
|
|
|
:comment2 CommentBody |
|
* comment |
|
"-" comment3 |
|
|
|
:comment3 CommentBody |
|
* comment_error noeat recolor=-3 |
|
">" comment_end recolor=-3 |
|
|
|
:comment_end CommentEnd |
|
* content noeat recolor=-1 |
|
|
|
# For compatibility, the string "--" (double-hyphen) MUST NOT occur within |
|
# comments. [http://www.w3.org/TR/REC-xml/ section 2.5] |
|
|
|
:comment_error Bad |
|
* comment |
|
"-" comment_error |
|
">" comment_end recolor=-3 |
|
|
|
# Matched: <![CDATA[ |
|
|
|
:cdata_start CdataStart |
|
* cdata noeat |
|
|
|
:cdata CdataBody |
|
* cdata |
|
"]" cdata2 |
|
|
|
:cdata2 CdataBody |
|
* cdata |
|
"]" cdata3 |
|
|
|
:cdata3 CdataBody |
|
* cdata |
|
">" cdata_end recolor=-3 |
|
|
|
:cdata_end CdataEnd |
|
* content noeat recolor=-1
|
|
|