如何创建自定义样式ijer.bst

如何创建自定义样式ijer.bst

我正在写一篇论文,我想提交的期刊要求以下风格:

  1. Jin WG, Cheung YK, Zienkiewicz OC。Kirchhoff 板弯曲问题的 Trefftz 方法。国际工程数值方法杂志 1991;36:765-781。
  2. Reismann H. 弹性板:理论与应用。Wiley:纽约,1988;1-10。
  3. Oestreicher, N.,早期乳腺癌患者辅助化疗的费用,Cancer 2005;104(10),第 2054-2062 页,DOI:10.1002/cncr.21464。

参考文献需要按文内引用(来源出现的顺序)排序。我知道使用 unsrt 样式可以按引用排序,使用 acm 样式,参考文献以作者姓氏开头,然后是名字的首字母。我不知道如何将这两者结合起来才能得到我想要的。任何建议都将不胜感激。

答案1

您没有提到期刊名称,但《国际能源研究杂志》(Wiley)的作者说明与您的描述相符。这些说明并不完全一致,但根据该期刊上以前发表的一些文章的格式判断,以下输出应该没问题。

示例代码的输出

DOI 格式为小写,如手册并且在之前的文章中也见过。请注意,我还添加了一个inproceedings条目作为示例。在以下源代码中,\@biblabel被重新定义为产生一个点而不是括号

\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@inproceedings{veyo1998,
  title={Demonstrations based on {Westinghouse's} prototype commercial {AES} design},
  author={Veyo, S E and Forbes, C},
  booktitle={Proceedings of the Third European Solid Oxide Fuel Cell Forum},
  pages={79--86},
  year={1998}
}
@inbook{reismann1988,
  author={Reismann, Herbert},
  title={Elastic Plates: Theory and Application},
  publisher={Wiley},
  year={1988},
  address={New York},
  pages={1--10},
}
@article{jin1993,
  title={Trefftz method for {Kirchhoff} plate bending problems},
  author={Jin, W G and Cheung, Y K and Zienkiewicz, O C},
  journal={International Journal for Numerical Methods in Engineering},
  volume={36},
  number={5},
  pages={765--781},
  year={1993},
}
@article{oestreicher2005,
  title={The cost of adjuvant chemotherapy in patients with early-stage
    breast carcinoma},
  author={Oestreicher, Nina and Ramsey, Scott D and
    McCune, Jeannine S and Linden, Hannah M and Veenstra, David L},
  journal={Cancer},
  volume={104},
  number={10},
  pages={2054--2062},
  year={2005},
  doi={10.1002/cncr.21464},
}
\end{filecontents}
\makeatletter
\renewcommand\@biblabel[1]{#1.}
\makeatother
\begin{document}
\bibliographystyle{ijer}
\cite{jin1993} \cite{reismann1988} \cite{oestreicher2005} \cite{veyo1998}
\bibliography{\jobname}
\end{document}

在文档中,引用\bibliographystyle{ijer}ijer.bst定制围兜(makebst)并手动编辑以更好地满足要求。

如何创建自定义样式ijer.bst

  1. 使用 编译驱动程序文件(如下)tex,即tex ijer.dbj如果文件名为ijer.dbj。这将生成 的第一个版本ijer.bst
  2. 应用补丁文件(见下文)对第一个版本进行修改,ijer.bst以生成第二个最终版本。如果命令patch不可用,可以很容易地手动应用修改:@@标题指示以下更改的位置,其中+表示新行,-表示删除的行。

驱动文件

%% Driver file to produce ijer.bst from merlin.mbs
%% Generated with makebst, version 4.1 (2003/09/08)
%% Produced on 2014/09/01 at 0:48
%% Edited manually on 2014/09/04
%% 
\input docstrip

\preamble
----------------------------------------
*** International Journal of Energy Research ***

\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)
    %: (def) Editor names NOT 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{ijer.bst}{\MBopts}}
\endbatchfile

补丁文件

--- ijer.bst    2014-09-04 16:29:02.000000000 +0300
+++ new/ijer.bst    2014-09-05 00:22:31.000000000 +0300
@@ -1,6 +1,6 @@
 %%
 %% This is file `ijer.bst',
-%% generated with the docstrip utility.
+%% generated with the docstrip utility AND further modified.
 %%
 %% The original source files were:
 %%
@@ -932,7 +932,7 @@
         { t *
           address empty$
             'skip$
-            { ", " * address "address" bibinfo.check * }
+            { ": " * address "address" bibinfo.check * }
           if$
         }
       if$
@@ -1038,18 +1038,14 @@
   if$
   new.block
   format.btitle "title" output.check
+  new.sentence
   crossref missing$
     {
       format.publisher.address output
       format.bvolume output
-      format.chapter.pages "chapter and pages" output.check
-      new.block
       format.number.series output
-      new.sentence
     }
     {
-      format.chapter.pages "chapter and pages" output.check
-      new.block
       format.book.crossref output.nonnull
     }
   if$
@@ -1060,6 +1056,8 @@
   if$
   format.date "year" output.check
   date.block
+  format.chapter.pages "chapter and pages" output.check
+  new.block
   format.doi output
   new.block
   format.note output
@@ -1101,6 +1099,11 @@
   new.block
   crossref missing$
     { format.in.ed.booktitle "booktitle" output.check
+      add.blank
+      format.date "year" output.check
+      date.block
+      add.blank
+      format.pages "pages" output.check
       new.sentence
       publisher empty$
         { format.organization.address output }
@@ -1114,12 +1117,12 @@
       format.issn output
     }
     { format.incoll.inproc.crossref output.nonnull
+      format.date "year" output.check
+      date.block
+      add.blank
+      format.pages "pages" output.check
     }
   if$
-  format.date "year" output.check
-  date.block
-  add.blank
-  format.pages "pages" output.check
   format.doi output
   new.block
   format.note output

相关内容