78

In my .bib file, I have two entries with exactly the same author names:

@article{Seshadrinathan2010A-Subjective-St,
    Author = {K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack},
....

@article{Seshadrinathan2009Study-of-Subjec,
    Author = {K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack},
....

When cited after each other, and typeset with the IEEEtran bibliography style, the .bbl file reads:

\bibitem{Seshadrinathan2010A-Subjective-St}
K.~Seshadrinathan, R.~Soundararajan, A.~C. Bovik, and L.~K. Cormack, ``A
  subjective study to evaluate video quality assessment algorithms,''
  \emph{SPIE Proceedings Human Vision and Electronic Imaging}, 2010.

\bibitem{Seshadrinathan2009Study-of-Subjec}
------, ``Study of subjective and objective quality assessment of video,''
  \emph{IEEE Transactions on Image Processing}, 2009.

As you can see, the author names have been replaced with ------. It looks like this in the final PDF:

enter image description here

Is this normal behavior?

  • 10
    It depends on the bibliography style. This bahavior is normal for style IEEEtrans. – Marco Daniel Sep 24 '11 at 17:52
  • Most other bibliography styles don't have this behavior. – Ken Bloom Sep 25 '11 at 0:15
  • 3
    As suggested in post \usepackage[style=ieee,dashed=false]{biblatex} – Javad Sep 2 '17 at 17:37
  • @Javad where should I put the function ? – Kong Jan 10 at 17:05
  • @Javad Just put \usepackage[style=ieee,dashed=false]{biblatex} in your document, at the top in the preamble where you load the other packages. – slhck Jan 10 at 19:17
75

The behavior mentioned is the default using IEEEtran.bst style. To change it, you can define a IEEEtranBSTCTL entry in your bib database and change the default value for CTLdash_repeated_names. So, in this case, your entry should look like this:

@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
  CTLdash_repeated_names = "no"
}

Then in the body of your .tex file you have to activate the change by using

\bstctlcite{IEEEexample:BSTcontrol}

Example (thanks to Marco):

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLdash_repeated_names= "no",
}

@article{Seshadrinathan2010A-Subjective-St,
    Author = {K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack},
    title={foo},
    year={2011},
    journal={bla}
}

@article{Seshadrinathan2009Study-of-Subjec,
    Author = {K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack},
    title={bar},
    year={2010},
    journal={bla}
}
\end{filecontents}

\documentclass{IEEEtran}
%\usepackage{IEEEtrantools}% only needed if a class different from IEEEtran is used.


\begin{document}
\bstctlcite{IEEEexample:BSTcontrol}
\cite{Seshadrinathan2010A-Subjective-St}

\cite{Seshadrinathan2009Study-of-Subjec}


\bibliographystyle{IEEEtran}
\bibliography{\jobname}
\end{document}

Result

  • 2
    +1, but I think that both your and my method may have merit. – lockstep Sep 24 '11 at 18:03
  • @lockstep: I don't think so. To define a small bibsetup.bib (maybe with filecontents) is much easier and more comfortable for the user as the manipulation of the bst-file. – Marco Daniel Sep 24 '11 at 18:08
  • Okay, so I put this right at the top of my .bib file, trashed all auxiliary files, ran pdflatex, bibtex, pdflatex twice, and it's still there? I'm not particularly worried about it if it's normal, but it would be nice to know how to get rid of it. – slhck Sep 24 '11 at 18:09
  • 2
    @Marco: See slhck's comment for an example how "much easier and more comfortable for the user" it is. – lockstep Sep 24 '11 at 18:15
  • 1
    I tried the above steps and it work only for two references with the same author. However, I have 4 references with same author. Only two are showing the author's name while the 3rd and 4th are showing "------". Any work suggestions!! – EngS Jul 2 '14 at 22:43
39

To remove the dash, copy the file IEEEtran.bst, located in /bibtex/bst/IEEEtran of your TeX distribution, to your working directory and rename it to myIEEEtran.bst. In the renamed copy, replace

FUNCTION {default.is.dash.repeated.names} { #1 }

with

FUNCTION {default.is.dash.repeated.names} { #0 }

and compile your .tex document using \bibliographystyle{myieeetran}.

EDIT: To the person who downvoted: The original (commented) code in IEEEtran.bst reads

% #0 turns off the "dashification" of repeated (i.e., identical to those
% of the previous entry) names. IEEE normally does this.
% #1 enables
FUNCTION {default.is.dash.repeated.names} { #1 }

so I think the style designer(s) viewed changing #1 to #0 as a valid method of customization.

  • 1
    In this case there's really no need to edit a copy of the .bst file; see my answer. – Gonzalo Medina Sep 24 '11 at 18:00
  • I was using the IEEEtranBST.zip from the paperplaza website. I had the same problem and I only opened the IEEEtran.bst and changed the #1 to #0 for the default.is.dash.repeated.names and it solved the problem. – NKN Jan 7 '14 at 20:40
25

It depends on the bibliography style. This behavior is normal for style IEEEtrans.

Some bibliography styles are illustrated on the page BibTeX Style Examples.

At this point I recommend the package biblatex where you can set this behavior via the dashed option.

The package itself doesn't provide an IEEEtran style but there is a contrib: biblatex-ieee.

  • About your recommendation to use biblatex: is there a ready-made "style file" for biblatex that reproduces the look-and-feel of the IEEEtran .bst specification? – Mico Sep 24 '11 at 20:53
  • @Mico: I edited my post. – Marco Daniel Sep 24 '11 at 22:59
  • 2
    Wow, that's very useful information. Thanks. – Mico Sep 25 '11 at 1:09
  • 1
    I was using the IEEEtranBST.zip from the paperplaza website. I had the same problem and I only opened the IEEEtran.bst and changed the #1 to #0 for the default.is.dash.repeated.names and it solved the problem. – NKN Jan 7 '14 at 20:38
  • 1
    see also tex.stackexchange.com/a/131664/3888 for a workaround which allows disabling the dashes – Mark Dec 11 '15 at 23:39
10

All of these solutions didn't work for me so I found a simple solution: just add \vspace{0mm} to some part of the name of the author and it's OK.

  • Hmmm, you must be doing something different then. – Werner Sep 8 '15 at 20:50
  • Amazing hack!!! – Jinhua Wang Nov 22 '18 at 20:50
4

Repeating @MarcoDaniel, "It depends on the bibliography style. This bahavior is normal for style IEEEtrans."

If you are writing a paper which asks for IEEEtrans (especially if this is to be published with IEEE), I would seriously consider simply using the default behavior as the result for your paper. This is not a "fluke" that needs to be programed around, this is exactly how the style is programed and designed to perform.

You should always write your paper and choose your citation style based upon the style guide which has authority over your writing (teacher's choice, university style guide, corporate style guide, Chicago, APA, MLA, AP, &c.) and not your personal preferences.

-1

You can use double curly brackets to override the IEEEtrans style.

Example

 @article{Seshadrinathan2010A-Subjective-St,
    Author = {K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack},

@article{Seshadrinathan2009Study-of-Subjec,
    Author = {{K. Seshadrinathan and R. Soundararajan and A. C. Bovik and L. K. Cormack}},
....

Then whatever you write within {{ }} will appear as you dictated.

  • This looks like another answer that was recently posted here (and subsequently deleted). It's a terrible workaround, because this “freezes” a certain style, making it impossible to use a different style based on the same BibTeX bibliography (e.g., one that uses ”et al.“ instead of all authors, or one that sorts last names before first names). Also, sorting of references (if alphabetical) in general would be screwed up. – slhck Aug 22 '17 at 14:33

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.