[dpdk-dev] [PATCH v3 2/4] doc: Add Sphinx config to build pdf version of guides
Iremonger, Bernard
bernard.iremonger at intel.com
Tue Feb 3 11:30:34 CET 2015
> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of John McNamara
> Sent: Monday, February 2, 2015 1:16 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH v3 2/4] doc: Add Sphinx config to build pdf version of guides
>
> Add Python Sphinx config to allow conversion of guides to Latex and then PDF format.
>
> This mainly adds metadata but also includes an override to the Latex formatter to control the font size
> in code blocks.
>
> Signed-off-by: John McNamara <john.mcnamara at intel.com>
> ---
> doc/guides/conf.py | 44 +++++++++++++++++++++++++++++++++++++++++++-
> 1 files changed, 43 insertions(+), 1 deletions(-)
>
> diff --git a/doc/guides/conf.py b/doc/guides/conf.py index 385af03..9f546bd 100644
> --- a/doc/guides/conf.py
> +++ b/doc/guides/conf.py
> @@ -29,11 +29,53 @@
> # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>
> import subprocess
> +from sphinx.highlighting import PygmentsBridge from
> +pygments.formatters.latex import LatexFormatter
>
> project = 'DPDK'
>
> copyright = '2014, Intel'
Hi John,
2014 should be 2015.
Regards,
Bernard.
>
> -version = subprocess.check_output(["make","-sRrC","../../", "showversion"])
> +version = subprocess.check_output(['make', '-sRrC', '../../',
> +'showversion']) release = version
>
> master_doc = 'index'
> +
> +# Latex directives to be included directly in the latex/pdf docs.
> +latex_preamble = r"""
> +\usepackage[utf8]{inputenc}
> +\usepackage{DejaVuSansMono}
> +\usepackage[T1]{fontenc}
> +\usepackage{helvet}
> +\renewcommand{\familydefault}{\sfdefault}
> +
> +\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
> +"""
> +
> +# Configuration for the latex/pdf docs.
> +latex_elements = {
> + 'papersize': 'a4paper',
> + 'pointsize': '11pt',
> + 'preamble': latex_preamble}
> +
> +latex_documents = [
> + ('index',
> + 'dpdk_doc.tex',
> + '',
> + '',
> + 'manual')]
> +
> +
> +# Temp class to override the default Latex formatter in order to modify
> +the # font size in the code/verbatim blocks.
> +class CustomLatexFormatter(LatexFormatter):
> +
> + def __init__(self, **options):
> +
> + super(CustomLatexFormatter, self).__init__(**options)
> +
> + # Use the second smallest font size for code/verbatim blocks.
> + self.verboptions = r'formatcom=\footnotesize'
> +
> +# Replace the default latex formatter.
> +PygmentsBridge.latex_formatter = CustomLatexFormatter
> --
> 1.7.4.1
More information about the dev
mailing list