diff options
Diffstat (limited to 'lib/parse/page.js')
-rw-r--r-- | lib/parse/page.js | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/lib/parse/page.js b/lib/parse/page.js index eb118e4..6cfd3ca 100644 --- a/lib/parse/page.js +++ b/lib/parse/page.js @@ -8,17 +8,6 @@ var renderer = require('./renderer'); var lnormalize = require('../utils/lang').normalize; -// Synchronous highlighting with highlight.js -marked.setOptions({ - highlight: function (code, lang) { - try { - return hljs.highlight(lang, code).value; - } catch(e) { - return hljs.highlightAuto(code).value; - } - } -}); - // Render a section using our custom renderer function render(section, _options) { @@ -30,7 +19,21 @@ function render(section, _options) { // Build options using defaults and our custom renderer var options = _.extend({}, marked.defaults, { - renderer: renderer(null, _options) + renderer: renderer(null, _options), + + // Synchronous highlighting with highlight.js + highlight: function (code, lang) { + if(!lang) return code; + + // Normalize lang + lang = lnormalize(lang); + + try { + return hljs.highlight(lang, code).value; + } catch(e) { } + + return code; + } }); return marked.parser(section, options); |