使用 SyntaxHighlighter 3.0.83 对包含多行注释(/* .... */) 的 Java 代码进行语法着色时会将其后的所有代码当成多行注释进行着色。
修改 shBrushJava.js 可以解决这个问题。
找到:
this.regexList = [
{ regex: SyntaxHighlighter.regexLib.singleLineCComments, css: 'comments' }, // one line comments
{ regex: ////*([^/*][/s/S]*)?/*///gm, css: 'comments' }, // multiline comments
{ regex: ////*(?!/*//)/*[/s/S]*?/*///gm, css: 'preprocessor' }, // documentation comments
{ regex: SyntaxHighlighter.regexLib.doubleQuotedString, css: 'string' }, // strings
{ regex: SyntaxHighlighter.regexLib.singleQuotedString, css: 'string' }, // strings
{ regex: //b([/d]+(/.[/d]+)?|0x[a-f0-9]+)/b/gi, css: 'value' }, // numbers
{ regex: /(?!/@interface/b)/@[/$/w]+/b/g, css: 'color1' }, // annotation @anno
{ regex: //@interface/b/g, css: 'color2' }, // @interface keyword
{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' } // java keyword
];
修改为:
this.regexList = [
{ regex: SyntaxHighlighter.regexLib.singleLineCComments, css: 'comments' }, // one line comments
{ regex: ////*(?!/*//)/*[/s/S]*?/*///gm, css: 'preprocessor' }, // documentation comments
{ regex: SyntaxHighlighter.regexLib.multiLineCComments, css: 'comments' }, // multiline comments
{ regex: SyntaxHighlighter.regexLib.doubleQuotedString, css: 'string' }, // strings
{ regex: SyntaxHighlighter.regexLib.singleQuotedString, css: 'string' }, // strings
{ regex: //b([/d]+(/.[/d]+)?|0x[a-f0-9]+)/b/gi, css: 'value' }, // numbers
{ regex: /(?!/@interface/b)/@[/$/w]+/b/g, css: 'color1' }, // annotation @anno
{ regex: //@interface/b/g, css: 'color2' }, // @interface keyword
{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' } // java keyword
];
注意把处理文档注释的正则式放到处理多行注释的正则式前。
分享到:
相关推荐
**SyntaxHighlighter 3.0.83 概述** SyntaxHighlighter 是一款基于 JavaScript 的开源库,由 dp 创建,用于在网页上实现代码的语法高亮显示。它旨在为各种编程语言提供美观且功能丰富的代码展示效果,使得源代码在...
SyntaxHighlighter 3.0.83 是一个广泛使用的开源代码语法高亮插件,尤其在网站和博客中,用于展示编程代码时提供美观的视觉效果。它通过自动识别不同的编程语言并应用相应的颜色和样式,使代码更易读、更吸引人。这...
6. **刷子(Brushes)**:每个"shBrush*/*.js"文件对应一种编程语言,例如"shBrushJava.js"用于处理Java代码,"shBrushXml.js"处理XML。这些刷子定义了每种语言的语法规则,以便正确高亮关键字、注释和字符串等。 ...
SyntaxHighlighter 3.0.83 : http://alexgorbatchev.com/SyntaxHighlighter 2、配置 (1) SyntaxHighlighter解析的默认标签,默认为pre 代码如下: SyntaxHighlighter.config.tagName=”div”; (2) 去除HTML...
根据提供的文件信息,以下详细阐述了Z-Blog平台中SyntaxHighlighter插件处理长代码无法自动换行问题的解决办法。 **知识点一:CSS修改** 在Z-Blog博客系统中,SyntaxHighlighter插件默认可能不支持长代码的自动换行...
1. **引入资源**:首先,你需要在网页中引入SyntaxHighlighter的核心JavaScript文件,通常为`scripts/shCore.js`,以及对应的语言刷子文件,例如`scripts/shBrushJava.js`用于Java代码高亮。 2. **设置样式**:为了...
wps代码块插件
**SyntaxHighlighter:让代码在浏览器中闪耀** SyntaxHighlighter是一款功能强大的JavaScript库,专为在网页上展示具有语法高亮的源代码而设计。它不仅适用于HTML页面,还可以处理多种编程语言的代码,包括但不限于...
- **版本更新**:定期检查并更新SyntaxHighlighter以获取最新的功能和修复的bug。 总之,SyntaxHighlighter是一款强大的代码高亮插件,通过其丰富的功能和广泛的语言支持,为网页上的代码展示提供了极大的便利。...
"代码自动高亮SyntaxHighlighter_1.5.0"是一个专门用于文本编辑器和网页中显示源代码的工具,其主要功能是将代码片段进行美化,通过不同的颜色和样式来区分不同类型的语法元素,使得代码更易于阅读和理解。...
2. 格式化代码:在HTML中,将代码包裹在`<pre>`和`<code>`标签中,并指定编程语言类型,例如`class="brush: java"`表示Java代码。 3. 初始化插件:在页面加载完成后,调用SyntaxHighlighter的初始化函数,如`...
【JS代码高亮插件SyntaxHighlighter】是一个用于在网页中展示编程代码的工具,它能够将源代码美化,使其更易于阅读和理解。SyntaxHighlighter由Alex Gorbatchev开发,支持多种编程语言,包括JavaScript、HTML、CSS、...
SyntaxHighlighter是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是HTML,CSS,Javascript,还可以是C,JAVA等编程语言。它可以在网页中对各种程序源代码语法进行加亮显示。支持当前流行的各种编程语言:...
SyntaxHighlighter是由Alex Gorbatchev开发的一款开源代码高亮插件,它支持多种编程语言,包括但不限于C、C++、Java、Python、JavaScript等。通过自定义CSS样式和丰富的配置选项,可以轻松定制符合自己风格的代码...
4. **JavaScript与Java交互**:虽然JavaScript运行在WebView中,但有时我们需要从Java代码中触发高亮操作或获取高亮后的结果。这可以通过WebView提供的`addJavascriptInterface`方法实现,创建一个Java对象并暴露给...
高亮您的代码,加速您的技术站点开发【有源码,支持大部分常用语言的高亮显示,如C#,JAVA等】 在没有高亮方法时,我们常常自己写样式,当然也有直接使用微软的Word转换成HTML来实现,可是转换出来的HTML冗余非常大...
SyntaxHighlighter是一款流行的JavaScript代码高亮插件,用于在网页上展示源代码时提供美观的语法高亮效果。它能够使代码更易于阅读,提升用户体验,尤其对于技术博客、在线教程和开发者社区来说,是非常实用的工具...