mirror of
https://github.com/cheat/cheat.git
synced 2026-03-07 11:13:33 +01:00
- Bump Go from 1.19 to 1.26 and update all dependencies - Rewrite CI workflow with matrix strategy (Linux, macOS, Windows) - Update GitHub Actions to current versions (checkout@v4, setup-go@v5) - Update CodeQL actions from v1 to v3 - Fix cross-platform bug in mock/path.go (path.Join -> filepath.Join) - Clean up dependabot config (weekly schedule, remove stale ignore) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
132 lines
4.0 KiB
XML
132 lines
4.0 KiB
XML
<lexer>
|
|
<config>
|
|
<name>HLB</name>
|
|
<alias>hlb</alias>
|
|
<filename>*.hlb</filename>
|
|
</config>
|
|
<rules>
|
|
<state name="root">
|
|
<rule pattern="(#.*)">
|
|
<token type="CommentSingle" />
|
|
</rule>
|
|
<rule pattern="((\b(0(b|B|o|O|x|X)[a-fA-F0-9]+)\b)|(\b(0|[1-9][0-9]*)\b))">
|
|
<token type="LiteralNumber" />
|
|
</rule>
|
|
<rule pattern="((\b(true|false)\b))">
|
|
<token type="NameBuiltin" />
|
|
</rule>
|
|
<rule pattern="(\bstring\b|\bint\b|\bbool\b|\bfs\b|\boption\b)">
|
|
<token type="KeywordType" />
|
|
</rule>
|
|
<rule pattern="(\b[a-zA-Z_][a-zA-Z0-9]*\b)(\()">
|
|
<bygroups>
|
|
<token type="NameFunction" />
|
|
<token type="Punctuation" />
|
|
</bygroups>
|
|
<push state="params" />
|
|
</rule>
|
|
<rule pattern="(\{)">
|
|
<token type="Punctuation" />
|
|
<push state="block" />
|
|
</rule>
|
|
<rule pattern="(\n|\r|\r\n)">
|
|
<token type="Text" />
|
|
</rule>
|
|
<rule pattern=".">
|
|
<token type="Text" />
|
|
</rule>
|
|
</state>
|
|
<state name="string">
|
|
<rule pattern=""">
|
|
<token type="LiteralString" />
|
|
<pop depth="1" />
|
|
</rule>
|
|
<rule pattern="\\"">
|
|
<token type="LiteralString" />
|
|
</rule>
|
|
<rule pattern="[^\\"]+">
|
|
<token type="LiteralString" />
|
|
</rule>
|
|
</state>
|
|
<state name="block">
|
|
<rule pattern="(\})">
|
|
<token type="Punctuation" />
|
|
<pop depth="1" />
|
|
</rule>
|
|
<rule pattern="(#.*)">
|
|
<token type="CommentSingle" />
|
|
</rule>
|
|
<rule pattern="((\b(0(b|B|o|O|x|X)[a-fA-F0-9]+)\b)|(\b(0|[1-9][0-9]*)\b))">
|
|
<token type="LiteralNumber" />
|
|
</rule>
|
|
<rule pattern="((\b(true|false)\b))">
|
|
<token type="KeywordConstant" />
|
|
</rule>
|
|
<rule pattern=""">
|
|
<token type="LiteralString" />
|
|
<push state="string" />
|
|
</rule>
|
|
<rule pattern="(with)">
|
|
<token type="KeywordReserved" />
|
|
</rule>
|
|
<rule pattern="(as)([\t ]+)(\b[a-zA-Z_][a-zA-Z0-9]*\b)">
|
|
<bygroups>
|
|
<token type="KeywordReserved" />
|
|
<token type="Text" />
|
|
<token type="NameFunction" />
|
|
</bygroups>
|
|
</rule>
|
|
<rule pattern="(\bstring\b|\bint\b|\bbool\b|\bfs\b|\boption\b)([\t ]+)(\{)">
|
|
<bygroups>
|
|
<token type="KeywordType" />
|
|
<token type="Text" />
|
|
<token type="Punctuation" />
|
|
</bygroups>
|
|
<push state="block" />
|
|
</rule>
|
|
<rule
|
|
pattern="(?!\b(?:scratch|image|resolve|http|checksum|chmod|filename|git|keepGitDir|local|includePatterns|excludePatterns|followPaths|generate|frontendInput|shell|run|readonlyRootfs|env|dir|user|network|security|host|ssh|secret|mount|target|localPath|uid|gid|mode|readonly|tmpfs|sourcePath|cache|mkdir|createParents|chown|createdTime|mkfile|rm|allowNotFound|allowWildcards|copy|followSymlinks|contentsOnly|unpack|createDestPath)\b)(\b[a-zA-Z_][a-zA-Z0-9]*\b)"
|
|
>
|
|
<bygroups>
|
|
<token type="NameOther" />
|
|
</bygroups>
|
|
</rule>
|
|
<rule pattern="(\n|\r|\r\n)">
|
|
<token type="Text" />
|
|
</rule>
|
|
<rule pattern=".">
|
|
<token type="Text" />
|
|
</rule>
|
|
</state>
|
|
<state name="params">
|
|
<rule pattern="(\))">
|
|
<bygroups>
|
|
<token type="Punctuation" />
|
|
</bygroups>
|
|
<pop depth="1" />
|
|
</rule>
|
|
<rule pattern="(variadic)">
|
|
<bygroups>
|
|
<token type="Keyword" />
|
|
</bygroups>
|
|
</rule>
|
|
<rule pattern="(\bstring\b|\bint\b|\bbool\b|\bfs\b|\boption\b)">
|
|
<bygroups>
|
|
<token type="KeywordType" />
|
|
</bygroups>
|
|
</rule>
|
|
<rule pattern="(\b[a-zA-Z_][a-zA-Z0-9]*\b)">
|
|
<bygroups>
|
|
<token type="NameOther" />
|
|
</bygroups>
|
|
</rule>
|
|
<rule pattern="(\n|\r|\r\n)">
|
|
<token type="Text" />
|
|
</rule>
|
|
<rule pattern=".">
|
|
<token type="Text" />
|
|
</rule>
|
|
</state>
|
|
</rules>
|
|
</lexer>
|