Lute 代码高亮支持基本完成了,明天用社区数据跑跑看。
记 小 d 丸子和 @DASHU 小公举共游西山
@DASHU 来云南旅游,晚上要面基了。
Solo 也成为 GitHub 上的一个万星项目了!
Lute 的解析器和渲染器已经完成了(实现了 CommonMark 和 GFM),接下来要开始实现代码块语法高亮了。
七牛云 CDN 的刷新问题真的很老火:对象存储中的文件更新或者删除后,在 CDN 管理里手动触发刷新大概率不起作用,只能发工单给他们处理。这个问题已经存在好多年了,七牛云的同学如果看到就请修复一下吧 🙏
晚上去楼下的 118 酒吧听歌喝酒。
期待由华为主导的中国开源基金会,如果提供代码托管的话我会把 B3log 开源社区系列项目迁移过去。
创业的第二个夏天
提交了几发优化给 CommonMark 官方 https://github.com/commonmark/commonmark.js/pull/171
望采纳 😂 😂 😂
Lute parser 部分的性能优化基本完成,明天开始优化 renderer。
Lute 要做到极致的性能,必须去掉词法分析。词法分析的作用是把输入文本的字符分类形成 token,这就需要完整遍历一遍输入文本。这个遍历过程虽然比较快,但是构造 token 对象却是很耗时的(规范文本有 12W+ 个 tokens )。所以如果要做到极致的性能,必须把词法分析过程省掉,在语法分析阶段根据字符值操作。这样减少了遍历次数,也减少了内存分配和 GC。
Lute 通过了全部的 CommonMark 测试用例 🎉
Lute 测试用例进度 625/649。不出意外的话明天就可以完成了,然后花一周左右时间进行重构和性能调优。
Lute 测试用例进度 549/649。还差 100 个就通关 CommonMark 了,下一个目标是实现一些 GFM 的扩展语法支持。
开始为 Symphony 社区系统投放 Google Ads 广告。
看到著名 Markdown 程序员 phodal 被骂(两年前的事情)
如何看待phodal新书 《全栈应用开发-精益实践》? - 知乎
没有干货代码最好不要营销,不然会被骂惨的。
所有 HTML 实体的 JSON 结构化数据:https://html.spec.whatwg.org/entities.json
虽然已经理解了 CommonMark 规范文末提到的解析算法,但自己独立进行实现还真搞不定。在抄了官方参考实现项目 commonmark.js 部分代码后,Lute 块级元素解析基本重写完毕。
参考实现就是用来参考的。况且,读书人的事情怎么能叫偷?
当然这是开玩笑的。Lute 鸣谢部分见,感谢开源 ❤️
妖精,快还我爷爷!
if grandparent := node.Parent().Parent(); nil != grandparent && NodeList == grandparent.Type() { if grandparent.(*List).tight { return WalkContinue, nil } }
Lute 代码高亮支持基本完成了,明天用社区数据跑跑看。
记 小 d 丸子和 @DASHU 小公举共游西山
@DASHU 来云南旅游,晚上要面基了。
Solo 也成为 GitHub 上的一个万星项目了!
Lute 的解析器和渲染器已经完成了(实现了 CommonMark 和 GFM),接下来要开始实现代码块语法高亮了。
七牛云 CDN 的刷新问题真的很老火:对象存储中的文件更新或者删除后,在 CDN 管理里手动触发刷新大概率不起作用,只能发工单给他们处理。这个问题已经存在好多年了,七牛云的同学如果看到就请修复一下吧 🙏
晚上去楼下的 118 酒吧听歌喝酒。
期待由华为主导的中国开源基金会,如果提供代码托管的话我会把 B3log 开源社区系列项目迁移过去。
创业的第二个夏天
提交了几发优化给 CommonMark 官方 https://github.com/commonmark/commonmark.js/pull/171
望采纳 😂 😂 😂
Lute parser 部分的性能优化基本完成,明天开始优化 renderer。
Lute 要做到极致的性能,必须去掉词法分析。词法分析的作用是把输入文本的字符分类形成 token,这就需要完整遍历一遍输入文本。这个遍历过程虽然比较快,但是构造 token 对象却是很耗时的(规范文本有 12W+ 个 tokens )。所以如果要做到极致的性能,必须把词法分析过程省掉,在语法分析阶段根据字符值操作。这样减少了遍历次数,也减少了内存分配和 GC。
Lute 通过了全部的 CommonMark 测试用例 🎉
Lute 测试用例进度 625/649。不出意外的话明天就可以完成了,然后花一周左右时间进行重构和性能调优。
Lute 测试用例进度 549/649。还差 100 个就通关 CommonMark 了,下一个目标是实现一些 GFM 的扩展语法支持。
开始为 Symphony 社区系统投放 Google Ads 广告。
看到著名 Markdown 程序员 phodal 被骂(两年前的事情)
如何看待phodal新书 《全栈应用开发-精益实践》? - 知乎
没有干货代码最好不要营销,不然会被骂惨的。
所有 HTML 实体的 JSON 结构化数据:https://html.spec.whatwg.org/entities.json
虽然已经理解了 CommonMark 规范文末提到的解析算法,但自己独立进行实现还真搞不定。在抄了官方参考实现项目 commonmark.js 部分代码后,Lute 块级元素解析基本重写完毕。
当然这是开玩笑的。Lute 鸣谢部分见,感谢开源 ❤️
妖精,快还我爷爷!