diff options
author | Fred Drake <fdrake@acm.org> | 2002-10-31 21:04:34 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2002-10-31 21:04:34 (GMT) |
commit | ff031cfdf4038d577a8f7b11862a6a396deb2dbc (patch) | |
tree | f0913a8d2f39348d54f73111d6317abe7511610a /Doc | |
parent | 8612a431b9ff5dd9ad49171c4c2ddae63127f778 (diff) | |
download | cpython-ff031cfdf4038d577a8f7b11862a6a396deb2dbc.zip cpython-ff031cfdf4038d577a8f7b11862a6a396deb2dbc.tar.gz cpython-ff031cfdf4038d577a8f7b11862a6a396deb2dbc.tar.bz2 |
Define abstract way to get the normal and smaller font sizes that work
even in the footnote context.
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/texinputs/python.sty | 44 |
1 files changed, 28 insertions, 16 deletions
diff --git a/Doc/texinputs/python.sty b/Doc/texinputs/python.sty index 2cb2a17..331197e 100644 --- a/Doc/texinputs/python.sty +++ b/Doc/texinputs/python.sty @@ -134,6 +134,23 @@ % Use this to set the font family for headers and other decor: \newcommand{\py@HeaderFamily}{\sffamily} +% Set up abstract ways to get the normal and smaller font sizes that +% work even in footnote context. +\newif\ifpy@infootnote \py@infootnotefalse +\let\py@oldfootnotetext\@footnotetext +\def\@footnotetext#1{% + \bgroup% + \py@infootnotetrue + \py@oldfootnotetext{#1}% + \egroup% +} +\def\py@defaultsize{% + \ifpy@infootnote\footnotesize\else\normalsize\fi% +} +\def\py@smallsize{% + \ifpy@infootnote\scriptsize\else\small\fi% +} + % Redefine the 'normal' header/footer style when using "fancyhdr" package: \@ifundefined{fancyhf}{}{ % Use \pagestyle{normal} as the primary pagestyle for text. @@ -817,24 +834,19 @@ \newcommand{\csimplemacro}[1]{\code{#1}} \newcommand{\kbd}[1]{\code{#1}} \newcommand{\samp}[1]{`\code{#1}'} -% This weird definition of \var{} allows it to always appear in roman -% italics, and won't get funky in code fragments when we play around -% with fonts. This also works directly in math mode. -% XXX \normalsize is bad in footnotes, though; we need a way to -% determine when we're in a footnote. \newcommand{\var}[1]{% \ifmmode% - \hbox{\normalsize\textrm{\textit{#1\/}}}% + \hbox{\py@defaultsize\textrm{\textit{#1\/}}}% \else% - \normalsize\textrm{\textit{#1\/}}% + \py@defaultsize\textrm{\textit{#1\/}}% \fi% } \renewcommand{\emph}[1]{{\em #1}} \newcommand{\dfn}[1]{\emph{#1}} \newcommand{\strong}[1]{{\bf #1}} % let's experiment with a new font: -\newcommand{\file}[1]{`{\small\textsf{#1}}'} -\newcommand{\filenq}[1]{{\small\textsf{#1}}} +\newcommand{\file}[1]{`\filenq{#1}'} +\newcommand{\filenq}[1]{{\py@smallsize\textsf{#1}}} % Use this def/redef approach for \url{} since hyperref defined this already, % but only if we actually used hyperref: @@ -843,15 +855,15 @@ \noindent% \pdfstartlink attr{/Border [0 0 0]} user{/S /URI /URI (#1)}% \py@LinkColor% color of the link text - \small\sf #1% + \py@smallsize\sf #1% \py@NormalColor% Turn it back off; these are declarative \pdfendlink}% and don't appear bound to the current }% formatting "box". \else - \newcommand{\url}[1]{\mbox{\small\textsf{#1}}} + \newcommand{\url}[1]{\mbox{\py@smallsize\textsf{#1}}} \fi -\newcommand{\email}[1]{{\small\textsf{#1}}} -\newcommand{\newsgroup}[1]{{\small\textsf{#1}}} +\newcommand{\email}[1]{{\py@smallsize\textsf{#1}}} +\newcommand{\newsgroup}[1]{{\py@smallsize\textsf{#1}}} \newcommand{\py@varvars}[1]{{% {\let\unspecified=\py@unspecified% @@ -887,12 +899,12 @@ \newcommand{\ctype}[1]{\texttt{#1}} % C struct or typedef name \newcommand{\cdata}[1]{\texttt{#1}} % C variable, typically global -\newcommand{\mailheader}[1]{{\small\textsf{#1:}}} -\newcommand{\mimetype}[1]{{\small\textsf{#1}}} +\newcommand{\mailheader}[1]{{\py@smallsize\textsf{#1:}}} +\newcommand{\mimetype}[1]{{\py@smallsize\textsf{#1}}} % The \! is a "negative thin space" in math mode. \newcommand{\regexp}[1]{% {\tiny$^{^\lceil}\!\!$% - {\normalsize\code{#1}}% XXX should use \footnotesize in footnotes + {\py@defaultsize\code{#1}}% $\!\rfloor\!$% }} \newcommand{\envvar}[1]{% |