%%
%% This is file `chemstyle.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% chemstyle.dtx  (with options: `package')
%%  ----------------------------------------------------------------
%%  The chemstyle bundle --- Schemes and style for chemistry
%%  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
%%  ----------------------------------------------------------------
%% 
\NeedsTeXFormat{LaTeX2e}
\def\cst@id$#1: #2.#3 #4 #5-#6-#7 #8 #9${%
    \def\cst@ver{#5/#6/#7\space v1.3d\space}}
\cst@id $Id: chemstyle.dtx 51 2009-01-09 16:21:24Z joseph $
\ProvidesPackage{chemstyle}
  [\cst@ver Writing chemistry with style]
\RequirePackage{xkeyval}[2005/05/07]
\RequirePackage{amstext,graphicx,varioref,caption,xspace}
\newcommand*{\cst@tempa}{}
\newcommand*{\cst@tempb}{}
\newcommand*{\cst@boolkey}[1]{
  \define@boolkey[cst]{opt}[cst@]{#1}[true]{}}
\cst@boolkey{chemcompounds}
\cst@boolkey{floatrow}
\cst@boolkey{xspace}
\cst@boolkey{phrases}
\cst@boolkey{radprefix}
\cst@boolkey{rademph}
\cst@boolkey{radsuper}
\cst@boolkey{radhyphen}
\cst@boolkey{abbremph}
\cst@boolkey{abbrcomma}
\cst@boolkey{notesbefore}
\newif\ifcst@notes
\newif\ifcst@autonotes
\define@choicekey*[cst]{opt}{notes}[\cst@tempa]
  {true,false,auto}[true]
  {\cst@notesfalse
   \cst@autonotesfalse
   \edef\cst@tempb{auto}
   \ifx\cst@tempa\cst@tempb
     \cst@notestrue
     \cst@autonotestrue
   \fi
   \edef\cst@tempb{true}
   \ifx\cst@tempa\cst@tempb
     \cst@notestrue
   \fi}
\DeclareOptionX[cst]<opt>{siunits}
  {\PackageInfo{chemstyle}{Option siunits no longer required}}
\DeclareOptionX[cst]<opt>{SIunits}
  {\PackageInfo{chemstyle}{Option siunits no longer required}}
\DeclareOptionX[cst]<opt>{nonotes}
  {\ExecuteOptionsX[cst]<opt>{notes=false}}
\DeclareOptionX[cst]<opt>{nophrases}
  {\ExecuteOptionsX[cst]<opt>{phrases=false}}
\define@cmdkeys[cst]{opt}[cst@]{journal,language}
\DeclareOptionX*{\edef\cst@journal{\CurrentOption}}
\setkeys[cst]{opt}{
  notes=true,
  phrases=true,
  chemcompounds=true,
  xspace=true,
  floatrow=true,
  journal=none,
  radprefix=true,
  rademph=true,
  radsuper=false,
  radhyphen=true,
  abbremph=true,
  abbrcomma=false,
  language=english,
  notesbefore=true}
\ProcessOptionsX[cst]<opt>
\ifcst@chemcompounds
  \PassOptionsToPackage{chemcompounds}{chemscheme}
\fi
\ifcst@floatrow
  \RequirePackage[floats=floatrow]{chemscheme}
\else
  \RequirePackage[floats=float]{chemscheme}
\fi
\newcommand*{\cst@disablekey}[1]{
  \define@key[cst]{opt}{#1}{\PackageWarning{chemstyle}
    {Option `#1' only valid when loading package}}}
\AtBeginDocument{
  \cst@disablekey{floatrow}
  \cst@disablekey{journal}
  \cst@disablekey{phrases}
  \cst@disablekey{nophrases}
  \cst@disablekey{notes}
  \cst@disablekey{nonotes}
  \cst@disablekey{chemcompounds}}
\newcommand*{\cstsetup}[1]{%
  \iffalse{\fi\ifnum0=`}\fi
  \setkeys[cst]{opt}{#1}%
  \ifnum0=`{\fi\iffalse}\fi}
\@ifpackageloaded{siunitx}
  {\requiresiconfigs{synchem}}
  {\@ifpackageloaded{SIunits}
     {\newcommand*{\cubiccentimeter}{\centi\metre\cubed}
      \newcommand*{\Molar}{\textsc{m}}
      \newcommand*{\molar}{\mole\usk\deci\metre\rpcubed}
      \newcommand*{\mmHg}{\milli\metre Hg}
      \newcommand*{\mol}{\mole}
      \newcommand*{\cmc}{\cubiccentimeter}
      \newcommand*{\Hz}{\hertz}}
     {\@ifpackageloaded{unitsdef}
      {\newunit{\cubiccentimeter}{%
         \cm\unitsuperscript{3}}
       \newunit{\Molar}{\textsc{m}}
       \newunit{\molar}{%
         \mole\unitsep\dm\unitsuperscript{--3}}
       \newunit{\mmHg}{mmHg}
       \newunit{\mol}{\mole}
       \newcommand*{\cmc}{\cubiccentimeter}
       \newcommand*{\Hz}{\hertz}}
      {\RequirePackage[alsoload=synchem]{siunitx}}}}
\providecommand*{\standardstate}{%
  {\ensuremath{\protect\cst@sstate}}}
\newcommand*{\cst@sstate}{\mathpalette\cst@s@state\circ}
\newcommand*{\cst@s@state}[2]{%
  \ooalign{\hfil$#1-$\hfil\cr\hfil$#1#2$\hfil\cr}}
\newcommand*{\cst@radical}[2]{%
  \expandafter\DeclareRobustCommand\expandafter*\expandafter{%
    \csname #1#2\endcsname}{%
    \text{%
      \ifcst@radhyphen
        \def\cst@hyphen{-}%
      \else
        \let\cst@hyphen\relax
      \fi
      \ifcst@radsuper
        \let\cst@super\textsuperscript
      \else
        \let\cst@super\relax
      \fi
      \ifcst@rademph
        \let\cst@emph\emph
      \else
        \let\cst@emph\relax
      \fi
      \ifcst@radprefix
        \cst@super{\cst@emph{#1}}\cst@hyphen#2%
      \else
        #2\cst@hyphen\cst@super{\cst@emph{#1}}%
      \fi
      \cst@xspace
    }%
  }%
}
\newcommand*{\cst@xspace}{%
  \ifcst@xspace
    \expandafter\xspace%
  \fi}
\cst@radical{n}{Pr}%
\cst@radical{i}{Pr}%
\cst@radical{n}{Bu}%
\cst@radical{i}{Bu}%
\cst@radical{s}{Bu}%
\cst@radical{t}{Bu}%
\floatstyle{plaintop}
\restylefloat{table}
\floatstyle{plain}
\restylefloat{figure}
\floatplacement{table}{htbp}
\floatplacement{figure}{htbp}
\AtBeginDocument{
  \restylefloat{scheme}
  \floatplacement{scheme}{htbp}}
\floatcontentscentre
\labelformat{figure}{\figurename~#1}
\labelformat{table}{\tablename~#1}
\AtBeginDocument{\labelformat{scheme}{\schemename~#1}}
\newcommand*{\cst@latin}{%
  \ifcst@abbremph
    \expandafter\emph%
  \fi}
\newcommand*{\latinemphon}{\cstsetup{abbremph=true}}
\newcommand*{\latinemphoff}{\cstsetup{abbremph=false}}
\AtBeginDocument{\providecommand*\latin{\cst@latin}}
\ifcst@phrases
  \AtBeginDocument{
    \providecommand*{\etc}
      {\@ifnextchar.{\cst@etc}{\cst@etc.\cst@xspace}}
    \providecommand*{\invacuo}
      {\latin{in vacuo}\cst@xspace}
    \providecommand*{\etal}
      {\@ifnextchar.{\cst@etal}{\cst@etal.\cst@xspace}}
    \providecommand*{\eg}
      {\ifcst@abbrcomma
         \expandafter\cst@commaabbr%
       \else
         \expandafter\cst@nocommaabbr%
       \fi
       {eg}}
    \providecommand*{\ie}
      {\ifcst@abbrcomma
         \expandafter\cst@commaabbr%
       \else
         \expandafter\cst@nocommaabbr%
       \fi
       {ie}}}
\fi
\newcommand*{\cst@etal}{\latin{et~al}}
\newcommand*{\cst@etc}{\latin{etc}}
\newcommand*{\cst@ie}{\latin{i.e\spacefactor999\relax}}
\newcommand*{\cst@eg}{\latin{e.g\spacefactor999\relax}}
\newcommand*{\cst@commaabbr}[1]{%
  \csname cst@#1\endcsname%
  \cst@addpunct}
\newcommand*{\cst@nocommaabbr}[1]{%
  \@ifnextchar.%
    {\csname cst@#1\endcsname}
    {\csname cst@#1\endcsname.\cst@xspace}}
\newcommand*{\cst@addpunct}{%
  \cst@add@punct\relax}
\newcommand*{\cst@add@punct}[1]{%
  \futurelet\cst@tempa\cst@add@punct@}
\newcommand*{\cst@add@punct@}{%
  \ifx.\cst@tempa
    \let\cst@tempb\cst@add@punct
  \else
    \ifx,\cst@tempa
      \let\cst@tempb\cst@add@punct
    \else
      \let\cst@tempb\cst@commapunct
    \fi
  \fi
  \cst@tempb}
\newcommand*{\cst@commapunct}{.,\cst@xspace}
\InputIfFileExists{\cst@journal.jdf}
  {\PackageInfo{chemstyle}
    {Loaded \cst@journal.jdf}}
  {\PackageWarning{chemstyle}
    {Requested style `\cst@journal' does not exist\MessageBreak
     Loading default style}
    \InputIfFileExists{none.jdf}{}
      {\PackageError{chemstyle}{Failed to load none.jdf}
         {The default journal definition file was not
          found\MessageBreak This is a core part of
          chemstyle\MessageBreak Something is wrong with
          the installation}}}
\begingroup
  \@ifundefined{chapter}
    {\@ifundefined{refname}
       {\PackageInfo{chemstyle}
          {No bibliography name command found}
        \cstsetup{notes=false}}
       {\gdef\cst@refsec{\refname}}}
    {\gdef\cst@refsec{\bibname}}
\endgroup
\ifcst@autonotes
  \AtBeginDocument{
    \@ifpackageloaded{notes2bib}{}
      {\newcounter{bibnote}}}
\fi
\newcommand*{\cst@refname}{%
  \ifcst@notes
    \ifcst@autonotes
      \ifnum\the\value{bibnote}>\z@
        \expandafter\expandafter\expandafter\expandafter
          \expandafter\expandafter\expandafter\cst@ref@name
      \else
        \expandafter\expandafter\expandafter\expandafter
          \expandafter\expandafter\expandafter\cst@ref@name@
      \fi
    \else
      \expandafter\expandafter\expandafter\cst@ref@name
    \fi
  \else
    \expandafter\cst@ref@name@%
  \fi}
\newcommand*{\cst@ref@name}[3]{%
  \ifcst@notesbefore
    #3\space#2\space#1%
  \else
    #1\space#2\space#3%
  \fi}
\newcommand*{\cst@ref@name@}[3]{#1}
\@ifundefined{cst@refsec}
  {\let\cst@setrefname\@gobblefour}
  {\newcommand*{\cst@setrefname}[4]{
     \edef\cst@tempa{#1}%
     \ifx\cst@tempa\cst@language
       \expandafter\renewcommand\expandafter*\expandafter{%
         \cst@refsec}
         {\cst@refname{#2}{#3}{#4}}
     \fi
     \AtBeginDocument{
       \@ifpackageloaded{biblatex}
         {\def\cst@tempa{\csgappto{bib@strings@#1}}
          \expandafter\cst@tempa\expandafter{\expandafter
            \renewcommand\expandafter*\expandafter{%
              \cst@refsec}{%
                \cst@refname{#2}{#3}{#4}}}}
         {\@ifpackageloaded{babel}
           {\def\cst@tempa{\expandafter\addto\expandafter{%
              \csname captions#1\endcsname}}
            \expandafter\cst@tempa\expandafter
              {\expandafter\renewcommand\expandafter*%
                \expandafter{\cst@refsec}{%
                  \cst@refname{#2}{#3}{#4}}}
            \expandafter\selectlanguage\expandafter{%
              \languagename}}
           {}}}}}
\cst@setrefname{english}{References}{and}{Notes}
\cst@setrefname{UKenglish}{References}{and}{Notes}
\cst@setrefname{ngerman}{Literatur}{und}{Notizen}
\cst@setrefname{german}{Literatur}{und}{Notizen}
\cst@setrefname{french}{R\'ef\'erences}{et}{Notes}
\cst@setrefname{frenchb}{R\'ef\'erences}{et}{Notes}
\endinput
%%
%% End of file `chemstyle.sty'.
