利用Sphinx编写文档


1、Sphinx简介和使用理由

=================

Sphinx是一个用Python语言编写而成的文档编写工具。用Sphinx编写文档的时候,用户只需要编写符合Sphinx格式要求的纯文本源文件,然后通过Sphinx的命令就可以把纯文本源文件编译成html、pdf等常用格式的文档,这样就实现了通过文本文件自动生成html、pdf等格式文档的功能。

编写文档直接用Word不就是挺好的吗?为什么又要用Sphinx来写纯文本格式的文档呢?

这是因为Sphinx中的文本格式文档可以用版本控制系统跟踪它的变更,同时呢,它又可以非常轻松地生成多种的目标文档格式,比如编写一份Sphinx文档,然后通过工具就用这一份文档生成html、pdf、epub等其他格式的文档了,编写一种文本格式的文档,可以得到很多种其他格式的文档。

然而,word想要转成html就没有那么容易了,而且word文件是二进制文件,所以无法用版本控制系统来跟踪变更。

2、Sphinx在Windows下的安装

===================

Sphinx是用Python语言写成的软件,所以在安装Sphinx之前首要先要安装Python。

Python安装好之后,可以通过Python自带的Pip工具来安装Sphinx。只需要下面这一条命令,就可以完成Sphinx的安装:

pip install Sphinx

3、利用Sphinx制作文档的一般步骤

=====================

一般情况下,用Sphinx来写文档的时候,首先要创建一个Sphinx工程,就像要编写C语言程序在IDE中要建一个工程是一样的道理。建好工程,之后就可以往这个工程中写自己的文档源文件了。源文件编写完成后,就可以生成目标格式的文档了,如果想要html格式就用相应的命令,想要pdf格式也可以用对应的命令来生成。

所以,通常就这么三步:

(1)建文档项目

(2)写文档源文件

(3)编译生成目标格式的文档

4、Sphinx基础知识

============

这里简单介绍一些Sphinx的文档的基本编写知识。详细的情况可以参考《参考资料1》和中文版的《Sphinx使用手册》。

5、发布文档

========

发布文档是什么意思呢?因为Sphinx写文档可以编译成html格式,那么html格式的文档,就可以发布在网上,大家像看网站那样看文档。有一个叫readthedocs.org的网站就可以托管Sphinx生成的文档。

详情可以参考《参考资料4》

参考资料

1、https://www.ibm.com/developerworks/cn/opensource/os-sphinx-documentation/

2、http://www.jianshu.com/p/56515db85690

3、http://zh-sphinx-doc.readthedocs.io/en/latest/contents.html

4、http://avnpc.com/pages/writing-best-documentation-by-sphinx-github-readthedocs

5、http://www.jianshu.com/p/78e9e1b8553a

利用Sphinx编写文档的更多相关文章

  1. 使用Sphinx编写文档

    操作系统 : Windows7_x64 Python 版本 : 2.7.10 Sphinx 版本 : 官方网址:http://sphinx-doc.org github地址: https://gith ...

  2. 【文档】使用Sphinx + reST编写文档

    0 前言 写文档是开发人员日常工作中的一项重要内容,除了word之外,我更偏爱使用标记语言(Markup Language).使用标记语言,可以利用简单.免费的文本编辑器(记事本,vim, emacs ...

  3. sphinx doc 文档生成脚手架工具

    sphinx 在python 语言开发中,是一个使用的比较多文档生成脚手架工具,我们帮助我们生成 专业的帮助文档,同时也有远端的免费saas 托管服务,方便分发 安装 sphinx 的安装好多方便,m ...

  4. 第四十四条:为所有导出的API元素编写文档注释

    简而言之,要为API编写文档,文档注释是最好,最有效的途径.对于所有可导出的API元素来说,使用文档注释应该被看作是强制性的.要 采用一致的风格来遵循标准的约定.记住,在文档注释内部出现任何的HTML ...

  5. Effective Java 第三版——56. 为所有已公开的API元素编写文档注释

    Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...

  6. 如何使用Markdown 编写文档

    Markdown 是一种轻量级标记语言,用来编写文本文档,一般后缀名为.md.该语言在 2004 由约翰·格鲁伯(John Gruber)创建. 由于Markdown 语法简单,易读易写,变得越来越通 ...

  7. 使用 Typora 编辑器运用 Markdown 的语法编写文档

    Markdown 介绍 Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档. Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建. ...

  8. 利用print2flashsetup.exe文档转swf

    通过使用Print2Flash您可以轻松的将您的文档转换成真正的Adobe Flash格式,最好的保证您的内容将实际可见,与其他格式相比,它并不存在查看工具的安装问题. Print2Flash中有一个 ...

  9. 使用readthedocs 发布 sphinx doc文档

    readthedocs 是由社区驱动的开源sphinx doc 托管服务,我们可以用来方便的构建以及发布文档 这是一个简单的demo 项目,使用了用的比较多的sphinx_rtd_theme 主题,主 ...

随机推荐

  1. win7 秘钥

    链接 安装好Windows7后右击计算机--属性--更改产品密匙 输入以下密匙; RHTBY-VWY6D-QJRJ9-JGQ3X-Q2289 HT6VR-XMPDJ-2VBFV-R9PFY-3VP7R ...

  2. 使用WPScan破解wordpress站点密码

    我这里使用的Kali Linux,它默认安装了WPScan. 在使用WPScan之前,先更新它的漏洞数据库: # wpscan –update 扫描wordpress用户 wpscan -–url [ ...

  3. php session在高并发时可能存在的问题。

    如果同一个客户端并发发送多个请求,而每个请求都使用了Session,那么PHP Session锁的存在会导致服务器串行响应这些请求,而不是并行.这是因为在默认情况下,PHP使用文件存储Session数 ...

  4. ESLint在vue中的使用

    ESLint的用途 1.审查代码是否符合编码规范和统一的代码风格: 2.审查代码是否存在语法错误:  中文网地址 http://eslint.cn/ 使用VSCode编译器在Vue项目中的使用 在初始 ...

  5. 处理SQL Server 异常常用步骤

    处理SQL Server 异常常用步骤 SQL Server常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞. 一.CPU过高的问题 1.查询系统动态视图查询执行时间长的sql语句 WIT ...

  6. HDU - 6242:Geometry Problem(随机+几何)

    Alice is interesting in computation geometry problem recently. She found a interesting problem and s ...

  7. Sapnco3 RfcTable Structure

    RfcTable 中字段 并不固定,以下内容仅供参考 1. 包含IDOC的 RfcTable SDATA字段值为IDOC数据,解析IDOC数据需依据IDOC字段长度对SDATA进行截取 functio ...

  8. 一线互联网公司必备——最为详细的Docker入门吐血总结

    在计算机技术日新月异的今天, Docker 在国内发展的如火如荼.     特别是在一线互联网公司 Docker 的使用是十分普遍的,甚至成为了一些企业面试的加分项,不信的话看看下面这张图.     ...

  9. Android Studio 打包及引用 AAR(可能是史上最详细的 )

    https://www.jianshu.com/p/1777a634db5e Android Library(AAR) 的好处 Android 库在结构上与 Android 应用模块相同.它可以提供构 ...

  10. erlang配置三方库

    暴力的: 直接下载解压以后放到erlang的lib目录,比如/usr/local/Cellar/erlang/17.3/lib/erlang/lib 和谐的: 在用户名下建立.erlang文件 在里面 ...