diff --git a/src/translator.js b/src/translator.js index dadc0ba..e2e786a 100644 --- a/src/translator.js +++ b/src/translator.js @@ -44,6 +44,15 @@ function initTurndownService() { } }); + // preserve enlighter code blocks + turndownService.addRule('enlighter', { + filter: node => node.nodeName === 'PRE' && node.getAttribute('class') === 'EnlighterJSRAW', + replacement: (content, node) => { + const language = node.getAttribute('data-enlighter-language') ?? ''; + return '\n' + '```' + language + '\n' + content + '\n' + '```' + '\n'; + } + }); + // iframe boolean attributes do not need to be set to empty string turndownService.addRule('iframe', { filter: 'iframe',