当前位置: 首页 > article >正文

文档站点生成器 - Sphinx

简介Sphinx 是一个高度可扩展、功能丰富的文档生成工具最初为 Python 官方文档开发现已成为技术文档领域的事实标准。它支持从 reStructuredText 或 Markdown 源文件生成多种输出格式HTML、PDF、ePub、LaTeX 等。核心特点特性说明多格式输出一份源码同时生成 HTML、PDF、EPUB、LaTeX 等reStructuredText语义化标记语言支持复杂文档结构MyST-Parser 支持原生兼容 Markdown降低迁移成本自动 API 文档从 Python 代码注释自动生成文档autodoc交叉引用系统强大的标签、索引、引用和搜索功能国际化i18n完整的文档翻译和多语言支持扩展生态数百个扩展插件涵盖图表、代码、主题等典型应用场景Python 官方文档docs.python.org大型开源项目NumPy、Pandas、Django、Flask、scikit-learn企业级技术文档需要版本控制、多格式输出、复杂索引学术论文与书籍LaTeX/PDF 输出质量专业快速开始1. 安装# 基础安装 pip install sphinx # 推荐组合含 Markdown 支持、常用主题、自动文档 pip install sphinx myst-parser sphinx-rtd-theme sphinx-autodoc-typehints2. 初始化项目mkdir my-docs cd my-docs sphinx-quickstart docs交互式配置向导会询问项目名称、作者、版本是否分离源码和构建目录推荐y是否创建 Makefile推荐y生成的目录结构docs/ ├── build/ # 构建输出目录 ├── make.bat # Windows 构建脚本 ├── Makefile # Unix 构建脚本 ├── source/ # 文档源文件 │ ├── _static/ # 静态资源 │ ├── _templates/ # 自定义模板 │ ├── conf.py # 核心配置文件Python 格式 │ ├── index.rst # 主文档入口 │ └── ... # 其他 .rst/.md 文件 └── ...3. 配置文件source/conf.py# 项目信息 project 我的项目文档 copyright 2026, 作者名 author 作者名 release 1.0.0 # 扩展模块 extensions [ myst_parser, # 支持 Markdown sphinx.ext.autodoc, # 自动生成 Python API 文档 sphinx.ext.viewcode, # 源码链接 sphinx.ext.napoleon, # 支持 Google/NumPy 风格 docstrings sphinx.ext.intersphinx,# 跨项目链接如链接到 Python 官方文档 sphinx.ext.todo, # TODO 标记 sphinx.ext.mathjax, # LaTeX 数学公式 ] # 源文件后缀 source_suffix { .rst: restructuredtext, .md: markdown, } # 主题设置Read the Docs 主题 html_theme sphinx_rtd_theme # 静态文件路径 html_static_path [_static] # 自定义 CSS html_css_files [custom.css] # 交叉引用映射链接到其他 Sphinx 文档 intersphinx_mapping { python: (https://docs.python.org/3, None), numpy: (https://numpy.org/doc/stable/, None), } # 自动文档设置 autodoc_member_order bysource autodoc_typehints description4. 编写文档reStructuredText 示例index.rst.. 我的项目文档 documentation master file 欢迎文档! .. toctree:: :maxdepth: 2 :caption: 目录: quickstart api advanced 索引与表格 * :ref:genindex * :ref:modindex * :ref:search .. note:: 这是一个提示框reStructuredText 的指令语法。Markdown 示例quickstart.md# 快速开始 {toctree} :hidden: install config安装pip install my-package基本用法参见 {ref}api-reference或 {doc}api。这是一个警告框使用 MyST 语法。### 5. 自动生成 API 文档 这是 Sphinx 的核心优势。假设有以下 Python 代码 python # mypackage/core.py def process_data(data: list[dict], threshold: float 0.5) - dict: 处理数据并返回统计结果。 :param data: 输入数据列表每个元素为字典 :param threshold: 过滤阈值默认为 0.5 :return: 包含 mean、std、count 的字典 :raises ValueError: 当数据为空时抛出 示例:: result process_data([{val: 1.0}, {val: 2.0}]) print(result[count]) 2 if not data: raise ValueError(数据不能为空) # ... 实现逻辑 return {mean: 1.5, std: 0.5, count: len(data)}在文档中自动引用.. automodule:: mypackage.core :members: :undoc-members: :show-inheritance: :special-members: __init__或 Markdown 版本{automodule} mypackage.core :members: :undoc-members: :show-inheritance:### 6. 构建与预览 bash # 进入文档目录 cd docs # 构建 HTML输出到 build/html make html # 启动本地服务器预览 python -m http.server 8000 -d build/html # 构建 PDF需安装 LaTeX make latexpdf # 清理构建缓存 make clean部署方案GitHub Pages GitHub Actions创建.github/workflows/sphinx.ymlname: Sphinx Documentation on: push: branches: [main] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkoutv4 - uses: actions/setup-pythonv5 with: python-version: 3.11 - name: Install dependencies run: | pip install sphinx myst-parser sphinx-rtd-theme pip install -e . # 安装你的包以生成 API 文档 - name: Build HTML run: | cd docs make html - name: Deploy to GitHub Pages uses: peaceiris/actions-gh-pagesv3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/build/htmlRead the Docs推荐原生支持导入 GitHub 仓库到 readthedocs.org创建.readthedocs.yaml配置文件version: 2 build: os: ubuntu-22.04 tools: python: 3.11 python: install: - method: pip path: . - requirements: docs/requirements.txt sphinx: configuration: docs/source/conf.py formats: - htmlzip - pdf - epub常用扩展推荐扩展名功能myst-parserMarkdown 支持sphinx-autodocPython API 自动生成sphinx-autodoc-typehints类型提示自动文档sphinx-copybutton代码块复制按钮sphinx-design卡片、标签页、网格等 UI 组件sphinxcontrib-mermaidMermaid 流程图sphinx-tabs标签页内容sphinx-last-updated-by-git显示最后更新时间

