mirror of
https://github.com/ralsina/tartrazine.git
synced 2025-06-19 14:43:05 -03:00
Initial dumb stuff
This commit is contained in:
68
lexers/reg.xml
Normal file
68
lexers/reg.xml
Normal file
@ -0,0 +1,68 @@
|
||||
<lexer>
|
||||
<config>
|
||||
<name>reg</name>
|
||||
<alias>registry</alias>
|
||||
<filename>*.reg</filename>
|
||||
<mime_type>text/x-windows-registry</mime_type>
|
||||
</config>
|
||||
<rules>
|
||||
<state name="root">
|
||||
<rule pattern="Windows Registry Editor.*">
|
||||
<token type="Text"/>
|
||||
</rule>
|
||||
<rule pattern="\s+">
|
||||
<token type="Text"/>
|
||||
</rule>
|
||||
<rule pattern="[;#].*">
|
||||
<token type="CommentSingle"/>
|
||||
</rule>
|
||||
<rule pattern="(\[)(-?)(HKEY_[A-Z_]+)(.*?\])$">
|
||||
<bygroups>
|
||||
<token type="Keyword"/>
|
||||
<token type="Operator"/>
|
||||
<token type="NameBuiltin"/>
|
||||
<token type="Keyword"/>
|
||||
</bygroups>
|
||||
</rule>
|
||||
<rule pattern="("(?:\\"|\\\\|[^"])+")([ \t]*)(=)([ \t]*)">
|
||||
<bygroups>
|
||||
<token type="NameAttribute"/>
|
||||
<token type="Text"/>
|
||||
<token type="Operator"/>
|
||||
<token type="Text"/>
|
||||
</bygroups>
|
||||
<push state="value"/>
|
||||
</rule>
|
||||
<rule pattern="(.*?)([ \t]*)(=)([ \t]*)">
|
||||
<bygroups>
|
||||
<token type="NameAttribute"/>
|
||||
<token type="Text"/>
|
||||
<token type="Operator"/>
|
||||
<token type="Text"/>
|
||||
</bygroups>
|
||||
<push state="value"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="value">
|
||||
<rule pattern="-">
|
||||
<token type="Operator"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule pattern="(dword|hex(?:\([0-9a-fA-F]\))?)(:)([0-9a-fA-F,]+)">
|
||||
<bygroups>
|
||||
<token type="NameVariable"/>
|
||||
<token type="Punctuation"/>
|
||||
<token type="LiteralNumber"/>
|
||||
</bygroups>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule pattern=".+">
|
||||
<token type="LiteralString"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
</state>
|
||||
</rules>
|
||||
</lexer>
|
Reference in New Issue
Block a user