给博客添加代码高亮插件搞定

[ At 6/16/2009 By wukong   5 comments ]

一直感觉自己博客发布的代码比较难看,粘贴进来后连个格式都没有,不利于阅读。也上 zblog官方上看过代码高亮的插件,但是据网上说比较垃圾,所以也就没敢用,今天找了个基于dp.SyntaxHighlighter(一个在google code上的开源项目)开发的fck代码高亮插件,试着安装了一下,感觉用着还是不错的。
 

安装很简单,下载本文附带的压缩包,解压缩后放到fckediter的plugins目录下,然后修改FCKeditor的配置文件fckconfig.js。

配置其中的FCKConfig.ToolbarSets,添加HighLighter:
 FCKConfig.ToolbarSets["review"] = [
  ['HighLighter','Bold','Italic','Underline','StrikeThrough','Link','Unlink','Image','Rule','Smiley','TextColor','BGColor']
 ];
这个是放置工具栏按钮的,你也可以放到别的工具栏,配置代码要区分大小写,这里的是大写开头的HighLighter
 
2、还有一句配置就是注册高亮插件,让fck知道他,如下:
 FCKConfig.Plugins.Add( 'highlighter', 'zh-cn,en' ) ;

然后保存配置文件,再打开博客添加文章,哈哈,一个带有"ab"字母,黄底的图标出现在工具栏了,这就是我要的高亮代码的插件按钮了。

点击该按钮,弹出如下对话框,就可以选择要粘贴的代码的语言,并且贴入代码了。

 

粘贴后确定,保存后的样子嘛,下面就是了。

 
  1. public partial class AdminUserList : System.Web.UI.Page
  2. {
  3.     protected void Page_Load(object sender, System.EventArgs e)
  4.     {
  5.         Business.AdminInfo.CheckAdminLogin();
  6.         if(!Page.IsPostBack)
  7.         {
  8.             SetViewMode(true);
  9.             BindList();
  10.             BindGrid();
  11.             
  12.         }
  13.     }
  14.     
  15.     private void BindList(){
  16.         Business.Admin obj=new baby.Business.Admin();
  17.         ddl_role.DataSource=obj.Admin_RoleList();
  18.         ddl_role.DataTextField="RoleName";
  19.         ddl_role.DataValueField="RoleId";
  20.         ddl_role.DataBind();
  21.     }
  22.     
  23.     private void BindGrid()
  24.     {
  25.         Business.Admin obj=new Business.Admin();
  26.         dg_list.DataSource=obj.Admin_UserList();
  27.         dg_list.DataBind();
  28.     }
  29. }

ash 的要求,再粘贴一段asp和php的代码,看看效果。下面是asp的

 
  1. Class FCKeditor
  2.  
  3.     private sBasePath
  4.     private sInstanceName
  5.     private sWidth
  6.     private sHeight
  7.     private sToolbarSet
  8.     private sValue
  9.  
  10.     private oConfig
  11.  
  12.     Private Sub Class_Initialize()
  13.         sBasePath       = ""
  14.         sWidth          = "100%"
  15.         sHeight         = "400"
  16.         sToolbarSet     = "Default"
  17.         sValue          = ""
  18.  
  19.         Set oConfig = CreateObject("Scripting.Dictionary")
  20.     End Sub
  21.  
  22.     Public Property Let BasePath( basePathValue )
  23.         sBasePath = basePathValue
  24.     End Property

 再来段php的

 
  1. <?php
  2. function RunMagicQuotes(&$str)
  3. {
  4.     if(!get_magic_quotes_gpc()) {
  5.         ifis_array($str) )
  6.             foreach($str as $key => $val$str[$key] = RunMagicQuotes($val);
  7.         else
  8.             $str = addslashes($str);
  9.     }
  10.     return $str;
  11. }
  12.  
  13. function gdversion()
  14. {
  15.   //没启用php.ini函数的情况下如果有GD默认视作2.0以上版本
  16.   if(!function_exists('phpinfo'))
  17.   {
  18.     if(function_exists('imagecreate')) return '2.0';
  19.     else return 0;
  20.   }
  21.   else
  22.   {
  23.     ob_start();
  24.     phpinfo(8);
  25.     $module_info = ob_get_contents();
  26.     ob_end_clean();
  27.     if(preg_match("/\bgd\s+version\b[^\d\n\r]+?([\d\.]+)/i"$module_info,$matches)) {   $gdversion_h = $matches[1];  }
  28.     else {  $gdversion_h = 0; }
  29.     return $gdversion_h;
  30.   }
  31. }

 

下面的连接是该插件的压缩包,喜欢的朋友可以下载安装试试。

highlighter.rar

 

« 悟空的cmsc#获取程序集信息 »
  • 相关文章:
  • 2.左手烟
  • 不知道能不能用于wordpress
    由 wukong 于 1/31/2010 7:43:00 AM 最后编辑
    由 wukong 于 4/22/2010 9:50:00 AM 最后编辑
  • 1/7/2010 2:11:59 PM 回复该留言
  • 4.jason
  • WordPress有插件可以实现!
    由 wukong 于 4/22/2010 9:49:40 AM 最后编辑
  • 2/7/2010 2:15:48 PM 回复该留言
  • 5.wukong
  • 跟站点的cms或者blog应用无关的,只要是fckeditor编辑器就行,wordpress没用过,如果是fckeditor就可以,不必非得用什么wordpress插件
  • 2/8/2010 9:35:53 AM 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By 空空如也 

Copyright 167-2009 www.7es.cn . Some Rights Reserved. Email:iamwgh@msn.com QQ:49556
Friends site:Null