summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-09-08 00:48:02 +0000
committerKarl Berry <karl@freefriends.org>2008-09-08 00:48:02 +0000
commita22e4cb7fe4ad156c686c172e44393ae54b7a1f3 (patch)
tree062f295f35789d9f3cb451bd9c7ae48b4ca9cad5 /Master/texmf-dist/source/latex
parent572d3c71718a606b766f8a2d553c3eeffc456587 (diff)
achemso 3.0a (26aug08)
git-svn-id: svn://tug.org/texlive/trunk@10476 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/achemso/achemso.dtx3799
-rw-r--r--Master/texmf-dist/source/latex/achemso/achemso.ins167
-rw-r--r--Master/texmf-dist/source/latex/achemso/natmove.dtx601
-rw-r--r--Master/texmf-dist/source/latex/achemso/natmove.ins41
4 files changed, 3614 insertions, 994 deletions
diff --git a/Master/texmf-dist/source/latex/achemso/achemso.dtx b/Master/texmf-dist/source/latex/achemso/achemso.dtx
index 8868d841fe9..c0368d7565c 100644
--- a/Master/texmf-dist/source/latex/achemso/achemso.dtx
+++ b/Master/texmf-dist/source/latex/achemso/achemso.dtx
@@ -1,10 +1,20 @@
% \iffalse meta-comment
%
+% Portions copyright (C) 1989-2003 by
+% Donald Arseneau
% Copyright (C) 1996-98 by
% Mats Dahlgren
-% Copyright (C) 2007-2008 by
+% Copyright (C) 2007-08 by
% Joseph Wright <joseph.wright@morningstar2.co.uk>
%
+% Part of this bundle is derived from cite.sty, to which the following
+% license applies:
+%--------------------------------------------------------------------
+% Copyright (C) 1989-2003 by Donald Arseneau
+% These macros may be freely transmitted, reproduced, or modified
+% provided that this notice is left intact.
+%--------------------------------------------------------------------
+%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
% version 1.3c of this license or (at your option) any later
@@ -13,26 +23,68 @@
% and version 1.3c or later is part of all distributions of
% LaTeX version 2005/12/01 or later.
%
-% This work has the LPPL maintenance status ``maintained.''
+% This work has the LPPL maintenance status `maintained'.
%
% The current maintainer of this work is Joseph Wright.
%
% This work consists of the source file achemso.dtx
% and the derived files achemso.ins,
+% achemso.cls,
% achemso.sty,
-% achemso.bib,
% achemso.pdf,
+% achemso-manual.pdf,
+% achemso-demo.ltx,
% achemso.bst,
-% achemsoM.bst,
-% achemsol.bst,
-% achemsolM.bst,
-% achemsnat.bst,
-% achemlnt.bst,
-% iecr.bst,
-% iecrM.bst,
-% iecrnat.bst,
-% iecrnatM.bst and
-% jawltxdoc.sty
+% biochem.bst,
+% achre4.cfg,
+% acbcct.cfg,
+% ancac3.cfg,
+% ancham.cfg,
+% bichaw.cfg,
+% bcches.cfg,
+% bomaf6.cfg,
+% bipret.cfg,
+% crtoec.cfg,
+% chreay.cfg,
+% cmatex.cfg,
+% cgdefu.cfg,
+% enfuem.cfg,
+% esthag.cfg,
+% iecred.cfg,
+% inoraj.cfg,
+% jafcau.cfg,
+% jacsat.cfg,
+% jceaax.cfg,
+% jcisd8.cfg,
+% jctcce.cfg,
+% jcchff.cfg,
+% jmcmar.cfg,
+% jnprdf.cfg,
+% joceah.cfg,
+% jpcafh.cfg,
+% jpcbfk.cfg,
+% jpccck.cfg,
+% jprobs.cfg,
+% langd5.cfg,
+% mamobx.cfg,
+% mpohbp.cfg,
+% nalefd.cfg,
+% orlef7.cfg,
+% oprdfk.cfg,
+% orgnd7.cfg,
+% jawltxdoc.sty and
+% README
+%
+% TDS-ready files:
+% The compressed file achemso.tds.zip contains an unpacked version
+% of all of the files included here, and pre-compiled
+% documentation in PDF format. Simply decompress achemso.tds.zip
+% in your local TeX directory, run your hash program (texhash,
+% initexmf --update-fndb, etc.) and everything will be ready to
+% go. The user documentation for the package is called
+% achemso-manual.pdf; the file achemso.pdf includes the user
+% manual and the fully-indexed source code.
+%
% Unpacking:
% (a) If achemso.ins is present:
% tex achemso.ins
@@ -44,28 +96,26 @@
% Documentation:
% (a) Without write18 enabled:
% pdflatex achemso.dtx
-% bibtex8 --wolfgang achemso.aux
+% bibtex8 --wolfgang achemso
% makeindex -s gind.ist achemso.idx
-% makeindex -s gglo.ist -o achemso.gls achemso.glo
+% makeindex -s gglo.ist -o achemso.gls achemso.glo
% pdflatex achemso.dtx
-% makeindex -s gind.ist achemso.idx
-% makeindex -s gglo.ist -o achemso.gls achemso.glo
% pdflatex achemso.dtx
% (b) With write18 enabled:
% pdflatex achemso.dtx
-% bibtex8 --wolfgang achemso.aux
% pdflatex achemso.dtx
% pdflatex achemso.dtx
%
% Installation:
-% Copy achemso.sty and the achmes*.bst files to a location
-% searched by TeX, and if required by your TeX installation,
-% run the appropriate command to build a hash of files
-% (texhash, mpm --update-db, etc.)
+% Copy achemso.cls, the .sty files, the .bst files and the .cfg
+% files to a location searched by TeX, and if required by your
+% TeX installation, run the appropriate command to build a hash
+% of files (texhash, initexmf --update-fndb, etc.)
%
% Note:
% The jawltxdoc.sty file is not needed for installation,
-% only for building the documentation. It may be deleted.
+% only for building the documentation; it may be deleted
+% after producing the documentation (if necessary).
%
%<*ignore>
% This is all taken verbatim from Heiko Oberdiek's packages
@@ -83,8 +133,8 @@
\askforoverwritefalse
\preamble
----------------------------------------------------------------
- The achemso package - LaTeX and BibTeX support for American
- Chemical Society publications
+ achemso --- Support for submissions to American Chemical
+ Society journals
Maintained by Joseph Wright
E-mail: joseph.wright@morningstar2.co.uk
Released under the LaTeX Project Public License v1.3c or later
@@ -93,39 +143,103 @@
\endpreamble
\Msg{Generating achemso files:}
+\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
+}
\usedir{tex/latex/achemso}
+\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}
+ \file{\jobname.cls}{\from{\jobname.dtx}{class}}
+ \file{natmove.sty}{\from{natmove.dtx}{package}}
+}
+\usedir{source/latex/achemso}
\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}
- \file{\jobname.sty}{\from{\jobname.dtx}{package}}
}
-\declarepostamble\bibtexable
-\endpostamble
+\usedir{tex/latex/achemso/config}
+\generate{\file{achre4.cfg}{\from{\jobname.dtx}{achre4}}
+ \file{acbcct.cfg}{\from{\jobname.dtx}{acbcct}}
+ \file{ancac3.cfg}{\from{\jobname.dtx}{ancac3}}
+ \file{ancham.cfg}{\from{\jobname.dtx}{ancham}}
+ \file{bichaw.cfg}{\from{\jobname.dtx}{bichaw}}
+ \file{bcches.cfg}{\from{\jobname.dtx}{bcches}}
+ \file{bomaf6.cfg}{\from{\jobname.dtx}{bomaf6}}
+ \file{bipret.cfg}{\from{\jobname.dtx}{bipret}}
+}
+\generate{\file{crtoec.cfg}{\from{\jobname.dtx}{crtoec}}
+ \file{chreay.cfg}{\from{\jobname.dtx}{chreay}}
+ \file{cmatex.cfg}{\from{\jobname.dtx}{cmatex}}
+ \file{cgdefu.cfg}{\from{\jobname.dtx}{cgdefu}}
+ \file{enfuem.cfg}{\from{\jobname.dtx}{enfuem}}
+ \file{esthag.cfg}{\from{\jobname.dtx}{esthag}}
+ \file{iecred.cfg}{\from{\jobname.dtx}{iecred}}
+ \file{inoraj.cfg}{\from{\jobname.dtx}{inoraj}}
+}
+\generate{\file{jafcau.cfg}{\from{\jobname.dtx}{jafcau}}
+ \file{jacsat.cfg}{\from{\jobname.dtx}{jacsat}}
+ \file{jceaax.cfg}{\from{\jobname.dtx}{jceaax}}
+ \file{jcisd8.cfg}{\from{\jobname.dtx}{jcisd8}}
+ \file{jctcce.cfg}{\from{\jobname.dtx}{jctcce}}
+ \file{jcchff.cfg}{\from{\jobname.dtx}{jcchff}}
+ \file{jmcmar.cfg}{\from{\jobname.dtx}{jmcmar}}
+ \file{jnprdf.cfg}{\from{\jobname.dtx}{jnprdf}}
+}
+\generate{\file{joceah.cfg}{\from{\jobname.dtx}{joceah}}
+ \file{jpcafh.cfg}{\from{\jobname.dtx}{jpcafh}}
+ \file{jpcbfk.cfg}{\from{\jobname.dtx}{jpcbfk}}
+ \file{jpccck.cfg}{\from{\jobname.dtx}{jpccck}}
+ \file{jprobs.cfg}{\from{\jobname.dtx}{jprobs}}
+ \file{langd5.cfg}{\from{\jobname.dtx}{langd5}}
+ \file{mamobx.cfg}{\from{\jobname.dtx}{mamobx}}
+ \file{mpohbp.cfg}{\from{\jobname.dtx}{mpohbp}}
+}
+\generate{\file{nalefd.cfg}{\from{\jobname.dtx}{nalefd}}
+ \file{orlef7.cfg}{\from{\jobname.dtx}{orlef7}}
+ \file{oprdfk.cfg}{\from{\jobname.dtx}{oprdfk}}
+ \file{orgnd7.cfg}{\from{\jobname.dtx}{orgnd7}}
+}
+\nopreamble\nopostamble
\usedir{bibtex/bst/achemso}
-\generate{\usepostamble\bibtexable
- \file{achemso.bst}{\from{achemso.dtx}{bib}}
- \file{achemsoM.bst}{\from{achemso.dtx}{bib,mcp}}
- \file{achemnat.bst}{\from{achemso.dtx}{bib,nat}}
- \file{achemnatM.bst}{\from{achemso.dtx}{bib,nat,mcp}}
-}
-\generate{\usepostamble\bibtexable
- \file{achemsol.bst}{\from{achemso.dtx}{bib,list}}
- \file{achemsolM.bst}{\from{achemso.dtx}{bib,list,mcp}}
- \file{achemlnt.bst}{\from{achemso.dtx}{bib,list,nat}}
- \file{achemlntM.bst}{\from{achemso.dtx}{bib,list,nat,mcp}}
-}
-\generate{\usepostamble\bibtexable
- \file{iecr.bst}{\from{achemso.dtx}{bib,iecr}}
- \file{iecrM.bst}{\from{achemso.dtx}{bib,mcp,iecr}}
- \file{iecrnat.bst}{\from{achemso.dtx}{bib,nat,iecr}}
- \file{iecrnatM.bst}{\from{achemso.dtx}{bib,nat,mcp,iecr}}
-}
-\generate{\usepostamble\empty\usepreamble\empty
- \file{achemso.bib}{\from{achemso.dtx}{database}}
+\generate{\file{achemso.bst}{\from{\jobname.dtx}{bst}}
+ \file{biochem.bst}{\from{\jobname.dtx}{bst,bio}}
}
+\nopreamble\nopostamble
\usedir{doc/latex/achemso}
-\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
+\generate{\file{achemso.bib}{\from{\jobname.dtx}{refs}}
+}
+\nopreamble\nopostamble
+\usedir{doc/latex/achemso}
+\generate{\file{README.txt}{\from{\jobname.dtx}{readme}}
+ \file{achemso-demo.tex}{\from{\jobname.dtx}{demo}}
}
\endbatchfile
%</install>
+%<*readme>
+----------------------------------------------------------------
+achemso --- Support for submissions to American Chemical
+ Society journals
+Maintained by Joseph Wright
+E-mail: joseph.wright@morningstar2.co.uk
+Originally developed by Mats Dahlgren
+ (c) 1996-98 by Mats Dahlgren
+ (c) 2007-2008 Joseph Wright
+Released under the LaTeX Project Public license v1.3c or later
+See http://www.latex-project.org/lppl.txt
+
+Part of this bundle is derived from cite.sty, to which the
+following license applies:
+ Copyright (C) 1989-2003 by Donald Arseneau
+ These macros may be freely transmitted, reproduced, or
+ modified provided that this notice is left intact.
+----------------------------------------------------------------
+
+The achemso bundle provides a LaTeX class file and BibTeX style
+file in accordance with the requirements of the American
+Chemical Society. The files can be used for any documents, but
+have been carefully designed and tested to be suitable for
+submission to ACS journals.
+
+The bundle also includes the natmove package. This package is
+loaded by achemso, and provides automatic moving of superscript
+citations after punctuation.
+%</readme>
%<*ignore>
\fi
% Will Robertson's trick
@@ -135,13 +249,11 @@
%</ignore>
%<*driver>
\PassOptionsToClass{a4paper}{article}
-\documentclass{ltxdoc}
+\documentclass[german,english,UKenglish]{ltxdoc}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
%\OnlyDescription
-% The various formatting commands used in this file are collected
-% together in |jawltxdoc|.
\usepackage{jawltxdoc}
\begin{document}
\DocInput{\jobname.dtx}
@@ -149,9 +261,9 @@
%</driver>
% \fi
%
-%\CheckSum{189}
+%\CheckSum{1371}
%
-%\CharacterTable
+% \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
@@ -169,613 +281,2469 @@
%
%\GetFileInfo{\jobname.sty}
%
+%\DoNotIndex{\@Esphack,\@afterindentfalse,\@afterindenttrue}
+%\DoNotIndex{\@author@i,\@auxout,\@biblabel,\@bsphack,\@citex}
+%\DoNotIndex{\@currenvir,\@empty,\@evenfoot,\@evenhead,\@firstoftwo}
+%\DoNotIndex{\@floatboxreset,\@fnsymbol,\@for,\@gobble}
+%\DoNotIndex{\@ifclassloaded,\@ifmtarg,\@ifpackageloaded,\@ifstar}
+%\DoNotIndex{\@ifundefined,\@ignorefalse,\@m,\@maketitle,\@ne}
+%\DoNotIndex{\@oddfoot,\@oddhead,\@onlypreamble,\@roman}
+%\DoNotIndex{\@secondoftwo,\@secpenalty,\@shorttitle,\@ssect}
+%\DoNotIndex{\@startsection,\@tempskipa,\@title,\active,\addpenalty}
+%\DoNotIndex{\addvspace,\advance,\AtBeginDocument,\begin}
+%\DoNotIndex{\begingroup,\bfseries,\bot,\catcode,\centering}
+%\DoNotIndex{\citation,\cite,\citenum,\citenumfont,\ClassError}
+%\DoNotIndex{\ClassInfo,\ClassWarning,\csname,\dagger,\ddagger}
+%\DoNotIndex{\def,\define@boolkeys,\define@choicekey,\define@cmdkeys}
+%\DoNotIndex{\do,\document,\doublespacing,\edef,\else,\end}
+%\DoNotIndex{\endcsname,\endgroup,\endinput,\ensuremath,\everypar}
+%\DoNotIndex{\expandafter,\fi,\figurename,\floatname}
+%\DoNotIndex{\floatplacement,\floatstyle,\footnotetext}
+%\DoNotIndex{\frenchspacing,\futurelet,\g@addto@macro,\gdef}
+%\DoNotIndex{\global,\hbox,\hfil,\if@filesw,\if@ignore,\if@nobreak}
+%\DoNotIndex{\if@noskipsec,\ifcase,\ifcsname,\ifdim,\iffalse,\ifnum}
+%\DoNotIndex{\ifx,\ignorespaces,\immediate,\InputIfFileExists}
+%\DoNotIndex{\itshape,\jobname,\kv@set@family@handler,\kvsetkeys}
+%\DoNotIndex{\labelformat,\LARGE,\large,\lastskip,\leavevmode}
+%\DoNotIndex{\let,\LoadClass,\lowercase,\m@ne,\maketitle}
+%\DoNotIndex{\mathchardef,\mathsection,\MessageBreak,\NeedsTeXFormat}
+%\DoNotIndex{\newcommand,\newcount,\newfloat,\newif,\newpage}
+%\DoNotIndex{\newwrite,\nocite,\null,\openout,\or,\PackageError}
+%\DoNotIndex{\PackageInfo,\PackageWarning,\pagestyle,\par}
+%\DoNotIndex{\ProcessOptionsX,\protected@edef,\ProvidesClass}
+%\DoNotIndex{\ProvidesFile,\ProvidesPackage,\relax}
+%\DoNotIndex{\renewcommand,\RequirePackage,\reset@font}
+%\DoNotIndex{\restylefloat,\schemename,\section,\setbox,\setkeys}
+%\DoNotIndex{\sf,\sfcode,\sffamily,\skip@,\space,\spacefactor}
+%\DoNotIndex{\string,\subsection,\subsubsection,\tablename,\textit}
+%\DoNotIndex{\textsuperscript,\textwidth,\the,\thepage,\truncate}
+%\DoNotIndex{\tw@,\unskip,\url,\UrlFont,\value,\vskip,\wd,\write}
+%\DoNotIndex{\xdef,\z@}
+%
+%\DoNotIndex{\@firstofone,\aftergroup}
+%
+%\DoNotIndex{\nmv@citetrue,\nmv@citex,\nmv@ifmtarg}
+%
%\changes{v1.0}{1998/06/01}{Initial release of package by Mats
% Dahlgren}
%\changes{v2.0}{2007/01/17}{Re-write of package by Joseph Wright}
-%\changes{v2.0}{2007/01/17}{Several improvements to BibTeX style
-% files}
-%\changes{v2.0}{2007/01/17}{License changed to LPPL}
-%\changes{v2.1}{2007/02/15}{Updated documentation to reflect 3rd
-% edition of ACS Style Guide}
-%\changes{v2.1}{2007/02/15}{\BibTeX\ style improved to reflect 3rd
-% edition of ACS Style Guide}
-%\changes{v2.2}{2007/06/05}{Added \pkg{natbib} support}
-%\changes{v2.2a}{2007/07/08}{Fixed separation of editor names}
-%\changes{v2.2a}{2007/07/08}{Bug fixes to \pkg{natbib} and list
-% support}
-%\changes{v2.2a}{2007/07/08}{\texttt{title} field included in output
-% for \texttt{incollection} records}
-%\changes{v2.2b}{2007/07/09}{Bug fix to name formatting}
-%\changes{v2.2d}{2007/10/16}{Added \textsc{url} field to
-% \texttt{misc} output}
-%\changes{v2.2d}{2007/10/16}{Package design improved}
-%\changes{v2.2e}{2008/01/16}{Added \pkg{mciteplus} support}
-%\changes{v2.2e}{2008/01/16}{Documentation improvements}
-%\changes{v2.2f}{2008/01/16}{Combined \pkg{mciteplus} and
-% \pkg{natbib} support}
-%\changes{v2.2g}{2008/01/21}{Support for \emph{Industrial
-% \& Engineering Chemistry Research}}
-%
-%\DoNotIndex{\@biblabel,\@eha,\@gobble,\@ifpackageloaded}
-%\DoNotIndex{\@ifundefined,\citeform,\citeleft,\citeright}
-%\DoNotIndex{\DeclareOption,\else,\emph,\ExecuteOptions}
-%\DoNotIndex{\fi,\ifx,\MessageBreak,\NeedsTeXFormat,\newcommand}
-%\DoNotIndex{\newif,\OptionNotUsed,\PackageError,\PackageWarning}
-%\DoNotIndex{\ProcessOptions,\ProvidesPackage,\relax}
-%\DoNotIndex{\renewcommand,\RequirePackage,\string,\textit}
-%
-%\title{\currpkg --- \texorpdfstring{\LaTeX}{LaTeX} and
-% \texorpdfstring{\BibTeX}{BibTeX} support for American
-% Chemical Society publications^^A
-% \thanks{This file describes version \fileversion, last revised
-% \filedate.}}
-% \author{Joseph Wright^^A
-% \thanks{E-mail: joseph.wright@morningstar2.co.uk}}
-% \date{Released \filedate}
+%\changes{v3.0}{2008/07/20}{Second re-write, converting to a class
+% and giving much tighter integration with \textsc{acs} submission
+% system}
+%
+%\setkeys{lst}{language=[LaTeX]{TeX},moretexcs={bibnote,email,%
+% affiliation}}
+%
+%\title{\currpkg\ --- Support for submissions to American
+% Chemical Society journals^^A
+% \thanks{This file describes version \fileversion, last revised
+% \filedate.}}
+%\author{Joseph Wright^^A
+% \thanks{E-mail: joseph.wright@morningstar2.co.uk}}
+%\date{Released \filedate}
%
%\maketitle
%
+%\newcommand*{\ACS}{\textsc{acs}}
%\begin{abstract}
-% The \currpkg package provides a \BibTeX\ style in accordance with
-% the requirements of the journals of the American Chemical Society,
-% along with a supporting \LaTeX\ package file. Also provided are a
-% number of \BibTeX\ style files to be used for bibliography database
-% listings, including support for \pkg{natbib} and \pkg{mciteplus}.
+% The \currpkg bundle provides a \LaTeX\ class file and \BibTeX\
+% style file in accordance with the requirements of the American
+% Chemical Society. The files can be used for any documents, but
+% have been carefully designed and tested to be suitable for
+% submission to \ACS\ journals.
+%
+% The bundle also includes the \pkg{natmove} package. This package
+% is loaded by \currpkg, and provides automatic moving of superscript
+% citations after punctuation.
%\end{abstract}
%
+%\begin{multicols}{2}
+% \tableofcontents
+%\end{multicols}
+%
%\section{Introduction}
-% Synthetic chemists do not, in the main, use \LaTeX\ for the
-% preparation of journal articles. Some journals, mainly in the
-% physical chemistry area, do accept \LaTeX\ submissions. Given the
-% clear advantages of \LaTeX\ over other methods, it would be nice to
-% be able to use \LaTeX\ for preparing reports. Thus the need for
-% \BibTeX\ styles for chemistry is real. The package \currpkg
-% provides for a \BibTeX\ style and other support for articles and
-% reports in the style of the American Chemical Society (ACS).
-%
-% As describe in \emph{The ACS Style Guide} \cite{Coghill2006},
-% almost all ACS publications use the same style for the formatting
-% of references. The reproduction of this style is the aim of the
-% \BibTeX\ style file provided here. However, the ACS use different
-% citation styles in different publications. The \currpkg package
-% provides support for the two numerical systems: superscript and
-% italic in-text citations. The majority of ACS journals use the
-% superscript method (Table \ref{tbl:journals-super}), with a smaller
-% number using the italic system (Table \ref{tbl:journals-inline}).
-% The journal \emph{Biochemistry} does not use the standard ACS style
-% for references, and so is not covered by the \currpkg package. The
-% journal \emph{Industrial \& Engineering Chemistry Research} uses a
-% modification of the standard ACS style; it is covered by \currpkg
-% using the \file{iecr.bst} files and derivatives.
-%\begin{table}
-% \centering
-% \small
-% \begin{tabular}{>{\itshape}l>{\itshape}l}
-% \toprule
-% \upshape{Journal Title} & \upshape{\emph{CASSI} Abbreviation} \\
-% \midrule
-% Accounts of Chemical Research & Acc.~Chem.~Res. \\
-% Analytical Chemistry & Anal.~Chem. \\
-% Biomacromolecules & Biomacromolecules \\
-% Chemical Reviews & Chem.~Rev. \\
-% Chemistry of Materials & Chem.~Mater. \\
-% Crystal Growth \& Design & Cryst.~Growth Des. \\
-% Energy \& Fuels & Energy Fuels \\
-% Industrial \& Engineering Chemistry Research & Ind.~Eng.~Chem.~Res. \\
-% Inorganic Chemistry & Inorg.Chem. \\
-% Journal of the American Chemical Society & J.~Am.~Chem.~Soc. \\
-% Journal of Chemical and Engineering Data & J.~Chem.~Eng.~Data \\
-% Journal of Chemical Theory and Computation & J.~Chem.~Theory Comput. \\
-% Journal of Chemical Information and Modeling & J.~Chem.~Inf.~Model. \\
-% Journal of Combinatorial Chemistry & J.~Comb.~Chem. \\
-% Journal of Medicinal Chemistry & J.~Med.~Chem. \\
-% Journal of Natural Products & J.~Nat.~Prod. \\
-% The Journal of Organic Chemistry & J.~Org.~Chem. \\
-% The Journal of Physical Chemistry A & J.~Phys.~Chem.~A \\
-% The Journal of Physical Chemistry B & J.~Phys.~Chem.~B \\
-% The Journal of Physical Chemistry C & J.~Phys.~Chem.~C \\
-% Journal of Proteome Research & J.~Proteome Res. \\
-% Langmuir & Langmuir \\
-% Macromolecules & Macromolecules \\
-% Molecular Pharmaceutics & Mol.~Pharm. \\
-% Nano Letters & Nano Lett. \\
-% Organic Letters & Org.~Lett. \\
-% Organic Process Research \& Design & Org.~Process Res.~Dev. \\
-% Organometallics & Organometallics \\
-% \bottomrule
-% \end{tabular}
-% \caption{Journals using the ACS reference style with superscript citations}
-% \label{tbl:journals-super}
-%\end{table}
+%\newcommand*{\REVTeX}{REV\TeX4}
+% Support for \BibTeX\ bibliography following the requirements of the
+% American Chemical Society (\ACS), along with a package to make
+% these easy to have been available since version one of \currpkg.
+% The re-write from version 1 to version 2 made a number of
+% improvements to the package, and also added a number of new
+% features. However, neither version one nor version two of the
+% package was targeted directly at use for submissions to \ACS\
+% journals. This new release of \currpkg addresses this issue.
+%
+% The bundle consists of four parts. The first is a \LaTeXe\ class,
+% intended for use in submissions. It is based on the standard
+% \pkg{article} class, but makes various changes to facilitate ease
+% of use. The second part is the \LaTeX\ package, which is loaded by
+% the class. The package contains the parts of the bundle which
+% might be appropriate for use with other document
+% classes.\footnote{For example, when writing a thesis.} Thirdly,
+% two \BibTeX\ style files are included. These are used by both the
+% class and the package, but can be used directly if desired.
+% Finally, an example document is included; this is intended to act a
+% potential template for submission, and illustrates the use of the
+% class file.
+%
+%\section{The class file}
+% The class file has been designed for use in submitting journals to
+% the \ACS. It uses all of the modifications described here (those in
+% the package as well as those in the class). The accompanying
+% example manuscript can be used as a template for the correct use of
+% the class file. It is intended to act as a model for submission.
+%
+%\subsection{Class options}
+%\DescribeOption{journal}
+% The class supports a limited number of options, which are
+% specifically-targeted at submission. The class uses the
+% \pkg{keyval} system for options, in the form \opt{key=value}. The
+% most important option is \opt{journal}. This is the name of the
+% target journal for the publication. The package is designed such
+% that the choice of journal will set up the correct bibliography
+% style and so on. The journals currently recognised by the package
+% are summarised in Table~\ref{tbl:journal}. If an unknown journal
+% is specified, the package will fall-back on the
+% \opt{journal=jacsat} option.
%\begin{table}
-% \small
-% \centering
-% \begin{tabular}{>{\itshape}l>{\itshape}l}
-% \toprule
-% \upshape{Journal Title} & \upshape{\emph{CASSI} Abbreviation} \\
-% \midrule
-% ACS Chemical Biology & ACS Chem.~Biol. \\
-% Bioconjugate Chemistry & Bioconjugate Chem. \\
-% Biotechnology Progress & Biotechnol.~Prog. \\
-% Chemical Research in Toxicology & Chem.~Res.~Toxicol. \\
-% Environmental Science and Technology & Envirn.~Sci.~Technol. \\
-% Journal of Agricultural and Food Chemistry & J.~Agric.~Food Chem. \\
-% \bottomrule
-% \end{tabular}
-% \caption{Journals using the ACS reference style with in-text citations}
-% \label{tbl:journals-inline}
+% \centering
+% \begin{tabular}{>{\itshape}l>{\ttfamily}l}
+% \toprule
+% Journal & Setting \\
+% \midrule
+% Acc.\ Chem.\ Res. & achre4 \\
+% ACS Chem.\ Biol. & acbcct \\
+% ACS Nano & ancac3 \\
+% Anal.\ Chem. & ancham \\
+% Biochemistry & bichaw \\
+% Bioconjugate Chem. & bcches \\
+% Biomacromolecules & bomaf6 \\
+% Biotechnol.\ Prog. & bipret \\
+% Chem.\ Res.\ Toxicol. & crtoec \\
+% Chem.\ Rev. & chreay \\
+% Chem.\ Mater. & cmatex \\
+% Cryst.\ Growth Des. & cgdefu \\
+% Energy Fuels & enfuem \\
+% Environ.\ Sci.\ Technol. & esthag \\
+% Ind.\ Eng.\ Chem.\ Res. & iecred \\
+% Inorg.\ Chem. & inoraj \\
+% J.~Agric.\ Food Chem. & jafcau \\
+% J.~Chem.\ Eng.\ Data & jceaax \\
+% J.~Chem.\ Inf.\ Model. & jcisd8 \\
+% J.~Chem.\ Theory Comput. & jctcce \\
+% J.~Comb.\ Chem. & jcchff \\
+% J.~Med.\ Chem. & jmcmar \\
+% J.~Nat.\ Prod. & jnprdf \\
+% J.~Org.\ Chem. & joceah \\
+% J.~Phys.\ Chem.~A & jpcafh \\
+% J.~Phys.\ Chem.~B & jpcbfk \\
+% J.~Phys.\ Chem.~C & jpccck \\
+% J.~Proteome Res. & jprobs \\
+% J.~Am.\ Chem.\ Soc. & jacsat \\
+% Langmuir & langd5 \\
+% Macromolecules & mamobx \\
+% Mol.\ Pharm. & mpohbp \\
+% Nano Lett. & nalefd \\
+% Org.\ Lett. & orlef7 \\
+% Org.\ Proc.\ Res.\ Dev. & oprdfk \\
+% Organometallics & orgnd7 \\
+% \bottomrule
+% \end{tabular}
+% \caption{Values for \opt{journal} option}
+% \label{tbl:journal}
%\end{table}
%
-% This package consists of a number of \BibTeX\ files along with a
-% small \LaTeX\ file \file{achemso.sty}. The naming of the package is
-% slightly unusual, but follows from the need to pick a unique name.
-% To quote the documentation to the first version:
-%\begin{quote}
-% there is already a \LaTeX\ 2.09 and \BibTeX\ style package called
-% \pkg{acsarticle} and \file{acs.bst}, which are not ``ACS'' as in
-% `American Chemical Society' (rather, this package is formatting
-% the output according to the instructions of \emph{Advances in
-% Control Systems}). Hence, \emph{this} new package had to be
-% given another name. The name of choice was then \pkg{achemso},
-% which is made from the words ``\emph{A}merican \emph{Chem}ical
-% \emph{So}ciety.''
-% \end{quote}
-%
-%\subsection{Change of maintainer}
-% This package was initially released by Mats Dahlgren. He no longer
-% has time to devote to \LaTeX\ development. With his permission,
-% the package has therefore been taken over by Joseph Wright, the
-% maintainer of the the \pkg{rsc} package. The majority of the
-% package has been rebuilt and the \BibTeX\ style file has been
-% totally overhauled. Any mistakes are entirely the fault of the new
-% maintainer!
+%\DescribeOption{manuscript}
+% The second option is the \opt{manuscript} option. This specifies
+% the type of paper in the manuscript. The values here are
+% \opt{article}, \opt{note}, \opt{communication}, \opt{review},
+% \opt{letter} and \opt{perspective}. The valid values will depend on
+% the value of \opt{journal}. The \opt{manuscript} option determines
+% whether sections and an abstract are valid. The value
+% \opt{suppinfo} is also available for supporting information.
+%
+% Other options are provided by the package, but when used with the
+% class these are silently ignored.
+%
+%\subsection{Manuscript meta-data}
+%\DescribeMacro{\title}
+% When using the \currpkg class, the \cs{title} macro takes an
+% optional argument. This is intended for a short version of the
+% title, for use in running headers. The title in the running
+% headers is designed to ensure that print-outs of the manuscript are
+% easily identified.
+%
+%\DescribeMacro{\author}
+%\DescribeMacro{\affiliation}
+%\DescribeMacro{\altaffiliation}
+%\DescribeMacro{\email}
+% Inspired by \REVTeX, the \currpkg class alters the method for
+% adding author information to the manuscript. Each author should be
+% given as a separate \cs{author} command. These should be followed
+% by an \cs{affiliation}, which applies to the preceding authors. The
+% \cs{affiliation} macro takes an optional argument, for a short
+% version of the affiliation.\footnote{This will usually be the
+% university or company name.} At least one author should be
+% followed by an \cs{email} macro, containing contact details. All
+% authors with an e-mail address are automatically marked with a
+% star. The example manuscript demonstrates the use of all of these
+% macros.
+%\begin{LaTeXexample}[noexample]
+% \author{Author Person}
+% \author{Second Bloke}
+% \email{second.bloke@some.place}
+% \affiliation[University of Sometown]
+% {University of Somewhere, Sometown, USA}
+% \author{Indus Trialguy}
+% \email{i.trialguy@sponsor.co}
+% \affiliation[SponsoCo]
+% {Research Department, SponsorCo, BigCity, USA}
+%\end{LaTeXexample}
+%
+%\DescribeMacro{\and}
+%\DescribeMacro{\thanks}
+% The method used for setting the meta-data means that the normal
+% \cs{and} and \cs{thanks} macros are not appropriate in the \currpkg
+% class. Both produce a warning if used.
+%
+% The meta-data items should be given in the preamble to the \LaTeX\
+% file, and no \cs{maketitle} macro is required in the document body.
+% This is all handled by the class file directly. At least one
+% author, affiliation and e-mail address must be specified.
+%
+%\subsection{Bibliography notes}
+%\DescribeMacro{\bibnote}
+% By loading the \pkg{notes2bib} package, the class provides the
+% \cs{bibnote} macro. This is intended for addition of notes to the
+% bibliography (references). The macro accepts a single argument,
+% which is transferred to the bibliography by \BibTeX.
+%\begin{LaTeXexample}
+% Some text \bibnote{This note text will be in
+% the bibliography}.
+%\end{LaTeXexample}
+%
+%\subsection{Floats}
+%\DescribeEnv{scheme}
+%\DescribeEnv{chart}
+%\DescribeEnv{graph}
+% The class defines three new floating environments: \texttt{scheme},
+% \texttt{chart} and \texttt{graph}.\footnote{This is done in the
+% class as life is complex for packages due to differing mechanisms
+% in \pkg{memoir} and \textsc{koma}-script.} These can be used as
+% expected to include graphical content. The placement of these new
+% floats and the standard \texttt{table} and \texttt{figure} floats
+% is altered to be ``here'' if possible. The contents of all floats
+% is automatically horizontally centred on the page.
+%
+% Cross-referencing to floats automatically includes the name of the
+% floating environment. For example, \texttt{\cs{ref}\{table:one\}}
+% will yield ``Table~1'' without the user adding the ``Table'' part.
+%
+%\section{The package file}
+% The package file is loaded by the class, but can also be loaded
+% independently. The class contains only items focussed on
+% submission; more generally-useful items are stored in the package.
+%
+%\subsection{Altering the behaviour of \pkg{natbib}}
+% \currpkg comes with the \pkg{natmove} package, which adds
+% \pkg{cite}-like functionality to \pkg{natbib}.\footnote{The code is
+% a copy from \pkg{cite} with minor modifications.} Thus citations
+% may be made using all of the \pkg{natbib} commands
+% (\cs{citeauthor}, \cs{citeyear}, \etc). For superscript citations,
+% the number will be moved after punctuation as needed. The user
+% should therefore write citations suitable for ``in line'' use and
+% leave the positioning to the package.
+%\begin{LaTeXexample}
+% Some text \cite{Coghill2006} some more text.\\
+% Some text ending a sentence \cite{Coghill2006}.
+%\end{LaTeXexample}
+%
+%\subsection{Package options}
+% The \opt{journal} and \opt{manuscript} options have no effect when
+% using the package without the class. Instead, the user can control
+% various aspects of the behaviour of the package
+% directly.\footnote{Using the package alone probably means a report
+% or thesis is being written, and so prescriptive application of
+% journal style is not appropriate.} The options all relate to
+% aspects of reference handling.
+%
+%\DescribeOption{super}
+% The \opt{super} option affects the handling of superscript
+% reference markers. The option switches this behaviour
+% on and off (and takes Boolean values: \opt{super=true} and
+% \opt{super=false} are valid).
+%
+%\DescribeOption{maxauthors}
+%\DescribeOption{usetitle}
+% The \opt{maxauthors} and \opt{usetitle} options change the output
+% of the \BibTeX\ style files. \opt{maxauthors} is the number of
+% authors allowed before truncation to ``et~al.'' occurs. The
+% default is 15, but can be increased (for example for supplementary
+% information). Using the value 0 means that all authors will be
+% added to the list. The \opt{usetitle} option is a Boolean, and
+% sets whether the title of a paper referenced appears in the
+% bibliography. The default is \opt{usetitle=false}.
+%
+%\DescribeOption{biblabel}
+% Redefining the formatting of the numbers used in the bibliography
+% usually requires modifying internal \LaTeX\ macros. The
+% \opt{biblabel} option makes these changes more accessible: valid
+% values are \opt{plain} (use the number only), \opt{brackets}
+% (surround the number in brackets) and \opt{period} or
+% \opt{fullstop} (follow the number by a full stop/period).
+%
+%\DescribeOption{biochemistry}
+%\DescribeOption{biochem}
+% Most \ACS\ journals use the same bibliography style, with the only
+% variation being the inclusion of article titles. However, a small
+% number of journals use a rather different style; the journal
+% \emph{Biochemistry} is probably the most prominent. The
+% \opt{biochemistry} or \opt{biochem} option uses the style of
+% \emph{Biochemistry} for the bibliography, rather than the normal
+% \ACS\ style. For this style, the \opt{usetitle=true} option is the
+% default.\footnote{More accurately, the default built into the
+% \BibTeX\ style file is to use article titles with the
+% \emph{Biochemistry} style.}
%
%\section{The \texorpdfstring{\BibTeX}{BibTeX} style files}
+% \currpkg is supplied with two style files, \file{achemso.bst} and
+% \file{biochem.bst}. The direct use of these without the \currpkg
+% package file is not recommended, but is possible. The style files
+% can be loaded in the usual way, with a \cs{bibliographystyle}
+% command. The \pkg{natbib} and \pkg{micteplus} packages must be
+% loaded by the \LaTeX\ file concerned, if the \pkg{achemso} package
+% is not in use.
+%
% The \BibTeX\ style files implement the bibliographic style
-% specified by the ACS in \emph{The ACS Style Guide}
-% \cite{Coghill2006}, on the ACS website \cite{ACS2007}, and in
-% current ACS publications. Some of this information can be
-% contradictory, and \emph{The ACS Style Guide} sometimes gives more
-% than one option as a model. In order to resolve cases where several
-% possibilities are available current editions of the \emph{Journal
-% of the American Chemical Society} have been consulted; the current
-% consensus there has been taken as the correct approach. In
-% addition to the problem of picking the correct style, some of the
-% \BibTeX\ record types are difficult to match to standard references
-% in ACS journals. The ``best guess'' has been taken with these.
-%
-%\subsection{Additional record types}
-% In general, the database record types supported here follow those
-% in the standard \BibTeX\ style files. Four additional record types
-% are provided:
-% \begin{description}
-% \item[|patent|] A patent: formatting is similar to other record
-% types. The data entry for this record type follows the
-% pattern used in \file{rsc.bst}: |journal| is used to hold
-% the patent type (\eg.~``U.S.~Patent''), with the patent
-% number given in |pages|. Whilst this format is non-standard,
-% it is relatively easy to use and implement!
-% \item[|submitted|] Articles submitted to journals but not
-% yet accepted: appends ``submitted'' in a suitable fashion
-% to the entry.
-% \item[|inpress|] Articles in press: appends ``in press'' or,
-% if available, the DOI number assigned to the article.
-% \item[|remark|] A note with no other information to be
-% included. Output consists purely of the |note| field.
-% \end{description}
-%
-%\subsection{\texorpdfstring{\BibTeX}{BibTeX} database entry
-% requirements}
-% The requirements for entries in the \BibTeX\ database are slightly
-% different using \file{achemso.bst} to the standard style files.
-% This is mainly because some fields are not cited in ACS
-% bibliographies. In particular, journal articles do not require a
-% title (the |title| field is ignored). Articles in books and
-% ``collections'' only need the title of the book. If a chapter title
-% is given for an |incollection| record, it will be printed, but not
-% in the case of an |inbook| record.
-%
-%\subsection{References to software}
-% Referencing software is always a little difficult. The style files
-% provided here follow the normal \LaTeX\ convention of using the
-% |manual| record type to cite software. The only requirement is a
-% |title|, but fields such as |organization| may be used for more
-% detail. The |edition| field is used to format the software version
-% correctly: this will automatically be prefixed with ``version'' by
-% the style file.
-%
-%\subsection{The \texttt{annotate} field}
-% The standard \BibTeX\ styles use the |note| field for notes to be
-% added to the citation. However, it is common to want personal
-% notes about references. This is catered for using the |annotate|
-% field. The style \file{achemso} ignores the |annotate| field,
-% whilst the \file{achemsol} style appends the |annotate| information
-% to the bibliographic output. Thus \file{achemsol} is intended for
-% use in database maintenance, whilst \file{achemso} is for
-% production bibliographies.
-%
-%\DescribeMacro{\refin}
-% For use in the |annotate| field the macro \cmd{\refin} is defined
-% in \file{achemso.bst} and \file{achemsol.bst}. The command takes a
-% single argument \marg{text}, and gives the output
-% \textbf{Referenced in: text}. This command takes one argument
-% (normally text) which is preceded by the text ``\textbf{Referenced
-% in:} \meta{text}''. The \cs{refin} command is intended for tracking
-% citations ``backward'' through the database. For example, this
-% could be used to link citations in a database to the writer's own
-% papers.
-%
-%\subsection{Predefined journal abbreviations}
-% A number of journal abbreviations are defined in the \ext{bst} files.
-% The abbreviations cover a number ACS journals, several other
-% physical chemistry publications and other journals listed as
-% highly cited by \emph{Chem.\ Abs.}\ The interested user should
-% consult the \ext{bst} files for full details.
-%
-%\subsection{Multiple citations: \pkg{mciteplus} support}
-% By default, \BibTeX\ does not handle producing compound references.
-% The \pkg{mciteplus} package solves this problem, and is highly
-% recommended to users of \currpkg. This allows you to put something
-% like:
-%\begin{LaTeXexample}[\typesetcodeonly]
-% \documentclass{article}
-% \usepackage{mciteplus}
-% \begin{document}
-% \cite{Wanzlick1962,*Ofele1968}
-% \bibliography{example}
-% \bibliographystyle{achemsoM}
-% \end{document}
-%\end{LaTeXexample}
-% and get output of the form:
-%\begin{enumerate}
-% \item (a) Wanzlick,~H.~W. \emph{{A}ngew. {C}hem., {I}nt. {E}d.
-% {E}ngl.} \textbf{1962}, \emph{1}, 75--80; (b) \"Ofele,~K.
-% \emph{{J}. {O}rganomet. {C}hem.} \textbf{1968}, \emph{12},
-% P42--P43.
-%\end{enumerate}
-% in the bibliography. Notice the change of \cs{bibliographystyle}
-% from \file{achemso} to \file{achemsoM}.
-%
-%\subsection{\pkg{natbib} support}
-% As of version 2.2, a \pkg{natbib} compatible style file,
-% \file{achemnat} is provided. The style file provides the
-% appropriate option, \pkg{natbib}, to load this \BibTeX\ file along
-% with \pkg{natbib}, setting up the appropriate options.
-%
-%\section{The \texorpdfstring{\LaTeX}{LaTeX} Package}
-% The current version of \file{achemso.sty} is a complete
-% re-implementation of the functionality of the original file,
-% designed to ensure greater compatibility with other packages. The
-% only change for the user is that the bibliography section does
-% \emph{not} start a new page when using the |article| document
-% class. However, the package now supports all of the standard
-% classes, and so the |report| class may be used to ensure a new
-% page is started.
-%
-%\DescribeMacro{\bibliographystyle}
-% Loading the \currpkg package adds the appropriate
-% \cmd{\bibliographystyle} command to the \LaTeX\ source. As a
-% result, subsequent \cmd{\bibliographystyle} statements will be
-% ignored: a suitable warning is given. The format of citations is
-% altered (using the \pkg{cite} or \pkg{natbib} package as
-% appropriate), and the package ensures that the bibliography will be
-% named ``References'' in all standard document types.\footnote{This
-% only works if the \pkg{babel} package is \emph{not} loaded. Users
-% wanting a system which works with \pkg{babel} should look at the
-% \pkg{chemstyle} package. }
-%
-% The \currpkg package has options:
-% \begin{description}
-% \item[\opt{note}] If the bibliography contains notes as well
-% as citations, then the section heading should be ``References
-% and Notes''. This is altered by the \opt{note} package
-% option.
-% \item[\opt{number}] This option numbers the bibliography
-% section (using the \pkg{tocbibind} package), and causes it to
-% be entered in the Table of Contents.
-% \item[\opt{list}] This option is intended for creating a listing
-% of the entire \BibTeX\ database. The BibTeX style is changed
-% to \currpkg, which will output the additional database field
-% |annotate|, intended for personal notes about a particular
-% database entry. It also adds the \BibTeX\ key for each
-% citation as a marginal note to the output, using the
-% \pkg{showkeys} package.
-% \item[\opt{notsuper}] Switches from superscript citations
-% (\eg.~Author \emph{et al.}$^3$) to in-text ones in italics
-% (\eg.~Author \emph{et al.}~(\emph{3})). There is a \opt{super}
-% option for completeness, which simply gives the default
-% behaviour.
-% \item[\opt{natbib}] Uses \pkg{natbib} rather than \pkg{cite}
-% for citation formatting; this also loads the \file{achemnat}
-% style in place of \file{achemso}.
-% \item[\opt{mcite}] Uses the \pkg{mciteplus}-compatible version
-% of the \BibTeX\ style file, and loads \pkg{mciteplus}.
-% \item[\opt{iecr}] Uses a setup suitable for the journal
-% \emph{Industrial \& Engineering Chemical Research}.
-% \item[\opt{usetitle}] Adds journal titles in bibliography
-% (equivalent to \opt{iecr} option).
-% \end{description}
-%
-%\StopEventually{\bibliography{achemso}}
-%
-%\section{The Package Code}
-% The package code is not very complicated. For the interested
-% reader(s), it is presented here. The usual setup code is executed.
+% specified by the \ACS\ in \emph{The ACS Style Guide}
+% \cite{Coghill2006}. By default, article titles are not included in
+% output using the \file{achemso.bst} file, but are with the
+% \file{biochem.bst} file.
+%
+%\StopEventually{%
+% \PrintChanges
+% \PrintIndex
+% \bibliography{achemso}}
+%
+%\iffalse
+%<*class>
+%\fi
+%\section{The class file}
+%\subsection{Setup code}
+% The first task of the class is the usual identification.
% \begin{macrocode}
-%<*package>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{achemso}
- [2008/04/16 v2.2i LaTeX and BibTeX support for American
- Chemical Society publications]
-% \end{macrocode}
-%\begin{macro}{\ifACS@sctnnmbr}
-%\begin{macro}{\ifACS@list}
-%\begin{macro}{\ifACS@note}
-%\changes{v2.0}{2007/01/17}{Boolean values made internal to package}
-%\begin{macro}{\ifACS@super}
-%\changes{v2.1}{2007/02/15}{New Boolean for citation control}
-%\begin{macro}{\ifACS@natbib}
-%\changes{v2.2a}{2007/07/08}{New Boolean for \pkg{natbib} support}
-%\begin{macro}{\ifACS@mcite}
-%\changes{v2.2e}{2008/01/16}{New macro}
-%\begin{macro}{\ifACS@iecr}
-%\changes{v2.2g}{2008/01/21}{New macro}
-% Boolean values are used to handle the options.
-% \begin{macrocode}
-\newif\ifACS@sctnnmbr\ACS@sctnnmbrfalse
-\newif\ifACS@list\ACS@listfalse
-\newif\ifACS@note\ACS@notefalse
-\newif\ifACS@super\ACS@supertrue
-\newif\ifACS@natbib\ACS@natbibfalse
-\newif\ifACS@mcite\ACS@mcitefalse
-\newif\ifACS@iecr\ACS@iecrfalse
-% \end{macrocode}
-%\end{macro}
-%\end{macro}
-%\end{macro}
-%\end{macro}
-%\end{macro}
-%\end{macro}
-%\end{macro}
-% The options are processed.
-%\changes{v2.2d}{2007/10/16}{Added \opt{notes} option}
-%\changes{v2.2i}{2008/04/16}{Added \opt{usetitle} option}
-% \begin{macrocode}
-\DeclareOption{note}{\ExecuteOptions{notes}}
-\DeclareOption{notes}{\ACS@notetrue}
-\DeclareOption{number}{\ACS@sctnnmbrtrue}
-\DeclareOption{super}{\ACS@supertrue}
-\DeclareOption{list}{\ACS@listtrue}
-\DeclareOption{notsuper}{\ACS@superfalse}
-\DeclareOption{natbib}{\ACS@natbibtrue}
-\DeclareOption{mcite}{\ACS@mcitetrue}
-\DeclareOption{iecr}{\ACS@iecrtrue}
-\DeclareOption{usetitle}{\ACS@iecrtrue}
-\DeclareOption*{\OptionNotUsed}
-\ProcessOptions\relax
-% \end{macrocode}
-%\changes{v2.1}{2007/02/15}{\pkg{cite} package is loaded with different
-% options depending on citation style requested}
-%\changes{v2.2a}{2007/07/08}{\pkg{natbib} support added}
-% The \pkg{cite} package is loaded to sort and compress references
-% correctly. Depending upon the package option given, citations are
-% either superscript or italic and in parentheses.
-% \begin{macrocode}
-\ifACS@natbib
- \ifACS@super
- \RequirePackage[numbers,sort&compress,super]{natbib}
- \else
+\LoadClass[12pt]{article}
+\RequirePackage[etex=false]{notes2bib}[2008/06/21]
+\RequirePackage{achemso}
+\ProvidesClass{achemso}
+ [\acs@ver Submissions to ACS journals]
% \end{macrocode}
-%\begin{macro}{\citenumfont}
-% For in-line citations with \pkg{natbib}, we have to do a bit of
-% work to get things to look right. \pkg{natbib} uses
-% \cs{citenumfont} to format the numbers, but it is not defined by
-% default, so we have to use \cs{newcommand}.
+% The necessary support is loaded.
% \begin{macrocode}
- \RequirePackage[numbers,sort&compress,round]{natbib}
- \newcommand*{\citenumfont}{\textit}
- \fi
-\else
- \ifACS@super
+\RequirePackage[T1]{fontenc}
+\RequirePackage[scaled=0.90]{helvet}
+\RequirePackage[margin=2.54cm]{geometry}
+\RequirePackage{mathptmx,courier,setspace,graphicx,truncate,%
+ float,varioref}
+\AtBeginDocument{\doublespacing}
% \end{macrocode}
+%
+%\subsection{Meta-data changes}
+%\begin{macro}{\title}
+%\begin{macro}{\@title}
+%\begin{macro}{\acs@title}
+%\begin{macro}{\@shorttitle}
+% For the meta-data, the \REVTeX\ bundle provides a good model for
+% the commands to give the author. First of all, the \cs{title}
+% macro is given an optional argument. \cs{gdef} is used here to
+% avoid any odd grouping issues. The various title macros are all
+% ``trapped'' in the preamble. As the argument of \cs{title} is
+% needed in the document body, \cs{acs@title} is defined to store it
+% without deletion.
+% \begin{macrocode}
+\renewcommand*{\title}[2][]{%
+ \gdef\@title{#2}%
+ \gdef\acs@title{#2}%
+ \gdef\@shorttitle{#1}}
+\@onlypreamble\title
+% \end{macrocode}
+%\end{macro}
%\end{macro}
-%\changes{v2.2c}{2007/08/22}{Use the \pkg{overcite} alias for
-% \pkg{cite} as ACS have very old \LaTeX\ system}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@authorcnt}
+%\begin{macro}{\acs@affilcnt}
+%\begin{macro}{\acs@altaffilcnt}
+% Still following \REVTeX, the \cs{author} macro is redefined. In
+% this way, each author is given as a separate \cs{author} argument.
% \begin{macrocode}
- \RequirePackage[nospace]{overcite}
- \else
+\newcount\acs@authorcnt
+\newcount\acs@affilcnt
+\newcount\acs@altaffilcnt
% \end{macrocode}
-% Again in-line citations need some format changes. In the case of
-% \pkg{cite}, everything is defined initially. Thus we can use
-% \cs{renewcommand} for everything.
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\author}
+% The affiliation count starts at two so that \cs{@fnsymbol} does not
+% give a star.
% \begin{macrocode}
- \RequirePackage{cite}
- \renewcommand{\citeleft}{(}
- \renewcommand{\citeright}{)}
- \renewcommand{\citeform}[1]{\emph{#1}}
- \fi
-\fi
+\acs@affilcnt\@ne\relax
+\acs@altaffilcnt\@ne\relax
+\renewcommand*{\author}[1]{%
+ \global\advance\acs@authorcnt\@ne\relax
+ \expandafter\gdef
+ \csname @author@\@roman\the\acs@authorcnt\endcsname{#1}%
% \end{macrocode}
-% If the \pkg{babel} package is loaded, the \opt{note} option does
-% not work. So it is disabled here with a suitable warning.
+% The affiliation counter needs to be one higher than the current value.
+% This is best achieved using a group.
% \begin{macrocode}
-\@ifpackageloaded{babel}
- {\ACS@notefalse\PackageWarning{achemso}%
- {babel package loaded - note option disabled}}
- {}
+ \begingroup
+ \advance\acs@affilcnt\@ne\relax
+ \expandafter\xdef
+ \csname @author@affil@\@roman\the\acs@authorcnt\endcsname
+ {\the\acs@affilcnt}%
+ \endgroup}
+\@onlypreamble\author
% \end{macrocode}
-%\begin{macro}{\ACS@biberror}
-%\changes{v2.2e}{2008/01/16}{Improved error message}
-% The function \cs{ACS@biberror} is defined here to provide an easy
-% way of generating a warning if there is no name for a bibliography
-% section. This will only happen with non-standard class files.
-% \begin{macrocode}
-\newcommand*{\ACS@biberror}{\PackageError{achemso}%
- {No bibliography name command defined}
- {The document class you have used does not define
- \string\refname\MessageBreak or \string\bibname}}
-% \end{macrocode}
-%\end{macro}
-%\begin{macro}{\refname}
-%\begin{macro}{\bibname}
-% The \opt{note} option renames the references section to
-% ``References and Notes''. This applies for all standard document
-% classes. The term ``Bibliography'' is not used in chemistry, the
-% value of \cs{bibname} is redefined here in all cases where it
-% exists.
-% \begin{macrocode}
-\@ifundefined{refname}{%
- \@ifundefined{bibname}{%
- \ACS@biberror
- }{%
- \ifACS@note
- \renewcommand*{\bibname}{References and Notes}
- \else
- \renewcommand*{\bibname}{References}
- \fi
- }
-}{%
- \ifACS@note
- \renewcommand*{\refname}{References and Notes}
- \fi
-}
+%\end{macro}
+%\begin{macro}{\and}
+%\begin{macro}{\thanks}
+% Neither \cs{and} nor \cs{thanks} are used by the document class.
+% \begin{macrocode}
+\renewcommand*{\and}{%
+ \ClassError{achemso}{\string\and\space not supported}
+ {The achemso class does not use \string\and\MessageBreak
+ see the documentation for details}}
+\renewcommand*{\thanks}[1]{%
+ \ClassError{achemso}{\string\thanks\space not supported}
+ {The achemso class does not use \string\thanks\MessageBreak
+ see the documentation for details}}
% \end{macrocode}
%\end{macro}
%\end{macro}
-% If the \opt{number} option is set, the \pkg{tocbibind} package is
-% used to number the bibliography.
-%\changes{v2.0}{2007/01/17}{Switched to using \pkg{tocbibind}
-% to produce number bibliography}
+%\begin{macro}{\affiliation}
+% Affiliations work in a similar manner, with a check to ensure that
+% an author has been given. The \cs{affiliation} macro also saves
+% the current affiliation for the check on the next run.
% \begin{macrocode}
-\ifACS@sctnnmbr
- \RequirePackage[numbib]{tocbibind}
-\fi
+\newcommand*{\affiliation}[2][\relax]{%
+ \ifnum\acs@authorcnt>\z@\relax
+ \global\advance\acs@affilcnt\@ne
% \end{macrocode}
-%\begin{macro}{\bibliographystyle}
-%\changes{v2.0}{2007/01/17}{Replaced custom code with
-% \pkg{showkeys} package}
-%\changes{v2.0}{2007/01/17}{Command ignored in document body}
-%\changes{v2.2g}{2008/01/21}{Added \opt{iecr} code}
-%\changes{v2.2h}{2008/03/12}{Fixed problem with \pkg{chapterbib}}
-%\changes{v2.2h}{2008/03/12}{Style is re-applied by calling macro
-% in document body}
-%\begin{macro}{\acs@bibstyle}
-%\changes{v2.2h}{2008/03/12}{New macro}
-% Depending on the package option, the bibliography style will either
-% be \file{achemso} or \file{achemsol}. The later is intended for
-% listing the entire database. The \opt{list} option of the package
-% selects this, and for listing also generates boxed labels for each
-% reference. The \pkg{showkeys} package provides this functionality.
-% If \pkg{natbib} is asked for, then the appropriate style files are
-% used in place of the standard ones.
-% \begin{macrocode}
-\ifACS@mcite
- \RequirePackage{mciteplus}
-\fi
-\ifACS@iecr
- \ifACS@natbib
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{iecrnatM}%
- \else
- \newcommand*{\acs@bibstyle}{iecrnat}%
- \fi
+% A group is used here so that the address only gets locally defined;
+% a global definition occurs if the address is not a duplicate.
+% \begin{macrocode}
+ \begingroup
+ \expandafter\def
+ \csname @address@\@roman\acs@affilcnt\endcsname{#2}%
+% \end{macrocode}
+% There is the possibility that the affiliation has been given
+% already. So a check is made. If it has, then the new affiliation
+% is thrown away.
+% \begin{macrocode}
+ \acs@tempcnta\acs@affilcnt\relax
+ \acs@ifdupaffil
+ {\begingroup
+ \acs@tempcntb\@ne\relax
+ \acs@switchfalse
+ \edef\acs@tempa{%
+ \csname @address@\@roman\acs@tempcnta\endcsname}%
+ \acs@ifdup@affil
+% \end{macrocode}
+% The affiliation number needed is now in \cs{acs@tempcntb}. Each
+% author needs to be checked to swap the affiliation marker as
+% needed.
+% \begin{macrocode}
+ \acs@tempcnta\z@\relax
+ \edef\acs@tempa{\the\acs@affilcnt}%
+ \global\advance\acs@affilcnt\m@ne\relax
+ \acs@swapaffil
+ \endgroup}
+ {\expandafter\gdef
+ \csname @address@\@roman\acs@affilcnt\endcsname{#2}%
+ \ifx\relax#1\relax
+ \expandafter\gdef
+ \csname @affil@\@roman\acs@affilcnt\endcsname{#2}%
+ \else
+ \expandafter\gdef
+ \csname @affil@\@roman\acs@affilcnt\endcsname{#1}%
+ \fi}
+ \endgroup
\else
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{iecrM}%
- \else
- \newcommand*{\acs@bibstyle}{iecr}%
+ \ClassWarning{achemso}
+ {Affiliation with no author}%
+ \fi}
+\@onlypreamble\affiliation
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\acs@swapaffil}
+% The authors are looped through to swap the incorrect affiliation
+% marker.
+% \begin{macrocode}
+\newcommand*{\acs@swapaffil}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@authorcnt\relax\else
+ \edef\acs@tempb{%
+ \csname @author@affil@\@roman\acs@tempcnta\endcsname}%
+ \ifx\acs@tempa\acs@tempb
+ \expandafter\xdef
+ \csname @author@affil@\@roman\acs@tempcnta\endcsname{%
+ \the\acs@tempcntb}%
\fi
- \fi
-\else
- \ifACS@list
- \ifACS@natbib
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{achemlntM}%
- \else
- \newcommand*{\acs@bibstyle}{achemlnt}%
+ \acs@swapaffil
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\altaffiliation}
+% For the alternative affiliation, a second count is kept, and the
+% affiliation is ``attached'' to the author.
+% \begin{macrocode}
+\newcommand*{\altaffiliation}[1]{%
+ \ifnum\acs@authorcnt>\z@\relax
+ \global\advance\acs@altaffilcnt\@ne\relax
+ \expandafter\gdef
+ \csname @altaffil@\@roman\acs@authorcnt\endcsname{#1}%
+ \expandafter\xdef
+ \csname @author@altaffil@\@roman\acs@authorcnt\endcsname
+ {\the\acs@altaffilcnt}
+ \else
+ \ClassWarning{achemso}
+ {Affiliation with no author}%
+ \fi}
+\@onlypreamble\altaffiliation
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\email}
+% E-mail addresses are attached to authors as well.
+% \begin{macrocode}
+\newcommand*{\email}[1]{%
+ \ifnum\acs@authorcnt>\z@\relax
+ \expandafter\gdef
+ \csname @email@\@roman\acs@authorcnt\endcsname{#1}%
+ \else
+ \ClassWarning{achemso}
+ {E-mail with no author}%
+ \fi}
+\@onlypreamble\email
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\@maketitle}
+%\changes{v3.0a}{2008/08/21}{Skips footnotes for a single
+% institution}
+% With the changes outlined above in place, a new \cs{@maketitle}
+% macro is needed. This is partially a copy of the existing, but
+% rather heavily modified.
+% \begin{macrocode}
+\renewcommand*{\@maketitle}{%
+ \ifnum\acs@authorcnt<\z@\relax
+ \ClassError{achemso}{No authors defined}
+ {At least one author is required}%
+ \else
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ {\LARGE\bfseries\sffamily
+ \renewcommand*{\acs@tempa}{suppinfo}%
+ \ifx\acs@manuscript\acs@tempa
+ Supporting information for:
+ \fi
+ \@title \par}%
+ \vskip 1.5em\relax
+ {\large\sffamily\frenchspacing \acs@authorlist}%
+ \vskip 1em%
+ {\itshape\acs@addresslist}%
+ \ifnum\acs@affilcnt>\tw@\relax
+ \acs@affilfoot
+ \else
+ \ifnum\acs@altaffilcnt>\@ne\relax
+ \acs@affilfoot
\fi
+ \fi
+ \vskip 1em\relax
+ {\sffamily E-mail: \acs@emaillist}%
+ \end{center}
+ \par
+ \vskip 1.5em\relax
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\acs@authorlist}
+%\begin{macro}{\acs@author@list}
+%\changes{v3.0a}{2008/08/21}{Skips footnotes for a single
+% institution}
+% Two similar macros to enumerate the authors and their affiliations.
+% The total number of affiliations (main and alternative) tracked
+% using \cs{acs@tempcntc}.
+% \begin{macrocode}
+\newcommand*{\acs@authorlist}{%
+ \acs@tempcnta\z@\relax
+ \acs@tempcntc\z@\relax
+ \acs@author@list}
+\newcommand*{\acs@author@list}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@authorcnt\relax\else
+ \ifnum\acs@tempcnta=\acs@authorcnt\relax
+ \ifnum\acs@tempcnta=\@ne\relax\else
+ and
+ \fi
+ \fi
+ \csname @author@\@roman\acs@tempcnta\endcsname
+ \ifnum\acs@tempcnta=\acs@authorcnt\relax\else
+ ,%
+ \fi
+% \end{macrocode}
+% The check for a star uses the e-mail address. The literal star is
+% avoided as this gives an easier method to swap the symbol if
+% needed.\footnote{For example, \emph{J.\ Am.\ Chem.\ Soc.} uses a
+% sans serif font, whereas \emph{Organometallics} is serif.}
+% \begin{macrocode}
+ \begingroup
+ \@ifundefined{@email@\@roman\acs@tempcnta}
+ {\aftergroup\@firstoftwo}
+ {\aftergroup\@secondoftwo}%
+ \endgroup
+ {\def\acs@tempb{}}
+ {\protected@edef\acs@tempb{%
+ \acs@fnsymbol{\@ne}%
+ \ifnum\acs@affilcnt>\tw@\relax
+ ,%
+ \else
+ \ifnum\acs@altaffilcnt>\@ne\relax
+ ,%
+ \fi
+ \fi}}%
+ \ifnum\acs@affilcnt>\tw@\relax
+ \protected@edef\acs@tempb{\acs@tempb\@fnsymbol{%
+ \csname @author@affil@\@roman\acs@tempcnta
+ \endcsname}}%
\else
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{achemsolM}%
- \else
- \newcommand*{\acs@bibstyle}{achemsol}%
+ \ifnum\acs@altaffilcnt>\@ne\relax
+ \protected@edef\acs@tempb{\acs@tempb\@fnsymbol{%
+ \csname @author@affil@\@roman\acs@tempcnta
+ \endcsname}}%
\fi
\fi
- \RequirePackage[notcite]{showkeys}
+ \begingroup
+ \@ifundefined{@author@altaffil@\@roman\acs@tempcnta}
+ {\aftergroup\@gobble}
+ {\aftergroup\@firstofone}%
+ \endgroup
+ {\global\advance\acs@tempcntc\@ne\relax
+ \advance\acs@tempcntc\acs@affilcnt
+ \ifnum\acs@affilcnt>\@ne\relax
+ \protected@edef\acs@tempb{\acs@tempb,}%
+ \fi
+ \protected@edef\acs@tempb{%
+ \acs@tempb\@fnsymbol{\acs@tempcntc}}}%
+% \end{macrocode}
+% This line deliberately has no \% at the end.
+% \begin{macrocode}
+ \textsuperscript{\acs@tempb}
+ \acs@author@list
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@fnsymbol}
+% The ACS have an extended list of symbols. The star at position one
+% is left alone in case it is useful somewhere.
+% \begin{macrocode}
+\newcommand*{\acs@fnsymbol}[1]{%
+ \ensuremath{\ifcase#1\or *\or \dagger\or \ddagger\or
+ \mathsection\or \|\or \bot\or \#\or @\else
+ \ClassError{achemso}{Too many affiliations}
+ {There are no symbols left: complain to the package
+ author}\fi}}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\acs@addresslist}
+%\begin{macro}{\acs@address@list}
+% A similar recursive approach is used for the addresses. Note that
+% the loop starts at one (due to the footnote symbol issue).
+% \begin{macrocode}
+\newcommand*{\acs@addresslist}{%
+ \ifnum\acs@affilcnt>\@ne\relax
+ \acs@tempcnta\@ne\relax
+ \acs@address@list
\else
- \ifACS@natbib
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{achemnatM}%
- \else
- \newcommand*{\acs@bibstyle}{achemnat}%
- \fi
+ \ClassError{achemso}{No affiliations}
+ {At least one affiliation is needed}%
+ \fi}
+\newcommand*{\acs@address@list}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@affilcnt\relax\else
+ \acs@ifdupaffil
+ {}
+ {\ifnum\acs@tempcnta=\acs@affilcnt\relax
+ \ifnum\acs@affilcnt>\tw@\relax
+ and
+ \fi
+ \fi
+ \csname @address@\@roman\acs@tempcnta\endcsname
+ \ifnum\acs@tempcnta=\acs@affilcnt\relax\else
+ ,
+ \fi}%
+ \acs@address@list
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@ifdupaffil}
+%\begin{macro}{\acs@ifdup@affil}
+% There is the possibility of duplicated affiliations. These can be
+% trapped if the two stings are identical. This is tested here.
+% \begin{macrocode}
+\newcommand*{\acs@ifdupaffil}{%
+ \begingroup
+ \acs@tempcntb\@ne\relax
+ \acs@switchfalse
+ \edef\acs@tempa{%
+ \csname @address@\@roman\acs@tempcnta\endcsname}%
+ \acs@ifdup@affil
+ \expandafter\expandafter\expandafter\endgroup
+ \ifacs@switch
+ \expandafter\@firstoftwo
\else
- \ifACS@mcite
- \newcommand*{\acs@bibstyle}{achemsoM}%
+ \expandafter\@secondoftwo
+ \fi}
+\newcommand*{\acs@ifdup@affil}{%
+ \advance\acs@tempcntb\@ne\relax
+% \end{macrocode}
+% Here, the loop has to stop before the two counters are equal.
+% \begin{macrocode}
+ \ifnum\acs@tempcntb=\acs@tempcnta\relax\else
+ \edef\acs@tempb{%
+ \csname @address@\@roman\acs@tempcntb\endcsname}%
+ \ifx\acs@tempa\acs@tempb
+ \expandafter\acs@switchtrue
+ \fi
+% \end{macrocode}
+% If the switch is set, stop the recursion (this means that
+% \cs{acs@tempcntb} is the number of the duplicate affiliation).
+% \begin{macrocode}
+ \ifacs@switch\else
+ \expandafter\acs@ifdup@affil
+ \fi
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@affilfoot}
+%\changes{v3.0a}{2008/08/21}{Fixed bugs in printing affiliations
+% correctly}
+%\begin{macro}{\acs@affil@foot}
+%\begin{macro}{\acs@altaffil@foot}
+% The various affiliation markers need to be explained.
+% \cs{acs@tempcntb} is used to count the total number (affiliations
+% plus alternative affiliations), so that the signs are correct.
+% \begin{macrocode}
+\newcommand*{\acs@affilfoot}{%
+ \acs@tempcnta\@ne\relax
+ \acs@tempcntb\@ne\relax
+ \acs@affil@foot
+ \acs@tempcnta\z@\relax
+ \acs@altaffil@foot}
+\newcommand*{\acs@affil@foot}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@affilcnt\relax\else
+ \advance\acs@tempcntb\@ne\relax
+ \footnotetext[\acs@tempcntb]
+ {\csname @affil@\@roman\acs@tempcnta\endcsname}%
+ \acs@affil@foot
+ \fi}
+\newcommand*{\acs@altaffil@foot}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@authorcnt\relax\else
+ \begingroup
+ \@ifundefined{@altaffil@\@roman\acs@tempcnta}
+ {\aftergroup\@gobble}
+ {\aftergroup\@firstofone}%
+ \endgroup
+ {\advance\acs@tempcntb\@ne\relax
+ \footnotetext[\acs@tempcntb]
+ {\csname @altaffil@\@roman\acs@tempcnta\endcsname}}%
+ \acs@altaffil@foot
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@emaillist}
+%\changes{v3.0a}{2008/08/21}{Fixed error if only one address is given}
+%\begin{macro}{\acs@email@list}
+% The final piece of meta-data to print is the e-mail address list.
+% The total number of e-mail addresses given it counted in
+% \cs{acs@tempcntb}, which means a warning can be given if there are
+% none. The group is used so that \cs{UrlFont} can be set correctly.
+% \begin{macrocode}
+\newcommand*{\acs@emaillist}{%
+ \begingroup
+ \renewcommand*{\UrlFont}{\sf}%
+ \acs@tempcnta\z@\relax
+ \acs@tempcntb\z@\relax
+ \acs@email@list
+ \expandafter\endgroup\expandafter\acs@tempcntb\number
+ \acs@tempcntb\relax
+ \ifnum\acs@tempcntb=\z@\relax
+ \ClassError{achemso}{No e-mail given}
+ {At lest one author must have a contact e-mail}%
+ \fi}
+\newcommand*{\acs@email@list}{%
+ \advance\acs@tempcnta\@ne\relax
+ \ifnum\acs@tempcnta>\acs@authorcnt\relax\else
+ \begingroup
+ \@ifundefined{@email@\@roman\acs@tempcnta}
+ {\aftergroup\@gobble}
+ {\aftergroup\@firstofone}%
+ \endgroup
+ {\advance\acs@tempcntb\@ne\relax
+ \ifnum\acs@tempcntb>\@ne\relax
+% \end{macrocode}
+% The lack of a percent sign here is deliberate.
+% \begin{macrocode}
+ ;
+ \fi
+ \expandafter\expandafter\expandafter\url\expandafter
+ \expandafter\expandafter{%
+ \csname @email@\@roman\acs@tempcnta\endcsname}}%
+ \acs@email@list
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+% \cs{maketitle} is required by the document class, and must start
+% the document. No variation is allowed, and so it is done
+% automatically.
+% \begin{macrocode}
+\g@addto@macro{\document}{\maketitle}
+% \end{macrocode}
+%
+%\subsection{Floats}
+%\begin{environment}{scheme}
+%\begin{environment}{chart}
+%\begin{environment}{graph}
+% Three new float types are provided, \texttt{scheme}, \texttt{chart}
+% and \texttt{graph}. These are the most obvious types; for graphs,
+% a slight problem arises with the file extension.
+% \begin{macrocode}
+\newfloat{scheme}{htbp}{los}
+\floatname{scheme}{Scheme}
+\newfloat{chart}{htbp}{loc}
+\floatname{chart}{Chart}
+\newfloat{graph}{htbp}{loh}
+\floatname{chart}{Graph}
+% \end{macrocode}
+%\end{environment}
+%\end{environment}
+%\end{environment}
+%\begin{macro}{\schemename}
+%\begin{macro}{\chartname}
+%\begin{macro}{\graphname}
+% Naming is set up in the same way as the kernel floats.
+% \begin{macrocode}
+\newcommand*{\schemename}{Scheme}
+\newcommand*{\chartname}{Chart}
+\newcommand*{\graphname}{Graph}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+% The standard floats should appear ``here'' by default.
+% \begin{macrocode}
+\floatplacement{table}{htbp}
+\floatplacement{figure}{htbp}
+\floatstyle{plaintop}
+\restylefloat{table}
+% \end{macrocode}
+%\begin{macro}{\acs@floatboxreset}
+% Floats are all centred.
+% \begin{macrocode}
+\let\acs@floatboxreset\@floatboxreset
+\renewcommand*{\@floatboxreset}{\centering\acs@floatboxreset}
+% \end{macrocode}
+%\end{macro}
+% \pkg{varioref} is used to control the appearance of cross-references.
+% \begin{macrocode}
+\labelformat{scheme}{\schemename~#1}
+\labelformat{chart}{\chartname~#1}
+\labelformat{graph}{\graphname~#1}
+\labelformat{figure}{\figurename~#1}
+\labelformat{table}{\tablename~#1}
+% \end{macrocode}
+%
+%\subsection{Page headers}
+%\begin{macro}{\ps@achemso}
+%\begin{macro}{\@oddfoot}
+%\begin{macro}{\@oddhead}
+% For reviewers, page headers indicating which manuscript the page
+% belongs to would be useful. Rather than load \pkg{fancyhdr}, a
+% low-level patch is made to the appropriate command. This is rather
+% simply-minded but gives the desired output.
+% \begin{macrocode}
+\newcommand*{\ps@achemso}{%
+ \renewcommand*{\@oddfoot}{\reset@font\hfil\thepage\hfil}%
+ \let\@evenfoot\@oddfoot
+ \renewcommand*{\@oddhead}{%
+ \reset@font
+ \@author@i
+ \ifnum\acs@authorcnt>\@ne\relax
+ \space et al.%
+ \fi
+ \hfil\relax
+% \end{macrocode}
+% If the short title is empty, then the main title is used with some
+% trimming. A check is made first, as the \cs{truncate} macro will
+% left-align if the text is not actually too long.
+% \begin{macrocode}
+ \ifx\@empty\@shorttitle\@empty
+ \setbox\z@\hbox{\acs@title}%
+ \ifdim\wd\z@>0.45\textwidth\relax
+ \truncate{0.45\textwidth}{\acs@title}%
\else
- \newcommand*{\acs@bibstyle}{achemso}%
+ \acs@title
\fi
- \fi
+ \else
+ \@shorttitle
+ \fi}%
+ \let\@evenhead\@oddhead}
+\pagestyle{achemso}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%
+%\subsection{Section headings}
+%\begin{macro}{\acs@startsection}
+%\begin{macro}{\@startsection}
+%\begin{macro}{\acs@restsecnums}
+% The applicable section headings depend on the journal and document
+% type. First, numbering of sections is killed off by default.
+% \begin{macrocode}
+\let\acs@startsection\@startsection
+\renewcommand*{\@startsection}[6]{%
+ \if@noskipsec \leavevmode \fi
+ \par
+ \@tempskipa #4\relax
+ \@afterindenttrue
+ \ifdim\@tempskipa<\z@\relax
+ \@tempskipa -\@tempskipa \@afterindentfalse
\fi
+ \if@nobreak
+ \everypar{}%
+ \else
+ \addpenalty\@secpenalty\addvspace\@tempskipa
+ \fi
+% \end{macrocode}
+% The change is here: a star makes no difference. \cs{@ifstar} means
+% that any star is nicely got rid of.
+% \begin{macrocode}
+ \@ifstar
+ {\@ssect{#3}{#4}{#5}{#6}}
+ {\@ssect{#3}{#4}{#5}{#6}}}
+\newcommand*{\acs@restsecnums}{%
+ \let\@startsection\acs@startsection}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@section}
+%\begin{macro}{\acs@subsection}
+% The original section and subsection macros are saved.
+% \begin{macrocode}
+\let\acs@subsection\subsection
+\let\acs@section\section
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@killsecs}
+%\begin{macro}{\acs@gobblesection}
+%\begin{macro}{\section}
+%\begin{macro}{\subsection}
+%\begin{macro}{\subsubsection}
+% To kill sections entirely, a different approach is needed. The set
+% to gobble up the title and if necessary the star.
+% \begin{macrocode}
+\newcommand*{\acs@killsecs}{%
+ \newcommand*{\acs@gobblesection}{%
+ \ClassWarning{achemso}
+ {Sections not allowed for this manuscript type}%
+ \@ifstar{\@gobble}{\@gobble}}
+ \let\section\acs@gobblesection
+ \let\subsection\acs@gobblesection
+ \let\subsubsection\acs@gobblesection
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\bibsection}
+% The bibliography is altered here.
+% \begin{macrocode}
+ \AtBeginDocument{
+ \renewcommand*{\bibsection}{\acs@section*{\refname}}}}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acknowledgement}
+%\begin{macro}{\suppinfo}
+% Two macros are provided that will always give
+% \begin{macrocode}
+\newcommand*{\acknowledgement}{%
+ \acs@subsection*{Acknowledgement}}
+\newcommand*{\suppinfo}{%
+ \acs@subsection*{Supporting Information Available}}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%
+%\subsection{Miscellaneous changes}
+% Although \currpkg avoids too much formatting, the class file makes
+% a few changes to keep life simple. The name of the bibliography
+% should be ``Notes and References'' if any notes are added.
+% \begin{macrocode}
+\renewcommand*{\refname}{%
+ \ifnum\the\value{bibnote}>\z@\relax
+ Notes and
+ \fi References}
+% \end{macrocode}
+% To provide a method for dealing with URLs and e-mail addresses, the
+% \pkg{url} package is loaded.
+% \begin{macrocode}
+\RequirePackage{url}
+% \end{macrocode}
+%
+%\subsection{Finalisation}
+%\begin{macro}{\acs@manuscript}
+% The article must have a type: if nothing else has been set, then
+% ``article'' is used.
+% \begin{macrocode}
+\@ifundefined{acs@manuscript}
+ {\newcommand*{\acs@manuscript}{article}}{}
+% \end{macrocode}
+%\end{macro}
+% Some settings are defined by the document type. At this stage, the
+% journal file should have ensured that the type is valid.
+% \begin{macrocode}
+\edef\acs@tempa{note}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killsecs
\fi
-\expandafter\bibliographystyle\expandafter{\acs@bibstyle}
+\edef\acs@tempa{review}
+\ifx\acs@manuscript\acs@tempa
+ \acs@restsecnums
+\fi
+\edef\acs@tempa{suppinfo}
+\ifx\acs@manuscript\acs@tempa
+ \acs@restsecnums
+ \acs@setkeys{maxauthors=0}
+\fi
+\if@filesw
+ \acs@writebib
+\fi
+% \end{macrocode}
+%
+%\iffalse
+%</class>
+%<*package>
+%\fi
+%\section{The package file}
+%\subsection{Setup code}
+%\begin{macro}{\acs@id}
+%\begin{macro}{\acs@ver}
+% The package file is designed to be usable with any document class.
+% It sets up the basics, but leaves some settings to the class file.
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\def\acs@id$#1: #2.#3 #4 #5-#6-#7 #8 #9${%
+ \def\acs@ver{#5/#6/#7\space v3.0a\space}}
+\acs@id$Id: achemso.dtx 32 2008-08-22 08:09:56Z joseph $
+\ProvidesPackage{achemso}
+ [\acs@ver Support for ACS journals]
+\@ifclassloaded{achemso}{}
+ {\PackageInfo{achemso}{When using the achemso bundle
+ for\MessageBreak submission of articles to the ACS,
+ please\MessageBreak use the achemso document class.}}
+\RequirePackage{notes2bib,mciteplus,xkeyval}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@tempa}
+%\begin{macro}{\acs@tempb}
+%\begin{macro}{\acs@tempcnta}
+%\begin{macro}{\acs@tempcntb}
+%\begin{macro}{\acs@tempcntc}
+%\begin{macro}{\ifacs@switch}
+% Some scratch macros are defined.
+% \begin{macrocode}
+\newcommand*{\acs@tempa}{}
+\newcommand*{\acs@tempb}{}
+\newcount\acs@tempcnta
+\newcount\acs@tempcntb
+\newcount\acs@tempcntc
+\newif\ifacs@switch
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%
+%\subsection{Option handling}
+%\begin{macro}{\acs@manuscript}
+%\begin{macro}{\acs@journal}
+%\begin{macro}{\acs@maxauthors}
+%\begin{macro}{\ifacs@super}
+%\begin{macro}{\ifacs@usetitle}
+%\begin{macro}{\ifacs@biochemistry}
+% The various keys are defined.
+% \begin{macrocode}
+\define@boolkeys[acs]{key}[acs@]{
+ abbreviate,
+ biochem,
+ biochemistry,
+ super,
+ usetitle}[true]
+\let\acs@key@biochem\acs@key@biochemistry
+\define@cmdkeys[acs]{key}[acs@]{
+ maxauthors,
+ journal,
+ manuscript}
+\define@choicekey*[acs]{key}{biblabel}
+ [\acs@tempa\acs@tempb]
+ {plain,brackets,fullstop,period}
+ {\ifcase\acs@tempb\relax
+ \def\@biblabel##1{##1}\or
+ \def\@biblabel##1{(##1)}\or
+ \def\@biblabel##1{##1.}\or
+ \def\@biblabel##1{##1.}\fi}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\acs@setkeys}
+% A slight shortcut for setting keys.
+% \begin{macrocode}
+\newcommand*{\acs@setkeys}{\setkeys[acs]{key}}
+% \end{macrocode}
+%\end{macro}
+% Default values for some of the options are set up here, before
+% processing.
+% \begin{macrocode}
+\acs@setkeys{
+ maxauthors=15,
+ super=true,
+ biblabel=brackets}
+\ProcessOptionsX*[acs]<key>
+% \end{macrocode}
+%\begin{macro}{\acs@cfgextension}
+%\begin{macro}{\acs@prefix}
+% A few fixed values are used in several places.
+% \begin{macrocode}
+\newcommand*{\acs@cfgextension}{cfg}
+\newcommand*{\acs@prefix}{acs-}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%
+%\subsection{\opt{type} validation}
+%\begin{macro}{\acs@validtype}
+% The \opt{type} of manuscript needs to be validated by most journal
+% files. A shortcut is provided here. This needs to happen before
+% support files can be loaded.
+% \begin{macrocode}
+\newcommand*{\acs@validtype}[2][article]{%
+ \acs@switchfalse
+ \@ifundefined{acs@manuscript}
+ {\newcommand*{\acs@manuscript}{#1}}
+ {\@for\acs@tempa:=#2\do{%
+ \ifx\acs@tempa\acs@manuscript
+ \acs@switchtrue
+ \fi}
+ \ifacs@switch\else
+ \ClassWarning{achemso}{Invalid manuscript type:
+ \MessageBreak changing to #1}%
+ \renewcommand*{\acs@manuscript}{#1}%
+ \fi}}
+% \end{macrocode}
+%\end{macro}
+%
+%\subsection{Removal of abstract}
+%\begin{macro}{\acs@killabstract}
+%\begin{macro}{\acs@startgobble}
+%\begin{macro}{\acs@endgobble}
+%\begin{macro}{\acs@iffalse}
+% To disable the abstract, a modified copy of the code from
+% \pkg{versions} is used. This code comes here so that the journal
+% support files can call \cs{acs@killabstract} immediately.
+% \begin{macrocode}
+\newcommand*{\acs@killabstract}{%
+ \let\abstract\acs@startgobble}
+\begingroup
+ \catcode`{=\active
+ \catcode`}=12\relax
+ \catcode`(=1\relax
+ \catcode`)=2\relax
+ \gdef\acs@startgobble(%
+ \ClassWarning(achemso)
+ (Abstract not allowed for this\MessageBreak
+ manuscript type)%
+ \@bsphack
+ \catcode`{=\active
+ \catcode`}=12\relax
+ \let\end\fi
+ \let{\acs@endgobble%}
+ \iffalse)%{
+ \gdef\acs@endgobble#1}(%
+ \def\acs@tempa(#1)%
+ \ifx\acs@tempa\@currenvir
+ \@Esphack\endgroup
+ \if@ignore
+ \global\@ignorefalse\ignorespaces
+ \fi
+ \else
+ \expandafter\acs@iffalse
+ \fi)
+\endgroup
+\newcommand*{\acs@iffalse}{\iffalse}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%
+%\subsection{Loading appropriate support}
+% If the package is being used with the class file, then the options
+% \opt{journal} and \opt{type} are used to set up the correct
+% settings.
+% \begin{macrocode}
+\@ifclassloaded{achemso}
+ {\@ifundefined{acs@journal}
+ {\ClassInfo{achemso}{No target journal specified:
+ \MessageBreak using package defaults}%
+% \end{macrocode}
+% The \opt{type} option only applies when a particular journal is
+% given as an option.
+% \begin{macrocode}
+ \@ifundefined{acs@manuscript}{}
+ {\ClassWarning{achemso}{The `type' option is only
+ applicable\MessageBreak when the `journal' option is
+ also specified}}}%
+ {\InputIfFileExists{\acs@journal.\acs@cfgextension}
+ {\ClassInfo{achemso}{Loading configuration for
+ journal\MessageBreak \acs@journal}}
+ {\ClassWarning{achemso}{Unknown journal
+ `\acs@journal'}%
+ \InputIfFileExists{jacsat.\acs@cfgextension}
+ {\ClassInfo{achemso}{Loading jacs
+ configuration\MessageBreak as a fall-back}}
+ {\ClassError{achemso}{Could not load
+ jacsat.cfg}{This is a core file of\MessageBreak
+ the achemso bundle: something is wrong with
+ \MessageBreak your installation}}}}}%
+% \end{macrocode}
+% If the class is not loaded, then an appropriate warning is given if
+% either option is set.
+% \begin{macrocode}
+ {\@ifundefined{acs@journal}{}
+ {\PackageWarning{achemso}{The `journal' option is only
+ applicable\MessageBreak when using the achemso document
+ class}}%
+ \@ifundefined{acs@manuscript}{}
+ {\PackageWarning{achemso}{The `type' option is only
+ applicable\MessageBreak when using the achemso document
+ class}}}
+% \end{macrocode}
+%
+%\subsection{Patching \pkg{natbib}}
+% As in REV\TeX, the package needs to modify \pkg{natbib} to move
+% punctuation before superscript citations. First, \pkg{natbib} is
+% loaded with the \opt{sort\&compress} option active.
+% \begin{macrocode}
+\ifacs@super
+ \RequirePackage[sort&compress,numbers,super]{natbib}
+\else
+ \RequirePackage[sort&compress,numbers,round]{natbib}
+\fi
+\RequirePackage{natmove}
% \end{macrocode}
+%\begin{macro}{\nmv@activate}
+%\begin{macro}{\nmv@natcitex}
+%\begin{macro}{\nmv@cite}
+%\begin{macro}{\cite}
+% The \pkg{natmove} package is slightly patched to get automatic
+% bibnotes. This is true for superscript and standard citations.
+% \begin{macrocode}
+\renewcommand*{\nmv@activate}{%
+ \let\nmv@natcitex\@citex
+ \let\@citex\nmv@citex
+ \let\nmv@cite\cite
+ \renewcommand*{\cite}[2][]{%
+ \nmv@ifmtarg{##1}
+ {\nmv@citetrue
+ \nmv@cite{##2}}
+ {\nocite{##2}%
+ \bibnote{Ref.~\citenum{##2}, ##1}}}}
+\renewcommand*{\nmv@notactivate}{%
+ \let\nmv@cite\cite
+ \renewcommand*{\cite}[2][]{%
+ \nmv@ifmtarg{##1}
+ {\nmv@cite{##2}}
+ {\nocite{##2}%
+ \bibnote{Ref.~\citenum{##2}, ##1}}}}
+% \end{macrocode}
+%\end{macro}
%\end{macro}
%\end{macro}
-%\begin{macro}{\@biblabel}
-%\changes{v2.2g}{2008/01/21}{Added \opt{iecr} option to code}
-% In order to re-format the bibliography labels, the easiest
-% method is to redefine the \cs{@biblabel} macro from the \LaTeX\
-% kernel.
+%\end{macro}
+%
+%\subsection{General citation setup}
+%\begin{macro}{\acs@bibstyle}
+% The \currpkg package sets up the correct bibliography style.
% \begin{macrocode}
-\ifACS@iecr
- \renewcommand*{\@biblabel}[1]{(#1)}
+%\end{macro}
+\ifacs@biochemistry
+ \newcommand*{\acs@bibstyle}{biochem}
\else
- \renewcommand*{\@biblabel}[1]{#1.}
+ \newcommand*{\acs@bibstyle}{achemso}
\fi
+\expandafter\bibliographystyle\expandafter{\acs@bibstyle}
% \end{macrocode}
-%\begin{macro}{\ACS@bibwarning}
+%\end{macro}
+%\begin{macro}{\bibliographystyle}
%\begin{macro}{\acs@bibliographystyle}
-%\changes{v2.2h}{2008/03/12}{New macro}
-% To ensure that additional \cs{bibliographystyle} commands in the
-% source are killed off. The \cs{ACS@bibwarning} provides a clean
-% method of generating the warning message.
-
+% If \pkg{chapterbib} is loaded, then multiple calls to
+% \cs{bibliographystyle} need to be allowed. In either case, the
+% argument is gobbled.
% \begin{macrocode}
\let\acs@bibliographystyle\bibliographystyle
-\newcommand*{\ACS@bibwarning}{\PackageWarning{achemso}%
- {Additional bibliographystyle command ignored}}
\AtBeginDocument{
- \@ifpackageloaded{chapterbib}{\let\ACS@bibwarning\relax}{}}
-\renewcommand*{\bibliographystyle}{%
- \expandafter\acs@bibliographystyle\expandafter{\acs@bibstyle}%
- \ACS@bibwarning\@gobble}
+ \@ifpackageloaded{chapterbib}
+ {\renewcommand*{\bibliographystyle}[1]{%
+ \expandafter\acs@bibliographystyle\expandafter{%
+ \acs@bibstyle}}}}
+\renewcommand*{\bibliographystyle}[1]{%
+ \PackageWarning{achemso}{\string\bibliographystyle\space
+ ignored}}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\citenumfont}
+% For on-line citations, italic numbers are required.
+% \begin{macrocode}
+\ifacs@super\else
+ \newcommand*{\citenumfont}{\textit}
+\fi
+% \end{macrocode}
+%\end{macro}
+%
+%\subsection{Controlling \texorpdfstring{\BibTeX}{BibTeX}}
+%\begin{macro}{\acs@msg}
+%\begin{macro}{\acs@writebib}
+%\begin{macro}{\acs@out}
+%\begin{macro}{\acs@stream}
+% \currpkg use the same system as \pkg{biblatex} and \pkg{IEEEtrans}
+% to control output. A special database is generated, which contains
+% the necessary control entries.
+% \begin{macrocode}
+\edef\acs@msg{%
+ This is an auxiliary file used by the `achemso' package.^^J%
+ This file may safely be deleted. It will be recreated as
+ required.^^J}
+\newcommand*{\acs@writebib}{%
+ \immediate\openout\acs@out\acs@stream\relax
+ \immediate\write\acs@out{\acs@msg}%
+% \end{macrocode}
+% A shortcut to producing the control sequences.
+% \begin{macrocode}
+ \edef\acs@tempa##1##2{\space\space##1\space=\space"##2",^^J}%
+ \immediate\write\acs@out{%
+ @Control\string{achemso-control,^^J%
+ \acs@tempa{ctrl-use-title}{\ifacs@usetitle yes\else no\fi}%
+ \acs@tempa{ctrl-etal-number}{\acs@maxauthors}%
+ \string}^^J}}
% \end{macrocode}
+% The writing system is designed to allow the class to re-write the
+% control file if needed.
+% \begin{macrocode}
+\if@filesw
+ \newwrite\acs@out
+ \newcommand*\acs@stream{\acs@prefix\jobname.bib}
+ \acs@writebib
+ \AtBeginDocument{\immediate\closeout\acs@out}
+\fi
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
%\end{macro}
%\end{macro}
+%\begin{macro}{\bibliography}
+%\begin{macro}{\acs@bibliography}
+% The \cs{bibliography} macro is now patched to use the control
+% database.
+% \begin{macrocode}
+\AtBeginDocument{
+ \let\acs@bibliography\bibliography
+ \renewcommand*{\bibliography}[1]{%
+ \acs@bibliography{\acs@prefix\jobname,#1}}}
+% \end{macrocode}
%\end{macro}
-% The package is complete.
+%\end{macro}
+% The control citation is now added to the document. This needs to
+% be after the beginning of the document. To avoid a \pkg{natbib}
+% warning, this is done directly (without \cs{nocite}).
% \begin{macrocode}
+\g@addto@macro{\document}{%
+ \if@filesw
+ \immediate\write\@auxout{%
+ \string\citation\string{achemso-control\string}}%
+ \fi}
+% \end{macrocode}
+%
+%\section{The configuration files}
+% The configuration files for different journals are not very
+% complex. Keeping everything separate simply helps with
+% maintenance. The defaults are re-applied by the files so that any
+% user options are over-written when using the class file. Several
+% of the files are basically copies of \file{jacsat.cfg}.
+%
+%\iffalse
%</package>
+%<*jacsat>
+%\fi
+%\subsection{\emph{J.~Am.\ Chem.\ Soc.}}
+% The \emph{J. Am. Chem. Soc.} is the basis of all of the configuration
+% files.
+% \begin{macrocode}
+\ProvidesFile{jacsat.cfg}
+ [\acs@ver achemso configuration: J. Am. Chem. Soc.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killabstract
+ \acs@killsecs
+\fi
% \end{macrocode}
-% \PrintChanges
-% \PrintIndex
-% \Finale
-% \iffalse
-%<*bib>
+%
+%\iffalse
+%</jacsat>
+%<*achre4>
+%\fi
+%\subsection{\emph{Acc.\ Chem.\ Res.}}
+% \begin{macrocode}
+\ProvidesFile{achre4.cfg}
+ [\acs@ver achemso configuration: Acc. Chem. Res.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=plain,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,suppinfo}
+\renewcommand*{\abstractname}{Conspectus}
+% \end{macrocode}
+%\iffalse
+%</achre4>
+%<*acbcct>
+%\fi
+%\subsection{\emph{ACS Chem.\ Biol.}}
+% \begin{macrocode}
+\ProvidesFile{acbcct.cfg}
+ [\acs@ver achemso configuration: ACS Chem. Biol.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=fullstop,
+ biochem=true,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,letter,review,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</acbcct>
+%<*ancac3>
+%\fi
+%\subsection{\emph{ACS Nano}}
+% \begin{macrocode}
+\ProvidesFile{acbcct.cfg}
+ [\acs@ver achemso configuration: ACS Nano]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=fullstop,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{perspective,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</ancac3>
+%<*ancham>
+%\fi
+%\subsection{\emph{Anal.\ Chem.}}
+% \begin{macrocode}
+\ProvidesFile{ancham.cfg}
+ [\acs@ver achemso configuration: Anal. Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,suppinfo,note}
+% \end{macrocode}
+%\iffalse
+%</ancham>
+%<*bichaw>
+%\fi
+%\subsection{\emph{Biochemistry}}
+% \begin{macrocode}
+\ProvidesFile{biochem.cfg}
+ [\acs@ver achemso configuration: Biochemistry]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=fullstop,
+ biochem=true,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,communication,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</bichaw>
+%<*bcches>
+%\fi
+%\subsection{\emph{Bioconjugate Chem.}}
+% \begin{macrocode}
+\ProvidesFile{bcches.cfg}
+ [\acs@ver achemso configuration: Bioconjugate Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=true,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,communication,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</bcches>
+%<*bomaf6>
+%\fi
+%\subsection{\emph{Biomacromolecules}}
+% \begin{macrocode}
+\ProvidesFile{bomaf6.cfg}
+ [\acs@ver achemso configuration: Biomacromolecules]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,communication,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</bomaf6>
+%<*bipret>
+%\fi
+%\subsection{\emph{Biotechnol.\ Prog.}}
+% \begin{macrocode}
+\ProvidesFile{bipret.cfg}
+ [\acs@ver achemso configuration: Biotechnol. Prog.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,review,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</bipret>
+%<*crtoec>
+%\fi
+%\subsection{\emph{Chem.\ Res.\ Toxicol.}}
+% \begin{macrocode}
+\ProvidesFile{crtoec.cfg}
+ [\acs@ver achemso configuration: Chem. Res. Toxicol.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=true,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{perspective,article,review,profile,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</crtoec>
+%<*chreay>
+%\fi
+%\subsection{\emph{Chem.\ Rev.}}
+% For \emph{Chem.\ Rev.}, the usual start.
+% \begin{macrocode}
+\ProvidesFile{chreay.cfg}
+ [\acs@ver achemso configuration: Chem. Rev.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=0,
+ super=true,
+ usetitle=false}
+\acs@validtype[review]{review}
+% \end{macrocode}
+%\begin{macro}{\bibsection}
+% Some changes are needed as the bibliography should be numbered.
+% This is done with the \cs{bibsection} macro, as \pkg{natbib} sets
+% this up rather than \cs{thebibliography}.
+% \begin{macrocode}
+\AtBeginDocument{
+ \renewcommand*{\bibsection}{\section{\refname}}}
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+%</chreay>
+%<*cmatex>
+%\fi
+%\subsection{\emph{Chem.\ Mater.}}
+% \begin{macrocode}
+\ProvidesFile{cmatex.cfg}
+ [\acs@ver achemso configuration: Chem. Mater.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killabstract
+ \acs@killsecs
+\fi
+% \end{macrocode}
+%\iffalse
+%</cmatex>
+%<*cgdefu>
+%\fi
+%\subsection{\emph{Cryst.\ Growth Des.}}
+% \begin{macrocode}
+\ProvidesFile{cgdefu.cfg}
+ [\acs@ver achemso configuration: Cryst. Growth Des.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{perspective,article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killsecs
+\fi
+% \end{macrocode}
+%\iffalse
+%</cgdefu>
+%<*enfuem>
+%\fi
+%\subsection{\emph{Energy Fuels}}
+% \begin{macrocode}
+\ProvidesFile{enfuem.cfg}
+ [\acs@ver achemso configuration: Energy Fuels]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{review,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</enfuem>
+%<*esthag>
+%\fi
+%\subsection{\emph{Environ.\ Sci.\ Technol.}}
+% \begin{macrocode}
+\ProvidesFile{esthag.cfg}
+ [\acs@ver achemso configuration: Environ. Sci. Technol.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</esthag>
+%<*iecred>
+%\fi
+%\subsection{\emph{Ind.\ Eng.\ Chem.\ Res.}}
+% \begin{macrocode}
+\ProvidesFile{iecred.cfg}
+ [\acs@ver achemso configuration: Ind. Eng. Chem. Res.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=fullstop,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{suppinfo}
+\ifx\acs@manuscript\acs@tempa
+ \acs@setkeys{maxauthors=0}
+\fi
+% \end{macrocode}
+%\iffalse
+%</iecred>
+%<*inoraj>
+%\fi
+%\subsection{\emph{Inorg.\ Chem.}}
+% \begin{macrocode}
+\ProvidesFile{inoraj.cfg}
+ [\acs@ver achemso configuration: Inorg. Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killabstract
+ \acs@killsecs
+\fi
+% \end{macrocode}
+%\iffalse
+%</inoraj>
+%<*jafcau>
+%\fi
+%\subsection{\emph{J.~Agric.\ Food Chem.}}
+% \begin{macrocode}
+\ProvidesFile{jafcau.cfg}
+ [\acs@ver achemso configuration: J. Agric. Food Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=false,
+ usetitle=true}
+\acs@validtype{article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jafcau>
+%<*jceaax>
+%\fi
+%\subsection{\emph{J.~Chem.\ Eng. Data}}
+% \begin{macrocode}
+\ProvidesFile{jceaax.cfg}
+ [\acs@ver achemso configuration: J. Chem. Eng. Data]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jceaax>
+%<*jcisd8>
+%\fi
+%\subsection{\emph{J.~Chem.\ Inf.\ Model.}}
+% \begin{macrocode}
+\ProvidesFile{jcisd8.cfg}
+ [\acs@ver achemso configuration: J. Chem. Inf. Model.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jcisd8>
+%<*jctcce>
+%\fi
+%\subsection{\emph{J.~Chem.\ Theory Comput.}}
+%\changes{v3.0a}{2008/08/21}{Added section numbers for
+% \emph{J.~Chem.\ Theory Comput.}}
+% \begin{macrocode}
+\ProvidesFile{jctcce.cfg}
+ [\acs@ver achemso configuration: J. Chem. Theory Comput.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,suppinfo}
+\AtBeginDocument{\acs@restsecnums}
+% \end{macrocode}
+%\iffalse
+%</jctcce>
+%<*jcchff>
+%\fi
+%\subsection{\emph{J.~Comb.\ Chem.}}
+% \begin{macrocode}
+\ProvidesFile{jcchff.cfg}
+ [\acs@ver achemso configuration: J. Comb. Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,report,perspective,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jcchff>
+%<*jmcmar>
+%\fi
+%\subsection{\emph{J.~Med.\ Chem.}}
+% \begin{macrocode}
+\ProvidesFile{jmcmar.cfg}
+ [\acs@ver achemso configuration: J. Med. Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{perspective,letter,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jmcmar>
+%<*jnprdf>
+%\fi
+%\subsection{\emph{J.~Nat.\ Prod.}}
+% \begin{macrocode}
+\ProvidesFile{jnprdf.cfg}
+ [\acs@ver achemso configuration: J. Nat. Prod.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killabstract
+ \acs@killsecs
+\fi
+% \end{macrocode}
+%\iffalse
+%</jnprdf>
+%<*joceah>
+%\fi
+%\subsection{\emph{J.~Org.\ Chem.}}
+% \begin{macrocode}
+\ProvidesFile{joceah.cfg}
+ [\acs@ver achemso configuration: J. Org. Chem.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{article,communication,suppinfo}
+\renewcommand*{\acs@tempa}{communication}
+\ifx\acs@manuscript\acs@tempa
+ \acs@killabstract
+ \acs@killsecs
+\fi
+% \end{macrocode}
+%\iffalse
+%</joceah>
+%<*jpcafh>
+%\fi
+%\subsection{\emph{J.~Phys.\ Chem.~A}}
+% \begin{macrocode}
+\ProvidesFile{jpcafh.cfg}
+ [\acs@ver achemso configuration: J. Phys. Chem. A]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{letter,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jpcafh>
+%<*jpcbfk>
+%\fi
+%\subsection{\emph{J.~Phys.\ Chem.~B}}
+% \begin{macrocode}
+\ProvidesFile{jpcbfk.cfg}
+ [\acs@ver achemso configuration: J. Phys. Chem. B]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{letter,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jpcbfk>
+%<*jpccck>
+%\fi
+%\subsection{\emph{J.~Phys.\ Chem.~C}}
+% \begin{macrocode}
+\ProvidesFile{jpccck.cfg}
+ [\acs@ver achemso configuration: J. Phys. Chem. C]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{letter,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jpccck>
+%<*jprobs>
+%\fi
+%\subsection{\emph{J.~Proteome Res.}}
+% \begin{macrocode}
+\ProvidesFile{jprobs.cfg}
+ [\acs@ver achemso configuration: J. Proteome Res.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{review,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</jprobs>
+%<*langd5>
+%\fi
+%\subsection{\emph{Langmuir}}
+% \begin{macrocode}
+\ProvidesFile{langd5.cfg}
+ [\acs@ver achemso configuration: Langmuir]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{letter,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</langd5>
+%<*mamobx>
+%\fi
+%\subsection{\emph{Macromolecules}}
+% \begin{macrocode}
+\ProvidesFile{mamobx.cfg}
+ [\acs@ver achemso configuration: Macromolecules]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{communication,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</mamobx>
+%<*mpohbp>
+%\fi
+%\subsection{\emph{Mol.\ Pharm.}}
+% \begin{macrocode}
+\ProvidesFile{mamobx.cfg}
+ [\acs@ver achemso configuration: Mol. Pharm.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=true}
+\acs@validtype{article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</mpohbp>
+%<*nalefd>
+%\fi
+%\subsection{\emph{Nano Lett.}}
+% \begin{macrocode}
+\ProvidesFile{nalefd.cfg}
+ [\acs@ver achemso configuration: Nano Lett.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype[letter]{letter}
+% \end{macrocode}
+%\iffalse
+%</nalefd>
+%<*orlef7>
+%\fi
+%\subsection{\emph{Org.\ Lett.}}
+% \begin{macrocode}
+\ProvidesFile{orlef7.cfg}
+ [\acs@ver achemso configuration: Org. Lett.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype[letter]{letter}
+% \end{macrocode}
+%\iffalse
+%</orlef7>
+%<*oprdfk>
+%\fi
+%\subsection{\emph{Org.\ Proc.\ Res.\ Dev.}}
+% \begin{macrocode}
+\ProvidesFile{oprdfk.cfg}
+ [\acs@ver achemso configuration: Org. Proc. Res. Dev.]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{highlight,article,review,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</oprdfk>
+%<*orgnd7>
+%\fi
+%\subsection{\emph{Organometallics}}
+% \begin{macrocode}
+\ProvidesFile{orgnd7.cfg}
+ [\acs@ver achemso configuration: Organometallics]
+\acs@setkeys{
+ abbreviate=true,
+ biblabel=brackets,
+ biochem=false,
+ maxauthors=15,
+ super=true,
+ usetitle=false}
+\acs@validtype{communication,article,suppinfo}
+% \end{macrocode}
+%\iffalse
+%</orgnd7>
+%\fi
+%
+%\Finale
+%\iffalse
+%<*refs>
+@ARTICLE{Abernethy2003,
+ author = {Colin D. Abernethy and Gareth M. Codd and Mark D. Spicer
+ and Michelle K. Taylor},
+ title = {{A} highly stable {N}-heterocyclic carbene complex of
+ trichloro-oxo-vanadium(\textsc{v}) displaying novel
+ {C}l---{C}(carbene) bonding interactions},
+ journal = {{J}. {A}m. {C}hem. {S}oc.},
+ year = {2003},
+ volume = {125},
+ pages = {1128--1129},
+ number = {5},
+ doi = {10.1021/ja0276321},
+}
+
+@MISC{ACS2007,
+ url = {http://pubs.acs.org/books/references.shtml},
+}
+
+@ARTICLE{Arduengo1992,
+ author = {Arduengo, III, Anthony J. and H. V. Rasika Dias and
+ Richard L. Harlow and Michael Kline},
+ title = {{E}lectronic stabilization of nucleophilic carbenes},
+ journal = {{J}.~{A}m.\ {C}hem.\ {S}oc.},
+ year = {1992},
+ volume = {114},
+ pages = {5530--5534},
+ number = {14},
+ doi = {10.1021/ja00040a007},
+}
+
+@ARTICLE{Arduengo1994,
+ author = {Arduengo, III, Anthony J. and Siegfried F. Gamper and
+ Joseph C. Calabrese and Fredric Davidson},
+ title = {{L}ow-coordinate carbene complexes of nickel(0) and
+ platinum(0)},
+ journal = jacsat,
+ year = {1994},
+ volume = {116},
+ pages = {4391--4394},
+ number = {10},
+ doi = {10.1021/ja00089a029},
+}
+
+@ARTICLE{Eisenstein2005,
+ author = {Appelhans, Leah N. and Zuccaccia, Daniele and Kovacevic,
+ Anes and Chianese, Anthony R. and Miecznikowski, John R. and
+ Macchioni, Aleco and Clot, Eric and Eisenstein, Odile and
+ Crabtree, Robert H.},
+ title = {{A}n anion-dependent switch in selectivity results from a
+ change of {C}---{H} activation mechanism in the reaction of an
+ imidazolium salt with \ce{IrH5(PPh3)2}},
+ journal = {{J}.~{A}m.\ {C}hem. {S}oc.},
+ year = {2005},
+ volume = {127},
+ pages = {16299--16311},
+ number = {46},
+ doi = {10.1021/ja055317j},
+}
+
+@BOOK{Coghill2006,
+ title = {{T}he {ACS} {S}tyle {G}uide},
+ publisher = {{O}xford {U}niversity {P}ress, {I}nc. and
+ {T}he {A}merican {C}hemical {S}ociety},
+ year = {2006},
+ editor = {Coghill, Anne M. and Garson, Lorrin R.},
+ address = {{N}ew {Y}ork},
+ edition = {3},
+ subtitle = {{E}ffective {C}ommunication of {S}cientific
+ {I}nformation},
+}
+
+@BOOK{Cotton1999,
+ title = {{A}dvanced {I}norganic {C}hemistry},
+ publisher = {Wiley},
+ year = {1999},
+ author = {Cotton, Frank Albert and Wilkinson, Geoffrery and
+ Murillio, Carlos A. and Bochmann, Manfred},
+ address = {Chichester},
+ edition = {6},
+}
+
+@MANUAL{Pople2003,
+ title = {{G}aussian 03},
+ author = {M.~J. Frisch and G.~W. Trucks and H.~B. Schlegel and G.~E. Scuseria
+ and M.~A. Robb and J.~R. Cheeseman and Montgomery and Jr. and J.
+ A. and T. Vreven and K.~N. Kudin and J.~C. Burant and J.~M. Millam
+ and S.~S. Iyengar and J. Tomasi and V. Barone and B. Mennucci and
+ M. Cossi and G. Scalmani and N. Rega and G.~A. Petersson and H. Nakatsuji
+ and M. Hada and M. Ehara and K. Toyota and R. Fukuda and J. Hasegawa
+ and M. Ishida and T. Nakajima and Y. Honda and O. Kitao and H. Nakai
+ and M. Klene and X. Li and J.~E. Knox and H.~P. Hratchian and J.~B.
+ Cross and V. Bakken and C. Adamo and J. Jaramillo and R. Gomperts
+ and R.~E. Stratmann and O. Yazyev and A.~J. Austin and R. Cammi and
+ C. Pomelli and J.~W. Ochterski and P.~Y. Ayala and K. Morokuma and
+ G.~A. Voth and P. Salvador and J.~J. Dannenberg and V.~G. Zakrzewski
+ and S. Dapprich and A.~D. Daniels and M.~C. Strain and O. Farkas
+ and D.~K. Malick and A.~D. Rabuck and K. Raghavachari and J.~B. Foresman
+ and J.~V. Ortiz and Q. Cui and A.~G. Baboul and S. Clifford and J.
+ Cioslowski and B.~B. Stefanov and G. Liu and A. Liashenko and P.
+ Piskorz and I. Komaromi and R.~L. Martin and D.~J. Fox and T. Keith
+ and M.~A. Al-Laham and C.~Y. Peng and A. Nanayakkara and M. Challacombe
+ and P.~M.~W. Gill and B. Johnson and W. Chen and M.~W. Wong and C.
+ Gonzalez and J.~A. Pople},
+ organization = {Gaussian, Inc.},
+ address = {Wallingford, CT},
+ year = {2004},
+ howpublished = {Gaussian, Inc., Wallingford, CT, USA},
+ institution = {Gaussian, Inc.},
+ publisher = {Gaussian, Inc.}
+}
+
+@ARTICLE{Mena2000,
+ author = {Angel Abarca and Pilar G\'omez-Sal and Avelino Mart\'in
+ and Miguel Mena and Josep Mar\'ia Poblet and Carlos Y\'elamos},
+ title = {{A}mmonolysis of mono(pentamethylcyclopentadienyl)
+ titanium(\textsc{iv}) derivatives},
+ journal = {Inorg. Chem.},
+ year = {2000},
+ volume = {39},
+ pages = {642--651},
+ number = {4},
+ doi = {10.1021/ic9907718},
+}
+%</refs>
+%<*demo>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is a (brief) model paper using the achemso class
+%% The document class accepts keyval options, which should include
+%% the target journal and optionally the macuscript tye
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass[journal=jacsat,manuscript=article]{achemso}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Place any additional packages needed here. Only include packages
+%% which are essential, to avoid problems later.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\usepackage[version=3]{mhchem} % Formula subscripts using \ce{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% If issues arise when submitting your manuscript, you may want to
+%% un-comment the next line. This provides information on the
+%% version of every file you have used.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%\listfiles
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Place any additional macros here. Please use \newcommand* where
+%% possible, and avoid layout changing macros (which are not used
+%% when typesetting).
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand*{\mycommand}[1]{\texttt{\emph{#1}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Meta-data block
+%% ---------------
+%% Each author should be given as a separate \author command.
+%%
+%% Corresponding authors should have an e-mail given after the author
+%% name as an \email command.
+%%
+%% The affiliation of authors is given after the authors; each
+%% \affiliation command applies to all preceding authors not already
+%% assigned an affiliation.
+%%
+%% The affiliation takes an option argument for the short name. This
+%% will typically be something like "University of Somewhere".
+%%
+%% The \altaffiliation macro should be used for new address, etc.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\author{Andrew N. Other}
+\author{Fred T. Secondauthor}
+\altaffiliation{Current address: Some other place, Othert\"own,
+Germany}
+\author{I. Ken Groupleader}
+\email{i.k.groupleader@unknown.uu}
+\affiliation[Unknown University]
+{Department of Chemistry, Unknown University, Unknown Town}
+\author{Susanne K. Laborator}
+\email{s.k.laborator@bigpharma.co}
+\affiliation[BigPharma]
+{Lead Discovery, BigPharma, Big Town, USA}
+\author{Kay T. Finally}
+\affiliation[Unknown University]
+{Department of Chemistry, Unknown University, Unknown Town}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The document title should be given as usual
+%% A short title can be given as a *suggestion* for running headers.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\title[\texttt{achemso} demonstration]
+{A demonstration of the \textsf{achemso} \LaTeX\ class}
+
+\begin{document}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The manuscript does not need to include \maketitle, which is
+%% executed automatically. The document should begin with an
+%% abstract, if appropriate. If one is given and should not be, the
+%% contents will be gobbled.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{abstract}
+ This is an example document for the \textsf{achemso} document
+ class, intended for submissions to the American Chemical Society
+ for publication. The class is based on the standard \LaTeXe\
+ \textsf{report} file, and does not seek to reproduce the appearance
+ of a published paper.
+
+ This is an abstract for the \textsf{achemso} document class
+ demonstration document. An abstract is only allowed for certain
+ manuscript types. The selection of \texttt{journal} and
+ \texttt{type} will determine if an abstract is valid. If not, the
+ class will issue an appropriate error.
+\end{abstract}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Start the main part of the manuscript here.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Introduction}
+This is a paragraph of text to fill the introduction of the
+demonstration file. The demonstration file attempts to show the
+modifications of the standard \LaTeX\ macros that are implemented by
+the \textsf{achemso} class. These are mainly concerned with content,
+as opposed to appearance.
+
+\section{Results and discussion}
+
+\subsection{Outline}
+
+The document layout should follow the style of the journal concerned.
+Where appropriate, sections and subsections should be added in the
+normal way. If the class options are set correctly, warnings will be
+given if these should not be present.
+
+\subsection{References}
+
+The class makes various changes to the way that references are
+handled. The class loads \textsf{natbib}, and also the appropriate
+bibliography style. References can be made using the normal method;
+the citation should be placed before any punctuation, as the class
+will move it if using a superscript citation style
+\cite{Mena2000,Abernethy2003}. The use of \textsf{natbib} allows the
+use of the various citation commands of that package:
+\citeauthor{Abernethy2003} have shown something, or in
+\citeyear{Cotton1999}. Long lists of authors will be automatically
+truncated in most article formats, but not in supplementary
+information or reviews \cite{Pople2003}.
+
+Multiple citations to be combined into a list can be given as
+a single citation. This uses the \textsf{mciteplus} package
+\cite{Arduengo1992,*Eisenstein2005,*Arduengo1994}. Citations
+other than the first of the list should be indicated with a star.
+
+The class also handles notes to be added to the bibliography. These
+should be given in place in the document \bibnote{This is a note.
+The text will be moved the the references section. The title of the
+section will change to ``Notes and References''.}. As with
+citations, the text should be placed before punctuation. A note is
+also generated if a citation has an optional note. This assumes that
+the whole work has already been cited: odd numbering will result if
+this is not the case \cite[p.~1]{Cotton1999}.
+
+\subsection{Floats}
+
+New float types are automatically set up by the class file. The
+means graphics are included as follows (\ref{sch:example}). As
+illustrated, the float is ``here'' if possible.
+\begin{scheme}
+ Your scheme graphic would go here: \texttt{.eps} format\\
+ for \LaTeX\, or \texttt{.pdf} (or \texttt{.png}) for pdf\LaTeX\\
+ \textsc{ChemDraw} files are best saved as \texttt{.eps} files;\\
+ these can be scaled without loss of quality, and can be\\
+ converted to \texttt{.pdf} files easily using \texttt{eps2pdf}.\\
+ %\includegraphics{graphic}
+ \caption{An example scheme}
+ \label{sch:example}
+\end{scheme}
+
+\subsection{Math(s)}
+
+The \textsf{achemso} class does not load any particular additional
+support for mathematics. If the author \emph{needs} things like
+\textsf{amsmath}, they should be loaded in the preamble. However,
+the basics should work fine. Some inline material $ y = mx + c$
+followed by some display. \[ A = \pi r^2 \]
+
+\section{Experimental}
+
+The usual experimental details should appear here. This could
+include a table, which can be referenced as \ref{tbl:example}. Notice
+that the caption is positioned at the top of the table. Do not worry
+about the appearance of the table: this will be altered during
+production.
+\begin{table}
+ \caption{An example table}
+ \label{tbl:example}
+ \begin{tabular}{ll}
+ \hline
+ Header one & Header two \\
+ \hline
+ Entry one & Entry two \\
+ Entry three & Entry four \\
+ Entry five & Entry five \\
+ Entry seven & Entry eight \\
+ \hline
+ \end{tabular}
+\end{table}
+
+The example file also loads the \textsf{mhchem} package, so
+that formulas are easy to input: \texttt{\textbackslash
+\ce\{H2SO4\}} gives \ce{H2SO4}. See the use in the
+bibliography file (when using titles in the references
+section).
+
+The use of new commands should be limited to simple things which will
+not interfere with the production process. For example,
+\texttt{\textbackslash mycommand} has been defined in this example,
+to give italic, monospaced text: \mycommand{some text}.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The "Acknowledgement" section can be given in all manuscript
+%% classes. Rather than use \section, an appropriate macro is
+%% provided that will always work.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\acknowledgement
+
+Thanks to Mats Dahlgren for version one of \textsf{achemso},
+and Donald Arseneau for the code taken from \textsf{cite} to
+move citations after punctuation.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The same is true for Supporting Information, which should use the
+%% \suppinfo macro.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\suppinfo
+
+The entire \textsf{achemso} bundle is generated by running
+\texttt{achemso.dtx} through \TeX. Running \LaTeX\ on the same file
+will generate the general documentation for both the class and
+package files.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The appropriate \bibliography command should be placed here.
+%% Notice that the class file automatically sets \bibliographystyle
+%% and also names the section correctly.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\bibliography{achemso}
+
+\end{document}
+%</demo>
+%<*bst>
ENTRY
{ address
-%<list> annotate
author
booktitle
chapter
+ ctrl-use-title
+ ctrl-etal-number
doi
edition
editor
howpublished
institution
journal
-%<nat> key
+ key
note
number
organization
@@ -790,15 +2758,15 @@ ENTRY
year
}
{}
- {
- label
-%<nat> extra.label
-%<nat> short.list
+ { label
+ extra.label
+ short.list
}
INTEGERS { output.state before.all mid.sentence after.sentence }
INTEGERS { after.block after.item author.or.editor }
INTEGERS { separate.by.semicolon }
+INTEGERS { is.use.title etal.number }
FUNCTION {init.state.consts}
{ #0 'before.all :=
@@ -808,17 +2776,21 @@ FUNCTION {init.state.consts}
#4 'after.item :=
}
+%% #0 turns off the display of the title for articles
+%% #1 enables
+%<!bio>FUNCTION {default.is.use.title} { #0 }
+%<bio>FUNCTION {default.is.use.title} { #1 }
+
+%% The number of names that force "et al." to be used
+FUNCTION {default.etal.number} { #15 }
+
FUNCTION {add.comma}
{ ", " * }
FUNCTION {add.semicolon}
{ "; " * }
-% \end{macrocode}
-% For authors/editors we need to be able to add either a semi-colon
-% or a comma. This is done using a switching function, defined here.
-% \begin{macrocode}
-
+%<*!bio>
FUNCTION {add.comma.or.semicolon}
{ #1 separate.by.semicolon =
'add.semicolon
@@ -826,6 +2798,7 @@ FUNCTION {add.comma.or.semicolon}
if$
}
+%</!bio>
FUNCTION {add.colon}
{ ": " * }
@@ -871,29 +2844,6 @@ FUNCTION {output.check}
if$
}
-% \end{macrocode}
-% For the standard file types, |output.bibitem| can come here.
-% The same is not true for styles supporting \pkg{natbib}, and so
-% |output.bibitem| occurs later for those styles.
-% \iffalse
-%<*!nat>
-% \fi
-% \begin{macrocode}
-FUNCTION {output.bibitem}
-{ newline$
- "\bibitem{" write$
- cite$ write$
- "}" write$
- newline$
- ""
- before.all 'output.state :=
-}
-
-% \end{macrocode}
-% \iffalse
-%</!nat>
-% \fi
-% \begin{macrocode}
FUNCTION {new.block}
{ output.state before.all =
'skip$
@@ -911,29 +2861,9 @@ FUNCTION {new.sentence}
}
if$
}
-%<*list>
-
-FUNCTION {add.note}
-{ annotate empty$
- 'skip$
- { new.block
- "{\footnotesize " annotate * "}" * output }
- if$
-}
-%</list>
-
-%<*!mcp>
-FUNCTION {fin.entry}
-%<list>{ add.note
-%<list> add.period$
-%<!list>{ add.period$
- write$
- newline$
-}
-%</!mcp>
-%<*mcp>
INTEGERS {would.add.period.textlen}
+
FUNCTION {would.add.period}
{ duplicate$
add.period$
@@ -967,7 +2897,6 @@ FUNCTION {fin.entry}
"\EndOfBibitem" write$
}
-%</mcp>
FUNCTION {not}
{ { #0 }
{ #1 }
@@ -1144,6 +3073,67 @@ FUNCTION {extract.num}
if$
}
+FUNCTION {chr.to.value}
+{ chr.to.int$ #48 -
+ duplicate$ duplicate$
+ #0 < swap$ #9 > or
+ { #48 + int.to.chr$
+ " is not a number..." *
+ warning$
+ pop$ #0
+ }
+ {}
+ if$
+}
+
+
+%% Some tricks from "Tame the BeaST" to convert a string
+%% to a number
+INTEGERS { a b }
+
+FUNCTION {mult}
+{ 'a :=
+ 'b :=
+ b #0 <
+ {#-1 #0 b - 'b :=}
+ {#1}
+ if$
+ #0
+ {b #0 >}
+ { a +
+ b #1 - 'b :=
+ }
+ while$
+ swap$
+ 'skip$
+ {#0 swap$ -}
+ if$
+}
+
+FUNCTION {str.to.int.aux}
+{ {duplicate$ empty$ not}
+ { swap$ #10 mult 'a :=
+ duplicate$ #1 #1 substring$
+ chr.to.value a +
+ swap$
+ #2 global.max$ substring$
+ }
+ while$
+ pop$
+}
+
+FUNCTION {str.to.int}
+{ duplicate$ #1 #1 substring$ "-" =
+ {#1 swap$ #2 global.max$ substring$}
+ {#0 swap$}
+ if$
+ #0 swap$ str.to.int.aux
+ swap$
+ {#0 swap$ -}
+ {}
+ if$
+}
+
FUNCTION {bibinfo.check}
{ swap$
duplicate$ missing$
@@ -1209,7 +3199,7 @@ FUNCTION {format.names}
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
- numnames #15 >
+ numnames etal.number > etal.number #0 > and
{ s #1 "{vv~}{ll,}{~f.}{,~jj}" format.name$ 't :=
t bbl.etal space.connect
}
@@ -1218,14 +3208,16 @@ FUNCTION {format.names}
{ s nameptr "{vv~}{ll,}{~f.}{,~jj}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
- { add.comma.or.semicolon t * }
+%<!bio> { add.comma.or.semicolon t * }
+%<bio> { add.comma t * }
{ numnames #2 >
{ "" * }
'skip$
if$
t "others," =
{ bbl.etal space.connect }
- { add.comma.or.semicolon t * }
+%<!bio> { add.comma.or.semicolon t * }
+%<bio> { add.comma bbl.and space.connect t space.connect }
if$
}
if$
@@ -1244,7 +3236,7 @@ FUNCTION {format.authors}
{ author empty$
{ "" }
{ #1 'author.or.editor :=
- #1 'separate.by.semicolon :=
+%<!bio> #1 'separate.by.semicolon :=
author format.names
}
if$
@@ -1254,7 +3246,7 @@ FUNCTION {format.editors}
{ editor empty$
{ "" }
{ #2 'author.or.editor :=
- #0 'separate.by.semicolon :=
+%<!bio> #0 'separate.by.semicolon :=
editor format.names
add.comma
editor num.names$ #1 >
@@ -1317,6 +3309,16 @@ FUNCTION {format.title}
if$
}
+%% The add.title function only does anything if the appropriate
+%% flag is set.
+FUNCTION {add.title}
+{ is.use.title
+ { title format.title.noemph "title" output.check
+ new.sentence }
+ 'skip$
+ if$
+}
+
FUNCTION {format.number.series}
{ volume empty$
{ number empty$
@@ -1339,12 +3341,6 @@ FUNCTION {format.url}
if$
}
-% The specialised |output.bibitem| needed for \pkg{natbib} support now
-% follows, along with the various support macros it needs.
-% \iffalse
-%<*nat>
-% \fi
-% \begin{macrocode}
FUNCTION {format.full.names}
{'s :=
#1 'nameptr :=
@@ -1415,7 +3411,8 @@ FUNCTION {make.full.names}
if$
}
-FUNCTION {output.bibitem} { newline$
+FUNCTION {output.bibitem}
+{ newline$
"\bibitem[" write$
label write$
")" make.full.names duplicate$ short.list =
@@ -1430,11 +3427,6 @@ FUNCTION {output.bibitem} { newline$
before.all 'output.state :=
}
-% \end{macrocode}
-% \iffalse
-%</nat>
-% \fi
-% \begin{macrocode}
FUNCTION {n.dashify}
{ 't :=
""
@@ -1460,6 +3452,7 @@ FUNCTION {n.dashify}
while$
}
+%<*!bio>
FUNCTION {format.date}
{ year empty$
{ "" }
@@ -1467,6 +3460,17 @@ FUNCTION {format.date}
if$
}
+%</!bio>
+%<*bio>
+FUNCTION {format.date}
+{ year empty$
+ { "" }
+ { "(" year ")" * * }
+ if$
+}
+
+%</bio>
+
FUNCTION {format.bdate}
{ year empty$
{ "There's no year in " cite$ * warning$ }
@@ -1524,7 +3528,6 @@ FUNCTION {format.pages}
if$
}
-
FUNCTION {format.pages.required}
{ pages empty$
{ ""
@@ -1671,11 +3674,12 @@ FUNCTION {article}
{ output.bibitem
format.authors "author" output.check
after.item 'output.state :=
-%<iecr> title format.title.noemph "title" output.check
-%<iecr> new.sentence
+%<bio> format.date "year" output.check
+%<bio> after.item 'output.state :=
+ add.title
journal emphasize "journal" output.check
after.item 'output.state :=
- format.date "year" output.check
+%<!bio> format.date "year" output.check
volume empty$
{ ""
format.pages.nopp output
@@ -1915,19 +3919,6 @@ FUNCTION {proceedings}
fin.entry
}
-FUNCTION {remark}
-{ output.bibitem
- note "note" output.check
- fin.entry
-}
-
-FUNCTION {submitted}
-{ output.bibitem
- format.authors "author" output.check
- bbl.submitted output
- fin.entry
-}
-
FUNCTION {techreport}
{ output.bibitem
format.authors "author" output.check
@@ -1973,6 +3964,41 @@ FUNCTION {unpublished}
empty.doi.note
}
+%% Convert the strings "yes" or "no" to #1 or #0 respectively
+FUNCTION {yes.no.to.int}
+{ "l" change.case$ duplicate$
+ "yes" =
+ { pop$ #1 }
+ { duplicate$ "no" =
+ { pop$ #0 }
+ { "unknown Boolean " quote$ * swap$ * quote$ *
+ " in " * cite$ * warning$
+ #0
+ }
+ if$
+ }
+ if$
+}
+
+%% Using the same mechanism as in IEEEtrans, control of
+%% output can be achieved using a special entry type.
+FUNCTION {Control}
+{ ctrl-use-title
+ empty$
+ { skip$ }
+ { ctrl-use-title
+ yes.no.to.int
+ 'is.use.title := }
+ if$
+ ctrl-etal-number
+ empty$
+ { skip$ }
+ { ctrl-etal-number
+ str.to.int
+ 'etal.number := }
+ if$
+}
+
FUNCTION {conference} {inproceedings}
FUNCTION {other} {patent}
@@ -1992,121 +4018,53 @@ MACRO {oct} {"Oct."}
MACRO {nov} {"Nov."}
MACRO {dec} {"Dec."}
-MACRO {acchemr} {"Acc.\ Chem.\ Res."}
-MACRO {aacsa} {"Adv.\ {ACS} Abstr."}
-MACRO {anchem} {"Anal.\ Chem."}
-MACRO {bioch} {"Biochemistry"}
-MACRO {bicoc} {"Bioconj.\ Chem."} % ***
-MACRO {bitech} {"Biotechnol.\ Progr."} % ***
-MACRO {chemeng} {"Chem.\ Eng.\ News"}
-MACRO {chs} {"Chem.\ Health Safety"} % ***
-MACRO {crt} {"Chem.\ Res.\ Toxicol."} % ***
-MACRO {chemrev} {"Chem.\ Rev."} % ***
-MACRO {cmat} {"Chem.\ Mater."} % ***
-MACRO {chemtech} {"{CHEMTECH}"} % ***
-MACRO {enfu} {"Energy Fuels"} % ***
-MACRO {envst} {"Environ.\ Sci.\ Technol."}
-MACRO {iecf} {"Ind.\ Eng.\ Chem.\ Fundam."}
-MACRO {iecpdd} {"Ind.\ Eng.\ Chem.\ Proc.\ Des.\ Dev."}
-MACRO {iecprd} {"Ind.\ Eng.\ Chem.\ Prod.\ Res.\ Dev."}
-MACRO {iecr} {"Ind.\ Eng.\ Chem.\ Res."} % ***
-MACRO {inor} {"Inorg.\ Chem."}
-MACRO {jafc} {"J.~Agric.\ Food Chem."}
-MACRO {jacs} {"J.~Am.\ Chem.\ Soc."}
-MACRO {jced} {"J.~Chem.\ Eng.\ Data"}
-MACRO {jcics} {"J.~Chem.\ Inf.\ Comput.\ Sci."}
-MACRO {jmc} {"J.~Med.\ Chem."}
-MACRO {joc} {"J.~Org.\ Chem."}
-MACRO {jps} {"J.~Pharm.\ Sci."}
-MACRO {jpcrd} {"J.~Phys.\ Chem.\ Ref.\ Data"} % ***
-MACRO {jpc} {"J.~Phys.\ Chem."}
-MACRO {jpca} {"J.~Phys.\ Chem.~A"}
-MACRO {jpcb} {"J.~Phys.\ Chem.~B"}
-MACRO {lang} {"Langmuir"}
-MACRO {macro} {"Macromolecules"}
-MACRO {orgmet} {"Organometallics"}
-MACRO {orglett} {"Org.\ Lett."}
-
-MACRO {jft} {"J.~Chem.\ Soc., Faraday Trans."}
-MACRO {jft1} {"J.~Chem.\ Soc., Faraday Trans.\ 1"}
-MACRO {jft2} {"J.~Chem.\ Soc., Faraday Trans.\ 2"}
-MACRO {tfs} {"Trans.\ Faraday Soc."}
-MACRO {jcis} {"J.~Colloid Interface Sci."}
-MACRO {acis} {"Adv.~Colloid Interface Sci."}
-MACRO {cs} {"Colloids Surf."}
-MACRO {csa} {"Colloids Surf.\ A"}
-MACRO {csb} {"Colloids Surf.\ B"}
-MACRO {pcps} {"Progr.\ Colloid Polym.\ Sci."}
-MACRO {jmr} {"J.~Magn.\ Reson."}
-MACRO {jmra} {"J.~Magn.\ Reson.\ A"}
-MACRO {jmrb} {"J.~Magn.\ Reson.\ B"}
-MACRO {sci} {"Science"}
-MACRO {nat} {"Nature"}
-MACRO {jcch} {"J.~Comput.\ Chem."}
-MACRO {cca} {"Croat.\ Chem.\ Acta"}
-MACRO {angew} {"Angew.\ Chem., Int.\ Ed."}
-MACRO {chemeurj} {"Chem.---Eur.\ J."}
-
-MACRO {poly} {"Polymer"}
-MACRO {ajp} {"Am.\ J.\ Phys."}
-MACRO {rsi} {"Rev.\ Sci.\ Instrum."}
-MACRO {jcp} {"J.~Chem.\ Phys."}
-MACRO {cpl} {"Chem.\ Phys.\ Lett."}
-MACRO {molph} {"Mol.\ Phys."}
-MACRO {pac} {"Pure Appl.\ Chem."}
-MACRO {jbc} {"J.~Biol.\ Chem."}
-MACRO {tl} {"Tetrahedron Lett."}
-MACRO {psisoe} {"Proc.\ SPIE-Int.\ Soc.\ Opt.\ Eng."}
-MACRO {prb} {"Phys.\ Rev.\ B:\ Condens.\ Matter Mater. Phys."}
-MACRO {jap} {"J.~Appl.\ Phys."}
-MACRO {pnac} {"Proc.\ Natl.\ Acad.\ Sci.\ U.S.A."}
-MACRO {bba} {"Biochim.\ Biophys.\ Acta"}
-MACRO {nar} {"Nucleic.\ Acid Res."}
+%% The ACS journals by CODEN
+MACRO {achre4} {"Acc.\ Chem.\ Res."}
+MACRO {acbcct} {"ACS Chem.\ Biol."}
+MACRO {ancac3} {"ACS Nano"}
+MACRO {ancham} {"Anal.\ Chem."}
+MACRO {bichaw} {"Biochemistry"}
+MACRO {bcches} {"Bioconjugate Chem."}
+MACRO {bomaf6} {"Biomacromolecules"}
+MACRO {bipret} {"Biotechnol.\ Prog."}
+MACRO {crtoec} {"Chem.\ Res.\ Toxicol."}
+MACRO {chreay} {"Chem.\ Rev."}
+MACRO {cmatex} {"Chem.\ Mater."}
+MACRO {cgdefu} {"Cryst.\ Growth Des."}
+MACRO {enfuem} {"Energy Fuels"}
+MACRO {esthag} {"Environ.\ Sci.\ Technol."}
+MACRO {iechad} {"Ind.\ Eng.\ Chem.\ Res."}
+MACRO {inoraj} {"Inorg.\ Chem."}
+MACRO {jafcau} {"J.~Agric.\ Food Chem."}
+MACRO {jceaax} {"J.~Chem.\ Eng.\ Data"}
+MACRO {jcisd8} {"J.~Chem.\ Inf.\ Model."}
+MACRO {jctcce} {"J.~Chem.\ Theory Comput."}
+MACRO {jcchff} {"J. Comb. Chem."}
+MACRO {jmcmar} {"J. Med. Chem."}
+MACRO {jnprdf} {"J. Nat. Prod."}
+MACRO {joceah} {"J.~Org.\ Chem."}
+MACRO {jpcafh} {"J.~Phys.\ Chem.~A"}
+MACRO {jpcbfk} {"J.~Phys.\ Chem.~B"}
+MACRO {jpccck} {"J.~Phys.\ Chem.~C"}
+MACRO {jprobs} {"J.~Proteome Res."}
+MACRO {jacsat} {"J.~Am.\ Chem.\ Soc."}
+MACRO {langd5} {"Langmuir"}
+MACRO {mamobx} {"Macromolecules"}
+MACRO {mpohbp} {"Mol.\ Pharm."}
+MACRO {nalefd} {"Nano Lett."}
+MACRO {orlef7} {"Org.\ Lett."}
+MACRO {oprdfk} {"Org.\ Proc.\ Res.\ Dev."}
+MACRO {orgnd7} {"Organometallics"}
READ
-% \end{macrocode}
-% The nature of the initialise code depends on whether we need to
-% support \pkg{natbib}. First the simple case is handled.
-% \iffalse
-%<*!nat>
-% \fi
-% \begin{macrocode}
-STRINGS { longest.label }
-
-INTEGERS { number.label longest.label.width }
-
-FUNCTION {initialize.longest.label}
-{ "" 'longest.label :=
- #1 'number.label :=
- #0 'longest.label.width :=
-}
-
-FUNCTION {longest.label.pass}
-{ number.label int.to.str$ 'label :=
- number.label #1 + 'number.label :=
- label width$ longest.label.width >
- { label 'longest.label :=
- label width$ 'longest.label.width :=
- }
- 'skip$
- if$
+FUNCTION {initialize.controls}
+{ default.is.use.title 'is.use.title :=
+ default.etal.number 'etal.number :=
}
-EXECUTE {initialize.longest.label}
-
-ITERATE {longest.label.pass}
+EXECUTE {initialize.controls}
-% \end{macrocode}
-% \iffalse
-%</!nat>
-% \fi
-% Now the \pkg{natbib} system is sorted out, basically by copying from
-% \file{plainnat.bst}.
-% \iffalse
-%<*nat>
-% \fi
-% \begin{macrocode}
INTEGERS { len }
FUNCTION {chop.word}
@@ -2256,30 +4214,6 @@ EXECUTE {initialize.longest.label}
ITERATE {forward.pass}
-% \end{macrocode}
-% \iffalse
-%</nat>
-% \fi
-
-%<*!mcp>
-FUNCTION {begin.bib}
-{ preamble$ empty$
- 'skip$
- { preamble$ write$ newline$ }
- if$
- "\providecommand{\url}[1]{\texttt{#1}}"
- write$ newline$
- "\providecommand{\refin}[1]{\\ \textbf{Referenced in:} #1}"
- write$ newline$
-%<nat> "\providecommand{\natexlab}[1]{#1}"
-%<nat> write$ newline$
-%<!nat> "\begin{thebibliography}{" longest.label * "}" *
-%<nat> "\begin{thebibliography}{" number.label int.to.str$ * "}" *
- write$ newline$
-}
-
-%</!mcp>
-%<*mcp>
FUNCTION {begin.bib}
{ preamble$ empty$
'skip$
@@ -2287,15 +4221,19 @@ FUNCTION {begin.bib}
if$
"\ifx\mcitethebibliography\mciteundefinedmacro"
write$ newline$
- "\PackageError{achemsoM.bst}{mciteplus.sty has not been loaded}"
+ "\PackageError"
+ write$
+%<!bio> "{achemso.bst}"
+%<bio> "{biochem.bst}"
+ write$
+ "{mciteplus.sty has not been loaded}"
write$ newline$
"{This bibstyle requires the use of the mciteplus package.}\fi"
write$ newline$
-%<!nat> "\begin{mcitethebibliography}{" longest.label * "}" * write$ newline$
-%<nat> "\begin{mcitethebibliography}{" number.label int.to.str$ * "}" *
-%<nat> write$ newline$
-%<nat> "\providecommand{\natexlab}[1]{#1}"
-%<nat> write$ newline$
+ "\begin{mcitethebibliography}{" number.label int.to.str$ * "}" *
+ write$ newline$
+ "\providecommand*{\natexlab}[1]{#1}"
+ write$ newline$
"\mciteSetBstSublistMode{f}"
write$ newline$
"\mciteSetBstMaxWidthForm{subitem}{(\alph{mcitesubitemcount})}"
@@ -2306,58 +4244,40 @@ FUNCTION {begin.bib}
write$ newline$
}
-%</mcp>
EXECUTE {begin.bib}
EXECUTE {init.state.consts}
ITERATE {call.type$}
-%<*!mcp>
-FUNCTION {end.bib}
-{ newline$
- "\end{thebibliography}" write$ newline$
-}
-
-%</!mcp>
-%<*mcp>
FUNCTION {end.bib}
{ newline$
"\end{mcitethebibliography}" write$ newline$
}
-%</mcp>
EXECUTE {end.bib}
-%</bib>
-%<*database>
-@BOOK{Coghill2006,
- title = {{T}he {ACS} {S}tyle {G}uide},
- publisher = {{O}xford {U}niversity {P}ress, {I}nc. and
- {T}he {A}merican {C}hemical {S}ociety},
- year = {2006},
- editor = {Coghill, Anne M. and Garson, Lorrin R.},
- address = {{N}ew {Y}ork},
- edition = {3},
- subtitle = {{E}ffective {C}ommunication of {S}cientific {I}nformation},
-}
-
-@MISC{ACS2007,
- url = {http://pubs.acs.org/books/references.shtml},
-}
-%</database>
+%</bst>
%<*jawltxdoc>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{jawltxdoc}
\usepackage[T1]{fontenc}
-\usepackage[english,UKenglish]{babel}
+\usepackage{lmodern}
+\usepackage[final]{listings,graphicx,microtype}
\usepackage[scaled=0.95]{helvet}
\usepackage[version=3]{mhchem}
-\usepackage[final]{microtype}
\usepackage[osf]{mathpazo}
-\usepackage{booktabs,array,url,graphicx,courier,xspace}
-\usepackage{upgreek,ifpdf,listings,float,caption,longtable}
+\usepackage{booktabs,array,url,courier,xspace,varioref}
+\usepackage{upgreek,ifpdf,float,caption,longtable,babel}
+\begingroup
+ \@ifundefined{eTeXversion}
+ {\aftergroup\@gobble}
+ {\aftergroup\@firstofone}
+\endgroup
+ {\usepackage{etoolbox}}
\floatstyle{plaintop}
\restylefloat{table}
+\labelformat{figure}{\figurename~#1}
+\labelformat{table}{\tablename~#1}
\ifpdf
\usepackage{embedfile}
\embedfile[%
@@ -2369,125 +4289,148 @@ EXECUTE {end.bib}
\IfFileExists{\jobname.sty}
{\usepackage{\jobname}}{}
\usepackage[numbered]{hypdoc}
+\setcounter{IndexColumns}{2}
\newlength\LaTeXwidth
\newlength\LaTeXoutdent
\newlength\LaTeXgap
\setlength\LaTeXgap{1em}
\setlength\LaTeXoutdent{-0.15\textwidth}
-\newcommand*{\typesetexampleandcode}{%
- \begin{list}{}{%
- \setlength\itemindent{0pt}
- \setlength\leftmargin\LaTeXoutdent
- \setlength\rightmargin{0pt}
- }
- \item
- \setlength\LaTeXoutdent{-0.15\textwidth}
- \begin{minipage}[c]{\textwidth-\LaTeXwidth-\LaTeXoutdent-\LaTeXgap}
- \lst@sampleInput
- \end{minipage}%
- \hfill%
- \begin{minipage}[c]{\LaTeXwidth}%
- \hbox to\linewidth{\box\lst@samplebox\hss}%
- \end{minipage}%
- \end{list}
-}
-\newcommand*{\typesetcodeandexample}{%
- \begin{list}{}{%
- \setlength\itemindent{0pt}
- \setlength\leftmargin{0pt}
- \setlength\rightmargin{0pt}
- }
- \item
- \begin{minipage}[c]{\LaTeXwidth}%
- \hbox to\linewidth{\box\lst@samplebox\hss}%
- \end{minipage}%
- \lst@sampleInput
- \end{list}
-}
-\newcommand*{\typesetfloatexample}{%
- \begin{list}{}{%
- \setlength\itemindent{0pt}
- \setlength\leftmargin{0pt}
- \setlength\rightmargin{0pt}
- }
- \item
- \lst@sampleInput
- \begin{minipage}[c]{\LaTeXwidth}%
- \hbox to\linewidth{\box\lst@samplebox\hss}%
- \end{minipage}%
- \end{list}
-}
-\newcommand*{\typesetcodeonly}{%
- \begin{list}{}{%
- \setlength\itemindent{0pt}
- \setlength\leftmargin{0pt}
- \setlength\rightmargin{0pt}
- }
- \item
- \begin{minipage}[c]{\LaTeXwidth}%
- \hbox to\linewidth{\box\lst@samplebox\hss}%
- \end{minipage}%
- \end{list}
-}
+\newbox\lst@samplebox
\edef\LaTeXexamplefile{\jobname.tmp}
\lst@RequireAspects{writefile}
-\newbox\lst@samplebox
-\lstnewenvironment{LaTeXexample}[1][\typesetexampleandcode]{%
- \let\typesetexample#1
+\lstnewenvironment{LaTeXexample}[1][example]{%
\global\let\lst@intname\@empty
+ \ifcsname LaTeXcode#1\endcsname
+ \expandafter\let\expandafter\LaTeXcode
+ \csname LaTeXcode#1\endcsname
+ \expandafter\let\expandafter\LaTeXcodeend
+ \csname LaTeXcode#1end\endcsname
+ \else
+ \PackageError{jawltxdoc}
+ {Undefined example type `#1'}
+ \@ehd
+ \let\LaTeXcode\relax
+ \let\LaTeXcodeend\relax
+ \fi
+ \LaTeXcode}
+ {\lst@EndWriteFile
+ \LaTeXcodeend}
+\newcommand*{\LaTeXcodeexample}{%
\setbox\lst@samplebox=\hbox\bgroup
- \setkeys{lst}{tabsize=4,gobble=3,breakindent=0pt,%
- basicstyle=\small\ttfamily,basewidth=0.51em,%
- keywordstyle=\color{blue}}
- \lst@BeginAlsoWriteFile{\LaTeXexamplefile}
-}{%
- \lst@EndWriteFile\egroup
- \setlength\LaTeXwidth{\wd\lst@samplebox}
- \typesetexample%
-}
-\newcommand*{\lst@sampleInput}{%
+ \LaTeXcodefloat}
+\let\LaTeXcoderesultonly\LaTeXcodeexample
+\newcommand*{\LaTeXcodeexampleend}{%
+ \egroup
+ \setlength\LaTeXwidth{\wd\lst@samplebox}%
+ \begin{list}{}{%
+ \setlength\itemindent{0pt}
+ \setlength\leftmargin\LaTeXoutdent
+ \setlength\rightmargin{0pt}}%
+ \item
+ \setlength\LaTeXoutdent{-0.15\textwidth}
+ \begin{minipage}[c]{%
+ \textwidth-\LaTeXwidth-\LaTeXoutdent-\LaTeXgap}
+ \LaTeXcodefloatend
+ \end{minipage}%
+ \hfill
+ \begin{minipage}[c]{\LaTeXwidth}%
+ \hbox to\linewidth{\box\lst@samplebox\hss}%
+ \end{minipage}%
+ \end{list}}
+\newcommand*{\LaTeXcodefloat}{%
+ \setkeys{lst}{tabsize=4,gobble=3,breakindent=0pt,
+ basicstyle=\small\ttfamily,basewidth=0.51em,
+ keywordstyle=\color{blue}}%
+ \lst@BeginAlsoWriteFile{\LaTeXexamplefile}}
+\let\LaTeXcodenoexample\LaTeXcodefloat
+\let\LaTeXcodenoexampleend\@empty
+\newcommand*{\LaTeXcodefloatend}{%
\MakePercentComment\catcode`\^^M=10\relax
- \small%
+ \small
{\setkeys{lst}{SelectCharTable=\lst@ReplaceInput{\^\^I}%
{\lst@ProcessTabulator}}%
\leavevmode \input{\LaTeXexamplefile}}%
- \MakePercentIgnore%
-}
-\def\DescribeOption{\leavevmode\@bsphack\begingroup\MakePrivateLetters
+ \MakePercentIgnore}
+\newcommand*{\LaTeXcoderesultonlyend}{\egroup\LaTeXcodefloatend}
+\lstnewenvironment{BibTeXexample}{%
+ \global\let\lst@intname\@empty
+ \setbox\lst@samplebox=\hbox\bgroup
+ \setkeys{lst}{tabsize=4,gobble=3,breakindent=0pt,
+ basicstyle=\small\ttfamily,basewidth=0.51em,
+ keywordstyle=\color{black}}
+ \lst@BeginAlsoWriteFile{\LaTeXexamplefile}}
+ {\lst@EndWriteFile
+ \LaTeXcodeexampleend}
+\newcommand*{\DescribeOption}{%
+ \leavevmode\@bsphack\begingroup\MakePrivateLetters
\Describe@Option}
-\def\Describe@Option#1{\endgroup
+\newcommand*{\Describe@Option}[1]{\endgroup
\marginpar{\raggedleft\PrintDescribeEnv{#1}}%
\SpecialOptionIndex{#1}\@esphack\ignorespaces}
-\def\SpecialOptionIndex#1{\@bsphack
+\newcommand*{\SpecialOptionIndex}[1]{\@bsphack
\index{#1\actualchar{\protect\ttfamily#1}
(option)\encapchar usage}%
- \index{options:\levelchar#1\actualchar{\protect\ttfamily#1}\encapchar
- usage}\@esphack}
+ \index{options:\levelchar#1\actualchar{\protect\ttfamily#1}%
+ \encapchar usage}\@esphack}
+\newcommand*{\indexopt}[1]{\DescribeOption{#1}\opt{#1}}
+\newcommand*{\DescribeOptionInfo}[2]{%
+ \DescribeOption{#1}%
+ \opt{#1=\meta{#2}}\xspace}
+\newcommand*{\ofixarg}[1]{%
+ {\ttfamily[}%
+ \ifmmode \expandafter \nfss@text \fi
+ {%
+ \meta@font@select
+ \edef\meta@hyphen@restore{%
+ \hyphenchar\the\font\the\hyphenchar\font}%
+ \hyphenchar\font\m@ne
+ \language\l@nohyphenation
+ #1\/%
+ \meta@hyphen@restore
+ }%
+ {\ttfamily]}}
\newcommand*{\pkg}[1]{\textsf{#1}}
\newcommand*{\currpkg}{\pkg{\jobname}\xspace}
\newcommand*{\opt}[1]{\texttt{#1}}
+\newcommand*{\defaultopt}[1]{\opt{\textbf{#1}}}
\newcommand*{\file}[1]{\texttt{#1}}
\newcommand*{\ext}[1]{\file{.#1}}
\newcommand*{\latin}[1]{\emph{#1}}
\newcommand*{\etc}{%
\@ifnextchar.
{\latin{etc}}
- {\latin{etc.}}
- \xspace}
+ {\latin{etc}.\xspace}}
\newcommand*{\eg}{%
\@ifnextchar.
{\latin{e.g}}
- {\latin{e.g.}}
- \xspace}
+ {\latin{e.g}.\xspace}}
\newcommand*{\ie}{%
\@ifnextchar.
{\latin{i.e}}
- {\latin{i.e.}}
- \xspace}
+ {\latin{i.e}.\xspace}}
+\newcommand*{\etal}{%
+ \@ifnextchar.
+ {\latin{et~al.}}
+ {\latin{et~al}.\xspace}}
\newcommand*{\AMS}{{\protect\usefont{OMS}{cmsy}{m}{n}%
A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}
\providecommand*{\eTeX}{\ensuremath{\varepsilon}-\TeX}
-\newcommand*{\XeTeX}
+\DeclareRobustCommand*{\XeTeX}
{X\kern-.125em\lower.5ex\hbox{\reflectbox{E}}\kern-.1667em\TeX}
+\providecommand*{\CTAN}{\textsc{ctan}}
+\@ifpackageloaded{etoolbox}
+ {\patchcmd{\@addmarginpar}
+ {\@latex@warning@no@line {Marginpar on page \thepage\space moved}}
+ {\relax}{}{}}
+ {}
+\newcounter{argument}
+\g@addto@macro\endmacro{\setcounter{argument}{0}}
+\newcommand*\darg[1]{%
+ \stepcounter{argument}%
+ {\ttfamily\char`\#\theargument~:~}#1\par\noindent\ignorespaces}
+\newcommand*\doarg[1]{%
+ \stepcounter{argument}%
+ {\ttfamily\makebox[0pt][r]{[}%
+ \char`\#\theargument]:~}#1\par\noindent\ignorespaces}
%</jawltxdoc>
%\fi
diff --git a/Master/texmf-dist/source/latex/achemso/achemso.ins b/Master/texmf-dist/source/latex/achemso/achemso.ins
index 0e006f4e1e8..ae90f20035d 100644
--- a/Master/texmf-dist/source/latex/achemso/achemso.ins
+++ b/Master/texmf-dist/source/latex/achemso/achemso.ins
@@ -1,66 +1,101 @@
-%%
-%% This is file `achemso.ins',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% achemso.dtx (with options: `install')
-%% ----------------------------------------------------------------
-%% The achemso package - LaTeX and BibTeX support for American
-%% Chemical Society publications
-%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
-%% Released under the LaTeX Project Public License v1.3c or later
-%% See http://www.latex-project.org/lppl.txt
-%% ----------------------------------------------------------------
-%%
-\input docstrip.tex
-\keepsilent
-\askforoverwritefalse
-\preamble
- ----------------------------------------------------------------
- The achemso package - LaTeX and BibTeX support for American
- Chemical Society publications
- Maintained by Joseph Wright
- E-mail: joseph.wright@morningstar2.co.uk
- Released under the LaTeX Project Public License v1.3c or later
- See http://www.latex-project.org/lppl.txt
- ----------------------------------------------------------------
-
-\endpreamble
-\Msg{Generating achemso files:}
-\usedir{tex/latex/achemso}
-\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}
- \file{\jobname.sty}{\from{\jobname.dtx}{package}}
-}
-\declarepostamble\bibtexable
-\endpostamble
-\usedir{bibtex/bst/achemso}
-\generate{\usepostamble\bibtexable
- \file{achemso.bst}{\from{achemso.dtx}{bib}}
- \file{achemsoM.bst}{\from{achemso.dtx}{bib,mcp}}
- \file{achemnat.bst}{\from{achemso.dtx}{bib,nat}}
- \file{achemnatM.bst}{\from{achemso.dtx}{bib,nat,mcp}}
-}
-\generate{\usepostamble\bibtexable
- \file{achemsol.bst}{\from{achemso.dtx}{bib,list}}
- \file{achemsolM.bst}{\from{achemso.dtx}{bib,list,mcp}}
- \file{achemlnt.bst}{\from{achemso.dtx}{bib,list,nat}}
- \file{achemlntM.bst}{\from{achemso.dtx}{bib,list,nat,mcp}}
-}
-\generate{\usepostamble\bibtexable
- \file{iecr.bst}{\from{achemso.dtx}{bib,iecr}}
- \file{iecrM.bst}{\from{achemso.dtx}{bib,mcp,iecr}}
- \file{iecrnat.bst}{\from{achemso.dtx}{bib,nat,iecr}}
- \file{iecrnatM.bst}{\from{achemso.dtx}{bib,nat,mcp,iecr}}
-}
-\generate{\usepostamble\empty\usepreamble\empty
- \file{achemso.bib}{\from{achemso.dtx}{database}}
-}
-\usedir{doc/latex/achemso}
-\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
-}
-\endbatchfile
-\endinput
-%%
-%% End of file `achemso.ins'.
+%%
+%% This is file `achemso.ins',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% achemso.dtx (with options: `install')
+%% ----------------------------------------------------------------
+%% achemso --- Support for submissions to American Chemical
+%% Society journals
+%% Maintained by Joseph Wright
+%% E-mail: joseph.wright@morningstar2.co.uk
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------
+%%
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+ ----------------------------------------------------------------
+ achemso --- Support for submissions to American Chemical
+ Society journals
+ Maintained by Joseph Wright
+ E-mail: joseph.wright@morningstar2.co.uk
+ Released under the LaTeX Project Public License v1.3c or later
+ See http://www.latex-project.org/lppl.txt
+ ----------------------------------------------------------------
+
+\endpreamble
+\Msg{Generating achemso files:}
+\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
+}
+\usedir{tex/latex/achemso}
+\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}
+ \file{\jobname.cls}{\from{\jobname.dtx}{class}}
+ \file{natmove.sty}{\from{natmove.dtx}{package}}
+}
+\usedir{source/latex/achemso}
+\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\usedir{tex/latex/achemso/config}
+\generate{\file{achre4.cfg}{\from{\jobname.dtx}{achre4}}
+ \file{acbcct.cfg}{\from{\jobname.dtx}{acbcct}}
+ \file{ancac3.cfg}{\from{\jobname.dtx}{ancac3}}
+ \file{ancham.cfg}{\from{\jobname.dtx}{ancham}}
+ \file{bichaw.cfg}{\from{\jobname.dtx}{bichaw}}
+ \file{bcches.cfg}{\from{\jobname.dtx}{bcches}}
+ \file{bomaf6.cfg}{\from{\jobname.dtx}{bomaf6}}
+ \file{bipret.cfg}{\from{\jobname.dtx}{bipret}}
+}
+\generate{\file{crtoec.cfg}{\from{\jobname.dtx}{crtoec}}
+ \file{chreay.cfg}{\from{\jobname.dtx}{chreay}}
+ \file{cmatex.cfg}{\from{\jobname.dtx}{cmatex}}
+ \file{cgdefu.cfg}{\from{\jobname.dtx}{cgdefu}}
+ \file{enfuem.cfg}{\from{\jobname.dtx}{enfuem}}
+ \file{esthag.cfg}{\from{\jobname.dtx}{esthag}}
+ \file{iecred.cfg}{\from{\jobname.dtx}{iecred}}
+ \file{inoraj.cfg}{\from{\jobname.dtx}{inoraj}}
+}
+\generate{\file{jafcau.cfg}{\from{\jobname.dtx}{jafcau}}
+ \file{jacsat.cfg}{\from{\jobname.dtx}{jacsat}}
+ \file{jceaax.cfg}{\from{\jobname.dtx}{jceaax}}
+ \file{jcisd8.cfg}{\from{\jobname.dtx}{jcisd8}}
+ \file{jctcce.cfg}{\from{\jobname.dtx}{jctcce}}
+ \file{jcchff.cfg}{\from{\jobname.dtx}{jcchff}}
+ \file{jmcmar.cfg}{\from{\jobname.dtx}{jmcmar}}
+ \file{jnprdf.cfg}{\from{\jobname.dtx}{jnprdf}}
+}
+\generate{\file{joceah.cfg}{\from{\jobname.dtx}{joceah}}
+ \file{jpcafh.cfg}{\from{\jobname.dtx}{jpcafh}}
+ \file{jpcbfk.cfg}{\from{\jobname.dtx}{jpcbfk}}
+ \file{jpccck.cfg}{\from{\jobname.dtx}{jpccck}}
+ \file{jprobs.cfg}{\from{\jobname.dtx}{jprobs}}
+ \file{langd5.cfg}{\from{\jobname.dtx}{langd5}}
+ \file{mamobx.cfg}{\from{\jobname.dtx}{mamobx}}
+ \file{mpohbp.cfg}{\from{\jobname.dtx}{mpohbp}}
+}
+\generate{\file{nalefd.cfg}{\from{\jobname.dtx}{nalefd}}
+ \file{orlef7.cfg}{\from{\jobname.dtx}{orlef7}}
+ \file{oprdfk.cfg}{\from{\jobname.dtx}{oprdfk}}
+ \file{orgnd7.cfg}{\from{\jobname.dtx}{orgnd7}}
+}
+\nopreamble\nopostamble
+\usedir{bibtex/bst/achemso}
+\generate{\file{achemso.bst}{\from{\jobname.dtx}{bst}}
+ \file{biochem.bst}{\from{\jobname.dtx}{bst,bio}}
+}
+\nopreamble\nopostamble
+\usedir{doc/latex/achemso}
+\generate{\file{achemso.bib}{\from{\jobname.dtx}{refs}}
+}
+\nopreamble\nopostamble
+\usedir{doc/latex/achemso}
+\generate{\file{README.txt}{\from{\jobname.dtx}{readme}}
+ \file{achemso-demo.tex}{\from{\jobname.dtx}{demo}}
+}
+\endbatchfile
+\endinput
+%%
+%% End of file `achemso.ins'.
diff --git a/Master/texmf-dist/source/latex/achemso/natmove.dtx b/Master/texmf-dist/source/latex/achemso/natmove.dtx
new file mode 100644
index 00000000000..fdbd58cde49
--- /dev/null
+++ b/Master/texmf-dist/source/latex/achemso/natmove.dtx
@@ -0,0 +1,601 @@
+% \iffalse meta-comment
+%
+% Portions copyright (C) 1989-2003 by
+% Donald Arseneau
+% Copyright (C) 2007-08 by
+% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%
+% Part of this file is derived from cite.sty, to which the following
+% license applies:
+%--------------------------------------------------------------------
+% Copyright (C) 1989-2003 by Donald Arseneau
+% These macros may be freely transmitted, reproduced, or modified
+% provided that this notice is left intact.
+%--------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either
+% version 1.3c of this license or (at your option) any later
+% version. The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3c or later is part of all distributions of
+% LaTeX version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The current maintainer of this work is Joseph Wright.
+%
+% This work consists of the source file natmove.dtx
+% and the derived files natmove.ins,
+% natmove.sty,
+% natmove.pdf,
+% natmove-manual.pdf and
+% jawltxdoc.sty
+%
+% TDS-ready files:
+% The compressed file achemso.tds.zip contains an unpacked version
+% of all of the files included here, and pre-compiled
+% documentation in PDF format. Simply decompress achemso.tds.zip
+% in your local TeX directory, run your hash program (texhash,
+% initexmf --update-fndb, etc.) and everything will be ready to
+% go. The user documentation for the package is called
+% natmove-manual.pdf; the file natmove.pdf includes the user
+% manual and the fully-indexed source code.
+%
+% Unpacking:
+% (a) If natmove.ins is present:
+% tex natmove.ins
+% (b) Without natmove.ins:
+% tex natmove.dtx
+% (c) If you use LaTeX to generate files:
+% latex \let\install=y\input{natmove.dtx}
+%
+% Documentation:
+% (a) Without write18 enabled:
+% pdflatex natmove.dtx
+% bibtex8 --wolfgang natmove
+% makeindex -s gind.ist natmove.idx
+% makeindex -s gglo.ist -o natmove.gls natmove.glo
+% pdflatex natmove.dtx
+% pdflatex natmove.dtx
+% (b) With write18 enabled:
+% pdflatex natmove.dtx
+% pdflatex natmove.dtx
+% pdflatex natmove.dtx
+%
+% Installation:
+% Copy natmove.sty to a location searched by TeX, and if required
+% by your TeX installation, run the appropriate command to build
+% a hash of files (texhash, initexmf --update-fndb, etc.)
+%
+% Note:
+% The jawltxdoc.sty file is not needed for installation,
+% only for building the documentation; it may be deleted
+% after producing the documentation (if necessary).
+%
+%<*ignore>
+% This is all taken verbatim from Heiko Oberdiek's packages
+\begingroup
+ \def\x{LaTeX2e}%
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+ ----------------------------------------------------------------
+ natmove --- Automatic citation moving with natbib
+ Maintained by Joseph Wright
+ E-mail: joseph.wright@morningstar2.co.uk
+ Released under the LaTeX Project Public License v1.3c or later
+ See http://www.latex-project.org/lppl.txt
+ ----------------------------------------------------------------
+
+\endpreamble
+\Msg{Generating natmove files:}
+\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
+}
+\usedir{tex/latex/achemso}
+\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+\usedir{source/latex/achemso}
+\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+% Will Robertson's trick
+\immediate\write18{bibtex8 --wolfgang \jobname}
+\immediate\write18{makeindex -s gind.ist -o \jobname.ind \jobname.idx}
+\immediate\write18{makeindex -s gglo.ist -o \jobname.gls \jobname.glo}
+%</ignore>
+%<*driver>
+\PassOptionsToClass{a4paper}{article}
+\documentclass[german,english,UKenglish]{ltxdoc}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+%\OnlyDescription
+\usepackage[sort&compress,numbers,super]{natbib}
+\usepackage{mciteplus}
+\usepackage{jawltxdoc}
+\begin{document}
+ \DocInput{\jobname.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+%\CheckSum{158}
+%
+% \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 \~}
+%
+%\GetFileInfo{\jobname.sty}
+%
+%\DoNotIndex{\!,\.,\?,\@empty,\@firstoftwo,\@ifmtarg}
+%\DoNotIndex{\@ifpackageloaded,\@m,\@nil,\@secondoftwo}
+%\DoNotIndex{\AtBeginDocument,\begingroup,\catcode,\def,\else}
+%\DoNotIndex{\endgroup,\expandafter,\fi,\frenchspacing,\futurelet}
+%\DoNotIndex{\gdef,\global,\ifnum,\ifx,\ifNAT@super,\lastskip}
+%\DoNotIndex{\leavevmode,\let,\long,\mathchardef,\NeedsTeXFormat}
+%\DoNotIndex{,\newcommand,\newif,\PackageWarning,\ProvidesPackage,\Q}
+%\DoNotIndex{\relax,\renewcommand,\RequirePackage,\sfcode,\skip@}
+%\DoNotIndex{\space,\spacefactor,\unskip}
+%
+%\changes{v1.0}{2008/06/22}{First public release}
+%
+%\setkeys{lst}{language=[LaTeX]{TeX},moretexcs={citenum,
+% citeyear,citeauthor}}
+%
+%\title{\currpkg\ --- Automatic citation moving with natbib^^A
+% \thanks{This file describes version \fileversion, last revised
+% \filedate.}}
+%\author{Joseph Wright^^A
+% \thanks{E-mail: joseph.wright@morningstar2.co.uk}}
+%\date{Released \filedate}
+%
+%\maketitle
+%
+%\newcommand*{\ACS}{\textsc{acs}}
+%\begin{abstract}
+% The \currpkg package adds the ability to move citations after
+% punctuation automatically to the \pkg{natbib} package, in the same
+% way as with \pkg{cite}. With non-superscript citations, no action
+% is taken.
+%\end{abstract}
+%
+%\begin{multicols}{2}
+% \tableofcontents
+%\end{multicols}
+%
+%\section{Using the package}
+% The \currpkg package does only one job. It brings the ability to
+% move punctuation after citations, using code borrowed from the
+% \pkg{cite} package.
+%\begin{LaTeXexample}
+% Some text \cite{Coghill2006} some more text.\\
+% Some text ending a sentence \cite{Coghill2006}.
+%\end{LaTeXexample}
+% This is deactivated for other citation types.
+%\begin{LaTeXexample}
+% Some text \citeyear{Coghill2006}.\\
+% Some text \citeauthor{Coghill2006}.\\
+% Some text \citenum{Coghill2006}.
+%\end{LaTeXexample}
+% The package does nothing if the \opt{super} option has not been
+% given to \pkg{natbib}. This means that the source can be written
+% without needing to decide where citations will to appear, with the
+% \opt{super} option for \pkg{natbib} controlling the result.
+%
+%\DescribeMacro{\natmovechars}
+% One user macro is provided: \cs{natmovechars}. This contains
+% the characters which are moved before superscript punctuation.
+% The default contents is |,;:.| and can be set using
+% \cs{renewcommand*}:
+%\begin{LaTeXexample}
+% \renewcommand*{\natmovechars}{.}
+% Some text \cite{Coghill2006},
+% more text \cite{Coghill2006}.
+%\end{LaTeXexample}
+%
+%\StopEventually{%
+% \PrintChanges
+% \PrintIndex
+% \bibliographystyle{achemso}
+% \bibliography{achemso}}
+%
+%\iffalse
+%<*package>
+%\fi
+%\section{The code}
+%\begin{macro}{\nmv@id}
+% The package file is designed to be usable with any document class.
+% It sets up the basics, but leaves some settings to the class file.
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\def\nmv@id$#1: #2.#3 #4 #5-#6-#7 #8 #9${%
+ #5/#6/#7\space v1.0\space}
+\ProvidesPackage{natmove}
+ [\nmv@id$Id: natmove.dtx 29 2008-08-22 07:47:26Z joseph $
+ Automatic citation moving with natbib]
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@ifmtarg}
+%\begin{macro}{\nmv@xifmtarg}
+% To keep down dependance on other packages, the very short code
+% block from \pkg{ifmtarg} is copied here with an internal name.
+% \begin{macrocode}
+\begingroup
+ \catcode`\Q=3
+ \long\gdef\nmv@ifmtarg#1{%
+ \nmv@xifmtarg#1QQ\@secondoftwo\@firstoftwo\@nil}
+ \long\gdef\nmv@xifmtarg#1#2Q#3#4#5\@nil{#4}
+\endgroup
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\ifnmv@cite}
+% A flag is need to watch whether \cs{cite} or another macro is in
+% use.
+% \begin{macrocode}
+\newif\ifnmv@cite
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@citex}
+% Using the flag, either the new internal macro, or the
+% \pkg{natbib} original, can be called.
+% \begin{macrocode}
+\newcommand*{\nmv@citex}{%
+ \ifnmv@cite
+ \expandafter\nmv@citex@
+ \else
+ \expandafter\nmv@natcitex
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@citex@}
+% The new version of \cs{@citex} is needed that looks ahead of the
+% citation using \cs{futurelet}. There are three arguments to
+% \cs{@citex} when using \pkg{natbib}. Other than that, the trick
+% used here is similar to that in \pkg{cite}.
+% \begin{macrocode}
+\def\nmv@citex@[#1][#2]#3{%
+ \leavevmode
+ \skip@\lastskip
+ \unskip
+ \begingroup
+% \end{macrocode}
+%\begin{macro}{\nmv@arg}
+% The arguments of the macro now need to be saved, before handing off
+% to the ``search'' macro.
+% \begin{macrocode}
+ \def\nmv@arg{[#1][#2]{#3}}%
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@citex@end}
+% The entire block to be executed after punctuation is set up here,
+% to make recursion easier. The system used is very similar to that
+% in \pkg{cite}. Notice that the \cs{relax} is essential.
+% \begin{macrocode}
+ \newcommand*{\nmv@citex@end}{%
+ \expandafter\nmv@natcitex\nmv@arg
+ \endgroup}%
+ \global\nmv@citefalse
+ \nmv@citex@getnext\relax}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@citex@getnext}
+%\begin{macro}{\nmv@citex@next}
+% The next token on the input stack is saved into
+% \cs{nmv@citex@next}, after gobbling up one token.
+% \begin{macrocode}
+\newcommand*{\nmv@citex@getnext}[1]{%
+ \futurelet\nmv@citex@next\nmv@citex@punct}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\nmv@citex@punct}
+%\begin{macro}{\nmv@citex@loop}
+% The working macro for moving the punctuation. This is very much
+% like \cs{@citey} in the \pkg{cite} package. The initial assumption
+% is that the loop will terminate, and so the recursion call will
+% simply do the finalisation.
+% \begin{macrocode}
+\newcommand*{\nmv@citex@punct}{%
+ \let\nmv@citex@loop\nmv@citex@end
+% \end{macrocode}
+% A check is made for doubled full stops.
+% \begin{macrocode}
+ \ifx.\nmv@citex@next\@empty
+ \ifnum\spacefactor<\nmv@citex@sfac\else
+ \let\nmv@citex@next\relax
+ \let\nmv@citex@loop\nmv@citex@getnext
+ \fi
+ \fi
+% \end{macrocode}
+% The other cases are handled.
+% \begin{macrocode}
+ \expandafter\nmv@citex@pnct\natmovechars\@empty
+ \nmv@citex@loop}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\nmv@citex@pnct}
+% The final part of the punctuation moving system.
+% \begin{macrocode}
+\def\nmv@citex@pnct#1#2\@empty{%
+ \ifx\nmv@citex@next#1\@empty
+ #1%
+ \let\nmv@citex@loop\nmv@citex@getnext
+ \fi
+ \ifx\@empty#2\@empty\else
+ \expandafter\nmv@citex@pnct#2\@empty
+ \fi}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@citex@sfac}
+% The value of the spacing factor after a full stop is used to signal
+% doubled punctuation. For French spacing, a bit of patching is
+% needed.
+% \begin{macrocode}
+\mathchardef\nmv@citex@sfac3000
+\expandafter\renewcommand\expandafter*\expandafter{\expandafter%
+ \frenchspacing\expandafter}\expandafter{%
+ \frenchspacing
+ \mathchardef\nmv@citex@sfac1001
+ \sfcode`\.\nmv@citex@sfac
+ \sfcode`\?\nmv@citex@sfac
+ \sfcode`\!\nmv@citex@sfac}
+\ifnum\sfcode`\.=\@m
+ \frenchspacing
+\fi
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\nmv@activate}
+%\begin{macro}{\@citex}
+%\begin{macro}{\nmv@natcitex}
+%\begin{macro}{\cite}
+%\begin{macro}{\nmv@cite}
+%\begin{macro}{\nmv@notactivate}
+% The swap has to be done at the beginning of the document. The
+% internal flag from \pkg{natbib} is used, but under the
+% circumstances we should be safe. \cs{cite} is also patched to make
+% the system active. A
+% \begin{macrocode}
+\newcommand*{\nmv@activate}{%
+ \let\nmv@natcitex\@citex
+ \let\@citex\nmv@citex
+ \let\nmv@cite\cite
+ \renewcommand*{\cite}[2][]{%
+ \nmv@ifmtarg{##1}
+ {\nmv@citetrue
+ \nmv@cite{##2}}
+ {\nmv@citefalse
+ \nmv@cite[##1]{##2}}}}
+\AtBeginDocument{
+ \@ifpackageloaded{natbib}
+ {\ifNAT@super
+ \nmv@activate
+ \else
+ \nmv@notactivate
+ \fi}
+ {\PackageWarning{natmove}
+ {The natbib package has not been loaded}}}
+\newcommand*{\nmv@notactivate}{}
+% \end{macrocode}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\end{macro}
+%\begin{macro}{\natmovechars}
+% A user macro is needed for moving characters.
+% \begin{macrocode}
+\newcommand*{\natmovechars}{.,;:}
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+%</package>
+%\fi
+%
+%\Finale
+%
+%\iffalse
+%<*jawltxdoc>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{jawltxdoc}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+\usepackage[final]{listings,graphicx,microtype}
+\usepackage[scaled=0.95]{helvet}
+\usepackage[version=3]{mhchem}
+\usepackage[osf]{mathpazo}
+\usepackage{booktabs,array,url,courier,xspace,varioref}
+\usepackage{upgreek,ifpdf,float,caption,longtable,babel}
+\begingroup
+ \@ifundefined{eTeXversion}
+ {\aftergroup\@gobble}
+ {\aftergroup\@firstofone}
+\endgroup
+ {\usepackage{etoolbox}}
+\floatstyle{plaintop}
+\restylefloat{table}
+\labelformat{figure}{\figurename~#1}
+\labelformat{table}{\tablename~#1}
+\ifpdf
+ \usepackage{embedfile}
+ \embedfile[%
+ stringmethod=escape,%
+ mimetype=plain/text,%
+ desc={LaTeX docstrip source archive for package `\jobname'}%
+ ]{\jobname.dtx}
+\fi
+\IfFileExists{\jobname.sty}
+ {\usepackage{\jobname}}{}
+\usepackage[numbered]{hypdoc}
+\setcounter{IndexColumns}{2}
+\newlength\LaTeXwidth
+\newlength\LaTeXoutdent
+\newlength\LaTeXgap
+\setlength\LaTeXgap{1em}
+\setlength\LaTeXoutdent{-0.15\textwidth}
+\newbox\lst@samplebox
+\edef\LaTeXexamplefile{\jobname.tmp}
+\lst@RequireAspects{writefile}
+\lstnewenvironment{LaTeXexample}[1][example]{%
+ \global\let\lst@intname\@empty
+ \ifcsname LaTeXcode#1\endcsname
+ \expandafter\let\expandafter\LaTeXcode
+ \csname LaTeXcode#1\endcsname
+ \expandafter\let\expandafter\LaTeXcodeend
+ \csname LaTeXcode#1end\endcsname
+ \else
+ \PackageError{jawltxdoc}
+ {Undefined example type `#1'}
+ \@ehd
+ \let\LaTeXcode\relax
+ \let\LaTeXcodeend\relax
+ \fi
+ \LaTeXcode}
+ {\lst@EndWriteFile
+ \LaTeXcodeend}
+\newcommand*{\LaTeXcodeexample}{%
+ \setbox\lst@samplebox=\hbox\bgroup
+ \LaTeXcodefloat}
+\let\LaTeXcoderesultonly\LaTeXcodeexample
+\newcommand*{\LaTeXcodeexampleend}{%
+ \egroup
+ \setlength\LaTeXwidth{\wd\lst@samplebox}%
+ \begin{list}{}{%
+ \setlength\itemindent{0pt}
+ \setlength\leftmargin\LaTeXoutdent
+ \setlength\rightmargin{0pt}}%
+ \item
+ \setlength\LaTeXoutdent{-0.15\textwidth}
+ \begin{minipage}[c]{%
+ \textwidth-\LaTeXwidth-\LaTeXoutdent-\LaTeXgap}
+ \LaTeXcodefloatend
+ \end{minipage}%
+ \hfill
+ \begin{minipage}[c]{\LaTeXwidth}%
+ \hbox to\linewidth{\box\lst@samplebox\hss}%
+ \end{minipage}%
+ \end{list}}
+\newcommand*{\LaTeXcodefloat}{%
+ \setkeys{lst}{tabsize=4,gobble=3,breakindent=0pt,
+ basicstyle=\small\ttfamily,basewidth=0.51em,
+ keywordstyle=\color{blue}}%
+ \lst@BeginAlsoWriteFile{\LaTeXexamplefile}}
+\let\LaTeXcodenoexample\LaTeXcodefloat
+\let\LaTeXcodenoexampleend\@empty
+\newcommand*{\LaTeXcodefloatend}{%
+ \MakePercentComment\catcode`\^^M=10\relax
+ \small
+ {\setkeys{lst}{SelectCharTable=\lst@ReplaceInput{\^\^I}%
+ {\lst@ProcessTabulator}}%
+ \leavevmode \input{\LaTeXexamplefile}}%
+ \MakePercentIgnore}
+\newcommand*{\LaTeXcoderesultonlyend}{\egroup\LaTeXcodefloatend}
+\lstnewenvironment{BibTeXexample}{%
+ \global\let\lst@intname\@empty
+ \setbox\lst@samplebox=\hbox\bgroup
+ \setkeys{lst}{tabsize=4,gobble=3,breakindent=0pt,
+ basicstyle=\small\ttfamily,basewidth=0.51em,
+ keywordstyle=\color{black}}
+ \lst@BeginAlsoWriteFile{\LaTeXexamplefile}}
+ {\lst@EndWriteFile
+ \LaTeXcodeexampleend}
+\newcommand*{\DescribeOption}{%
+ \leavevmode\@bsphack\begingroup\MakePrivateLetters
+ \Describe@Option}
+\newcommand*{\Describe@Option}[1]{\endgroup
+ \marginpar{\raggedleft\PrintDescribeEnv{#1}}%
+ \SpecialOptionIndex{#1}\@esphack\ignorespaces}
+\newcommand*{\SpecialOptionIndex}[1]{\@bsphack
+ \index{#1\actualchar{\protect\ttfamily#1}
+ (option)\encapchar usage}%
+ \index{options:\levelchar#1\actualchar{\protect\ttfamily#1}%
+ \encapchar usage}\@esphack}
+\newcommand*{\indexopt}[1]{\DescribeOption{#1}\opt{#1}}
+\newcommand*{\DescribeOptionInfo}[2]{%
+ \DescribeOption{#1}%
+ \opt{#1=\meta{#2}}\xspace}
+\newcommand*{\ofixarg}[1]{%
+ {\ttfamily[}%
+ \ifmmode \expandafter \nfss@text \fi
+ {%
+ \meta@font@select
+ \edef\meta@hyphen@restore{%
+ \hyphenchar\the\font\the\hyphenchar\font}%
+ \hyphenchar\font\m@ne
+ \language\l@nohyphenation
+ #1\/%
+ \meta@hyphen@restore
+ }%
+ {\ttfamily]}}
+\newcommand*{\pkg}[1]{\textsf{#1}}
+\newcommand*{\currpkg}{\pkg{\jobname}\xspace}
+\newcommand*{\opt}[1]{\texttt{#1}}
+\newcommand*{\defaultopt}[1]{\opt{\textbf{#1}}}
+\newcommand*{\file}[1]{\texttt{#1}}
+\newcommand*{\ext}[1]{\file{.#1}}
+\newcommand*{\latin}[1]{\emph{#1}}
+\newcommand*{\etc}{%
+ \@ifnextchar.
+ {\latin{etc}}
+ {\latin{etc}.\xspace}}
+\newcommand*{\eg}{%
+ \@ifnextchar.
+ {\latin{e.g}}
+ {\latin{e.g}.\xspace}}
+\newcommand*{\ie}{%
+ \@ifnextchar.
+ {\latin{i.e}}
+ {\latin{i.e}.\xspace}}
+\newcommand*{\etal}{%
+ \@ifnextchar.
+ {\latin{et~al.}}
+ {\latin{et~al}.\xspace}}
+\newcommand*{\AMS}{{\protect\usefont{OMS}{cmsy}{m}{n}%
+ A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}
+\providecommand*{\eTeX}{\ensuremath{\varepsilon}-\TeX}
+\DeclareRobustCommand*{\XeTeX}
+ {X\kern-.125em\lower.5ex\hbox{\reflectbox{E}}\kern-.1667em\TeX}
+\providecommand*{\CTAN}{\textsc{ctan}}
+\@ifpackageloaded{etoolbox}
+ {\patchcmd{\@addmarginpar}
+ {\@latex@warning@no@line {Marginpar on page \thepage\space moved}}
+ {\relax}{}{}}
+ {}
+\newcounter{argument}
+\g@addto@macro\endmacro{\setcounter{argument}{0}}
+\newcommand*\darg[1]{%
+ \stepcounter{argument}%
+ {\ttfamily\char`\#\theargument~:~}#1\par\noindent\ignorespaces}
+\newcommand*\doarg[1]{%
+ \stepcounter{argument}%
+ {\ttfamily\makebox[0pt][r]{[}%
+ \char`\#\theargument]:~}#1\par\noindent\ignorespaces}
+%</jawltxdoc>
+%\fi
diff --git a/Master/texmf-dist/source/latex/achemso/natmove.ins b/Master/texmf-dist/source/latex/achemso/natmove.ins
new file mode 100644
index 00000000000..0fb2fa11c8e
--- /dev/null
+++ b/Master/texmf-dist/source/latex/achemso/natmove.ins
@@ -0,0 +1,41 @@
+%%
+%% This is file `natmove.ins',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% natmove.dtx (with options: `install')
+%% ----------------------------------------------------------------
+%% natmove --- Automatic citation moving with natbib
+%% Maintained by Joseph Wright
+%% E-mail: joseph.wright@morningstar2.co.uk
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------
+%%
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+ ----------------------------------------------------------------
+ natmove --- Automatic citation moving with natbib
+ Maintained by Joseph Wright
+ E-mail: joseph.wright@morningstar2.co.uk
+ Released under the LaTeX Project Public License v1.3c or later
+ See http://www.latex-project.org/lppl.txt
+ ----------------------------------------------------------------
+
+\endpreamble
+\Msg{Generating natmove files:}
+\generate{\file{jawltxdoc.sty}{\from{\jobname.dtx}{jawltxdoc}}
+}
+\usedir{tex/latex/achemso}
+\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+\usedir{source/latex/achemso}
+\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\endbatchfile
+\endinput
+%%
+%% End of file `natmove.ins'.