%BibTeX标准书目样式“普通”%BibTeX 0.99a或更高版本的0.99a版本,LaTeX 2.09版本。%版权所有(C)1985,保留所有权利。%只有在以下情况下,才授权复制此文件%(1)您绝对没有更改您的副本,包括姓名,或%(2)如果您确实进行了更改,请将其命名为%btxbst.doc、plain.bst、unstart.bst、alpha.bst和abbrv.bst。%此限制有助于确保所有标准样式相同。%文件btxbst.doc包含此样式的文档。% ... 嗯,有点像。这种书目风格就像“普通”,%除了“key”字段中定义的内容出现%在条目前的括号中(而不是数字)。A行%也会在括号键之后跳过。我更改了output.bitem%这样做。%埃里克·巴赫1989年7月12日。% 5/27/90%更改了“article”函数,使日志%音量以粗体显示。(增加了一个新的“粗体”功能%来解决这个问题。)% 7/21/91%修复了“article”函数,使其出现%J.不可撤销。研究{\bf 17}(1989),333-334。%为此,必须:%删除format.vol.num.pages%添加函数format.year.parens%%更改了格式.bvolume,使其表示书籍为“Vol.”,而不是“volume”。%2012年11月1日C.Caldwell%我注释掉了使用键的预排序,返回到标准作者排序%(其他人已经将“key”字段改回了数字)%我还反复添加%cc%以注释掉“new.block”s(这样做是为了得到逗号,%而不是作者和标题等字段之间的句点。入口{地址作者书名版本编辑如何发布机构杂志钥匙笔记组织纸屑出版商学校系列标题类型网址体积}{}{标签}整数{output.state before.all-mid.sentence-after.sentence-after.block}函数{init.state.consts}{#0'之前。全部:=#1'中间间距:=#签署后2':=#块后3':=}字符串{st}函数{output.nonnull}{的:=输出状态中间值={“,”*写$}{块后的输出状态={添加.period$写入$换行符$“\newblock”写入$}{output.state before.all之前的状态='写入${添加句点$“”*写入$}如果$}如果$mid.sentence的输出状态:=}如果$}功能{输出}{重复的$为空$'弹出$'输出不完整如果$}功能{output.check}{时间:=重复$empty${pop$“empty”t*“in”*cite$*warning$}'输出不完整如果$}函数{output.bibitem}{换行$“\bibitem{”写入$引用$write$“}”写入$换行符$""before.all'输出状态:=}功能{fin.entry}{添加周期$写入$换行符$}功能{new.block}{output.state before.all之前的状态='跳过${after.block'输出状态:=}如果$}函数{new.spection}{块后的输出状态='跳过${output.state before.all之前的状态='跳过${after.sentence的输出状态:=}如果$}如果$}功能{not}{ { #0 }{#1}如果$}函数{和}{'跳过${弹出$#0}如果$}函数{或}{{pop$1}'跳过$如果$}函数{new.block.checka}{空$'跳过$'新建块如果$}函数{new.block.checkb}{空$掉期$空$'跳过$'新建块如果$}函数{new.scent.checka}{空$'跳过$'新的.sentence如果$}函数{new.scent.checkb}{空$掉期$空$'跳过$'新的.sentence如果$}FUNCTION{字段.或.空}{重复的$为空${pop$“”}'跳过$如果$}函数{粗体}%新建!{重复$empty${弹出$“”}{“{\bf”交换$*“}”*}如果$}功能{强调}{重复的$为空${弹出$“”}{“{\em”交换$*“}”*}如果$}功能{打字机}{重复的$为空${弹出$“”}{“\verb!”交换$*“!”*}如果$}整数{nameptr-namesleft-numnames}功能{format.names}{的:=#1'姓名识别码:=s num.names$'个名称:=numnames的namesleft:={namesleft#0>}{s nameptr“{ff~}{vv~}{ll}{,jj}”格式。名称$'t:=名称ptr#1>{namesleft#1>{“,”*t*}{名称#2>{ "," * }'跳过$如果$t“其他”={“等人”*}{“和”*t*}如果$}如果$}不要如果$nameptr#1+“nameptr:=namesleft#1-“namesleft:=}同时$}函数{format.authors}{作者为空${ "" }{作者格式.names}如果$}功能{format.editors}{编辑器为空${ "" }{编辑器格式.names编辑器编号名称$#1>{“,编辑器”*}{“,编辑器”*}如果$}如果$}功能{format.title}{标题为空${ "" }{标题“t”更改.case$}如果$}功能{n.dashify}{时间:=""{t空$not}{t#1#1子字符串$“-”={t#1#2子字符串$“--”=不{ "--" *t#2全局.max$substring$'t:=}{{t#1#1子串$“-”=}{ "-" *t#2全局.max$substring$'t:=}同时$}如果$}{t#1#1子字符串$*t#2全局.max$substring$'t:=}如果$}同时$}功能{format.date}{空年份${月为空${ "" }{“有一个月但没有一年”引述$警告$}如果$}{月份为空$'年{月“”*年*}如果$}如果$}%新的!函数{format.year.parens}{空年份${引用$*警告“没有年份”$}{“(”年“)”**}如果$}功能{format.btitle}{标题强调}函数{tie.or.space.connect}{重复的$text.length$#3<{ "~" }{ " " }如果$掉期美元**}函数{要么.要么.check}{空$'弹出${“引用$*警告$}”中的“不能同时使用”交换$*“字段如果$}功能{format.bvolume}{卷为空${ "" }{%“卷”卷tie.or.space.connect“卷”卷tie.or.space.connect系列为空$'跳过${“of”*系列强调*}如果$“体积和数量”编号或检查}如果$}功能{format.number.series}{卷为空${数字为空${系列字段.or.null}{输出状态中间值={“数字”}{“数字”}如果$编号tie.or.space.connect序列为空${“有数字但没有序列”引用$*warning$}{“in”*系列*}如果$}如果$}{ "" }如果$}功能{format.edition}{版本为空${ "" }{输出状态中间值={版本“l”更改.case$“edition”*}{版本“t”更改.case$“edition”*}如果$}如果$}整数{多结果}功能{multi.page.check}{时间:=#0'多结果:={多结果不t空$否}{t#1#1子串$重复$“-”=交换$duplicate$“,”=掉期$“+”=或或{#1'多结果:=}{t#2全局.max$子字符串$'t:=}如果$}同时$多结果}功能{format.pages}{页面为空${ "" }{多页.page.check{“pp.”页n.dashify tie.or.space.connect}{“p.”页面tie.or.space.connect}如果$}如果$}功能{format.vol.num}{粗体字段.or.nullnumber为空$'跳过${“(”数字*“)”**卷为空${“有数字,但没有卷”引用$*警告$}'跳过$如果$}如果$}%功能{format.vol.num.pages}%{卷字段.or.null%number为空$%'跳过$%{“(”数字*“)”**%卷为空$%{“有数字,但没有卷”引用$*警告$}%'跳过$%如果$% }%如果$%页面为空$%'跳过$%{重复$empty$%{pop$format.pages}%{“:”*pages n.dashify*}%如果$% }%如果$% }功能{format.chapter.pages}{章节为空$'格式页面{键入空${“章节”}{键入“l”change.case$}如果$章节tie.or.space.connect页面为空$'跳过${“,”*format.pages*}如果$}如果$}函数{format.in.ed.booktitle}{书名为空${ "" }{编辑器为空${“In”书名强调*}{“在”format.editors*“中,”*书名强调*}如果$}如果$}函数{empty.misc.check}{作者为空$title为空$howpublished为空$月为空$年为空$票据为空$和和和和键为空$not和{“所有相关字段都为空”引用$*warning$}'跳过$如果$}功能{format.thesia.type}{类型为空$'跳过${弹出$键入“t”change.case$}如果$}功能{format.tr.number}{键入空${“技术报告”}'类型如果$number为空${“t”更改.case$}{编号tie.or.space.connect}如果$}函数{format.article.crosref}{键为空${日志为空${“需要密钥或日志以进行”引用$*“以进行交叉引用”*crossref*警告$""}{“在{\em”日志*“\/}”*}如果$}{“In”键*}如果$“\cite{”*crossref*“}”*}功能{format.crosref.editor}{编辑器#1“{vv~}{ll}”格式名称$编辑器num.names$duplicate$#2 >{pop$“等人”*}{ #2 <'跳过${编辑器#2“{ff}{vv}{ll}{jj}”格式.name$“其他”={“等人”*}{“和”*editor#2“{vv~}{ll}”格式。名称$*}如果$}如果$}如果$}函数{format.book.crossref}{卷为空${“cite$*”的交叉引用中的“*crossref*警告”为空$“输入”}{“卷”卷tie.or.space.connect“第个,共个”*}如果$编辑器为空$编辑字段.or.null作者字段.or_null={键为空${序列为空${“需要编辑器、键或序列以“引用$*”进行交叉引用”*crossref*警告$"" *}{“{\em”*series*“\/}”*}如果$}{键*}如果$}{format.crossref.editor格式*}如果$“\cite{”*crossref*“}”*}函数{format.incoll.inproc.crossref}{编辑器为空$编辑字段.or.null作者字段.or_null={键为空${书名为空${“需要编辑器、键或书名才能将“引用$*”用于交叉引用”*crossref*警告$""}{“在{\em”书名*“\/}”*}如果$}{“In”键*}如果$}{“In”格式.crossref.editor*}如果$“\cite{”*crossref*“}”*}功能{文章}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“title”输出检查%抄送%新块缺少交叉引用${期刊强调“”*%应该检查日志是否真的存在!!format.vol.num“”*format.year.parens**“年”输出检查页码n.dashify输出}{format.article.crossref输出不完整format.pages输出}如果$新建块票据输出fin.条目}函数{eearticle}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查%抄送%new.block缺少交叉引用${期刊强调“”*%应该检查日志是否实际存在!!format.vol.num“”*format.year.parens**“年”输出检查页码n.dashify输出url打字机输出}{format.article.crossref输出不完整format.pages输出}如果$新建块票据输出fin.条目}功能{articlenovol}%BEATCS等杂志上的文章%数量而非卷{输出Bitemformat.authors“author”输出检查%抄送%新块format.title“title”输出检查%抄送%new.block缺少交叉引用${日记账强调输出“No.\”数字*输出“(”format.date*“)”*输出页码n.dashify输出}{format.article.crossref输出不完整format.pages输出}如果$新建块票据输出fin.条目}功能{心脏}%这是一种没有页码的电子文章样式{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查%抄送%new.block缺少交叉引用${期刊强调“”*%应该检查日志是否实际存在!!format.vol.num“”*format.year.parens**“年”输出检查papernum“(电子)”*输出url打字机输出}{format.article.crossref输出不完整format.pages输出}如果$新建块票据输出fin.条目}功能{book}{输出Bitem作者为空${format.editors“作者和编辑器”output.check}{format.authors输出非空缺少交叉引用${“作者和编辑”编辑器或者.or.check}'跳过$如果$}如果$%抄送%new.blockformat.btitle“标题”输出检查缺少交叉引用${format.bvolume输出%抄送%new.blockformat.number.series输出%抄送%new.sentencepublisher“publisher”输出检查地址输出}{新建块format.book.crossref输出不完整}如果$format.edition输出format.date“年”输出检查新建块票据输出fin.条目}功能{小册子}{输出Bitemformat.authors输出%抄送%new.blockformat.title“标题”输出检查如何发布地址new.block.checkb如何发布输出地址输出format.date输出新建块票据输出fin.条目}功能{inbok}{输出Bitem作者为空${format.editors“author and editor”输出检查}{format.authors输出非空缺少交叉引用${“作者和编辑”编辑器或者.or.check}'跳过$如果$}如果$%抄送%new.blockformat.btitle“标题”输出检查缺少交叉引用${format.bvolume输出format.chapter.pages“章节和页面”output.check新建块format.number.series输出新协议publisher“publisher”输出检查地址输出}{format.chapter.pages“章节和页面”输出检查新建块format.book.crossref输出不完整}如果$format.edition输出format.date“年”输出检查新建块票据输出fin.条目}函数{incollection}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查新建块缺少交叉引用${format.in.ed.booktitle“书名”输出检查format.b卷输出format.number.series输出format.chapter.pages输出新协议publisher“publisher”输出检查地址输出format.edition输出format.date“年”输出检查}{format.incoll.inproc.crossref输出非空format.chapter.pages输出}如果$新建块票据输出fin.条目}功能{进行中}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查%抄送%new.block缺少交叉引用${format.in.ed.booktitle“书名”输出检查format.b卷输出format.number.series输出format.pages输出地址为空${组织发布者new.sentence.checkb组织输出出版商输出format.date“年”输出检查}{地址输出不完整format.date“年”输出检查新协议组织输出出版商输出}如果$}{format.incoll.inproc.crossref输出不完整format.pages输出}如果$新建块票据输出fin.条目}功能{会议}{正在处理中}功能{手动}{输出Bitem作者为空${组织为空$'跳过${组织输出不完整地址输出}如果$}{format.authors输出.nonnull}如果$%抄送%new.blockformat.btitle“标题”输出检查作者为空${组织为空${地址new.block.checka地址输出}'跳过$如果$}{组织地址new.block.checkb组织输出地址输出}如果$format.edition输出format.date输出新建块票据输出fin.条目}功能{大师感觉}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查%抄送%new.block“硕士论文”格式.thesis.type output.nonnull学校“学校”输出检查地址输出format.date“年”输出检查新块纸币输出fin.条目}功能{misc}{输出.bibitemformat.authors输出%抄送%title howpublished new.block.checkb格式标题输出%抄送%howpublished new.block.checka如何发布输出format.date输出新建块票据输出fin.条目清空.misc.check}功能{phdthesis}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.btitle“标题”输出检查%抄送%new.block“博士论文”格式.thesis.type output.nonnull学校“学校”输出检查地址输出format.date“年”输出检查新建块票据输出fin.条目}功能{程序}{输出Bitem编辑器为空${组织输出}{format.editors输出.nonnull}如果$%抄送%new.blockformat.btitle“标题”输出检查format.b卷输出format.number.series输出地址为空${编辑器为空${出版商new.sentence.checka}{组织发布者new.sentence.checkb组织输出}如果$出版商输出format.date“年”输出检查}{地址输出不完整format.date“年”输出检查新协议编辑器为空$'跳过${组织输出}如果$出版商输出}如果$新建块票据输出fin.条目}功能{技术报告}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查%抄送%new.blockformat.tr.number输出不完整机构“机构”输出检查地址输出format.date“年”输出检查新建块票据输出fin.条目}函数{未发布}{输出Bitemformat.authors“author”输出检查%抄送%new.blockformat.title“标题”输出检查新块note“note”输出检查format.date输出fin.条目}函数{default.type}{misc}MACRO{jan}{“一月”}MACRO{2月}{“2月”}MACRO{mar}{“三月”}MACRO{apr}{“四月”}MACRO{may}{“五月”}MACRO{jun}{“六月”}MACRO{jul}{“七月”}MACRO{aug}{“八月”}MACRO{sep}{“九月”}MACRO{oct}{“十月”}MACRO(十一月)MACRO{dec}{“十二月”}MACRO{acmcs}{“ACM计算调查”}MACRO{acta}{“信息学报”}MACRO{cacm}{“ACM的通信”}MACRO{ibmjrd}{“IBM研究与开发杂志”}MACRO{ibmsj}{“IBM系统杂志”}MACRO{ieeese}{“IEEE软件工程汇刊”}MACRO{ieeetc}{“IEEE计算机事务”}宏{ieeetcad}{“IEEE集成电路计算机辅助设计汇刊”}MACRO{ipl}{“信息处理信件”}MACRO{jacm}{“ACM杂志”}MACRO{jcss}{《计算机与系统科学杂志》}MACRO{scp}{“计算机编程科学”}MACRO{sicomp}{“SIAM计算杂志”}MACRO{tocs}{“计算机系统上的ACM事务”}MACRO{tods}{“数据库系统上的ACM事务”}MACRO{tog}{“ACM图形事务”}MACRO{toms}{“ACM数学软件交易”}MACRO{toois}{“办公信息系统上的ACM事务”}MACRO{toplas}{“编程语言和系统的ACM事务”}MACRO{tcs}{“理论计算机科学”}阅读功能{sortify}{净化$“l”更改案例$}整数{len}函数{chop.word}{的:='长度:=s#1 len子字符串$={s len#1+global.max$substring$}如果$}函数{sort.format.names}{的:=#1'姓名识别码:=""s num.names$'个名称:=numnames的namesleft:={namesleft#0>}{nameptr#1>{ " " * }'跳过$如果$s nameptr“{vv{}}{ll{}}}{ff{}{jj{}}”格式。名称$'t:=nameptr-numnames=t“其他”=和{“等人”*}{t排序*}如果$nameptr#1+“nameptr:=namesleft#1-“namesleft:=}同时$}功能{sort.format.title}{时间:=“A”#2“安”#3“The”#4 t排骨单词斩首词斩首词分类#1个全局.max$substring$}函数{author.sort}{作者为空${密钥为空${“要排序,需要作者或键入”引用$*警告$""}{密钥排序}如果$}{作者排序.format.names}如果$}函数{author.editor.sort}{作者为空${编辑器为空${键为空${“排序、需要作者、编辑或键入”引用$*警告$""}{密钥排序}如果$}{编辑器sort.format.names}如果$}{作者排序.format.names}如果$}功能{author.organization.sort}{作者为空${组织为空${键为空${“排序、需要作者、组织或键入”引用$*警告$""}{密钥排序}如果$}{“The”#4组织chop.word sortify}如果$}{作者排序.format.names}如果$}功能{editor.organization.sort}{编辑器为空${组织为空${键为空${“排序、需要编辑器、组织或键入”引用$*警告$""}{密钥排序}如果$}{“The”#4组织chop.word sortify}如果$}{编辑器排序格式名称}如果$}功能{预排序}{键入$“book”=键入$“收件箱”='作者.编辑.排序{type$“程序”='编辑.organization.sort{键入$“手动”='author.organization.sort'作者.sort如果$}如果$}如果$" "*年份字段或全部排序*" "*标题字段.or.null排序.格式.标题*#1个条目.max$substring$'sort.key$:=}%功能{预排序}%{引用$sortify%'sort.key$:=%}ITERATE{预排序}分拣字符串{最长标签}整数{number.label longest.label.width}函数{initialize.longth.label}{“”最长标签:=#1'编号标签:=#0'最长标签宽度:=}函数{最长的.label.pass}{number.label int.to.str$标签:=number.label#1+'编号标签:=标签宽度$longest.label.width>{标签'最长标签:=标签宽度$'最长标签宽度:=}'跳过$如果$}执行{initialize.longer.label}ITERATE{最长的.label.pass}函数{begin.bib}{序言$为空$'跳过${序言$write$newline$}如果$“\开始{theobjectory}{”longest.label*“}”“*写$newline$}执行{begin.bib}执行{init.state.consts}ITERATE{调用.键入$}功能{end.bib}{换行$“\end{theobjectory}”写$newline$}执行{end.bib}