5个版本
0.2.4 | 2022年12月1日 |
---|---|
0.2.3 | 2022年9月30日 |
0.2.2 | 2022年3月15日 |
0.2.1 | 2021年8月1日 |
0.2.0 | 2021年5月6日 |
#4 in #生成HTML
70KB
724 行
rhai-doc
- 从Rhai脚本文件生成HTML文档
rhai-doc
是一个用于自动生成Rhai脚本文档的工具。
它支持在Rhai脚本的文档注释中编写Markdown文档,并创建通用文档页面。
示例请参见这里。
命令行界面
USAGE:
rhai-doc.exe [OPTIONS] [SUBCOMMAND]
OPTIONS:
-a, --all Generate documentation for all functions, including private ones
-c, --config <FILE> Set the configuration file [default: rhai.toml]
-d, --dir <DIR> Set the Rhai scripts (*.rhai) directory [default: .]
-D, --dest <DIR> Set the destination for the documentation output [default: dist]
-h, --help Print help information
-p, --pages <DIR> Set the directory where MarkDown (*.md) pages files are located [default:
pages]
-v, --verbose Use multiple to set the level of verbosity: 1 = silent, 2 (default) =
full, 3 = debug
-V, --version Print version information
SUBCOMMANDS:
help Print this message or the help of the given subcommand(s)
new Generates a new configuration file
安装
从crates.io
安装
cargo install rhai-doc
从源代码安装
cargo install --path .
配置文件
要开始,你需要一个配置文件。
通常命名为rhai.toml
,或者你可以通过--config
选项指定。
要生成一个rhai.toml
骨架,使用new
命令
rhai-doc new
示例
version = "1.0" # version of this TOML file
name = "My Rhai Project" # project name
color = [246, 119, 2] # theme color
root = "/docs/" # root URL for generated site
index = "home.md" # this file becomes 'index.html`
icon = "logo.svg" # project icon
stylesheet = "my_stylesheet.css" # custom stylesheet
code_theme = "atom-one-light" # 'highlight.js' theme
code_lang = "ts" # default language for code blocks
extension = "rhai" # script extension
google_analytics = "G-ABCDEF1234" # Google Analytics ID
[[links]] # external link for 'Blog'
name = "Blog"
link = "https://example.com/blog"
[[links]] # external link for 'Tools'
name = "Tools"
link = "https://example.com/tools"
配置选项
version
:此TOML文件的版本;1.0
是当前版本。name
:项目的名称(如果有的话)。它是文档页面显示的标题。color
:生成的文档主题颜色的RGB值(如果有的话)。root
:文档中生成的根URL(如果有的话)。index
:主Markdown文件(如果有的话),将成为index.html
。icon
:自定义图标文件的路径(如果有的话)。stylesheet
:自定义样式的路径(如果有的话)。code_theme
:代码块中的语法高亮主题(默认default
),由highlight.js
提供。code_lang
:代码块的默认语言(默认ts
)。extension
:脚本文件rhai-doc
将查找的扩展名(默认.rhai
)。google_analytics
:如果有,提供 Google Analytics ID。[[links]]
:如果有,提供其他相关网站的外部链接。name
:外部链接的标题。link
:外部链接的 URL。
文档注释
Rhai 支持在脚本定义的 函数 中使用 doc-comments 格式在 Markdown 中。
/// This function calculates a **secret number**!
///
/// Formula provided from this [link](https://secret_formula.com/calc_secret_number).
///
/// # Scale Factor
/// Uses a scale factor obtained by calling [`get_contribution_factor`].
///
/// # Parameters
/// `seed` - random seed to start the calculation
///
/// # Returns
/// The secret number!
///
/// # Exceptions
/// Throws when the seed is not positive.
///
/// # Example
/// ```
/// let secret = calc_secret_number(42);
/// ```
fn calc_secret_number(seed) {
if seed <= 0 {
throw "the seed must be positive!";
}
let factor = get_contribution_factor(seed);
// Some very complex code skipped ...
// ...
}
/// This function is private and will not be included
/// unless the `-a` flag is used.
private fn get_multiply_factor() {
42
}
/// This function calculates a scale factor for use
/// in the [`calc_secret_number`] function.
fn get_contribution_factor(x) {
x * get_multiply_factor()
}
语法高亮
highlight.js
用于代码块中的语法高亮。
代码块的默认语言是 ts
(即 TypeScript)。选择此默认值是因为 Rhai 语法主要类似于 JavaScript/TypeScript,并且字符串插值的高亮效果良好。
脚本间链接
函数文档可以在同一脚本文件中相互交叉链接。
格式为 [`my_func`]
的链接将自动展开为链接到目标函数的文档(在这种情况下为 my_func
)。
Markdown 页面
默认情况下,rhai-doc
将从脚本目录下的 pages
子目录中的 Markdown 文档生成文档页面。
或者,您可以通过 --pages
选项指定其他位置。
功能
- 从 Rhai 脚本文件中的 Markdown doc-comments 生成文档。
- 创建通用文档页面。
- 文本搜索。
- 未记录的函数、参数等的代码检查器。
许可
以下任一许可下,您可以选择
除非明确说明,否则任何有意提交以包含在此包中的贡献,根据 Apache-2.0 许可证定义,应如上所述双重许可,而无需任何附加条款或条件。
依赖项
~10MB
~182K SLoC