2 个稳定版本

1.0.1 2022 年 11 月 25 日

#2798命令行工具

MIT 许可证

28KB
449

rost_gen

rost_gen 是一个简单的静态站点生成器,可以从 .txt 文件生成基本的 .html 文件。

入门

项目 需要您在设备上安装 Rust 和 Cargo。运行以下命令在您选择的目录中安装

cargo install rost_gen --root <path_to_directory>

例如

cargo install rost_gen --root /my_dir

这将将在 ./my_dir/bin 目录下安装可执行文件。通过进入安装目录来运行项目

cd /my_dir/bin 

用法

./rost_gen[.exe] [OPTION]
选项 描述
-v, --version 打印工具名称和版本
-h, --help 打印带有选项列表的帮助信息
-i, --input [路径] 提供一个文本 (.txt) 或 Markdown (.md) 文件的路径,生成一个 html 文件
提供一个目录的路径,为该目录中的所有文本 (.txt) 和 Markdown (.md) 文件生成 html 文件
警告:将输出生成的 html 文件到 ./dist 目录,替换任何现有内容
-o, --output [路径] 可选:用于指定输出目录
-i, --输入[INPUT_PATH] -o, --输出[OUTPUT_PATH]

此选项不会删除指定目录中的任何现有内容。如果目录不存在,则将创建该目录
-l, --lang [语言] 可选:用于指定 html 文件的语言(html 标签的 lang 属性)。默认为 "en-CA"
-c, --config [路径] 标志接受一个指向 JSON 配置文件的文件路径。

功能

  • 在文本和 Markdown 文件中指定标题

    通过在第一行之后留出两个空白行来在文本和 Markdown 文件中指定标题
    This is a title 
    
    
    First line of text
    
    第一行将用作生成 html 文件的标题,生成的 html 正文将包括一个带有标题的 <h1> 标签
    <body>
      <h1>
        This is a title
      </h1>
      <p>
        First line of text
      </p>
    
  • 使用空白行分隔段落

    除了标题之外,通过使用空白行来分隔段落的结束和新的段落的开始
    This is a title
    
    
    First line of first paragraph
    
    First line of second paragraph
    Second line of second paragraph
    
    这将导致在生成的 html 中出现两个 <p> 标签
    <h1>
      This is a title
    </h1>
    <p>
      First line of first paragraph
    </p>
    <p>
      First line of second paragraph
      Second line of second paragraph
    </p>
    

Markdown (.md) 文件特性

  • 标题检测

    # This line is header
    

    将被转换为

    <h1>
      This line is header
    </h1>
    
  • 主题分隔线检测(水平线)

    ---
    

    将被转换为

    <hr />
    

    这仅支持仅包含上述Markdown文本的行

  • [This is a link](https://www.example.com)
    

    将被转换为

    <a href="https://www.example.com">This is a link</a>
    

    同一行中Markdown之前或之后的任何文本都将保留原样

示例

  • 一个输入文件

    转换当前目录中的 "file_to_convert.txt" 文件

    ./rost_gen --input ./file_to_convert.txt
    

    或转换当前目录中的 "file_to_convert.md" 文件

    ./rost_gen --input ./file_to_convert.md
    
  • 一个或多个目录中的输入文件

    转换当前目录中 "folder_with_input_files" 目录下的所有 .txt 文件

    ./rost_gen -i ./folder_with_input_files
    
  • 指定输出目录

    输出到当前目录中的 "custom_output_dir" 目录

    ./rost_gen -i ./file_to_convert.txt -o ./custom_output_dir
    
  • 指定生成HTML的语言

    ./rost_gen -i ./file_to_convert.txt -l fr
    

    这将更新生成HTML文件中HTML标签的lang标签

    <html lang="fr">
    ...
    

    运行配置JSON文件

    ./rost_gen -c ./ssg-config.json
    
    

依赖项

~4–13MB
~169K SLoC