JavaScript语法着色引擎(demo及打包文件下载)


Posted in Javascript onJune 13, 2007

应 得意小蛇 的建议,我整理了一下去年写的JavaScript语法着色引擎,并提供下载,喜欢的尽管拿去,嘿嘿
总的来说是很简单的东西,只是提供了关键字的着色以及一些基本的语法(例如注释,字符串,正则等等),从demo中应该很容易看到其用法,这里简单介绍下:
类名:Lighter
通过new Lighter()可以得到一个着色引擎实例,假设为lighter,有以下属性和方法:
语言属性:lighter.language
这个属性的范围是可以根据语法文件的数量自己添加的,提供的demo中有'cpp' , 'js'  , 'xml' , 'java'四个语法文件,欢迎大家提供更多语法文件:)
着色方法:lighter.highlight(code)
这就是核心的着色函数了,code是要着色的代码,方法返回着色好的代码,代码颜色使用html标记实现。
语法扩展:Lighter.addLanguage(object)
这是一个静态方法,通过类名调用,参数为javascript对象,包含了语法关键字信息,可以参见lang/demo.js里的格式自己扩展语法文件。独立的语法文件既可以直接在html里用<script>标记链接,也可以用提供的$import方法动态载入。需要注意语法文件必须在类定义之后,类实例化之前添加。
已有语法文件:Lighter.supportedLanguages
同样是一个静态属性,表示当前支持语言的集合。

演示地址:http://www.supnate.com/codelighter/demo.html
下载地址:http://www.supnate.com/codelighter/X2CodeLighter.rar

本地下载

Javascript 相关文章推荐
Javascript 类与静态类的实现(续)
Apr 02 Javascript
在vs2010中调试javascript代码方法
Feb 11 Javascript
jquery用data方法获取某个元素上的事件
Jun 23 Javascript
jQuery对象与DOM对象之间的相互转换
Mar 03 Javascript
JavaScript DOM 学习总结(五)
Nov 24 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
Jan 20 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
Aug 31 Javascript
vue表单绑定实现多选框和下拉列表的实例
Aug 12 Javascript
jQuery ajax调用webservice注意事项
Oct 08 jQuery
JS实现的DOM插入节点操作示例
Apr 04 Javascript
Vue.js实现大屏数字滚动翻转效果
Nov 29 Javascript
vue 检测用户上传图片宽高的方法
Feb 06 Javascript
Apply an AutoFormat to an Excel Spreadsheet
Jun 12 #Javascript
Add Formatted Data to a Spreadsheet
Jun 12 #Javascript
excel操作之Add Data to a Spreadsheet Cell
Jun 12 #Javascript
List Installed Hot Fixes
Jun 12 #Javascript
List the UTC Time on a Computer
Jun 11 #Javascript
List the Codec Files on a Computer
Jun 11 #Javascript
List Information About the Binary Files Used by an Application
Jun 11 #Javascript
You might like
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
jquery text()要注意啦
2009/10/30 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
关于jQuery中的each方法(jQuery到底干了什么)
2014/03/05 Javascript
jQuery选择器源码解读(二):select方法
2015/03/31 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
详解NodeJS框架express的路径映射(路由)功能及控制
2017/03/24 NodeJs
JavaScript Date对象应用实例分享
2017/10/30 Javascript
详解一个基于react+webpack的多页面应用配置
2019/01/21 Javascript
微信小程序缓存过期时间的使用详情
2019/05/12 Javascript
Vue程序调试的方法
2019/06/17 Javascript
JavaScript实现雪花飘落效果
2020/12/27 Javascript
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
使用python来调用CAN通讯的DLL实现方法
2019/07/03 Python
django 通过url实现简单的权限控制的例子
2019/08/16 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
python处理RSTP视频流过程解析
2020/01/11 Python
实例讲解HTML5的meta标签的一些应用
2015/12/08 HTML / CSS
幼儿运动会邀请函
2014/01/17 职场文书
文明村创建实施方案
2014/03/27 职场文书
双方协议书
2014/04/22 职场文书
学雷锋树新风演讲稿
2014/05/10 职场文书
资助贫困学生倡议书
2014/05/16 职场文书
银行主办会计岗位职责
2014/08/13 职场文书
俞敏洪一分钟演讲稿
2014/08/26 职场文书
个人股份转让协议书范本
2014/10/26 职场文书
2015年银行工作总结范文
2015/04/01 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
2015年小学实验室工作总结
2015/07/28 职场文书
股东出资协议书
2016/03/21 职场文书
微信小程序和php的登录实现
2021/04/01 PHP
配置nginx 重定向到系统维护页面
2021/06/08 Servers
HTML5基础学习之文本标签控制
2022/03/25 HTML / CSS
cypress测试本地web应用
2022/06/01 Javascript