相关文章:

文档站点生成器 - Sphinx

简介 Sphinx 是一个高度可扩展、功能丰富的文档生成工具,最初为 Python 官方文档开发,现已成为技术文档领域的事实标准。它支持从 reStructuredText 或 Markdown 源文件生成多种输出格式(HTML、PDF、ePub、LaTeX 等)。 核心特点 …...

多模态视频理解与GRPO强化学习技术解析

1. 多模态视频理解的技术背景与挑战视频理解作为计算机视觉领域的重要研究方向,已经从早期的单一模态分析发展到如今的跨模态融合阶段。传统视频分析方法主要依赖视觉特征提取,如使用3D卷积神经网络处理时序信息,或通过双流网络分别建模空间和…...

商城产品详情页的客服咨询在哪里设置详解:从入门到实战全攻略

关于这个问题,很多商家都不太清楚。今天来详细解答。一、问题背景在实际运营小程序商城的过程中,不少商家会遇到:商城产品详情页的客服咨询在哪里设置二、详细解答通过产品详情页内设置客服功能,具体请参考以下教程:1.…...

python-103-操作的技巧和注意事项(一)shell粘贴命令行参数及subprocess执行系统命令及字典传参

文章目录 1 shell粘贴命令行参数 1.1 问题描述 1.2 支持的字符串长度 1.3 复制粘贴参数 1.4 解决方案 2 subprocess 2.1 参数含义 2.2 安全提示 2.3 安全路径 3 字典作为函数参数 3.1 原始字典会变化 3.2 若不想改变原始字典 4 字典传参 4.1 函数调用时(使用**解包字典) 4.2 函…...

3分钟快速掌握微信聊天记录解密:WechatDecrypt工具终极指南

3分钟快速掌握微信聊天记录解密:WechatDecrypt工具终极指南 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt 你是否曾经因为误删了重要的微信聊天记录而感到焦虑?或者需要找回某次关…...

鸣潮游戏自动化终极指南:基于图像识别的智能辅助解决方案

鸣潮游戏自动化终极指南:基于图像识别的智能辅助解决方案 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 你是否厌倦了…...

【HALCON 实战入门】15. Blob分析

欢迎订阅【HALCON 实战入门】专栏: 1. HALCON 简介与安装 5. 相机接入与图像采集 10. 阈值分割与目标提取 11. 区域处理与分析 12. 边缘检测与轮廓提取 13. 轮廓分析与几何特征 14. 形态学处理 15. Blob分析 16. 图像匹配 【HALCON 实战入门】15. Blob分析一、什么是…...

Autovisor:2025年智慧树课程自动化学习终极解决方案

Autovisor:2025年智慧树课程自动化学习终极解决方案 【免费下载链接】Autovisor 2025智慧树刷课脚本 基于Python Playwright的自动化程序 [有免安装版] 项目地址: https://gitcode.com/gh_mirrors/au/Autovisor Autovisor是一款基于Python Playwright框架开发…...

图书管理系统核心功能覆盖图书全生命周期管理,包括购入、借阅、归还、注销四大业务流程,同时支持读者信息

