1

How can I remove the Oxford comma after "S. Author"? I've looked through IEEEtranN.bst, but can't figure out where the comma is added. I'm not using babel as it seems to clash with some math package.

enter image description here

A MWE:

% LuaLaTeX + BibTeX
\documentclass{memoir}
\usepackage[numbers,sort&compress]{natbib}
\bibliographystyle{IEEEtranN}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{c,
  title={Title},
  author={Author, First and Author, Second and Author, Third},
  journal={Journal}
}
\end{filecontents}
\begin{document}
\cite{c}
\bibliography{\jobname}
\end{document}

2 Answers 2

2

I suggest you proceed as follows:

  • Find the file IEEEtranN.bst in your TeX distribution. Make a copy of this file and call the copy, say, IEEEtranN-noc.bst, where noc is short for "no Oxford comma". (Don't edit an original file of your TeX distribution directly.)
  • Open the file IEEEtranN-noc.bst in your favorite text editor. The program you use to edit tex files will do fine.
  • In the bst file, find the function format.names. In my copy of the bst file, this function starts on line 1256.
  • In this function, find the line that consists of the string { "," * } (possibly on line 1290). Change this string to { skip$ }.
  • Save the bst file and store it either in the directory that contains your main tex files or in a directory that's searched by BibTeX. If you choose the latter option, be sure to also update TeX's filename database. If you have no idea what the preceding sentence might mean, I suggest you choose the former option.
  • In your main tex file, change \bibliographystyle{IEEEtranN} to \bibliographystyle{IEEEtranN-noc} and perform a full recompile cycle: LaTeX, BibTeX, and LaTeX twice more.

Happy BibTeXing!


enter image description here

\documentclass{memoir}
\usepackage[numbers,sort&compress]{natbib}
\bibliographystyle{IEEEtranN-mod}
%%\usepackage{filecontents} % not needed
\begin{filecontents}[overwrite]{\jobname.bib}
@article{c,
   title  ={Title},
   author ={Author, First and Author, Second and Author, Third},
   journal={Journal},
   year   = 3001,
}
\end{filecontents}

\begin{document}
\cite{c}
\bibliography{\jobname}
\end{document}
1

If you can switch to biblatex:

\begin{filecontents}{\jobname.bib}
@article{c,
  title={Title},
  author={Author, First and Author, Second and Author, Third},
  journal={Journal},
  year={2024},
}
\end{filecontents}

\documentclass{article}

\usepackage[style=ieee]{biblatex}
\addbibresource{\jobname.bib}

\DefineBibliographyExtras{english}{\def\finalandcomma{}}

\begin{document}

\cite{c}

\printbibliography

\end{document}

enter image description here

1
  • I'm a bit too far in this document to switch to biblatex. Is it recommended to use biblatex over natbib for my next document?
    – Anna
    Apr 15 at 12:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .