1 个不稳定版本
0.1.1 | 2021 年 4 月 11 日 |
---|
#82 在 #preprocessor
9KB
113 行
Hippo
Hippo 是一个实验性的编译时资源预处理器;其预期用途是使用现有工具链对网页资源进行预处理。
⚠️ 项目范围及其编程接口很可能发生变化。
用法
一个 struct
或 enum
可以从 Preprocess
继承以嵌入命令的输出。可以通过 Self::HIPPO_DATA
,Self::preprocessed_data()
或其 Display
实现访问处理后的输出。
Rust
use hippo::Preprocess;
#[derive(Preprocess)]
#[hippo("sass", "css/main.scss")]
pub struct MainCSS;
Hippo.toml
[sass]
command = "sassc"
flags = ["-t", "compressed"]
prefix = "static/"
format = "utf-8"
配置
Hippo 将在包根目录中查找 Hippo.conf
;此文件定义了一个或多个将被提供给从 Preprocess
继承的任何 struct
或 enum
的预处理器。
预处理器通过其 TOML 部分 identification,其行为由其键值对控制。以下键值对被识别
键 | 类型 | 描述 |
---|---|---|
command | 字符串 | 要执行的命令。必需。 |
flags | 字符串数组 | 命令选项的集合。可选。 |
prefix | 字符串 | 要附加到输入参数的路径前缀。可选。 |
format | 字符串 | 输出格式。必须是 "bytes" (默认)或 "utf-8" 。 |
依赖关系
~0.5–1.1MB
~26K SLoC