parser3 function

Mode parser3(
  1. Highlight hljs
)

Highlight.js language definition for parser3.

Implementation

Mode parser3(Highlight hljs) {
  return Mode(
    name: r'Parser3',
    subLanguage: r'xml',
    relevance: 0,
    contains: [
      Mode(
        scope: r'comment',
        begin: r'^#',
        end: r'$',
        contains: [
          Mode(
            scope: r'doctag',
            begin: r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',
            end: r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',
            excludeBegin: true,
            relevance: 0,
          ),
          Mode(
            begin:
                r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
          ),
        ],
      ),
      Mode(
        scope: r'comment',
        begin: r'\^rem\{',
        end: r'\}',
        contains: [
          Mode(
            scope: r'comment',
            begin: r'\{',
            end: r'\}',
            contains: [
              r'self',
              Mode(
                scope: r'doctag',
                begin: r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',
                end: r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',
                excludeBegin: true,
                relevance: 0,
              ),
              Mode(
                begin:
                    r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
              ),
            ],
          ),
          Mode(
            scope: r'doctag',
            begin: r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',
            end: r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',
            excludeBegin: true,
            relevance: 0,
          ),
          Mode(
            begin:
                r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
          ),
        ],
        relevance: 10,
      ),
      Mode(
        scope: r'meta',
        begin: r'^@(?:BASE|USE|CLASS|OPTIONS)$',
        relevance: 10,
      ),
      Mode(
        scope: r'title',
        begin: r'@[\w\-]+\[[\w^;\-]*\](?:\[[\w^;\-]*\])?(?:.*)$',
      ),
      Mode(scope: r'variable', begin: r'\$\{?[\w\-.:]+\}?'),
      Mode(scope: r'keyword', begin: r'\^[\w\-.:]+'),
      Mode(scope: r'number', begin: r'\^#[0-9a-fA-F]+'),
      Mode(
        scope: r'number',
        begin:
            r'(-?)(\b0[xX][a-fA-F0-9]+|(\b\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?)',
        relevance: 0,
      ),
    ],
  );
}