4 个版本
0.1.4 | 2022年10月29日 |
---|---|
0.1.3 | 2022年10月29日 |
0.1.2 | 2022年4月6日 |
0.1.0 | 2021年8月28日 |
#10 in #katex
4KB
将 KaTeX 自动渲染脚本插入 rustdoc
用法
#[cfg_attr(doc, katexit::katexit)]
/// We can write $\LaTeX$ expressions
///
/// Display style
/// -------------
///
/// $$
/// c = \\pm\\sqrt{a^2 + b^2}
/// $$
pub fn my_func() {}
在 docs.rs 上查看渲染结果。
工作原理
#[katexit]
proc-macro 插入 KaTeX 自动渲染脚本 作为 #[doc = "{script}"]
. 由于 rustdoc 的 markdown 到 HTML 翻译器不会触摸嵌入在 markdown 中的 HTML 部分,因此它们将原样传递到浏览器。当您打开 rustdoc 生成的页面时,自动渲染脚本开始渲染文档部分中用 $
写入的数学表达式,即这不能离线工作。
链接
- rustdoc-katex-demo 和类似的演示项目
- 它们使用 rustdoc 的
--html-in-header
选项 来插入 KaTeX 自动渲染脚本。但它需要在 Cargo.toml 中进行一些复杂的设置。
- 它们使用 rustdoc 的
- aquamarine
- 使用 proc-macro 为 cargo-doc 的想法基于这个包。
- katex-rs
- 这是 "Rust 对 KaTeX 的绑定"。这个包的目标是在不使用外部依赖的情况下使用 QuickJS 运行 KaTeX。
依赖
~1.5MB
~34K SLoC