2

The styling guidelines for Physical Review bibliographies mention that the list of authors should be truncated:

The full author list of cited papers should be given in the references, except when the number exceeds 10 (for Physical Review Physics Education Research the limit is 3).

But this not the default behavior for the .bst files with REVTex4-2. Not only that, figuring out how to actually truncate the number of authors in the references is a huge pain - particularly since the whole point of using bibliography styles is so that authors don't have to spend their time worrying about formatting details. This makes no sense to me, even the REVTex FAQs mention this:

The BibTeX style files distributed with REVTeX 4.1 and 4.2 no longer truncate the author lists of references (REVTeX 4's .bst files would truncate the list if there were more than 10 authors). APS editors prefer full author lists be used for references with 15 or less authors. For longer lists, use the phrase "and others" in place of the authors you want to omit.

Can someone help me make sense of this? Since revtex-2 is not compatible with biblatex, this has presented as a bit of a challenge. Am I missing something plainly obvious? Like a documentclass option that makes this work? Is there any easier way than editing the .bst file?

Currently stuck learning where to make the proper edits in apsrev4-2.bst to limit the author list. At this point it would have been faster to manually edit the authors in the .bib file, which everyone in this community keeps saying not to do.

Bebotron
  • 121
  • Welcome to TeX.SE! – Mensch Jan 17 '23 at 10:35
  • sorry but such why-questions are off-topic. We can't tell you why a package author made a design decision. Write to the maintainer of the package. – Ulrike Fischer Jan 17 '23 at 10:38
  • Thanks, I changed the language to actually ask a question and not just rant. – Bebotron Jan 17 '23 at 10:46
  • there is still no sensible question and you don't show an example. But if the style doesn't do what you want you will either have to adapt it or to get the class or the journal to provide a better one. – Ulrike Fischer Jan 17 '23 at 11:15
  • Submitting a manuscript with a full author list should not be a problem, indeed this can be beneficial to ensure correct matching of references. Depending on what you want to do with the resulting compilation, and the nature of the long author lists (100+ author lists likely should list the collaboration(s) as authors), the advice will vary. – Dai Bowen Jan 17 '23 at 16:37
  • The question is how to modify the apsrev4-2.bst file to truncate the list of authors? – user1830663 Jun 10 '23 at 00:42

1 Answers1

2

Based on the answer to this question I've made corresponding edits to apsrev4-2.bst to truncate the author list, showing 4 names at max. The updated format.names function is copied below and the updated .bst file can be found here. To use the updated .bst file, download it and add it to the latex project. Then call

\bibliographystyle{apsrev4-2-author-truncate}
FUNCTION {format.names}
{ 'bibinfo :=
  duplicate$ empty$ { pop$ "" } {
    duplicate$ num.names$
    duplicate$ 'numnames :=
    'namesleft :=
    's :=
    #1 'nameptr :=
    ""
      { namesleft #0 > }
      {
      format.names.morfont
        bibinfo bibinfo.check
        type$ "presentation" =
          'check.speaker
          'skip$
        if$
        't :=
        nameptr #1 > not
          {
            t *
          } {
            nameptr #3
            #1 + =
            numnames #4
            > and
              { "others" 't :=
                #1 'namesleft := }
              'skip$
            if$
            namesleft #1 >
              {
                names.punctuate
                t *
              } {
                s nameptr "{ll}" format.name$ duplicate$ "others" =
                  { 't := }
                  { pop$ }
                if$
                numnames #2 >
                  'names.comma
                  'skip$
                if$
                t "others" =
                  {
                    " " *
                    bbl.etal
                    emphasize
                    *
                  } {
                    bbl.and
                    space.word *
                    t *
                  }
                if$
              }
            if$
          }
        if$
        nameptr #1 + 'nameptr :=
        namesleft #1 - 'namesleft :=
      }
    while$
  } if$
}
Dyn0402
  • 21