1个不稳定版本
0.1.4 | 2022年10月29日 |
---|
#14 in #katex
5KB
将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的思路基于这个crate。
- katex-rs
- 这是“Rust绑定到KaTeX”。这个crate的目标是使用QuickJS运行KaTeX,而不需要外部依赖。
依赖关系
~1.5MB
~35K SLoC