1 Star 1 Fork 0

楠木 / TeXProposal

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
cqunumerical.bst 31.67 KB
一键复制 编辑 原始数据 按行查看 历史
楠木 提交于 2016-09-20 02:03 . 文件上传
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759
%%
%% This is file `cqunumerical.bst',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% cquthesis.dtx (with options: `bst')
%%
%% This is a generated file.
%%
%% Copyright (C) 2016-2016 by Zhennan Li <i@nanmu.me>
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3 of this license or (at your option) any later
%% version. The latest version of this license is in:
%%
%% http://www.latex-project.org/lppl.txt
%%
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%%
%% This is the .bst file of the cquthesis package with LaTeX2e.
%%
%% This file contains code from USTC TeX User Group:
%%
%% https://github.com/ustctug/gbt-7714-20155
%%
%% The author would like to acknowledge the contributors for their efforts and, essentially, beautiful mind.
%%
ENTRY
{ address
author
booktitle
chapter
citedate
doi
eid
edition
editor
editdate
howpublished
institution
isbn
issn
journal
key
language
mark
media
month
note
number
organization
pages
publisher
school
series
title
translator
type
url
volume
year
}
{ lang }
{ label extra.label sort.label short.list }
INTEGERS { output.state before.all mid.sentence after.sentence after.block }
INTEGERS { lang.zh lang.ja lang.en lang.ru lang.default }
FUNCTION {init.state.consts}
{ #0 'before.all :=
#1 'mid.sentence :=
#2 'after.sentence :=
#3 'after.block :=
#4 'lang.zh :=
#5 'lang.ja :=
#1 'lang.en :=
#3 'lang.ru :=
#0 'lang.default :=
}
STRINGS { s t }
FUNCTION {debug}
{ 's :=
duplicate$
"DEBUG: " s * " -> `" *
swap$ * "'" *
top$
}
FUNCTION {debug.int}
{ 's :=
duplicate$ int.to.str$
"DEBUG: " s * " == " *
swap$ *
top$
}
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 {output}
{ duplicate$ empty$
'pop$
'output.nonnull
if$
}
FUNCTION {output.after}
{ 't :=
duplicate$ empty$
'pop$
{ 's :=
output.state mid.sentence =
{ t * write$ }
{ output.state after.block =
{ t * write$
newline$
"\newblock " write$
}
{ output.state before.all =
'write$
{ t * write$ }
if$
}
if$
mid.sentence 'output.state :=
}
if$
s
}
if$
}
FUNCTION {punct.colon}
{ ": "
}
FUNCTION {punct.slash}
{ "//"
}
FUNCTION {punct.space}
{ " "
}
FUNCTION {output.check}
{ 't :=
duplicate$ empty$
{ pop$ "empty " t * " in " * cite$ * warning$ }
'output.nonnull
if$
}
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.checka}
{ empty$
'skip$
'new.block
if$
}
FUNCTION {new.block.checkb}
{ empty$
swap$ empty$
and
'skip$
'new.block
if$
}
FUNCTION {new.sentence.checka}
{ empty$
'skip$
'new.sentence
if$
}
FUNCTION {new.sentence.checkb}
{ empty$
swap$ empty$
and
'skip$
'new.sentence
if$
}
FUNCTION {field.or.null}
{ duplicate$ empty$
{ pop$ "" }
'skip$
if$
}
FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
{ "\emph{" swap$ * "}" * }
if$
}
FUNCTION {is.in.chinese}
{ lang lang.zh =
}
FUNCTION {format.et.al}
{ is.in.chinese
{ "等"}
{ "et~al." }
if$
}
FUNCTION {format.anonymous}
{ is.in.chinese
{ "佚名"}
{ "Anon, " year * }
if$
}
INTEGERS { nameptr namesleft numnames }
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > nameptr #4 < and }
{ s nameptr "{vv~}{ll}{ f{ }}{, jj}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ t "others" =
{ ", " * format.et.al * }
{ ", " * t * }
if$
}
if$
nameptr #3 = namesleft #1 > and
{ ", " * format.et.al * }
'skip$
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {format.key}
{ empty$
{ key field.or.null }
{ "" }
if$
}
FUNCTION {format.authors}
{ author empty$
{ "" }
{ author format.names }
if$
}
FUNCTION {format.editors}
{ editor empty$
{ "" }
{ editor format.names
}
if$
}
FUNCTION {format.translators}
{ translator empty$
{ "" }
{ translator format.names
is.in.chinese
{ ",译" * }
'skip$
if$
}
if$
}
FUNCTION {format.isbn}
{ isbn empty$
{ "" }
{ new.block "ISBN " isbn * }
if$
}
FUNCTION {format.issn}
{ issn empty$
{ "" }
{ new.block "ISSN " issn * }
if$
}
FUNCTION {format.url}
{ url empty$
{ "" }
{ new.block "\url{" url * "}" * }
if$
}
FUNCTION {format.doi}
{ doi empty$
{ "" }
{ new.block "\doi{" doi * "}" * }
if$
}
FUNCTION {format.title}
{ title empty$
{ "" }
{ title "t" change.case$ }
if$
}
FUNCTION {format.mark}
{ mark empty$
'skip$
{ pop$ mark }
if$
"[" swap$ *
media empty$
{ url empty$
'skip$
{ "/OL" * }
if$
}
{ "/" * media * }
if$
"]" *
}
FUNCTION {format.full.names}
{'s :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr
"{vv~}{ll}" format.name$ 't :=
nameptr #1 >
{
namesleft #1 >
{ ", " * t * }
{
numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{ " et~al." * }
{ " and " * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {author.editor.full}
{ author empty$
{ editor empty$
{ "" }
{ editor format.full.names }
if$
}
{ author format.full.names }
if$
}
FUNCTION {author.full}
{ author empty$
{ "" }
{ author format.full.names }
if$
}
FUNCTION {editor.full}
{ editor empty$
{ "" }
{ editor format.full.names }
if$
}
FUNCTION {make.full.names}
{ type$ "book" =
type$ "inbook" =
or
'author.editor.full
{ type$ "proceedings" =
'editor.full
'author.full
if$
}
if$
}
FUNCTION {output.bibitem}
{ newline$
"\bibitem[" write$
label write$
")" make.full.names duplicate$ short.list =
{ pop$ }
{ * }
if$
"]{" * write$
cite$ write$
"}" write$
newline$
""
before.all 'output.state :=
}
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.date}
{ year duplicate$ empty$
{ "empty year in " cite$ * warning$
pop$ "" }
'skip$
if$
month empty$
'skip$
{ month
" " * swap$ *
}
if$
extra.label *
}
FUNCTION {format.editdate}
{ editdate empty$
{ "" }
{ "(" citedate * ")" * }
if$
}
FUNCTION {format.citedate}
{ citedate empty$
{ "" }
{ "[" citedate * "]" * }
if$
}
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$
}
FUNCTION {is.digit}
{ duplicate$ empty$
{ pop$ #0 }
{ chr.to.int$
duplicate$ "0" chr.to.int$ <
{ pop$ #0 }
{ "9" chr.to.int$ >
{ #0 }
{ #1 }
if$
}
if$
}
if$
}
INTEGERS { charptr stringlength }
FUNCTION {is.number}
{ 's :=
s empty$
{ #0 }
{ s text.length$ 'charptr :=
{ charptr #0 >
s charptr #1 substring$ is.digit
and
}
{ charptr #1 - 'charptr := }
while$
charptr not
}
if$
}
FUNCTION {format.bvolume}
{ volume empty$
{ "" }
{ volume is.number
{ is.in.chinese
{ "第" volume * "卷" * }
{ "volume" volume tie.or.space.connect }
if$
}
{ volume }
if$
}
if$
}
FUNCTION {format.number}
{ number empty$
{ "" }
{ number is.number
{ is.in.chinese
{ "第" volume * "册" * }
{ "number" number tie.or.space.connect }
if$
}
{ number }
if$
}
if$
}
FUNCTION {format.number.series}
{ volume empty$
{ number empty$
{ series field.or.null }
{ output.state mid.sentence =
{ "number" }
{ "Number" }
if$
number tie.or.space.connect
series empty$
{ "there's a number but no series in " cite$ * warning$ }
{ " in " * series * }
if$
}
if$
}
{ "" }
if$
}
FUNCTION {format.series.volume.title}
{ series empty$
{ title
volume empty$
'skip$
{ ": " * format.bvolume * }
if$
}
{ series
volume empty$
{ number empty$
'skip$
{ ": " * format.number * }
if$ }
{ volume empty$
'skip$
{ ": " * format.bvolume * }
if$
}
if$
"\hspace{1em}" * title *
}
if$
}
FUNCTION {format.journal}
{ journal
is.in.chinese
'skip$
{ "\ustcjournal{" swap$ * "}" * }
if$
}
FUNCTION {num.to.ordinal}
{ duplicate$ text.length$ 'charptr :=
duplicate$ charptr #1 substring$ 's :=
s "1" =
{ "st" * }
{ s "2" =
{ "nd" * }
{ s "3" =
{ "rd" * }
{ "th" * }
if$
}
if$
}
if$
}
FUNCTION {format.edition}
{ edition empty$
{ "" }
{ edition is.number
{ is.in.chinese
{ edition "版" * }
{ edition num.to.ordinal " ed." * }
if$
}
{ edition "t" change.case$
edition "Revised" =
{ "Rev. ed." }
{ edition "Revised edition" =
{ "Rev. ed." }
'skip$
if$
}
if$
}
if$
}
if$
}
FUNCTION {format.address}
{ address empty$
{ url empty$
{ is.in.chinese
{ "[出版地不详]" }
{ "[S.l.]" }
if$
}
{ "" }
if$
}
{ address }
if$
}
FUNCTION {format.publisher}
{ publisher empty$
{ url empty$
{ is.in.chinese
{ "[出版者不详]" }
{ "[s.n.]" }
if$
}
{ "" }
if$
}
{ publisher }
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.pages}
{ pages empty$
{ "" }
{ pages }
if$
}
FUNCTION {format.eid}
{ eid empty$
{ "" }
{ "art." eid tie.or.space.connect }
if$
}
FUNCTION {format.vol.num.pages}
{ volume field.or.null
number empty$
'skip$
{ "\penalty0 (" number * ")" * *
volume empty$
{ "there's a number but no volume in " cite$ * warning$ }
'skip$
if$
}
if$
pages empty$
'skip$
{ duplicate$ empty$
{ pop$ format.pages }
{ ":\penalty0 " * pages n.dashify * }
if$
}
if$
}
FUNCTION {format.vol.num.eid}
{ volume field.or.null
number empty$
'skip$
{ "\penalty0 (" number * ")" * *
volume empty$
{ "there's a number but no volume in " cite$ * warning$ }
'skip$
if$
}
if$
eid empty$
'skip$
{ duplicate$ empty$
{ pop$ format.eid }
{ ":\penalty0 " * eid * }
if$
}
if$
}
FUNCTION {format.chapter.pages}
{ chapter empty$
'format.pages
{ type empty$
{ "chapter" }
{ type "l" change.case$ }
if$
chapter tie.or.space.connect
pages empty$
'skip$
{ ", " * format.pages * }
if$
}
if$
}
FUNCTION {format.in.ed.booktitle}
{ booktitle empty$
{ "" }
{ editor empty$
{ "In " booktitle emphasize * }
{ "In " format.editors * ", " * booktitle emphasize * }
if$
}
if$
}
FUNCTION {empty.misc.check}
{ author empty$ title empty$ howpublished empty$
month empty$ year empty$ note empty$
and and and and and
key empty$ not and
{ "all relevant fields are empty in " cite$ * warning$ }
'skip$
if$
}
FUNCTION {format.thesis.type}
{ type empty$
'skip$
{ pop$
type "t" change.case$
}
if$
}
FUNCTION {format.tr.number}
{ type empty$
{ "Technical Report" }
'type
if$
number empty$
{ "t" change.case$ }
{ number tie.or.space.connect }
if$
}
FUNCTION {format.article.crossref}
{ key empty$
{ journal empty$
{ "need key or journal for " cite$ * " to crossref " * crossref *
warning$
""
}
{ "In \emph{" journal * "}" * }
if$
}
{ "In " }
if$
" \citet{" * crossref * "}" *
}
FUNCTION {format.book.crossref}
{ volume empty$
{ "empty volume in " cite$ * "'s crossref of " * crossref * warning$
"In "
}
{ "Volume" volume tie.or.space.connect
" of " *
}
if$
editor empty$
editor field.or.null author field.or.null =
or
{ key empty$
{ series empty$
{ "need editor, key, or series for " cite$ * " to crossref " *
crossref * warning$
"" *
}
{ "\emph{" * series * "}" * }
if$
}
'skip$
if$
}
'skip$
if$
" \citet{" * crossref * "}" *
}
FUNCTION {format.incoll.inproc.crossref}
{ editor empty$
editor field.or.null author field.or.null =
or
{ key empty$
{ booktitle empty$
{ "need editor, key, or booktitle for " cite$ * " to crossref " *
crossref * warning$
""
}
{ "In \emph{" booktitle * "}" * }
if$
}
{ "In " }
if$
}
{ "In " }
if$
" \citet{" * crossref * "}" *
}
FUNCTION {archive}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"A" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {article}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
journal empty$
{ "M" format.mark "" output.after
new.block
format.translators output
new.block
format.editors punct.slash output.after
new.block
booktitle "booktitle" output.check
new.block
format.bvolume punct.colon output.after
new.block
format.edition output
new.block
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
}
{ "J" format.mark "" output.after
new.block
format.journal "journal" output.check
new.block
format.date "year" output.check
format.vol.num.pages output
}
if$
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {book}
{ 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.series.volume.title "title" output.check
"M" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {collection}
{ 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.series.volume.title "title" output.check
"G" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {database}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"DB" format.mark "" output.after
new.block
format.date "year" output.check
format.editdate "" output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {dataset}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"DS" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.editdate "" output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {inbook} { book }
FUNCTION {incollection} { book }
FUNCTION {inproceedings}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
"C" format.mark "" output.after
new.block
format.translators output
new.block
editor empty$
{ organization }
{ format.editors }
if$ punct.slash output.after
new.block
booktitle "booktitle" output.check
new.block
format.bvolume punct.colon output.after
new.block
format.edition output
new.sentence
format.address output
publisher empty$
{ organization }
{ format.publisher }
if$ punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {conference} { inproceedings }
FUNCTION {manual}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
organization address new.block.checkb
organization output
format.address output
format.edition output
format.date output
format.url output
new.block
note output
fin.entry
}
FUNCTION {map}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"CM" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {mastersthesis}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"D" format.mark ": [Master]" * "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
school empty$
{ format.publisher }
{ school }
if$ punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {misc}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"M" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {newspaper}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
"N" format.mark "" output.after
new.block
journal "journal" output.check
new.block
format.date "year" output.check
format.vol.num.pages output
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {patent}
{ output.bibitem
format.authors output
author format.key output
new.block
format.title "title" output.check
"P" format.mark "" output.after
new.block
format.date "year" output.check
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {phdthesis}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"D" format.mark ": [PhD]" * "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
school empty$
{ format.publisher }
{ school }
if$ punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {proceedings}
{ output.bibitem
format.editors output
editor format.key output
new.block
format.series.volume.title "title" output.check
"C" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
publisher empty$
{ organization }
{ format.publisher }
if$ punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {program}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"CP" format.mark "" output.after
new.block
format.date "year" output.check
format.editdate "" output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {standard}
{ output.bibitem
format.authors output
author format.key output
new.block
format.series.volume.title "title" output.check
"S" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {techreport}
{ output.bibitem
author empty$
{ institution output
institution format.key output
}
{ format.authors output
author format.key output
}
if$
new.block
format.series.volume.title "title" output.check
"R" format.mark "" output.after
new.block
format.translators output
new.block
format.edition output
new.sentence
format.address output
format.publisher punct.colon output.after
format.date "year" output.check
format.pages punct.colon output.after
format.editdate "" output.after
format.citedate "" output.after
format.url output
format.doi output
fin.entry
}
FUNCTION {unpublished}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
note "note" output.check
format.date output
format.url output
fin.entry
}
FUNCTION {default.type} { misc }
MACRO {jan} {"January"}
MACRO {feb} {"February"}
MACRO {mar} {"March"}
MACRO {apr} {"April"}
MACRO {may} {"May"}
MACRO {jun} {"June"}
MACRO {jul} {"July"}
MACRO {aug} {"August"}
MACRO {sep} {"September"}
MACRO {oct} {"October"}
MACRO {nov} {"November"}
MACRO {dec} {"December"}
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
EXECUTE {init.state.consts}
INTEGERS { ascii }
FUNCTION {char.lang}
{ chr.to.int$ 'ascii :=
ascii #31 > ascii #128 < and
{ lang.en }
{ ascii #227 > ascii #234 < and
{ lang.zh }
{ ascii #227 =
{ lang.ja }
{ lang.default }
if$
}
if$
}
if$
}
FUNCTION {set.language}
{ language empty$
{ lang.default 'lang :=
author field.or.null title field.or.null * 's :=
s empty$
'skip$
{ #1 'charptr :=
s text.length$ #1 + 'stringlength :=
{ charptr stringlength < }
{ s charptr #1 substring$ char.lang
duplicate$ #3 >
{ charptr #2 + 'charptr := }
'skip$
if$
duplicate$ lang >
{ 'lang := }
'pop$
if$
charptr #1 + 'charptr :=
}
while$
}
if$
}
{ language "en" =
{ lang.en }
{ language "zh" =
{ lang.zh }
{ language "ja" =
{ lang.ja }
{ lang.default }
if$
}
if$
}
if$
'lang :=
}
if$
}
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}
{ 's :=
s #1 "{vv~}{ll}" format.name$
s num.names$ #1 >
{ ", " * format.et.al * }
'skip$
if$
}
FUNCTION {author.key.label}
{ author empty$
{ key empty$
{ cite$ #1 #3 substring$ }
'key
if$
}
{ author format.lab.names }
if$
}
FUNCTION {author.editor.key.label}
{ author empty$
{ editor empty$
{ key empty$
{ cite$ #1 #3 substring$ }
'key
if$
}
{ editor format.lab.names }
if$
}
{ author format.lab.names }
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}
{ set.language
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$
"\bibpunct{[}{]}{,}{s}{,}{,}"
write$ newline$
"\begin{thebibliography}{" number.label int.to.str$ * "}" *
write$ newline$
"\ifx\ustcjournal\undefined\newcommand\ustcjournal{\relax}\fi"
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}
ITERATE {call.type$}
FUNCTION {end.bib}
{ newline$
"\end{thebibliography}" write$ newline$
}
EXECUTE {end.bib}
%%
%% End of file `cqunumerical.bst'.
TeX/LaTeX
1
https://gitee.com/nanmu42/TeXProposal.git
git@gitee.com:nanmu42/TeXProposal.git
nanmu42
TeXProposal
TeXProposal
master

搜索帮助