1

I have to use a journal's Latex template, which specifies \documentclass{book}. The template assumes I will enter my references manually in the format that they want. However, I would like to use bibtex to enter my references. When I do that, it forces the Bibliography to start on an odd-numbered page. I would like the references to start directly after the end of the article. I have tried changing the documentclass to "article", but that causes errors because the template uses the chapter format. Is there a way to revert back to the article-style references within the book documentclass?

\documentclass[10pt]{book}

\begin{document}

Document contents here with use of \cite.

\renewcommand{\bibname}{References} % to change "Bibliography" to "References"
\bibliography{refs} % starts references on next odd-numbered page
\bibliographystyle{plainnat}

\end{document}
  • Add the following lines to the preamble: \usepackage{etoolbox} \patchcmd{\thebibliography} {\chapter*} {\section*} {} {} – Gonzalo Medina Apr 16 '14 at 17:58
  • Are you loading the natbib package? – Gonzalo Medina Apr 16 '14 at 18:04
  • I tried this (along with a few permutations), and it still starts the References on the next odd-numbered page. Yes, I am loading the natbib package. Sorry I forget to add that line of code. – user50028 Apr 16 '14 at 18:08
  • Please see my updated answer below. Since you load natbib, you can use the second code in my answer. – Gonzalo Medina Apr 16 '14 at 18:12
  • Try adding openany to your class options. – Mike Renfro Apr 16 '14 at 18:23
2

If you are not loading natbib, you can pacth \thebibliography so it uses \section* instead of \chapter*:

\documentclass[10pt]{book}
\usepackage{etoolbox}

\patchcmd{\thebibliography}
  {\chapter*}
  {\section*}
  {}
  {}
\renewcommand{\bibname}{References}

% this is just for the example
\usepackage{filecontents}
\begin{filecontents*}{refs.bib}
@article{testa,
  author = {The A Author},
  year = {2014},
  title = {The title A},
  journal = {The journal A},
  pages = {1--5},
}
\end{filecontents*}
% this is just for the example

\begin{document}

\cite{testa}

\bibliographystyle{plainnat}
\bibliography{refs}

\end{document}

enter image description here

If you are loading natbib, then all you have to do is to redefine \bibsection:

\documentclass[10pt]{book}
\usepackage{natbib}

\renewcommand\bibsection{%
  \section*{\bibname\markright{\MakeUppercase{\bibname}}}}
\renewcommand{\bibname}{References}

% this is just for the example
\usepackage{filecontents}
\begin{filecontents*}{refs.bib}
@article{testa,
  author = {The A Author},
  year = {2014},
  title = {The title A},
  journal = {The journal A},
  pages = {1--5},
}
\end{filecontents*}
% this is just for the example

\begin{document}

\cite{testa}

\bibliographystyle{plainnat}
\bibliography{refs}

\end{document}
  • You are amazing. The second one worked great. – user50028 Apr 16 '14 at 18:27
  • The second suggestion had one quirk in that it renamed the page heading to "REFERENCES", which I'm sure you knew, but I didn't notice at first. The following gives me the behavior that I want. \renewcommand\bibsection{\section*{\large References}}. That is entered without the \renewcommand{\bibname}{References} line. – user50028 Apr 16 '14 at 20:20
  • @user50028 Or simply remove the \markright part: \renewcommand\bibsection{\section*{\bibname}}. – Gonzalo Medina Apr 16 '14 at 20:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.