首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ace编辑器ace.js文件大小

Ace编辑器ace.js文件大小
EN

Stack Overflow用户
提问于 2012-08-30 13:22:29
回答 2查看 3.2K关注 0票数 6

这是一个巨大的文件大小。Codemirror,一个相同口径的js编辑器,远远低于100KB大关。

似乎有一种方法可以构建ace.js。有没有办法在大幅减小文件大小的同时做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2013-05-25 22:01:07

大小为294kb的ace.js已经构建并缩小了版本,因此没有办法大幅减少这个大小。

造成这种大小差异的原因有两个

  1. ace内置了更多功能。所以为了公平起见,我们需要删除这些特性

而不是缩小的ace.js。。。。530kb -多选。。。。。。。。。484kb -折叠。。。。。。。。。。。451kb -括号匹配,突出显示选定的单词,搜索,工人。。。。429kb -内置主题,支持selectWord的unicode。。。401kb

其他:像是用鼠标选择文本时的自由滚动,页面上的动画向上/向下,从装订栏中选择线条,更好的toggleComment,智能gotoLineEnd,indentGuides等都很难删除,因为它们不是独立的模块。

但是Codemirror支持双向和可变大小的字体,这补偿了一些剩余的字体,所以我们就到此为止。截取的ace (让我们称之为ace--.js)的最终大小是401kb

文件|大小kb| zip |uglify|uglify+zip|uglify-m-c|+zip -------------|-------|------|------|----------|----------|---- ace.js | 530 | 106 | 374 | 91.8 |292 |81.1 ace--.js | 401 | 77.1279 | 65.2 |216 |56.5 codemirror.js| 212 | 55.6 | 144 | 40.1 |100 |33.1

最重要的是uglify+zip的大小,这并不是因为编码风格,Codemirrors风格是非常紧凑的

代码语言:javascript
复制
- it uses many closures _(ace almost never uses closures)_
- it contains very few uses of `this` _(__`493`_ _vs_ _`4373`_ _in ace--)_
- doesn't use modules, everything is in one file, _unlike ace which have 59 modules_
- and it has much shorter variable names

因此,如果你需要一个非常小的编辑器,或者不喜欢ace的工作方式并想要重新实现它的大部分,Codemirror是更好的选择。

但是,如果你需要一个和桌面编辑器一样的编辑器,而不需要增加300kb的代码,那么ace是一个更好的选择。

票数 14
EN

Stack Overflow用户

发布于 2013-05-25 02:27:46

为什么不简单地使用CodeMirror呢?这是非常好的IMHO。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12190356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档