1 个不稳定版本
0.5.0 | 2021年3月25日 |
---|
#53 在 #web-page
35KB
848 行
inliners
将图片、CSS、JavaScript等内联到单个HTML网页中。相当快速。它主要受Remi的inliner影响。
警告:在我的机器上运行正常! 该项目是使用rayon和kuchiki进行玩耍的结果,因此功能尚不完整——但可以轻松扩展。
功能
- 内联本地资源(例如,用于开发或打包)和远程资源(例如,存档)
- 可以以非常并行的方式加载和内联资源(使用
-j THREADS
开关) - 处理脚本和样式(
@import
,<style />
或<tag style="..."
) - 使用Base64对图片和图标进行编码(
<img src="i.jpg"/>
,div { background-image: url('img/i.png'); }
) - 使用minify-html最小化输出(可以使用esbuild对脚本和样式进行操作,但可能无法按预期工作)。
安装
使用发布页面或使用cargo
从crates.io安装
# By default minifies only HTML:
$ cargo install inliners
# If you have Golang installed, allow JS/CSS minification:
$ cargo install inliners --features="esbuild"
# Or disable minification at all:
$ cargo install --no-default-features
# Then:
$ cd mysite
$ inline --no-img --minify index.html > index.min.html
# Or:
$ inline --no-js -o ~/archive/wiki/minipig.html https://en.wikipedia.org/wiki/Miniature_pig
使用方法
inline 0.5.0
Inline images, CSS, JavaScript and more into a single HTML web page. Quite fast.
USAGE:
inline [FLAGS] [OPTIONS] [input]
FLAGS:
-h, --help Prints help information
-m, --minify Minify HTML, CSS and JavaScript
-C, --no-css Do not process/embedd CSS stylesheets
-I, --no-img Do not process/embedd images
-J, --no-js Do not process/embedd JavaScript
-q, --quiet Silence all output
-V, --version Prints version information
-v, --verbose Verbose mode (-v, -vv, -vvv)
OPTIONS:
-O, --output <output> Output file, stdout if not present
-j, --threads <threads> Number of threads [default: 40]
ARGS:
<input> Input file or URL (index.html, https://example.com/path/)
替代方案
许可协议
MIT/Unlicensed
依赖关系
~15–27MB
~421K SLoC