BibTeX, biblatex and bibergenerating a bibliography style

Information and discussion about BiBTeX - the bibliography tool for LaTeX documents.
Post Reply
benti
Posts: 42
Joined: Fri Mar 06, 2009 4:51 pm

generating a bibliography style

Post by benti »

Hej,

Any feedback on the following problem?

I am using makebst to generate a bibliography style. I want a style that sets booktitle in italics, but seriestitle in the regular typeface. Haven't been able to find out how to pull this off; it seems that merlin.mbs only allows to set the entire sequence booktitle+seriestitle in a single typeface.

In case it's any use, here's the .dbj I use to generate the .bst:

Code: Select all

%% Driver file to produce nielsc.bst from merlin.mbs
%% Generated with makebst, version 4.1 (2003/09/08)
%% Produced on 2008/09/26 at 15:16
%% 
\input docstrip

\preamble
----------------------------------------
*** Probeer 3 based on MdG FGS ***

\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 words used explicitly
% babel,%: Babel (words replaced by commands defined in babelbst.tex)
%------\ans=*(==)-------
%>>INTERNAL LANGUAGE SUPPORT (if no external language file)
%<<STYLE OF CITATIONS:
%   %: (def) Numerical as in standard LaTeX
  ay,%: Author-year with some non-standard interface
% alph,%: Alpha style, Jon90 or JWB90 for single or multiple authors
% alph,alf-1,%: Alpha style, Jon90 even for multiple authors
% alph,alf-f,%: Alpha style, Jones90 (full name of first author)
% cite,%: Cite key (special for listing contents of bib file)
%------\ans=a(==ay)-------
%>>STYLE OF CITATIONS:
%<<HTML OUTPUT (if non author-year citations)
%   %: (def) Normal LaTeX output
% html,%: Hypertext output, in HTML code, in paragraphs
% html,htlist,%: Hypertext list with sequence numbers
% html,htdes,%: Hypertext with keys for viewing databases
%------\ans=*(==)-------
%>>HTML OUTPUT (if non author-year citations)
%<<AUTHOR--YEAR SUPPORT SYSTEM (if author-year citations)
  nat,%: Natbib for use with natbib v5.3 or later
%   %: (def) Older Natbib without full authors citations
% alk,%: Apalike for use with apalike.sty
% har,%: Harvard system with harvard.sty
% ast,%: Astronomy system with astron.sty
% cay,%: Chicago system with chicago.sty
% nmd,%: Named system with named.sty
% cn,%: Author-date system with authordate1-4.sty
%------\ans=*(==nat)-------
%<<HARVARD EXTENSIONS INCLUDED (if Harvard support selected)
% harnm,%: With Harvard extensions for LaTeX2e version of harvard.sty
%   %: (def) Older Harvard style, for LaTeX 2.09
%------\ans=*(==harnm)-------
%>>HARVARD EXTENSIONS INCLUDED (if Harvard support selected)
%>>AUTHOR--YEAR SUPPORT SYSTEM (if author-year citations)
%<<LANGUAGE FIELD
    %: (def) No language field 
% lang,%: Add language field to switch hyphenation patterns temporarily
%------\ans=*(==)-------
%>>LANGUAGE FIELD
%<<ANNOTATIONS:
    %: (def) No annotations will be recognized
% annote,%: Annotations in annote field or in .tex file of citekey name
%------\ans=*(==)-------
%>>ANNOTATIONS:
%<<PRESENTATIONS:
    %: (def) Do not add presentation type for conference talks
% 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 
%------\ans=*(==)-------
%>>PRESENTATIONS:
%<<ORDERING OF REFERENCES (if non-author/year and non-alph)
%   %: (def) Alphabetical by all authors
% seq-no,%: Citation order (unsorted, like unsrt.bst)
% seq-yr,%: Year ordered and then by authors
% seq-yrr,%: Reverse year ordered and then by authors
%------\ans=*(==)-------
%>>ORDERING OF REFERENCES (if non-author/year and non-alph)
%<<ORDERING OF REFERENCES (if author-year citations)
    %: (def) Alphabetical by all authors