本节内容来自《软件设计师教程(第5版)》第12章相关章节,为图书管理系统的结构化分析阶段成果: 12.1.1 需求说明 图书管理系统核心功能覆盖图书全生命周期管理,包括购入、借阅、归还、注销四大业务流程,同时…...

软件设计师考试聚焦软件设计开发的主流技术与工程实践,要求应试者不仅掌握基础理论知识

软件设计师考试聚焦软件设计开发的主流技术与工程实践,要求应试者不仅掌握基础理论知识,更能将设计方法与原则应用到实际系统的分析、设计和开发环节。其核心技术领域可归纳为五大模块: 结构化分析与设计 数据库分析与设计 面向对象分析与设计…...

从问卷设计到论文发表:一份完整的验证性因子分析(CFA)保姆级避坑指南

从问卷设计到论文发表:一份完整的验证性因子分析(CFA)保姆级避坑指南 当你第一次接触验证性因子分析(CFA)时,可能会被各种专业术语和统计指标搞得晕头转向。作为一名经历过无数次CFA分析的研究者&#xff0…...

【仅限首批认证开发者】MCP 2026边缘性能调优密钥包:含3个未公开eBPF观测脚本+12个YAML黄金模板

更多请点击: https://intelliparadigm.com 第一章:MCP 2026边缘部署性能优化概览 MCP 2026(Model Control Protocol v2026)是面向边缘智能设备的新一代轻量化协议栈,其核心设计目标是在资源受限的ARM64/RT-Thread/RIS…...

保姆级教程:Hyper-V虚拟机通过内部网络共享WiFi上网,并配置CentOS/Ubuntu静态IP(附MobaXterm连接)

Hyper-V虚拟机内网共享WiFi上网与Linux静态IP配置全指南 1. 环境准备与基础概念 在Windows平台上使用Hyper-V创建Linux虚拟机时,网络配置往往是新手面临的第一个挑战。不同于有线网络的直连特性,WiFi环境下的虚拟机网络共享需要更精细的配置。我们先明确…...

minimind模型训练

项目包括供完整的 MiniMind-LLM 结构代码&#xff08;Dense MoE&#xff09;&#xff0c;当前主线结构对齐 Qwen3 / Qwen3-MoE 生态。提供 Tokenizer 与分词器训练代码&#xff0c;支持 <tool_call>、<tool_response>、<think> 等模板标记。覆盖 Pretrain、…...

别再只用纯色背景了!用CSS的linear-gradient和radial-gradient给你的网站加点‘料’

用CSS渐变打造高级视觉层次&#xff1a;从基础技法到设计实战 你是否已经厌倦了千篇一律的纯色背景&#xff1f;在当今追求极致用户体验的网页设计领域&#xff0c;一个精心设计的渐变背景往往能成为吸引用户驻留的关键细节。作为前端开发者&#xff0c;我们手中的linear-gradi…...

ISO-Bench:AI生成代码性能评估基准测试实践

1. 项目背景与核心价值在软件开发领域&#xff0c;代码生成与优化一直是提升工程效率的关键环节。最近两年&#xff0c;AI编码助手的爆发式增长让"用自然语言描述需求&#xff0c;自动生成可运行代码"这一愿景逐渐成为现实。但一个长期被忽视的问题是&#xff1a;这些…...

从纸质到数字:用Audiveris让古老乐谱重获新生的魔法

从纸质到数字&#xff1a;用Audiveris让古老乐谱重获新生的魔法 【免费下载链接】audiveris Latest generation of Audiveris OMR engine 项目地址: https://gitcode.com/gh_mirrors/au/audiveris 你是否有一叠泛黄的乐谱&#xff0c;承载着岁月的记忆却难以传承&#x…...

为AI代码生成器Cursor配置ESLint与Prettier规则集,实现自动化代码规范检查与格式化

1. 项目概述&#xff1a;为 Cursor 编辑器注入代码规范的灵魂如果你和我一样&#xff0c;日常重度依赖 Cursor 这款 AI 驱动的编辑器来加速开发&#xff0c;那你一定体会过那种“痛并快乐着”的感觉。快乐在于&#xff0c;它确实能帮你快速生成代码片段、重构函数&#xff0c;甚…...

解锁旧Mac新生命:OpenCore Legacy Patcher完全指南

解锁旧Mac新生命&#xff1a;OpenCore Legacy Patcher完全指南 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为心爱的旧Mac无法升级最新macOS而烦…...

MARS算法原理与Python实现:非线性回归实战指南

