Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am using the abbrv style under the natbib package for my bibliography. Is it possible to suppress, e.g., the field "SERIES", in the output?

Here is a item in my .bib file:

@book{GelfandVilenkin64GF4,
      AUTHOR = {Gel'fand, I. M. and Vilenkin, N. Ya.},
      TITLE = {Generalized functions. {V}ol. 4: {A}pplications of harmonic
          analysis},
      SERIES = {Translated by Amiel Feinstein},
      PUBLISHER = {Academic Press},
      ADDRESS = {New York },
      YEAR = {1964},
      PAGES = {xiv+384},
      MRCLASS = {46.00 (46.40)},
      MRNUMBER = {0173945 (30 \#4152)},
      MRREVIEWER = {J. L. B. Cooper},
    }

Thank you very much!

share|improve this question
1  
The method of removing the series field from the .bst file is good; just add a definition for series to return an empty object: FUNCTION{series}{""} –  egreg Jan 15 '13 at 15:33
    
Thanks egreg. :-) –  Anand Jan 16 '13 at 13:12
add comment

2 Answers

up vote 3 down vote accepted

You need to define a new style for that. Copy abbrv.bst to a new file, say myabbrv.bst, and put it somewhere where TeX can find it. Open it with an editor, and locate the function format.number.series. It should look like this:

FUNCTION {format.number.series}
{ volume empty$
    { number empty$
        { series field.or.null }
        { output.state mid.sentence =
            { "number" }
            { "Number" }
          if$
          number tie.or.space.connect
          series empty$
            { "there's a number but no series in " cite$ * warning$ }
            { " in " * series * }
          if$
        }
      if$
    }
    { "" }
  if$
}

Replace that with

FUNCTION {format.number.series}
{ volume empty$
    { number empty$
        { "" }
        { output.state mid.sentence =
            { "number" }
            { "Number" }
          if$
          number tie.or.space.connect
          series empty$
            { "there's a number but no series in " cite$ * warning$ }
            { " in " * series * }
          if$
        }
      if$
    }
    { "" }
  if$
}

i.e., we remove the part where it writes the <series>. Then use the new style myabbrv.

Since you are using natbib, you can also use the abbrvnat style. There, a similar edit will help, however, there is also another option by manipulating the \bibinfo macro.

share|improve this answer
    
Thanks mafp. I followed your advice. But I get a Error message: Package natbib Error: Bibliography not compatible with author-year citations... –  Anand Jan 15 '13 at 15:03
1  
@Anand Well, it works here. Note that I fixed a bug in the new version of format.number.series. To nail down the error, please provide a complete MWE that shows the problem. –  mafp Jan 15 '13 at 16:17
1  
@Anand For possible reasons for your error, see also tex.stackexchange.com/q/54480/21591. –  mafp Jan 15 '13 at 16:27
    
Dear mafp, thank you very much. It works well now. :) –  Anand Jan 15 '13 at 17:52
add comment

Here is my solution. It may not be the best way. I copy the abbrv.bst to my working folder and change it to another name: abbrv_mod.bst. Then delete the entry "series" in the ENTRY part:

ENTRY
{ address
author
booktitle
chapter
edition
editor
howpublished
institution
journal
key
month
note
number
organization
pages
publisher
school
title
type
volume
year
}

Then in the tex file, use the following command:

\bibliographystyle{abbrv_mod}
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.