% seq-lab,%: By label (Jones before Jones and James before Jones et al)
% seq-key,%: By label and cite key instead of label and title, as above
% seq-yr,%: Year ordered and then by authors (for publication lists)
% seq-yrr,%: Reverse year ordered and then by authors (most recent first)
% seq-no,%: Citation order (unsorted, only meaningful for numericals)
%------\ans=*(==)-------
%>>ORDERING OF REFERENCES (if author-year citations)
%<<ORDER ON VON PART (if not citation order)
%   %: (def) Sort on von part (de la Maire before Defoe)
  vonx,%: Sort without von part (de la Maire after Mahone)
%------\ans=x(==vonx)-------
%>>ORDER ON VON PART (if not citation order)
%<<AUTHOR NAMES:
% ed-au,%: Full, surname last (John Frederick Smith)
% nm-revf,%: Full, surname first (Smith, John Frederick)
% nm-init,ed-au,%: Initials + surname (J. F. Smith)
  nm-rev,%: Surname + initials (Smith, J. F.)
% nm-rv,%: Surname + dotless initials (Smith J F)
% nm-rvvc,%: Surname + comma + spaceless initials (Smith, J.F.)
% nm-rvx,%: Surname + pure initials (Smith JF)
% nm-rvcx,%: Surname + comma + pure initials (Smith, JF)
% nm-rvv,%: Surname + spaceless initials (Smith J.F.)
% nm-rev1,%: Only first name reversed, initials (AGU style: Smith, J. F., H. K. Jones)
% nm-revv1,%: First name reversed, with full names (Smith, John Fred, Harry Kab Jones)
%------\ans=f(==nm-revf)-------
%>>AUTHOR NAMES:
%<<EDITOR NAMES IN COLLECTIONS (if author names reversed)
    %: (def) Editor names NOT reversed as edited by John James Smith
% ed-rev,%: Editor names reversed just like authors'
%------\ans=*(==)-------
%<<POSITION OF JUNIOR (if author names reversed)
  jnrlst,%: Junior comes last as Smith, John, Jr.
%   %: (def) Junior between as Smith, Jr., John
%------\ans=*(==jnrlst)-------
%>>POSITION OF JUNIOR (if author names reversed)
%>>EDITOR NAMES IN COLLECTIONS (if author names reversed)
%<<JUNIOR PART IN THE CITATION (if author-year citations)
    %: (def) No `junior' part in the citations but in the ref listing
% jnrlab,%: `Junior' in citations as well as in ref listing
%------\ans=*(==)-------
%>>JUNIOR PART IN THE CITATION (if author-year citations)
%<<PUNCTUATION BETWEEN AUTHOR NAMES:
    %: (def) Author names separated by commas 
% aunm-semi,%: Names separated by semi-colon 
% aunm-sl,%: Names separated by slash /
%------\ans=*(==)-------
%>>PUNCTUATION BETWEEN AUTHOR NAMES:
%<<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 
%------\ans=3(==nmdash,nmd-3)-------
%>>ADJACENT REFERENCES WITH REPEATED NAMES:
%<<NUMBER OF AUTHORS IN BIBLIOGRAPHY:
    %: (def) All authors included in listing
% nmlm,%: Limited authors (et al replaces missing names)
%------\ans=*(==)-------
%>>NUMBER OF AUTHORS IN BIBLIOGRAPHY:
%<<AUTHORS IN CITATIONS:
    %: (def) One author et al for three or more authors
% mcite,%: Some other truncation scheme 
%------\ans=*(==)-------
%>>AUTHORS IN CITATIONS:
%<<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 
%------\ans=*(==mct-1)-------
%>>MAX AUTHORS BEFORE ET AL: (if regular cite not selected)
%<<MAX AUTHORS WITHOUT ET AL: (if regular cite not selected)
% mct-x2,%: Two authors without truncating 
% mct-x3,%: Three authors without truncating
% mct-x4,%: Four authors without truncating
% mct-x5,%: Five authors without truncating
%------\ans=*(==mct-x2)-------
%>>MAX AUTHORS WITHOUT ET AL: (if regular cite not selected)
%<<TYPEFACE FOR AUTHORS IN LIST OF REFERENCES:
%   %: (def) Normal font for author names 
  nmft,nmft-sc,%: Small caps authors (\sc)
% nmft,nmft-it,%: Italic authors (\it or \em)
% nmft,nmft-bf,%: Bold authors (\bf)
% nmft,nmft-def,%: User defined author font (\bibnamefont)
%------\ans=s(==nmft,nmft-sc)-------
%>>TYPEFACE FOR AUTHORS IN LIST OF REFERENCES:
%<<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 (\bibfnamefont)
%------\ans=r(==fnm-rm)-------
%<<EDITOR NAMES IN INCOLLECTION ETC:
    %: (def) Editors incollection normal font 
