5 个不稳定版本
0.3.0 | 2020年12月17日 |
---|---|
0.2.0 | 2020年6月1日 |
0.1.3 | 2020年5月26日 |
#40 in #网站
33 每月下载量
28KB
564 行
blagger
为您的博客
blagger
是一个简单的静态网站生成器,功能不如 Jekyll 强大,但比手写脚本管道更健壮。
使用方法
USAGE:
blagger [FLAGS] [OPTIONS] --out-dir <out-dir>
FLAGS:
-h, --help Prints help information
-a Include hidden files
-V, --version Prints version information
OPTIONS:
-b, --base-url <base-url> Base URL of the site once deployed
-f, --feed <feed> RSS feed file location. When specified, an RSS feed of posts (markdown
files) is written to the given file
--hub-template <hub-template> Template for the special "all tags" tag page. If not given, defaults to
tag_html
-I, --ignored-files <ignored-files>... List of files to ignore [default: ]
-i, --in-dir <in-dir> Input directory [default: .]
-l, --language <language> Language tag. Note that not much validation is performed beyond attempting
to convert a Linux-style locale into an HTML language code [env: LANG=]
-o, --out-dir <out-dir> Output directory
--pages-dir <pages-dir> Directory relative to `${out-dir}` that tag pages will be rendered to
[default: tags]
--tag-html <template> Template for tag pages. If not given, tag pages are not generated
-t, --template-html <template-html> Path to template file for Markdown posts
-T, --title <title> Title for the RSS feed
模板
in-dir
中的所有内容(除了 Markdown 文件(扩展名为 md
或 markdown
)和路径 Rust 认为等于 template-html
的文件)将按原样复制到 out-dir
。这包括您的 CSS、JavaScript、图像、手写的 HTML(你疯子), whatever。目录结构将被保留 - in/css/what/why.css
变为 out/css/what/why.css
。
Markdown 文件的处理方式如下
- 帖子被预处理并渲染。
- 文件在第一次出现
::===::\n
(即::===::
和换行符)时被分割。- 分离出来的第一个字符串是“前端内容”。这是一个具有以下模式的 TOML
title
:必需的。一个字符串。tags
:必需的。一个(可能为空)字符串列表。subtitle
:可选字符串。date
:可选的 TOML 日期时间。
- 分离出来的第二个字符串是帖子的 Markdown 内容。
- 分离出来的第一个字符串是“前端内容”。这是一个具有以下模式的 TOML
- 由
template-html
提供的模板文件被渲染。前端内容作为名为front
的对象提供给模板,帖子的 markdown 内容作为md_content
。- 在模板中,名为
markdown
的格式化程序可用于渲染 Markdown 字符串。
- 在模板中,名为
- 文件在第一次出现
- 渲染的文件使用与其他文件相同的目录保留方案,写入到
out-dir
,并将扩展名更改为html
,以便浏览器知道发生了什么。
模板文件永远不会输出到out-dir
。
待办事项列表
- 标签导航页面
- RSS源生成
- 提供多个模板
- 网站地图?
依赖项
~8.5MB
~212K SLoC