最近天气不错,阳光暖暖地照在身上,感觉心情都变好了呢。咱在享受生活的同时,Aardio 语言也没闲着,这不,最近有两次提交更新,版本从 v40.3.0 到 v40.3.1 啦,下面就和大家好好唠唠这次更新都有哪些变化 ^_^ 。
1. 文件删除
首先,有个文件被删除了,就是 lib/string/markdown/.res/build.aardio
。这个文件之前的代码大概是这样的:
import tcc;
import console;
vm = tcc();
vm.addIncludePath("/")
import fsys;
fsys.enum( "/", "*.c",
function(dir,filename,fullpath,findData){
if(filename){
vm.addFile(fullpath)
console.log(filename)
}
}
);
vm.output("/sundown.dll","")
console.log("编译完成")
console.pause(true);
现在这个文件被整个删除掉咯,可能是这个编译相关的功能不再需要或者有了更好的实现方式。
2. 注释和说明更新
lib/string/markdown/_.aardio
文件有一些注释和说明的更新。更新前是这样描述 sundown 的:
string.markdown 调用的 sundown.dll
由 aardio 基于 https://github.com/vmg/sundown
做了大幅改进以支持现代化 Markdown 流行风格,并修正渲染后各种页面错乱的问题。
aardio 用户可在遵循 aardio 用户协议与 aardio 开源许可证相关条款、原始开源项目相关条款
的基础上将此此修改版 sundown 自由使用于 aardio 程序开发,但是禁止将其用于非 aardio 开发的程序。
禁止基于其他目的单独分发由 aardio 提供的 sundown 组件与源码,所有权利保留。
更新后描述得更详细啦:
string.markdown 调用的 sundown
由 aardio( https://aardio.com) 基于 https://github.com/vmg/sundown
做了大量改进以支持现代化 Markdown 流行风格,并修正渲染后各种页面错乱的问题。
aardio 用户可在遵循 aardio 用户协议与 aardio 开源许可证相关条款、
以及 sundown 原始开源项目相关条款的基础上将此修改版 sundown 自由使用于 aardio 程序开发,
但是严禁将本组件的任何部分用于非 aardio 开发的程序(不得使用除 aardio 以外的编程语言调用此组件的任何部分)。
禁止基于其他任何目的单独分发由 aardio 提供的 sundown 组件与源码。
aardio 保留对 sundown 修改代码的所有权利并保留所有解释权。
这样开发者就能更清楚使用 sundown 的规则啦。
3. 函数废弃标记
在 lib/builtin/table.aardio
文件里,有好几个函数被标记为废弃啦。更新前是这样简单标记的:

更新后用了 @Deprecated
来标记,还新增了 each = eachName;
也被标记为废弃:

开发者以后使用的时候就要注意这些函数可能会在未来版本中移除哦。
4. 代码替换规则更新
lib/ide/aifix.aardio
文件里的代码替换规则有一些变化。更新前部分代码是这样的:
code = ..string.reduceReplace(code,`![\w.$]table.each(%())`,"^\((.+)\)$","\1");
code = replace(code,`![\w.$]table.eachi?\(`,"table.eachIndex(");

更新后替换规则变了:
code = replace(code,`![\w.$]table\.each\(`,"table.eachName(");
code = replace(code,`![\w.$]table\.eachName\(([^,\)]+?)\s*,[^,\)]+<@@name@>\s*\)`,"table.eachName(\1)");
code = replace(code,`![\w.$]table\.eachi\(`,"table.eachIndex(");

这些变化可能会影响到代码在 IDE 里的自动替换和修正功能。
总的来说,这次 Aardio 语言的更新有文件删除、注释完善、函数废弃标记和代码替换规则调整等方面的变化,开发者们要留意这些改动哦 ^_^ 。
声明:此文章只是我学习研究整理出来的,不是官方发表的文章,开发者们不要混淆哦。