如何将任意 Markdown 文件包含为文档属性?

Dan*_*all 5 rust rustdoc

如果readme Cargo.toml设置了键,doc.rs 会在 crate 的索引页面上呈现 README。在cargo doc本地运行时有没有办法模拟这一点?

如果我添加:

#![doc = r###"contents
of
README.md
here
"###]
Run Code Online (Sandbox Code Playgroud)

作为字面意思,我得到了我正在寻找的行为,但是内联整个 README.md 的副本对于进行更新非常不方便。

我试过:

#![doc = include!("README.md")]
Run Code Online (Sandbox Code Playgroud)

但这给出了一个错误:

error: unexpected token: `include`
 --> src/lib.rs:3:10
  |
3 | #![doc = include!("README.md")]
  |          ^^^^^^^
Run Code Online (Sandbox Code Playgroud)

Dan*_*all 11

从 Rust 1.54.0 开始更新:

#![doc = include_str!("path/to/docs.md")]
Run Code Online (Sandbox Code Playgroud)

原答案:

有一个不稳定的功能 ,external-doc可以实现这一点:

使用示例(仅限夜间):

#![doc = include_str!("path/to/docs.md")]
Run Code Online (Sandbox Code Playgroud)

  • `#[doc = include_str!("my_doc.md")` 是通过 [#78837](https://github.com/rust-lang/rust/pull/78837) 在夜间执行此操作的新方法 (7认同)

归档时间:

查看次数:

826 次

最近记录:

6 年,1 月 前