% \iffalse THIS IS A META-COMMENT %<*dtx> \ProvidesFile %======================================================================== {MPSHEAD.DTX} %======================================================================== % %% Copyright 2004 Patrick W Daly %% Max-Planck-Institut f\"ur Sonnensystemforschung %% Max-Planck-Str. 2 %% D-37191 Katlenburg-Lindau %% Germany %% E-mail: daly@mps.mpg.de % % This program can be redistributed and/or modified under the terms % of the LaTeX Project Public License Distributed from CTAN % archives in directory macros/latex/base/lppl.txt; either % version 1 of the License, or any later version. % % This is a contributed file to the LaTeX2e system. % ------------------------------------------------- % This is a LaTeX package to add MPS head to title page % Installation: % LaTeX this file: creates docstrip installation file mpaehead.ins % AND the (LaTeX2e) documentation % (La)TeX mpshead.ins: creates package files mpshead.sty, and optionally % documentation driver mpshead.drv % (mpshead.ins may be edited as needed) % Docstrip options available: % package - to produce a (LaTeX2e) package .sty file % driver - to produce a driver file to print the documentation %-------------------------------------------------------------------------- % *** Identify the package file:- %\NeedsTeXFormat{LaTeX2e}[1994/06/01] %\ProvidesPackage{mpshead} % % *** Identify the driver file:- %\NeedsTeXFormat{LaTeX2e} %\ProvidesFile{mpshead.drv} % % *** The DATE, VERSION, and other INFO %\fi %\ProvidesFile{mpshead} [2004/07/06 1.0 (PWD)] % \changes{1.0}{2004 Jul 6}{Create from \texttt{mpaehead}} % % \CheckSum{412} % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z % Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z % Digits \0\1\2\3\4\5\6\7\8\9 % Exclamation \! Double quote \" Hash (number) \# % Dollar \$ Percent \% Ampersand \& % Acute accent \' Left paren \( Right paren \) % Asterisk \* Plus \+ Comma \, % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? % Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % % \iffalse %<*install> %^^A ============================================= %^^A Here is the docstrip installation file %^^A It is written on first LaTeX run if it %^^A does not already exist %^^A ============================================= \begin{filecontents*}{mpshead.ins} \input docstrip \preamble ============================================= IMPORTANT NOTICE: This program can be redistributed and/or modified under the terms of the LaTeX Project Public License Distributed from CTAN archives in directory macros/latex/base/lppl.txt; either version 1 of the License, or any later version. This is a generated file. It may not be distributed without the original source file \inFileName. Full documentation can be obtained by LaTeXing that original file. Only a few abbreviated comments remain here to describe the usage. ============================================= \endpreamble \postamble <<<<< End of generated file <<<<<< \endpostamble \declarepreamble\driver ============================================ This is the driver file to produce the LaTeX documentation from the original source file \inFileName. Make changes to it as needed. (Never change the file \inFileName!) ============================================ \endpreamble \declarepostamble\driverq End of documentation driver file. \endpostamble \keepsilent \askforoverwritefalse \generate{\file{mpshead.sty}{\from{mpshead.dtx}{package}} \file{mpshead.drv}{\usepreamble\driver\usepostamble\driverq \from{mpshead.dtx}{driver}} } \obeyspaces \Msg{*******************************************}% \Msg{* For documentation, process mpshead.dtx *}% \Msg{* or the driver file mpshead.drv *}% \Msg{*******************************************} \endbatchfile \end{filecontents*} % %<*driver> \documentclass{ltxdoc} %%\documentclass[twoside]{ltxdoc} %%\documentclass[a4paper]{ltxdoc} %%\documentclass[twoside,a4paper]{ltxdoc} \raggedbottom %** To include the detailed explanation of the coding, comment out %** the next line \OnlyDescription %** To produce a command index: add the following line for one run, %** then run makeindex -s gind.ist natbib %** and reprocess, with or without this line (much faster without) %% \EnableCrossrefs\CodelineIndex %** To produce a change history: add the following line for one run, %** then run makeindex -s gglo.ist -o natbib.gls natbib.glo %** and reprocess, with or without this line (faster without) %% \RecordChanges \DisableCrossrefs %May stay; zapped by \EnableCrossrefs \CodelineNumbered %May stay \begin{document} \DocInput{mpshead.dtx} \end{document} % %\fi % % \DoNotIndex{\begin,\CodelineIndex,\CodelineNumbered,\def,\DisableCrossrefs} % \DoNotIndex{\DocInput,\documentclass,\EnableCrossrefs,\end,\GetFileInfo} % \DoNotIndex{\NeedsTeXFormat,\OnlyDescription,\RecordChanges,\usepackage} % \DoNotIndex{\ProvidesClass,\ProvidesPackage,\ProvidesFile,\RequirePackage} % \DoNotIndex{\LoadClass,\PassOptionsToClass,\PassOptionsToPackage} % \DoNotIndex{\DeclareOption,\CurrentOption,\ProcessOptions,\ExecuteOptions} % \DoNotIndex{\AtEndOfClass,\AtEndOfPackage,\AtBeginDocument,\AtEndDocument} % \DoNotIndex{\InputIfFileExists,\IfFileExists,\ClassError,\PackageError} % \DoNotIndex{\ClassWarning,\PackageWarning,\ClassWarningNoLine} % \DoNotIndex{\PackageWarningNoLine,\ClassInfo,\PackageInfo,\MessageBreak} % \DoNotIndex{\space,\protect,\DeclareRobustCommand,\CheckCommand} % \DoNotIndex{\newcommand,\renewcommand,\providecommand,\newenvironment} % \DoNotIndex{\renewenvironment,\newif,\newlength,\newcounter,\setlength} % \DoNotIndex{\setcounter,\if,\ifx,\ifcase,\ifnum,\ifdim,\else,\fi} % \DoNotIndex{\texttt,\textbf,\textrm,\textsl,\textsc} % \DoNotIndex{\textup,\textit,\textmd,\textsf,\emph} % \DoNotIndex{\ttfamily,\rmfamily,\sffamily,\mdseries,\bfseries,\upshape} % \DoNotIndex{\slshape,\scshape,\itshape,\em,\LaTeX,\LaTeXe} % \DoNotIndex{\filename,\fileversion,\filedate,\let,\reset@font} % \DoNotIndex{\",\\,\@author,\@date,\@ifundefined,\@makefnmark,\@tabularcr} % \DoNotIndex{\@thanks,\@thefnmark,\@title,\@topnum,\begingroup,\bf} % \DoNotIndex{\bgroup,\def,\egroup,\else,\endgroup,\endtitlepage,\fi} % \DoNotIndex{\filedate,\filename,\fileversion,\fnsymbol,\newfont,\footnoterule} % \DoNotIndex{\footnotesize,\gdef,\global,\hbox,\hfil,\hrule,\hsize,\hskip} % \DoNotIndex{\hss,\if@titlepage,\if@twocolumn,\LARGE,\large,\let,\lineskip} % \DoNotIndex{\m@th,\newbox,\newpage,\normalsize,\null,\p@,\par,\relax,\sc} % \DoNotIndex{\setbox,\sl,\small,\space,\thanks,\thefootnote,\thispagestyle} % \DoNotIndex{\titlepage,\twocolumn,\typeout,\unhbox,\vbox,\vfil} % \DoNotIndex{\vskip,\vspace,\vss,\z@,\leavevmode,\char} % \DoNotIndex{\selectfont,\fontsize,\ifdim,\setcounter,\sf,\wd} % \DoNotIndex{\long,\noindent,\parindent,\@makefntext,\pdfimage} % \DoNotIndex{\language,\l@english,\l@german,\l@french,\includegraphics} % \DoNotIndex{\color,\definecolor,\chardef,\centering,\headheight,\normalfont} % \DoNotIndex{\parbox,\raisebox,\textsuperscript,\textwidth} % % \setcounter{IndexColumns}{2} % \setlength{\IndexMin}{10cm} % \setcounter{StandardModuleDepth}{1} % % \GetFileInfo{mpshead} % % \title{\bfseries To Add an MPS Header\\ to the Title Page} % % \author{Patrick W. Daly} % % \date{This paper describes package \texttt{\filename}\\ % version \fileversion{} from \filedate\\[1ex] % \textsl{It is part of the \texttt{preprint} collection of packages} % } % % \maketitle % \expandafter\ifx\csname xmaketitle\endcsname\relax\else\xmaketitle\fi % % \pagestyle{myheadings} % \markboth{P. W. Daly}{MPS HEADER ON TITLE PAGE} % %^^A In order to keep all marginal notes on the one (left) side: %^^A (otherwise they switch sides disasterously with twoside option) % \makeatletter \@mparswitchfalse \makeatother % %\begin{small}\begin{center}\textbf{Summary}\end{center} % The stripped version of this file contains the following brief description: %\iffalse %<*package> %\fi % \begin{verbatim} % Use just as usual. Works with and without titlepage option % For twocolumn, no titlepage, the abstract is written wide over % the two columns. % Takes options: % color colour for coloured logo and institute name (default) % bw sw for black&white logo and name % Additional commands: % \reportno{MPS-xxxx} adds report number at top. % \pagestyle{mpshead} or better \thispagestyle{mpshead} puts a head % on pages for documents without title pages % Makes use of authblk package to enter authors and affiliations either in % the standard manner with % \author{ ... \and ... \and ...} % or with alternative % \author{..} \author{..} \affil{..} % \author{..} \author{..} \affil{..} % where each \author contains a single name, and \affil applies to all % previous authors. Explicit footnote markers can be given with optional % arguments \author[1]{..} .. \affil[1]{..} % \end{verbatim} %\iffalse %----------------------------------------------------------- % %\fi % \end{small} % % \section{Purpose} % This package replaces the now obsolete \texttt{mpaehead}, and puts an MPS % title and logo at the top of an article. It is meant to be used with the % \texttt{preprint} class, but can be used on its own to add an institute % logo using the page style \texttt{mpshead}. % % \section{Usage} % This package need only be included % with the |\usepackage| command of \LaTeXe, % \begin{quote} % |\documentclass[..]{...}|\\ % |\usepackage|\oarg{options}|{|\texttt{\filename}|}| % \end{quote} % It takes options % \begin{description} % \item \texttt{color colour} (default) to output logo and institute name in colour % % \item \texttt{bw sw} to output the logo in black \& white. % \end{description} % % Everything then functions as for normal \LaTeX, as far as the user is % concerned. In fact, internally things are quite different, so there could % be bugs popping out. % % To avoid the most blatant problems, the |\maketitle| command must be % followed by one of % \begin{quote} % |\begin{abstract}| \dots{} |\end{abstract}|\\ % |\part|\\ % |\chapter|\\ % |\section|\\ % |\noabstract| % \end{quote} % without any intervening text. Commands that do not print text, like % |\newpage| may come between. % % \DescribeMacro{\reportno} % The only extra feature for the user is the |\reportno| command. This % enters the MPAE report number (or any arbitrary text for that matter) % that is printed above the headline. It is optional. Syntax is % \begin{quote} % |\reportno{|\meta{number}|}| % \end{quote} % % \DescribeMacro{\author} % \DescribeMacro{\affil} % The \texttt{\filename} package loads the \texttt{authblk} package that % allows an alternative syntax for entering authors' names and affiliations. % Standard \LaTeX\ uses % \begin{quote} % |\author{|\emph{author1, author2}|\\|\emph{affil1}\\ % | \and|\\ % | |\emph{author3, author4}|\\|\emph{affil2}|}| % \end{quote} % whereas the new alternative is % \begin{quote} % |\author{|\emph{author1}|} \author{|\emph{author2}|} \affil{|\emph{affil1}|}|\\ % |\author{|\emph{author3}|} \author{|\emph{author4}|} \affil{|\emph{affil2}|}| % \end{quote} % This syntax will automatically select whether the authors are to be blocked % by affiliations (standard) or whether they all appear in one line with % footnotes for the affiliations. % % A third method forces the footnote style by explicitly giving the footnotes % as optional arguments. % \begin{quote} % |\author[1]{|\emph{author1}|} \author[1]{|\emph{author2}|}|\\ % |\author[2]{|\emph{author3}|} \author[2]{|\emph{author4}|}|\\ % |\affil[1]{|\emph{affil1}|} \affil[2]{|\emph{affil2}|}| % \end{quote} % % \DescribeMacro{\authorcr} % In the standard method (|\author| without any |\affil| commands) the newline % command |\\| is used to switch from author to affiliation text, with change % of font. If a new line is to be forced within the author text, use % |\authorcr| instead. % % \section{The Page Style \texttt{mpshead}} % It is possible to add the MPS head to other documents, % those without abstracts or sections. This is done by invoking the % \emph{page style} named \texttt{mpshead}. This can be done either as % \begin{quote} % |\pagestyle{mpshead}| % \end{quote} % to put the head on all pages, or as % \begin{quote} % |\thispagestyle{mpshead}| % \end{quote} % to put it on only the current page. This last is the recommended method. % % This page style does not change the style of the footers. Thus if page % style \texttt{plain} (the default for \texttt{article} class) is active, % the page numbers at the bottom will be retained. With % \begin{quote} % |\pagestyle{empty}|\\ % |\thispagestyle{mpshead}| % \end{quote} % the page numbers at the bottom will be suppressed. % % If this package is used with the \texttt{fullpage} package, then I % recommend invoking the latter with the option \texttt{headings}, as % \begin{quote} % |\usepackage[headings]{fullpage}|\\ % |\usepackage{mpshead}|\\ % |\pagestyle{empty}|\\ % |\thispagestyle{mpshead}| % \end{quote} % In this way, \texttt{fullpage} leaves enough room at the top for the % head. If it were invoked with the option \texttt{empty}, it would leave % no space; the head would be set on the line one inch from the top, and % the first line of text would be immediately below it. % % \StopEventually{\PrintIndex\PrintChanges} % % \section{Options with \texttt{docstrip}} % The source \texttt{.dtx} file is meant to be processed with % \texttt{docstrip}, for which a number of options are available: % \begin{description} % \item[\tt package] to produce a \texttt{.sty} package file with most % comments removed; % \item[\tt driver] to produce a driver \texttt{.drv} file that will print % out the documentation under \LaTeXe. % % \end{description} % The source file \texttt{\filename.dtx} is itself a driver file and can % be processed directly by \LaTeX. % % \section{The Coding} % This section presents and explains the actual coding of the macros. % It is nested between |%<*package>| and |%|, which % are indicators to \texttt{docstrip} that this coding belongs to the package % file. % % \begin{macro}{\makehead} % Define the headline containing MPS logo and name and address. This will % be executed within a |\center| environment, so the lines need not be % explicitly centered. % % Select some special fonts with attributes. % \begin{macrocode} %<*package> \newif\if@kolor \@kolortrue \DeclareOption{bw}{\@kolorfalse} \DeclareOption{sw}{\@kolorfalse} \DeclareOption{color}{\@kolortrue} \DeclareOption{colour}{\@kolortrue} \ProcessOptions \if@kolor \RequirePackage{color} \definecolor{mpg}{rgb}{.187,.613,.594} \newcommand*\mpgcol{\leavevmode\color{mpg}} \newcommand*\mpslogo{mps_color} \else \let\mpgcol=\relax \newcommand*\mpslogo{mps_grau} \fi \RequirePackage{graphicx} \newcommand{\headfnt}{\rmfamily\fontsize{17}{24pt}\selectfont\mpgcol} \newcommand{\addfnt}{\slshape\fontsize{12}{14pt}\selectfont\mpgcol} \newcommand{\makehead}{% \raisebox{60\p@}[\z@]{\makebox[\textwidth][r]{\small\@reportno}} \vspace{10\p@} \mpsline \vspace{30\p@}} % \end{macrocode} % \end{macro} % % \begin{macro}{\mpsline} % The actual MPS head is put into a command, since it will be used both in % |\makehead| and in the definition of the page style \texttt{mpshead}. % In this way, we guarantee that both produce the same results. % % The name of Germany is made to be dependent on the current value of % |\language|. % % \begin{macrocode} \newcommand{\mpsline}{% \parbox[c]{45em}{\centering \parbox[c][\z@][b]{\z@}{% \makebox[\z@][c]{% \includegraphics[width=11em,clip]{\mpslogo}}}\\[1em] {\headfnt Max-Planck-Institut f\"ur Sonnensystemforschung}\\[.5em] \normalfont \addfnt Katlenburg-Lindau, \BRD\vspace{.5em}}% } % \end{macrocode} % \end{macro} % % \begin{macro}{\BRD} % Test the value of |\language| against the usual prestored names for these % languages. Define them if they do not exist. % % \begin{macrocode} \newcommand{\BRD}{\ifnum\language=\l@english Germany \else \ifnum\language=\l@german Deutschland \else \ifnum\language=\l@french Allemagne \fi\fi\fi} \@ifundefined{l@english}{\chardef\l@english=0}{} \@ifundefined{l@german}{\chardef\l@german=1}{} \@ifundefined{l@french}{\chardef\l@german=2}{} % \end{macrocode} % \end{macro} % % \begin{macro}{\reportno} % To include a report number, define the command |\reportno| to enter the % text into the internal |\@reportno|; its default contents are empty. % \begin{macrocode} \newcommand{\reportno}[1]{\renewcommand{\@reportno}{#1}} \newcommand{\@reportno}{} % \end{macrocode} % \end{macro} % % \begin{macro}{\abstractname} % If |\abstractname| has not been defined, then % define it now. % \begin{macrocode} \providecommand{\abstractname}{Abstract} % \end{macrocode} % \end{macro} % % In order that the abstract be written with the title in \texttt{twocolumn} % mode it is necessary to read it in before the title is made up. Since the % |\maketitle| command is given \emph{before} the abstract in entered, some % changes have been made. Now |\maketitle| merely defines |\xmaketitle|, % which takes over the earlier role of |\maketitle|. This new |\xmaketitle| % is called at the end of the abstract environment, or if there is no % abstract, with the first |\section| call. Clearly something could go % wrong there is no abstract and some text appears before the first % |\section| (or |\chapter| or |\part|) command. In this case, one gives % the command |\noabstract| which is identical to |\xmaketitle|. % % \begin{macro}{\maketitle} % \begin{macro}{\xmaketitle} % Here are the revised |\maketitle| and |\xmaketitle| definitions. There % are differences depending on whether or not |titlepage| is active. % The only major differences from the standard definition are the % inclusion of |\makehead| and the use of |\xmaketitle|. % Also the author list has font changing features, described below. % % This is the definition for title pages. % \begin{macrocode} \renewcommand{\maketitle}{\if@titlepage \gdef\xmaketitle{\begin{titlepage}% \let\footnotesize\small \let\footnoterule\relax \def\thefootnote{\fnsymbol{footnote}}% \setcounter{page}{0}% \null \begin{center}% \reset@font\makehead \vfil \vskip 60\p@ {\LARGE \@title \par}% \vskip 3em {\lineskip .75em % \end{macrocode} % The mechanism used to alternate typefaces in the author list is % managed by \texttt{authblk} macros. Use \texttt{center} environment % for the authors rather than \texttt{tabular}, for it is more appropriate % with the \texttt{authblk} package where very long author lines are possible. % \begin{macrocode} \reset@font\normalsize \begin{center} \@author \end{center}\par}% \vskip 1.5em {\reset@font\large \@date \par}% \end{center}\par \@thanks \vfil \null \end{titlepage}% \setcounter{footnote}{0}% \global\let\xmaketitle\relax \global\let\@maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax % \end{macrocode} % Now add the abstract on a separate page. % \begin{macrocode} \ifdim\wd\@abstract=0pt\else \titlepage\null\vfil \begin{center}\reset@font\bfseries\abstractname\end{center}% \unhbox\@abstract \par\vfil\null\endtitlepage \fi} % \end{macrocode} % This completes the definition of |\xmaketitle| for title pages; now comes % the definition for no title pages, which actually makes use of % |\@maketitle|. % \begin{macrocode} \else \gdef\xmaketitle{\par \begingroup \def\thefootnote{\fnsymbol{footnote}}% \def\@makefnmark{\hbox{\textsuperscript{\@thefnmark}}} \long\def\@makefntext####1{\parindent 1em\noindent \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}####1}% \if@twocolumn \twocolumn[\@maketitle]% \else \newpage \global\@topnum\z@ \@maketitle \fi\thispagestyle{plain}\@thanks \endgroup % \end{macrocode} % % \begin{macrocode} \setcounter{footnote}{0}% \global\let\xmaketitle\relax \global\let\@maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax} % \end{macrocode} % To finish up the definition of |\maketitle|, have it self-destruct, since % it will only be used once. % \begin{macrocode} \fi \global\let\maketitle\relax} % \end{macrocode} % \end{macro}\end{macro} % % \begin{macro}{\@maketitle} % Here is the true title making macro for no title page. Since this command % is only defined in \texttt{article} class file if there is no title page, % the |\renewcommand| will fail if \texttt{titlepage} has been specified. % Therefore, we must make sure it exists before redefining it. We cannot % use the |\if@titlepage| flag here because its state may change between % the time that |\maketitle| is defined and when it is executed. % \begin{macrocode} \providecommand{\@maketitle}{} \renewcommand{\@maketitle}{% \newpage \begin{center}% \reset@font\makehead \vskip 2em {\reset@font\LARGE \@title \par}% \vskip 1.5em {\lineskip .75em \reset@font\normalsize \begin{center} \@author \end{center}\par}% \vskip 1em {\large \@date}% \end{center}% \par \vskip 1.5em % \end{macrocode} % The abstract is added in a |quotation| environment below the author % list. % \begin{macrocode} \ifdim\wd\@abstract=0pt\else \begin{center}% {\reset@font\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}% \end{center}% \begin{quotation}\reset@font\small\unhbox\@abstract\end{quotation} \fi} % \end{macrocode} % \end{macro} % % Give a default definition for |\xmaketitle| in case |\maketitle| is never % called. % \begin{macrocode} \newcommand{\xmaketitle}{} % \end{macrocode} % % \begin{macro}{\and} % The macros in the % \texttt{authblk} package are used to enter author and affiliation data with % font changes. Here, just define |\and| to be consistent with the environment % in which |\@author| is placed. (This is in fact the standard definition, % but put it here just to be sure.) % \begin{macrocode} \renewcommand{\and} {\end{center}\hskip 1em plus .17fil\begin{center}} % \end{macrocode} % \end{macro} % % Load the \texttt{authblk} package and set the customization parameters. For % \LaTeXe, this can be partially done with options. % \begin{macrocode} \RequirePackage[auth-sc-lg,affil-it]{authblk} \setlength{\affilsep}{0.5ex} \renewcommand{\Authand}{\ifnum\language=\l@english\ and \else \ifnum\language=\l@german\ und \else \ifnum\language=\l@french\ et \fi\fi\fi} \renewcommand{\Authands}{\ifnum\language=\l@english, and \else \ifnum\language=\l@german\ und \else \ifnum\language=\l@french\ et \fi\fi\fi} % \end{macrocode} % % % \begin{environment}{abstract} % The revisions to |abstract| environment, to put the entire text into a box, % and the add the |\xmaketitle| command at the end. For good measure, % |\maketitle| is also added just to make sure that |\xmaketitle| is % defined. Thus a |\maketitle| command in the text is superfluous when an % abstract is present. (Since |\maketitle| self-destructs, there is no harm % in calling it twice.) % \begin{macrocode} \newbox\@abstract \setbox\@abstract\hbox{} \renewenvironment{abstract}{\global\setbox\@abstract\hbox\bgroup \if@titlepage\else\reset@font\small\fi} {\egroup\maketitle\xmaketitle} % \end{macrocode} % \end{environment} % % \begin{macro}{\part} % \begin{macro}{\chapter} % \begin{macro}{\section} % \begin{macro}{\noabstract} % Revise |\part|, |\chapter|, and |\section| to add |\xmaketitle| just % in case there is no abstract. Redefine them only if they exist already. % The |\noabstract| command is used to when there is no abstract and no % sections, as last resort. % \begin{macrocode} \@ifundefined{part}{} {\newcommand{\xpart}{}\let\xpart\part \renewcommand{\part}{\xmaketitle\xpart}} \@ifundefined{chapter}{} {\newcommand{\xchapter}{}\let\xchapter\chapter \renewcommand{\chapter}{\xmaketitle\xchapter}} \@ifundefined{section}{} {\newcommand{\xsection}{}\let\xsection\section \renewcommand{\section}{\xmaketitle\xsection}} \newcommand{\noabstract}{\xmaketitle} % \end{macrocode} % \end{macro}\end{macro}\end{macro}\end{macro} % % \begin{macro}{\ps@mpshead} % To allow the MPS head to be used as a page style, without the article % features of abstract and/or sections, create a new page style. % This page style does not change the footers, only the header. Note that % the head is made to sit on the bottom of the space available % (|\headheight|), so that it extends upwards if |\headheight| is too % small. % \begin{macrocode} \def\ps@mpshead{%\def\@oddfoot{}\def\@evenfoot{} \def\@oddhead{\hbox to \hsize{\vbox to \headheight{\centering\vss\mpsline}}} \let\@evenhead=\@oddhead} % % \end{macrocode} % \end{macro} % % \Finale