aboutsummaryrefslogtreecommitdiff
path: root/node_modules/highlight.js/lib/languages/xml.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-05-24 15:10:37 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-05-24 15:11:17 +0200
commit7a3df06eb573d36142bd1a8e03c5ce8752d300b3 (patch)
tree70bfaea8884c374876f607774850a3a51c0cb381 /node_modules/highlight.js/lib/languages/xml.js
parentaca1143cb9eed16cf37f04e475e4257418dd18ac (diff)
downloadwallet-core-7a3df06eb573d36142bd1a8e03c5ce8752d300b3.tar.xz
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.js102
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