diff options
author | Florian Orben <florian.orben@gmail.com> | 2015-11-07 02:22:39 +0100 |
---|---|---|
committer | Florian Orben <florian.orben@gmail.com> | 2015-11-10 22:38:19 +0100 |
commit | 14cff7588fd1d88b6b503a410554344c5ba496d8 (patch) | |
tree | bee6e54b0d18e456406c3875a8a48374967c41d6 /web/react/utils | |
parent | 31387be90b9b7e4b7e6a55d05af3d858bef6680a (diff) | |
download | chat-14cff7588fd1d88b6b503a410554344c5ba496d8.tar.gz chat-14cff7588fd1d88b6b503a410554344c5ba496d8.tar.bz2 chat-14cff7588fd1d88b6b503a410554344c5ba496d8.zip |
Add latex support
Adds latex highlighting support via https://www.npmjs.com/package/katex
as requested in
https://mattermost.uservoice.com/forums/306457-general/suggestions/10160757-add-latex-support
Diffstat (limited to 'web/react/utils')
-rw-r--r-- | web/react/utils/markdown.jsx | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/web/react/utils/markdown.jsx b/web/react/utils/markdown.jsx index 946f93078..3d967ae6d 100644 --- a/web/react/utils/markdown.jsx +++ b/web/react/utils/markdown.jsx @@ -69,6 +69,15 @@ class MattermostMarkdownRenderer extends marked.Renderer { usedLanguage = 'xml'; } + if (usedLanguage && (usedLanguage === 'tex' || usedLanguage === 'tex')) { + try { + var html = katex.renderToString(TextFormatting.sanitizeHtml(code), {throwOnError: false, displayMode: true}); + return '<div class="post-body--code tex">' + html + '</div>'; + } catch (e) { + return '<div class="post-body--code">' + TextFormatting.sanitizeHtml(code) + '</div>'; + } + } + 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>'; |