summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/uestcthesis/source
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/uestcthesis/source')
-rw-r--r--Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.dtx3289
-rw-r--r--Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.ins10
2 files changed, 3280 insertions, 19 deletions
diff --git a/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.dtx b/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.dtx
index 7a58d0cc61c..12cfabe2d73 100644
--- a/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.dtx
+++ b/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.dtx
@@ -17,7 +17,7 @@
% The Current Maintainer of this work is Shi Fujun <shifujun@foxmail.com>.
%
% This work consists of the files uestcthesis.dtx, uestcthesis.ins and
-% GBT7714-2005NLang-UESTC.bst.
+% uestcthesis.bst.
% and the derived file uestcthesis.cls.
% Other files in this work's package are belongs to the respective owners.
%
@@ -30,11 +30,23 @@
%<class>\NeedsTeXFormat{LaTeX2e}[2011/06/27]
%<class>\ProvidesClass{uestcthesis}
%<*class>
- [2013/01/22 v0.21 UESTC thesis class]
+ [2013/02/12 v0.3 UESTC thesis class]
%</class>
%<*driver>
\documentclass{ltxdoc}
-\usepackage[UTF8]{ctex}
+\usepackage[hyperref,UTF8]{ctex}
+\usepackage{cmap}
+\usepackage[pdftex,unicode,
+ bookmarksnumbered=true,
+ bookmarksopen=true,
+ colorlinks=false,
+ pdfborder={0 0 1},
+ citecolor=blue,
+ linkcolor=red,
+ anchorcolor=green,
+ urlcolor=blue,
+ breaklinks=true
+ ]{hyperref}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
@@ -63,8 +75,6 @@
% Right brace \} Tilde \~}
%
%
-% \changes{v0.21}{2013/01/22}{将模板重构为DocStrip格式}
-%
% \GetFileInfo{uestcthesis.dtx}
%
% \DoNotIndex{\newcommand,\newenvironment}
@@ -75,8 +85,12 @@
% \author{时富军 \\ \texttt{shifujun@foxmail.com}}
%
% \maketitle
+% \iffalse
+%<*class>
+% \fi
+% \section{文类源代码}
+% \changes{v0.21}{2013/01/22}{将模板重构为DocStrip格式}
%
-% \section{源代码}
% \subsection{中文支持}
%继承ctexbook文类,并调用了如下功能的选项:\par
%cs4size:使用小四字号为缺省字体大小。\par
@@ -586,6 +600,7 @@
% \begin{macrocode}
\renewcommand{\date}[3]{
\renewcommand{\@date}{#1年#2月#3日}
+\newcommand{\@year}{#1}%用于pdf元信息
}
% \end{macrocode}
% \end{macro}
@@ -1002,6 +1017,16 @@
\ifthenelse{\equal{#4}{}}{}{,#4}
\ifthenelse{\equal{#5}{}}{}{,#5}
}
+\ifthenelse{\equal{#5}{}}{
+\ifthenelse{\equal{#4}{}}{
+\ifthenelse{\equal{#3}{}}{
+\def\@pdfckeywords{#1, #2, 关键字应3-5个}
+}{\def\@pdfckeywords{#1, #2, #3}}
+}{\def\@pdfckeywords{#1, #2, #3, #4}}
+}{\def\@pdfckeywords{#1, #2, #3, #4, #5}}
+\hypersetup{%
+pdfkeywords={\@pdfckeywords}%在pdf元信息中加入关键字
+}
% \end{macrocode}
% \end{macro}
% \begin{macrocode}
@@ -1105,8 +1130,8 @@
% 根据是否为研究生学位,选择是否载入multibib宏包。
% \begin{macrocode}
\RequirePackage[numbers,sort&compress]{natbib}
-\RequirePackage{hypernat}
-%参考文献宏包。调用natbib和hypernat这两个宏包和选择的选项是GBT7714-2005NLang.bst的说明中指定的。
+%参考文献宏包。调用natbib,选项是GBT7714-2005NLang.bst的说明中指定的。
+%hypernat宏包已经不用了。
\newcommand{\citeup}[1]{\textsuperscript{\cite{#1}}}
%自定义命令:插入右上角角标形式的参考文献引用。
@@ -1116,7 +1141,7 @@
\ifblank{\multibibflag@uestcthesis}{}{
\RequirePackage[resetlabels]{multibib}
\newcites{publications}{NULL}
-\bibliographystylepublications{GBT7714-2005NLang-UESTC}
+\bibliographystylepublications{uestcthesis}
\nocitepublications{*}
% \end{macrocode}
%重定义|\bibliographypublications|,去掉|\bibliographypublications|命令中原有的
@@ -1132,6 +1157,7 @@
% 设置pdf文件中的超链接和书签
% \begin{macrocode}
\RequirePackage{cmap}%pdflatex编译时,可以生成可复制、粘贴的中文PDF文档
+\RequirePackage{hyperxmp}%在pdf中加入XMP高级元信息
\RequirePackage[pdftex,unicode,
bookmarksnumbered=true,
bookmarksopen=true,
@@ -1141,8 +1167,20 @@
linkcolor=red,
anchorcolor=green,
urlcolor=blue,
- breaklinks=true
- ]{hyperref}
+ breaklinks=true,
+ pdfdisplaydoctitle=true
+ ]{hyperref}
+\input{contents/titlepage.tex}%pdf元信息中需要封面的部分内容,所以在此处导入封面信息
+\hypersetup{%
+pdftitle={\@title},
+pdfauthor={\@author},
+pdfcopyright={Copyright (C) \@year, \@author},
+pdfsubject={\thesisname@degree},
+pdflicenseurl={http://121.49.98.197/tasi/doc/fj_dcx.doc},
+pdfcreator={PDFLaTeX with uestcthesis class},
+pdflang={zh-CN},
+pdfpagelayout={TwoPageRight}
+}
% \end{macrocode}
% \subsection{其他设置}
% 根据hyperref的文档:应该先调用hyperref,后调用subfigure,以解决兼容性问题。
@@ -1155,6 +1193,10 @@
\RequirePackage{enumerate}
% \end{macrocode}
%
+%排版源代码所需宏包
+% \begin{macrocode}
+\RequirePackage{color,marvosym}
+% \end{macrocode}
% \subsection{主要符号表设置}
%设置术语表宏包供主要符号表使用
% \begin{macrocode}
@@ -1186,7 +1228,6 @@
\AtBeginDocument{%插入到论文内容的最前面。
\begin{CJK}{UTF8}{rm}%中文支持环境,此处内容不受ctexbook文类影响,所以必须手动加这个环境。
-\input{contents/titlepage.tex}%导入封面信息
\maketitle%生成并插入封面
\Cabstractmatter%设置中文摘要版式
\include{contents/Cabstract}%插入中文摘要
@@ -1215,8 +1256,8 @@
\addcontentsline{toc}{chapter}{致\enspace 谢}%将致谢编入目录
\input{contents/acknowledgements.tex}%插入致谢内容
\newpage
-\bibliographystyle{GBT7714-2005NLang-UESTC}
-%载入参考文献样式文件GBT7714-2005NLang-UESTC.bst。此参考文献样式只在GBT7714-2005NLang.bst的基础上改变了参考文献条目的行距,以符合电子科技大学的要求。修改处位于GBT7714-2005NLang-UESTC.bst文件的3542行。另外将英文作者名由全大写改为首字母大写。
+\bibliographystyle{uestcthesis}
+%载入参考文献样式文件uestcthesis.bst。此参考文献样式只在GBT7714-2005NLang.bst的基础上改变了参考文献条目的行距,以符合电子科技大学的要求。修改处位于uestcthesis.bst文件的3542行。另外将英文作者名由全大写改为首字母大写。
\phantomsection%手动添加目录项之前需要这个命令,用以更新目录超链接的跳转页码。
\addcontentsline{toc}{chapter}{参考文献}%将参考文献编入目录
\nocite{*}%若将此命令屏蔽掉,则未引用的文献不会出现在文后的参考文献列表中。
@@ -1244,5 +1285,3223 @@
}}{}}
\clearpage\end{CJK}}
% \end{macrocode}
-% \StopEventually{\PrintChanges\PrintIndex}
+% \iffalse
+%</class>
+% \fi
+% \iffalse
+%<*bst>
+% \fi
+% \section{参考文献样式源代码}
+% \changes{v0.3}{2013/2/12}{修复了参考文献模板bst文件中原有的问题,
+% 不再需要其他工具替换bbl中的错误。即参考文献中的“|\\.|”修正为“|\\|”。}
+% \begin{macrocode}
+ %本文件基于吴凯制作的GBT7714-2005NLang.bst(1 Beta 2 测试版2012年9月20日)修改而成。
+ %根据GBT7714-2005NLang.bst中copyright的要求,将文件名修改成uestcthesis.bst。
+ %对吴凯的杰出工作表示感谢!
+
+ENTRY
+ { address
+ author
+ booktitle
+ chapter
+ edition
+ editor
+ howpublished
+ institution
+ journal
+ key
+ month
+ note
+ number
+ organization
+ pages
+ publisher
+ school
+ series
+ title
+ type
+ volume
+ year
+ url
+ TypeofLit %新加入:文献类型和标志代码
+ normalauthor %不改变大小写的作者
+ normaleditor %不改变大小写的编者
+ translator %新加入:翻译者
+ date %日期,公告日期,公开日期
+ modifydate %修改日期
+ citedate %引用日期
+ patentid %专利号
+ country %国家(主要用于专利中)
+ miscyear %其它类中用于输出年份
+ startyear %起始年
+ startvolume %起始卷
+ startnumber %起始期
+ endyear %终止年
+ endvolume %终止卷
+ endnumber %终止期
+ language %默认是英文文献,非空则表明是中文文献
+ }
+ {}
+ { label extra.label sort.label short.list }
+
+INTEGERS { output.state before.all mid.sentence after.sentence after.block }
+FUNCTION {format.url}
+{ url empty$
+ { "" }
+ { new.block
+ "\url{" url * "}" * }
+ if$
+}
+FUNCTION {init.state.consts}
+{ #0 'before.all :=
+ #1 'mid.sentence :=
+ #2 'after.sentence :=
+ #3 'after.block :=
+}
+
+STRINGS { s t }
+
+
+
+FUNCTION {output.nonnull}
+{ 's :=
+ output.state mid.sentence =
+ { ", " * write$ }
+ { output.state after.block =
+ { add.period$ write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state before.all =
+ 'write$
+ { add.period$ " " * write$ }
+ if$
+ }
+ if$
+ mid.sentence 'output.state :=
+ }
+ if$
+ s
+}
+
+
+FUNCTION {coutput.nonnull} %wk
+{ 's :=
+ output.state mid.sentence =
+ { "," * write$ } %
+ { output.state after.block =
+ { add.period$ write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state before.all =
+ 'write$
+ { add.period$ " " * write$ }
+ if$
+ }
+ if$
+ mid.sentence 'output.state :=
+ }
+ if$
+ s
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+ 'pop$
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {coutput} %wk
+{ duplicate$ empty$
+ 'pop$
+ 'coutput.nonnull
+ if$
+}
+
+FUNCTION {output.check}
+{ 't :=
+ duplicate$ empty$
+ { pop$ "empty " t * " in " * cite$ * warning$ }
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {coutput.check} %wk
+{ 't :=
+ duplicate$ empty$
+ { pop$ "empty " t * " in " * cite$ * warning$ }
+ 'coutput.nonnull
+ if$
+}
+
+FUNCTION {output.year.month.check}
+{ year empty$
+ { "empty year in " cite$ * warning$ }
+ { add.period$ write$
+ month empty$
+ { " " year * extra.label * "." *
+ after.sentence 'output.state :=
+ }
+ { " " year * extra.label * " (" * month * ")." *
+ after.sentence 'output.state :=
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {output.cyear.month.check} %wk
+{ year empty$
+ { "empty year in " cite$ * warning$ }
+ {write$
+ month empty$
+ {year %wk
+ after.sentence 'output.state :=
+ }
+ { "" year * extra.label * "(" * month * ")" * %wk
+ after.sentence 'output.state :=
+ }
+ if$
+ }
+ if$
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {output.modifydate.check}
+{modifydate
+}
+
+FUNCTION {output.citedate.check}
+{ year empty$
+ { "" }
+ { write$
+ "[" citedate * extra.label * "]" *
+ after.sentence 'output.state :=
+ }
+ if$
+}
+
+
+FUNCTION {output.year.check}
+{ year empty$
+ { "empty year in " cite$ * warning$ }
+ {miscyear empty$
+ {year}
+ {miscyear}
+ if$ %wk
+ }
+ if$
+ extra.label *
+}
+
+FUNCTION {output.cyear.check} %wk
+{ year empty$
+ { "empty year in " cite$ * warning$ }
+ {miscyear empty$
+ {year}
+ {miscyear}
+ if$ %wk
+ }
+ if$
+ extra.label *
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {output.continue.year.check} %wk
+{
+endyear empty$
+ {startyear empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {"" year * "" * }
+ if$
+ }
+ {"" startyear * "-" * }
+ if$
+ }
+{startyear empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {"" year * "" * }
+ if$
+ }
+ {"" startyear * "-" *
+ "" endyear * "" * *
+ }
+ if$
+}
+if$
+}
+
+
+FUNCTION {output.continue.cyear.check} %wk
+{
+endyear empty$
+ {startyear empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {"" year * "" * }
+ if$
+ }
+ {"" startyear * "-" * }
+ if$
+ }
+{startyear empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {"" year * "" * }
+ if$
+ }
+ {"" startyear * "-" *
+ "" endyear * "" * *
+ }
+ if$
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {output.article.year.check}
+{month empty$
+{
+year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ }
+ if$
+}
+{
+TypeofLit empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ }
+ if$}
+
+{year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ "-" month * "" * *
+ }
+ if$
+}
+if$
+}
+if$
+}
+
+FUNCTION {output.carticle.year.check} %wk
+{month empty$
+{
+year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ }
+ if$
+}
+{
+TypeofLit empty$
+ {year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ }
+ if$}
+
+{year empty$
+ { "empty year in " cite$ * warning$ }
+ {year %wk
+ "-" month * "" * *
+ }
+ if$
+}
+if$
+}
+if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {output.bibitem}
+{ newline$
+ "\bibitem[" write$
+ label write$
+ "]{" write$
+ cite$ write$
+ "}" write$
+ newline$
+ ""
+ before.all 'output.state :=
+}
+
+FUNCTION {fin.entry}
+{ add.period$
+ write$
+ newline$
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+ 'skip$
+ { after.block 'output.state := }
+ if$
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block =
+ 'skip$
+ { output.state before.all =
+ 'skip$
+ { after.sentence 'output.state := }
+ if$
+ }
+ if$
+}
+
+FUNCTION {not}
+{ { #0 }
+ { #1 }
+ if$
+}
+
+FUNCTION {and}
+{ 'skip$
+ { pop$ #0 }
+ if$
+}
+
+FUNCTION {or}
+{ { pop$ #1 }
+ 'skip$
+ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+ swap$ empty$
+ and
+ 'skip$
+ 'new.block
+ if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+ { pop$ "" }
+ 'skip$
+ if$
+}
+
+FUNCTION {boldface}
+{ duplicate$ empty$
+ { pop$ "" }
+ { "{\bf " swap$ * "}" * }
+ if$
+}
+
+%FUNCTION {emphasize}
+%{ duplicate$ empty$
+% { pop$ "" }
+% { "{\em " swap$ * "}" * }
+% if$
+%}
+
+
+%%%%%%%%%%%%%%%%%%%
+Function{upcase}
+{ duplicate$ empty$
+ { pop$ "" }
+ { "u" change.case$ }
+ if$
+}
+%FUNCTION {bib.name.font}
+%{ upcase }
+%FUNCTION {bib.fname.font}
+%{ bib.name.font }
+%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {capitalize}
+{ "u" change.case$ "t" change.case$ }
+
+FUNCTION {format.names}
+{ 's :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ { s nameptr "{vv~}{ll}{ f{~}}{, jj}"
+ format.name$
+ remove.dots
+ 't :=
+ nameptr #1 >
+ {
+ nameptr #3
+ #1 + =
+ numnames #3
+ > and
+ { "others" 't :=
+ #1 'namesleft := }
+ 'skip$
+ if$
+ namesleft #1 >
+ { ", " * t * }
+ { numnames #2 >
+ { "" * }
+ 'skip$
+ if$
+ s nameptr "{ll}" format.name$ duplicate$ "others" =
+ { 't := }
+ { pop$ }
+ if$
+ t "others" =
+ {%bib.name.font %改为大写
+ ", et al" *
+ }
+ {", " * t * }
+ if$
+ }
+ if$
+ }
+ 't
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+%%%%%%%%%%%
+% t "others" = %改为大写
+% 'skip$ %改为大写
+% { bib.name.font } %改为大写
+% if$ %改为大写
+%%%%%%%%%%%
+}
+
+
+FUNCTION {format.cnames} %wk
+{ 's :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ { s nameptr "{vv~}{ll}{ f{~}}{ jj}" format.name$
+ remove.dots
+ 't :=
+ nameptr #1 >
+ {
+ nameptr #3
+ #1 + =
+ numnames #3
+ > and
+ { "others" 't :=
+ #1 'namesleft := }
+ 'skip$
+ if$
+ namesleft #1 >
+ { ", " * t * }
+ { numnames #2 >
+ { "" * }
+ 'skip$
+ if$
+ s nameptr "{ll}" format.name$ duplicate$ "others" =
+ { 't := }
+ { pop$ }
+ if$
+ t "others" =
+ { ",等" *
+ % bib.name.font %改为大写
+ }
+ {", " * t * }
+ if$
+ }
+ if$
+ }
+ 't
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+%%%%%%%%%%%
+% t "others" = %改为大写
+% 'skip$ %改为大写
+% { bib.name.font } %改为大写
+% if$ %改为大写
+%%%%%%%%%%%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%不加大写的名字
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {format.normal.names}
+{ 's :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ { s nameptr "{vv~}{ll}{ f{~}}{, jj}"
+ format.name$
+ remove.dots
+ 't :=
+ nameptr #1 >
+ {
+ nameptr #3
+ #1 + =
+ numnames #3
+ > and
+ { "others" 't :=
+ #1 'namesleft := }
+ 'skip$
+ if$
+ namesleft #1 >
+ { ", " * t * }
+ { numnames #2 >
+ { "" * }
+ 'skip$
+ if$
+ s nameptr "{ll}" format.name$ duplicate$ "others" =
+ { 't := }
+ { pop$ }
+ if$
+ t "others" =
+ { ", et al" * }
+ {", " * t * }
+ if$
+ }
+ if$
+ }
+ 't
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+}
+
+
+FUNCTION {format.normal.cnames} %wk
+{ 's :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ { s nameptr "{vv~}{ll}{ f{~}}{ jj}" format.name$
+ remove.dots
+ 't :=
+ nameptr #1 >
+ {
+ nameptr #3
+ #1 + =
+ numnames #3
+ > and
+ { "others" 't :=
+ #1 'namesleft := }
+ 'skip$
+ if$
+ namesleft #1 >
+ { ", " * t * }
+ { numnames #2 >
+ { "" * }
+ 'skip$
+ if$
+ s nameptr "{ll}" format.name$ duplicate$ "others" =
+ { 't := }
+ { pop$ }
+ if$
+ t "others" =
+ { ",等" * }
+ {", " * t * }
+ if$
+ }
+ if$
+ }
+ 't
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {format.authors}
+{ author empty$
+ { "" }
+ {normalauthor empty$
+ {author format.names }
+ {normalauthor format.normal.names}
+ if$
+}
+ if$
+}
+
+FUNCTION {format.cauthors} %wk
+{ author empty$
+ { "" }
+ {normalauthor empty$
+ {author format.cnames }
+ {normalauthor format.normal.cnames}
+ if$
+}
+ if$
+}
+
+FUNCTION {format.key}
+{ empty$
+ { key field.or.null }
+ { "" }
+ if$
+}
+
+FUNCTION {format.editors}
+{ editor empty$
+ { "" }
+ {normaleditor empty$
+ {editor format.names }
+ {normaleditor format.normal.names}
+ if$
+ editor num.names$ #1 > % Use ODWE abbrevs.
+ { "" * } % to avoid
+ { "" * } % ambiguity between
+ if$ % "editor" and
+ } % "edition".
+ if$
+}
+
+FUNCTION {format.ceditors} %wk 本函数
+{ editor empty$
+ { "" }
+ {
+ normaleditor empty$
+ {editor * "" * format.cnames }
+ {normaleditor * "" * format.normal.cnames}
+ if$
+ }
+ if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.title} % Nothing needs
+{ title empty$ % doing here in
+ { "" } % authordate1.bst
+ { title } % or
+ if$ % authordate3.bst.
+}
+
+FUNCTION {format.ctitle} %wk % Nothing needs
+{ title empty$ % doing here in
+ { "" } % authordate1.bst
+ {title} % or
+ if$ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+FUNCTION {format.article.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[J]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+
+
+FUNCTION {format.carticle.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[J]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.book.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[M]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+
+
+FUNCTION {format.cbook.title} %wk % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[M]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.misc.title} %wk % Nothing needs
+{
+patentid empty$
+ {%没有专利号应该是其它类型文献,直接标准输出
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+ }
+ {%有专利号
+ country empty$
+ {
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+"" patentid * "" * *
+ }
+ {%有专利号,有国家
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+
+ ":" country * "," * *
+ "" patentid * "" * *
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+
+ }
+ if$
+}
+if$
+
+}
+
+
+FUNCTION {format.cmisc.title} %wk % Nothing needs
+{
+patentid empty$
+ {%没有专利号应该是其它类型文献,直接标准输出
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+ }
+ {%有专利号
+ country empty$
+ {
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+"" patentid * "" * *
+ }
+ {%有专利号,有国家
+title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[缺文献类型标志代码]." * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+
+ ":" country * "," * *
+ "" patentid * "" * *
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]." * * }
+if$
+
+ }
+ if$
+}
+if$
+
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {format.proceedings.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[C]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+
+
+FUNCTION {format.cproceedings.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[C]" * title output.check}
+ {format.title title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]" * * }
+if$
+ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.incollection.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[M]//" * title output.check}
+ {format.title "" * title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]//" * * }
+if$
+ % authordate3.bst.
+}
+
+
+FUNCTION {format.cincollection.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[M]//" * title output.check}
+ {format.title "" * title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]//" * * }
+if$
+ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.inproceedings.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[C]//" * title output.check}
+ {format.title "" * title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]//" * * }
+if$
+ % authordate3.bst.
+}
+
+
+FUNCTION {format.cinproceedings.title} % Nothing needs
+{title empty$ % doing here in
+ { "" } % authordate1.bst
+ {
+ typeoflit empty$
+ {format.title "[C]//" * title output.check}
+ {format.title "" * title output.check}
+ if$
+ }
+if$
+
+TypeofLit empty$
+ {""}
+ { "[" TypeofLit * "]//" * * }
+if$
+ % authordate3.bst.
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {n.dashify}
+{ 't :=
+ ""
+ { t empty$ not }
+ { t #1 #1 substring$ "-" =
+ { t #1 #2 substring$ "--" = not
+ { "--" *
+ t #2 global.max$ substring$ 't :=
+ }
+ { { t #1 #1 substring$ "-" = }
+ { "-" *
+ t #2 global.max$ substring$ 't :=
+ }
+ while$
+ }
+ if$
+ }
+ { t #1 #1 substring$ *
+ t #2 global.max$ substring$ 't :=
+ }
+ if$
+ }
+ while$
+}
+
+FUNCTION {format.btitle}
+{ title empty$
+ { "" } % Don't change case
+ {booktitle} % in
+ if$ % authordate1.bst
+} % or
+
+FUNCTION {format.cbtitle} %wk % Nothing needs
+{ title empty$ % doing here in
+ { "" } % authordate1.bst
+ {booktitle} % or
+ if$ % authordate3.bst.
+}
+ % authordate3.bst.
+FUNCTION {tie.or.space.connect}
+{ duplicate$ text.length$ #3 <
+ { "~" }
+ { " " }
+ if$
+ swap$ * *
+}
+
+FUNCTION {either.or.check}
+{ empty$
+ 'pop$
+ { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+ if$
+}
+
+INTEGERS { multiresult }
+
+FUNCTION {multi.page.check}
+{ 't :=
+ #0 'multiresult :=
+ { multiresult not
+ t empty$ not
+ and
+ }
+ { t #1 #1 substring$
+ duplicate$ "-" =
+ swap$ duplicate$ "," =
+ swap$ "+" =
+ or or
+ { #1 'multiresult := }
+ { t #2 global.max$ substring$ 't := }
+ if$
+ }
+ while$
+ multiresult
+}
+
+FUNCTION {format.numberinseries}
+{ number empty$
+ { "" }
+ { number multi.page.check
+ { ", nos. " number n.dashify tie.or.space.connect }
+ { ", no. " number tie.or.space.connect }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.cnumberinseries} %wk
+{ number empty$
+ { "" }
+ { number multi.page.check
+ { ", 第" number n.dashify tie.or.space.connect * "期"} %wk
+ { ", 第" number tie.or.space.connect * "期"} %wk
+ if$
+ }
+ if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {booklike.series.volume.number} % Chicago, pages
+{ series empty$ % 450-451.
+ { volume empty$
+ { " " }
+ { " Vol. " volume * }
+ if$
+ }
+ {
+ volume empty$
+ { number empty$
+ { series }
+ { series format.numberinseries * }
+ if$
+ }
+ { number empty$
+ { series ", vol. " volume * * }
+ { series ", vol. " * volume * format.numberinseries * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {cbooklike.series.volume.number.pages} %wk加入页码 ??? % Chicago, pages %wk
+{ series empty$ % 450-451.
+ { volume empty$
+ { pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$}
+ { "卷" volume * }
+ if$
+ }
+ {
+ volume empty$
+ { number empty$
+ { series }
+ { series format.numberinseries * }
+ if$
+ }
+ { number empty$
+ { series ",第" volume * "卷" * * }
+ { series "卷" * volume * format.cnumberinseries * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {incollectionlike.series.volume.number.pages} %wk
+{ series empty$
+ { volume empty$
+ { pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$}
+ { "," volume * "" * *
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$}
+ if$
+ }
+ { new.block
+ volume empty$
+ { number empty$
+ { series }
+ { series format.numberinseries * }
+ if$
+ }
+ { number empty$
+ { series ", vol. " volume * * }
+ { series ", vol. " * volume * format.numberinseries * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {cincollectionlike.series.volume.number.pages} %wk
+{ series empty$
+ { volume empty$
+ { pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$}
+ { ",第" volume * "卷" * *
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$}
+ if$
+ }
+ { new.block
+ volume empty$
+ { number empty$
+ { series }
+ { series format.numberinseries * }
+ if$
+ }
+ { number empty$
+ { series ", vol. " volume * * }
+ { series ", vol. " * volume * format.numberinseries * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+
+FUNCTION {format.TypeofLit} %wk 完全改写
+{ TypeofLit empty$
+ { "" }
+ {"[" TypeofLit * "]" *}
+ if$
+}
+
+
+FUNCTION {format.edition}
+{ edition empty$
+ {
+ translator empty$
+ { "" }
+ {"" translator * ",translation" * }
+ if$
+ }
+ {
+ translator empty$
+ {edition}
+ {translator output
+ ",translation." edition * "" * *}
+ if$
+ }
+if$
+}
+
+
+FUNCTION {format.cedition} %wk 完全改写
+{ edition empty$
+ {
+ translator empty$
+ { "" }
+ {"" translator format.cnames * ",译" *}
+ if$
+ }
+ {
+ translator empty$
+ {edition}
+ {translator format.cnames output
+ ",译." edition * "" * *}
+ if$
+ }
+if$
+}
+
+
+
+
+FUNCTION {format.ctranslator} %wk 完全改写
+{ translator empty$
+ { "" }
+ {format.cnames ",译" * "translator" output.check}
+ if$
+}
+
+FUNCTION {format.pages}
+{ pages empty$
+ { "" }
+ { pages multi.page.check
+ { ":" pages n.dashify tie.or.space.connect * }
+ { ":" pages tie.or.space.connect * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.pagesinbook} % By the time the
+{ pages empty$ % reader has read
+ { "" } % address, pub'r,
+ { pages multi.page.check % note (where the
+ { ":" pages n.dashify tie.or.space.connect } % note may end with
+ { ":" pages tie.or.space.connect } % numbers), s/he
+ if$ % may not recognise
+ } % a number-range as
+ if$ % meaning pages.
+} % Avoid ambiguity
+ % (Butcher, p.181).
+
+FUNCTION {format.cpagesinbook} % By the time the %wk
+{ pages empty$ % reader has read
+ { "" } % address, pub'r,
+ { pages multi.page.check % note (where the
+ { ":" * pages n.dashify tie.or.space.connect * "" } % note may end with
+ { ":" * "Page " pages tie.or.space.connect * ""} % numbers), s/he
+ if$ % may not recognise
+ } % a number-range as
+ if$ % meaning pages.
+} % Avoid ambiguity
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.vol.num.date.pages} %wk
+{volume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {volume %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ number empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" number * ")" * * %wk 被重新改过
+ volume empty$ %wk 被重新改过
+ { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$
+}
+
+
+FUNCTION {format.cvol.num.date.pages} %wk
+{volume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {volume %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ number empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" number * ")" * * %wk 被重新改过
+ volume empty$ %wk 被重新改过
+ { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.article.vol.num.date.pages} %wk
+{
+volume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {volume %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+number empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" number * ")" * * %wk 被重新改过
+ volume empty$ %wk 被重新改过
+ { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$
+}
+
+
+
+FUNCTION {format.carticle.vol.num.date.pages} %wk
+{
+volume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {volume %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+number empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" number * ")" * * %wk 被重新改过
+ volume empty$ %wk 被重新改过
+ { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.book.continue.vol.num} %wk
+{
+startyear empty$
+ 'skip$
+ {"." startyear * "" * *
+ startvolume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {"," startvolume * "" * *} %wk 被重新改过
+ if$
+ %wk 被重新改过
+ startnumber empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" startnumber * ")-" * * } %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+if$
+ %wk 被重新改过
+endyear empty$
+ 'skip$
+ {"" endyear * "" * *
+ endvolume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {"," endvolume * "" * *} %wk 被重新改过
+ if$
+ %wk 被重新改过
+ endnumber empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" endnumber * ")" * * } %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+if$
+}
+
+
+
+
+FUNCTION {format.cbook.continue.vol.num} %wk
+{
+startyear empty$
+ 'skip$
+ {"." startyear * "" * *
+ startvolume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {"," startvolume * "" * *} %wk 被重新改过
+ if$
+ %wk 被重新改过
+ startnumber empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" startnumber * ")-" * * } %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+if$
+ %wk 被重新改过
+endyear empty$
+ 'skip$
+ {"" endyear * "" * *
+ endvolume empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {"," endvolume * "" * *} %wk 被重新改过
+ if$
+ %wk 被重新改过
+ endnumber empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" endnumber * ")" * * } %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+if$
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.date.modifydate.citedate} %wk
+{
+date empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ {date %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+
+modifydate empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "(" modifydate * ")" * * %wk 被重新改过
+ date empty$ %wk 被重新改过
+ { "" cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$
+
+citedate empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { "[" citedate * "]" * * %wk 被重新改过
+ date empty$ %wk 被重新改过
+ { "" cite$ * warning$ } %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ if$ %wk 被重新改过
+ } %wk 被重新改过
+ if$
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.chapter.pages.inbook}
+{ chapter empty$
+ 'format.pagesinbook
+ { type empty$
+ { "Chap." }
+ { type }
+ if$
+ chapter tie.or.space.connect
+ pages empty$
+ 'skip$
+ { ", " * format.pagesinbook "l" change.case$ * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.cchapter.pages.inbook}
+{chapter empty$ %wk 被重新改过
+ 'skip$ %wk 被重新改过
+ { ",第" chapter * "章" * * %wk 被重新改过
+ } %wk 被重新改过
+ if$ %wk 被重新改过
+ pages empty$
+ 'skip$
+ { duplicate$ empty$
+ { pop$ format.pages }
+ { ":" * pages n.dashify * "" *} %wk 改为第页
+ if$
+ }
+ if$
+}
+
+
+
+FUNCTION {format.chapter.pages.incoll}
+{ chapter empty$
+ { pages empty$
+ { "In " }
+ { "{\em " format.pagesinbook " of:} " * * }
+ if$
+ }
+ { type empty$
+ { "{\em Chap. " chapter * }
+ { "{\em " type * " " * chapter * }
+ if$
+ pages empty$
+ { " of:} " * }
+ { ", " * format.pagesinbook "l" change.case$ " of:} " * * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.cchapter.pages.incoll} %wk
+{ chapter empty$
+ { pages empty$
+ { "" }
+ { "第" format.pagesinbook "章" * * }
+ if$
+ }
+ { type empty$
+ { "第" chapter * "章" * * }
+ { "" type * "" * chapter * }
+ if$
+ pages empty$
+ { "" * }
+ { ":" * format.pagesinbook "l" change.case$ "" * * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.in.ed.booktitle} % Achieves effect %wk
+{ booktitle empty$ % shown in 16.51
+ { "" } % of Chicago, at
+ { editor empty$ % expense of not
+ {"" * booktitle * "" *
+ new.block
+ }
+ {new.block
+ normalauthor empty$ %用于正常显示
+ {
+ normaleditor empty$ %用于正常显示
+ { format.editors "author and editor" output.check} %用于正常显示,
+ { format.editors "author and normaleditor" output.check} %用于正常显示
+ if$ %用于正常显示
+ } %用于正常显示
+ {
+ normaleditor empty$ %用于正常显示
+ {format.editors "normalauthor and editor" output.check} %用于正常显示
+ {format.editors "normalauthor and normaleditor" output.check} %用于正常显示
+ if$ %用于正常显示
+
+ } %用于正常显示
+ if$ %用于正常显示
+ editor format.key output
+ new.block
+ format.btitle "booktitle" output.check
+ }
+ if$ % 4.4 of BS 1629.
+ }
+ if$ % Don't change
+} % case.
+
+
+FUNCTION {format.in.ced.booktitle} % Achieves effect %wk
+{ booktitle empty$ % shown in 16.51
+ { "" } % of Chicago, at
+ { editor empty$ % expense of not
+ {"" * booktitle * "" *
+ new.block
+ }
+ {new.block
+ normalauthor empty$ %用于正常显示
+ {
+ normaleditor empty$ %用于正常显示
+ {format.ceditors "author and editor" output.check} %用于正常显示,
+ {format.ceditors "author and normaleditor" output.check} %用于正常显示
+ if$ %用于正常显示
+ } %用于正常显示
+ {
+ normaleditor empty$ %用于正常显示
+ {format.ceditors "normalauthor and editor" output.check} %用于正常显示
+ {format.ceditors "normalauthor and normaleditor" output.check} %用于正常显示
+ if$ %用于正常显示
+
+ } %用于正常显示
+ if$ %用于正常显示
+ editor format.key output
+ new.block
+ format.cbtitle "booktitle" output.check
+ }
+ if$ % 4.4 of BS 1629.
+ }
+ if$ % Don't change
+} % case.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%55
+FUNCTION {format.in.proceedings.booktitle} % Achieves effect %wk
+{ booktitle empty$ % shown in 16.51
+ { "" } % of Chicago, at
+ {format.btitle "booktitle" output.check }
+ if$ % Don't change
+} % case.
+
+
+FUNCTION {format.in.cproceedings.booktitle} % Achieves effect %wk
+{ booktitle empty$ % shown in 16.51
+ { "" } % of Chicago, at
+ { format.cbtitle "booktitle" output.check }
+ if$ % 4.4 of BS 1629.
+ % Don't change
+}
+
+
+FUNCTION {format.thesis.type}
+{ type empty$
+ 'skip$
+ { pop$
+ type % Don't change
+ } % case.
+ if$
+}
+
+FUNCTION {format.tr.number}
+{ type empty$
+ { "Tech. rept." } % ODWE abbrevs.
+ 'type
+ if$
+ number empty$
+ { } % Whatever was
+ { number tie.or.space.connect } % having its case
+ if$ % changed, leave
+} % it alone.
+
+FUNCTION {format.addr.pub}
+{ publisher empty$
+ {address empty$
+ { ".[S.l.]: [s.n.] " *}
+ { address ": [s.n.] " * }
+ if$
+ }
+ { address empty$
+ { ".[S.l.]: " * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$
+}
+
+FUNCTION {format.caddr.pub}
+{publisher empty$
+ {address empty$
+ { ".[出版地不详]:[出版者不详]" *}
+ { address ":[出版者不详]" * }
+ if$
+ }
+ { address empty$
+ { ".[出版地不详]:" * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.addr.institution}
+{ institution empty$
+ {address empty$
+ { ".[S.l.]: [s.n.] " *}
+ { address ": [s.n.] " * }
+ if$
+ }
+ { address empty$
+ { ".[S.l.]: " * }
+ { address ": " * }
+ if$
+ institution *
+ }
+
+ if$
+}
+
+FUNCTION {format.caddr.institution}
+{institution empty$
+ {address empty$
+ { ".[地址不详]:[机构不详]" *}
+ { address ":[机构不详]" * }
+ if$
+ }
+ { address empty$
+ { ".[地址不详]:" * }
+ { address ": " * }
+ if$
+ institution *
+ }
+
+ if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.school.pub}
+{ school empty$
+ {address empty$
+ { "[S.l.]: [s.n.] " }
+ { address ": [s.n.] " * }
+ if$
+ }
+ { address empty$
+ { ".[S.l.]: " * }
+ { address ": " * }
+ if$
+ school *
+ }
+
+ if$
+}
+
+FUNCTION {format.cschool.pub}
+{school empty$
+ {address empty$
+ { "[地址不详]:[学校不详]" }
+ { address ":[学校不详]" * }
+ if$
+ }
+ { address empty$
+ { ".[学校不详]:" * }
+ { address ": " * }
+ if$
+ school *
+ }
+
+ if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.inproceedings.addr.pub}
+{
+TypeofLit empty$
+ {publisher empty$
+ {address empty$
+ { ".[S.l.]: [s.n.] " }
+ { address ": [s.n.] " * }
+ if$
+ }
+ { address empty$
+ { ".[S.l.]: " * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$}
+ { "" }
+if$
+}
+
+FUNCTION {format.cinproceedings.addr.pub}
+{
+TypeofLit empty$
+ {publisher empty$
+ {address empty$
+ { ".[出版地不详]:[出版者不详]" }
+ { address ":[出版者不详]" * }
+ if$
+ }
+ { address empty$
+ { ".[出版地不详]:" * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$}
+ { ""}
+if$
+
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {format.misc.addr.pub}
+{ publisher empty$
+ {address empty$
+ { "" }
+ { address ": [s.n.] " * }
+ if$
+ }
+ { address empty$
+ { "[S.l.]: " * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$
+}
+
+FUNCTION {format.cmisc.addr.pub}
+{publisher empty$
+ {address empty$
+ { "" }
+ { address ":[出版者不详]" * }
+ if$
+ }
+ { address empty$
+ { "[出版地不详]:" * }
+ { address ": " * }
+ if$
+ publisher *
+ }
+
+ if$
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+FUNCTION {format.addr.pub.org} % If there's an
+{ address empty$ % an organization
+ { "[S.l.]:" *publisher * ", for " * organization * } % and a publisher
+ { address ": " * publisher * ", for " * organization * } % too.
+ if$
+}
+
+FUNCTION {format.addr.inst}
+{ address empty$
+ { institution empty$
+ { "[S.l.]" }
+ { "[S.l.]" * institution * *}
+ if$
+ }
+ { institution empty$
+ { "" }
+ { institution ", " * }
+ if$
+ address *
+ }
+ if$
+}
+
+FUNCTION {format.addr.org}
+{ address empty$
+ { organization empty$
+ { "" }
+ { organization }
+ if$
+ }
+ { organization empty$
+ { "" }
+ { organization ", " * }
+ if$
+ address *
+ }
+ if$
+}
+
+FUNCTION {format.article.crossref}
+{ "In "
+ " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume empty$
+ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+ "In "
+ }
+ { " Vol." volume tie.or.space.connect
+ " of " *
+ }
+ if$
+ "\cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{ "In "
+ " \cite{" * crossref * "}" *
+}
+
+
+FUNCTION {article}
+{language empty$
+{ output.bibitem
+ format.authors "author" output.check
+ author format.key output
+ new.block
+ format.article.title output
+ new.block
+ crossref missing$
+ { journal % Don't change
+ "journal" output.check % case.
+ output.article.year.check output
+ format.article.vol.num.date.pages output
+ format.date.modifydate.citedate output
+ }
+ { format.article.crossref output.nonnull
+ format.pages output
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+
+ fin.entry
+}
+
+%FUNCTION {carticle} %wk 本函数
+{ output.bibitem
+ format.cauthors "author" output.check
+ author format.key output
+ new.block
+ format.carticle.title output
+ new.block
+ crossref missing$
+ {journal % Don't change %wk
+ "journal" output.check % case.
+ output.carticle.year.check output %wk
+ format.carticle.vol.num.date.pages output %wk
+ format.date.modifydate.citedate output
+ new.block
+ }
+ { format.article.crossref output.nonnull
+ format.pages output
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+FUNCTION {book}
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.book.title output
+ new.block
+ crossref missing$
+ { format.edition output
+ new.block
+ format.book.continue.vol.num ouput
+ booklike.series.volume.number output
+ new.block
+ format.addr.pub "publisher" output.check
+ output.continue.year.check ouput
+ format.date.modifydate.citedate output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cbook} %wk
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.cbook.title output %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+ format.cbook.continue.vol.num ouput
+ new.block
+ format.caddr.pub "publisher" output.check
+ output.continue.cyear.check ouput %wk
+ cbooklike.series.volume.number.pages output
+ format.date.modifydate.citedate output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%未处理
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {booklet}
+{language empty$
+{ output.bibitem
+ format.authors output
+ author format.key output
+ output.year.month.check
+ new.block
+ format.btitle "title" output.check
+ new.block
+ howpublished output
+ address output
+ output.year.check
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cbooklet} %wk
+{ output.bibitem
+ format.cauthors output %wk
+ author format.key output
+ format.btitle "title" output.check %wk
+ new.block
+ howpublished output
+ address output
+ output.cyear.month.check %wk
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {inbook}
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.book.title output
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+ format.addr.pub "publisher" output.check
+ output.year.check output
+ format.date.modifydate.citedate output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cinbook} %wk
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.cbook.title output %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+ format.caddr.pub "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ format.date.modifydate.citedate output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {incollection} %wk
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "editor" output.check %wk format.editors->format.ceditors
+ editor format.key output }
+ { format.authors "author" output.check %wk
+ author format.key output }
+ if$
+ new.block
+ format.incollection.title output
+ crossref missing$ % Chapter and/or
+ {
+ before.all 'output.state :=
+ format.in.ed.booktitle output % page numbers can
+ format.edition output % come out via this %wk edition->cedition
+ new.block
+ format.addr.pub "publisher" output.check
+ output.year.check
+ incollectionlike.series.volume.number.pages output % route, too.
+ format.date.modifydate.citedate output
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ new.block
+ }
+ if$
+
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cincollection} %wk
+{ output.bibitem
+ author empty$
+ { format.ceditors "editor" output.check %wk format.editors->format.ceditors
+ editor format.key output }
+ { format.cauthors "author" output.check %wk
+ author format.key output }
+ if$
+ new.block
+ format.cincollection.title output
+ crossref missing$ % Chapter and/or
+ { format.in.ced.booktitle output % page numbers can
+ format.cedition output % come out via this %wk edition->cedition
+ new.block
+ format.caddr.pub "publisher" output.check
+ output.cyear.check output
+ cincollectionlike.series.volume.number.pages output % route, too.
+ format.date.modifydate.citedate output
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ new.block
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%图书book和
+%会议录inproceedings(会议conference与inproceedings一样),
+%文献类型代码[C]
+%硕士学位论文mastersthesis,
+%文献类型代码[D]
+%博士学位论文phdthesis,
+%文献类型代码[D]
+%技术报告techreport的类型是一样的,
+%文献类型代码[R]
+%
+%因此我们直接拷贝book的相关内容即可。
+%原始部分可以参考authordate1.bst。
+%
+%利用misc作为电子文献[EB/OL]所使用的类型
+%存在的问题:无法正常调用url,只能利用note来生成。
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {inproceedings} %wk 改自incollection类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "editor" output.check %wk format.editors->format.ceditors
+ editor format.key output }
+ { format.authors "author" output.check %wk
+ author format.key output }
+ if$
+ new.block
+ format.inproceedings.title output
+ crossref missing$ % Chapter and/or
+ {
+ before.all 'output.state :=
+ format.in.ed.booktitle output % page numbers can
+ format.edition output % come out via this %wk edition->cedition
+ new.block
+ format.inproceedings.addr.pub "publisher" output.check
+ output.year.check
+ incollectionlike.series.volume.number.pages output % route, too.
+ format.date.modifydate.citedate output
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ new.block
+ }
+ if$
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cinproceedings} %wk 改自incollection类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "editor" output.check %wk format.editors->format.ceditors
+ editor format.key output }
+ { format.cauthors "author" output.check %wk
+ author format.key output }
+ if$
+ new.block
+ format.cinproceedings.title output
+ crossref missing$ % Chapter and/or
+ { format.in.ced.booktitle output % page numbers can
+ format.cedition output % come out via this %wk edition->cedition
+ new.block
+ format.cinproceedings.addr.pub "publisher" output.check
+ output.cyear.check
+ cincollectionlike.series.volume.number.pages output % route, too.
+ format.date.modifydate.citedate output
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ new.block
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {conference} { inproceedings }
+%FUNCTION {cconference} { cinproceedings }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {TECHREPORT} %wk 改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.title "[R]" * "title" output.check
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+ format.addr.institution "publisher" output.check
+ output.year.check output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cTECHREPORT} %wk 改自book类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.ctitle "[R]" * "title" output.check %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+ format.caddr.institution "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {mastersthesis} %wk 改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.title "[D]" * "title" output.check
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+% format.addr.pub "publisher" output.check
+ format.school.pub "publisher" output.check
+ output.year.check output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cmastersthesis} %wk 改自book类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.ctitle "[D]" * "title" output.check %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+% format.caddr.pub "publisher" output.check
+ format.cschool.pub "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {phdthesis} %wk 改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.title "[D]" * "title" output.check
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+% format.addr.pub "publisher" output.check
+ format.school.pub "publisher" output.check
+ output.year.check output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cphdthesis} %wk 改自book类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.ctitle "[D]" * "title" output.check %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+% format.caddr.pub "publisher" output.check
+ format.cschool.pub "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {proceedings} %改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.conference.title output
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+ format.addr.pub "publisher" output.check
+ output.year.check output
+ format.date.modifydate.citedate output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cproceedings} %改自book类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.cconference.title output %wk
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+ format.caddr.pub "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ format.date.modifydate.citedate output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {manual} %改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.btitle "[H]" * "title" output.check
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+ format.addr.pub "publisher" output.check
+ output.year.check output
+ format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cmanual} %wk
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.ctitle "[H]" * "title" output.check %wk
+ new.block
+ crossref missing$
+ { format.cedition output %wk edition->cedition
+ new.block
+ format.caddr.pub "publisher" output.check
+ output.cyear.check %wk
+ cbooklike.series.volume.number.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+FUNCTION {misc} %作为非常规文献的格式,可靠性低,应该仔细检查,改自book类型
+{language empty$
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check
+ editor format.key output
+ }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.misc.title output
+ new.block
+ crossref missing$
+ { format.edition output
+ booklike.series.volume.number output
+ new.block
+ format.misc.addr.pub "publisher" output.check
+% output.year.check output
+ format.date.modifydate.citedate output
+% format.pages output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+
+%FUNCTION {cmisc} %作为非常规文献的格式,可靠性低,应该仔细检查,改自book类型
+{ output.bibitem
+ author empty$
+ { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors
+ editor format.key output
+ }
+ { format.cauthors output.nonnull
+ crossref missing$
+ {"author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ new.block
+ format.cmisc.title output %wk
+
+ new.block
+ crossref missing$
+ {
+ format.cedition output %wk edition->cedition
+ new.block
+ format.cmisc.addr.pub "publisher" output.check
+% output.cyear.check %wk
+% cbooklike.series.volume.number.pages output
+ format.date.modifydate.citedate output
+ }
+ { format.book.crossref output.nonnull
+ }
+ if$
+ new.block
+ format.url output
+ new.block
+ note output
+ fin.entry
+}
+if$
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {unpublished}
+{language empty$
+{ output.bibitem
+ format.authors "author" output.check
+ author format.key output
+ output.year.month.check
+ new.block
+ format.btitle "title" output.check
+ new.block
+ note "note" output.check
+ fin.entry
+}
+
+%FUNCTION {cunpublished} %wk
+{ output.bibitem
+ format.cauthors "author" output.check %wk
+ author format.key output
+ output.cyear.month.check %wk
+ new.block
+ format.ctitle "title" output.check %wk
+ new.block
+ note "note" output.check
+ fin.entry
+}
+if$
+}
+
+FUNCTION {default.type} { book } %wk 因为主要是基于book类型,因此将缺省类型由misc改为book
+
+MACRO {jan} {"Jan."} % ODWE, "months", &
+ % Chicago, p. 383.
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"June"}
+
+MACRO {jul} {"July"}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sept."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+MACRO {acmcs} {"ACM Computing Surveys"}
+
+MACRO {acta} {"Acta Informatica"}
+
+MACRO {cacm} {"Communications of the ACM"}
+
+MACRO {ibmjrd} {"IBM Journal of Research and Development"}
+
+MACRO {ibmsj} {"IBM Systems Journal"}
+
+MACRO {ieeese} {"IEEE Transactions on Software Engineering"}
+
+MACRO {ieeetc} {"IEEE Transactions on Computers"}
+
+MACRO {ieeetcad}
+ {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
+
+MACRO {ipl} {"Information Processing Letters"}
+
+MACRO {jacm} {"Journal of the ACM"}
+
+MACRO {jcss} {"Journal of Computer and System Sciences"}
+
+MACRO {scp} {"Science of Computer Programming"}
+
+MACRO {sicomp} {"SIAM Journal on Computing"}
+
+MACRO {tocs} {"ACM Transactions on Computer Systems"}
+
+MACRO {tods} {"ACM Transactions on Database Systems"}
+
+MACRO {tog} {"ACM Transactions on Graphics"}
+
+MACRO {toms} {"ACM Transactions on Mathematical Software"}
+
+MACRO {toois} {"ACM Transactions on Office Information Systems"}
+
+MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"}
+
+MACRO {tcs} {"Theoretical Computer Science"}
+
+READ
+
+FUNCTION {sortify}
+{ purify$
+ "l" change.case$
+}
+
+INTEGERS { len }
+
+FUNCTION {chop.word}
+{ 's :=
+ 'len :=
+ s #1 len substring$ =
+ { s len #1 + global.max$ substring$ }
+ 's
+ if$
+}
+
+
+
+
+FUNCTION {format.lab.names} %wk
+{ 's :=
+ s #1 "{vv~}{ll}" format.name$
+ s num.names$ duplicate$
+ #2 >
+ { pop$ " et al." * }
+ { #2 <
+ 'skip$
+ { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+ { " {\em et~al.}" * }
+ { " and " * s #2 "{vv~}{ll}" format.name$ * } %wk
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.lab.cnames} %wk
+{ 's :=
+ s #1 "{vv~}{ll}" format.name$
+ s num.names$ duplicate$
+ #2 >
+ { pop$ "~等" * }
+ { #2 <
+ 'skip$
+ { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+ { " {\em et~al.}" * }
+ { "和" * s #2 "{vv~}{ll}" format.name$ * } %wk
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+ { key empty$
+ { cite$ #1 #3 substring$ }
+ 'key
+ if$
+ }
+% {author format.lab.names }
+ {language empty$
+ {author format.lab.names}
+ {author format.lab.cnames}
+ if$}
+
+ if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+ { editor empty$
+ { key empty$
+ { cite$ #1 #3 substring$ }
+ 'key
+ if$
+ }
+% { editor format.lab.names }
+ {language empty$
+ {editor format.lab.names}
+ {editor format.lab.cnames}
+ if$}
+
+ if$
+ }
+% { author format.lab.names }
+ {language empty$
+ {author format.lab.names}
+ {author format.lab.cnames}
+ if$}
+
+ if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+ { key empty$
+ { cite$ #1 #3 substring$ }
+ 'key
+ if$
+ }
+% { editor format.lab.names }
+ {language empty$
+ {editor format.lab.names}
+ {editor format.lab.cnames}
+ if$}
+
+ if$
+}
+
+FUNCTION {author.key.organization.label}
+{ author empty$
+ { key empty$
+ { organization empty$
+ { cite$ #1 #3 substring$ }
+ { "The " #4 organization chop.word #3 text.prefix$ }
+ if$
+ }
+ 'key
+ if$
+ }
+ { author format.lab.names }
+ if$
+}
+
+FUNCTION {editor.key.organization.label}
+{ editor empty$
+ { key empty$
+ { organization empty$
+ { cite$ #1 #3 substring$ }
+ { "The " #4 organization chop.word #3 text.prefix$ }
+ if$
+ }
+ 'key
+ if$
+ }
+ { editor format.lab.names }
+ if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+ type$ "inbook" =
+ or
+ 'author.editor.key.label
+ { type$ "proceedings" =
+ 'editor.key.organization.label
+ { type$ "manual" =
+ 'author.key.organization.label
+ 'author.key.label
+ if$
+ }
+ if$
+ }
+ if$
+ 'short.list :=
+}
+
+FUNCTION {calc.label}
+{ calc.short.authors
+ short.list
+ "("
+ *
+ year duplicate$ empty$
+ short.list key field.or.null = or
+ { pop$ ""}
+ 'skip$
+ if$
+ * ")" *
+ 'label :=
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+ #-1 #10 substring$
+}
+
+
+FUNCTION {presort}
+{ calc.label
+ label sortify
+ " "
+ *
+ seq.num #1 + 'seq.num :=
+ seq.num int.to.fix
+ 'sort.label :=
+ sort.label *
+ #1 entry.max$ substring$
+ 'sort.key$ :=
+}
+
+ITERATE {presort}
+
+SORT
+
+STRINGS { longest.label last.label next.extra }
+
+INTEGERS { longest.label.width last.extra.num number.label }
+
+FUNCTION {initialize.longest.label}
+{ "" 'longest.label :=
+ #0 int.to.chr$ 'last.label :=
+ "" 'next.extra :=
+ #0 'longest.label.width :=
+ #0 'last.extra.num :=
+ #0 'number.label :=
+}
+
+FUNCTION {forward.pass}
+{ last.label label =
+ { last.extra.num #1 + 'last.extra.num :=
+ last.extra.num int.to.chr$ 'extra.label :=
+ }
+ { "a" chr.to.int$ 'last.extra.num :=
+ "" 'extra.label :=
+ label 'last.label :=
+ }
+ if$
+ number.label #1 + 'number.label :=
+}
+
+FUNCTION {reverse.pass}
+{ next.extra "b" =
+ { "a" 'extra.label := }
+ 'skip$
+ if$
+ extra.label 'next.extra :=
+ extra.label
+ duplicate$ empty$
+ 'skip$
+ { "{\natexlab{" swap$ * "}}" * }
+ if$
+ 'extra.label :=
+ label extra.label * 'label :=
+}
+
+EXECUTE {initialize.longest.label}
+
+ITERATE {forward.pass}
+
+REVERSE {reverse.pass}
+
+FUNCTION {bib.sort.order}
+{ sort.label 'sort.key$ :=
+}
+
+ITERATE {bib.sort.order}
+
+SORT
+
+FUNCTION {begin.bib}
+{ preamble$ empty$
+ 'skip$
+ { preamble$ write$ newline$ }
+ if$
+ "\begin{thebibliography}{" number.label int.to.str$ *
+ "}\setlength{\baselineskip}{20bp plus 2bp minus 1bp}\setlength{\itemsep}{0bp}\setlength{\parskip}{0pt}" *
+ %加入三个setlength以符合电子科技大学关于参考文献行距的要求。
+ write$ newline$
+ "\providecommand{\natexlab}[1]{#1}"
+ write$ newline$
+ "\providecommand{\url}[1]{\texttt{#1}}"
+ write$ newline$
+ "\expandafter\ifx\csname urlstyle\endcsname\relax"
+ write$ newline$
+ " \providecommand{\doi}[1]{doi: #1}\else"
+ write$ newline$
+ " \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi"
+ write$ newline$
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+ "\end{thebibliography}" write$ newline$
+}
+
+EXECUTE {end.bib}
+% \end{macrocode}
+% \iffalse
+%</bst>
+% \fi
+% \StopEventually{\PrintChanges}
+% \Finale
+%
\endinput
diff --git a/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.ins b/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.ins
index 176a768dee2..1fbf7fefbeb 100644
--- a/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.ins
+++ b/Master/texmf-dist/doc/latex/uestcthesis/source/uestcthesis.ins
@@ -43,14 +43,14 @@ This is a generated file.
The Current Maintainer of this work is Shi Fujun <shifujun@foxmail.com>.
- This work consists of the files uestcthesis.dtx, uestcthesis.ins and
- GBT7714-2005NLang-UESTC.bst.
- and the derived file uestcthesis.cls.
+ This work consists of the files uestcthesis.dtx, uestcthesis.ins
+ and the derived file uestcthesis.cls and uestcthesis.bst.
Other files in this work's package are belongs to the respective owners.
\endpreamble
\generate{\file{uestcthesis.cls}{\from{uestcthesis.dtx}{class}}}
+\generate{\file{uestcthesis.bst}{\from{uestcthesis.dtx}{bst}}}
\obeyspaces
\Msg{*************************************************************}
@@ -58,7 +58,9 @@ This is a generated file.
\Msg{* To finish the installation you have to move the following *}
\Msg{* file into a directory searched by TeX: *}
\Msg{* *}
-\Msg{* uestcthesis.cls *}
+\Msg{* uestcthesis.cls uestcthesis.bst UESTC.png UESTC_LOGO.png *}
+\Msg{* UESTC.png and UESTC_LOGO.png should be moved into the same*}
+\Msg{* directory as the uestcthesis.cls. *}
\Msg{* *}
\Msg{* To produce the documentation run the file uestcthesis.dtx *}
\Msg{* through LaTeX. *}