[Tex/LaTex] Bibtex style for “Statistics and Computing”

bibtexjournaljournal-publishing

I would like to create a bibtex style which answers the requirements of Statistics and Computing journal. How could I do that?

Here is an example of how the bibliography should look like:

Journal article:

Hamburger, C.: Quasimonotonicity, regularity and duality for nonlinear systems of partial differential equations. Ann. Mat. Pura Appl. 169, 321–354 (1995)

Book:

Geddes, K.O., Czapor, S.R., Labahn, G.: Algorithms for Computer Algebra. Kluwer, Boston (1992)

Book chapter:

Broy, M.: Software engineering — from auxiliary to key technologies. In: Broy, M., Denert, E. (eds.) Software Pioneers, pp. 10–13. Springer, Heidelberg (2002)

In the text, the references should be as follows:

Negotiation research spans many disciplines (Hamburger 1995).

Thank you for your help!

Best Answer

I created a custom bibliography style with makebst. With a standard article document class, the result looks like this: Output of custom bibliography style, standard document class

Document class svjour3 from the publisher of the journal alters the citation style (by using \bibpunct) to drop the comma between author and year: Output of custom bibliography style, publisher's document class

Code of the example document

%\documentclass[natbib]{svjour3} % File available from Springer
\documentclass{article}
\usepackage{natbib} % loaded by svjour3 with natbib option
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{hamburger1995quasimonotonicity,
  title={Quasimonotonicity, Regularity and Duality for Nonlinear Systems of Partial Differential Equations},
  author={Hamburger, Christoph},
  journal={Ann. Mat. Pura Appl.},
  volume={169},
  pages={321--354},
  year={1995},
  publisher={Springer}
}
@book{geddes1992algorithms,
  title={Algorithms for Computer Algebra},
  author={Geddes, K O and Czapor, S R and Labahn, G},
  year={1992},
  publisher={Kluwer},
  address={Boston}
}
@InCollection{broy2002software,
  author={Broy, Manfred},
  title={Software engineering -- from auxiliary to key technologies},
  booktitle={Software Pioneers},
  publisher={Springer},
  address={Heidelberg},
  pages={10--13},
  year={2002},
  editor={Broy, Manfred and Denert, Ernst}
}
\end{filecontents}

\begin{document}
\bibliographystyle{spcustom}

Parenthetical citation to an article
\citep{hamburger1995quasimonotonicity}.  Textual citation to a book,
as \citet{geddes1992algorithms}.  Something ``InCollection''
\citep{broy2002software}.

\bibliography{\jobname}
\end{document}

Source of the bibliography style. Run it through tex to produce bibtex style file spcustom.bst. Customize if necessary, then repeat TeXing. All the commented lines are preserved to facilitate changes.

%% Driver file to produce spcustom.bst from merlin.mbs
%% Generated with makebst, version 4.1 (2003/09/08)
%% Produced on 2014/07/08 at 16:24
%% Manually edited on 2014/07/09
%% TeXing this creates bibtex style file spcustom.bst
%% 
\input docstrip

\preamble
----------------------------------------
*** Statistics and Computing ***

\endpreamble

\postamble
End of customized bst file
\endpostamble

\keepsilent

\askforoverwritefalse
\def\MBopts{\from{merlin.mbs}{%
%EXTERNAL FILES:
%Name of language file: \cfile=.
%No included files.
%INTERNAL LANGUAGE SUPPORT (if no external language file)
    %: (def) English
% babel,%: Babel
%--------------------
%STYLE OF CITATIONS:
%   %: (def) Numerical
  ay,%: Author-year
% alph,%: Alpha style, Jon90 or JWB90
% alph,alf-1,%: Alpha style, Jon90
% alph,alf-f,%: Alpha style, Jones90
% cite,%: Cite key
%--------------------
%HTML OUTPUT (if non author-year citations)
%   %: (def) Normal LaTeX
% html,%: Hypertext
% html,htlist,%: Hypertext list
% html,htdes,%: Hypertext with keys
%--------------------
%AUTHOR--YEAR SUPPORT SYSTEM (if author-year citations)
  nat,%: Natbib
%   %: (def) Older Natbib
% alk,%: Apalike
% har,%: Harvard
% ast,%: Astronomy
% cay,%: Chicago
% nmd,%: Named
% cn,%: Author-date
%--------------------
%HARVARD EXTENSIONS INCLUDED (if Harvard support selected)
% harnm,%: With Harvard extensions
%   %: (def) Older Harvard
%--------------------
%LANGUAGE FIELD
%   %: (def) No language field
  lang,%: Add language field
%--------------------
%ANNOTATIONS:
    %: (def) No annotations
% annote,%: Annotations
%--------------------
%PRESENTATIONS:
    %: (def) Do not add presentation type
% pres,%: Add presentation, speaker not highlighted
% pres,pres-bf,%: Presentation, speaker bold face
% pres,pres-it,%: Presentaion, speaker italic
% pres,pres-sc,%: Presentaion, speaker in small caps
%--------------------
%ORDERING OF REFERENCES (if non-author/year and non-alph)
%   %: (def) Alphabetical
% seq-no,%: Citation order
% seq-yr,%: Year ordered
% seq-yrr,%: Reverse year ordered
%--------------------
%ORDERING OF REFERENCES (if author-year citations)
    %: (def) Alphabetical
% seq-lab,%: By label
% seq-labc,%: By label and cite order
% seq-key,%: By label and cite key
% seq-yr,%: Year ordered
% seq-yrr,%: Reverse year ordered
% seq-no,%: Citation order
%--------------------
%ORDER ON VON PART (if not citation order)
    %: (def) Sort on von part
% vonx,%: Sort without von part
%--------------------
%IGNORE FIRST NAMES (if author-year citations)
    %: (def) Respect first names
% xintls,%: Sort on surname only
%--------------------
%AUTHOR NAMES:
% ed-au,%: Full, surname last
% nm-revf,%: Full, surname first
% nm-init,ed-au,%: Initials + surname
% nm-rev,%: Surname + initials
% nm-rv,%: Surname + dotless initials
  nm-rvvc,%: Surname + comma + spaceless initials
% nm-rvx,%: Surname + pure initials
% nm-rvcx,%: Surname + comma + pure initials
% nm-rvv,%: Surname + spaceless initials
% nm-rev1,%: Only first name reversed, initials
% nm-revv1,%: First name reversed, with full names
%--------------------
%EDITOR NAMES IN COLLECTIONS (if author names reversed)
  ed-rev,%: Editor names reversed
%--------------------
%POSITION OF JUNIOR (if author names reversed)
% jnrlst,%: Junior comes last
%   %: (def) Junior between
%--------------------
%JUNIOR PART IN THE CITATION (if author-year citations)
    %: (def) No `junior' part in the citations
% jnrlab,%: `Junior' in citations
%--------------------
%PUNCTUATION BETWEEN AUTHOR NAMES:
    %: (def) Author names separated by commas
% aunm-semi,%: Names separated by semi-colon
% aunm-sl,%: Names separated by slash
%--------------------
%ADJACENT REFERENCES WITH REPEATED NAMES:
    %: (def) Author/editor names always present
% nmdash,%: Repeated author/editor names replaced by dash
% nmdash,nmd-2,%: Repeated author/editor names replaced by 2 dashes
% nmdash,nmd-3,%: Repeated author/editor names replaced by 3 dashes
%--------------------
%NUMBER OF AUTHORS IN BIBLIOGRAPHY:
    %: (def) All authors
% nmlm,%: Limited authors
%--------------------
%AUTHORS IN CITATIONS:
    %: (def) One author et al
% mcite,%: Some other truncation scheme
%--------------------
%MAX AUTHORS BEFORE ET AL: (if regular cite not selected)
% mct-1,%: One et al
% mct-2,%: One, Two et al
% mct-3,%: One, Two, Three et al
% mct-4,%: One, Two, Three, Four et al
% mct-5,%: One, Two, Three, Four, Five et al
% mct-6,%: One, Two, Three, Four, Five, Six et al
%--------------------
%MAX AUTHORS WITHOUT ET AL: (if regular cite not selected)
% mct-x2,%: Two authors without truncating
% mct-x3,%: Three authors
% mct-x4,%: Four authors
% mct-x5,%: Five authors
% mct-x6,%: Six authors
%--------------------
%TYPEFACE FOR AUTHORS IN LIST OF REFERENCES:
    %: (def) Normal font for author names
% nmft,nmft-sc,%: Small caps authors
% nmft,nmft-it,%: Italic authors
% nmft,nmft-bf,%: Bold authors
% nmft,nmft-def,%: User defined author font
%--------------------
%FONT FOR FIRST NAMES (if non-default font for authors)
%   %: (def) First names same font as surnames
% fnm-rm,%: First names in normal font
% fnm-def,%: First names in user defined font
%--------------------
%EDITOR NAMES IN INCOLLECTION ETC:
%   %: (def) Editors incollection normal font
% nmfted,%: Editors incollection like authors
%--------------------
%FONT FOR `AND' IN LIST:
%   %: (def) `And' in author font
% nmand-rm,%: `And' in normal font
%--------------------
%FONT OF CITATION LABELS IN TEXT (if author-year citations)
    %: (def) Cited authors plain
% lab,lab-it,%: Cited authors italic
% lab,lab-sc,%: Cited authors small caps
% lab,lab-bf,%: Cited authors bold
% lab,lab-def,%: User defined citation font
%--------------------
%FONT FOR `AND' IN CITATIONS (if non-default font for citation lables)
%   %: (def) Cited `and' in author font
% and-rm,%: Cited `and' in normal font
%--------------------
%FONT OF EXTRA LABEL (The extra letter on the year)
    %: (def) Extra label plain
% xlab-it,%: Extra label italic
%--------------------
%LABEL WHEN AUTHORS MISSING (if author-year citations)
  keyxyr,%: Year blank when KEY replaces missing author
%   %: (def) Year included when KEY replaces missing author
%--------------------
%MISSING DATE (if author-year citations)
%   %: (def) Missing date set to ????
  blkyear,%: Missing date left blank
%--------------------
%DATE POSITION:
    %: (def) Date at end
% dt-beg,%: Date after authors
% dt-jnl,%: Date part of journal spec.
% dt-end,%: Date at very end
%--------------------
%DATE FORMAT (if non author-year citations)
%   %: (def) Plain month and year
% yr-par,%: Date in parentheses
% yr-brk,%: Date in brackets
% yr-col,%: Date preceded by colon
% yr-per,%: Date preceded by period
% yr-com,%: Date preceded by comma
% yr-blk,%: Date preceded by space
%--------------------
%SUPPRESS MONTH:
%   %: (def) Date is month and year
% xmth,%: Date is year only
%--------------------
%REVERSED DATE (if including month)
%   %: (def) Date as month year
% dtrev,%: Date as year month
%--------------------
%DATE FORMAT (if author-year citations)
%   %: (def) Year plain
  yr-par,%: Year in parentheses
% yr-brk,%: Year in brackets
% yr-col,%: Year preceded by colon
% yr-per,%: Year preceded by period
% yr-com,%: Date preceded by comma
% yr-blk,%: Year preceded by space
%--------------------
%INCLUDE MONTHS:
    %: (def) Date is year only
% aymth,%: Include month in date
%--------------------
%REVERSED DATE (if including month)
%   %: (def) Date as month year
% dtrev,%: Date as year month
%--------------------
%DATE PUNCTUATION (if date not at end)
%   %: (def) Date with standard block punctuation
% yrp-col,%: Colon after date
% yrp-semi,%: Semi-colon after date
% yrp-per,%: Period after date
% yrp-x,%: No punct. after date
%--------------------
%BLANK AFTER DATE:
%   %: (def) Space after date
% yrpp-xsp,%: No space after date
%--------------------
%DATE FONT:
    %: (def) Date in normal font
% dtbf,%: Date in bold face
%--------------------
%TRUNCATE YEAR (if author-year citations)
  note-yr,%: Year text full
%   %: (def) Year truncated
%--------------------
%TITLE OF ARTICLE:
    %: (def) Title plain
% tit-it,%: Title italic
% tit-qq,qt-s,%: Title and punctuation in single quotes
% tit-qq,%: Title and punctuation in double quotes
% tit-qq,qt-g,%: Title and punctuation in guillemets
% tit-qq,qt-s,qx,%: Title in single quotes
% tit-qq,qx,%: Title in double quotes
% tit-qq,qt-g,qx,%: Title in guillemets
%--------------------
%COLLECTION/PROCEEDINGS TITLES (if quoted title)
% bt-qq,%: Quote collection and proceedings titles
%   %: (def) Collection and proceedings titles not in quotes
%--------------------
%CAPITALIZATION OF ARTICLE TITLE:
    %: (def) Sentence style
% atit-u,%: Title style
%--------------------
%ARTICLE TITLE PRESENT:
    %: (def) Article title present
% jtit-x,%: No article title
%--------------------
%JOURNAL NAMES:
    %: (def) Periods in journal names
% jxper,%: Dotless journal names
%--------------------
%JOURNAL NAME FONT:
%   %: (def) Journal name italics
  jttl-rm,%: Journal name normal
%--------------------
%THESIS TITLE:
    %: (def) Thesis titles like books
% thtit-a,%: Thesis title like article
% thtit-x,%: No thesis title
%--------------------
%TECHNICAL REPORT TITLE:
    %: (def) Tech. report title like articles
% trtit-b,%: Tech. report title like books
%--------------------
%TECHNICAL REPORT NUMBER:
    %: (def) Tech. report and number plain
% trnum-it,%: Tech. report and number italic
%--------------------
%JOURNAL VOLUME:
%   %: (def) Volume plain
% vol-it,%: Volume italic
  vol-bf,%: Volume bold
% vol-2bf,%: Volume and number bold
%--------------------
%JOURNAL VOL AND NUMBER:
    %: (def) Journal vol(num)
% vnum-sp,%: Journal vol (num)
% vnum-cm,%: Journal vol, num
% vnum-nr,%: Journal vol, no. num
% vnum-h,%: Journal vol, \# number
% vnum-b,%: Journal vol number
% vnum-x,%: Journal vol, without number
%--------------------
%VOLUME PUNCTUATION:
%   %: (def) Volume with colon
% volp-sp,%: Volume with colon and space
% volp-semi,%: Volume with semi-colon
  volp-com,%: Volume with comma
% volp-blk,%: Volume with blank
%--------------------
%YEAR IN JOURNAL SPECIFICATION:
    %: (def) Journal year like others
% jdt-v,%: Journal vol(year)
% jdt-vs,%: Journal vol (year)
% jdt-p,%: Year with pages
% jdt-pc,%: Year, comma, pages
%--------------------
%PAGE NUMBERS:
    %: (def) Start and stop page numbers
% jpg-1,%: Only start page number
%--------------------
%LARGE PAGE NUMBERS:
    %: (def) No separators for large page numbers
% pgsep-c,%: Comma inserted over 9999
% pgsep-s,%: Thin space inserted over 9999
% pgsep-p,%: Period inserted over 9999
%--------------------
%WORD `PAGE' IN ARTICLES:
    %: (def) Article pages numbers only
% jwdpg,%: Include `page' in articles
%--------------------
%POSITION OF PAGES:
    %: (def) Pages given mid text
% pp-last,%: Pages at end
%--------------------
%WORD `VOLUME' IN ARTICLES:
    %: (def) Article volume as number only
% jwdvol,%: Include `volume' in articles
%--------------------
%NUMBER AND SERIES FOR COLLECTIONS:
% num-xser,%: Allows number without series
    %: (def) Standard BibTeX
%--------------------
%POSITION OF NUMBER AND SERIES:
    %: (def) After chapter and pages
% numser,%: Just before publisher
%--------------------
%VOLUME AND SERIES FOR BOOKS/COLLECTIONS:
    %: (def) Vol. 23 of Series
% ser-vol,%: Series, vol. 23
%--------------------
%POSITION OF VOLUME AND SERIES FOR INCOLLECTIONS:
    %: (def) Series and volume after the editors
% ser-ed,%: Series and volume after booktitle
%--------------------
%JOURNAL NAME PUNCTUATION:
%   %: (def) Comma after journal
  jnm-x,%: Space after journal
%--------------------
%BOOK TITLE:
%   %: (def) Book title italic
  btit-rm,bt-rm,%: Book title plain
%--------------------
%PAGES IN BOOKS:
    %: (def) Pages in book plain
% bkpg-par,%: Pages in book in parentheses
% bkpg-x,%: Pages in book bare
%--------------------
%TOTAL PAGES OF A BOOK:
    %: (def) Total book pages not printed
% pg-bk,%: For book: 345 pages
% pg-bk,pg-pre,%: Total book pages before publisher
%--------------------
%PUBLISHER ADDRESS:
    %: (def) Publisher, address
% add-pub,%: Address: Publisher
%--------------------
%PUBLISHER IN PARENTHESES:
    %: (def) Publisher as normal block
% pub-par,%: Publisher in parentheses
% pub-date,%: Publisher and date in parentheses
% pub-date,pub-xc,%: Publisher and date in parentheses, no comma
% pub-date,pub-xpar,%: Publisher and date without parentheses
% pub-date,pub-xpar,pub-xc,%: Publisher and date, no parentheses, no comma
%--------------------
%PUBLISHER POSITION:
    %: (def) Publisher after chapter, pages
% pre-pub,%: Publisher before chapter, pages
% pre-edn,%: Publisher after edition
%--------------------
%ISBN NUMBER:
% isbn,%: Include ISBN
    %: (def) No ISBN
%--------------------
%ISSN NUMBER:
% issn,%: Include ISSN
    %: (def) No ISSN
%--------------------
%DOI NUMBER:
  doi,%: Include DOI
% url-doi,%: Format DOI as URL //dx.doi.org/doi
% agu-doi,doi,%: Insert DOI AGU style
%   %: (def) No DOI
%--------------------
%`EDITOR' AFTER NAMES (EDITED BOOKS WITHOUT AUTHORS):
%   %: (def) Word `editor' after name
% edpar,%: `Name (editor),'
% edpar,bkedcap,%: `Name (Editor),'
% edparc,%: `Name, (editor)'
% edparc,bkedcap,%: `Name, (Editor)'
  edparxc,%: `Name (editor)'
% edparxc,bkedcap,%: `Name (Editor)'
%--------------------
%EDITOR IN COLLECTIONS:
    %: (def) Same as for edited book
% edby,%: In booktitle, edited by .. 
% edby-par,%: In booktitle (edited by ..)
% edby-parc,%: In booktitle, (edited by ..)
% edby,edbyx,%: In booktitle, editor ..
% edby,edbyw,%: In booktitle, (editor) ..
% edby-par,edbyx,%: In booktitle (editor..)
% edby-parc,edbyx,%: In booktitle, (editor..)
% edby,edbyy,%: In booktitle, .., editor
% edby-par,edbyy,%: In booktitle (.., editor)
%--------------------
%CAPITALIZE `EDITOR' OR `EDITED BY' (if editor capitalizable)
%   %: (def) `(editor,..)' or `(edited by..)'
% edcap,%: `(Editor,..)' or `(Edited by..)'
%--------------------
%PUNCTUATION BETWEEN SECTIONS (BLOCKS):
    %: (def) \newblock after blocks
% blk-com,%: Comma between blocks
% blk-com,com-semi,%: Semi-colon between blocks
% blk-com,com-blank,%: Blanks between blocks
% blk-tit,%: Period after titles of articles, books, etc
% blk-tit,tit-col,%: Colon after titles of articles, books, etc
% blk-tita,%: Period after titles of articles
% blk-tita,tit-col,%: Colon after titles of articles
%--------------------
%PUNCTUATION BEFORE NOTES (if not using \newblock)
%   %: (def) Notes have regular punctuation
% blknt,%: Notes preceded by period
%--------------------
%PUNCTUATION AFTER AUTHORS:
%   %: (def) Author block normal
  au-col,%: Author block with colon
%--------------------
%PUNCTUATION AFTER `IN':
%   %: (def) Space after `in'
  in-col,%: Colon after `in'
% in-it,%: Italic `in'
% in-col,in-it,%: Italic `in' and colon
% in-x,%: No word `in'
%--------------------
%`IN' WITH JOURNAL NAMES (if using 'in' with collections)
    %: (def) No `in' before journal name
% injnl,%: Add `in' before journal name
%--------------------
%FINAL PUNCTUATION:
%   %: (def) Period at very end
  fin-bare,%: No period at end
%--------------------
%ABBREVIATE WORD `PAGES' (if not using external language file)
%   %: (def) `Page(s)'
  pp,%: `Page' abbreviated
% ppx,%: `Page' omitted
%--------------------
%ABBREVIATE WORD `EDITORS':
%   %: (def) `Editor(s)'
  ed,%: `Editor' abbreviated
%--------------------
%OTHER ABBREVIATIONS:
%   %: (def) No abbreviations
  abr,%: Abbreviations
%--------------------
%ABBREVIATION FOR `EDITION' (if abbreviating words)
%   %: (def) `Edition' abbreviated as `edn'
  ednx,%: `Edition' abbreviated as `ed'
%--------------------
%MONTHS WITH DOTS:
%   %: (def) Months with dots
  mth-bare,%: Months without dots
%--------------------
%EDITION NUMBERS:
  xedn,%: Editions as in database
%   %: (def) Write out editions
% ord,%: Numerical editions
%--------------------
%Reading external language file \cfile=
%STORED JOURNAL NAMES:
%   %: (def) Full journal names
  jabr,%: Abbreviated journal names
% jabr,jaa,%: Abbreviated with astronomy shorthands
%--------------------
%AMPERSAND:
    %: (def) Use word `and'
% amper,%: Use ampersand
% varand,%: Use \BIBand
%--------------------
%COMMA BEFORE `AND':
%   %: (def) Comma before `and'
  and-xcom,%: No comma before `and'
% and-com,%: Comma even with 2 authors
%--------------------
%COMMA BEFORE `AND' EVEN FOR COLLECTION EDITORS (if using comma before `and' with authors)
% and-com-ed,%: Comma with 2 editors
%   %: (def) Two editors without comma
%--------------------
%NO `AND' IN REFERENCE LIST:
%   %: (def) With `and'
  xand,%: No `and'
%--------------------
%COMMA BEFORE `ET AL':
%   %: (def) Comma before `et al'
  etal-xc,%: No comma before `et al'
%--------------------
%FONT OF `ET AL':
    %: (def) Plain et al
% etal-it,%: Italic et al
% etal-rm,%: Roman et al
%--------------------
%ADDITIONAL REVTeX DATA FIELDS:
    %: (def) No additional fields
% revdata,eprint,url,url-blk,%: Include REVTeX data fields
%--------------------
%E-PRINT DATA FIELD: (without REVTeX fields)
    %: (def) Do not include eprint field
% eprint,%: Include eprint and archive fields
%--------------------
%URL ADDRESS: (without REVTeX fields)
%   %: (def) No URL
  url,url-blk,%: Include URL
% url,url-nt,%: URL as note
% url,url-nl,%: URL on new line
%--------------------
%REFERENCE COMPONENT TAGS:
    %: (def) No reference component tags
% bibinfo,%: Reference component tags
%--------------------
%EMPHASIS: (affects all so-called italics)
    %: (def) Use emphasis
% em-it,%: Use true italics
% em-x,%: No italics
% em-ul,%: Underlining
%--------------------
%COMPATIBILITY WITH PLAIN TEX:
  nfss,%: Use LaTeX commands
% plntx,%: Use only Plain TeX
%--------------------
  }}
\generate{\file{spcustom.bst}{\MBopts}}
\endbatchfile