下载地址: http://code.google.com/p/syntaxhighlighter/downloads/list
2、修改的文件
global.asp
class\ubbcode.asp
style\SyntaxHighlighter.css (新增加的代码高亮CSS文件)
Scripts\ (新增加的文件夹,里面为相关代码高亮的JS文件)
3、修改方法
首选把syntaxhighlighter下载到本地把里面的Scripts文件夹复制到你的blog根目录下,把styles文件夹下的SyntaxHighlighter.css放到你blog的styles文件夹下。
接下来是修改文件,修改最主要的一个文件是class\ubbcode.asp
class\ubbcode.asp改动内容:
复制代码
代码如下:
// Bring Back HTML New Line <br /> and Spaces
str=str.replace(/\n/g,"<br />");
str=str.replace(/\$nbsp\$/g," ");
//以上是本身就在的代码段,以下是我新添加的代码段,找对位置添加就可以了
//Break N add///////////////////////////////////////////////////////////2007-7-25 把代码里的换行换成\n
str=str.replace(/\<CodeBR\>/g,"\n");
此文件还有一处改动,找到 // Process [code] tag,这个是code UBB代码的解析方法,替换为以下内容:
注意:为避免解析,我把[]换成全角了
复制代码
代码如下:
// Process [code=] tag ///////////////////////////////////////////////////////Break N Edit 2007-7-25
this.formatCode=function(str){
str=str.replace(/\[code\]/ig,"[code=]");
// Clean up string
str=str.replace(/\[code=/ig,"[code=");
str=str.replace(/\[\/code\]/ig,"[/code]");
str=str.replace(/\n*\[code=/ig,"[code=");
str=str.replace(/\n*\[\/code\]/ig,"[/code]");
str=str.replace(/\[code=([^]]*)]\n*/ig,"[code=$1]");
str=str.replace(/\[\/code\]\n*/ig,"[/code]");
while(str.indexOf("[code=", 0)>-1 && str.indexOf("[/code]", 0)>-1){
var intStart,intEnd;
var strText="";
var strAuthor="";
var strSource="";
var strResult="";
intStart = str.indexOf("[code=", 0) + 6;
intEnd = str.indexOf("]",intStart);
if(intStart>5 && intEnd>0){
strAuthor = str.substr(intStart, intEnd-intStart);
}
intStart = intStart + strAuthor.length + 1;
intEnd = str.indexOf("[/code]", intStart) ;
if(intEnd<=intStart) intEnd = intStart;
if(intEnd>intStart){
strText = str.substr(intStart, intEnd-intStart);
var strAuthorText = strAuthor.replace(/\"/g, "");
strAuthorText = strAuthorText.length>1 ? strAuthorText :"c-sharp";
var strContent = this.encUBB(strText.replace(/^ +/gm," ").replace(/\:\/\//g,":")).replace(/\n/g,"<CodeBR>")
//response.write(strContent);
strResult = '<pre name="code" class="'+strAuthorText+'">'+ strContent.replace(/\<br\s\/\>/ig,'\r\n') + "</pre>";
//strResult = '<div class="code">'+ this.encUBB(strText.replace(/^ +/gm," ").replace(/\:\/\//g,"://")) + "</div>";
}
intStart = str.indexOf("[code=", 0);
intEnd = str.indexOf("[/code]", intStart) + 7;
if(intEnd<=intStart+6) intEnd = intStart + 7;
strSource = str.substr(intStart, intEnd-intStart);
if(strResult!=""){
str = str.replace(strSource, strResult);
}else{
str = str.replace(strSource, strSource.replace(/\[/g, "["));
}
}
return str;
}
修改global.asp文件
复制代码
代码如下:
" />
把以下内容放在function pageFooter()中:
复制代码
代码如下:
Foot部分完整的代码添加效果示例
复制代码
代码如下:
// Page footer //////////////////////////////////////////////////////////////
function pageFooter(){
// Caculate Execution Time
processTime = Number(new Date()) - processTime;
%>