moewew / biblatex-trad

traditional bibliography styles with biblatex
LaTeX Project Public License v1.3c
31 stars 7 forks source link

Journal "series" should be treated as part of journal name. #8

Closed russella closed 11 years ago

russella commented 11 years ago

Dear Marco,

Some journals have "series names" which I think should appear next to the journal name without any puctuation, but then be followed by a comma if any more data follows it:

(Journal name) (Series name), XX(Y):....

As the moment, the code produces

(Journal name) (series name) XX(Y):...

(without the following comma).

For example, the entry

@article{aingworth,
    author    = {Donald Aingworth and Chandra Chekuri and Piotr Indyk and Rajeev Motwani},
    title     = {Fast Estimation of Diameter and Shortest Paths (Without Matrix Multiplication)},
    journal   = {SIAM J. Comput.},
  eprint    = {99a:01001},
    pages     = {1167--1181},
    volume    = 28,
eid = {R15},
 issue = {special issue for FOCS},
series = {Awesome series},
    year      = 2012,
    number    = 4,
    note      = {Preliminary version in SODA'96},
    doi = {10.1137/S0097539796303421},
  eprinttype = {mathscinet},
}

produces the entry:

Donald Aingworth, Chandra Chekuri, Piotr Indyk, and Rajeev Motwani. Fast estimation of diameter and shortest paths (without matrix multiplication). Siam j. comput. Awesome series 28(4):1167– 1181, R15, special issue for FOCS, 2012. Preliminary version in SODA’96. DOI: 10.1137/ S0097539796303421. mathscinet: 99a:01001 (cited on page 503).

I think this can be fixed by making one minor change in your code:

\renewbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}%
  \setunit*{\addcomma\space}%
  \iffieldundef{series}
    {}
    {\newunit
     \printfield{series}%
     \setunit{\addcomma\addspace}}%    %% This is the changed line, added \addcomma
  \usebibmacro{volume+number+pages+eid}%
  \newcommaunit
%  \setunit{\addspace}%
  \usebibmacro{issue+date-parens}%
  \setunit*{\addcolon\space}%
  \usebibmacro{issue}%
  \newunit}
marcodaniel commented 11 years ago

Hi,

I changed the line to:

\setunit{\addcomma\space}

regards Marco