12 个版本
0.5.0 | 2023年12月31日 |
---|---|
0.4.2 | 2022年9月20日 |
0.4.1 | 2022年3月20日 |
0.2.1 | 2021年9月4日 |
0.1.0 | 2021年3月31日 |
#1194 in 命令行工具
31KB
360 行
⚡ powerpack
使用 Rust 🦀 构建工作流,为您的 Alfred 🎩 工作流提供超级动力!
🚀 开始
此项目包含一个 powerpack
包,它提供了用于在 Rust 中开发脚本筛选 Alfred 工作流的类型。它还提供了一个命令行工具,用于初始化、构建和安装使用 powerpack
包构建的工作流。
首先,安装命令行工具。
cargo install powerpack-cli
现在使用类似以下 API 的命令创建一个新的项目:cargo new
或 cargo init
。
powerpack new myworkflow && cd myworkflow
这将为 Rust 创建一个新的项目,并在包含有关 Alfred 工作流信息的 workflow/
目录中创建一个目录。以下将创建工作流的发布构建并将其复制到 workflow/
目录。
powerpack build --release
现在您可以将它链接到 Alfred。以下将 workflow/
目录链接到 Alfred 首选项文件夹。
powerpack link
现在您可以从 Alfred 运行工作流 ✨!
要打包 .alfredworkflow
文件以发布,可以运行以下命令。
powerpack package
发布将可在 target/workflow/myworkflow.alfredworkflow
中找到。
🤸 使用方法
以下是一个使用 powerpack
构建的 "Hello World!" Alfred 工作流。
use std::env;
use std::error::Error;
use std::iter;
fn main() -> Result<(), Box<dyn Error>> {
// Alfred passes in a single argument for the user query.
let arg = env::args().nth(1);
let query = arg.as_deref().unwrap_or("");
// Create an item to show in the Alfred drop down.
let item = powerpack::Item::new("Hello World!")
.subtitle(format!("Your query was '{}'", query));
// Output the item to Alfred!
powerpack::output(iter::once(item))?;
Ok(())
}
这将渲染出以下所示的项目。
👷 GitHub Action
setup-crate
可用于在 GitHub Actions 工作流中安装 powerpack
。例如
steps:
- uses: actions/checkout@v2
- uses: extractions/setup-crate@v1
with:
owner: rossmacarthur
name: powerpack
- run: powerpack package
# produces an artifact at `target/workflow/{name}.alfredworkflow`
💡 示例
以下项目是使用 powerpack
构建的。
许可
许可证为以下之一
- Apache License,版本 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
依赖项
~0.7–1.7MB
~36K SLoC