% Style parameters and macros used by most documents here % This has to be tuned each time the repair person takes the printer apart: \addtolength{\oddsidemargin}{-2.5mm} \addtolength{\evensidemargin}{-2.5mm} % Style parameters \raggedbottom \sloppy \parindent = 0mm \parskip = 2mm % Frequently used system name \newcommand{\UNIX}{U{\sc nix}} % Variable used by begin code command \newlength{\codewidth} % Command to start a code block (follow this by \begin{verbatim}) \newcommand{\bcode}{ % Calculate the text width for the minipage: \setlength{\codewidth}{\linewidth} \addtolength{\codewidth}{-\parindent} % \par \vspace{3mm} \indent \begin{minipage}[t]{\codewidth} } % Command to end a code block (precede this by \end{verbatim}) \newcommand{\ecode}{ \end{minipage} \vspace{3mm} \par \noindent } % Underscores are not magic throughout the Python documentation \catcode`_=12 % Dummy \cbstart and \cbend so I can leave changebars in... \newcommand{\cbstart}{} \newcommand{\cbend}{} % Define \itembreak: force the text after an item to start on a new line \newcommand{\itembreak}{ \mbox{} \\*[0mm] } % Command to generate two index entries (using subentries) \newcommand{\indexii}[2]{ \index{#1!#2} \index{#2!#1} } % And three entries (using only one level of subentries) \newcommand{\indexiii}[3]{ \index{#1!#2 #3} \index{#2!#3, #1} \index{#3!#1 #2} } % And four (again, using only one level of subentries) \newcommand{\indexiv}[4]{ \index{#1!#2 #3 #4} \index{#2!#3 #4, #1} \index{#3!#4, #1 #2} \index{#4!#1 #2 #3} } % Command to generate a reference to a function, statement, keyword, operator \newcommand{\stindex}[1]{\indexii{statement}{#1@{\tt#1}}} \newcommand{\kwindex}[1]{\indexii{keyword}{#1@{\tt#1}}} \newcommand{\opindex}[1]{\indexii{operator}{#1@{\tt#1}}} \newcommand{\exindex}[1]{\indexii{exception}{#1@{\tt#1}}} \newcommand{\obindex}[1]{\indexii{object}{#1}} \newcommand{\bifuncindex}[1]{\index{#1@{\tt#1} (built-in function)}} % Add an index entry for a module \newcommand{\modindex}[2]{\index{#1@{\tt#1} (#2module)}} \newcommand{\bimodindex}[1]{\modindex{#1}{built-in }} \newcommand{\stmodindex}[1]{\modindex{#1}{standard }} % Additional string for an index entry \newcommand{\indexsubitem}{} \newcommand{\ttindex}[1]{\index{#1@{\tt#1} \indexsubitem}} % Define \itemjoin: some negative vspace to join two items together \newcommand{\itemjoin}{ \mbox{} \vspace{-\itemsep} \vspace{-\parsep} } % Define \funcitem{func}{args}: define a function item \newcommand{\funcitem}[2]{ \ttindex{#1} \item[{\tt #1(#2)}] \ } % Define \dataitem{name}: define a data item \newcommand{\dataitem}[1]{ \ttindex{#1} \item[{\tt #1}] \ } % Define \excitem{name}: define an exception item \newcommand{\excitem}[1]{ \ttindex{#1} \item[{\tt #1}] \itembreak }