UNPKG

refractor

Version:

Lightweight, robust, elegant virtual syntax highlighting using Prism

31 lines (29 loc) 624 B
// @ts-nocheck /** * @import {Refractor} from '../lib/core.js' */ bnf.displayName = 'bnf' bnf.aliases = ['rbnf'] /** @param {Refractor} Prism */ export default function bnf(Prism) { Prism.languages.bnf = { string: { pattern: /"[^\r\n"]*"|'[^\r\n']*'/ }, definition: { pattern: /<[^<>\r\n\t]+>(?=\s*::=)/, alias: ['rule', 'keyword'], inside: { punctuation: /^<|>$/ } }, rule: { pattern: /<[^<>\r\n\t]+>/, inside: { punctuation: /^<|>$/ } }, operator: /::=|[|()[\]{}*+?]|\.{3}/ } Prism.languages.rbnf = Prism.languages.bnf }