| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 | /*Language: MarkdownRequires: xml.jsAuthor: John Crepezzi <[email protected]>Website: http://seejohncode.com/Category: common, markup*/function(hljs) {  return {    aliases: ['md', 'mkdown', 'mkd'],    contains: [      // highlight headers      {        className: 'section',        variants: [          { begin: '^#{1,6}', end: '$' },          { begin: '^.+?\\n[=-]{2,}$' }        ]      },      // inline html      {        begin: '<', end: '>',        subLanguage: 'xml',        relevance: 0      },      // lists (indicators only)      {        className: 'bullet',        begin: '^([*+-]|(\\d+\\.))\\s+'      },      // strong segments      {        className: 'strong',        begin: '[*_]{2}.+?[*_]{2}'      },      // emphasis segments      {        className: 'emphasis',        variants: [          { begin: '\\*.+?\\*' },          { begin: '_.+?_'          , relevance: 0          }        ]      },      // blockquotes      {        className: 'quote',        begin: '^>\\s+', end: '$'      },      // code snippets      {        className: 'code',        variants: [          {            begin: '^```\w*\s*$', end: '^```\s*$'          },          {            begin: '`.+?`'          },          {            begin: '^( {4}|\t)', end: '$',            relevance: 0          }        ]      },      // horizontal rules      {        begin: '^[-\\*]{3,}', end: '$'      },      // using links - title and link      {        begin: '\\[.+?\\][\\(\\[].*?[\\)\\]]',        returnBegin: true,        contains: [          {            className: 'string',            begin: '\\[', end: '\\]',            excludeBegin: true,            returnEnd: true,            relevance: 0          },          {            className: 'link',            begin: '\\]\\(', end: '\\)',            excludeBegin: true, excludeEnd: true          },          {            className: 'symbol',            begin: '\\]\\[', end: '\\]',            excludeBegin: true, excludeEnd: true          }        ],        relevance: 10      },      {        begin: /^\[[^\n]+\]:/,        returnBegin: true,        contains: [          {            className: 'symbol',            begin: /\[/, end: /\]/,            excludeBegin: true, excludeEnd: true          },          {            className: 'link',            begin: /:\s*/, end: /$/,            excludeBegin: true          }        ]      }    ]  };}
 |