我已经使用SyntaxHighlighter一段时间没有任何问题。
然而,我最近重新设计了我的博客,现在当一个页面加载时 - 一个使用XML画笔的页面 - 我得到一个弹出窗口
找不到刷子:xml
我已经检查并仔细检查了,我绝对确定shBrushXML.js文件 包含在下载的JavaScript包中(我可以看到{{1在缩小的JS中。)
我也在同一页面上使用其他语法进行了测试,但是他们还可以。它只是XML画笔。
有没有人知道为什么XML刷会导致这个问题?
答案 0 :(得分:1)
这是由另一个画笔脚本中的一个小错误引起的(即另一个SyntaxHighlighter画笔)。
我还引用了来自here的第三方Razor语法画笔。这个脚本有一行
SyntaxHighlighter.brushes.Xml = Brush;
显然应该
SyntaxHighlighter.brushes.Razor = Brush;
据推测,这是由作者复制XML画笔的内容然后为Razor修改它引起的。它自己的XML笔刷工作,并自己Razor刷工作。当在 Razor画笔之后引用时,XML画笔也起作用,并且在 XML画笔之后引用时,Razor画笔工作。
现在很明显为什么。
答案 1 :(得分:0)
我有同样的问题。然后我发现我正在使用lang=XML
。但是文件shBrushXml.js
的刷子别名为xml
。我做了两处修改,为我解决了这个问题。
在我希望语法突出显示的文件中更新了lang=xml
。
更新了shBrushXml.js
变
SyntaxHighlighter.brushes.Xml = Brush;
至
SyntaxHighlighter.brushes.Razor = Brush;