terns|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>
