ckeditor整合SyntaxHighlighter高亮插件详解
使用ckeditor的朋友都知道,ckeditor自身是没有高亮显示插件了,如果你想让你的代码有高亮效果,下面我来给大家介绍在ckeditor整合SyntaxHighlighter高亮插件方法,有需要了解的朋友可参考。
一、高亮参考源插件及修改说明
1、Highlighter整合进FCKeditor
来源地址Kend's Blog,不过他(她)用的是dp.SyntaxHighlighter。修改说明:
A、dp.SyntaxHighlighter更换为下面的SyntaxHighlighter。
B、Javascript脚本位置调用修改为根目录,不再到FCKeditor目录下调用,为了简单,把所有JS全部写到一个字符串里了*_*,创建element太罗嗦了。
C、删除全部的文件只剩下三个:1个.js、1个html和1个logo文件。
2、SyntaxHighlighter
来源地址:http://alexgorbatchev.com/,这个插件是自整合调用,方法自己定,所以天缘就把他们两个给结合起来了,刚刚在Firefox下测试通过,其它细节问题稍后再修正完善,修改说明如下:
A、原CSS调用分成两个部分,天缘把核心CSS和缺省主题给合并成一个,减少调用次数。
B、原文件组合不同目录,修改后只留下主要文件,且全部放到同一个code目录下。
二、高亮插件修改及注册
1、dp.SyntaxHighlighter插件修改
删除剩下的三个文件,需修改多个路径地方及双击编辑代码部分,这里不再列出,,大家可以直接看下面下载后代码,时间关系,很多代码未优化,够用就不再折腾了。
2、高亮插件注册部分:
在FCKeditor/fckconfig.js中,增加插件注册和工具栏注册两项,修改参考如下:
FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ;
FCKConfig.Plugins.Add( 'SyntaxHighlighter', 'zh-cn,en' ) ;//增加高亮插件注册
FCKConfig.AutoDetectLanguage = false ;//禁止自动检测语言
FCKConfig.DefaultLanguage = 'zh-cn' ;//默认显示中文语言
FCKConfig.ToolbarSets["Default"] = [
['PasteText','SyntaxHighlighter','Find','Replace','RemoveFormat'],
] ;//添加到工具栏,位置自己选择
3、下载高亮插件
下载插件:点击下载,下载解压后有两个目录:
一个是JS目录,把JS目录拷贝到网站的跟目录下即可(如果带子域名相应调整)。
一个是SyntaxHighlighter目录,把SyntaxHighlighter拷贝到FCKeditor/plugins下面。
4、清空缓存后台测试
然后上传,再次进入FCKeditor编辑模式,可以看到SyntaxHighlighter已经生效,而且支持双击编辑,具体事例参考本页面源码。