% nmfted,%: Editors incollection like authors font
%------\ans=*(==)-------
%>>EDITOR NAMES IN INCOLLECTION ETC:
%<<FONT FOR `AND' IN LIST:
%   %: (def) `And' in author font (JONES AND JAMES)
  nmand-rm,%: `And' in normal font (JONES and JAMES)
%------\ans=r(==nmand-rm)-------
%>>FONT FOR `AND' IN LIST:
%>>FONT FOR FIRST NAMES (if non-default font for authors)
%<<FONT OF CITATION LABELS IN TEXT (if author-year citations)
    %: (def) Cited authors plain as result of \cite command
% 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 (\citenamefont)
%------\ans=*(==)-------
%<<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 
%------\ans=*(==)-------
%>>FONT FOR `AND' IN CITATIONS (if non-default font for citation lables)
%<<FONT OF EXTRA LABEL (The extra letter on the year)
    %: (def) Extra label plain 
% xlab-it,%: Extra label italic 
%------\ans=*(==)-------
%>>FONT OF EXTRA LABEL (The extra letter on the year)
%>>FONT OF CITATION LABELS IN TEXT (if author-year citations)
%<<LABEL WHEN AUTHORS MISSING (if author-year citations)
  keyxyr,%: Year blank when KEY replaces missing author (for natbib 7.0)
%   %: (def) Year included when KEY replaces missing author 
%------\ans=*(==keyxyr)-------
%>>LABEL WHEN AUTHORS MISSING (if author-year citations)
%<<MISSING DATE (if author-year citations)
    %: (def) Missing date set to ???? in label and text
% blkyear,%: Missing date left blank 
%------\ans=*(==)-------
%>>MISSING DATE (if author-year citations)
%<<DATE POSITION:
%   %: (def) Date at end 
  dt-beg,%: Date after authors 
% dt-jnl,%: Date part of journal spec. (as 1994;45:34-40) else at end
% dt-end,%: Date at very end after any notes
%------\ans=b(==dt-beg)-------
%>>DATE POSITION:
%<<DATE FORMAT (if non author-year citations)
%   %: (def) Plain month and year without any brackets
% yr-par,%: Date in parentheses as (May 1993)
% yr-brk,%: Date in brackets as [May 1993]
% yr-col,%: Date preceded by colon as `: May 1993'
% yr-per,%: Date preceded by period as `. May 1993'
% yr-com,%: Date preceded by comma as `, May 1993'
% yr-blk,%: Date preceded by space only, as ` May 1993'
%------\ans=*(==)-------
%<<SUPPRESS MONTH:
%   %: (def) Date is month and year 
% xmth,%: Date is year only 
%------\ans=*(==)-------
%>>SUPPRESS MONTH:
%<<REVERSED DATE (if including month)
%   %: (def) Date as month year 
% dtrev,%: Date as year month 
%------\ans=*(==)-------
%>>REVERSED DATE (if including month)
%>>DATE FORMAT (if non author-year citations)
%<<DATE FORMAT (if author-year citations)
%   %: (def) Year plain without any brackets
  yr-par,%: Year in parentheses as (1993)
% yr-brk,%: Year in brackets as [1993]
% yr-col,%: Year preceded by colon as `: 1993'
% yr-per,%: Year preceded by period as `. 1993'
% yr-com,%: Date preceded by comma as `, 1993'
% yr-blk,%: Year preceded by space only, as ` 1993'
%------\ans=p(==yr-par)-------
%<<INCLUDE MONTHS:
    %: (def) Date is year only without the month
% aymth,%: Include month in date 
%------\ans=*(==)-------
%>>INCLUDE MONTHS:
%<<REVERSED DATE (if including month)
%   %: (def) Date as month year 
% dtrev,%: Date as year month 
%------\ans=*(==)-------
%>>REVERSED DATE (if including month)
%>>DATE FORMAT (if author-year citations)
%<<DATE PUNCTUATION (if date not at end)
%   %: (def) Date with standard block punctuation (comma or period)
% yrp-col,%: Colon after date as 1994:
% yrp-semi,%: Semi-colon after date as 1994;
  yrp-per,%: Period after date even when blocks use commas
% yrp-x,%: No punct. after date 
%------\ans=p(==yrp-per)-------
%<<BLANK AFTER DATE:
    %: (def) Space after date and punctuation
% yrpp-xsp,%: No space after date as 1994:45
%------\ans=*(==)-------
%>>BLANK AFTER DATE:
%>>DATE PUNCTUATION (if date not at end)
%<<DATE FONT:
    %: (def) Date in normal font 
% dtbf,%: Date in bold face 
%------\ans=*(==)-------
%>>DATE FONT:
%<<TRUNCATE YEAR (if author-year citations)
  note-yr,%: Year text full as 1990--1993 or `in press'
%   %: (def) Year truncated to last 4 digits
%------\ans=*(==note-yr)-------
%>>TRUNCATE YEAR (if author-year citations)
%<<TITLE OF ARTICLE:
    %: (def) Title plain with no special font
% tit-it,%: Title italic (\em)
% tit-qq,qt-s,%: Title and punctuation in single quotes (`Title,' ..)
% tit-qq,%: Title and punctuation in double quotes (``Title,'' ..)
% tit-qq,qt-g,%: Title and punctuation in guillemets (<<Title,>> ..)
% tit-qq,qt-s,qx,%: Title in single quotes (`Title', ..)
% tit-qq,qx,%: Title in double quotes (``Title'', ..)
% tit-qq,qt-g,qx,%: Title in guillemets (<<Title>>, ..)
%------\ans=*(==)-------
%>>TITLE OF ARTICLE:
%<<COLLECTION/PROCEEDINGS TITLES (if quoted title)
% bt-qq,%: Quote collection and proceedings titles too
%   %: (def) Collection and proceedings titles not in quotes 
%------\ans=*(==bt-qq)-------
%>>COLLECTION/PROCEEDINGS TITLES (if quoted title)
%<<CAPITALIZATION OF ARTICLE TITLE:
    %: (def) Sentence style (capitalize first word and those in braces)
% atit-u,%: Title style (just as in bib entry)
%------\ans=*(==)-------
%>>CAPITALIZATION OF ARTICLE TITLE:
%<<ARTICLE TITLE PRESENT:
    %: (def) Article title present in journals and proceedings
% jtit-x,%: No article title 
%------\ans=*(==)-------
%>>ARTICLE TITLE PRESENT:
%<<JOURNAL NAMES:
    %: (def) Periods in journal names are retained, as `Phys. Rev.'
% jxper,%: Dotless journal names as `Phys Rev'
%------\ans=*(==)-------
%>>JOURNAL NAMES:
%<<JOURNAL NAME FONT:
    %: (def) Journal name italics 
% jttl-rm,%: Journal name normal font
%------\ans=*(==)-------
%>>JOURNAL NAME FONT:
%<<THESIS TITLE:
    %: (def) Thesis titles like books 
% thtit-a,%: Thesis title like article 
% thtit-x,%: No thesis title 
%------\ans=*(==)-------
%>>THESIS TITLE:
%<<TECHNICAL REPORT TITLE:
    %: (def) Tech. report title like articles 
% trtit-b,%: Tech. report title like books 
%------\ans=*(==)-------
%>>TECHNICAL REPORT TITLE:
%<<TECHNICAL REPORT NUMBER:
    %: (def) Tech. report and number plain as `Tech. Rep. 123'
% trnum-it,%: Tech. report and number italic as `{\it Tech. Rep. 123'}
%------\ans=*(==)-------
%>>TECHNICAL REPORT NUMBER:
%<<JOURNAL VOLUME:
    %: (def) Volume plain as vol(num)
% vol-it,%: Volume italic as {\em vol}(num)
% vol-bf,%: Volume bold as {\bf vol}(num)
% vol-2bf,%: Volume and number bold as {\bf vol(num)}
%------\ans=*(==)-------
%>>JOURNAL VOLUME:
%<<JOURNAL VOL AND NUMBER:
    %: (def) Journal vol(num) as 34(2)
% vnum-sp,%: Journal vol (num) as 34 (2)
% vnum-cm,%: Journal vol, num as 34, 2
% vnum-nr,%: Journal vol, no. num as 34, no. 2
% vnum-h,%: Journal vol, \# number as 34, \#2
% vnum-b,%: Journal vol number as 34 2
% vnum-x,%: Journal vol, without number as 34
%------\ans=*(==)-------
%>>JOURNAL VOL AND NUMBER:
%<<VOLUME PUNCTUATION:
    %: (def) Volume with colon as vol(num):ppp
% volp-sp,%: Volume with colon and space as vol(num): ppp
% volp-semi,%: Volume with semi-colon as vol(num); ppp
% volp-com,%: Volume with comma as vol(num), ppp
% volp-blk,%: Volume with blank as vol(num) ppp
%------\ans=*(==)-------
%>>VOLUME PUNCTUATION:
%<<YEAR IN JOURNAL SPECIFICATION:
    %: (def) Journal year like others as given by date position
% jdt-v,%: Journal vol(year) as 34(1995)
% jdt-vs,%: Journal vol (year) as 34 (1995)
% jdt-p,%: Year with pages as 34(2), (1995) 1345--1387
% jdt-pc,%: Year, comma, pages as 34(2), (1995), 1345--1387
%------\ans=*(==)-------
%>>YEAR IN JOURNAL SPECIFICATION:
%<<PAGE NUMBERS:
    %: (def) Start and stop page numbers given
% jpg-1,%: Only start page number 
%------\ans=*(==)-------
%>>PAGE NUMBERS:
%<<LARGE PAGE NUMBERS:
    %: (def) No separators for large page numbers 
% pgsep-c,%: Comma inserted over 9999 as 11,234
% pgsep-s,%: Thin space inserted over 9999 as 11 234
% pgsep-p,%: Period inserted over 9999 as 11.234
%------\ans=*(==)-------
%>>LARGE PAGE NUMBERS:
%<<WORD `PAGE' IN ARTICLES:
    %: (def) Article pages numbers only as 234-256
% jwdpg,%: Include `page' in articles as pp. 234--256
%------\ans=*(==)-------
%>>WORD `PAGE' IN ARTICLES:
%<<POSITION OF PAGES:
%   %: (def) Pages given mid text as is normal
  pp-last,%: Pages at end but before any notes
%------\ans=e(==pp-last)-------
%>>POSITION OF PAGES:
%<<WORD `VOLUME' IN ARTICLES:
    %: (def) Article volume as number only as 21
% jwdvol,%: Include `volume' in articles as vol. 21
%------\ans=*(==)-------
%>>WORD `VOLUME' IN ARTICLES:
%<<NUMBER AND SERIES FOR COLLECTIONS:
  num-xser,%: Allows number without series and suppresses word "number"
%   %: (def) Standard BibTeX as: "number 123 in Total Works"; error if number and no series
%------\ans=*(==num-xser)-------
%>>NUMBER AND SERIES FOR COLLECTIONS:
%<<POSITION OF NUMBER AND SERIES:
%   %: (def) After chapter and pages as in standard BibTeX
  numser,%: Just before publisher or organization
%------\ans=t(==numser)-------
%>>POSITION OF NUMBER AND SERIES:
%<<VOLUME AND SERIES FOR BOOKS/COLLECTIONS:
%   %: (def) Vol. 23 of Series as in standard BibTeX
  ser-vol,%: Series, vol. 23 
%------\ans=s(==ser-vol)-------
%>>VOLUME AND SERIES FOR BOOKS/COLLECTIONS:
%<<POSITION OF VOLUME AND SERIES FOR INCOLLECTIONS:
    %: (def) Series and volume after the editors 
% ser-ed,%: Series and volume after booktitle and before editors
%------\ans=*(==)-------
%>>POSITION OF VOLUME AND SERIES FOR INCOLLECTIONS:
%<<JOURNAL NAME PUNCTUATION:
    %: (def) Comma after journal name
% jnm-x,%: Space after journal name
%------\ans=*(==)-------
%>>JOURNAL NAME PUNCTUATION:
%<<BOOK TITLE:
    %: (def) Book title italic (\em)
% btit-rm,bt-rm,%: Book title plain (no font command)
%------\ans=*(==)-------
%>>BOOK TITLE:
%<<PAGES IN BOOKS:
    %: (def) Pages in book plain as pp. 50-55
% bkpg-par,%: Pages in book in parentheses as (pp. 50-55)
% bkpg-x,%: Pages in book bare as 50-55
%------\ans=*(==)-------
%>>PAGES IN BOOKS:
%<<TOTAL PAGES OF A BOOK:
    %: (def) Total book pages not printed 
% pg-bk,%: For book: 345 pages or pp.
% pg-bk,pg-pre,%: Total book pages before publisher 
%------\ans=*(==)-------
%>>TOTAL PAGES OF A BOOK:
%<<PUBLISHER ADDRESS:
%   %: (def) Publisher, address as Harcourt, New York
  add-pub,%: Address: Publisher as New York: Harcourt
%------\ans=a(==add-pub)-------
%>>PUBLISHER ADDRESS:
%<<PUBLISHER IN PARENTHESES:
    %: (def) Publisher as normal block without parentheses
% pub-par,%: Publisher in parentheses 
% pub-date,%: Publisher and date in parentheses (Oxford, 1994)
% pub-date,pub-xc,%: Publisher and date in parentheses, no comma (Oxford 1994)
% pub-date,pub-xpar,%: Publisher and date without parentheses Oxford, 1994
% pub-date,pub-xpar,pub-xc,%: Publisher and date, no parentheses, no comma Oxford 1994
%------\ans=*(==)-------
%>>PUBLISHER IN PARENTHESES:
%<<PUBLISHER POSITION:
%   %: (def) Publisher after chapter, pages 
  pre-pub,%: Publisher before chapter, pages 
% pre-edn,%: Publisher after edition 
%------\ans=p(==pre-pub)-------
%>>PUBLISHER POSITION:
%<<ISBN NUMBER:
% isbn,%: Include ISBN for books, booklets, etc.
    %: (def) No ISBN 
%------\ans=x(==)-------
%>>ISBN NUMBER:
%<<ISSN NUMBER:
% issn,%: Include ISSN for periodicals
    %: (def) No ISSN 
%------\ans=x(==)-------
%>>ISSN NUMBER:
%<<DOI NUMBER:
% doi,%: Include DOI as "doi: number"
% agu-doi,doi,%: Insert DOI AGU style as part of page number
    %: (def) No DOI 
%------\ans=x(==)-------
%>>DOI NUMBER:
%<<`EDITOR' AFTER NAMES (EDITED BOOKS WITHOUT AUTHORS):
%   %: (def) Word `editor' after name 
  edpar,%: `Name (editor),' in parentheses, after name, comma after
% edpar,bkedcap,%: `Name (Editor),' as above, editor upper case
% edparc,%: `Name, (editor)' in parentheses, after name, comma between
% edparc,bkedcap,%: `Name, (Editor)' as above, editor upper case
% edparxc,%: `Name (editor)' in parentheses, after name, no commas
% edparxc,bkedcap,%: `Name (Editor)' as above, editor upper case
%------\ans=a(==edpar)-------
%>>`EDITOR' AFTER NAMES (EDITED BOOKS WITHOUT AUTHORS):
%<<EDITOR IN COLLECTIONS:
    %: (def) Same as for edited book (names before booktitle)
% edby,%: In booktitle, edited by ..  (where .. is names)
% 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) 
%------\ans=*(==)-------
%>>EDITOR IN COLLECTIONS:
%<<CAPITALIZE `EDITOR' OR `EDITED BY' (if editor capitalizable)
%   %: (def) `(editor,..)' or `(edited by..)' in lower case
% edcap,%: `(Editor,..)' or `(Edited by..)' in upper case
%------\ans=*(==)-------
%>>CAPITALIZE `EDITOR' OR `EDITED BY' (if editor capitalizable)
%<<PUNCTUATION BETWEEN SECTIONS (BLOCKS):
%   %: (def) \newblock after blocks (periods or new lines with openbib option)
% 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 else commas
% blk-tit,tit-col,%: Colon after titles of articles, books, etc else commas
% blk-tita,%: Period after titles of articles else commas
% blk-tita,tit-col,%: Colon after titles of articles else commas
%------\ans=*(==)-------
%>>PUNCTUATION BETWEEN SECTIONS (BLOCKS):
%<<PUNCTUATION BEFORE NOTES (if not using \newblock)
%   %: (def) Notes have regular punctuation like all other blocks
% blknt,%: Notes preceded by period 
%------\ans=*(==)-------
%>>PUNCTUATION BEFORE NOTES (if not using \newblock)
%<<PUNCTUATION AFTER AUTHORS:
    %: (def) Author block normal with regular block punctuation
% au-col,%: Author block with colon 
%------\ans=*(==)-------
%>>PUNCTUATION AFTER AUTHORS:
%<<PUNCTUATION AFTER `IN':
    %: (def) Space after `in' for incollection or inproceedings
% in-col,%: Colon after `in' (as `In: ...')
% in-it,%: Italic `in' and space
% in-col,in-it,%: Italic `in' and colon 
% in-x,%: No word `in' for edited works
%------\ans=*(==)-------
%>>PUNCTUATION AFTER `IN':
%<<`IN' WITH JOURNAL NAMES (if using 'in' with collections)
    %: (def) No `in' before journal name 
% injnl,%: Add `in' before journal name in style for incollection
%------\ans=*(==)-------
%>>`IN' WITH JOURNAL NAMES (if using 'in' with collections)
%<<FINAL PUNCTUATION:
    %: (def) Period at very end of the listed reference
% fin-bare,%: No period at end 
%------\ans=*(==)-------
%>>FINAL PUNCTUATION:
%<<ABBREVIATE WORD `PAGES' (if not using external language file)
%   %: (def) `Page(s)' (no abbreviation)
  pp,%: `Page' abbreviated as p. or pp.
% ppx,%: `Page' omitted 
%------\ans=a(==pp)-------
%<<ABBREVIATE WORD `EDITORS':
%   %: (def) `Editor(s)' (no abbreviation)
  ed,%: `Editor' abbreviated as ed. or eds.
%------\ans=a(==ed)-------
%>>ABBREVIATE WORD `EDITORS':
%<<OTHER ABBREVIATIONS:
%   %: (def) No abbreviations of volume, edition, chapter, etc
  abr,%: Abbreviations of such words
%------\ans=a(==abr)-------
%>>OTHER ABBREVIATIONS:
%<<ABBREVIATION FOR `EDITION' (if abbreviating words)
    %: (def) `Edition' abbreviated as `edn' 
% ednx,%: `Edition' abbreviated as `ed' 
%------\ans=*(==)-------
%<<MONTHS WITH DOTS:
    %: (def) Months with dots as Jan.
% mth-bare,%: Months without dots as Feb Mar
%------\ans=*(==)-------
%>>MONTHS WITH DOTS:
%>>ABBREVIATION FOR `EDITION' (if abbreviating words)
%<<EDITION NUMBERS:
% xedn,%: Editions as in database saving much processing memory
%   %: (def) Write out editions as first, second, third, etc
  ord,%: Numerical editions as 1st, 2nd, 3rd, etc
%------\ans=n(==ord)-------
%>>EDITION NUMBERS:
%>>ABBREVIATE WORD `PAGES' (if not using external language file)
%Reading external language file \cfile=
%<<STORED JOURNAL NAMES:
    %: (def) Full journal names for prestored journals
% jabr,%: Abbreviated journal names 
% jabr,jaa,%: Abbreviated with astronomy shorthands like ApJ and AJ
%------\ans=*(==)-------
%>>STORED JOURNAL NAMES:
%<<AMPERSAND:
%   %: (def) Use word `and' in author lists
  amper,%: Use ampersand in place of `and'
% varand,%: Use \BIBand in place of `and'
%------\ans=a(==amper)-------
%>>AMPERSAND:
%<<COMMA BEFORE `AND':
%   %: (def) Comma before `and' as `Tom, Dick, and Harry'
  and-xcom,%: No comma before `and' as `Tom, Dick and Harry'
% and-com,%: Comma even with 2 authors as `Tom, and Harry'
%------\ans=n(==and-xcom)-------
%>>COMMA BEFORE `AND':
%<<COMMA BEFORE `AND' EVEN FOR COLLECTION EDITORS (if using comma before `and' with authors)
% and-com-ed,%: Comma with 2 editors in collections
%   %: (def) Two editors without comma as `Tom and Harry'
%------\ans=*(==and-com-ed)-------
%>>COMMA BEFORE `AND' EVEN FOR COLLECTION EDITORS (if using comma before `and' with authors)
%<<NO `AND' IN REFERENCE LIST:
    %: (def) With `and' before last author in reference list
% xand,%: No `and' as `Tom, Dick, Harry'
%------\ans=*(==)-------
%>>NO `AND' IN REFERENCE LIST:
%<<COMMA BEFORE `ET AL':
%   %: (def) Comma before `et al' in reference list
  etal-xc,%: No comma before `et al' 
%------\ans=x(==etal-xc)-------
%>>COMMA BEFORE `ET AL':
%<<FONT OF `ET AL':
%   %: (def) Plain et al 
  etal-it,%: Italic et al 
% etal-rm,%: Roman et al even when authors something else
%------\ans=i(==etal-it)-------
%>>FONT OF `ET AL':
%<<ADDITIONAL REVTeX DATA FIELDS:
    %: (def) No additional fields for REVTeX
% revdata,eprint,url,url-blk,%: Include REVTeX data fields collaboration, eid, eprint, archive, numpages, url
%------\ans=*(==)-------
%<<E-PRINT DATA FIELD: (without REVTeX fields)
    %: (def) Do not include eprint field 
% eprint,%: Include eprint and archive fields for electronic publications
%------\ans=*(==)-------
%>>E-PRINT DATA FIELD: (without REVTeX fields)
%<<URL ADDRESS: (without REVTeX fields)
    %: (def) No URL for electronic (Internet) documents
% url,url-blk,%: Include URL as regular item block
% url,url-nt,%: URL as note 
% url,url-nl,%: URL on new line after rest of reference
%------\ans=*(==)-------
%>>URL ADDRESS: (without REVTeX fields)
%>>ADDITIONAL REVTeX DATA FIELDS:
%<<REFERENCE COMPONENT TAGS:
    %: (def) No reference component tags in the \bibitem entries
% bibinfo,%: Reference component tags like \bibinfo in the content of \bibitem
%------\ans=*(==)-------
%>>REFERENCE COMPONENT TAGS:
%<<EMPHASIS: (affects all so-called italics)
%   %: (def) Use emphasis ie, \em, allows font switching
 em-it,%: Use true italics ie, \it, absolute italics
%  em-x,%: No italics at all
% em-ul,%: Underlining in place of italics, best with ulem package
%------\ans=x(==em-x)-------
%>>EMPHASIS: (affects all so-called italics)
%<<COMPATIBILITY WITH PLAIN TEX:
  nfss,%: Use LaTeX commands which may not work with Plain TeX
% plntx,%: Use only Plain TeX commands for fonts and testing
%------\ans=*(==nfss)-------
%>>COMPATIBILITY WITH PLAIN TEX:
  }}
\generate{\file{nielsc.bst}{\MBopts}}
\endbatchfile
Thanks for your help,
Niels

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org

NEW: TikZ book now 40% off at Amazon.com for a short time.

kaiserkarl13
Posts: 707
Joined: Tue Mar 25, 2008 5:02 pm

Re: generating a bibliography style

Post by kaiserkarl13 »

You can always edit the bst file manually. For example, one of my bst files has a line "series emphasize *" under format.book.crossref and some other things that probably tweak the formatting. Tinkering with these lines (always make a backup!) may yield the solution you desire.
benti
Posts: 42
Joined: Fri Mar 06, 2009 4:51 pm

Re: generating a bibliography style

Post by benti »

So this is not an option that can be manipulated using makebst or re-running the batch job? Bummer.

You know of an intelligible introduction into the syntax of .bst files? Since it's not tex, and I am unfamiliar with programming languages, I have difficulty figuring out how it works, what is correct syntax, etc.

thanks!
kaiserkarl13
Posts: 707
Joined: Tue Mar 25, 2008 5:02 pm

Re: generating a bibliography style

Post by kaiserkarl13 »

I'm actually looking for such a reference right now (that is, a good introduction to the BibTeX programming language).

It MIGHT be possible to do what you're looking to do using makebst; I'd have to go through and tinker a while.

One tip: you can edit the .dbj file (commenting out lines and uncommenting them again) and rerun LaTeX on that file to regenerate the .bst file. This is typically faster than rerunning "latex makebst" every time, as you only have to change the line you want to tinker with.

Good luck!
User avatar
gmedina
Posts: 2313
Joined: Wed Jul 11, 2007 11:45 pm

generating a bibliography style

Post by gmedina »

kaiserkarl13 wrote:I'm actually looking for such a reference right now (that is, a good introduction to the BibTeX programming language)...
Chapter 4 "Bibliography style (.bst) files", of Nicolas Markey's Tame the BeaST document contains a good introduction.
1,1,2,3,5,8,13,21,34,55,89,144,233,...
fr33sh1
Posts: 5
Joined: Tue Jul 21, 2009 5:35 pm

generating a bibliography style

Post by fr33sh1 »

I am fighting with my style at the moment and I found this on ctan:
ftp://ftp.gust.org.pl/TeX/biblio/bibtex/contrib/doc
Post Reply