source: fact/tools/pyscripts/doc/_build/latex/sphinxmanual.cls@ 13151

Last change on this file since 13151 was 13151, checked in by lusterma, 13 years ago
added doc; this is just an example, nothing ready, to be adapted to work at ISDC, I just made this some time ago on my Laptop
File size: 3.3 KB
Line 
1%
2% sphinxmanual.cls for Sphinx (http://sphinx.pocoo.org/)
3%
4
5\NeedsTeXFormat{LaTeX2e}[1995/12/01]
6\ProvidesClass{sphinxmanual}[2009/06/02 Document class (Sphinx manual)]
7
8% chapters starting at odd pages (overridden by 'openany' document option)
9\PassOptionsToClass{openright}{\sphinxdocclass}
10
11% 'oneside' option overriding the 'twoside' default
12\newif\if@oneside
13\DeclareOption{oneside}{\@onesidetrue}
14% Pass remaining document options to the parent class.
15\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\sphinxdocclass}}
16\ProcessOptions\relax
17
18% Defaults two-side document
19\if@oneside
20% nothing to do (oneside is the default)
21\else
22\PassOptionsToClass{twoside}{\sphinxdocclass}
23\fi
24
25\LoadClass{\sphinxdocclass}
26
27% Set some sane defaults for section numbering depth and TOC depth. You can
28% reset these counters in your preamble.
29%
30\setcounter{secnumdepth}{2}
31\setcounter{tocdepth}{1}
32
33% Change the title page to look a bit better, and fit in with the fncychap
34% ``Bjarne'' style a bit better.
35%
36\renewcommand{\maketitle}{%
37 \begin{titlepage}%
38 \let\footnotesize\small
39 \let\footnoterule\relax
40 \rule{\textwidth}{1pt}%
41 \ifsphinxpdfoutput
42 \begingroup
43 % These \defs are required to deal with multi-line authors; it
44 % changes \\ to ', ' (comma-space), making it pass muster for
45 % generating document info in the PDF file.
46 \def\\{, }
47 \def\and{and }
48 \pdfinfo{
49 /Author (\@author)
50 /Title (\@title)
51 }
52 \endgroup
53 \fi
54 \begin{flushright}%
55 \sphinxlogo%
56 {\rm\Huge\py@HeaderFamily \@title \par}%
57 {\em\LARGE\py@HeaderFamily \py@release\releaseinfo \par}
58 \vfill
59 {\LARGE\py@HeaderFamily
60 \begin{tabular}[t]{c}
61 \@author
62 \end{tabular}
63 \par}
64 \vfill\vfill
65 {\large
66 \@date \par
67 \vfill
68 \py@authoraddress \par
69 }%
70 \end{flushright}%\par
71 \@thanks
72 \end{titlepage}%
73 \cleardoublepage%
74 \setcounter{footnote}{0}%
75 \let\thanks\relax\let\maketitle\relax
76 %\gdef\@thanks{}\gdef\@author{}\gdef\@title{}
77}
78
79
80% Catch the end of the {abstract} environment, but here make sure the abstract
81% is followed by a blank page if the 'openright' option is used.
82%
83\let\py@OldEndAbstract=\endabstract
84\renewcommand{\endabstract}{
85 \if@openright
86 \ifodd\value{page}
87 \typeout{Adding blank page after the abstract.}
88 \vfil\pagebreak
89 \fi
90 \fi
91 \py@OldEndAbstract
92}
93
94% This wraps the \tableofcontents macro with all the magic to get the spacing
95% right and have the right number of pages if the 'openright' option has been
96% used. This eliminates a fair amount of crud in the individual document files.
97%
98\let\py@OldTableofcontents=\tableofcontents
99\renewcommand{\tableofcontents}{%
100 \setcounter{page}{1}%
101 \pagebreak%
102 \pagestyle{plain}%
103 {%
104 \parskip = 0mm%
105 \py@OldTableofcontents%
106 \if@openright%
107 \ifodd\value{page}%
108 \typeout{Adding blank page after the table of contents.}%
109 \pagebreak\hspace{0pt}%
110 \fi%
111 \fi%
112 \cleardoublepage%
113 }%
114 \pagenumbering{arabic}%
115 \@ifundefined{fancyhf}{}{\pagestyle{normal}}%
116}
117
118% This is needed to get the width of the section # area wide enough in the
119% library reference. Doing it here keeps it the same for all the manuals.
120%
121\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.6em}}
122\renewcommand*\l@subsection{\@dottedtocline{2}{4.1em}{3.5em}}
Note: See TracBrowser for help on using the repository browser.