Ниже показаны два различных подхода, которые создают раздел библиографии в выводах html и latex из Sphinx.
1.Использование двух отдельных реструктурированных текстовых файлов «index»
Один подход, который создает раздел библиографии в обоих выходных файлах Sphinx html и latex , использует два index реструктурированные текстовые файлы.
Для вывода html файл index.rst
должен иметь вид:
===============
Project Heading
===============
.. toctree::
:maxdepth: 2
:caption: Contents:
section_1
section_2
section_3
bibliography
Для вывода latex , index_latex.rst
Файл должен иметь вид:
===============
Project Heading
===============
.. toctree::
:maxdepth: 2
:caption: Contents:
section_1
section_2
section_3
Файл bibliography.rst
должен иметь вид:
************
Bibliography
************
.. bibliography:: bibtex_filename.bib
:style: plain
В файле конфигурации Sphinx (например, conf.py
) необходимо различатьдва разных индексных файла.Например:
# The html index document.
master_doc = 'index'
# The latex index document
latex_doc = 'index_latex'
2.Использование одного файла index.rst
и использование директивы .. raw::
То, что следует, было адаптировано из https://github.com/sphinx-doc/sphinx/issues/4775. Этот подход использует один и тот же файл index.rst
для обоих html и латекс выходы.Файл index.rst
должен быть таким же, как показано для вывода html выше, и должен включать ссылку на файл bibliography.rst
.Файл bibliography.rst
должен иметь директиву .. raw::
в начале:
.. raw:: latex
\cleardoublepage
\begingroup
\renewcommand\chapter[1]{\endgroup}
\phantomsection
************
Bibliography
************
.. bibliography:: bibtex_filename.bib
:style: plain
NOTE
Использование директивы Sphinx .. only::
с однимФайл index.rst
, как показано ниже НЕ РАБОТАЕТ .В частности, в документе latex будет отсутствовать содержимое.Возможно, это связано с проблемами с директивой .. only::
.
===============
Project Heading
===============
.. only:: html
.. toctree::
:maxdepth: 2
:caption: Contents:
section_1
section_2
section_3
bibliography
.. only:: latex
.. toctree::
:maxdepth: 2
:caption: Contents:
section_1
section_2
section_3