更改sphinx构建主文件



我可以告诉sphinx-build停止查找index.rst吗。

$ echo 'test' > readme.rst
$ sphinx-build -C . ./build readme.rst

这将抱怨缺少索引文件

master file /.../index.rst not found

然而,我们可以修复这个

$ ln -s readme.rst index.rst
$ sphinx-build -C . ./build readme.rst

这实际上将同时构建index.rstreadme.rst,并且它将抱怨readme.rst不包括在任何toc树中。用CCD_ 6代替CCD_。然而,我不想仅仅为了满足sphinx-build拥有索引文件的需求而四处移动文件。我也不想到处都是挥之不去的联系。

我可以更改主文件的位置吗?类似(不起作用(:

$ sphinx-build -C -D 'master_file=readme.rst' . ./build

或者我可以告诉它一起跳过索引文件吗?像这样的东西(不起作用(:

$ sphinx-build -C -D 'exclude_patterns=index.rst' . ./build readme.rst

或者有其他方法可以解决这个问题吗?

首先将您的index.rst重命名为readme.rst

然后,您可以在conf.py中指定master_doc配置选项并构建文档,也可以在构建文档时在命令行的conf.py中重写该值。

conf.py中规定

$ sphinx-build . ./build

仅在命令行上指定

$ sphinx-build . ./build -D master_doc='master'

怎么样:

sphinx-build -C . ./build readme.rst -D master_doc='readme'    

更详细地说:

$ ls
readme.rst
$ sphinx-build -C . ./build readme.rst -D master_doc='readme'
Running Sphinx v1.8.5
making output directory...
building [mo]: targets for 0 po files that are specified
building [html]: 1 source files given on command line
updating environment: 1 added, 0 changed, 0 removed
reading sources... [100%] readme                                                          
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] readme                                                           
generating indices... genindex
writing additional pages... search
copying static files... done
copying extra files... done
dumping search index in English (code: en) ... done
dumping object inventory... done
build succeeded.
The HTML pages are in build.
$ ls
build       readme.rst

斯芬克斯3.0.2也是如此。

最新更新