package a import ( . "github.com/alecthomas/chroma" // nolint "github.com/alecthomas/chroma/lexers/internal" ) // Abnf lexer. var Abnf = internal.Register(MustNewLazyLexer( &Config{ Name: "ABNF", Aliases: []string{"abnf"}, Filenames: []string{"*.abnf"}, MimeTypes: []string{"text/x-abnf"}, }, abnfRules, )) func abnfRules() Rules { return Rules{ "root": { {`;.*$`, CommentSingle, nil}, {`(%[si])?"[^"]*"`, Literal, nil}, {`%b[01]+\-[01]+\b`, Literal, nil}, {`%b[01]+(\.[01]+)*\b`, Literal, nil}, {`%d[0-9]+\-[0-9]+\b`, Literal, nil}, {`%d[0-9]+(\.[0-9]+)*\b`, Literal, nil}, {`%x[0-9a-fA-F]+\-[0-9a-fA-F]+\b`, Literal, nil}, {`%x[0-9a-fA-F]+(\.[0-9a-fA-F]+)*\b`, Literal, nil}, {`\b[0-9]+\*[0-9]+`, Operator, nil}, {`\b[0-9]+\*`, Operator, nil}, {`\b[0-9]+`, Operator, nil}, {`\*`, Operator, nil}, {Words(``, `\b`, `ALPHA`, `BIT`, `CHAR`, `CR`, `CRLF`, `CTL`, `DIGIT`, `DQUOTE`, `HEXDIG`, `HTAB`, `LF`, `LWSP`, `OCTET`, `SP`, `VCHAR`, `WSP`), Keyword, nil}, {`[a-zA-Z][a-zA-Z0-9-]+\b`, NameClass, nil}, {`(=/|=|/)`, Operator, nil}, {`[\[\]()]`, Punctuation, nil}, {`\s+`, Text, nil}, {`.`, Text, nil}, }, } }