通过sphinx生成无配置python文档。

flinx的Python项目详细描述


Flinx
==


无配置Sphinx软件包文档。


Flinx旨在用于文档,就像Flit用于打包一样:一种无配置的方式,可以开始{文档、打包},并逐渐添加
配置。它还借用了react初学者工具包的一个概念:您可以"弹出",并将flinx留在后面。

flinx是"sphinx build"和"sphinx autobuild"的薄包装。如果您乐于创建一个"docs/conf.py",并直接使用这些命令,你不需要这个。

表明你可能对这个包感兴趣:

*你想要新项目的零配置文档。
*你不想编辑模块源和"conf.py",当你重命名模块时。(我知道,你不应该在发布之后再这样做。
但我在最初的开发过程中经常这样做。)
*你不想手动编辑模块源代码,也不想在碰到版本号时手动编辑"conf.py"。(尽管"bumpversion
<;https://github.com/peritus/bumpversion>;``是另一种选择,这里。)
*您是早期软件的渴望试验品。


installation
----




$python3-m pip install flinx


usage
-



$flinx build

文档。

``flinx build-o``在文档生成后打开浏览器。

…todo::目前这会污染``./docs`.

::


$flinx serve

使用``sphinx autobuild``来构建和服务html文档。

``flinx serve-o``在文档构建后打开浏览器。

感谢``sphinx autobuild`,当
源文件更改时,文档将重新生成并重新运行。

这不会扩展到``pyproject.toml``配置文件。




$flinx generate

写入``docs/conf.py``和``docs/index.rst`,与当前项目设置匹配的文件。





$flinx eject

这相当于"flinx generate",只是文件省略了标题中的"this
file is automatically generated"警告。

注意:
这些命令行选项与"sphinx build"和"sphinx autobuild"非常不同。这属于"如果您对
这些工具感到满意,并且了解它们的选择,您可能不会喜欢
这个包"的标题。它们的设计更像我使用的其他站点生成器,比如jekyll。因为我不知道如何绕过"sphinx build",所以我不想与之兼容。


从中读取描述文件
。这些都是可选的。


将从中读取项目名称、作者和版本。


Flinx尝试自动发现未在项目文件中指定的任何信息:

*Flinx尝试检测模块。这是第一个包含版本定义的非test
目录,否则是第一个包含版本定义的非test```*.py``文件。版本定义是格式为"1.2.3"的行,带有单引号或双引号。(flinx忽略空白,但不导入或解析文件。)
*flix从模块文件(如果模块是单个文件)中读取版本,或f从
模块的`uu init_uuu.py`文件(如果模块是一个目录)中读取
*作者是从"git config user.name"中读取的。如果没有
项目文件,并且作者无法通过git访问,则会出现错误。
*版权日期是当前年份。

将"sphinx configuration"变量添加到"pyproject.toml"中的"tool.flinx.configuration"表中。例如:

:::

[tool.flinx.configuration]
html_theme='sphinx_rtd_theme'

`可以缩写"sphinx.ext"命名空间中的扩展名。例如,
`` extensions=['napoleon','todo']``等同于`` extensions=
['sphinx.ext.napoleon','sphinx.ext.todo']`````.


`如果有以该estension的名称开头的配置变量,则会自动添加``sphinx.ext``的扩展。例如,
项目文件中存在"todo"include"todos=true"意味着
``sphinx.ext.todo``.

…_ pyproject.toml:https://www.python.org/dev/peps/pep-0518/
。_ flit:https://flit.readthedocs.io/en/latest/
_诗歌:https://poetry.eustace.io
…_ Sphinx配置:http://www.sphinx-doc.org/en/master/usage/configuration.html

这是有计划的,但很棘手。

构建在"sphinx
<;http://www.sphinx-doc.org/en/master/>;``和"sphinx autobuild
<;https://github.com/garetjax/sphinx autobuild>;``上。

我想把它命名为"flynx",作为对'seveneves<;https://en.wikipedia.org/wiki/seveneves>;``的致敬,但我意识到我拼写的"sphinx"错了。有一个名为"flynx"的应用程序,所以它可能也一样。


"flinx"也是艾伦·迪恩·福斯特系列中的一个角色。我很遗憾地承认,我没有读过这个系列,而且它也没有告诉我选择的名字。


许可证
----

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java Double。将长位加倍到C#位转换器。ToDouble   java如何使用正则表达式从固定的Y位数中提取最后的X位数?   java如何显示ChatMessage类列表中的字符串消息属性?   java从JSON或XML提要导入数据,并在Android中创建列表   在整数之间使用按位AND运算符的java好处?   java从Android中的Bean类获取空值?   java会话id对另一台服务器意味着什么?   java未选择案例时开关的工作方式   java组织。openqa。硒。SessionNotCreatedException:无法创建新的远程会话。在emulator中初始化安卓驱动程序时   JavaSWT父和子对话框通信   java请确保java_HOME指向JDK而不是JRE   java用户即使在成功登录后也是匿名的   java控制器单元测试无法自动连接所需的bean   Java小程序类文件