Removing the brackets from the item's label in the bibliography
To remove the brackets from the item's label in the bibliography, you just need to redefine \@biblabel
. It's original definition is
% latex.ltx, line 6161:
\def\@biblabel#1{[#1]}
So you can change it with \renewcommand
to print, instead of [<arg>]
, <arg>.
:
\makeatletter
\renewcommand\@biblabel[1]{#1.}
\makeatother
Removing the hanging indent in the bibliography
We must redefine thebibliography
environment, which is a \list
. To make things easy, I checked the definition of asparaenum
environment, from the paralist
package and reproduced the lenghts in the thebibliography
environment (which we need to redefine). Assuming you're working with article
class:
\makeatletter
\renewenvironment{thebibliography}[1]
{\section*{\refname}%
\@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
\list{\@biblabel{\@arabic\c@enumiv}}%
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m
% We redefine the lenghts here
\setlength{\labelwidth}{0pt}
\setlength{\labelsep}{.5em}
\setlength{\leftmargin}{0pt}
\parsep\parskip
\setlength{\itemsep}{0pt}
\setlength{\topsep}{0pt}
\partopsep\parskip
\itemindent\parindent
\advance\itemindent\labelsep
}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
\makeatother
Here's a MWE:
\documentclass{article}
\begin{filecontents}{\jobname.bib}
@article{Geddes:2003,
author = {Geddes, Chris D. and
Parfenov, Alex and
Gryczynski, Ignacy and
Lakowicz, Joseph R.},
title = {Luminescent Blinking from Silver Nanostructures},
journal = {The Journal of Physical Chemistry B},
volume = {107},
number = {37},
pages = {9989-9993},
year = {2003},
}
\end{filecontents}
\makeatletter
\renewcommand{\@biblabel}[1]{#1.}
% article.cls, line 570:
\renewenvironment{thebibliography}[1]
{\section*{\refname}%
\@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
\list{\@biblabel{\@arabic\c@enumiv}}%
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m
% We redefine the lenghts here
\setlength{\labelwidth}{0pt}
\setlength{\labelsep}{.5em}
\setlength{\leftmargin}{0pt}
\parsep\parskip
\setlength{\itemsep}{0pt}
\setlength{\topsep}{0pt}
\partopsep\parskip
\itemindent\parindent
\advance\itemindent\labelsep
}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
\makeatother
\begin{document}
\cite{Geddes:2003}
\bibliographystyle{plain}
\bibliography{\jobname}
\end{document}
And the output:
\makeatletter\renewcommand{\@biblabel}[1]{#1.}\makeatother
in your preamble should work