#yaml #template #document #generator #file #filename #body

bin+lib gendoc

简单的 YAML 模板文档生成器

5 个版本 (3 个破坏性更新)

0.4.1 2022年2月13日
0.4.0 2020年12月26日
0.3.1 2022年2月13日
0.3.0 2020年9月27日
0.1.0 2020年9月26日

#263 in 模板引擎

MIT 许可证

12KB
226

gendoc

gendoc on crates.io Rust

使用模板 YAML 文件生成简单文档的工具

用法

运行 gendoc 命令,并指定 gendoc.yaml 文件

$ cat gendoc.yaml
filename: test_<datetime>.rb
body: |
  # frozen_string_literal: true

  require 'json'

  puts JSON.parse("{}")
$ gendoc
Document generated: ./test_20200927023752.rb
$ cat test_20200927023752.rb
# frozen_string_literal: true

require 'json'

puts JSON.parse("{}")
$ ruby test_20200927023752.rb
{}

设置

有一些设置参数。

参数 信息 必需
filename 生成文档的文件名。
body 生成文档的主体。
dir 生成文档的目录。它将被解析为相对路径(例如:tmp -> ./tmp)。gendoc 在生成时不会创建新的目录。

元标签

有一些元标签会在生成时进行转换。

元标签 信息
<date> 转换为格式化日期。格式为 YYYYmmdd。 (例如:<date> -> 19720719)
<date:_format_string_> <date> 相同,并且您可以传递一个格式字符串。 (例如:<date:%Y-%m-%d> -> 1972-07-19)
<datetime> 转换为格式化日期时间。格式为 YYYYmmddHHMMSS。 (例如:<datetime> -> 19720719000545)
<datetime:_format_string_> <datetime> 相同,并且你可以传递一个格式字符串。例如:<datetime:%Y-%m-%d-%H%M%S> -> 1972-07-19-000545)
<输入> 转换为输入文本。生成时你应该从 STDIN 传递文本。

有关格式字符串的更多信息,请参阅此处

多个设置

以下是一个示例 gendoc.yaml,用于设置多个设置。

sample1:
  filename: sample1.txt
  body: |
    this is a 1st setting
saple2:
  filename: sample2.txt
  body: |
    this is a 2nd setting

使用设置名称运行 gendoc

$ gendoc sample2
Document generated: sample2.txt
$ cat sample2.txt
this is a 2nd setting

待办事项

  • 能够设置 <input> 标签的参数。(具有相同参数的 <input> 将填充相同的值。)

依赖项

~4.5–6.5MB
~111K SLoC