aboutsummaryrefslogtreecommitdiff
path: root/loaders/marked.js
blob: f3c8fcbee0a1dffee2b0fbf06ccebd8e212bc6dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
const { Marked } = require('marked');
const { markedHighlight } = require('marked-highlight');
const hljs = require('highlight.js');

module.exports = function loader(source) {
  const marker = new Marked(
    markedHighlight({
      highlight(code, lang) {
        const language = hljs.getLanguage(lang) ? lang : 'plaintext';
        return hljs.highlight(code, { language }).value;
      }
    })
  );

  return marker.parse(source);
}