| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 879 人关注过本帖
标题:【Advanced】关于语法加亮
取消只看楼主 加入收藏
xred
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-7-8
收藏
 问题点数:0 回复次数:1 
【Advanced】关于语法加亮
通过google进入到贵论坛,发现有个飞燕语法加亮,不过碍于密码没看到源代码,不过看到了源代码的大小,只有9K,基本可以断定该程序不具有扩展的能力,至于能否解释子语言不得而知。不知道原作者和贵论坛的其它的高手有没有深入考虑该问题,并且深入考虑其中的效率和扩展性。
我也来秀一下,这是我写的一个test,不过还是不满意。期待大家的积极讨论,我是做编辑器的,这是我的Blog, http://www.。出于方便,这个test是用c#写的,目前每秒可以解释20万左右个语法单位,如果去除掉io的部分,则可以达到40万个语法单位。改成c++,也基本上在这个水平。只是在扩展性上还有待进一步改善。

希望大家能积极讨论,发表自己的见解。

搜索更多相关主题的帖子: Advanced google 
2008-07-08 10:04
xred
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-7-8
收藏
得分:0 
你误会我的意思了,我说的子语言的概念是,c++或者c中可以嵌入汇编,htm中可以嵌入css,asp,php,js,被嵌入的子语言叫子语言。
程序员用的编辑器一个很重要的功能,就是提供的渲染语法的引擎是否够好,就是你在屏幕上看到的花花绿绿的代码。外挂不是核心功能,暂时忽略,我的外挂是通过lua来实现的,不需要编译。其它的功能比如代码的注释,缩进,也是通过lua来实现的。对于编辑器而言,这些都不是核心,核心的东西是文档的管理,高速自动换行,和语法渲染。
现在我们讨论的是语法渲染。
对于渲染而言,最难的是如何区分子语言,并且套用不同的schema,绝对不可用正则,我试过了,非常的慢。在区分完之后,用正则进行匹配则是可以的。
2008-07-08 11:08
快速回复:【Advanced】关于语法加亮
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.069482 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved