diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-24 15:10:37 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-24 15:11:17 +0200 |
commit | 7a3df06eb573d36142bd1a8e03c5ce8752d300b3 (patch) | |
tree | 70bfaea8884c374876f607774850a3a51c0cb381 /node_modules/highlight.js/lib/languages/xml.js | |
parent | aca1143cb9eed16cf37f04e475e4257418dd18ac (diff) |
fix build issues and add typedoc
Diffstat (limited to 'node_modules/highlight.js/lib/languages/xml.js')
-rw-r--r-- | node_modules/highlight.js/lib/languages/xml.js | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/node_modules/highlight.js/lib/languages/xml.js b/node_modules/highlight.js/lib/languages/xml.js new file mode 100644 index 000000000..f987cf934 --- /dev/null +++ b/node_modules/highlight.js/lib/languages/xml.js @@ -0,0 +1,102 @@ +module.exports = function(hljs) { + var XML_IDENT_RE = '[A-Za-z0-9\\._:-]+'; + var TAG_INTERNALS = { + endsWithParent: true, + illegal: /</, + relevance: 0, + contains: [ + { + className: 'attr', + begin: XML_IDENT_RE, + relevance: 0 + }, + { + begin: /=\s*/, + relevance: 0, + contains: [ + { + className: 'string', + endsParent: true, + variants: [ + {begin: /"/, end: /"/}, + {begin: /'/, end: /'/}, + {begin: /[^\s"'=<>`]+/} + ] + } + ] + } + ] + }; + return { + aliases: ['html', 'xhtml', 'rss', 'atom', 'xjb', 'xsd', 'xsl', 'plist'], + case_insensitive: true, + contains: [ + { + className: 'meta', + begin: '<!DOCTYPE', end: '>', + relevance: 10, + contains: [{begin: '\\[', end: '\\]'}] + }, + hljs.COMMENT( + '<!--', + '-->', + { + relevance: 10 + } + ), + { + begin: '<\\!\\[CDATA\\[', end: '\\]\\]>', + relevance: 10 + }, + { + begin: /<\?(php)?/, end: /\?>/, + subLanguage: 'php', + contains: [{begin: '/\\*', end: '\\*/', skip: true}] + }, + { + className: 'tag', + /* + The lookahead pattern (?=...) ensures that 'begin' only matches + '<style' as a single word, followed by a whitespace or an + ending braket. The '$' is needed for the lexeme to be recognized + by hljs.subMode() that tests lexemes outside the stream. + */ + begin: '<style(?=\\s|>|$)', end: '>', + keywords: {name: 'style'}, + contains: [TAG_INTERNALS], + starts: { + end: '</style>', returnEnd: true, + subLanguage: ['css', 'xml'] + } + }, + { + className: 'tag', + // See the comment in the <style tag about the lookahead pattern + begin: '<script(?=\\s|>|$)', end: '>', + keywords: {name: 'script'}, + contains: [TAG_INTERNALS], + starts: { + end: '\<\/script\>', returnEnd: true, + subLanguage: ['actionscript', 'javascript', 'handlebars', 'xml'] + } + }, + { + className: 'meta', + variants: [ + {begin: /<\?xml/, end: /\?>/, relevance: 10}, + {begin: /<\?\w+/, end: /\?>/} + ] + }, + { + className: 'tag', + begin: '</?', end: '/?>', + contains: [ + { + className: 'name', begin: /[^\/><\s]+/, relevance: 0 + }, + TAG_INTERNALS + ] + } + ] + }; +};
\ No newline at end of file |