Выделите HTML с помощью Remarkable и Highlightjs
У меня проблемы с получением highlight
функция для выполнения при использовании Remarkable
выделить HTML-код. Я беру из примера здесь:
var md = new Remarkable({
html:true,
langPrefix:'lang-',
highlight: function (str, lang) {
alert('highlighting'); // never executes!
if (lang && hljs.getLanguage(lang)) {
try {
return hljs.highlight(lang, str).value;
} catch (err) {}
}
try {
return hljs.highlightAuto(str).value;
} catch (err) {}
return ''; // use external default escaping
}
});
var test = md.render('<code class="lang-js">var x = 1;</code>');
Смотри скрипку
1 ответ
Замечательно работает, когда вы даете ему текст, написанный в уценке, а не HTML. Он генерирует HTML для вас. Если вы хотите написать HTML самостоятельно, вам не нужен Remarkable;)
Итак, ваша тестовая строка должна выглядеть так:
var test = md.render('``` js\nvar x = 1;\n```\n');
(обычно текст извлекается из текстовой области, поэтому вам не нужно указывать "\n", просто нажмите ввод)
Вот рабочая скрипка: