#file-watcher #watcher #autoreload #sse #server-sent-events #command-line-tool

app spook

针对自动HTML生成和自动重载的文件监控工具

3个版本

0.1.2 2022年9月17日
0.1.1 2022年7月26日
0.1.0 2019年5月18日

#663 in 文件系统

MIT/Apache

21KB
387

SPOOK:遥远距离的神秘力量!

一个简单的命令行工具,当文件或目录发生变化时,可以触发命令和/或HTTP 服务器端事件

它非常适合由命令行文档处理器(如 PandocAsciidoctor & 朋友)生成的HTML文档的实时生成和自动重载。

可以将其视为一个在顶部带有服务器事件的超级极简版 Watchman,或者是一个具有简单、标准信号协议的超级简化版 LiveReload

使用示例

在最简单的情况下,spook 将作为参数接受要监控的文件和要触发的命令(如果有自己的参数)。

例如,以下代码会在输入文件 mydoc1.mdmydoc2.md 发生变化时重新生成HTML文档

$ spook mydoc1.md mydoc2.md -- pandoc -o mydoc.html mydoc1.md mydoc2.md

浏览器还可以通过在HTML中嵌入一个小的JavaScript代码片段(请参阅 scripts 目录)并启用带有 --signal 选项的服务器端事件来自动刷新HTML页面

$ spook --signal mydoc1.md mydoc2.md -- pandoc -A spook_refresh_script.html -o mydoc.html mydoc1.md mydoc2.md

自动重载既适用于直接在浏览器中打开的文件,也适用于由本地服务器(例如Python的 SimpleHTTPServer)提供的文件。

其他选项

可以指定一些其他选项,例如从不同的端口提供事件、在启动时进行预防性触发等...

要查看所有可用选项,请输入

$ spook --help

平台

此软件绝对是无保证的、按原样提供的、主要在我的Linux机器上测试过的。但它 应该 在Linux/Mac/Windows上工作,并且可能在一两个其他操作系统上也能工作。

服务器端事件应该在几乎所有现代浏览器中直接支持。

安装

必须在您的系统上安装Rust工具链。别担心,安装Rust是一个顺畅的过程:只需让 rustup 引导您即可。

完成之后,使用 cargo 安装 spook

$ cargo install spook

就这些。

许可证

本软件根据您的选择,受Apache License, Version 2.0MIT许可证的许可。

版权 (c) 2022 Serge Barral。

依赖项

~1-9MB
~62K SLoC