第122章
三月的北川,一天比一天暖和。
林风坐在书桌前,盯着电脑屏幕上的代码。光标在最后一行闪烁,像是在等他的下一个命令。
文本编辑器写了大半,基本功能都实现了——文件新建、打开、保存、另存为,编辑区的光标移动、选中、复制、粘贴、剪切,查找和替换。
还差语法高亮。
这个功能在前世稀松平常,任何编辑器都有。但在一九九六年,用Borland C++在Windows 3.2上实现语法高亮,不是一件简单的事。
难点在于:Windows 3.2的编辑器控件不支持不同颜色的文字。要实现语法高亮,得自己画。
林风已经写了一个自定义控件,接管了文字绘制的过程。现在要做的,是把代码解析出来——识别关键字、字符串、注释、数字——给它们分配不同的颜色。
他打开一个新文件,开始写词法分析器。
先定义C语言的关键字列表——int, char, if, else, for, while, return……一共三十二个。他一个一个敲进去,手指在键盘上噼里啪啦响。
然后是字符串识别——遇到双引号,从这之后一直到下一个双引号,都算字符串,用一种颜色。
然后是注释——/*开头,*/结尾,中间的全部算注释,用另一种颜色。单行注释//也要支持。
然后是数字——0到9连续出现的,算数字,再用一种颜色。
他一条一条写,写完测试,测试完改,改完再测。
写到晚上十点,语法高亮基本能用了。虽然还有点小bug——字符串里的关键字会被误识别,注释嵌套的处理也不完善——但大体上,能看了。
他打开一个C语言源文件,屏幕上立刻出现了颜色:关键字是蓝色的,字符串是绿色的,注释是灰色的,数字是红色的,剩下的都是黑色的。
他看着那些颜色,笑了。
这是他第一个原创软件。
不是汉化的,不是抄的,是他一行一行代码写出来的。
他给软件起了个名字:CodeLight。
代码之光。
简单,好记,而且——光,是他前世今生的执念。前世在黑暗中坐了四十三年,这一世,他想发光。
他保存代码,编译,生成可执行文件。然后复制到一张软盘上,在软盘标签上写:CodeLight v0.1。
然后他关机,躺床上。
脑子里想着下一步。
v0.1只是原型,能用,但不好用。语法高亮只支持C语言,还得加——至少得支持C++、BASIC、Pascal。查找替换功能太简单,得加正则表达式支持。没有自动缩进,得加。没有行号显示,得加。没有多文件标签页,得加。
太多东西要加了。
他翻了个身,看着窗外。
月光很亮,照在窗帘上,白花花的。
他忽然想起一件事。
前世,他用的第一个编辑器叫Notepad++。那是一个台湾人写的,开源,免费,功能强大,用了几十年都没淘汰。
他闭上眼睛。
如果能做出一个像Notepad++那样的编辑器,在这个时代,一定是爆款。
但他不打算免费。
前世用了那么多免费软件,是因为他穷。这一世,他不想穷。

