【因工作原因,好久不更新了,向各位关心的朋友说声道歉】
去年的某一天,对MegaxEdit进行了整理,因最后MFC静态编译出来的东西较大,遂萌生往WTL转移的想法。
前前后后花了很长事件移植完毕,与其说是移植,倒不如说是重写。
现在编译出来只有300K左右,压缩一下,100多K,挺小巧。
最近反复在想,我为什么做这个东西?最后的答案是:兴趣。
多少年以前我就想做编辑器,一直断断续续到现在还没完工,哎。。O(∩_∩)O呵呵。
看了网上一些对编辑器的评论,感触颇深。
尤其是Mac上的TextMate,我没用过,不过看介绍,似乎并没有什么特殊的功能,仅仅是一个什么Bundles就让很多
程序员趋之若鹜。其实也就是个代码完成,感觉实现起来没什么技巧。也许具有足够的可定制性不是一件easy的事情吧。
还有e这个Editor,真不想说什么了,我觉得很一般很一般。一个编辑器,启动就要25M内存。编辑稍微大点的文件,内存就直线
上升。我用了一会,就发现一堆的bug.真不明白,这么一个破编辑器也要卖39欧。
还有Notepad++,竟然被评为最好用的编辑器了,俺不服。
与其骂别人,倒不如激励自己。我的编辑器到底应该有什么样的特色呢?
我觉得下面这几个是我必须得要的。
1, 支持unicode和东亚字符,最好可以自动探测文件编码(这点,借助Firefox,我实现了,hoho)
2, 支持自定义语法文件,语法渲染要好。这点上,我最后使用了词法分析的方式来做。大多数人都会使用到
少数几个编程语言,都希望编辑器能够更好的渲染这几种常用的语言代码。另外我提供了一个CommonLex供一般程序使用,
可以分析单行,多行注释,字符串,数字,分组关键字,分隔符,这些其实就够了。
3, 支持Schema,眼睛累了,就可以换一个,hehe
lua比较好用,我直接把颜色保存成table,想用哪个schema,配置一下就Ok了。
4, 一定不要过于占用内存和CPU。
5, 我还想要什么呢。。。还没想好。最主要我想要我做的。O(∩_∩)O哈哈~
发个截图,留作纪念。
![](http://www.cppblog.com/images/cppblog_com/megax/edit20090225_1.JPG)
![](http://www.cppblog.com/images/cppblog_com/megax/edit20090225_2.JPG)
另外,哪位朋友给我写个从后面查找的指定字符串的函数,原型如下:
就一个要求,要高效,要对啊
src: 源字符串
len: 源字符串长度
start: 从该位置开始查找
sub: 字符串
sub_len: 子字符串长度
case: 区分大小写
int rstrstr( const char* src, int len, int start, const char* sub, int sub_len, bool case );
posted on 2009-02-25 19:39
megax 阅读(2519)
评论(23) 编辑 收藏 引用