windy314 2006-8-14 09:44
让你的PJBLOG支持代码高亮,和对PJBLOG3的建议
很多朋友都在使用PJBLOG,自己也对PJBLOG关注了很久。
这个产品正在不断的完善,功能也不断的加强!感谢作者给我们带来这么好的产品。
在此提几个小小的建议,不知对作者有没有帮助。
[b][size=4]1、更加合理的文件部署[/size][/b]
系统的代码感觉有点乱,部署文件的时候可以更加合理。
如:
/js 专门放置JS文件
/xml 专门放置xml文件
/util 专门放置一些通用函数
/classes 专门放置类文件
/BlogDb 专门放置数据库文件
/Plugins 专门放置插件文件
/skins 专门放置皮肤文件
pjblog在实现业务逻辑的时候,代码的逻辑有点乱,经常一个文件又有class定义,又有function/sub定义,又有html代码块。可否将不同类型的代码块放到不同类型的文件中?
[b][size=4]2、语法高亮的模块[/size][/b]
希望pjblog能够加入语法高亮的模块,现在有一些blog(如:博客堂)能够实现.net代码块高亮显示并带收缩功能,有些支持php,asp,html,js等代码的高亮显示。在ubbcode.asp中看到作者有定义了highlightcode的UBB标签,但是没有实现。后来本人完善了一下,加入了ubb对highlightcode的支持,是由js实现的,但感觉很不理想。
[[i] 本帖最后由 windy314 于 2006-8-14 15:34 编辑 [/i]]
windy314 2006-8-14 15:36
补充一下代码高亮的代码
===================================
概述
===================================
因为很喜欢博课堂里的语法高亮,所以就到网上找了几个语法高亮的代码,并整合到PJBLOG中。效果不是很理想,希望DX们能够改进。
本代码直接覆盖到blog根目录即可。
===================================
原理
===================================
采用highlightcode的UBB标签,将需要高亮显示的代码块转换成html代码,放置于一个display:none的Textarea中,其上下文结构是:
<SPAN class="UBBHighLightCode">
<Textarea style="display:none">
// 此处将ubb标签中的代码copy过来
</Textarea>
<Div><!--这里将由JS自动填充通过高亮转换以后的代码,并显示--></DIV>
</SPAN>
在SPAN的class中定义了一个UBBHighLightCode样式:
.UBBHighLightCode {BEHAVIOR: url(HighLightCode.htc);white-space:normal; word-break:break-all}
-------------
注意:由于样式文件都在skins下,不同的skins有不同的样式,所以这里需要在你使用的样式中的增加次句代码就okey。
这里用到了htc,好象FIREFOX不支持,测试过的确不支持,郁闷ing...
htc的作用就是处理各种代码,并返回高亮处理以后的代码。
===================================
使用方法
===================================
1、在发表日志的时候,选择UBB编辑器
2、在使用高亮显示的代码块使用
[highlightcode=xx]
<script>
alert('Test High Light');
</script>
[/highlightcode]
其中xx是可以为 sql,c#,java,vb,js,html,xml,也就是支持这些语言的高亮显示,嘿嘿。
目前只能手写,并没有集成到UBB编辑器的界面,没功夫弄了:(
===================================
注意事项:
===================================
1、有遇到<br/><br><Br/><BR/>等等的时候,就直接显示换行了。这是个bug,解决方法就是替换<br>为<br />,中间加一个空格就好了。
2、一定要选择一个语言类型highlightcode=c#
3、对于以前的文章,只要修改一下,加入UBB标签就可以了。
===================================
更新文件说明
===================================
HighLightCode.htc 行为文件
/skins/Nuvola/layout.css 样式文件,可以将上面提到的代码复制到相应的skins中
/common/ubbcode.asp 只是增加了对highlightcode转换的代码
没有版权,欢迎copy
windy
2006.8.14
puterjam 2006-8-17 22:23
:lol: 这个功能,我也打算做到PJBlog3里,PJBlog2显示的代码加亮不好
starjason 2006-8-18 09:23
学习了 ~~支持下~~~~
windy314 2006-8-19 20:51
嘿嘿,期待ing...~~
这个代码是用htc写的,不支持FIREFOX,如果要兼容其他浏览器就得下点功夫了:)
starjason 2006-8-20 22:19
来支持下~~~~~~~~
wwsybtx0001 2006-8-24 13:21
不是很懂,学习中...
Sirit 2006-8-26 13:44
[quote]原帖由 [i]puterjam[/i] 于 2006-8-17 22:23 发表
:lol: 这个功能,我也打算做到PJBlog3里,PJBlog2显示的代码加亮不好 [/quote]
代码加亮的功能很有必要,加油!
继续支持!:victory:
douglasleft 2006-10-22 21:05
不能下载~
sunny1985 2007-5-20 00:29
不错的插件,谢谢啊~:)
mm9252 2008-4-22 14:56
期待PJblog3.................................:)
highplace 2008-6-30 19:27
其实可以试试代码发芽网
试试这个:无需代码插件在blog中做代码高亮
代码发芽网:[url=http://www.fayaa.com/code/]http://www.fayaa.com/code/[/url]
支持近百种编程语言的
效果参见这里:[url]http://hi.baidu.com/2maomao/[/url]