annotate Doc/texinputs/python.sty @ 22316:cc788b3b21b6 2.2

Revise the markup related to the grammar productions to increase the level of predictability. This is not really "good" markup, but is arguably better than we had before. This closes SF bug #523117.
author Fred Drake <fdrake@acm.org>
date Fri, 15 Mar 2002 23:18:05 +0000
parents 571d5b7b746c
children dc6054e5b642
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1 %
7592
09440606aac5 Oops; file copy error somewhere along the way....
Fred Drake <fdrake@acm.org>
parents: 7585
diff changeset
2 % python.sty for the Python docummentation [works only with with Latex2e]
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
3 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
4
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
5 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
6 \ProvidesPackage{python}
7737
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
7 [1998/01/11 LaTeX package (Python markup)]
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
8
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
9 \RequirePackage{longtable}
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
10
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
11 % Uncomment these two lines to ignore the paper size and make the page
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
12 % size more like a typical published manual.
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
13 %\renewcommand{\paperheight}{9in}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
14 %\renewcommand{\paperwidth}{8.5in} % typical squarish manual
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
15 %\renewcommand{\paperwidth}{7in} % O'Reilly ``Programmming Python''
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
16
7778
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
17 % These packages can be used to add marginal annotations which indicate
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
18 % index entries and labels; useful for reviewing this messy documentation!
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
19 %
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
20 %\RequirePackage{showkeys}
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
21 %\RequirePackage{showidx}
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
22
7737
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
23 % for PDF output, use maximal compression & a lot of other stuff
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
24 % (test for PDF recommended by Tanmoy Bhattacharya <tanmoy@qcd.lanl.gov>)
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
25 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
26 \newif\ifpy@doing@page@targets
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
27 \py@doing@page@targetsfalse
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
28
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
29 \newif\ifpdf\pdffalse
7737
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
30 \ifx\pdfoutput\undefined\else\ifcase\pdfoutput
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
31 \else
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
32 \pdftrue
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
33 \input{pdfcolor}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
34 \let\py@LinkColor=\NavyBlue
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
35 \let\py@NormalColor=\Black
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
36 \pdfcompresslevel=9
8306
4674cd2f6f07 Set the right page size in the PDF output.
Fred Drake <fdrake@acm.org>
parents: 8229
diff changeset
37 \pdfpagewidth=\paperwidth % page width of PDF output
4674cd2f6f07 Set the right page size in the PDF output.
Fred Drake <fdrake@acm.org>
parents: 8229
diff changeset
38 \pdfpageheight=\paperheight % page height of PDF output
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
39 %
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
40 % Pad the number with '0' to 3 digits wide so no page name is a prefix
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
41 % of any other.
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
42 %
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
43 \newcommand{\py@targetno}[1]{\ifnum#1<100 0\fi\ifnum#1<10 0\fi#1}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
44 \newcommand{\py@pageno}{\py@targetno\thepage}
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
45 %
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
46 % This definition allows the entries in the page-view of the ToC to be
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
47 % active links. Some work, some don't.
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
48 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
49 \let\py@OldContentsline=\contentsline
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
50 %
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
51 % Macro that takes two args: the name to link to and the content of
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
52 % the link. This takes care of the PDF magic, getting the colors
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
53 % the same for each link, and avoids having lots of garbage all over
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
54 % this style file.
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
55 \newcommand{\py@linkToName}[2]{%
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
56 \pdfstartlink attr{/Border [0 0 0]} goto name{#1}%
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
57 \py@LinkColor#2\py@NormalColor%
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
58 \pdfendlink%
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
59 }
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
60 % Compute the padded page number separately since we end up with a pair of
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
61 % \relax tokens; this gets the right string computed and works.
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
62 \renewcommand{\contentsline}[3]{%
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
63 \def\my@pageno{\py@targetno{#3}}%
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
64 \py@OldContentsline{#1}{\py@linkToName{page\my@pageno}{#2}}{#3}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
65 }
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
66 \AtEndDocument{
7737
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
67 \InputIfFileExists{\jobname.bkm}{\pdfcatalog{/PageMode /UseOutlines}}{}
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
68 }
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
69 \newcommand{\py@target}[1]{%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
70 \ifpy@doing@page@targets%
10451
2b1dfc13951d Use more recent option to \pdfdest to not change the zoom factor.
Fred Drake <fdrake@acm.org>
parents: 10423
diff changeset
71 {\pdfdest name{#1} xyz}%
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
72 \fi%
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
73 }
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
74 \let\py@OldLabel=\label
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
75 \renewcommand{\label}[1]{%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
76 \py@OldLabel{#1}%
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
77 \py@target{label-#1}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
78 }
8306
4674cd2f6f07 Set the right page size in the PDF output.
Fred Drake <fdrake@acm.org>
parents: 8229
diff changeset
79 % This stuff adds a page# destination to every PDF page, where # is three
4674cd2f6f07 Set the right page size in the PDF output.
Fred Drake <fdrake@acm.org>
parents: 8229
diff changeset
80 % digits wide, padded with leading zeros. This doesn't really help with
4674cd2f6f07 Set the right page size in the PDF output.
Fred Drake <fdrake@acm.org>
parents: 8229
diff changeset
81 % the frontmatter, but does fine with the body.
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
82 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
83 % This is *heavily* based on the hyperref package.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
84 %
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
85 \def\@begindvi{%
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
86 \unvbox \@begindvibox
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
87 \@hyperfixhead
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
88 }
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
89 \def\@hyperfixhead{%
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
90 \let\H@old@thehead\@thehead
8067
48e2349d11c6 Fix the broken PDF links, really this time!
Fred Drake <fdrake@acm.org>
parents: 8066
diff changeset
91 \global\def\@foo{\py@target{page\py@pageno}}%
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
92 \expandafter\ifx\expandafter\@empty\H@old@thehead
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
93 \def\H@old@thehead{\hfil}\fi
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
94 \def\@thehead{\@foo\relax\H@old@thehead}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
95 }
7737
5d7e4d20c89e Change uses of \pdfinfo and \pdfcatalog to use the new syntax from the
Fred Drake <fdrake@acm.org>
parents: 7706
diff changeset
96 \fi\fi
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
97
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
98 % Increase printable page size (copied from fullpage.sty)
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
99 \topmargin 0pt
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
100 \advance \topmargin by -\headheight
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
101 \advance \topmargin by -\headsep
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
102
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
103 % attempt to work a little better for A4 users
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
104 \textheight \paperheight
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
105 \advance\textheight by -2in
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
106
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
107 \oddsidemargin 0pt
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
108 \evensidemargin 0pt
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
109 %\evensidemargin -.25in % for ``manual size'' documents
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
110 \marginparwidth 0.5in
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
111
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
112 \textwidth \paperwidth
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
113 \advance\textwidth by -2in
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
114
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
115
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
116 % Style parameters and macros used by most documents here
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
117 \raggedbottom
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
118 \sloppy
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
119 \parindent = 0mm
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
120 \parskip = 2mm
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
121 \hbadness = 5000 % don't print trivial gripes
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
122
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
123 \pagestyle{empty} % start this way; change for
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
124 \pagenumbering{roman} % ToC & chapters
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
125
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
126 % Use this to set the font family for headers and other decor:
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
127 \newcommand{\py@HeaderFamily}{\sffamily}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
128
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
129 % Redefine the 'normal' header/footer style when using "fancyhdr" package:
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
130 \@ifundefined{fancyhf}{}{
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
131 % Use \pagestyle{normal} as the primary pagestyle for text.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
132 \fancypagestyle{normal}{
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
133 \fancyhf{}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
134 \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
135 \fancyfoot[LO]{{\py@HeaderFamily\nouppercase{\rightmark}}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
136 \fancyfoot[RE]{{\py@HeaderFamily\nouppercase{\leftmark}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
137 \renewcommand{\headrulewidth}{0pt}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
138 \renewcommand{\footrulewidth}{0.4pt}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
139 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
140 % Update the plain style so we get the page number & footer line,
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
141 % but not a chapter or section title. This is to keep the first
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
142 % page of a chapter and the blank page between chapters `clean.'
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
143 \fancypagestyle{plain}{
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
144 \fancyhf{}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
145 \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
146 \renewcommand{\headrulewidth}{0pt}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
147 \renewcommand{\footrulewidth}{0.4pt}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
148 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
149 % Redefine \cleardoublepage so that the blank page between chapters
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
150 % gets the plain style and not the fancy style. This is described
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
151 % in the documentation for the fancyhdr package by Piet von Oostrum.
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
152 \@ifundefined{chapter}{}{
7548
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
153 \renewcommand{\cleardoublepage}{
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
154 \clearpage\if@openright \ifodd\c@page\else
7548
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
155 \hbox{}
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
156 \thispagestyle{plain}
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
157 \newpage
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
158 \if@twocolumn\hbox{}\newpage\fi\fi\fi
7548
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
159 }
7eb19b1ce84d Improve separation of document class and python semantic constructs. This
Fred Drake <fdrake@acm.org>
parents: 7527
diff changeset
160 }
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
161 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
162
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
163 % This sets up the {verbatim} environment to be indented and a minipage,
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
164 % and to have all the other mostly nice properties that we want for
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
165 % code samples.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
166
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
167 \let\py@OldVerbatim=\verbatim
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
168 \let\py@OldEndVerbatim=\endverbatim
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
169 \RequirePackage{verbatim}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
170
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
171 % Variable used by begin code command
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
172 \newlength{\py@codewidth}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
173
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
174 \renewcommand{\verbatim}{%
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
175 \setlength{\parindent}{1cm}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
176 % Calculate the text width for the minipage:
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
177 \setlength{\py@codewidth}{\linewidth}%
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
178 \addtolength{\py@codewidth}{-\parindent}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
179 %
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
180 \par\indent%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
181 \begin{minipage}[t]{\py@codewidth}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
182 \small%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
183 \py@OldVerbatim%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
184 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
185 \renewcommand{\endverbatim}{%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
186 \py@OldEndVerbatim%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
187 \end{minipage}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
188 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
189
17380
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
190 % This does a similar thing for the {alltt} environment:
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
191 \RequirePackage{alltt}
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
192 \let\py@OldAllTT=\alltt
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
193 \let\py@OldEndAllTT=\endalltt
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
194
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
195 \renewcommand{\alltt}{%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
196 \setlength{\parindent}{1cm}%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
197 % Calculate the text width for the minipage:
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
198 \setlength{\py@codewidth}{\linewidth}%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
199 \addtolength{\py@codewidth}{-\parindent}%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
200 %
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
201 \par\indent%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
202 \begin{minipage}[t]{\py@codewidth}%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
203 \small%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
204 \py@OldAllTT%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
205 }
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
206 \renewcommand{\endalltt}{%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
207 \py@OldEndAllTT%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
208 \end{minipage}%
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
209 }
4622af4da9e2 Import the alltt package and wrap that environment in a similar way to
Fred Drake <fdrake@acm.org>
parents: 16966
diff changeset
210
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
211
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
212 \newcommand{\py@modulebadkey}{{--just-some-junk--}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
213
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
214
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
215 %% Lots of index-entry generation support.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
216
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
217 % Command to wrap around stuff that refers to function / module /
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
218 % attribute names in the index. Default behavior: like \code{}. To
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
219 % just keep the index entries in the roman font, uncomment the second
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
220 % definition; it matches O'Reilly style more.
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
221 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
222 \newcommand{\py@idxcode}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
223 %\renewcommand{\py@idxcode}[1]{#1}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
224
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
225 % Command to generate two index entries (using subentries)
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
226 \newcommand{\indexii}[2]{\index{#1!#2}\index{#2!#1}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
227
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
228 % And three entries (using only one level of subentries)
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
229 \newcommand{\indexiii}[3]{\index{#1!#2 #3}\index{#2!#3, #1}\index{#3!#1 #2}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
230
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
231 % And four (again, using only one level of subentries)
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
232 \newcommand{\indexiv}[4]{
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
233 \index{#1!#2 #3 #4}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
234 \index{#2!#3 #4, #1}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
235 \index{#3!#4, #1 #2}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
236 \index{#4!#1 #2 #3}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
237 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
238
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
239 % Command to generate a reference to a function, statement, keyword,
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
240 % operator.
8229
df752c08b462 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8190
diff changeset
241 \newcommand{\kwindex}[1]{\indexii{keyword}{#1@{\py@idxcode{#1}}}}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
242 \newcommand{\stindex}[1]{\indexii{statement}{#1@{\py@idxcode{#1}}}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
243 \newcommand{\opindex}[1]{\indexii{operator}{#1@{\py@idxcode{#1}}}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
244 \newcommand{\exindex}[1]{\indexii{exception}{#1@{\py@idxcode{#1}}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
245 \newcommand{\obindex}[1]{\indexii{object}{#1}}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
246 \newcommand{\bifuncindex}[1]{%
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
247 \index{#1@{\py@idxcode{#1()}} (built-in function)}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
248
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
249 % Add an index entry for a module
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
250 \newcommand{\py@refmodule}[2]{\index{#1@{\py@idxcode{#1}} (#2module)}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
251 \newcommand{\refmodindex}[1]{\py@refmodule{#1}{}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
252 \newcommand{\refbimodindex}[1]{\py@refmodule{#1}{built-in }}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
253 \newcommand{\refexmodindex}[1]{\py@refmodule{#1}{extension }}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
254 \newcommand{\refstmodindex}[1]{\py@refmodule{#1}{standard }}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
255
9868
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
256 % Refer to a module's documentation using a hyperlink of the module's
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
257 % name, at least if we're building PDF:
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
258 \ifpdf
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
259 \newcommand{\refmodule}[2][\py@modulebadkey]{%
9868
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
260 \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi%
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
261 \py@linkToName{label-module-\py@modulekey}{\module{#2}}%
9868
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
262 }
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
263 \else
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
264 \newcommand{\refmodule}[2][\py@modulebadkey]{\module{#2}}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
265 \fi
9868
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
266
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
267 % support for the module index
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
268 \newif\ifpy@UseModuleIndex
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
269 \py@UseModuleIndexfalse
7617
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
270
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
271 \newcommand{\makemodindex}{
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
272 \newwrite\modindexfile
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
273 \openout\modindexfile=mod\jobname.idx
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
274 \py@UseModuleIndextrue
7617
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
275 }
068a6942fe1a Adjust the index support a bit to make it easier to deal with module index.
Fred Drake <fdrake@acm.org>
parents: 7597
diff changeset
276
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
277 % Add the defining entry for a module
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
278 \newcommand{\py@modindex}[2]{%
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
279 \renewcommand{\py@thismodule}{#1}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
280 \setindexsubitem{(in module #1)}%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
281 \index{#1@{\py@idxcode{#1}} (#2module)|textbf}%
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
282 \ifpy@UseModuleIndex%
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
283 \@ifundefined{py@modplat@\py@thismodulekey}{
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
284 \write\modindexfile{\protect\indexentry{#1@{\texttt{#1}}}{\thepage}}%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
285 }{\write\modindexfile{\protect\indexentry{#1@{\texttt{#1} %
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
286 \emph{(\py@platformof[\py@thismodulekey]{})}}}{\thepage}}%
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
287 }
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
288 \fi%
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
289 }
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
290
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
291 % *** XXX *** THE NEXT FOUR MACROS ARE NOW OBSOLETE !!! ***
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
292
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
293 % built-in & Python modules in the main distribution
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
294 \newcommand{\bimodindex}[1]{\py@modindex{#1}{built-in }%
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
295 \typeout{*** MACRO bimodindex IS OBSOLETE -- USE declaremodule INSTEAD!}}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
296 \newcommand{\stmodindex}[1]{\py@modindex{#1}{standard }%
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
297 \typeout{*** MACRO stmodindex IS OBSOLETE -- USE declaremodule INSTEAD!}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
298
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
299 % Python & extension modules outside the main distribution
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
300 \newcommand{\modindex}[1]{\py@modindex{#1}{}%
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
301 \typeout{*** MACRO modindex IS OBSOLETE -- USE declaremodule INSTEAD!}}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
302 \newcommand{\exmodindex}[1]{\py@modindex{#1}{extension }%
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
303 \typeout{*** MACRO exmodindex IS OBSOLETE -- USE declaremodule INSTEAD!}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
304
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
305 % Additional string for an index entry
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
306 \newif\ifpy@usingsubitem\py@usingsubitemfalse
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
307 \newcommand{\py@indexsubitem}{}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
308 \newcommand{\setindexsubitem}[1]{\renewcommand{\py@indexsubitem}{ #1}%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
309 \py@usingsubitemtrue}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
310 \newcommand{\ttindex}[1]{%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
311 \ifpy@usingsubitem
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
312 \index{#1@{\py@idxcode{#1}}\py@indexsubitem}%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
313 \else%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
314 \index{#1@{\py@idxcode{#1}}}%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
315 \fi%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
316 }
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
317 \newcommand{\withsubitem}[2]{%
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
318 \begingroup%
15362
9a17cdcd3320 Fix \withsubitem so that it actually works if the only indexing macro in
Fred Drake <fdrake@acm.org>
parents: 15360
diff changeset
319 \def\ttindex##1{\index{##1@{\py@idxcode{##1}} #1}}%
9a17cdcd3320 Fix \withsubitem so that it actually works if the only indexing macro in
Fred Drake <fdrake@acm.org>
parents: 15360
diff changeset
320 #2%
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
321 \endgroup%
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
322 }
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
323
7801
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
324
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
325 % Module synopsis processing -----------------------------------------------
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
326 %
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
327 \newcommand{\py@thisclass}{}
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
328 \newcommand{\py@thismodule}{}
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
329 \newcommand{\py@thismodulekey}{}
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
330 \newcommand{\py@thismoduletype}{}
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
331
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
332 \newcommand{\py@standardIndexModule}[1]{\py@modindex{#1}{standard }}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
333 \newcommand{\py@builtinIndexModule}[1]{\py@modindex{#1}{built-in }}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
334 \newcommand{\py@extensionIndexModule}[1]{\py@modindex{#1}{extension }}
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
335 \newcommand{\py@IndexModule}[1]{\py@modindex{#1}{}}
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
336
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
337 \newif\ifpy@HaveModSynopsis \py@HaveModSynopsisfalse
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
338 \newif\ifpy@ModSynopsisFileIsOpen \py@ModSynopsisFileIsOpenfalse
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
339 \newif\ifpy@HaveModPlatform \py@HaveModPlatformfalse
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
340
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
341 % \declaremodule[key]{type}{name}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
342 \newcommand{\declaremodule}[3][\py@modulebadkey]{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
343 \py@openModSynopsisFile
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
344 \renewcommand{\py@thismoduletype}{#2}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
345 \ifx\py@modulebadkey#1
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
346 \renewcommand{\py@thismodulekey}{#3}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
347 \else
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
348 \renewcommand{\py@thismodulekey}{#1}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
349 \fi
10855
28887f40e344 \declaremodule: Make this more robust. Only attempt to add an index
Fred Drake <fdrake@acm.org>
parents: 10846
diff changeset
350 \@ifundefined{py@#2IndexModule}{%
28887f40e344 \declaremodule: Make this more robust. Only attempt to add an index
Fred Drake <fdrake@acm.org>
parents: 10846
diff changeset
351 \typeout{*** MACRO declaremodule called with unknown module type: `#2'}
10856
be0ac5abe83b \declaremodule: Typo.
Fred Drake <fdrake@acm.org>
parents: 10855
diff changeset
352 \py@IndexModule{#3}%
10855
28887f40e344 \declaremodule: Make this more robust. Only attempt to add an index
Fred Drake <fdrake@acm.org>
parents: 10846
diff changeset
353 }{%
28887f40e344 \declaremodule: Make this more robust. Only attempt to add an index
Fred Drake <fdrake@acm.org>
parents: 10846
diff changeset
354 \csname py@#2IndexModule\endcsname{#3}%
28887f40e344 \declaremodule: Make this more robust. Only attempt to add an index
Fred Drake <fdrake@acm.org>
parents: 10846
diff changeset
355 }
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
356 \label{module-\py@thismodulekey}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
357 }
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
358 \newif\ifpy@ModPlatformFileIsOpen \py@ModPlatformFileIsOpenfalse
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
359 \newcommand{\py@ModPlatformFilename}{\jobname.pla}
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
360 \newcommand{\platform}[1]{
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
361 \ifpy@ModPlatformFileIsOpen\else
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
362 \newwrite\py@ModPlatformFile
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
363 \openout\py@ModPlatformFile=\py@ModPlatformFilename
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
364 \py@ModPlatformFileIsOpentrue
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
365 \fi
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
366 }
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
367 \InputIfFileExists{\jobname.pla}{}{}
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
368 \newcommand{\py@platformof}[2][\py@modulebadkey]{%
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
369 \ifx\py@modulebadkey#1 \def\py@key{#2}%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
370 \else \def\py@key{#1}%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
371 \fi%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
372 \csname py@modplat@\py@key\endcsname%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
373 }
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
374 \newcommand{\ignorePlatformAnnotation}[1]{}
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
375
8916
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
376 % \moduleauthor{name}{email}
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
377 \newcommand{\moduleauthor}[2]{}
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
378
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
379 % \sectionauthor{name}{email}
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
380 \newcommand{\sectionauthor}[2]{}
6b633df41e59 \moduleauthor,
Fred Drake <fdrake@acm.org>
parents: 8779
diff changeset
381
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
382
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
383 \newcommand{\py@defsynopsis}{Module has no synopsis.}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
384 \newcommand{\py@modulesynopsis}{\py@defsynopsis}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
385 \newcommand{\modulesynopsis}[1]{
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
386 \py@HaveModSynopsistrue
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
387 \renewcommand{\py@modulesynopsis}{#1}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
388 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
389
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
390 % define the file
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
391 \newwrite\py@ModSynopsisFile
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
392
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
393 % hacked from \addtocontents from latex.ltx:
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
394 \long\def\py@writeModSynopsisFile#1{%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
395 \protected@write\py@ModSynopsisFile%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
396 {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
397 {\string#1}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
398 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
399 \newcommand{\py@closeModSynopsisFile}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
400 \ifpy@ModSynopsisFileIsOpen
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
401 \closeout\py@ModSynopsisFile
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
402 \py@ModSynopsisFileIsOpenfalse
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
403 \fi
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
404 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
405 \newcommand{\py@openModSynopsisFile}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
406 \ifpy@ModSynopsisFileIsOpen\else
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
407 \openout\py@ModSynopsisFile=\py@ModSynopsisFilename
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
408 \py@ModSynopsisFileIsOpentrue
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
409 \fi
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
410 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
411
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
412 \newcommand{\py@ProcessModSynopsis}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
413 \ifpy@HaveModSynopsis
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
414 \py@writeModSynopsisFile{\modulesynopsis%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
415 {\py@thismodulekey}{\py@thismodule}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
416 {\py@thismoduletype}{\py@modulesynopsis}}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
417 \py@HaveModSynopsisfalse
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
418 \fi
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
419 \renewcommand{\py@modulesynopsis}{\py@defsynopsis}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
420 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
421 \AtEndDocument{\py@ProcessModSynopsis\py@closeModSynopsisFile}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
422
10328
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
423
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
424 \long\def\py@writeModPlatformFile#1{%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
425 \protected@write\py@ModPlatformFile%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
426 {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble}%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
427 {\string#1}%
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
428 }
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
429
f438c6e2b6c1 Added support for \platform, \platformof, and \ignorePlatformAnnotation.
Fred Drake <fdrake@acm.org>
parents: 10077
diff changeset
430
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
431 \newcommand{\localmoduletable}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
432 \IfFileExists{\py@ModSynopsisFilename}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
433 \begin{synopsistable}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
434 \input{\py@ModSynopsisFilename}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
435 \end{synopsistable}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
436 }{}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
437 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
438
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
439 \ifpdf
9968
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
440 \newcommand{\py@ModSynopsisSummary}[4]{%
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
441 \py@linkToName{label-module-#1}{\bfcode{#2}} & #4\\
485502c42d89 \py@linkToName: New macro to consolidate support for most internal
Fred Drake <fdrake@acm.org>
parents: 9958
diff changeset
442 }
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
443 \else
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
444 \newcommand{\py@ModSynopsisSummary}[4]{\bfcode{#2} & #4\\}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
445 \fi
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
446 \newenvironment{synopsistable}{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
447 % key, name, type, synopsis
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
448 \let\modulesynopsis=\py@ModSynopsisSummary
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
449 \begin{tabular}{ll}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
450 }{
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
451 \end{tabular}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
452 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
453 %
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
454 % --------------------------------------------------------------------------
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
455
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
456
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
457 \newcommand{\py@reset}{
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
458 \py@usingsubitemfalse
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
459 \py@ProcessModSynopsis
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
460 \renewcommand{\py@thisclass}{}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
461 \renewcommand{\py@thismodule}{}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
462 \renewcommand{\py@thismodulekey}{}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
463 \renewcommand{\py@thismoduletype}{}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
464 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
465
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
466 % Augment the sectioning commands used to get our own font family in place,
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
467 % and reset some internal data items:
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
468 \renewcommand{\section}{\py@reset%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
469 \@startsection{section}{1}{\z@}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
470 {-3.5ex \@plus -1ex \@minus -.2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
471 {2.3ex \@plus.2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
472 {\reset@font\Large\py@HeaderFamily}}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
473 \renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
474 {-3.25ex\@plus -1ex \@minus -.2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
475 {1.5ex \@plus .2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
476 {\reset@font\large\py@HeaderFamily}}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
477 \renewcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
478 {-3.25ex\@plus -1ex \@minus -.2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
479 {1.5ex \@plus .2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
480 {\reset@font\normalsize\py@HeaderFamily}}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
481 \renewcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
482 {3.25ex \@plus1ex \@minus.2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
483 {-1em}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
484 {\reset@font\normalsize\py@HeaderFamily}}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
485 \renewcommand{\subparagraph}{\@startsection{subparagraph}{5}{\parindent}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
486 {3.25ex \@plus1ex \@minus .2ex}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
487 {-1em}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
488 {\reset@font\normalsize\py@HeaderFamily}}
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
489
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
490
8726
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
491 % This gets the underscores closer to the right width; the only change
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
492 % from standard LaTeX is the width specified.
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
493
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
494 \DeclareTextCommandDefault{\textunderscore}{%
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
495 \leavevmode \kern.06em\vbox{\hrule\@width.55em}}
74ea4dfda82d \textunderscore: Re-define with a width that's more appropriate for the
Fred Drake <fdrake@acm.org>
parents: 8713
diff changeset
496
8713
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
497 % Underscore hack (only act like subscript operator if in math mode)
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
498 %
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
499 % The following is due to Mark Wooding (the old version didn't work with
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
500 % Latex 2e.
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
501
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
502 \DeclareRobustCommand\hackscore{%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
503 \ifmmode_\else\textunderscore\fi%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
504 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
505 \begingroup
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
506 \catcode`\_\active
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
507 \def\next{%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
508 \AtBeginDocument{\catcode`\_\active\def_{\hackscore{}}}%
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
509 }
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
510 \expandafter\endgroup\next
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
511
ed8f4e2eb11a Lots of new stuff for "module synopsis support." Public interface consists
Fred Drake <fdrake@acm.org>
parents: 8609
diff changeset
512
7801
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
513 % Now for a lot of semantically-loaded environments that do a ton of magical
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
514 % things to get the right formatting and index entries for the stuff in
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
515 % Python modules and C API.
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
516
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
517
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
518 % {fulllineitems} is used in one place in libregex.tex, but is really for
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
519 % internal use in this file.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
520 %
9078
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
521 \newcommand{\py@itemnewline}[1]{%
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
522 \@tempdima\linewidth%
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
523 \advance\@tempdima \leftmargin\makebox[\@tempdima][l]{#1}%
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
524 }
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
525
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
526 \newenvironment{fulllineitems}{
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
527 \begin{list}{}{\labelwidth \leftmargin \labelsep 0pt
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
528 \rightmargin 0pt \topsep -\parskip \partopsep \parskip
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
529 \itemsep -\parsep
9078
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
530 \let\makelabel=\py@itemnewline}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
531 }{\end{list}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
532
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
533 % \optional is mostly for use in the arguments parameters to the various
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
534 % {*desc} environments defined below, but may be used elsewhere. Known to
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
535 % be used in the debugger chapter.
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
536 %
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
537 % Typical usage:
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
538 %
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
539 % \begin{funcdesc}{myfunc}{reqparm\optional{, optparm}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
540 % ^^^ ^^^
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
541 % No space here No space here
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
542 %
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
543 % When a function has multiple optional parameters, \optional should be
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
544 % nested, not chained. This is right:
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
545 %
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
546 % \begin{funcdesc}{myfunc}{\optional{parm1\optional{, parm2}}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
547 %
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
548 \let\py@badkey=\@undefined
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
549
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
550 \newcommand{\optional}[1]{%
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
551 {\textnormal{\Large[}}{#1}\hspace{0.5mm}{\textnormal{\Large]}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
552
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
553 % This can be used when a function or method accepts an varying number
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
554 % of arguments, such as by using the *args syntax in the parameter list.
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
555 \newcommand{\py@moreargs}{...}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
556
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
557 % This can be used when you don't want to document the parameters to a
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
558 % function or method, but simply state that it's an alias for
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
559 % something else.
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
560 \newcommand{\py@unspecified}{...}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
561
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
562 % C functions ------------------------------------------------------------
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
563 % \begin{cfuncdesc}[refcount]{type}{name}{arglist}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
564 % Note that the [refcount] slot should only be filled in by
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
565 % tools/anno-api.py; it pulls the value from the refcounts database.
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
566 \newenvironment{cfuncdesc}[4][\py@badkey]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
567 \begin{fulllineitems}
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
568 \item[\code{#2 \bfcode{#3}(\py@varvars{#4})}\index{#3@{\py@idxcode{#3()}}}]
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
569 \ifx#1\@undefined\else%
12346
24d4116897dd cfuncdesc environment:
Fred Drake <fdrake@acm.org>
parents: 12215
diff changeset
570 \emph{Return value: \textbf{#1}.}\\
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
571 \fi
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
572 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
573
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
574 % C variables ------------------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
575 % \begin{cvardesc}{type}{name}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
576 \newenvironment{cvardesc}[2]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
577 \begin{fulllineitems}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
578 \item[\code{#1 \bfcode{#2}}\index{#2@{\py@idxcode{#2}}}]
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
579 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
580
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
581 % C data types -----------------------------------------------------------
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
582 % \begin{ctypedesc}[index name]{typedef name}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
583 \newenvironment{ctypedesc}[2][\py@badkey]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
584 \begin{fulllineitems}
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
585 \item[\bfcode{#2}%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
586 \ifx#1\@undefined%
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
587 \index{#2@{\py@idxcode{#2}} (C type)}
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
588 \else%
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
589 \index{#2@{\py@idxcode{#1}} (C type)}
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
590 \fi]
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
591 }{\end{fulllineitems}}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
592
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
593 % Funky macros -----------------------------------------------------------
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
594 % \begin{csimplemacro}{name}
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
595 % -- "simple" because it has no args; NOT for constant definitions!
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
596 \newenvironment{csimplemacrodesc}[1]{
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
597 \begin{fulllineitems}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
598 \item[\bfcode{#1}\index{#1@{\py@idxcode{#1}} (macro)}]
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
599 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
600
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
601 % simple functions (not methods) -----------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
602 % \begin{funcdesc}{name}{args}
15362
9a17cdcd3320 Fix \withsubitem so that it actually works if the only indexing macro in
Fred Drake <fdrake@acm.org>
parents: 15360
diff changeset
603 \newcommand{\funcline}[2]{%
9a17cdcd3320 Fix \withsubitem so that it actually works if the only indexing macro in
Fred Drake <fdrake@acm.org>
parents: 15360
diff changeset
604 \funclineni{#1}{#2}%
9a17cdcd3320 Fix \withsubitem so that it actually works if the only indexing macro in
Fred Drake <fdrake@acm.org>
parents: 15360
diff changeset
605 \index{#1@{\py@idxcode{#1()}} (in module \py@thismodule)}}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
606 \newenvironment{funcdesc}[2]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
607 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
608 \funcline{#1}{#2}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
609 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
610
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
611 % similar to {funcdesc}, but doesn't add to the index
8075
e39145a13096 Hide \varvars from "public" interface.
Fred Drake <fdrake@acm.org>
parents: 8067
diff changeset
612 \newcommand{\funclineni}[2]{\item[\code{\bfcode{#1}(\py@varvars{#2})}]}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
613 \newenvironment{funcdescni}[2]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
614 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
615 \funclineni{#1}{#2}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
616 }{\end{fulllineitems}}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
617
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
618 % classes ----------------------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
619 % \begin{classdesc}{name}{constructor args}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
620 \newenvironment{classdesc}[2]{
9524
c6a1103efa8a Minor nit that fixes a bunch of indexing: the way the classdesc
Fred Drake <fdrake@acm.org>
parents: 9078
diff changeset
621 % Using \renewcommand doesn't work for this, for unknown reasons:
c6a1103efa8a Minor nit that fixes a bunch of indexing: the way the classdesc
Fred Drake <fdrake@acm.org>
parents: 9078
diff changeset
622 \global\def\py@thisclass{#1}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
623 \begin{fulllineitems}
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
624 \item[\strong{class }\code{\bfcode{#1}(\py@varvars{#2})}%
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
625 \index{#1@{\py@idxcode{#1}} (class in \py@thismodule)}]
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
626 }{\end{fulllineitems}}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
627
17778
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
628 % \begin{classdesc*}{name}
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
629 \newenvironment{classdesc*}[1]{
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
630 % Using \renewcommand doesn't work for this, for unknown reasons:
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
631 \global\def\py@thisclass{#1}
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
632 \begin{fulllineitems}
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
633 \item[\strong{class }\code{\bfcode{#1}}%
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
634 \index{#1@{\py@idxcode{#1}} (class in \py@thismodule)}]
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
635 }{\end{fulllineitems}}
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
636
14490
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
637 % \begin{excclassdesc}{name}{constructor args}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
638 % but indexes as an exception
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
639 \newenvironment{excclassdesc}[2]{
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
640 % Using \renewcommand doesn't work for this, for unknown reasons:
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
641 \global\def\py@thisclass{#1}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
642 \begin{fulllineitems}
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
643 \item[\strong{exception }\code{\bfcode{#1}(\py@varvars{#2})}%
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
644 \index{#1@{\py@idxcode{#1}} (exception in \py@thismodule)}]
14490
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
645 }{\end{fulllineitems}}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
646
17778
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
647 % There is no corresponding {excclassdesc*} environment. To describe
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
648 % a class exception without parameters, use the {excdesc} environment.
b4b3657cb1fa Define a new environment, classdesc*, which can be used to document a
Fred Drake <fdrake@acm.org>
parents: 17560
diff changeset
649
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
650
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
651 \let\py@classbadkey=\@undefined
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
652
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
653 % object method ----------------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
654 % \begin{methoddesc}[classname]{methodname}{args}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
655 \newcommand{\methodline}[3][\@undefined]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
656 \methodlineni{#2}{#3}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
657 \ifx#1\@undefined
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
658 \index{#2@{\py@idxcode{#2()}} (\py@thisclass\ method)}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
659 \else
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
660 \index{#2@{\py@idxcode{#2()}} (#1 method)}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
661 \fi
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
662 }
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
663 \newenvironment{methoddesc}[3][\@undefined]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
664 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
665 \ifx#1\@undefined
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
666 \methodline{#2}{#3}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
667 \else
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
668 \def\py@thisclass{#1}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
669 \methodline{#2}{#3}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
670 \fi
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
671 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
672
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
673 % similar to {methoddesc}, but doesn't add to the index
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
674 % (never actually uses the optional argument)
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
675 \newcommand{\methodlineni}[3][\py@classbadkey]{%
8075
e39145a13096 Hide \varvars from "public" interface.
Fred Drake <fdrake@acm.org>
parents: 8067
diff changeset
676 \item[\code{\bfcode{#2}(\py@varvars{#3})}]}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
677 \newenvironment{methoddescni}[3][\py@classbadkey]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
678 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
679 \methodlineni{#2}{#3}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
680 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
681
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
682 % object data attribute --------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
683 % \begin{memberdesc}[classname]{membername}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
684 \newcommand{\memberline}[2][\py@classbadkey]{%
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
685 \ifx#1\@undefined
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
686 \memberlineni{#2}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
687 \index{#2@{\py@idxcode{#2}} (\py@thisclass\ attribute)}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
688 \else
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
689 \memberlineni{#2}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
690 \index{#2@{\py@idxcode{#2}} (#1 attribute)}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
691 \fi
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
692 }
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
693 \newenvironment{memberdesc}[2][\py@classbadkey]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
694 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
695 \ifx#1\@undefined
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
696 \memberline{#2}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
697 \else
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
698 \def\py@thisclass{#1}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
699 \memberline{#2}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
700 \fi
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
701 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
702
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
703 % similar to {memberdesc}, but doesn't add to the index
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
704 % (never actually uses the optional argument)
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
705 \newcommand{\memberlineni}[2][\py@classbadkey]{\item[\bfcode{#2}]}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
706 \newenvironment{memberdescni}[2][\py@classbadkey]{
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
707 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
708 \memberlineni{#2}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
709 }{\end{fulllineitems}}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
710
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
711 % For exceptions: --------------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
712 % \begin{excdesc}{name}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
713 % -- for constructor information, use excclassdesc instead
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
714 \newenvironment{excdesc}[1]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
715 \begin{fulllineitems}
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
716 \item[\strong{exception }\bfcode{#1}%
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
717 \index{#1@{\py@idxcode{#1}} (exception in \py@thismodule)}]
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
718 }{\end{fulllineitems}}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
719
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
720 % Module data or constants: ----------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
721 % \begin{datadesc}{name}
15360
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
722 \newcommand{\dataline}[1]{%
74e1d79520fd Avoid using \withsubitem and \ttindex internally; they have not proven
Fred Drake <fdrake@acm.org>
parents: 15310
diff changeset
723 \datalineni{#1}\index{#1@{\py@idxcode{#1}} (data in \py@thismodule)}}
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
724 \newenvironment{datadesc}[1]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
725 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
726 \dataline{#1}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
727 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
728
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
729 % similar to {datadesc}, but doesn't add to the index
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
730 \newcommand{\datalineni}[1]{\item[\bfcode{#1}]\nopagebreak}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
731 \newenvironment{datadescni}[1]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
732 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
733 \datalineni{#1}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
734 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
735
7764
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
736 % bytecode instruction ---------------------------------------------------
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
737 % \begin{opcodedesc}{name}{var}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
738 % -- {var} may be {}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
739 \newenvironment{opcodedesc}[2]{
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
740 \begin{fulllineitems}
9d0dc11775a4 Add comments about several of the environments.
Fred Drake <fdrake@acm.org>
parents: 7740
diff changeset
741 \item[\bfcode{#1}\quad\var{#2}]
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
742 }{\end{fulllineitems}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
743
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
744
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
745 \newcommand{\nodename}[1]{\label{#1}}
7740
423be7cd0479 Don't use the fncychap package for HOWTO documents; appendices break. Still
Fred Drake <fdrake@acm.org>
parents: 7737
diff changeset
746
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
747 % For these commands, use \command{} to get the typography right, not
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
748 % {\command}. This works better with the texinfo translation.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
749 \newcommand{\ABC}{{\sc abc}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
750 \newcommand{\UNIX}{{\sc Unix}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
751 \newcommand{\POSIX}{POSIX}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
752 \newcommand{\ASCII}{{\sc ascii}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
753 \newcommand{\Cpp}{C\protect\raisebox{.18ex}{++}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
754 \newcommand{\C}{C}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
755 \newcommand{\EOF}{{\sc eof}}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
756 \newcommand{\NULL}{\constant{NULL}}
18230
b893d12045cb \infinity,
Fred Drake <fdrake@acm.org>
parents: 18180
diff changeset
757 \newcommand{\infinity}{\ensuremath{\infty}}
b893d12045cb \infinity,
Fred Drake <fdrake@acm.org>
parents: 18180
diff changeset
758 \newcommand{\plusminus}{\ensuremath{\pm}}
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
759 \newcommand{\menuselection}[1]{{\def\sub{ \ensuremath{>} }#1}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
760
7801
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
761 % Also for consistency: spell Python "Python", not "python"!
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
762
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
763 % code is the most difficult one...
13234
79f8f6b963c2 Try to make sure \code always uses roman (non-italic) text.
Fred Drake <fdrake@acm.org>
parents: 12638
diff changeset
764 \newcommand{\code}[1]{\textrm{\@vobeyspaces\@noligs\def\{{\char`\{}\def\}{\char`\}}\def\~{\char`\~}\def\^{\char`\^}\def\e{\char`\\}\def\${\char`\$}\def\#{\char`\#}\def\&{\char`\&}\def\%{\char`\%}%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
765 \texttt{#1}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
766
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
767 \newcommand{\bfcode}[1]{\code{\bfseries#1}} % bold-faced code font
8609
ce295bfacef3 Fix the \kbd definition so it didn't leave the courier face on.
Fred Drake <fdrake@acm.org>
parents: 8396
diff changeset
768 \newcommand{\kbd}[1]{\code{#1}}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
769 \newcommand{\samp}[1]{`\code{#1}'}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
770 % This weird definition of \var{} allows it to always appear in roman
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
771 % italics, and won't get funky in code fragments when we play around
9542
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
772 % with fonts. This also works directly in math mode.
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
773 \newcommand{\var}[1]{%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
774 \ifmmode%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
775 \hbox{\normalsize\textrm{\textit{#1\/}}}%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
776 \else%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
777 \normalsize\textrm{\textit{#1\/}}%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
778 \fi%
1437c2335b3b Make \var work correctly in math mode.
Fred Drake <fdrake@acm.org>
parents: 9524
diff changeset
779 }
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
780 \renewcommand{\emph}[1]{{\em #1}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
781 \newcommand{\dfn}[1]{\emph{#1}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
782 \newcommand{\strong}[1]{{\bf #1}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
783 % let's experiment with a new font:
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
784 \newcommand{\file}[1]{`{\small\textsf{#1}}'}
10770
fb1733b6bef5 \filenq: Like \file, but don't use single-quotes; this looks better
Fred Drake <fdrake@acm.org>
parents: 10451
diff changeset
785 \newcommand{\filenq}[1]{{\small\textsf{#1}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
786
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
787 % Use this def/redef approach for \url{} since hyperref defined this already,
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
788 % but only if we actually used hyperref:
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
789 \ifpdf
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
790 \newcommand{\url}[1]{{%
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
791 \pdfstartlink attr{/Border [0 0 0]} user{/S /URI /URI (#1)}%
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
792 \py@LinkColor% color of the link text
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
793 \small\sf #1%
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
794 \py@NormalColor% Turn it back off; these are declarative
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
795 \pdfendlink}% and don't appear bound to the current
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
796 }% formatting "box".
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
797 \else
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
798 \newcommand{\url}[1]{\mbox{\small\textsf{#1}}}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
799 \fi
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
800 \newcommand{\email}[1]{{\small\textsf{#1}}}
7778
b17d200edf62 Added some comments.
Fred Drake <fdrake@acm.org>
parents: 7764
diff changeset
801 \newcommand{\newsgroup}[1]{{\small\textsf{#1}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
802
13834
4aebd0f2a062 \py@varvars: Merge the various definitions to be the simplist one that
Fred Drake <fdrake@acm.org>
parents: 13234
diff changeset
803 \newcommand{\py@varvars}[1]{{%
12215
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
804 {\let\unspecified=\py@unspecified%
774817285b8c Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents: 11450
diff changeset
805 \let\moreargs=\py@moreargs%
13834
4aebd0f2a062 \py@varvars: Merge the various definitions to be the simplist one that
Fred Drake <fdrake@acm.org>
parents: 13234
diff changeset
806 \var{#1}}}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
807
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
808 % I'd really like to get rid of this!
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
809 \newif\iftexi\texifalse
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
810
8779
9138272c1fe6 Define stuff to allow simple HTML-only selection using TeX's \if<foo>...\fi
Fred Drake <fdrake@acm.org>
parents: 8762
diff changeset
811 % This is used to get l2h to put the copyright and abstract on
9138272c1fe6 Define stuff to allow simple HTML-only selection using TeX's \if<foo>...\fi
Fred Drake <fdrake@acm.org>
parents: 8762
diff changeset
812 % a separate HTML page.
9138272c1fe6 Define stuff to allow simple HTML-only selection using TeX's \if<foo>...\fi
Fred Drake <fdrake@acm.org>
parents: 8762
diff changeset
813 \newif\ifhtml\htmlfalse
9138272c1fe6 Define stuff to allow simple HTML-only selection using TeX's \if<foo>...\fi
Fred Drake <fdrake@acm.org>
parents: 8762
diff changeset
814
9138272c1fe6 Define stuff to allow simple HTML-only selection using TeX's \if<foo>...\fi
Fred Drake <fdrake@acm.org>
parents: 8762
diff changeset
815
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
816 % These should be used for all references to identifiers which are
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
817 % used to refer to instances of specific language constructs. See the
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
818 % names for specific semantic assignments.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
819 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
820 % For now, don't do anything really fancy with them; just use them as
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
821 % logical markup. This might change in the future.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
822 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
823 \newcommand{\module}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
824 \newcommand{\keyword}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
825 \newcommand{\exception}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
826 \newcommand{\class}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
827 \newcommand{\function}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
828 \newcommand{\member}[1]{\texttt{#1}}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
829 \newcommand{\method}[1]{\texttt{#1}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
830
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
831 \newcommand{\pytype}[1]{#1} % built-in Python type
7801
047996666c81 Removed an obsolete hack that's been commented out for a long time.
Fred Drake <fdrake@acm.org>
parents: 7792
diff changeset
832
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
833 \newcommand{\cfunction}[1]{\texttt{#1}}
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
834 \newcommand{\ctype}[1]{\texttt{#1}} % C struct or typedef name
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
835 \newcommand{\cdata}[1]{\texttt{#1}} % C variable, typically global
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
836
20113
12a787fb71df Move the styling for the HTML version of \mailheader into the CSS file.
Fred Drake <fdrake@acm.org>
parents: 19412
diff changeset
837 \newcommand{\mailheader}[1]{{\small\textsf{#1:}}}
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
838 \newcommand{\mimetype}[1]{{\small\textsf{#1}}}
7670
8e6a58019887 \regexp{}: Rewritten to look like Freidl's book. Too rip-off?
Fred Drake <fdrake@acm.org>
parents: 7659
diff changeset
839 % The \! is a "negative thin space" in math mode.
8e6a58019887 \regexp{}: Rewritten to look like Freidl's book. Too rip-off?
Fred Drake <fdrake@acm.org>
parents: 7659
diff changeset
840 \newcommand{\regexp}[1]{%
8e6a58019887 \regexp{}: Rewritten to look like Freidl's book. Too rip-off?
Fred Drake <fdrake@acm.org>
parents: 7659
diff changeset
841 {\tiny$^{^\lceil}\!\!$%
8e6a58019887 \regexp{}: Rewritten to look like Freidl's book. Too rip-off?
Fred Drake <fdrake@acm.org>
parents: 7659
diff changeset
842 {\normalsize\code{#1}}%
7850
db1e49d51fe1 Increase space between the end of a regexp and the little right floor symbol
Fred Drake <fdrake@acm.org>
parents: 7801
diff changeset
843 $\!\rfloor\!$%
7670
8e6a58019887 \regexp{}: Rewritten to look like Freidl's book. Too rip-off?
Fred Drake <fdrake@acm.org>
parents: 7659
diff changeset
844 }}
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
845 \newcommand{\envvar}[1]{%
16118
64545c986b98 Remove the dollar sign from the formatting of environment variables --
Fred Drake <fdrake@acm.org>
parents: 15362
diff changeset
846 #1%
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
847 \index{#1}%
16118
64545c986b98 Remove the dollar sign from the formatting of environment variables --
Fred Drake <fdrake@acm.org>
parents: 15362
diff changeset
848 \index{environment variables!{#1}}%
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
849 }
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
850 \newcommand{\makevar}[1]{#1} % variable in a Makefile
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
851 \newcommand{\character}[1]{\samp{#1}}
7659
869373fa0bf8 \withsubitem{}: New macro. Change indexsubitem temporarily for another
Fred Drake <fdrake@acm.org>
parents: 7617
diff changeset
852
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
853 % constants defined in Python modules or C headers, not language constants:
16966
38e17a089492 Label classes and exceptions explicitly in the documentation (for their
Fred Drake <fdrake@acm.org>
parents: 16118
diff changeset
854 \newcommand{\constant}[1]{\code{#1}} % manifest constant, not syntactic
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
855
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
856 \newcommand{\manpage}[2]{{\emph{#1}(#2)}}
14490
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
857 \newcommand{\pep}[1]{PEP #1\index{Python Enhancement Proposals!PEP #1}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
858 \newcommand{\rfc}[1]{RFC #1\index{RFC!RFC #1}}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
859 \newcommand{\program}[1]{\strong{#1}}
11450
0a3bb403a430 \programopt: New macro, used to mark command-line parameters in the
Fred Drake <fdrake@acm.org>
parents: 11082
diff changeset
860 \newcommand{\programopt}[1]{\strong{#1}}
12377
052fbd931492 \longprogramopt: New macro.
Fred Drake <fdrake@acm.org>
parents: 12346
diff changeset
861 % Note that \longprogramopt provides the '--'!
052fbd931492 \longprogramopt: New macro.
Fred Drake <fdrake@acm.org>
parents: 12346
diff changeset
862 \newcommand{\longprogramopt}[1]{\strong{-{}-#1}}
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
863
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
864 % \ulink{link text}{URL}
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
865 \ifpdf
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
866 % The \noindent here is a hack -- we're forcing pdfTeX into
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
867 % horizontal mode since \pdfstartlink requires that.
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
868 \newcommand{\ulink}[2]{\noindent{%
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
869 \pdfstartlink attr{/Border [0 0 0]} user{/S /URI /URI (#2)}%
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
870 \py@LinkColor% color of the link text
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
871 #1%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
872 \py@NormalColor% Turn it back off; these are declarative
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
873 \pdfendlink}% and don't appear bound to the current
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
874 }% formatting "box".
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
875 \else
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
876 \newcommand{\ulink}[2]{#1}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
877 \fi
11450
0a3bb403a430 \programopt: New macro, used to mark command-line parameters in the
Fred Drake <fdrake@acm.org>
parents: 11082
diff changeset
878
0a3bb403a430 \programopt: New macro, used to mark command-line parameters in the
Fred Drake <fdrake@acm.org>
parents: 11082
diff changeset
879 % cited titles: \citetitle{Title of Work}
0a3bb403a430 \programopt: New macro, used to mark command-line parameters in the
Fred Drake <fdrake@acm.org>
parents: 11082
diff changeset
880 % online: \citetitle[url-to-resource]{Title of Work}
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
881 \ifpdf
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
882 \newcommand{\citetitle}[2][\py@modulebadkey]{%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
883 \ifx\py@modulebadkey#1\emph{#2}\else\ulink{\emph{#2}}{#1}\fi%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
884 }
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
885 \else
20841
eacf81df6c42 Fix stupid bug recently introduced for DVI version of the docs (used to
Fred Drake <fdrake@acm.org>
parents: 20751
diff changeset
886 \newcommand{\citetitle}[2][URL]{\emph{#2}}
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
887 \fi
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
888
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
889
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
890
21347
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
891 % This version is being checked in for the historical record; it shows
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
892 % how I've managed to get some aspects of this to work. It will not
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
893 % be used in practice, so a subsequent revision will change things
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
894 % again. This version has problems, but shows how to do something
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
895 % that proved more tedious than I'd expected, so I don't want to lose
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
896 % the example completely.
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
897 %
19412
d4ba6e2aaae3 New \grammartoken markup, similar to \token but allowed everywhere.
Fred Drake <fdrake@acm.org>
parents: 18981
diff changeset
898 \newcommand{\grammartoken}[1]{\texttt{#1}}
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
899 \newenvironment{productionlist}[1][\py@badkey]{
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
900 \def\optional##1{{\Large[}##1{\Large]}}
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
901 \def\production##1##2{\code{##1}&::=&\code{##2}\\}
22316
cc788b3b21b6 Revise the markup related to the grammar productions to increase the
Fred Drake <fdrake@acm.org>
parents: 21418
diff changeset
902 \def\productioncont##1{& &\code{##1}\\}
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
903 \def\token##1{##1}
19412
d4ba6e2aaae3 New \grammartoken markup, similar to \token but allowed everywhere.
Fred Drake <fdrake@acm.org>
parents: 18981
diff changeset
904 \let\grammartoken=\token
21347
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
905 \parindent=2em
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
906 \indent
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
907 \begin{tabular}{lcl}
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
908 }{%
21347
f59c6b5dd122 Save a new version of the productionlist environment for safe-keeping; this
Fred Drake <fdrake@acm.org>
parents: 21116
diff changeset
909 \end{tabular}
18427
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
910 }
6a5ef1994153 Add \ulink, grammar production markup.
Fred Drake <fdrake@acm.org>
parents: 18230
diff changeset
911
21418
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
912 \newcommand{\py@noticelabel@note}{Note:}
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
913 \newcommand{\py@noticelabel@warning}{Warning:}
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
914 \newenvironment{notice}[1][note]{
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
915 \par\strong{\csname py@noticelabel@#1\endcsname}
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
916 }{}
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
917 \newcommand{\note}[1]{\strong{\py@noticelabel@note} #1}
571d5b7b746c Add a new environment for whole-paragraph (or longer) notes & warnings.
Fred Drake <fdrake@acm.org>
parents: 21347
diff changeset
918 \newcommand{\warning}[1]{\strong{\py@noticelabel@warning} #1}
20336
1b3ffdf12150 New markup: \note{...} and \warning{...}
Fred Drake <fdrake@acm.org>
parents: 20113
diff changeset
919
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
920 % Deprecation stuff.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
921 % Should be extended to allow an index / list of deprecated stuff. But
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
922 % there's a lot of stuff that needs to be done to make that automatable.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
923 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
924 % First parameter is the release number that deprecates the feature, the
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
925 % second is the action the should be taken by users of the feature.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
926 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
927 % Example:
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
928 % \deprecated{1.5.1}{Use \method{frobnicate()} instead.}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
929 %
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
930 \newcommand{\deprecated}[2]{%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
931 \strong{Deprecated since release #1.} #2\par}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
932
8762
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
933 % New stuff.
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
934 % This should be used to mark things which have been added to the
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
935 % development tree but that aren't in the release, but are documented.
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
936 % This allows release of documentation that already includes updated
10077
80b215249b17 Make \versionadded and \versionchanged less prominant -- neither bold
Fred Drake <fdrake@acm.org>
parents: 9968
diff changeset
937 % descriptions. Place at end of descriptor environment.
8762
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
938 %
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
939 % Example:
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
940 % \versionadded{1.5.2}
13234
79f8f6b963c2 Try to make sure \code always uses roman (non-italic) text.
Fred Drake <fdrake@acm.org>
parents: 12638
diff changeset
941 % \versionchanged[short explanation]{2.0}
8762
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
942 %
17560
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
943 \newcommand{\versionadded}[2][\py@badkey]{%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
944 \ifx#1\@undefined%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
945 { New in version #2. }%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
946 \else%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
947 { New in version #2:\ #1. }%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
948 \fi%
db928a277f8b \versionadded: Add support for including an explanatory note along with
Fred Drake <fdrake@acm.org>
parents: 17380
diff changeset
949 }
12549
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
950 \newcommand{\versionchanged}[2][\py@badkey]{%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
951 \ifx#1\@undefined%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
952 { Changed in version #2. }%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
953 \else%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
954 { Changed in version #2:\ #1. }%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
955 \fi%
efd1e5d2284a \versionchanged: Added optional parameter for explanation of change.
Fred Drake <fdrake@acm.org>
parents: 12500
diff changeset
956 }
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
957
8762
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
958
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
959 % Tables.
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
960 %
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
961 \newenvironment{tableii}[4]{%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
962 \begin{center}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
963 \def\lineii##1##2{\csname#2\endcsname{##1}&##2\\}%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
964 \begin{tabular}{#1}\strong{#3}&\strong{#4} \\* \hline%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
965 }{%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
966 \end{tabular}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
967 \end{center}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
968 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
969
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
970 \newenvironment{longtableii}[4]{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
971 \begin{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
972 \def\lineii##1##2{\csname#2\endcsname{##1}&##2\\}%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
973 \begin{longtable}[c]{#1}\strong{#3}&\strong{#4} \\* \hline\endhead%
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
974 }{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
975 \end{longtable}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
976 \end{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
977 }
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
978
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
979 \newenvironment{tableiii}[5]{%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
980 \begin{center}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
981 \def\lineiii##1##2##3{\csname#2\endcsname{##1}&##2&##3\\}%
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
982 \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5} \\%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
983 \hline%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
984 }{%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
985 \end{tabular}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
986 \end{center}%
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
987 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
988
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
989 \newenvironment{longtableiii}[5]{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
990 \begin{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
991 \def\lineiii##1##2##3{\csname#2\endcsname{##1}&##2&##3\\}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
992 \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5} \\%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
993 \hline\endhead%
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
994 }{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
995 \end{longtable}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
996 \end{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
997 }
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
998
8751
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
999 \newenvironment{tableiv}[6]{%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1000 \begin{center}%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1001 \def\lineiv##1##2##3##4{\csname#2\endcsname{##1}&##2&##3&##4\\}%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1002 \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6} \\%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
1003 \hline%
8751
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1004 }{%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1005 \end{tabular}%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1006 \end{center}%
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1007 }
99793302d10d {tableiv} environment: Four-column table.
Fred Drake <fdrake@acm.org>
parents: 8726
diff changeset
1008
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1009 \newenvironment{longtableiv}[6]{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1010 \begin{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1011 \def\lineiv##1##2##3##4{\csname#2\endcsname{##1}&##2&##3&##4\\}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1012 \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1013 \\%
15310
5d2a2185c651 Remove second horizontal line below table headers; it is just too
Fred Drake <fdrake@acm.org>
parents: 14722
diff changeset
1014 \hline\endhead%
14722
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1015 }{%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1016 \end{longtable}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1017 \end{center}%
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1018 }
4d2e9cf1eb20 Add new environments: longtableii, longtableiii, and longtableiv, to
Fred Drake <fdrake@acm.org>
parents: 14555
diff changeset
1019
18683
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1020 \newenvironment{tablev}[7]{%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1021 \begin{center}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1022 \def\linev##1##2##3##4##5{\csname#2\endcsname{##1}&##2&##3&##4&##5\\}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1023 \begin{tabular}{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}&\strong{#7} \\%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1024 \hline%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1025 }{%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1026 \end{tabular}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1027 \end{center}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1028 }
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1029
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1030 \newenvironment{longtablev}[7]{%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1031 \begin{center}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1032 \def\linev##1##2##3##4##5{\csname#2\endcsname{##1}&##2&##3&##4&##5\\}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1033 \begin{longtable}[c]{#1}\strong{#3}&\strong{#4}&\strong{#5}&\strong{#6}&\strong{#7}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1034 \\%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1035 \hline\endhead%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1036 }{%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1037 \end{longtable}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1038 \end{center}%
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1039 }
8ca70c9c1971 Define new markup for 5-column tables.
Fred Drake <fdrake@acm.org>
parents: 18427
diff changeset
1040
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1041 % Cross-referencing (AMK, new impl. FLD)
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1042 % Sample usage:
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1043 % \begin{seealso}
10846
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1044 % \seemodule{rand}{Uniform random number generator.}; % Module xref
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1045 % \seetext{\emph{Encyclopedia Britannica}}. % Ref to a book
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
1046 %
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
1047 % % A funky case: module name contains '_'; have to supply an optional key
10846
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1048 % \seemodule[copyreg]{copy_reg}{Interface constructor registration for
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1049 % \module{pickle}.}
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1050 % \end{seealso}
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
1051 %
10846
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1052 % Note that the last parameter for \seemodule and \seetext should be complete
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1053 % sentences and be terminated with the proper punctuation.
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1054
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1055 \ifpdf
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1056 \newcommand{\py@seemodule}[3][\py@modulebadkey]{%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1057 \par%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1058 \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi%
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1059 \begin{fulllineitems}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1060 \item[\py@linkToName{label-module-\py@modulekey}{Module \module{#2}}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1061 (section \ref{module-\py@modulekey}):]
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1062 #3
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1063 \end{fulllineitems}
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1064 }
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1065 \else
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1066 \newcommand{\py@seemodule}[3][\py@modulebadkey]{%
9868
a58f36352c4f \seemodule: Fix so that each \seemodule entry gets its own paragraph,
Fred Drake <fdrake@acm.org>
parents: 9542
diff changeset
1067 \par%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1068 \ifx\py@modulebadkey#1\def\py@modulekey{#2}\else\def\py@modulekey{#1}\fi%
10846
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1069 \begin{fulllineitems}
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1070 \item[Module \module{#2} (section \ref{module-\py@modulekey}):]
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1071 #3
b7378df3db56 Change the look of \seemodule output to fit in better.
Fred Drake <fdrake@acm.org>
parents: 10770
diff changeset
1072 \end{fulllineitems}
7585
2ef0aca96f2d Revise some of the PDF support to get at least preliminary outline support.
Fred Drake <fdrake@acm.org>
parents: 7561
diff changeset
1073 }
20751
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1074 \fi
85109a6099b5 Revise the PDF support in the LaTeX style sheet. This still isn't quite
Fred Drake <fdrake@acm.org>
parents: 20336
diff changeset
1075
14521
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1076 % \seetitle[url]{title}{why it's interesting}
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1077 \newcommand{\py@seetitle}[3][\py@modulebadkey]{%
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1078 \par
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1079 \begin{fulllineitems}
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1080 \item[\citetitle{#2}]
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1081 \ifx\py@modulebadkey#1\else
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1082 \item[{\small{(\url{#1})}}]
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1083 \fi
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1084 #3
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1085 \end{fulllineitems}
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1086 }
14490
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1087 % \seepep{number}{title}{why it's interesting}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1088 \newcommand{\py@seepep}[3]{%
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1089 \par%
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1090 \begin{fulllineitems}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1091 \item[\pep{#1}, ``\emph{#2}'']
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1092 #3
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1093 \end{fulllineitems}
f78f287b3add excclassdesc: New environment. For use in documenting class-based
Fred Drake <fdrake@acm.org>
parents: 14020
diff changeset
1094 }
12500
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1095 % \seerfc{number}{title}{why it's interesting}
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1096 \newcommand{\py@seerfc}[3]{%
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1097 \par%
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1098 \begin{fulllineitems}
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1099 \item[\rfc{#1}, ``\emph{#2}'']
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1100 #3
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1101 \end{fulllineitems}
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1102 }
12638
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1103 % \seeurl{url}{why it's interesting}
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1104 \newcommand{\py@seeurl}[2]{%
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1105 \par%
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1106 \begin{fulllineitems}
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1107 \item[\url{#1}]
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1108 #2
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1109 \end{fulllineitems}
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1110 }
21116
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1111
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1112 \newenvironment{seealso*}{
10423
9a4baf0c57ea Add some (commented out) macros to change the page size to the size of
Fred Drake <fdrake@acm.org>
parents: 10328
diff changeset
1113 \par
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1114 \def\seetext##1{\par{##1}}
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1115 \let\seemodule=\py@seemodule
14521
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1116 \let\seepep=\py@seepep
12500
eb433efa24de Define \seerfc within the seealso environment.
Fred Drake <fdrake@acm.org>
parents: 12377
diff changeset
1117 \let\seerfc=\py@seerfc
14521
9fed4eebc586 \seetitle: New macro for building reference list content.
Fred Drake <fdrake@acm.org>
parents: 14490
diff changeset
1118 \let\seetitle=\py@seetitle
12638
def959352422 Define \seeurl in the seealso environment. Two parameters: url, why.
Fred Drake <fdrake@acm.org>
parents: 12549
diff changeset
1119 \let\seeurl=\py@seeurl
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1120 }{\par}
21116
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1121 \newenvironment{seealso}{
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1122 \par
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1123 \strong{See Also:}
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1124 \par
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1125 \def\seetext##1{\par{##1}}
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1126 \let\seemodule=\py@seemodule
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1127 \let\seepep=\py@seepep
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1128 \let\seerfc=\py@seerfc
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1129 \let\seetitle=\py@seetitle
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1130 \let\seeurl=\py@seeurl
0a67463f8b7d Add a new environment in the Python docs markup: seealso*. This is similar
Fred Drake <fdrake@acm.org>
parents: 20841
diff changeset
1131 }{\par}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1132
8762
4192a73ca430 \versionadded,
Fred Drake <fdrake@acm.org>
parents: 8751
diff changeset
1133 % Allow the Python release number to be specified independently of the
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1134 % \date{}. This allows the date to reflect the document's date and
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1135 % release to specify the Python release that is documented.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1136 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1137 \newcommand{\py@release}{}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1138 \newcommand{\version}{}
14555
219e00221c84 \shortversion,
Fred Drake <fdrake@acm.org>
parents: 14521
diff changeset
1139 \newcommand{\shortversion}{}
18180
c25876a51f1b Add a little more support for describing version information. This
Fred Drake <fdrake@acm.org>
parents: 17778
diff changeset
1140 \newcommand{\releaseinfo}{}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1141 \newcommand{\releasename}{Release}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1142 \newcommand{\release}[1]{%
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1143 \renewcommand{\py@release}{\releasename\space\version}%
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1144 \renewcommand{\version}{#1}}
14555
219e00221c84 \shortversion,
Fred Drake <fdrake@acm.org>
parents: 14521
diff changeset
1145 \newcommand{\setshortversion}[1]{%
219e00221c84 \shortversion,
Fred Drake <fdrake@acm.org>
parents: 14521
diff changeset
1146 \renewcommand{\shortversion}{#1}}
18180
c25876a51f1b Add a little more support for describing version information. This
Fred Drake <fdrake@acm.org>
parents: 17778
diff changeset
1147 \newcommand{\setreleaseinfo}[1]{%
c25876a51f1b Add a little more support for describing version information. This
Fred Drake <fdrake@acm.org>
parents: 17778
diff changeset
1148 \renewcommand{\releaseinfo}{#1}}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1149
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1150 % Allow specification of the author's address separately from the
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1151 % author's name. This can be used to format them differently, which
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1152 % is a good thing.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1153 %
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1154 \newcommand{\py@authoraddress}{}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1155 \newcommand{\authoraddress}[1]{\renewcommand{\py@authoraddress}{#1}}
8341
ebfde06fdb8d Added definitions for \developer, \developers, \developersaddress.
Fred Drake <fdrake@acm.org>
parents: 8306
diff changeset
1156 \let\developersaddress=\authoraddress
ebfde06fdb8d Added definitions for \developer, \developers, \developersaddress.
Fred Drake <fdrake@acm.org>
parents: 8306
diff changeset
1157 \let\developer=\author
ebfde06fdb8d Added definitions for \developer, \developers, \developersaddress.
Fred Drake <fdrake@acm.org>
parents: 8306
diff changeset
1158 \let\developers=\author
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1159
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1160 % This sets up the fancy chapter headings that make the documents look
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1161 % at least a little better than the usual LaTeX output.
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1162 %
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
1163 \@ifundefined{ChTitleVar}{}{
8190
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1164 \ChNameVar{\raggedleft\normalsize\py@HeaderFamily}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1165 \ChNumVar{\raggedleft \bfseries\Large\py@HeaderFamily}
25c2aea64501 Fixed \code so word wrapping is allowed.
Fred Drake <fdrake@acm.org>
parents: 8076
diff changeset
1166 \ChTitleVar{\raggedleft \rm\Huge\py@HeaderFamily}
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1167 % This creates chapter heads without the leading \vspace*{}:
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
1168 \def\@makechapterhead#1{%
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
1169 {\parindent \z@ \raggedright \normalfont
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
1170 \ifnum \c@secnumdepth >\m@ne
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1171 \DOCH
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1172 \fi
7597
39b84a3dceaa Never, NEVER try to recover a screwed up file by carving a chunk out of an
Fred Drake <fdrake@acm.org>
parents: 7592
diff changeset
1173 \interlinepenalty\@M
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1174 \DOTI{#1}
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1175 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1176 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1177 }
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1178
8396
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1179
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1180 % Definition lists; requested by AMK for HOWTO documents. Probably useful
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1181 % elsewhere as well, so keep in in the general style support.
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1182 %
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1183 \newenvironment{definitions}{%
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1184 \begin{description}%
9078
18f81faf4bd9 \itembreak,
Fred Drake <fdrake@acm.org>
parents: 8916
diff changeset
1185 \def\term##1{\item[##1]\mbox{}\\*[0mm]}
8396
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1186 }{%
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1187 \end{description}%
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1188 }
79071a4e0eca Added {definitions} environment, which has \term to define indivual terms.
Fred Drake <fdrake@acm.org>
parents: 8341
diff changeset
1189
7527
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1190 % Tell TeX about pathological hyphenation cases:
26a8771a4cfd Convert LaTeX support to create a new class of documents. HTML generation
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1191 \hyphenation{Base-HTTP-Re-quest-Hand-ler}