javascript – 如何在highlight.js中关闭自动语言检测并渲染所有块?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在highlight.js中关闭自动语言检测并渲染所有块?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在我的网站由Github页面使用redcarpet2 markdown.我将语法高亮显示从pygments切换到highlight.js.

我为每个代码块指定了语言

```r
(some r code)
```

因此我不需要通过highlight.js进行自动语言检测,实际上如果我没有指定语言,它将始终错误地将我的R代码识别为PHP或perl代码.

问题是:< code>的HTML标记某种程度上是混合的.

在没有渲染的情况下,markdown正确地将代码块转换为< code class =“r language-r”data-lang =“r”>< / code>应该呈现为R代码.但是,当我加载highlight.js并运行< script> hljs.initHighlightingOnLoad();< / script>时,自动检测也会起作用并使代码标签混合像< code class =“r language-r hljs PHP”数据琅= “R” >< /代码>应该删除PHP的地方. 我该如何解决这个问题?

最佳答案
可能你的highlight.pack.js不包含R语言,你可以下载它here只需勾选相应的复选框.当HighlightJS看到代码标记的未知类时,它会尝试自动猜测正确的语言.

猜你在找的HTML相关文章