1. MARS算法核心原理拆解多元自适应回归样条(Multivariate Adaptive Regression Splines)是一种非线性回归技术&#xff0c;由Jerome Friedman在1991年提出。它通过分段线性回归的方式自动构建预测模型&#xff0c;特别适合处理高维数据中的复杂非线性关系。1.1 基础数学框架MA…...

在 Ubuntu 上为 Claude Code 配置 Taotoken 作为 Anthropic 兼容后端

在 Ubuntu 上为 Claude Code 配置 Taotoken 作为 Anthropic 兼容后端 1. 准备工作 在开始配置前&#xff0c;请确保已满足以下条件&#xff1a;Ubuntu 系统已安装 Claude Code 编程助手&#xff0c;并拥有有效的 Taotoken API Key。API Key 可在 Taotoken 控制台的「API 密钥…...

php内核 自研加密算法底层嵌入PHP内核方法

最佳方式不是硬改 php-src 内核代码&#xff0c;而是写一个 PHP 扩展&#xff08;C 扩展&#xff09;把算法嵌进去。 这样升级oPHPu版本时成本最低、最稳、可回滚。---先说大白话架构你要“底层嵌入”&#xff0c;有 3 条路&#xff…...

三步搞定抖音内容保存:你的专属无水印下载神器

三步搞定抖音内容保存&#xff1a;你的专属无水印下载神器 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音…...

Taotoken 用量看板如何帮助技术负责人清晰掌握团队 AI 资源消耗

Taotoken 用量看板如何帮助技术负责人清晰掌握团队 AI 资源消耗 1. 用量看板的核心功能定位 Taotoken 用量看板为技术管理者提供了集中化的 API 调用监控界面。该功能通过聚合各项目、成员及模型维度的 token 消耗数据&#xff0c;形成可视化的资源使用报告。平台采用实时计算…...

归并排序:分治法的经典应用

一、前言归并排序是基于分治法的典型排序算法&#xff0c;通过递归将数组拆分为最小单元&#xff08;单个元素&#xff09;&#xff0c;再通过合并操作将有序子序列逐步组合成完整有序序列。其核心在于分解与合并的协同操作二、分治法与递归拆分分治法将原问题分解为若干规模较…...

别再只会qemu-img create了!这5个隐藏功能帮你搞定虚拟磁盘运维难题

解锁qemu-img的五大高阶玩法&#xff1a;从磁盘运维到性能调优实战指南 虚拟化技术已经成为现代IT基础设施的核心支柱&#xff0c;而磁盘镜像管理则是虚拟化运维中最频繁接触却又最容易被忽视的环节。大多数运维工程师对qemu-img的认识停留在基础的创建和转换操作&#xff0c;却…...

OBS-VirtualCam完全指南:如何在Zoom、Teams等应用中轻松使用OBS虚拟摄像头

OBS-VirtualCam完全指南&#xff1a;如何在Zoom、Teams等应用中轻松使用OBS虚拟摄像头 【免费下载链接】obs-virtual-cam 项目地址: https://gitcode.com/gh_mirrors/obs/obs-virtual-cam 你是否曾经希望在Zoom、Teams或Skype视频会议中展示OBS Studio精心设计的专业场…...

从MMoE到PLE:手把手教你用PaddlePaddle复现腾讯的多任务学习模型(附完整代码)

从MMoE到PLE&#xff1a;基于PaddlePaddle的多任务学习模型实战解析 在推荐系统与广告点击率预测等场景中&#xff0c;多任务学习&#xff08;MTL&#xff09;已成为提升模型效率的关键技术。传统单一任务模型往往面临数据稀疏和计算资源浪费的问题&#xff0c;而MTL通过共享底…...

搜索了多款去水印工具,我终于发现了真正的「去水印黑科技」

目录 一、搜出来的前排工具,90%都是废物 1. Magic Eraser:名气大,效果拉胯(喜欢标注小字的封面慎用) 2. Dewatermark:过度删除重灾区(喜欢标注小字的封面慎用) 3. 开拍:免费次数少,效果还一般 4. 360去水印:效果差就算了,下载还要会员 5. Canva:效果勉强及格,痕迹…...

如何为现有Python项目迁移至Taotoken并享受折扣

如何为现有Python项目迁移至Taotoken并享受折扣 1. 迁移前的准备工作 在开始迁移之前&#xff0c;建议先梳理现有项目的API调用情况。记录当前使用的模型名称、调用频率以及关键接口路径。这将帮助您在Taotoken平台上快速找到对应的模型和服务。 确保您已经注册了Taotoken账…...