博客美化:通用代码高亮插件(SyntaxHighlighter)

         写这篇博文的起源是我想把自己的博客弄的更加美观,相信你也一样。

         首先,我要说SyntaxHighlighter插件的实现方式及应用示例,然后再说明如何将其应用到自己的博客,使博客的代码着色更加美观。

 

源码: SyntaxHighlighter 示例源码下载

SyntaxHighlighter

SyntaxHighlighter 源码下载

1)         Syntaxhighlighter_3.0.83  (下载点见篇头)

非官方原版,做了如下调整:

a)         原版的demo程序存在bug,调整了demo程序(下面的贴图是调整后的demo)。

b)         src\shCore.js未压缩的源代码中缺失RegExp对象,造成只能使用scripts\ shCore.js加密混淆文件,造成调试和学习上的不便。我这里将在调试环境中解密后的RegExp对象抽出来,放入src\shCore.js使插件可正常使用(但是RegExp对象的代码依然是压缩过的)。

c)         原版可在官网下载,请进入……

 

Syntaxhighlighter插件简介

SyntaxHighlighter(原名:dp.SyntaxHighlighter)是一套在浏览器上支持对各种代码进行语法着色的独立 JavaScript 库。官网请进入……

下载 Syntaxhighlighter_3.0.83解压后,里面主要文件介绍如下:

jQuery-1.4.2.js

jQuery是一个快速、简单的JavaScript library,它简化了HTML 文件的traversing,事件处理、动画、Ajax 互动,从而方便了网页制作的快速发展。jQuery是为改变你编写JavaScript 的方式而设计的。

更多请进入……

qunit.js

qunit.css

QUnitjQuery团队开发的JavaScript单元测试工具,使用方便,界面美观。它由jQueryjQuery UI jQuery Mobile 项目使用,并可测试任何通用的 JavaScript 代码,包括其本身!

更多请进入……

shCore.js

SyntaxHighlighter插件的核心实现文件,根据特殊的 class 配置动态生成常规形式的 html 标签及 class 属性值。包含两个主要对象:XRegExp对象和SyntaxHighlighter对象。

shCore.css

控制shCore.js生成的 html 文档的布局、字体等。(具体着色由Styles文件夹中的css主题控制,或自定义主题)

shAutoloader.js

提供一种简单的参数方式,实现根据待着色代码块中使用的 brush 来自动根据autoloader对象配置中的隐射加载 brush.js

shLegacy.js

 

scripts文件夹

包含具体语言各自的语法特性:类型、关键字、函数、注释、别名等等信息,用于生成对应的html class 属性值,最后通过css主题进行着色。更多语言笔刷请进入……

Styles文件夹

提供一些现成的代码着色css主题,可直接用于项目。

注意:(请下载上方提供的代码,打开此文件夹)这个文件夹下的样式文件的关系:shCore.css + shThemeDefault.css = shCoreDefault.css

演示示例:theme_tests.htm 文件

 

SyntaxHighlighter 插件配置

需要明白的3Syntaxhighlighter配置

一、              SyntaxHighlighter.config

SyntaxHighlighter.config为当前页面的所有待着色代码块配置通用设置,这些配置不会再被单个元素设置所覆盖。

名称

默认值

描述

space

‘ ’

 

useScriptTags

true

是否支持解析 ),甚至内置在 CDATA 块中,大多数浏览器也无法正确解析

你可能感兴趣的:(博客美化:通用代码高亮插件(SyntaxHighlighter))