To: ABBOTTP@UK.AC.ASTON From: Dave Love Date: Thu, 16 Jun 88 17:13 GMT Message-Id: <16 JUN 1988 17:13:50 FX@UK.AC.DARESBURY.NNGA> Subject: Re: Springer.txh Comments: Thanks for fetching this. I made some mods to it in line with comments from someone in TeXhax about long lines which seem to have got folded. Here's the changed version if you want to put it in instead. 23-Apr-88 22:40:23-PDT,23400;000000000000 Return-Path: Date: Thu, 16 Jun 88 17:13 GMT From: Subject: LaTeX macros for Springer-Verlag now available LaTeX users who write books for Springer-Verlag will be pleased to know that special macros have been designed to facilitate this process. Ed Sznyter, at Stanford's Distributed Systems Group in Computer Science (ews@Pescadero.stanford.edu), cooperatively developed these macros in conjunction with SV. These macros are variations of the standard LaTeX "report" documentstyle. Following are the two macros, plus a user manual in LaTeX source code. ---------------------- From: IN%"ews@Pescadero.STANFORD.EDU" "Ed Sznyter" 21-APR-1988 11:18 To: dbuerger@SCU.BITNET Subj: Springer-Verlag LaTeX macro packages Received: from JNET-DAEMON by SCU.BITNET; Thu, 21 Apr 88 11:18 PDT Received: From STANFORD(MAILER) by SCU with Jnet id 5010 for DBUERGER@SCU; Thu, 21 Apr 88 11:18 PDT Received: by Forsythe.Stanford.EDU; Thu, 21 Apr 88 11:14:28 PDT Received: by Pescadero from LOCALHOST.AF_INET (5.54/Ultrix2.0-B) id AA01839; Thu, 21 Apr 88 11:10:02 PDT Date: Thu, 21 Apr 88 11:09:59 PDT From: Ed Sznyter Subject: Springer-Verlag LaTeX macro packages To: dbuerger@SCU.BITNET Cc: mk74@cmstat.stat.CMU.EDU Cc: miller@csfsa.cs.UMN.EDU Cc: dragon@nscvax.PRINCETON.EDU Cc: fishwick@ufl.EDU Cc: iad3tao@oac.ucla.EDU Cc: pang@watale.waterloo.EDU Cc: lamport@src.dec.COM Cc: sirovich@lfm.brown.EDU Cc: mshull@JILA.BITNET Cc: tsp@janus.BERKELEY.EDU Cc: halpern@ibm.COM Message-Id: <8804211810.AA01839@Pescadero> Gerhard's transmission program has stripped some backslashes, so I'm resending this for him. It's a shell archive; just delete all the lines up the the ------, then run it through shell. If you don't have UNIX, you'll probably have to separate the files out by hand. Manifest: svma.sty svsa.sty manual.tex -------- #! /bin/sh : This is a shar archive. Extract with sh, not csh. echo x - svma.sty cat > svma.sty << '1549!Funky!Stuff!' % svma.sty 01 Nov 87 \newif\if@multipleauthors \@ifundefined{@svsa}{% \@multipleauthorstrue \typeout{Sub-style 'svma' (Springer-Verlag Multi-Authored). Released November 1, 1987}}% {\@multipleauthorsfalse} \ds@twoside \headheight=9pt \headsep=15pt % 2pc-9pt \textheight=45pc \textwidth=27pc \parindent=1em % % Running head: 9 pt TR, c/lc, 2em# inside of fl. outside folio, base aligns % with folio; recto: CN, period, word # to CT; verso: contributor's name(s). % In single-author, verso: SN, period, word # to ST. % \def\ps@headings{\def\@oddfoot{}\def\@evenfoot{}% No feet. \def\@oddhead{\ixONxi\rm \hbox{}\hfil\rightmark\hskip 2em\thepage}% \def\@evenhead{\ixONxi\rm \thepage\hskip 2em \if@multipleauthors\@chapterauthors\else\leftmark\fi \hfill}% \def\chaptermark##1{\markbothsame{\ifnum \c@secnumdepth >\m@ne \@chapapp\ \thechapter. \ \fi ##1}}% \def\sectionmark##1{\markleft{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi ##1}}} \pagestyle{headings} \def\@chapterauthors{} \def\markbothsame#1{\markboth{#1}{#1}} \def\markleft#1{{\let\protect\noexpand\expandafter\@markleft\@themark {#1}\mark{\@themark}}} \def\@markleft#1#2#3{\gdef\@themark{{#3}{#2}}} \def\leftmark{\expandafter\@leftmark\topmark} % % All pages without running heads must carry corner marks. % \def\clap#1{\hbox to 0pt{\hss#1\hss}} \newdimen\@crosshairrule \@crosshairrule=.24pt \def\@crosshairs{\vbox to 0pt{\hsize=0pt\baselineskip=0pt\lineskip=0pt \vss \clap{\vrule height .125in width \@crosshairrule depth 0pt} \clap{\vrule width .25in height \@crosshairrule depth 0pt} \clap{\vrule height .125in width \@crosshairrule depth 0pt} \vss}} \def\ps@empty{% \def\@oddhead{\hfill\raise\headheight\@crosshairs} \let\@evenhead\@oddhead \def\@evenfoot{}\let\@oddfoot\@evenfoot} \frenchspacing \def\@chapapp{} \def\viiiONx{\@setsize\viiiONx{10pt}\viipt\@viipt} \def\ixONxi{\@setsize\ixONxi{11pt}\ixpt\@ixpt} \def\xONxii{\normalsize} \def\xiiONxiv{\@setsize\xiiONxiv{14pt}\xiipt\@xiipt} \def\xivONxvi{\@setsize\xivONxvi{16pt}\xivpt\@xivpt} \def\xivONxiv{\@setsize\xivONxiv{14pt}\xivpt\@xivpt} \def\xxONxx{\@setsize\xxONxx{20pt}\xxpt\@xxpt} \def\chapter{\clearpage % Starts new page. \thispagestyle{empty} % Page style of chapter page is 'empty' \global\@topnum\z@ % Prevents figures from going at top of page. \@afterindentfalse % Suppresses indent in first paragraph. Change \secdef\@chapter\@schapter} % to \@afterindenttrue to have indent. % % Chapter number: 20 TR bold, arabic numeral, fl.l, top text % Chapter title: 20/20 TR bold x 27pc, c/lc, fl.l, sink 60 pt from top % type to base of CT, to's fl.l, do not hyphenate % \def\@makechapterhead#1{ % Heading for \chapter command % We want the chapter number to be 20 pts from top text. The simplest % was is to set \topskip, making sure there's nothing between the number % and the top of page, so \baselineskip doesn't come in. { \topskip=20pt \parindent 0pt \raggedright \ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1 THEN \xxONxx\bf \@chapapp{} \thechapter % Print 'Chapter' and number. \par \vskip 20pt \fi % Space between number and title. \bf % Title. #1\par \nobreak % TeX penalty to prevent page break. \vskip-\prevdepth % Fool TeX into ignoring the depth of \prevdepth=0pt % the CT when spacing to the CA \vskip 16pt % 2.5pi b/b between title and chapter authors } } \if@multipleauthors \gdef\chapterauthors#1{% {\def\\{, }\def\footnote##1{}\xdef\@chapterauthors{#1}}% {\parindent0pt \raggedright\xivONxiv\bf #1\par \nobreak }}\fi % % Restart the footnote counter each chapter. % %\newcounter{footnote}[chapter] % % FN 1pc space above footnotes to text. % 5 pc 1/2 pt rule fl.l. above footnotes % leave 6pt # afte4r rule followed by ftn % \skip\footins=18.5pt % space above line and below line, 1pc+6pt+.5pt \footskip=16pt \footnotesep=7pt % pretty arbitrary \def\footnotesize{\@setsize\footnotesize{10pt}\ixpt\@ixpt} \def\footnoterule{\kern-6.5pt\hrule width 5pc height .5pt\vskip 6pt} % % Footnote at end of chapter position below last text line (not at bottom % of page). % \def\clearpage{\par\penalty -\@M \write\m@ne{}\vbox{}\penalty -\@Mi} \def\@makecol{\ifvoid\footins \setbox\@outputbox\box\@cclv \else\setbox\@outputbox \vbox{\unvbox\@cclv\vskip\skip\footins\footnoterule\unvbox\footins}\fi \xdef\@freelist{\@freelist\@midlist}\gdef\@midlist{}\@combinefloats \setbox\@outputbox\vbox to\@colht{\boxmaxdepth\maxdepth \@texttop \@tempdima=\@colht \multiply\@tempdima by 10 \divide\@tempdima by 9 \ifdim \ht\@outputbox<\@tempdima \unvbox\@outputbox \vfill \else \unvbox\@outputbox \fi \@textbottom}\global\maxdepth\@maxdepth} % % Abstract: 9/11 TRx25pi, sink 2.5pi b/b from CA % \def\abstract{\vskip 21pt % from CA \rightskip=1pc\leftskip=1pc\parindent=\z@ \ixONxi\rm {ABSTRACT }} \def\endabstract{\par} % If we don't do this, the paragraph won't be % set until after rightskip and leftskip have been % returned to their old values. % % Don't indent the paragraph following each header. Vertical distances % showld have \baselineskip taken out, and the height of the next % line, which should be text (10/12 TR). % \setcounter{secnumdepth}{2} % number section and subsections \setcounter{tocdepth}{2} % and put them in the table of contents % No 1 Head, 14/16 TR, 36pt b/b above, 24 tp b/b below \def\section{\@startsection {section}{1}{\z@}{-21pt}{12pt}{\xivONxvi\rm\raggedright}} % No 2 Head, 12/14 TR, c/sc, 30pt above, 18 pt below \def\subsection{\@startsection {subsection}{2}{\z@}{-16pt}{6pt}{\xiiONxiv\sc\raggedright}} % No 3 Head, 10/12 TR, 24pt above, 18pt below \def\subsubsection{\@startsection {subsubsection}{3}{\z@}{-12pt}{6pt}{\xONxii\rm\raggedright}} % No 4 Head, 10/12 TR italic, 20pt above, 18pt below \def\paragraph{\@startsection {paragraph}{4}{\z@}{-8pt}{6pt}{\xONxii\it\raggedright}} % No 5 Head, 10/12 TR italic, period, en space to run in text, 18pt above \def\subparagraph#1{\@startsection {subparagraph}{5}{\z@}{-6pt}{-.5em}{\xONxii\it}{#1.}} % Ack: Acknowledgements same as No 5 head, 36pt above \def\acknowledgements{\@startsection {subparagraph}{6}{\z@}{-24pt}{-.5em}{\xONxii\it}*{Acknowledgements:\/}} % R-1: ``References'', same as No.2 head \def\thebibliography#1{% \@startsection {section}{2}{\z@}{-16pt}{6pt}{\xiiONxiv\sc\raggedright}{References}% \list {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth \advance\leftmargin\labelsep \usecounter{enumi}} \def\newblock{\hskip .11em plus .33em minus -.07em} \sloppy \sfcode`\.=1000\relax} % % lists: 10/12 TRx27pc, 1/2line# above/below % \topsep 6pt plus 3pt minus 1pt % Extra vertical space, in addition to % \parskip, added above and below list and % paragraphing environments. \itemsep 6pt plus 2pt minus 1pt % Extra vertical space, in addition to % \parskip, added between list items. % % Eq: Center on text width; equation numbers set flush right, align with % last line of equation, 6pt # above/below. % \abovedisplayskip=6pt plus 1.5pt minus 3pt \belowdisplayskip=\abovedisplayskip % % FL: Figure legends ``FIGURE 0.0'' 9/11 TR, c/lc, period, word # to text. % \long\def\@makecaption#1#2{{ \vskip 10pt \ixONxi \setbox\@tempboxa\hbox{#1. #2} \ifdim \wd\@tempboxa >\hsize % IF longer than one line: \unhbox\@tempboxa\par % THEN set as ordinary paragraph. \else % ELSE center. \hbox to\hsize{\hfil\box\@tempboxa\hfil} \fi}} \def\fnum@figure{FIGURE \thefigure} % % TN+TT: ``TABLE 0.0'' 9/11 TR, c/lc. period, word # to table title: % 3 pt # below to 1/2 pt rule x table measuer, 3 pt # below rule to % TCH % \arrayrulewidth=.5pt \def\fnum@table{\ixONxi TABLE \thetable} \def\TableSubtitleRule{\noalign{\vskip 3pt}\hline\noalign{\vskip 3pt}} \def\TableFootnote#1{\gdef\TFN{#1}} \def\@@startpbox#1{\vtop\bgroup \hsize #1\@arrayparboxrestore \parindent=-1em\leftskip=1em} \newsavebox{\@stablebox} \@namedef{stable}#1#2{\begin{table}[ht] \def\foo{#1}\def\TFN{} \viiiONx \setbox\@stablebox=\hbox\bgroup \begin{tabular}{#2} \noalign{\vskip 3pt} \hline \noalign{\vskip 3pt}} \@namedef{endstable}{\crcr\noalign{\vskip 6pt}\hline\end{tabular}\egroup $$\vbox{\hsize=\wd\@stablebox \caption{\foo} \box\@stablebox \prevdepth=0pt % last thing was a rule \par \TFN}$$ \end{table}} 1549!Funky!Stuff! echo x - svsa.sty cat > svsa.sty << '1549!Funky!Stuff!' \typeout{Sub-style 'svsa' (Springer-Verlag Single-Authored). Released November 1, 1987} \let\@svsa=\par \input svma.sty 1549!Funky!Stuff! echo x - manual.tex cat > manual.tex << '1549!Funky!Stuff!' \def\UNX{UN$\star$X} %\documentstyle[svma,draft]{report} \documentstyle[svma]{report} \begin{document} \tableofcontents \chapter{Springer-Verlag Document Styles for \LaTeX} \chapterauthors{Ed Sznyter\footnote{Distributed Systems Group, Computer Science Department, Stanford University, Stanford, CA 94305--2140}} \begin{abstract} This document describes the \LaTeX\ styles ``svma,'' Springer-Verlag's style package for multiauthored books, and ``svsa,'' Springer-Verlag's style package for single-authored books. These styles are variations of the standard ``report'' style, and only the differences are noted here. For a complete reference, see {\it \LaTeX: A Document Preparation System} by Leslie Lamport. A short example of a paper prepared with the ``svma'' style may be found at the end of this document. \end{abstract} \section{Starting the Document} \label{starting} \subsection{Multi-Authored Books} Each chapter in a multiauthored book may be written by different authors, who write and test their parts as self-contained manuscripts. The chapters are then submitted to the editor to be collected into the whole. An author's document should start out as follows. \begin{verbatim} \documentstyle[svma,draft]{report} \begin{document} \chapter{Title of your Chapter} \chapterauthors{Your Name\footnote{Your institution}\\ Another Author's Name\footnote{Their institution}} \begin{abstract} The abstract... \end{abstract} \end{verbatim} and should end with \begin{verbatim} \end{document} \end{verbatim} All these are standard \LaTeX\ commands, except for \verb|\chapterauthors|. \verb|\chapterauthors| takes as an argument a list of authors, separated by the command \verb|\\|. Each author should have a footnote which specifies their institution. As a side-effect of this command, the chapter name and the names of the authors will be placed in the running heads automatically. \subsection{Single-Authored Books} A document that uses the ``svsa'' style should start as follows. \begin{verbatim} \documentstyle[svsa,draft]{report} \begin{document} \end{verbatim} and each chapter starts with \begin{verbatim} \chapter{Chapter Title} \end{verbatim} Naturally, \verb|\chapterauthors| and the abstract is not necessary for each chapter. In this style, the chapter name and the section name will be placed in the running heads. \section{Sectioning Commands} The following sectioning commands, as described in the \LaTeX\ book, are available in this style: \verb|\part|, \verb|\chapter|, \verb|\section|, \verb|\subsection|, \verb|\subsubsection|, \verb|\paragraph|, and \verb|\subparagraph|. \verb|\part| is only used when the separate papers are put together into one document. By default, \verb|\part|, \verb|\chapter|, \verb|\section|, and \verb|\subsection| are numbered and placed in the table of contents. The commands \begin{verbatim} \setcounter{secnumdepth}{2} % number section and subsections \setcounter{tocdepth}{2} % and put them in the table of contents \end{verbatim} found in the style file may be copied and changed by the editor if desired, but should not be changed by the individual authors. The important words in a section argument should be capitalized. \section{Tables} A special type of float, the \verb|stable|, has been added. For example, \begin{verbatim} \begin{stable}{HYN Common Stock}{rcrp{2in}} \multicolumn{1}{c}{Year} & \multicolumn{1}{c}{Price} & \multicolumn1c{Dividend}\\ \TableSubtitleRule 1971 & 41--54 & \$2.60\\ 2 & 41--54 & 2.70 & This paragraph is long enough to span at least two lines. \TableFootnote{Prices are in dollars per share} \end{stable} \end{verbatim} will produce table \ref{shorttable} here or at the top of the next page. \begin{stable}{HYN Common Stock}{rcrp{2in}} \multicolumn{1}{c}{Year} & \multicolumn{1}{c}{Price} & \multicolumn1c{Dividend}\\ \TableSubtitleRule 1971 & 41--54 & \$2.60\\ 2 & 41--54 & 2.70 & This paragraph is long enough to span at least two lines. \TableFootnote{Prices are in dollars per share} \label{shorttable} \end{stable} The first argument to \verb|stable| is the title of the table, the second is the normal preamble that would be specified for a table made with the \verb|tabular| environment. The body of the \verb|stable| is specified in the same manner as the body of \verb|tabular|. The command \verb|\TableSubtitleRule| will draw a horizontal rule below the column heads, with the proper vertical spacing. Note that you have to specify the centering of the column heads, since \TeX\ doesn't know they're different from normal column entries. \verb|\TableFootnote| takes one argument, the text to go in the footnote of the table. It may appear anywhere in the body of the \verb|stable|. \section{Acknowledgements} Acknowledgements go at the end of a chapter, just before the bibliography. \verb|\acknowledgements| is a sectioning command without any arguments, and should be followed by a paragraph of text. \section{The Bibliography} \label{bibl} Bibliographies are created with \verb|bibtex|. Generally, you will have a central bibliography database, which will have an entry for every paper you have ever referenced. In the text of the document, put the command \verb|\cite{CHERI83}| to reference the paper ``The Distributed V Kernel and its Performance for Diskless Workstations'' by D.R. Cheriton. Then, at the end of the document, but before the \verb|\end{document}|, put \begin{verbatim} \bibliographystyle{alpha} \bibliography{master} % name of your bibliography database \end{verbatim} Then, run your document through \LaTeX. It will complain \begin{verbatim} LaTeX Warning: Citation `CHERI83' on page 1 undefined. \end{verbatim} and \begin{verbatim} No file paper.bbl \end{verbatim} This will put some entries in the .aux file. Now run \verb|bibtex paper|, which will create the file paper.bbl, by extracting the proper references from your bibliographic database. \verb|bibtex| should not give any error messages. Then run \LaTeX\ again. Again, the warning \begin{verbatim} LaTeX Warning: Citation `CHERI83' on page 1 undefined. \end{verbatim} will appear. Run \LaTeX\ yet again, and there should be no warnings. This process must be repeated every time a new reference is added to your document, so you will probably want to wait until the paper is nearly finished before producing the bibliography. \subsection{The Bibliography Database} The bibliography entry for the preceding example would have been put into the file master.bib thusly: \begin{verbatim} @Inproceedings(CHERI83, key ="CHERI83", author="D.R.~Cheriton and W.~Zwaenepoel", title="The Distributed V Kernel and its Performance for Diskless Workstations", booktitle="Proceedings of the 9th Symposium on Operating System Principles", Organization="ACM", Year=1983) \end{verbatim} \subsection{What Bibtex Produces} In the preceding example, the file paper.bbl might contain \begin{verbatim} \begin{thebibliography}{CZ83} \bibitem[BL80]{lampson} Ed. B.W.~Lampson. \newblock {\it Distributed Systems: Architecture and Implementation}. \newblock Springer-Verlag, 1980. \bibitem[CZ83]{cheri83} D.R.~Cheriton and W.~Zwaenepoel. \newblock The distributed v kernel and its performance for diskless workstations. \newblock In {\it Proceedings of the 9th Symposium on Operating System Principles}, ACM, 1983. \end{thebibliography} \end{verbatim} If you don't have bibtex, this file could be produced by hand. However, bibtex should be part of the \LaTeX\ package. \section{Producing the Collected Works in the ``svma'' Style} The standard commands up to and including \verb|\begin{document}|, and after and including \verb|\end{document}| must be removed from each chapter. Then, a master file should be produced, with the commands \begin{verbatim} \documentstyle[svma]{report} \begin{document} \tableofcontents \end{verbatim} followed by an \verb|\include| command for each chapter. Front material may be in this master file, or a separate file that's included. \verb|part| commands, if desired, should be put in this file, between the \verb|include| commands. \acknowledgements Thanks to Gerhard Rossbach, Donna Moore, and Barbara Tompkins of Springer-Verlag for their patience with my endless questions. \subsection{Bibliography} In order to produce a bibliography for each chapter in a collected work, each chapter must be in a separate file, and be set up as in section \ref{bibl} (except the chapter doesn't end in \verb|\end{document}|). Run \LaTeX\ on the whole document, then bibtex on each chapter, then re-run \LaTeX\ on the whole document twice. A master bibliography for the entire work may be produced in the normal manner, by putting the appropriate commands in the master file and running bibtex on the master file. You can have both bibliographies for each chapter and for the entire work at the same time. \appendix \chapter{A Short Example} This example will serve as a framework from which to start. \begin{verbatim} \documentstyle[svma,draft]{report} \begin{document} \chapter{Springer-Verlag Multi-Author Style for \LaTeX} \chapterauthors{Ed Sznyter\footnote{Distributed Systems Group, Computer Science Department, Stanford University, Stanford, CA 94305--2140}} \begin{abstract} This document describes the style ``svma,'' Springer-Verlag's style package for multiauthored books that are typeset using \LaTeX. \end{abstract} \section{Starting the Document} Each chapter in a multiauthored book may be written by a different author, who write and test their parts as self-contained manuscripts. \subsection{The Bibliography Database} \acknowledgements Thanks go to the appropriate people. \appendix \chapter{A Short Example} \bibliographystyle{alpha} \bibliography{master} % name of your bibliography database \end{document} \end{verbatim} \chapter{Installing the Style Packages} Optimally, the files svma.sty and svsa.sty should be placed in the same location as the rest of the style files; on \UNX, that might be\linebreak[4] /usr/local/lib/tex/macros/svma.sty. If the user doesn't have the privileges to install system software, the environment variable \verb|TEXINPUTS| may be set to look for style files wherever desired. For example, on \UNX, the csh command \begin{verbatim} setenv TEXINPUTS ".:$HOME/lib:/usr/local/lib/tex/macros" \end{verbatim} will cause \TeX\ to look in the current directory, the user's private library directory, and the default system directory. svma.sty will be found if placed in any of these locations. Equivalent commands are available on most other operating systems. Directly including the style file into your source, or using \verb|\input| or \verb|\include| will not work, because the style files contain special commands that are valid only when processed using \verb|documentstyle|. \end{document} 1549!Funky!Stuff!