| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- // node_modules/prismjs/components/prism-markup.js
- Prism.languages.markup = {
- "comment": {
- pattern: /<!--(?:(?!<!--)[\s\S])*?-->/,
- greedy: true
- },
- "prolog": {
- pattern: /<\?[\s\S]+?\?>/,
- greedy: true
- },
- "doctype": {
- // https://www.w3.org/TR/xml/#NT-doctypedecl
- pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
- greedy: true,
- inside: {
- "internal-subset": {
- pattern: /(^[^\[]*\[)[\s\S]+(?=\]>$)/,
- lookbehind: true,
- greedy: true,
- inside: null
- // see below
- },
- "string": {
- pattern: /"[^"]*"|'[^']*'/,
- greedy: true
- },
- "punctuation": /^<!|>$|[[\]]/,
- "doctype-tag": /^DOCTYPE/i,
- "name": /[^\s<>'"]+/
- }
- },
- "cdata": {
- pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
- greedy: true
- },
- "tag": {
- pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
- greedy: true,
- inside: {
- "tag": {
- pattern: /^<\/?[^\s>\/]+/,
- inside: {
- "punctuation": /^<\/?/,
- "namespace": /^[^\s>\/:]+:/
- }
- },
- "special-attr": [],
- "attr-value": {
- pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
- inside: {
- "punctuation": [
- {
- pattern: /^=/,
- alias: "attr-equals"
- },
- {
- pattern: /^(\s*)["']|["']$/,
- lookbehind: true
- }
- ]
- }
- },
- "punctuation": /\/?>/,
- "attr-name": {
- pattern: /[^\s>\/]+/,
- inside: {
- "namespace": /^[^\s>\/:]+:/
- }
- }
- }
- },
- "entity": [
- {
- pattern: /&[\da-z]{1,8};/i,
- alias: "named-entity"
- },
- /&#x?[\da-f]{1,8};/i
- ]
- };
- Prism.languages.markup["tag"].inside["attr-value"].inside["entity"] = Prism.languages.markup["entity"];
- Prism.languages.markup["doctype"].inside["internal-subset"].inside = Prism.languages.markup;
- Prism.hooks.add("wrap", function(env) {
- if (env.type === "entity") {
- env.attributes["title"] = env.content.replace(/&/, "&");
- }
- });
- Object.defineProperty(Prism.languages.markup.tag, "addInlined", {
- /**
- * Adds an inlined language to markup.
- *
- * An example of an inlined language is CSS with `<style>` tags.
- *
- * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as
- * case insensitive.
- * @param {string} lang The language key.
- * @example
- * addInlined('style', 'css');
- */
- value: function addInlined(tagName, lang) {
- var includedCdataInside = {};
- includedCdataInside["language-" + lang] = {
- pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
- lookbehind: true,
- inside: Prism.languages[lang]
- };
- includedCdataInside["cdata"] = /^<!\[CDATA\[|\]\]>$/i;
- var inside = {
- "included-cdata": {
- pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
- inside: includedCdataInside
- }
- };
- inside["language-" + lang] = {
- pattern: /[\s\S]+/,
- inside: Prism.languages[lang]
- };
- var def = {};
- def[tagName] = {
- pattern: RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g, function() {
- return tagName;
- }), "i"),
- lookbehind: true,
- greedy: true,
- inside
- };
- Prism.languages.insertBefore("markup", "cdata", def);
- }
- });
- Object.defineProperty(Prism.languages.markup.tag, "addAttribute", {
- /**
- * Adds an pattern to highlight languages embedded in HTML attributes.
- *
- * An example of an inlined language is CSS with `style` attributes.
- *
- * @param {string} attrName The name of the tag that contains the inlined language. This name will be treated as
- * case insensitive.
- * @param {string} lang The language key.
- * @example
- * addAttribute('style', 'css');
- */
- value: function(attrName, lang) {
- Prism.languages.markup.tag.inside["special-attr"].push({
- pattern: RegExp(
- /(^|["'\s])/.source + "(?:" + attrName + ")" + /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,
- "i"
- ),
- lookbehind: true,
- inside: {
- "attr-name": /^[^\s=]+/,
- "attr-value": {
- pattern: /=[\s\S]+/,
- inside: {
- "value": {
- pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
- lookbehind: true,
- alias: [lang, "language-" + lang],
- inside: Prism.languages[lang]
- },
- "punctuation": [
- {
- pattern: /^=/,
- alias: "attr-equals"
- },
- /"|'/
- ]
- }
- }
- }
- });
- }
- });
- Prism.languages.html = Prism.languages.markup;
- Prism.languages.mathml = Prism.languages.markup;
- Prism.languages.svg = Prism.languages.markup;
- Prism.languages.xml = Prism.languages.extend("markup", {});
- Prism.languages.ssml = Prism.languages.xml;
- Prism.languages.atom = Prism.languages.xml;
- Prism.languages.rss = Prism.languages.xml;
- //# sourceMappingURL=prismjs_components_prism-markup.js.map
|