diff options
Diffstat (limited to 'public/prism/prism-markdown.min.js')
| -rw-r--r-- | public/prism/prism-markdown.min.js | 278 |
1 files changed, 278 insertions, 0 deletions
diff --git a/public/prism/prism-markdown.min.js b/public/prism/prism-markdown.min.js new file mode 100644 index 0000000..ba1b36f --- /dev/null +++ b/public/prism/prism-markdown.min.js @@ -0,0 +1,278 @@ +!(function (s) { + function n(n) { + return ( + (n = n.replace(/<inner>/g, function () { + return '(?:\\\\.|[^\\\\\n\r]|(?:\n|\r\n?)(?![\r\n]))'; + })), + RegExp('((?:^|[^\\\\])(?:\\\\{2})*)(?:' + n + ')') + ); + } + var e = '(?:\\\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\\\|\r\n`])+', + t = '\\|?__(?:\\|__)+\\|?(?:(?:\n|\r\n?)|(?![^]))'.replace( + /__/g, + function () { + return e; + } + ), + a = + '\\|?[ \t]*:?-{3,}:?[ \t]*(?:\\|[ \t]*:?-{3,}:?[ \t]*)+\\|?(?:\n|\r\n?)'; + (s.languages.markdown = s.languages.extend('markup', {})), + s.languages.insertBefore('markdown', 'prolog', { + 'front-matter-block': { + pattern: /(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/, + lookbehind: !0, + greedy: !0, + inside: { + punctuation: /^---|---$/, + 'front-matter': { + pattern: /\S+(?:\s+\S+)*/, + alias: ['yaml', 'language-yaml'], + inside: s.languages.yaml, + }, + }, + }, + blockquote: { pattern: /^>(?:[\t ]*>)*/m, alias: 'punctuation' }, + table: { + pattern: RegExp('^' + t + a + '(?:' + t + ')*', 'm'), + inside: { + 'table-data-rows': { + pattern: RegExp('^(' + t + a + ')(?:' + t + ')*$'), + lookbehind: !0, + inside: { + 'table-data': { + pattern: RegExp(e), + inside: s.languages.markdown, + }, + punctuation: /\|/, + }, + }, + 'table-line': { + pattern: RegExp('^(' + t + ')' + a + '$'), + lookbehind: !0, + inside: { punctuation: /\||:?-{3,}:?/ }, + }, + 'table-header-row': { + pattern: RegExp('^' + t + '$'), + inside: { + 'table-header': { + pattern: RegExp(e), + alias: 'important', + inside: s.languages.markdown, + }, + punctuation: /\|/, + }, + }, + }, + }, + code: [ + { + pattern: + /((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/, + lookbehind: !0, + alias: 'keyword', + }, + { + pattern: /^```[\s\S]*?^```$/m, + greedy: !0, + inside: { + 'code-block': { + pattern: /^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m, + lookbehind: !0, + }, + 'code-language': { pattern: /^(```).+/, lookbehind: !0 }, + punctuation: /```/, + }, + }, + ], + title: [ + { + pattern: /\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m, + alias: 'important', + inside: { punctuation: /==+$|--+$/ }, + }, + { + pattern: /(^\s*)#.+/m, + lookbehind: !0, + alias: 'important', + inside: { punctuation: /^#+|#+$/ }, + }, + ], + hr: { + pattern: /(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m, + lookbehind: !0, + alias: 'punctuation', + }, + list: { + pattern: /(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m, + lookbehind: !0, + alias: 'punctuation', + }, + 'url-reference': { + pattern: + /!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/, + inside: { + variable: { pattern: /^(!?\[)[^\]]+/, lookbehind: !0 }, + string: + /(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/, + punctuation: /^[\[\]!:]|[<>]/, + }, + alias: 'url', + }, + bold: { + pattern: n( + '\\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\\b|\\*\\*(?:(?!\\*)<inner>|\\*(?:(?!\\*)<inner>)+\\*)+\\*\\*' + ), + lookbehind: !0, + greedy: !0, + inside: { + content: { + pattern: /(^..)[\s\S]+(?=..$)/, + lookbehind: !0, + inside: {}, + }, + punctuation: /\*\*|__/, + }, + }, + italic: { + pattern: n( + '\\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\\b|\\*(?:(?!\\*)<inner>|\\*\\*(?:(?!\\*)<inner>)+\\*\\*)+\\*' + ), + lookbehind: !0, + greedy: !0, + inside: { + content: { pattern: /(^.)[\s\S]+(?=.$)/, lookbehind: !0, inside: {} }, + punctuation: /[*_]/, + }, + }, + strike: { + pattern: n('(~~?)(?:(?!~)<inner>)+\\2'), + lookbehind: !0, + greedy: !0, + inside: { + content: { + pattern: /(^~~?)[\s\S]+(?=\1$)/, + lookbehind: !0, + inside: {}, + }, + punctuation: /~~?/, + }, + }, + 'code-snippet': { + pattern: + /(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/, + lookbehind: !0, + greedy: !0, + alias: ['code', 'keyword'], + }, + url: { + pattern: n( + '!?\\[(?:(?!\\])<inner>)+\\](?:\\([^\\s)]+(?:[\t ]+"(?:\\\\.|[^"\\\\])*")?\\)|[ \t]?\\[(?:(?!\\])<inner>)+\\])' + ), + lookbehind: !0, + greedy: !0, + inside: { + operator: /^!/, + content: { pattern: /(^\[)[^\]]+(?=\])/, lookbehind: !0, inside: {} }, + variable: { pattern: /(^\][ \t]?\[)[^\]]+(?=\]$)/, lookbehind: !0 }, + url: { pattern: /(^\]\()[^\s)]+/, lookbehind: !0 }, + string: { + pattern: /(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/, + lookbehind: !0, + }, + }, + }, + }), + ['url', 'bold', 'italic', 'strike'].forEach(function (e) { + ['url', 'bold', 'italic', 'strike', 'code-snippet'].forEach(function (n) { + e !== n && + (s.languages.markdown[e].inside.content.inside[n] = + s.languages.markdown[n]); + }); + }), + s.hooks.add('after-tokenize', function (n) { + ('markdown' !== n.language && 'md' !== n.language) || + !(function n(e) { + if (e && 'string' != typeof e) + for (var t = 0, a = e.length; t < a; t++) { + var r = e[t]; + if ('code' === r.type) { + var i = r.content[1], + o = r.content[3]; + if ( + i && + o && + 'code-language' === i.type && + 'code-block' === o.type && + 'string' == typeof i.content + ) { + var l = i.content + .replace(/\b#/g, 'sharp') + .replace(/\b\+\+/g, 'pp'), + s = + 'language-' + + (l = (/[a-z][\w-]*/i.exec(l) || [''])[0].toLowerCase()); + o.alias + ? 'string' == typeof o.alias + ? (o.alias = [o.alias, s]) + : o.alias.push(s) + : (o.alias = [s]); + } + } else n(r.content); + } + })(n.tokens); + }), + s.hooks.add('wrap', function (n) { + if ('code-block' === n.type) { + for (var e = '', t = 0, a = n.classes.length; t < a; t++) { + var r = n.classes[t], + i = /language-(.+)/.exec(r); + if (i) { + e = i[1]; + break; + } + } + var o = s.languages[e]; + if (o) + n.content = s.highlight( + (function (n) { + var e = n.replace(d, ''); + return (e = e.replace( + /&(\w{1,8}|#x?[\da-f]{1,8});/gi, + function (n, e) { + var t; + if ('#' === (e = e.toLowerCase())[0]) + return ( + (t = + 'x' === e[1] + ? parseInt(e.slice(2), 16) + : Number(e.slice(1))), + u(t) + ); + var a = p[e]; + return a || n; + } + )); + })(n.content), + o, + e + ); + else if (e && 'none' !== e && s.plugins.autoloader) { + var l = + 'md-' + + new Date().valueOf() + + '-' + + Math.floor(1e16 * Math.random()); + (n.attributes.id = l), + s.plugins.autoloader.loadLanguages(e, function () { + var n = document.getElementById(l); + n && + (n.innerHTML = s.highlight(n.textContent, s.languages[e], e)); + }); + } + } + }); + var d = RegExp(s.languages.markup.tag.pattern.source, 'gi'), + p = { amp: '&', lt: '<', gt: '>', quot: '"' }, + u = String.fromCodePoint || String.fromCharCode; + s.languages.md = s.languages.markdown; +})(Prism); |
