highlight.js 不自动检测语言

highlight.js doesn't auto detect language

我从 https://highlightjs.org/download/ 下载了 highlight.pack.js 并希望它自动突出显示 <pre><code> 块,而不指定任何语言。

但是当我加载页面时抛出异常:

Uncaught SyntaxError: Invalid regular expression: /([À-ʸa-zA-Z_$][À-ʸa-zA-Z_[=11=]-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_[=11=]-9]*(\s*,\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_[=11=]-9]*)*>)?\s+)+[a-zA-Z_]\w*\s*\(/: Range out of order in character class

但是如果我指定语言 <pre><code class="fsharp"> 那么一切正常。此外,托管的 cdn highlight.min.js 可以自动检测语言,但它没有我需要的语言。

知道如何让它工作吗?

您需要在包含 highlight.js 库的标签中包含 charset="utf-8"

希望这能解决您的问题。

在 HTML 文件的头部添加 UTF-8 字符集:

<head>
  <meta charset="UTF-8">
</head>