Originally posted on 2005-05-02
This will give you syntax highlighting in jEdit for LiveJournal’s S2 styling system.
Drop into [jedit profile dir]/modes/ and edit catalog to include something like <MODE FILE="s2.xml" NAME="S2" FILE_NAME_GLOB="*.s2" />
Source: s2.xml
<?xml version="1.0"?>
<!DOCTYPE MODE SYSTEM "xmode.dtd">
<MODE>
<PROPS>
<PROPERTY NAME="lineComment" VALUE="#" />
<PROPERTY NAME="indentOpenBrackets" VALUE="{" />
<PROPERTY NAME="indentCloseBrackets" VALUE="}" />
<PROPERTY NAME="lineUpClosingBracket" VALUE="true" />
</PROPS>
<RULES ESCAPE="\" HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="FALSE">
<!-- Comments -->
<EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>
<!-- Variables -->
<SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD2">\$(?:(\.|\*)|\w)+</SEQ_REGEXP>
<!-- Literals -->
<SPAN TYPE="LITERAL1">
<BEGIN>"""</BEGIN>
<END>"""</END>
</SPAN>
<SPAN TYPE="LITERAL1" DELEGATE="LITERAL">
<BEGIN>"</BEGIN>
<END>"</END>
</SPAN>
<!-- Function calls -->
<MARK_PREVIOUS TYPE="FUNCTION" EXCLUDE_MATCH="TRUE">(</MARK_PREVIOUS>
<!-- Operators -->
<SEQ TYPE="OPERATOR">>=</SEQ>
<SEQ TYPE="OPERATOR"><=</SEQ>
<SEQ TYPE="OPERATOR">></SEQ>
<SEQ TYPE="OPERATOR"><</SEQ>
<SEQ TYPE="OPERATOR">=</SEQ>
<SEQ TYPE="OPERATOR">+</SEQ>
<SEQ TYPE="OPERATOR">-</SEQ>
<SEQ TYPE="OPERATOR">/</SEQ>
<SEQ TYPE="OPERATOR">*</SEQ>
<SEQ TYPE="OPERATOR">%</SEQ>
<SEQ TYPE="OPERATOR">}</SEQ>
<SEQ TYPE="OPERATOR">{</SEQ>
<SEQ TYPE="OPERATOR">?</SEQ>
<SEQ TYPE="OPERATOR">:</SEQ>
<!-- Keywords -->
<KEYWORDS>
<KEYWORD1>return</KEYWORD1>
<KEYWORD1>if</KEYWORD1>
<KEYWORD1>while</KEYWORD1>
<KEYWORD1>elsif</KEYWORD1>
<KEYWORD1>else</KEYWORD1>
<KEYWORD1>foreach</KEYWORD1>
<KEYWORD2>int</KEYWORD2>
<KEYWORD2>bool</KEYWORD2>
<KEYWORD2>string</KEYWORD2>
<KEYWORD1>layerinfo</KEYWORD1>
<KEYWORD1>property</KEYWORD1>
<KEYWORD1>set</KEYWORD1>
<KEYWORD1>function</KEYWORD1>
<KEYWORD1>var</KEYWORD1>
<KEYWORD1>class</KEYWORD1>
<OPERATOR>not</OPERATOR>
<OPERATOR>and</OPERATOR>
<OPERATOR>or</OPERATOR>
<KEYWORD3>isnull</KEYWORD3>
<KEYWORD3>defined</KEYWORD3>
<KEYWORD3>newnull</KEYWORD3>
<KEYWORD3>new</KEYWORD3>
<KEYWORD3>reverse</KEYWORD3>
<KEYWORD3>size</KEYWORD3>
<KEYWORD3>extends</KEYWORD3>
<KEYWORD3>builtin</KEYWORD3>
<KEYWORD3>use</KEYWORD3>
</KEYWORDS>
</RULES>
</MODE>