该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-05
代码折叠之后仍然是“-”号而不是我想的“+”号。
|
|
返回顶楼 | |
发表时间:2008-05-05
再提2个新的特性要求:
1. 支持未知语言格式的基本显示:比如在论坛中有人可能会发表一些未在列表中语言格式,<textarea name="code" class="lua"> ,我希望JSSC不报错,能够保持缩进的样式就可以了。 2. 支持语言的别名,这个是SH中有的,可以用class名为js/javascript,c#/csharp 另外是一个改进的建议: 一些代码高亮是可以重用的,比如csharp的keyWords可以扩展c的keyWords, 而reglib, collapse都是和C/Java完全一样的,能否设置成 jssc.csharp = { extends: "c", keyWords: "csharp多出来的keywords" } 这样可以减少all-in-one.js的大小 |
|
返回顶楼 | |
发表时间:2008-05-05
Quake Wang 写道 再提2个新的特性要求:
1. 支持未知语言格式的基本显示:比如在论坛中有人可能会发表一些未在列表中语言格式,<textarea name="code" class="lua"> ,我希望JSSC不报错,能够保持缩进的样式就可以了。 2. 支持语言的别名,这个是SH中有的,可以用class名为js/javascript,c#/csharp 另外是一个改进的建议: 一些代码高亮是可以重用的,比如csharp的keyWords可以扩展c的keyWords, 而reglib, collapse都是和C/Java完全一样的,能否设置成 jssc.csharp = { extends: "c", keyWords: "csharp多出来的keywords" } 这样可以减少all-in-one.js的大小 第一点大体就是保持原样,但是可以支持行号之类的功能。 关于扩展关键字那个我不太赞同,毕竟这些语言之间并不是直接继承的关系。但可以考虑把相同的提取出来作为一个常量字符串。 |
|
返回顶楼 | |
发表时间:2008-05-05
to dwwind:
好的。 to icank: 是+号,那个图片没存好,有30多k,重存了下变成190b了。可能网速原因当时有问题造成显示慢了些…… 1. 支持未知语言格式的基本显示: 的确,当初有个模糊的理念没有细想,这个是必须的。 2.语言的别名问题: 加载某个语法的时候是用的eval(语言名称),我想应该可以用指向相同引用来解决: jssc.csharp = {定义...} jssc.c# = jssc.csharp 3.到可以考虑最基本的像if else提取出来作为共同的基础。 --- 终于发现为何ff处理大量代码的问题了: 若用textarea节点的话,用oTextarea.firstChild.nodeValue提取的代码只有4096字节,ff可能只支持这么大的容量,其它浏览器没问题。 若用oTextarea.value来提取内容则没有这个限制。可是若是pre标签又不支持oPre.value属性,它将是null。 所以只能写成这样了oTarget.value || oTarget.firstChild.nodeValue。 另外我改了下名字,每种语言的标题名称可以自己定义,更新了,可以看到cpp变成C++,csharp变成c#了。 |
|
返回顶楼 | |
发表时间:2008-05-05
oXmr.open("get", sUrl, false);
这句要修改。 同步请求必然导致假死。 而且你这个地方,修改成异步方式也很容易。 |
|
返回顶楼 | |
发表时间:2008-05-05
Army 写道 是+号,那个图片没存好,有30多k,重存了下变成190b了。可能网速原因当时有问题造成显示慢了些……
建议+和-放在一个图片里。 引用 终于发现为何ff处理大量代码的问题了:
若用textarea节点的话,用oTextarea.firstChild.nodeValue提取的代码只有4096字节,ff可能只支持这么大的容量,其它浏览器没问题。 若用oTextarea.value来提取内容则没有这个限制。可是若是pre标签又不支持oPre.value属性,它将是null。 它可以有若干个text node。所以可以考虑用textContent属性。 |
|
返回顶楼 | |
发表时间:2008-05-05
能讲解一下制作过程和心得就更好了。
|
|
返回顶楼 | |
发表时间:2008-05-05
jindw 写道 oXmr.open("get", sUrl, false);
这句要修改。 同步请求必然导致假死。 而且你这个地方,修改成异步方式也很容易。 改成异步吗? hax 写道 建议+和-放在一个图片里。
那样要如何改变显示? hax 写道 它可以有若干个text node。所以可以考虑用textContent属性。
OK ps:别名更改完了,未知语法可以了,取消使用eval,参考sh的方式。集合了下c里重复率较高的关键字。 dlovek 写道 能讲解一下制作过程和心得就更好了。
这个……这可是长篇大论了……能自己看懂源码最好了…… 而且,不知道,制作思路这种文章适不适合发。 |
|
返回顶楼 | |
发表时间:2008-05-05
jindw 写道 oXmr.open("get", sUrl, false);
这句要修改。 同步请求必然导致假死。 而且你这个地方,修改成异步方式也很容易。 异步按需装载改得不是很好,其它浏览器还行,ie下第一次浏览还行,刷新一下就看不到了。 http://army.512j.com/creations/code/jssc3/autoload.js |
|
返回顶楼 | |
发表时间:2008-05-05
把那3个图片都放在一个图片里了……
貌似找到原因 了……递归调用xhr自动装载脚本,ie下递归超过12次左右会栈溢出产生错误……
|
|
返回顶楼 | |