9 个版本
0.3.2 | 2023年11月14日 |
---|---|
0.3.1 | 2023年11月14日 |
0.2.3 | 2023年11月11日 |
0.1.1 | 2023年11月2日 |
#36 in 模板引擎
59 每月下载次数
23KB
293 代码行
Stubble
您的模板文档助手
Stubble 是一个命令行工具,用于快速生成供静态站点生成器使用的 Markdown 文件。给定一个标题,它将生成一个带日期戳的 Markdown 文件,并预填充 YAML 前端元数据。
目前 Stubble 专门针对 Eleventy,但未来的版本理论上可以为许多流行的 SSG 和/或用户自定义模板提供模板。
Stubble 使用 Rust 编写。
用法
运行 stubble
并传入用作新文档标题的字符串
stubble "Hello, World!"
Stubble 应输出类似以下的消息
Created new file ./2023-11-02-hello-world.md!
(日期默认为当前日期。)
您也可以通过传递 -
来省略标题,如下所示
stubble -
这将输出类似以下的消息
Created new file ./2023-11-02.md!
Stubble 为您生成了基本的元数据,因此您可以开始写作。在您选择的编辑器中打开文件,它应该看起来像这样
---
title: "Hello, World!"
permalink: hello-world
date: 2023-11-02
uuid: 3b17e9f7-6334-4bf1-a063-9174a2b1eedb
---
# {{ title }}
<!-- Generated by Stubble v0.2.3 -->
指定输出目录
默认情况下,Stubble 在当前工作目录中生成文件。如果您想让它将文件写入其他位置,请在标题后添加输出目录
stubble "Hello Again, World!" /tmp
...然后您应该看到
Created new file /tmp/2023-11-02-hello-again-world.md!
指定永久链接别名
默认情况下,Stubble 使用标题作为别名。如果您想使用其他内容,可以使用别名标志 - 或
--slug
后跟所需的别名。
stubble "Hello, World!" -s hello
应用标签
Stubble 支持使用标签标志 - 或
--tag
添加任意数量的标签到您的帖子。每个标签一个标志。
stubble "Hello, World!" -t rust
stubble "Hello, World!" -t rust -t programming
覆盖帖子日期
要使用除当前日期以外的日期,请使用日期标志 -D
或 --date
。
stubble "Hello, World!" -D 1988-08-10
...然后您应该看到
Created new file 1988-08-10-hello-world.md!
添加帖子的描述
如果您想填充前言描述字段,可以使用描述标志 -d
或 --description
。
stubble "Hello, World!" -d "This is my first post generated with Stubble!"
指定文章作者
默认情况下,Stubble 会尝试为您填充前言中的 author
字段。它首先会询问操作系统的 "Real Name",如果失败,则默认为您的用户名。要指定其他内容,可以使用作者标志 -a
或 --author
。
stubble "Hello, World!" -a "Joey Pardella"
更改输出文件名
默认情况下,Stubble 会根据日期和缩写生成文件名。要覆盖此行为,可以使用输出标志 -o
或 --output
。
stubble "Hello, World!" -o draft-post.markdown
...然后您应该看到
Created new file draft-post.md!
在您的编辑器中打开
Stubble 可以选择在您选择的编辑器中打开新创建的 stub 文件。标志 -e
或 --editor
可接受最多 1 个参数。提供参数将在该程序中打开文件,省略参数将尝试使用环境变量 $EDITOR
中定义的可执行文件打开文件。
内置帮助
在任何时候,您都可以从命令行检查可用的选项及其用法。
stubble -h
Stubble is a command-line tool for quickly generating markdown files for use by static site generators. Given a title, it will generate a date-stamped markdown file with pre-populated YAML front-matter.
Usage: stubble [OPTIONS] <TITLE> [DEST]
Arguments:
<TITLE> Title of the post
[DEST] Output destination [default: .]
Options:
-s, --slug <SLUG> Optional slug to be used for the permalink
-t, --tag [<TAG>...] Tag(s) to apply to the post. Separate multiple tags with spaces
-D, --date <DATE> Override the post date: YYYY-MM-DD
-d, --description <DESCRIPTION> Post description
-a, --author [<AUTHOR>] The name of the author
-f, --format [<FORMAT>] The output format that should be used to render the stub. [default: md]
-o, --output <OUTPUT> Override the default filename
-e, --editor [<EDITOR>] Open in <EDITOR>
-y, --yes Automatically answer 'Y' to all prompts (including existing file warnings)
-h, --help Print help (see more with '--help')
-V, --version Print version
使用标志 --help
可以获取更详细的帮助信息。
安装
使用 Cargo
Cargo 是 Rust 的包管理器。要使用 cargo 安装 Stubble,您需要在计算机上安装 Rust,版本 1.73 或更高。
安装 Rust 后,打开终端并运行
cargo install stubble
假设一切构建正确,并且您的本地 ~/.cargo/bin
目录已添加到 PATH
,现在您应该能够运行 stubble。
依赖关系
~7MB
~125K SLoC