diff options
author | Florian Orben <florian.orben@gmail.com> | 2015-10-28 19:39:10 +0100 |
---|---|---|
committer | Florian Orben <florian.orben@gmail.com> | 2015-10-29 17:26:34 +0100 |
commit | 3c8fd9942557aee8a1bc06b2b973bb1e3f9519d0 (patch) | |
tree | 3fae1dd20302f9d1bc8d6dbc14ab722e36c3b014 /web/react/utils/markdown.jsx | |
parent | bad01d40a2c9354573bfe1c4b9d33a05ffbe9b0f (diff) | |
download | chat-3c8fd9942557aee8a1bc06b2b973bb1e3f9519d0.tar.gz chat-3c8fd9942557aee8a1bc06b2b973bb1e3f9519d0.tar.bz2 chat-3c8fd9942557aee8a1bc06b2b973bb1e3f9519d0.zip |
use XML syntax highlighting if provided language is html
Diffstat (limited to 'web/react/utils/markdown.jsx')
-rw-r--r-- | web/react/utils/markdown.jsx | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/web/react/utils/markdown.jsx b/web/react/utils/markdown.jsx index 84690150a..179416ea0 100644 --- a/web/react/utils/markdown.jsx +++ b/web/react/utils/markdown.jsx @@ -106,14 +106,20 @@ class MattermostMarkdownRenderer extends marked.Renderer { } code(code, language) { - if (!language || highlightJs.listLanguages().indexOf(language) < 0) { - let parsed = super.code(code, language); + let usedLanguage = language; + + if (String(usedLanguage).toLocaleLowerCase() === 'html') { + usedLanguage = 'xml'; + } + + if (!usedLanguage || highlightJs.listLanguages().indexOf(usedLanguage) < 0) { + let parsed = super.code(code, usedLanguage); return '<div class="post-body--code"><code class="hljs">' + TextFormatting.sanitizeHtml($(parsed).text()) + '</code></div>'; } - let parsed = highlightJs.highlight(language, code); + let parsed = highlightJs.highlight(usedLanguage, code); return '<div class="post-body--code">' + - '<span class="post-body--code__language">' + HighlightedLanguages[language] + '</span>' + + '<span class="post-body--code__language">' + HighlightedLanguages[usedLanguage] + '</span>' + '<code class="hljs">' + parsed.value + '</code>' + '</div>'; } |