shoColorCode代码加亮程序已经上传至本站,大家可以在线使用了。
(在线使用shosh的代码加亮程序)
为使更好地使用该程序,推荐使用IE浏览器。
简要说明如下:
tab size:指定tab的缩进量,有效值2-32,默认为8,输入无效时会设置为默认值。
简单:生成的代码的简单程度,即一下标点符号不加亮,数字不加亮。
共用CSS:可以生成较简洁的代码,如果需要粘贴到其他地方,一般需要将其取消,或是将CSS一起拷贝过去。
复制:复制有三种,一种是左键点击一下“复制”按钮,一种是左键双击“复制”按钮,不同在与单击会将外层的代码一起复制到剪切板,而双击只复制内部的代码的剪切板,一般双击即可。第三种就是直接手动选中生成的代码区域,然后CTRL+C复制,这对于要将结果粘贴到不能够直接粘贴代码的地方的情况很有用,比如要粘贴到outlook或是email或是论坛的多功能编辑框等。
保存:该功能将生成的加亮代码保存为网页。保存时推荐选中“共用CSS”选项,这样保存下来的文件会相对较小。
另外提醒大家的是,如果加亮的代码较长,比如有几千行,推荐先设置好各种选项后再将代码粘贴到编辑框。因为每做一次改动都会重新生成加亮代码,会占用较长时间。
shoColorCode代码加亮程序更新记录:(查看V7.5生成的demo)
V7.5 -2007.07.18
修改关键字替换方法使更具灵活性。正确匹配正则和正负浮点数(过滤匹配变量$1等中的数字,自动识别+-符号含义)。/\//无法通过此法修正。
V7.3 -2008.07.17
让js的正则表达高亮显示,但是存在的问题是和注释的冲突,比如如下的正则不会识别,而识别成注释
/\// 后面的//被解释成注释,那么这个就不被认为是注释了。不过/\/*/应该不会有问题,因为如果前面没有匹配的/*,不会被当成注释的*/
另外如var a = 3 / 4 / 5;这样的语句中间部分会被当成是正则表达式。
V7.2 -2008.07.16
支持//单行注释的\连接(实际上当以\n作为结尾的判断,\连接均有效,目前只有单行注释[\\和<!--]有这样使用)
将字体从Fixedsys改为Courier New
V7.1
完全兼容网页制作上的需求了。
修正js的规则:<!--等同地解释成//
V7.0
考虑网站发布的因素,设置默认共用CSS,并将LI的ID设为scli。
增加生成简单代码的选项,简单代码不会使一般的操作符号或数字变色。
V6.6
因为js代码压缩的时候,会造成一下代码错误:
if(true)
a = 1;
else
a = 3;
也就是说,else后面如果不加{},往往会造成错误。为避免此错误,将所有的允许不加{}的语句加上了{}。
V6.5
将作者的网站改为http://www.wscxy.com
函数后加分号
V6.4
发现在firefox中(ie中当然是没有问题的啦)当内容中没有匹配rule的内容的时候,内容输出会少掉(显示不出来),最后才发现原来是substr惹的祸,在firefox中需要明确指定字符串截取的起始和结束位置,而ie中却支持默认的,比如只传入一个参数,则从该参数的位置其到最后,而firefox只返回一个字符……-1在ie中有特殊的表示,而firefox中则没有。所以此版本修正了此问题。
另外为了不使用firefox中不支持的event.srcElement,textarea中tab的缩进取消了该方法,而直接使用对象传入,不过因为还有其他的东西firefox无法支持,所以即使这样修改后在firefox中还是没法使用该功能的,而对ie没有什么影响。
V6.2
还是\r\n的问题,当直接默认\n为换行符而忽略\r的话,在IE中,/^\n/将不匹配新行。现在的作做法是直接将所有的\r删除,然后直接把\n作为换行符,这样不管是IE下还是firefox下,都不会有问题了。
V6.0
之前的版本都使用\r\n作为回车标记,但是firefox的回车标记是\n,而且在ie下,直接使用\n作为回车标记也是成立的,所以在该版本中,使用\n作为回车标记,需要测试的是ie下是否全部成立。尤其是有使用/^\r\n/换成/^\n/之后。
V5.5
发现在VC中,#define #if等#开头的特殊符号之后可以有空格或\t,该版本使之有效。另外修改了以下CPP和C#中的关键字的颜色,修改使用蓝色。
之前:
shoColorCode可以将C、C++、C#、JavaScript、CSS、HTML、XML等语言或脚本(可以扩充)进行转化,转化生成标准的HTML代码,方便用户尤其是博客用户将代码发布到网上。转化时不仅可以保持代码原有的排版格式,还可以自己定义转换后Tab的大小(用几个空格来代替),并且不会因为tab之前的其他字符影响排版。另外,用户还可以选择是否生成行号,工具会给各种关键字或符号进行区分着色。如若发布的是一般的网页代码(可能不光只有HTML代码,或许还有CSS或/和JavaScript),工具会首先自动识别代码类型,再分别对各个部分的代码进行各自的转化。最后,用户可以选择将转换后的代码保存为单独的网页。
更早:
对于程序员来讲,常常需要将自己的代码放到网页上让大家去阅读(尤其是写blog的),我也不例外。现在有些blog的编辑器提供插入代码的功能,但是有些blog没有。对于一般的用户而言,这个功能并不重要,但是对于程序员来说,有了这个功能,可以很方便将代码插入到网页中去,如果缺少了该功能,插入代码将是很痛苦的一件事情,尤其是\t(tab)的处理。因为网页并不完全支持tab,这样粘贴进来的代码将失去原来的格式。而对于就提供该功能编辑器而言,多数是在服务器端完成对代码的处理的(使用asp.net之类的)。本人使用javascript实现了该功能,而且可以很方便地定义各种类型的“关键字”和符号,可以对多种语言进行转换(只要知道该语言的语法规则)。另外,该工具还支持行号显示选择、自定义tabSize等功能。目前已经支持js/c/cpp/c#等语言的转换。稍候将会对html/xml提供支持。
使用js对各种代码进行转换,转换为html代码,方便web发布。
支持各种“关键字”和“符号”的定义
支持Tab Size 自定义
支持行号显示选择
Tags: jsjs 代码加亮代码加亮