#markdown-parser #markdown-html #markdown #svg #html #parser #html-rendering

bin+lib linemd

用 Rust 编写的简单且具有偏见的 Markdown 解析器(及渲染器)

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

0.4.0 2021 年 6 月 27 日
0.3.0 2021 年 6 月 16 日
0.2.1 2021 年 6 月 15 日
0.1.1 2021 年 3 月 14 日
0.1.0 2021 年 2 月 16 日

#2789 in 解析实现

每月 24 次下载

MIT 许可证

44KB
1K SLoC

crates.io docs.rs

linemd

linemd 是一个简单、无依赖的 Markdown 解析器和渲染器。

特性

  • 无依赖。
  • 不依赖于 std,仅依赖于 alloccore
  • 解析过程中无分配;仅分配用于存储标记(除非您提供自己的预分配 Vec)。
  • 可以渲染到 HTML 和 SVG;需要分别启用 htmlsvg 功能。
    • 默认启用 html 功能。
  • 附带用于将内容渲染为 HTML 或 SVG 的 CLI 工具。

安装

  • Cargo: cargo install linemd
  • Nix
    • Flakes: nix profile install github:yusdacra/linemd
      • 或者不安装直接运行: nix run install github:yusdacra/linemd
    • 非 Flakes: nix-env -i -f "https://github.com/yusdacra/linemd/tarball/master"

用法

请参阅 库文档 了解库的使用方法。

CLI 用法

renders a markdown file

usage:
  linemd FILE     Reads from file
  linemd -        Reads from stdin

options:
  -h, --help      Prints this text
  -S, --svg       Renders to SVG instead of HTML

exit codes:
  0               Everything was successful
  1               Failed to read the given file
  2               Failed to read from stdin

还可以参考 示例目录

无运行时依赖

特性