[Tex/LaTex] Settings options doesn’t seem to work with the achemso document class

achemsodocument-classes

I'm submitting a paper to a non-ACS journal that nonetheless follows most of the ACS formatting guidelines. So I'm trying to use the achemso document class and setting a few options to meet the journal's idiosyncrasies.

In particular I need the citations to not be superscripted and appear in square brackets and before punctuation, like: [5]. Also the list of references should be enumerated as 1. 2. 3. etc. not (1) (2) (3).

The achemso documentation says you can set some of these options using the \setkeys{acs}{} command after the document class as appears below. However it appears this command is totally ignored when the TeX is compiled.

Any ideas?

For what its worth, I'm using TeXShop/TexLive on a mac and using the most recent achemso package updated 2011/12/30.

\documentclass[journal=jacsat,manuscript=article,layout=traditional,super=false]{achemso}
\setkeys{acs}{biblabel=period,super=false}

% Handles moving citation markers before punctuation at end of sentence
\usepackage{natmove}
\renewcommand*{\natmovechars}{}

\title{Awesome Paper}

\begin{document}

\begin{abstract}
Abstract goes here
\end{abstract}

\section{Introduction}
Here is some text for the awesome paper.  
This sentence was written with a cite before the period\cite{LyonCE1998}. 
This sentence has cites to three papers after the period.\cite{LyonCE1998,NataroJCE2004,MartinCE2005}   
Here's a cite to two papers after the period.\cite{MartinCE2005,LyonCE1998}  

\bibliography{achemsotest}

\end{document}

Best Answer

The achemso class is really meant only for submissions to ACS journals: the accompanying LaTeX package is intended for more general use. As a result, there are a lot of assumptions hard-coded into the class. In particular, not all of the options are designed to be easy to reverse. So only some of the options will have any effect if used in with the class.

If you do want to 'abuse' the class in using it for non-ACS submission then you will have to alter the two settings you mention 'by hand'. Try

\renewcommand*{\bibnumfmt}[1]{#1.}
\bibpunct{(}{)}{,}{n}{}{}

after loading the class.

Related Question