SuperAPI AI 工具集

elixir-writing-docs

编程与开发

查看项目

更新于 10-15 21:39

技能介绍

用途:为 Elixir 项目编写与改进文档,围绕 @moduledoc、@doc、@typedoc、doctest、交叉引用和元数据给出规范与示例。

主要能力:

  • 首行摘要规则:ExDoc 与 mix docs 会抽取首段作摘要,首行需简洁、可独立成立。
  • @moduledoc 结构:首段摘要,## Examples 展示真实用法(可运行则用 doctest),## Configuration 说明必需配置,仅用二级标题 ##。
  • 行为模块:用 ## Callbacks 列出 @callback 期望。
  • @doc 结构:说明功能与返回值;接受关键字列表时用 ## Options 逐项说明;@spec 置于 @doc 与 def 之间。
  • @typedoc:文档化 @type 与 @opaque,尤其 @opaque 调用方无法检查结构时更重要。
  • 元数据:@doc since:、@doc deprecated:,可合并为一个属性。
  • 何时用 false:非公开 API 的私有实现模块、协议实现、回调实现、内部辅助函数用 @moduledoc false 或 @doc false;真正公开的导出函数不应 @doc false,应改为 defp。
  • 文档与代码注释区分:文档面向 API 使用者说明契约与返回值;# 注释面向读源码者解释实现选择。
  • 完成检查(门禁):修改 doctest 后运行项目 doctest 验证(通常 mix test);改动交叉引用、反引号或 m: 链接后运行 mix docs,解决 ExDoc 关于缺失模块、回调或坏链接的警告;新增或改动公开 API 后,确认每个导出 def/defmacro 都有意加的 @doc 或 @doc false,每个公开模块都有 @moduledoc 或 @moduledoc false。

使用方式:按主题查阅随附参考文件——doctest 语法与陷阱看 references/doctests.md;模块、函数、类型间链接语法看 references/cross-references.md;提示块、制表符与格式看 references/admonitions-and-formatting.md。仅在需要写 doctest、调试 doctest 失败、添加链接或使用提示块与标签页时加载对应参考。

限制:纯函数适合写 doctest,有副作用的函数应跳过;一级标题 # 在 ExDoc 输出中保留给模块名,正文只用 ##。价格、平台支持等资料未提供。