JavaScriptSyntaxColor ver2.0
JS语法着色器第二版页面:
http://army.512j.com/creations/code/jssc2/
---
Google开源项目(SyntaxHighlighter 1.51)主页:
http://code.google.com/p/syntaxhighlighter/
JS语法着色器第一版(JavaScriptSyntaxColor ver 1.1)主页:
http://army.512j.com/creations/code/highlight/
---
去年夏天时间左右因为上编译原理课程的缘故,我写了个js的语法着色器,主要是着色js和java,后来就成为了JSC1.0版,过后我又对它进行了细微的更新,并将最终版1.1版放在了我的个人主页上。经过一段时间后,特别是在我看了当年dp.SyntaxHighlighter的部分代码(dp.SyntaxHighlighter已发布为Google下开源项目),而后又看了开源后的SyntaxHighlighter一些代码后决定重新发布新版本。
从元旦开始,我就进行整体构思了。因为学期末的原因时间较紧,一直拖到现在放假才开行进行。不过有了第一版的基础,第二版的开发会顺利不少,但也存在许多新的难题。我准备在第二版完成之后再考虑进行第三版的开发,到时将主要添加代码折叠功能。这段假期我当然是用来学习咯~
---
第一版与原先dp.SyntaxHighlighter相比存在的优缺点为:
1.优点
代码长度较短(240行对700多行)
着色效果更好(对字符串、数字的效果以及sh存在一个字符串bug)
在低版本浏览器上表现更好(我的IE6.0中若代码太长需要拖动SyntaxHighlighter会出现色块)
用esc进行压缩的比率更好(lv4压缩)
2.缺点
可扩展性差(每一种语言得全部重新编写)
支持种类少(仅js和javascript)
可读性差(没有进行重构)
支持的着色标签单一(只能textare)
功能方面不如
一些细节方面的缺陷
---
针对这些缺点我进行第二版的编写后,目前经测试版后发布beta供大家试用,请将出现的bug一一反馈给我,好进行分析修改。另外源码也是开放的,如果有好的意见和提议或是什么错误的地方也请说出来讨论。这篇文章现在发了3个论坛,就是为了集思广益。
---
第二版与目前SyntaxHighlighter相比的优缺点为:
1.优点
代码长度更短(233行对700多行)
着色效果更好(保留1.1版的优势并着重加强了数字润色,并且可以交叉着色)
在低版本浏览器上表现更好(同第一版)
压缩的比率更好(可以用jsa混淆变量压缩)
扩展性增强(应该不相上下)
可读性维护性增强(也应该不相上下,不过更短的代码阅读维护应该更方便些)
2.缺点
可能存在一些细节方面的缺陷
---
第二版的代码构思一部分源于1.1版,另一部分源于开源的SyntaxHighlighter,剩下的则是新思维创造。面对1.1版的缺陷,2.0版代码在阅读性、维护性、可扩展性、着色功能、代码长度方面都提升了不少,支持的种类也只需编写相应的语法关键词和正则库即可。
由于js运行的速度主要取决于网络下载的速度及下载量,因此在压缩率和长度均占优势的情况下jsc ver 2.0总体上还是不输给对手的。现在缺的就是继续对功能、细节以及多种语法的关键词和正则库进行编写。我会继续进行的。
---
使用说明:
和SyntaxHighlighter一样,在head区里或者body区里添加js文件链接core.js,然后再将相应的语法关键词和正则库文件加入:如javascript.js,表明页面中需要对一段js代码进行着色。记得core.js必须首先添加。
将要着色的代码放入<textarea>标签中,并设置此标签的class属性为代码名,如:<textarea class="javascript">,再将其命名为code,如:<textarea class="javascript" name="code">,将代码放入即可。
最后在body尾部加入:
<script type="text/javascript">
jsc.colorAll("code");
</script>
如此就可以了。如果命名code和你的页面有冲突,可以进行改名,并将改名之后的新名称替换body尾部中的"code"名字即可。
目前两种着色器都存在的bug就是:由于浏览器会将<,>,&一些特殊字符解析,因此若源代码中出现他们的解析字符如:&gt;,&lt;,&amp;则会失效,唯一的解决办法是将&替换成&amp;后再进行着色。
分享到:
相关推荐
jssc.jar java-simple-serial-connector-2.8.0.tar.gz java-simple-serial-connector-2.8.0.zip jSSC-2.8.0-Release.zip jssc-2.8.0-src.jar
Java Simple Serial Connector (jSSC) 是一个Java库,它为开发者提供了在Java应用程序中进行串行通信的能力。这个库的版本2.7.0,包含在名为"jSSC-2.7.0-Release.zip"的压缩包中,为开发者提供了一个简单且高效的API...
`JSSC`(Java Simple Serial Connector)是一个针对Java平台的开源库,专门用于实现串口通信功能。标题中的"JSSC串口通信包(jar)ver 2.9.4"指的是这个库的特定版本,即2.9.4,通常包含该库的可执行代码、源码以及...
8. **社区贡献**:开源项目常常受益于社区的贡献,JSSC 2022.11可能包含了一些由社区成员提供的改进和建议。 9. **更新的API**:如果JSSC提供了公共API供其他工具或插件使用,那么新版本可能会有API的更新,开发者...
【标题】"2012_jssc_Processor合集"涉及的是2012年《Journal of Solid-State Circuits》(简称JSSC)中关于处理器技术的专题内容。JSSC是电子工程领域内非常权威的一本期刊,专注于固态电路的研究与开发,其涵盖的...
《IEEE JSSC论文(1月2)》的资源包含了2011年2、3月间发表在《IEEE Journal of Solid-State Circuits》(简称JSSC)上的多篇重要学术论文。作为全球电子与固态电路领域的顶级期刊,IEEE JSSC是研究人员、工程师和...
《串口调试助手2.0:Java实现的高效串行通信工具》 串口调试助手2.0是一款基于Java开发的高效串行通信工具,它旨在帮助开发者在进行硬件设备调试或者嵌入式系统通信时,能够快速、稳定地进行数据传输与接收。此版本...
Java,使用JSSC开源库,串口收发,自己实现了多个串口同时收发,因为通常操作串口时就有这样的需求:可能不止一个串口,下载看看吧,不会让人失望的,MainPresent.java是调用的地方由于是从项目中扣出来的,删除了...
JSSC 2023.3 all papers 本期刊是 IEEE 发布的 JSSC 2023 年第 3 期期刊,全文包括 Special Section、客座编辑ials 和多篇论文,每篇论文都涵盖了不同的主题和技术领域。 在客座编辑ials 部分,F. Sheikh 和 Y. Lu...
IEEE JSSC论文集下载电骡地址,60年代到2005年全集15G
Java 读取串口数据所需要的包。通过导入jssc包。可以实现Java调用串口
### IEEE JSSC 论文知识点解析 #### 一、论文背景与意义 - **IEEE Journal of Solid-State Circuits (JSSC)**:这是一份国际知名的学术期刊,专注于固态电路领域的研究进展,覆盖了从模拟到数字、射频(RF)到微波...
### 关于运放的jssc经典论文:1-V 运算放大器与轨到轨输入输出范围 #### 摘要 本文介绍了一种能够在极低供电电压(低至1伏特)下运行的双极型运算放大器(OA),该放大器具有轨到轨输入和输出范围。即使在如此低的...
《2011年IEEE JSSC论文(4月)》是电子信息领域内一份非常珍贵的资源,由IEEE固态电路期刊(Journal of Solid-State Circuits, 简称JSSC)在2011年4月出版。IEEE JSSC作为固态电路领域的顶级学术期刊,其发表的文章...
【标题】:JSSC_202001.pdf 【描述】:这份文档来自于IEEE固态电路期刊,主要关注集成电路的晶体管级设计,特别是10纳米工艺的6.4-Gb/s/pin 16-Gb DDR5 SDRAM的研究。 【标签】:jssc 【内容概述】:该论文介绍了...
Java简单串行连接器(Java Simple Serial Connector,简称jSSC)是一个开源库,专为Java开发者设计,用于实现与串行端口的通信。它提供了丰富的API,使得在Java程序中控制串行设备变得非常方便。在这个项目中,"java...
JSSC 2023.1所有论文 IEEE 国际固态电路会议(ISSCC)是全球最顶尖的固态电路会议之一,每年吸引来自全球的顶尖学者和工程师参与。下面是 JSSC 2023.1 期刊中的所有论文摘要信息: 一、Introduction to the ...
### JSSC 2023.7 特刊知识点概览 #### 一、特刊概述 **《JSSC 2023.7 all papers》**是一本聚焦于2022年欧洲固态电路会议(ESSCIRC)的特刊,由IEEE出版。该期刊旨在为固态电路领域提供最新的研究成果和技术进展。...
《2011年IEEE JSSC论文》是电子工程领域一份极其重要的资源,它代表了当年在集成电路和固态电路(JSSC全称:Journal of Solid-State Circuits)研究方面的前沿成果。IEEE(电气与电子工程师协会)是全球最大的专业...
《2011年IEEE JSSC论文(7月)》是电子信息领域内一份极其珍贵的资源,由国际电气和电子工程师协会(IEEE)的期刊《固体电路学杂志》(Journal of Solid-State Circuits,简称JSSC)发表。这份论文集收录了2011年7...