4个版本 (2个重大更改)
0.3.1 | 2023年4月12日 |
---|---|
0.3.0 | 2023年4月4日 |
0.2.0 | 2023年3月31日 |
0.1.0 | 2023年3月30日 |
在 模板引擎 中排名第348
每月下载量58次
用于 flavours
28KB
395 行
base16_color_scheme
一个用Rust编写的用于构建base16颜色方案的库。
它使用ramhorns作为模板引擎,因此速度相当快。
(基于https://github.com/chriskempson/base16-templates-source 生成的9MB模板,大约70ms - 200ms。)
入门
要开始使用,您需要创建一个 Template
和一个 Scheme
。
Template
可以通过只读取模板文件并使用 Template::new()
来创建。
Template
和 Scheme
在渲染过程中都不会被修改,这意味着两者都可以用于效率。
use base16_color_scheme::{Scheme, Template};
use std::fs::read_to_string;
let template_str = read_to_string("path/to/template.mustache").unwrap();
let scheme_str = read_to_string("path/to/scheme.yml").unwrap();
let template = Template::new(template_str).unwrap();
let scheme: Scheme = serde_yaml::from_str(&scheme_str).unwrap();
template
.render_to_file("path/to/rendered/template", &scheme)
.unwrap();
工作原理
内部,该软件包通过实现ramhorns
的Content
特性来工作。当渲染过程尝试查找一个字段时,字段名称被解析为TemplateField
。如果是颜色,则从Scheme
中获取该颜色,并按照https://github.com/chriskempson/base16/blob/main/builder.md#template-tags中的指定格式进行格式化。
依赖关系
~4MB
~48K SLoC