doc: tune pdf fonts
[dpdk.git] / doc / guides / conf.py
1 #   BSD LICENSE
2 #   Copyright(c) 2010-2015 Intel Corporation. All rights reserved.
3 #   All rights reserved.
4 #
5 #   Redistribution and use in source and binary forms, with or without
6 #   modification, are permitted provided that the following conditions
7 #   are met:
8 #
9 #   * Redistributions of source code must retain the above copyright
10 #   notice, this list of conditions and the following disclaimer.
11 #   * Redistributions in binary form must reproduce the above copyright
12 #   notice, this list of conditions and the following disclaimer in
13 #   the documentation and/or other materials provided with the
14 #   distribution.
15 #   * Neither the name of Intel Corporation nor the names of its
16 #   contributors may be used to endorse or promote products derived
17 #   from this software without specific prior written permission.
18 #
19 #   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 #   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 #   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 #   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 #   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 #   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 #   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 #   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 #   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 #   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 #   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31 import subprocess
32 from sphinx.highlighting import PygmentsBridge
33 from pygments.formatters.latex import LatexFormatter
34
35 project = 'DPDK'
36
37 html_show_copyright = False
38
39 version = subprocess.check_output(['make', '-sRrC', '../../', 'showversion']).decode('utf-8')
40 release = version
41
42 master_doc = 'index'
43
44 latex_documents = [
45     ('index',
46      'doc.tex',
47      '',
48      '',
49      'manual')
50 ]
51
52 # Latex directives to be included directly in the latex/pdf docs.
53 latex_preamble = r"""
54 \usepackage[utf8]{inputenc}
55 \usepackage{DejaVuSansMono}
56 \usepackage[T1]{fontenc}
57 \usepackage{helvet}
58 \renewcommand{\familydefault}{\sfdefault}
59 \RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
60 """
61
62 # Configuration for the latex/pdf docs.
63 latex_elements = {
64     'papersize': 'a4paper',
65     'pointsize': '11pt',
66     # customize Latex formatting
67     'preamble': latex_preamble
68 }
69
70 # Override the default Latex formatter in order to modify the
71 # code/verbatim blocks.
72 class CustomLatexFormatter(LatexFormatter):
73     def __init__(self, **options):
74         super(CustomLatexFormatter, self).__init__(**options)
75         # Use the second smallest font size for code/verbatim blocks.
76         self.verboptions = r'formatcom=\footnotesize'
77
78 # Replace the default latex formatter.
79 PygmentsBridge.latex_formatter = CustomLatexFormatter