Erubi:一个高效的ERB模板引擎
erubi Small ERB Implementation 项目地址: https://gitcode.com/gh_mirrors/er/erubi
项目基础介绍和主要编程语言
Erubi是一个用于Ruby的ERB模板引擎,它是Erubis的一个简化分支,采用了相同的基本算法。Erubi的主要编程语言是Ruby。
项目核心功能
Erubi的核心功能包括:
- 后缀条件处理:支持在转义时处理后缀条件(例如
<%= foo if bar %>
)。 - 冻结字符串支持:通过
:freeze
选项支持frozen_string_literal: true
。 - 自动冻结字符串:在Ruby优化时自动冻结模板文本中的字符串(适用于Ruby 2.1+)。
- 更快的转义:使用
erb/escape
或cgi/escape
实现15x-6x更快的转义。 - 更小的内存占用:相比Erubis,Erubi的内存占用减少了81%。
- 无猴子补丁:不进行任何猴子补丁(Erubis在Kernel中添加了一个方法)。
- 不可变设计:所有选项在构造函数中传递,返回一个冻结对象。
- 简化内部结构:内部结构更简单(1个文件,少于150行代码)。
- 持续更新:Erubi持续更新,而Erubis自2011年以来未更新。
项目最近更新的功能
Erubi最近的更新功能包括:
- 捕获块支持:通过
erubi/capture_block
实现捕获块输出到模板中。 - 捕获结束支持:通过
erubi/capture_end
实现捕获块输出,使用<%|=
和<%|==
标签,并使用<%|
标签关闭。 - 改进的兼容性:在Tilt 2.0.6+和Rails 5.1+中作为默认的ERB模板处理器。
- 性能优化:进一步优化了转义性能和内存占用。
- 错误修复:修复了多个已知的错误和问题,提高了稳定性和可靠性。
Erubi是一个高效、轻量且持续更新的ERB模板引擎,适用于需要高性能和低内存占用的Ruby项目。
erubi Small ERB Implementation 项目地址: https://gitcode.com/gh_mirrors/er/erubi
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考