vhs.xml

 1<lexer>
 2  <config>
 3    <name>VHS</name>
 4	<alias>vhs</alias>
 5	<alias>tape</alias>
 6	<alias>cassette</alias>
 7	<filename>*.tape</filename>
 8  </config>
 9  <rules>
10    <state name="root">
11      <rule pattern="(Output)(\s+)(.*)(\s+)">
12	    <bygroups>
13	      <token type="Keyword"/>
14	      <token type="TextWhitespace"/>
15	      <token type="LiteralString"/>
16	      <token type="TextWhitespace"/>
17		</bygroups>
18      </rule>
19      <rule pattern="\b(Set|Type|Left|Right|Up|Down|Backspace|Enter|Tab|Space|Ctrl|Sleep|Hide|Show|Escape)\b">
20        <token type="Keyword"/>
21      </rule>
22      <rule pattern="\b(FontFamily|FontSize|Framerate|Height|Width|Theme|Padding|TypingSpeed|PlaybackSpeed|LineHeight|Framerate|LetterSpacing)\b">
23        <token type="NameBuiltin"/>
24      </rule>
25      <rule pattern="#.*(\S|$)">
26        <token type="Comment"/>
27      </rule>
28      <rule pattern="(?s)&#34;.*&#34;">
29        <token type="LiteralStringDouble"/>
30      </rule>
31      <rule pattern="(?s)&#39;.*&#39;">
32        <token type="LiteralStringSingle"/>
33      </rule>
34      <rule pattern="(@|\+)">
35        <token type="Punctuation"/>
36      </rule>
37      <rule pattern="\d+">
38        <token type="LiteralNumber"/>
39      </rule>
40      <rule pattern="\s+">
41        <token type="TextWhitespace"/>
42      </rule>
43      <rule pattern="(ms|s)">
44        <token type="Text"/>
45      </rule>
46	</state>
47  </rules>
48</lexer>