6

I am writing my thesis and I would like the Bibliography to be single spaced.

I've read about using the \singlespace command, but I think this requires using the setspace package which I don't want to do, because this makes all my figure captions single spaced (which I don't want).

I am using \renewcommand{\baselinestretch}{2.1} in my preamble to set the spacing for the document.

I am just using the default bibliography settings. So I'm just using:

\bibliographystyle{unsrt}

\bibliography{refs}

to make my bibliography. Is there a command I can put here to make it single spaced?

Alternatively, if anyone can tell me how to retain double spaced figure captions with setspace that would also work!

Thank you!

yo'
  • 51,322
Emma
  • 61
  • 1
    Welcome to TeX.SX! Please help us to help you and add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}. – yo' Jan 13 '15 at 21:39
  • Well, you could change \baselinestretch back to the default (1.2?). Have you tried that? – cfr Jan 13 '15 at 21:56
  • 1
    \renewcommand{\baselinestretch}{1} before the bibliography, but really you have \renewcommand{\baselinestretch}{2.1} ???? double spacing is a typographic disaster at the best of times but this is way more than that, "double" spacing is usually set with less than 2, eg the setspace package uses 1.667 – David Carlisle Jan 13 '15 at 22:01
  • 1
    @DavidCarlisle Yes, but it is a thesis, so it almost certainly has to be a typographical disaster as a condition of graduation :(. – cfr Jan 14 '15 at 01:40

2 Answers2

8

As a side note, I would use

\linespread{2.1}\selectfont

instead of

\renewcommand{\baselinestretch}{2.1}

in the preamble.

To answer your question, load the package etoolbox and insert the following line in your preamble

\AtBeginEnvironment{thebibliography}{\linespread{1}\selectfont}

This will change the line spread to 1 as soon as the bibliography starts.

MWE

\begin{filecontents*}{refs.bib}
@article{someguykey2010,
author="SomeGuy",
title="A journal article",
year=2010,
journal="A Journal",
}
@article{someotherguykey2013,
author="SomeOtherGuy",
title="A journal article",
year=2013,
journal="A Journal",
}
\end{filecontents*}

\documentclass{article}

\usepackage{etoolbox}
\AtBeginEnvironment{thebibliography}{\linespread{1}\selectfont}

\usepackage{lipsum} %just for dummy text


\begin{document}

\linespread{2.1}\selectfont

\lipsum[1]

\nocite{*}

\bibliographystyle{plainnat}
\bibliography{refs}

\end{document} 

Output

enter image description here

If you don't want to load etoolbox, simply issue

\linespread{1}\selectfont

before your bibliography.

karlkoeller
  • 124,410
  • 1
    What change I need in \AtBeginEnvironment{thebibliography}{\linespread{1}\selectfont} to use for biblatex+\printbibliography – Dr.PB Apr 06 '17 at 11:25
  • 1
    @Mr.EU For biblatex you have to use \AtBeginBibliography{\linespread{1}\selectfont}. – karlkoeller Apr 06 '17 at 15:34
1

At some point I wrote or found (?) the following to make my bibliography more compact as I didn't like the standard spacing:

% stop the bibliography from being too spaced out
\def\thebibliography#1{%
  \section*{References\@mkboth{References}{References}}\list
  {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
  \advance\leftmargin\labelsep
  \itemsep\z@\parsep\z@\topsep\z@\parskip\z@
  \usecounter{enumi}}
  \def\newblock{\hskip .11em plus .33em minus .07em}
  \sloppy\clubpenalty4000\widowpenalty4000
  \sfcode`\.=1000\relax}

As others have said you probably also want to add something like \renewcommand{\baselinestretch}{1} to this in order to make the line spacing reasonable. (I agree with David's comment that double spacing is a "typographic disaster".)