编辑器研究
从网上down了几十个文本处理的程序下来,我的主要目的是研究一下目前Windows平台下好用的编辑程序,从中汲取一点有用的想法。其实看了看,发现超过一半的编辑器质量很一般,有的简直可以用粗制滥造来形容,只有不到一半的比较成熟。这里先排除像Word这种富文本编辑器,因为我只是为了Impeller来寻找竞争对手和学习对象,所以是纯文本编辑器才列入其中。
Emacs和VIM暂时也不说,感觉这两个从*nix发源起家的,风格完全与Windows平台下的不同,可比性并不大,当然这两个的极强的可扩展性是很值得学习的,VIM了解得更少,Emacs的之前用过一段时间,确实可以说是功能多得变态,这一方面得益于它的灵活的扩展性外,另一方面当然是几十年发展积累下来的众多fans开发的插件,看似很朴素的界面下,甚至可以玩俄罗斯方块。
之后剩下可以参考的,其实就是目前最流行的几款了,如UltraEdit、EmEdit、EditPlus、PSPad、Notepad2、Notepad++之类通用文本编辑器,Code::Blocks、Visual SlickEdit、Source Insight之类具有工程概念支持的代码编辑器。一般说来现在优秀的通用文本编辑器都会支持编程语言的语法高亮,有的还有代码折叠,集成一定程度的文件管理功能,支持外部脚本扩展、宏功能,其它的主要是一些锦上添花的辅助功能,比如支持外部程序调用,各种插入功能等等,看来看去,我觉得Impeller的编辑器功能上除了不支持列模式外,其它的基本上都有了,甚至有的方面还可能略强于那些编辑器。但与那些代码编辑器来比的话,还欠缺一些很重要的元素,比如定位为一款IDE来说,重构是现代IDE必要的功能,以及Source Insight具有的引用、跳转功能也是强得很有特色,作为一款代码浏览器是很需要这样方便的代码导航能力的。
在这个8月里,我大概只能做到完成外部工具调用以及留下外部脚本扩展接口为止了。其它的想法,留给自己的CodingTool来实现吧!