[Tex/LaTex] Remove issn/doi/url when using plainnat and natbib

bibtexnatbib

I am using natbib and the plainnat style for the references. I would like to know how can I remove the ISSN, DOI and URL from the references without deleting them in the .bib file. I have seen some solutions in other posts but using biblatex; is there any solution for using natbib?

This is the code I am using:

\documentclass[12pt,a4paper]{article}
\usepackage[english]{babel}
\usepackage[square,sort&compress,comma,numbers]{natbib}
\author{Me}
\title{Article}
\begin{document}
\maketitle
\begin{abstract}
    This article...
\end{abstract}
\section{Intro}
    According to \citet{John2003} ...
\bibliographystyle{plainnat}
\bibliography{bibl}
\end{document}

bibl contains an entry with the keycode John2003

Best Answer

I would not recommend modifying the *.bib file. You may need these fields one day (some journals ask to put DOI/ISSN, and URLs can be useful for your own reference). Instead, you should change the style file that regulates how bibliography is displayed.

Locate plainnat.bst file on your computer. Copy it to the directory with your *.tex files, rename it to something like plainnatnourl.bst and modify it such that it does not print URLs. You can then use

\bibliographystyle{plainnatnourl}

Modification should be rather simple. In case of abbrvnat.bst the only thing I had to do was to change

FUNCTION {format.url}
{ url empty$
    { "" }
    { <SOME CODE THAT FORMATS URL> }
  if$
}

to

FUNCTION {format.url}
{ url empty$
    { "" }
    { "" }
  if$
}

plainnat.bst should be similar.

Related Question