如何搭建Sphinx文档

  • 环境准备

Linux CentOS 7

  • 方案

搭建一个文档网站,本文档使用的是tomcat+sphinx。

Tomcat可以快速搭建出http服务,也可以使用apache httpd。

Sphinx作为文档网页自动生成工具,可以从reStructured文档转换为html文件。

  • Tomcat安装

  1. 创建/usr/local/tomcat目录,
  2. 到tomcat官网下载压缩包,拷进/usr/local/tomcat解压。
  3. 修改配置文件conf/server.xml,将端口号8080改为80。

    <Connector port="80" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

<!-- A "Connector" using the shared thread pool-->

       4.启动tomcat,运行bin/startup.sh

静态网页放到tomcat的webapps目录下即可通过访问。

  • Linux Sphinx安装(用于转换reStructured文档为html

  1. Sphinx安装:pip install -U Sphinx

中间遇到无法卸载pyparsing 1.6.5问题,使用:pip install -I pyparsing==2.2.0

  1. 安装主题sphinx-rtd-theme:pip install sphinx-rtd-theme
  2. 运行:sphinx-quickstart产生项目框架。

需要在conf.py中import主题,参考该文档:Sphinx 基础教程_如若明镜的博客-CSDN博客_sphinx 教程

  • 生成项目代码

运行:sphinx-quickstart

该步骤只需要执行一次即可。

build:生成的文件的输出目录
source: 存放文档源文件
_static:静态文件目录,比如图片等
_templates:模板目录
conf.py:进行 Sphinx 的配置,如主题配置等
index.rst:文档项目起始文件,用于配置文档的显示结构
make.bat:Windows 命令行中编译用的脚本
Makefile:编译脚本,make 命令编译时使用
  •  编辑文档框架及文档内容

文档内容都存放在source目录下。

主文档index.rst主要用于生成框架目录,结构如下:

Welcome to testdoc's documentation!
===================================.. toctree:::maxdepth: 2:glob:introsections/*Indices and tables
==================* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

其中,intro为子文档intro.rst, sections/*会包含同级section目录下所有rst文档。

Sphinx文档结构参考

The TOC tree — Sphinx 1.3.1 documentation

 

Sphinx使用的是结构化文本,主要语法参考:

reStructuredText 入门 — Sphinx 1.3.1 documentation

Create Documentation with RST, Sphinx, Sublime, and GitHub — RST | Sphinx | Sublime | GitHub documentation

  •  生成文档网页

清理命令:

make clean

生成网页命令:

make html

Linux个人开发机上非root用户需要加sudo执行以上命令:

sudo make html

生成的主网页:build/html/index.html

  • 文档网站

将项目生成的html下所有文件拷贝至/usr/local/tomcat/apache-tomcat-9.0.54/webapps目录下的个人相关目录,如/usr/local/tomcat/apache-tomcat-9.0.54/webapps/demo

cd build/html
sudo cp -fr * /usr/local/tomcat/apache-tomcat-9.0.54/webapps/demo

使用http://ip/demo/index.html 访问。

  • 拓展功能

支持markdown

只需要按照python包:pip install recommonmark sphinx-markdown-tables

并修改对应的conf.py

extensions = ['recommonmark','sphinx_markdown_tables']

这样Sphinx就可以识别带md后缀的markdown文件,如README.md

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/13536.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为设备WLAN配置之AP上线

WLAN基础配置之AP上线 配置WLAN无线网络的第一阶段&#xff0c;AP上线技术&#xff1a; 实验目标&#xff1a;使得AP能够获得来自AC的DHCP地址服务的地址&#xff0c;且是该网段地址池中的IP。 实验步骤&#xff1a; 1.把AC当作三层交换机配置虚拟网关 sys Enter system view,…

PaddlePaddle----基于paddlehub的文字识别

识别的代码 要使用 PaddleHub 进行 OCR 文本识别&#xff0c;您可以使用 PaddleHub 提供的预训练模型 chinese_ocr_db_crnn_mobile。以下是一个示例 Python 代码&#xff0c;演示如何使用 PaddleHub 进行 OCR 文本识别&#xff1a; import paddlehub as hub import cv2# 加载预…

note-网络是怎样连接的1 浏览器内部

助记提要 常见浏览器使用的协议 4种HTTP方法 8种响应状态码类型 5种5种IP地址的含义域名查找的基本原理协议栈发送消息的4个阶段 第1章 浏览器生成消息 探索浏览器内部 1 浏览器输入的URL 常见协议 http(访问Web服务器)&#xff0c;ftp(从ftp服务器下载和上传)&#xff0c;f…

【XuperChain】一、搭建第一条区块链节点

一、准备环境&#xff1a; 下载git和golang即可 apt install git apt install golang二、拉取代码&#xff0c;编译XuperChain 通过此命令拉取XuperChain源码到本地 git clone https://github.com/xuperchain/xuperchain.git 拉取成功后&#xff0c;会代码保存到了xuperChain…

使用Python生成一束玫瑰花

520到了&#xff0c;没时间买花&#xff1f;我们来生成一个电子的。 Python不仅是一种强大的编程语言&#xff0c;用于开发应用程序和分析数据&#xff0c;它也可以用来创造美丽的艺术作品。在这篇博客中&#xff0c;我们将探索如何使用Python生成一束玫瑰花的图像。 准备工作…

【逻辑漏洞】重置/忘记密码安全问题

【逻辑漏洞】重置/忘记密码安全问题 密码重置令牌泄漏密码重置中毒电子邮件轰炸密码重置令牌生成方式太过简陋使用过期令牌用好的响应替换坏的响应尝试使用自己的重置令牌注销/密码重置中的会话失效 密码重置令牌泄漏 如果密码重置令牌包含在 URL 中&#xff0c;并且用户在请求…

野心是需要付出去达到的,而欲望就只是欲望

当你能分清楚自己的想法是野心还是欲望时&#xff0c;就没有那么焦虑了。 这是野心还是欲望&#xff1f; 理解这两者之间的区别&#xff0c;对于我们的情绪状态和生活决策有着重要的影响。本文将探讨如何区分野心与欲望&#xff0c;并分享如何通过这种理解来减少焦虑。 野心&a…

如何解决爬虫的IP地址受限问题?

使用代理IP池、采用动态IP更换策略、设置合理的爬取时间间隔和模拟正常用户行为&#xff0c;是解决爬虫IP地址受限问题的主要策略。代理IP池是通过集合多个代理IP来分配爬虫任务&#xff0c;从而避免相同的IP地址对目标网站进行高频次访问&#xff0c;减少被目标网站封禁的风险…

TransFormer学习之VIT算法解析

1.算法简介 本文主要对VIT算法原理进行简单梳理&#xff0c;下图是一个大佬整理的网络整体的流程图&#xff0c;清晰明了&#xff0c;其实再了解自注意力机制和多头自注意力机制后&#xff0c;再看VIT就很简单了 受到NLP领域中Transformer成功应用的启发&#xff0c;ViT算法尝…

详解ArcGIS 水文分析模型构建

目录 前言 项目环境、条件 Dem 数据预览 ArcGIS模型构建器 模型搭建 填洼 流向 流量 河流长度 栅格计算器 河流链接 河网分级 栅格河网矢量化 绘制倾泻点 栅格流域提取 集水区 盆域分析 栅格转面 模型应用 导出 py 文件 完善脚本 最终效果 结束语 前言 …

【时间复杂度和空间复杂度之间的故事】

【时间复杂度和空间复杂度之间的故事】 一.前言 二.时间复杂度定义时间复杂度的计算规则习题 三.空间复杂度定义计算方法习题空间复杂度 O(1)空间复杂度 O(n) 本文主要讲解关于时间复杂度与空间复杂度 &#x1f600;&#x1f603;&#x1f601;&#x1f601;&#x1f607;&…

linux驱动中amba框架的作用

一,linux amba使用原因 一些芯片的设备树上的很多片内外设的compatible属性为compatible = "arm,primecell",且在内核源码中找不到compatible匹配的驱动,这是因为这些驱动使用了arm提供的amba协议。AMBA是由ARM Holdings开发的一种广泛使用的片上互连规范,它为系…

Go 秒读32GB大文件

在Go中&#xff0c;处理大文件时&#xff0c;一般采用分块读取的方式&#xff0c;以避免一次性加载整个文件到内存中。 1、打开文件 使用os.Open打开文件 package mainimport ("log""os" )func main() {file, err : os.Open("xxx.txt")if er…

部署Web应用,使用多种Azure服务【简略步骤】

步骤1&#xff1a;设计和开发Web应用 首先&#xff0c;选择一个开发框架和编程语言。例如&#xff0c;使用ASP.NET Core和C#进行开发。 创建项目&#xff1a; 使用Visual Studio或VS Code创建一个ASP.NET Core Web应用。 开发应用&#xff1a; 根据需求开发应用的各个部分&…

FastAPI单元测试:使用TestClient轻松测试你的API

当使用FastAPI进行单元测试时&#xff0c;一个重要的工具是TestClient类。TestClient类允许我们模拟对FastAPI应用程序的HTTP请求&#xff0c;并测试应用程序的响应。这使我们能够在不启动服务器的情况下对API进行全面的测试。 下面我将详细讲解TestClient的使用方法和常见操作…

10大桌面软件前端框架,那个是您的最爱呢?

桌面端前端框架是用于构建桌面应用程序的前端框架&#xff0c;以下是一些常用的桌面端前端框架&#xff1a; 1. Electron&#xff1a; Electron是一个开源的桌面应用程序开发框架&#xff0c;可以使用HTML、CSS和JavaScript构建跨平台的桌面应用程序&#xff0c;例如VS Code、…

2024 年第四届长三角高校数学建模竞赛赛题B题超详细解题思路+代码分享

B题 人工智能范式的物理化学家 问题一问题二问题三问题四问题五完整代码与文档获取 B题思路详细解析分享给大家&#xff0c;还会继续更新完成具体的求解过程&#xff0c;以及全部的代码与技术文档&#xff0c;都会直接给大家分享的哦~需要完整代码直接看到最后哦 问题一 针对问…

谈谈【软件测试的基础知识,基础模型】

关于软件测试的基本概念和基本模型 前言一个优秀的测试人员具备的素质关于需求测试用例软件错误(BUG)概念开发模型瀑布模型&#xff08;Waterfall Model&#xff09;螺旋模型&#xff08;Spiral Model&#xff09; 前言 首先,什么是软件测试? 通俗来讲:软件测试就是找BUG&…

vue3 图片加载报错时,设置默认图片

项目场景&#xff1a; 在项目开发中&#xff0c;图片因为各种原因加载失败&#xff0c;这时候需要设置默认的图片&#xff08;暂无图片.png&#xff09; 问题描述 在使用vue3开发问题的同时&#xff0c;有些图片因为服务器更换&#xff0c;历史数据问题&#xff0c;加载失败&am…

【配置】雷池WAF社区版安装

官方文档点击跳转 什么是雷池 雷池&#xff08;SafeLine&#xff09;是长亭科技耗时近 10 年倾情打造的 WAF&#xff0c;核心检测能力由智能语义分析算法驱动。 什么是 WAF WAF 是 Web Application Firewall 的缩写&#xff0c;也被称为 Web 应用防火墙。 区别于传统防火墙…