summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-03-19 20:02:56 +0000
committerKarl Berry <karl@freefriends.org>2022-03-19 20:02:56 +0000
commit76057b7887d0ac78c4698d0ba0af47fc26f36bae (patch)
treed2ace61a2670adc7d62f5109b3e0fb86c0a515f3
parentc4edb671cdc9016f5bbacd323a1aba83e484900f (diff)
thuthesis (18mar22) (branch)
git-svn-id: svn://tug.org/texlive/branches/branch2021.final@62810 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-author-year.bst201
-rw-r--r--Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-bachelor.bst195
-rw-r--r--Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-numeric.bst193
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/CHANGELOG.md272
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/README.md8
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/data/appendix-translation.tex7
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/data/chap04.tex2
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/ref/appendix.bib2
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/ref/refs.bib4
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/spine.pdfbin22266 -> 18789 bytes
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/thusetup.tex8
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.pdfbin405257 -> 378207 bytes
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.tex11
-rw-r--r--Master/texmf-dist/doc/latex/thuthesis/thuthesis.pdfbin1147400 -> 1008818 bytes
-rw-r--r--Master/texmf-dist/source/latex/thuthesis/thuthesis.dtx253
-rw-r--r--Master/texmf-dist/tex/latex/thuthesis/thuthesis-author-year.bbx31
-rw-r--r--Master/texmf-dist/tex/latex/thuthesis/thuthesis-numeric.bbx30
-rw-r--r--Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls202
18 files changed, 1000 insertions, 419 deletions
diff --git a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-author-year.bst b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-author-year.bst
index d25269b8e34..514368e842d 100644
--- a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-author-year.bst
+++ b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-author-year.bst
@@ -4,11 +4,11 @@
%%
%% The original source files were:
%%
-%% gbt7714.dtx (with options: `2015,thu,authoryear')
+%% gbt7714.dtx (with options: `2015,thu,author-year')
%% -------------------------------------------------------------------
%% GB/T 7714—2015 BibTeX Style
-%% https://github.com/CTeX-org/gbt7714-bibtex-style
-%% Version: 2021/04/03 v2.1.1
+%% https://github.com/zepinglee/gbt7714-bibtex-style
+%% Version: 2021/12/08 v2.1.3
%% -------------------------------------------------------------------
%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
@@ -29,9 +29,11 @@ INTEGERS {
terms.in.macro
year.after.author
period.after.author
+ italic.book.title
sentence.case.title
link.title
title.in.journal
+ show.patent.country
show.mark
space.before.mark
show.medium.type
@@ -43,12 +45,14 @@ INTEGERS {
show.missing.address.publisher
space.before.pages
only.start.page
+ wave.dash.in.pages
show.urldate
show.url
show.doi
show.preprint
show.note
show.english.translation
+ end.with.period
lang.zh.order
lang.ja.order
lang.en.order
@@ -66,9 +70,11 @@ FUNCTION {load.config}
#0 'terms.in.macro :=
#1 'year.after.author :=
#0 'period.after.author :=
+ #0 'italic.book.title :=
#1 'sentence.case.title :=
#0 'link.title :=
#1 'title.in.journal :=
+ #1 'show.patent.country :=
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
@@ -80,12 +86,14 @@ FUNCTION {load.config}
#0 'show.missing.address.publisher :=
#1 'space.before.pages :=
#0 'only.start.page :=
+ #0 'wave.dash.in.pages :=
#1 'show.urldate :=
#1 'show.url :=
#1 'show.doi :=
- #0 'show.preprint :=
+ #1 'show.preprint :=
#0 'show.note :=
#0 'show.english.translation :=
+ #1 'end.with.period :=
#1 'lang.zh.order :=
#2 'lang.ja.order :=
#3 'lang.en.order :=
@@ -341,7 +349,10 @@ FUNCTION {output.check}
}
FUNCTION {fin.entry}
-{ add.period$
+{ end.with.period
+ 'add.period$
+ 'skip$
+ if$
write$
show.english.translation entry.lang lang.zh = and
{ ")"
@@ -428,10 +439,18 @@ FUNCTION {field.or.null}
if$
}
-FUNCTION {italicize}
+FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
- { "\textit{" swap$ * "}" * }
+ { "\emph{" swap$ * "}" * }
+ if$
+}
+
+FUNCTION {format.btitle}
+{ italic.book.title
+ entry.lang lang.en = and
+ 'emphasize
+ 'skip$
if$
}
@@ -566,7 +585,7 @@ FUNCTION {format.name}
{ bbl.et.al }
{ t get.str.lang 'name.lang :=
name.lang lang.en =
- { t #1 "{vv~}{ll}{~f{~}}" format.name$
+ { t #1 "{vv~}{ll}{ f{~}}" format.name$
uppercase.name
{ "u" change.case$ }
'skip$
@@ -756,7 +775,7 @@ FUNCTION {add.link}
{ url empty$ not
{ "\href{" url * "}{" * swap$ * "}" * }
{ doi empty$ not
- { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * }
+ { "\href{https://doi.org/" doi * "}{" * swap$ * "}" * }
'skip$
if$
}
@@ -772,7 +791,25 @@ FUNCTION {format.title}
'skip$
if$
entry.numbered number empty$ not and
- { bbl.colon * number * }
+ { bbl.colon *
+ type$ "patent" = show.patent.country and
+ { address empty$ not
+ { address * ", " * }
+ { location empty$ not
+ { location * ", " * }
+ { entry.lang lang.zh =
+ { "中国" * ", " * }
+ 'skip$
+ if$
+ }
+ if$
+ }
+ if$
+ }
+ 'skip$
+ if$
+ number *
+ }
'skip$
if$
link.title
@@ -917,6 +954,7 @@ FUNCTION {format.series.vol.num.title}
}
{ format.title.vol.num }
if$
+ format.btitle
link.title
'add.link
'skip$
@@ -948,6 +986,7 @@ FUNCTION {format.series.vol.num.booktitle}
}
{ format.booktitle.vol.num }
if$
+ format.btitle
in.booktitle
{ duplicate$ empty$ not entry.lang lang.en = and
{ "In: " swap$ * }
@@ -989,16 +1028,15 @@ FUNCTION {abbreviate}
if$
}
-FUNCTION {format.journal}
-{ ""
- short.journal
+FUNCTION {get.journal.title}
+{ short.journal
{ shortjournal empty$ not
- { shortjournal * }
+ { shortjournal }
{ journal empty$ not
- { journal * abbreviate }
+ { journal abbreviate }
{ journaltitle empty$ not
- { journaltitle * abbreviate }
- 'skip$
+ { journaltitle abbreviate }
+ { "" }
if$
}
if$
@@ -1006,18 +1044,33 @@ FUNCTION {format.journal}
if$
}
{ journal empty$ not
- { journal * }
+ { journal }
{ journaltitle empty$ not
- { journaltitle * }
- 'skip$
+ { journaltitle }
+ { shortjournal empty$ not
+ { shortjournal }
+ { "" }
+ if$
+ }
if$
}
if$
}
if$
+}
+
+FUNCTION {check.arxiv.preprint}
+{ #1 #5 substring$ "l" change.case$ "arxiv" =
+ { #1 }
+ { #0 }
+ if$
+}
+
+FUNCTION {format.journal}
+{ get.journal.title
duplicate$ empty$ not
{ italic.journal entry.lang lang.en = and
- 'italicize
+ 'emphasize
'skip$
if$
}
@@ -1092,7 +1145,7 @@ FUNCTION {format.edition}
{ edition change.sentence.case 's :=
s "Revised" = s "Revised edition" = or
{ "Rev. ed." }
- { s " ed." *}
+ { s " ed." * }
if$
}
{ edition }
@@ -1282,11 +1335,16 @@ FUNCTION {format.periodical.year}
}
FUNCTION {format.date}
-{ type$ "patent" = type$ "newspaper" = or
- date empty$ not and
- { date }
- { year field.or.null
- extra.label *
+{ date empty$ not
+ { type$ "patent" = type$ "newspaper" = or
+ { date }
+ { format.year }
+ if$
+ }
+ { year empty$ not
+ { format.year }
+ { "" }
+ if$
}
if$
}
@@ -1299,9 +1357,9 @@ FUNCTION {format.editdate}
}
FUNCTION {format.urldate}
-{ urldate empty$ not
- show.urldate show.url and is.pure.electronic or and
- url empty$ not and
+{ show.urldate show.url and entry.url empty$ not and
+ is.pure.electronic or
+ urldate empty$ not and
{ "\allowbreak[" urldate * "]" * }
{ "" }
if$
@@ -1312,7 +1370,10 @@ FUNCTION {hyphenate}
""
{ t empty$ not }
{ t #1 #1 substring$ "-" =
- { "-" *
+ { wave.dash.in.pages
+ { "~" * }
+ { "-" * }
+ if$
{ t #1 #1 substring$ "-" = }
{ t #2 global.max$ substring$ 't := }
while$
@@ -1432,12 +1493,9 @@ FUNCTION {check.url}
if$
}
-FUNCTION {format.url}
-{ entry.url
-}
-
FUNCTION {output.url}
-{ entry.url empty$ not
+{ show.url is.pure.electronic or
+ entry.url empty$ not and
{ new.block
entry.url output
}
@@ -1538,9 +1596,9 @@ FUNCTION {check.electronic}
}
FUNCTION {format.eprint}
-{ eprinttype empty$ not
- { eprinttype }
- { archivePrefix empty$ not
+{ archivePrefix empty$ not
+ { archivePrefix }
+ { eprinttype empty$ not
{ archivePrefix }
{ "" }
if$
@@ -1731,7 +1789,7 @@ FUNCTION {periodical}
fin.entry
}
-FUNCTION {article}
+FUNCTION {journal.article}
{ output.bibitem
output.translation
format.authors output
@@ -1865,7 +1923,7 @@ FUNCTION {preprint}
new.block
title.in.journal
{ format.series.vol.num.title "title" output.check
- "Z" set.entry.mark
+ "A" set.entry.mark
format.mark "" output.after
new.block
}
@@ -1875,13 +1933,18 @@ FUNCTION {preprint}
new.sentence
format.edition output
new.block
- output.eprint
year.after.author not
- { format.year "year" output.check }
+ { date empty$
+ { format.date output }
+ 'skip$
+ if$
+ }
'skip$
if$
format.pages bbl.pages.colon output.after
+ format.editdate "" output.after
format.urldate "" output.after
+ output.eprint
output.url
new.block
format.note output
@@ -1889,13 +1952,19 @@ FUNCTION {preprint}
}
FUNCTION {misc}
-{ journal empty$ not
- 'article
- { booktitle empty$ not
+{ get.journal.title
+ duplicate$ empty$ not
+ { check.arxiv.preprint
+ 'preprint
+ 'journal.article
+ if$
+ }
+ { pop$
+ booktitle empty$ not
'incollection
{ publisher empty$ not
'monograph
- { eprint empty$ not show.preprint and
+ { eprint empty$ not archivePrefix empty$ not or
'preprint
{ entry.is.electronic
'electronic
@@ -1920,6 +1989,8 @@ FUNCTION {archive}
misc
}
+FUNCTION {article} { misc }
+
FUNCTION {book} { monograph }
FUNCTION {booklet} { book }
@@ -1948,6 +2019,8 @@ FUNCTION {inproceedings}
FUNCTION {conference} { inproceedings }
+FUNCTION {legislation} { archive }
+
FUNCTION {map}
{ "CM" set.entry.mark
misc
@@ -2407,25 +2480,42 @@ FUNCTION {presort}
'sort.key$ :=
}
-STRINGS { longest.label last.label next.extra }
+STRINGS { longest.label last.label next.extra last.extra.label }
-INTEGERS { longest.label.width last.extra.num number.label }
+INTEGERS { longest.label.width 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 :=
+ "" 'last.extra.label :=
}
FUNCTION {forward.pass}
-{ last.label short.label =
- { last.extra.num #1 + 'last.extra.num :=
- last.extra.num int.to.chr$ 'extra.label :=
+{
+ last.label short.label =
+ { "" 'extra.label :=
+ last.extra.label text.length$ 'charptr :=
+ { last.extra.label charptr #1 substring$ "z" =
+ charptr #0 > and
+ }
+ { "a" extra.label * 'extra.label :=
+ charptr #1 - 'charptr :=
+ }
+ while$
+ charptr #0 >
+ { last.extra.label charptr #1 substring$ chr.to.int$ #1 + int.to.chr$
+ extra.label * 'extra.label :=
+ last.extra.label #1 charptr #1 - substring$
+ extra.label * 'extra.label :=
+ }
+ { "a" extra.label * 'extra.label := }
+ if$
+ extra.label 'last.extra.label :=
}
- { "a" chr.to.int$ 'last.extra.num :=
+ { "a" 'last.extra.label :=
"" 'extra.label :=
short.label 'last.label :=
}
@@ -2434,7 +2524,8 @@ FUNCTION {forward.pass}
}
FUNCTION {reverse.pass}
-{ next.extra "b" =
+{
+ next.extra "b" =
{ "a" 'extra.label := }
'skip$
if$
diff --git a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-bachelor.bst b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-bachelor.bst
index 5c08210cb3f..78c81e628be 100644
--- a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-bachelor.bst
+++ b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-bachelor.bst
@@ -4,11 +4,11 @@
%%
%% The original source files were:
%%
-%% gbt7714.dtx (with options: `2015,numerical,noslsn')
+%% gbt7714.dtx (with options: `2015,numerical')
%% -------------------------------------------------------------------
%% GB/T 7714—2015 BibTeX Style
-%% https://github.com/CTeX-org/gbt7714-bibtex-style
-%% Version: 2021/04/03 v2.1.1
+%% https://github.com/zepinglee/gbt7714-bibtex-style
+%% Version: 2021/12/08 v2.1.3
%% -------------------------------------------------------------------
%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
@@ -29,9 +29,11 @@ INTEGERS {
terms.in.macro
year.after.author
period.after.author
+ italic.book.title
sentence.case.title
link.title
title.in.journal
+ show.patent.country
show.mark
space.before.mark
show.medium.type
@@ -43,12 +45,14 @@ INTEGERS {
show.missing.address.publisher
space.before.pages
only.start.page
+ wave.dash.in.pages
show.urldate
show.url
show.doi
show.preprint
show.note
show.english.translation
+ end.with.period
}
FUNCTION {load.config}
@@ -61,9 +65,11 @@ FUNCTION {load.config}
#0 'terms.in.macro :=
#0 'year.after.author :=
#1 'period.after.author :=
+ #0 'italic.book.title :=
#1 'sentence.case.title :=
#0 'link.title :=
#1 'title.in.journal :=
+ #0 'show.patent.country :=
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
@@ -75,12 +81,14 @@ FUNCTION {load.config}
#0 'show.missing.address.publisher :=
#1 'space.before.pages :=
#0 'only.start.page :=
+ #0 'wave.dash.in.pages :=
#1 'show.urldate :=
#1 'show.url :=
#1 'show.doi :=
- #0 'show.preprint :=
+ #1 'show.preprint :=
#0 'show.note :=
#0 'show.english.translation :=
+ #1 'end.with.period :=
}
ENTRY
@@ -331,7 +339,10 @@ FUNCTION {output.check}
}
FUNCTION {fin.entry}
-{ add.period$
+{ end.with.period
+ 'add.period$
+ 'skip$
+ if$
write$
show.english.translation entry.lang lang.zh = and
{ ")"
@@ -418,10 +429,18 @@ FUNCTION {field.or.null}
if$
}
-FUNCTION {italicize}
+FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
- { "\textit{" swap$ * "}" * }
+ { "\emph{" swap$ * "}" * }
+ if$
+}
+
+FUNCTION {format.btitle}
+{ italic.book.title
+ entry.lang lang.en = and
+ 'emphasize
+ 'skip$
if$
}
@@ -556,7 +575,7 @@ FUNCTION {format.name}
{ bbl.et.al }
{ t get.str.lang 'name.lang :=
name.lang lang.en =
- { t #1 "{vv~}{ll}{~f{~}}" format.name$
+ { t #1 "{vv~}{ll}{ f{~}}" format.name$
uppercase.name
{ "u" change.case$ }
'skip$
@@ -746,7 +765,7 @@ FUNCTION {add.link}
{ url empty$ not
{ "\href{" url * "}{" * swap$ * "}" * }
{ doi empty$ not
- { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * }
+ { "\href{https://doi.org/" doi * "}{" * swap$ * "}" * }
'skip$
if$
}
@@ -762,7 +781,25 @@ FUNCTION {format.title}
'skip$
if$
entry.numbered number empty$ not and
- { bbl.colon * number * }
+ { bbl.colon *
+ type$ "patent" = show.patent.country and
+ { address empty$ not
+ { address * ", " * }
+ { location empty$ not
+ { location * ", " * }
+ { entry.lang lang.zh =
+ { "中国" * ", " * }
+ 'skip$
+ if$
+ }
+ if$
+ }
+ if$
+ }
+ 'skip$
+ if$
+ number *
+ }
'skip$
if$
link.title
@@ -907,6 +944,7 @@ FUNCTION {format.series.vol.num.title}
}
{ format.title.vol.num }
if$
+ format.btitle
link.title
'add.link
'skip$
@@ -938,6 +976,7 @@ FUNCTION {format.series.vol.num.booktitle}
}
{ format.booktitle.vol.num }
if$
+ format.btitle
in.booktitle
{ duplicate$ empty$ not entry.lang lang.en = and
{ "In: " swap$ * }
@@ -979,16 +1018,15 @@ FUNCTION {abbreviate}
if$
}
-FUNCTION {format.journal}
-{ ""
- short.journal
+FUNCTION {get.journal.title}
+{ short.journal
{ shortjournal empty$ not
- { shortjournal * }
+ { shortjournal }
{ journal empty$ not
- { journal * abbreviate }
+ { journal abbreviate }
{ journaltitle empty$ not
- { journaltitle * abbreviate }
- 'skip$
+ { journaltitle abbreviate }
+ { "" }
if$
}
if$
@@ -996,18 +1034,33 @@ FUNCTION {format.journal}
if$
}
{ journal empty$ not
- { journal * }
+ { journal }
{ journaltitle empty$ not
- { journaltitle * }
- 'skip$
+ { journaltitle }
+ { shortjournal empty$ not
+ { shortjournal }
+ { "" }
+ if$
+ }
if$
}
if$
}
if$
+}
+
+FUNCTION {check.arxiv.preprint}
+{ #1 #5 substring$ "l" change.case$ "arxiv" =
+ { #1 }
+ { #0 }
+ if$
+}
+
+FUNCTION {format.journal}
+{ get.journal.title
duplicate$ empty$ not
{ italic.journal entry.lang lang.en = and
- 'italicize
+ 'emphasize
'skip$
if$
}
@@ -1082,7 +1135,7 @@ FUNCTION {format.edition}
{ edition change.sentence.case 's :=
s "Revised" = s "Revised edition" = or
{ "Rev. ed." }
- { s " ed." *}
+ { s " ed." * }
if$
}
{ edition }
@@ -1272,11 +1325,16 @@ FUNCTION {format.periodical.year}
}
FUNCTION {format.date}
-{ type$ "patent" = type$ "newspaper" = or
- date empty$ not and
- { date }
- { year field.or.null
- extra.label *
+{ date empty$ not
+ { type$ "patent" = type$ "newspaper" = or
+ { date }
+ { format.year }
+ if$
+ }
+ { year empty$ not
+ { format.year }
+ { "" }
+ if$
}
if$
}
@@ -1289,9 +1347,9 @@ FUNCTION {format.editdate}
}
FUNCTION {format.urldate}
-{ urldate empty$ not
- show.urldate show.url and is.pure.electronic or and
- url empty$ not and
+{ show.urldate show.url and entry.url empty$ not and
+ is.pure.electronic or
+ urldate empty$ not and
{ "\allowbreak[" urldate * "]" * }
{ "" }
if$
@@ -1302,7 +1360,10 @@ FUNCTION {hyphenate}
""
{ t empty$ not }
{ t #1 #1 substring$ "-" =
- { "-" *
+ { wave.dash.in.pages
+ { "~" * }
+ { "-" * }
+ if$
{ t #1 #1 substring$ "-" = }
{ t #2 global.max$ substring$ 't := }
while$
@@ -1422,12 +1483,9 @@ FUNCTION {check.url}
if$
}
-FUNCTION {format.url}
-{ entry.url
-}
-
FUNCTION {output.url}
-{ entry.url empty$ not
+{ show.url is.pure.electronic or
+ entry.url empty$ not and
{ new.block
entry.url output
}
@@ -1528,9 +1586,9 @@ FUNCTION {check.electronic}
}
FUNCTION {format.eprint}
-{ eprinttype empty$ not
- { eprinttype }
- { archivePrefix empty$ not
+{ archivePrefix empty$ not
+ { archivePrefix }
+ { eprinttype empty$ not
{ archivePrefix }
{ "" }
if$
@@ -1721,7 +1779,7 @@ FUNCTION {periodical}
fin.entry
}
-FUNCTION {article}
+FUNCTION {journal.article}
{ output.bibitem
output.translation
format.authors output
@@ -1855,7 +1913,7 @@ FUNCTION {preprint}
new.block
title.in.journal
{ format.series.vol.num.title "title" output.check
- "Z" set.entry.mark
+ "A" set.entry.mark
format.mark "" output.after
new.block
}
@@ -1865,13 +1923,18 @@ FUNCTION {preprint}
new.sentence
format.edition output
new.block
- output.eprint
year.after.author not
- { format.year "year" output.check }
+ { date empty$
+ { format.date output }
+ 'skip$
+ if$
+ }
'skip$
if$
format.pages bbl.pages.colon output.after
+ format.editdate "" output.after
format.urldate "" output.after
+ output.eprint
output.url
new.block
format.note output
@@ -1879,13 +1942,19 @@ FUNCTION {preprint}
}
FUNCTION {misc}
-{ journal empty$ not
- 'article
- { booktitle empty$ not
+{ get.journal.title
+ duplicate$ empty$ not
+ { check.arxiv.preprint
+ 'preprint
+ 'journal.article
+ if$
+ }
+ { pop$
+ booktitle empty$ not
'incollection
{ publisher empty$ not
'monograph
- { eprint empty$ not show.preprint and
+ { eprint empty$ not archivePrefix empty$ not or
'preprint
{ entry.is.electronic
'electronic
@@ -1910,6 +1979,8 @@ FUNCTION {archive}
misc
}
+FUNCTION {article} { misc }
+
FUNCTION {book} { monograph }
FUNCTION {booklet} { book }
@@ -1938,6 +2009,8 @@ FUNCTION {inproceedings}
FUNCTION {conference} { inproceedings }
+FUNCTION {legislation} { archive }
+
FUNCTION {map}
{ "CM" set.entry.mark
misc
@@ -2248,44 +2321,26 @@ FUNCTION {presort}
'sort.key$ :=
}
-STRINGS { longest.label last.label next.extra }
+STRINGS { longest.label last.label next.extra last.extra.label }
-INTEGERS { longest.label.width last.extra.num number.label }
+INTEGERS { longest.label.width 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 :=
+ "" 'last.extra.label :=
}
FUNCTION {forward.pass}
-{ last.label short.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 :=
- short.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 :=
}
diff --git a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-numeric.bst b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-numeric.bst
index 9f57d5ed57d..0b41d731401 100644
--- a/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-numeric.bst
+++ b/Master/texmf-dist/bibtex/bst/thuthesis/thuthesis-numeric.bst
@@ -7,8 +7,8 @@
%% gbt7714.dtx (with options: `2015,thu,numerical')
%% -------------------------------------------------------------------
%% GB/T 7714—2015 BibTeX Style
-%% https://github.com/CTeX-org/gbt7714-bibtex-style
-%% Version: 2021/04/03 v2.1.1
+%% https://github.com/zepinglee/gbt7714-bibtex-style
+%% Version: 2021/12/08 v2.1.3
%% -------------------------------------------------------------------
%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
@@ -29,9 +29,11 @@ INTEGERS {
terms.in.macro
year.after.author
period.after.author
+ italic.book.title
sentence.case.title
link.title
title.in.journal
+ show.patent.country
show.mark
space.before.mark
show.medium.type
@@ -43,12 +45,14 @@ INTEGERS {
show.missing.address.publisher
space.before.pages
only.start.page
+ wave.dash.in.pages
show.urldate
show.url
show.doi
show.preprint
show.note
show.english.translation
+ end.with.period
}
FUNCTION {load.config}
@@ -61,9 +65,11 @@ FUNCTION {load.config}
#0 'terms.in.macro :=
#0 'year.after.author :=
#1 'period.after.author :=
+ #0 'italic.book.title :=
#1 'sentence.case.title :=
#0 'link.title :=
#1 'title.in.journal :=
+ #1 'show.patent.country :=
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
@@ -75,12 +81,14 @@ FUNCTION {load.config}
#0 'show.missing.address.publisher :=
#1 'space.before.pages :=
#0 'only.start.page :=
+ #0 'wave.dash.in.pages :=
#1 'show.urldate :=
#1 'show.url :=
#1 'show.doi :=
- #0 'show.preprint :=
+ #1 'show.preprint :=
#0 'show.note :=
#0 'show.english.translation :=
+ #1 'end.with.period :=
}
ENTRY
@@ -331,7 +339,10 @@ FUNCTION {output.check}
}
FUNCTION {fin.entry}
-{ add.period$
+{ end.with.period
+ 'add.period$
+ 'skip$
+ if$
write$
show.english.translation entry.lang lang.zh = and
{ ")"
@@ -418,10 +429,18 @@ FUNCTION {field.or.null}
if$
}
-FUNCTION {italicize}
+FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
- { "\textit{" swap$ * "}" * }
+ { "\emph{" swap$ * "}" * }
+ if$
+}
+
+FUNCTION {format.btitle}
+{ italic.book.title
+ entry.lang lang.en = and
+ 'emphasize
+ 'skip$
if$
}
@@ -556,7 +575,7 @@ FUNCTION {format.name}
{ bbl.et.al }
{ t get.str.lang 'name.lang :=
name.lang lang.en =
- { t #1 "{vv~}{ll}{~f{~}}" format.name$
+ { t #1 "{vv~}{ll}{ f{~}}" format.name$
uppercase.name
{ "u" change.case$ }
'skip$
@@ -746,7 +765,7 @@ FUNCTION {add.link}
{ url empty$ not
{ "\href{" url * "}{" * swap$ * "}" * }
{ doi empty$ not
- { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * }
+ { "\href{https://doi.org/" doi * "}{" * swap$ * "}" * }
'skip$
if$
}
@@ -762,7 +781,25 @@ FUNCTION {format.title}
'skip$
if$
entry.numbered number empty$ not and
- { bbl.colon * number * }
+ { bbl.colon *
+ type$ "patent" = show.patent.country and
+ { address empty$ not
+ { address * ", " * }
+ { location empty$ not
+ { location * ", " * }
+ { entry.lang lang.zh =
+ { "中国" * ", " * }
+ 'skip$
+ if$
+ }
+ if$
+ }
+ if$
+ }
+ 'skip$
+ if$
+ number *
+ }
'skip$
if$
link.title
@@ -907,6 +944,7 @@ FUNCTION {format.series.vol.num.title}
}
{ format.title.vol.num }
if$
+ format.btitle
link.title
'add.link
'skip$
@@ -938,6 +976,7 @@ FUNCTION {format.series.vol.num.booktitle}
}
{ format.booktitle.vol.num }
if$
+ format.btitle
in.booktitle
{ duplicate$ empty$ not entry.lang lang.en = and
{ "In: " swap$ * }
@@ -979,16 +1018,15 @@ FUNCTION {abbreviate}
if$
}
-FUNCTION {format.journal}
-{ ""
- short.journal
+FUNCTION {get.journal.title}
+{ short.journal
{ shortjournal empty$ not
- { shortjournal * }
+ { shortjournal }
{ journal empty$ not
- { journal * abbreviate }
+ { journal abbreviate }
{ journaltitle empty$ not
- { journaltitle * abbreviate }
- 'skip$
+ { journaltitle abbreviate }
+ { "" }
if$
}
if$
@@ -996,18 +1034,33 @@ FUNCTION {format.journal}
if$
}
{ journal empty$ not
- { journal * }
+ { journal }
{ journaltitle empty$ not
- { journaltitle * }
- 'skip$
+ { journaltitle }
+ { shortjournal empty$ not
+ { shortjournal }
+ { "" }
+ if$
+ }
if$
}
if$
}
if$
+}
+
+FUNCTION {check.arxiv.preprint}
+{ #1 #5 substring$ "l" change.case$ "arxiv" =
+ { #1 }
+ { #0 }
+ if$
+}
+
+FUNCTION {format.journal}
+{ get.journal.title
duplicate$ empty$ not
{ italic.journal entry.lang lang.en = and
- 'italicize
+ 'emphasize
'skip$
if$
}
@@ -1082,7 +1135,7 @@ FUNCTION {format.edition}
{ edition change.sentence.case 's :=
s "Revised" = s "Revised edition" = or
{ "Rev. ed." }
- { s " ed." *}
+ { s " ed." * }
if$
}
{ edition }
@@ -1272,11 +1325,16 @@ FUNCTION {format.periodical.year}
}
FUNCTION {format.date}
-{ type$ "patent" = type$ "newspaper" = or
- date empty$ not and
- { date }
- { year field.or.null
- extra.label *
+{ date empty$ not
+ { type$ "patent" = type$ "newspaper" = or
+ { date }
+ { format.year }
+ if$
+ }
+ { year empty$ not
+ { format.year }
+ { "" }
+ if$
}
if$
}
@@ -1289,9 +1347,9 @@ FUNCTION {format.editdate}
}
FUNCTION {format.urldate}
-{ urldate empty$ not
- show.urldate show.url and is.pure.electronic or and
- url empty$ not and
+{ show.urldate show.url and entry.url empty$ not and
+ is.pure.electronic or
+ urldate empty$ not and
{ "\allowbreak[" urldate * "]" * }
{ "" }
if$
@@ -1302,7 +1360,10 @@ FUNCTION {hyphenate}
""
{ t empty$ not }
{ t #1 #1 substring$ "-" =
- { "-" *
+ { wave.dash.in.pages
+ { "~" * }
+ { "-" * }
+ if$
{ t #1 #1 substring$ "-" = }
{ t #2 global.max$ substring$ 't := }
while$
@@ -1422,12 +1483,9 @@ FUNCTION {check.url}
if$
}
-FUNCTION {format.url}
-{ entry.url
-}
-
FUNCTION {output.url}
-{ entry.url empty$ not
+{ show.url is.pure.electronic or
+ entry.url empty$ not and
{ new.block
entry.url output
}
@@ -1528,9 +1586,9 @@ FUNCTION {check.electronic}
}
FUNCTION {format.eprint}
-{ eprinttype empty$ not
- { eprinttype }
- { archivePrefix empty$ not
+{ archivePrefix empty$ not
+ { archivePrefix }
+ { eprinttype empty$ not
{ archivePrefix }
{ "" }
if$
@@ -1721,7 +1779,7 @@ FUNCTION {periodical}
fin.entry
}
-FUNCTION {article}
+FUNCTION {journal.article}
{ output.bibitem
output.translation
format.authors output
@@ -1855,7 +1913,7 @@ FUNCTION {preprint}
new.block
title.in.journal
{ format.series.vol.num.title "title" output.check
- "Z" set.entry.mark
+ "A" set.entry.mark
format.mark "" output.after
new.block
}
@@ -1865,13 +1923,18 @@ FUNCTION {preprint}
new.sentence
format.edition output
new.block
- output.eprint
year.after.author not
- { format.year "year" output.check }
+ { date empty$
+ { format.date output }
+ 'skip$
+ if$
+ }
'skip$
if$
format.pages bbl.pages.colon output.after
+ format.editdate "" output.after
format.urldate "" output.after
+ output.eprint
output.url
new.block
format.note output
@@ -1879,13 +1942,19 @@ FUNCTION {preprint}
}
FUNCTION {misc}
-{ journal empty$ not
- 'article
- { booktitle empty$ not
+{ get.journal.title
+ duplicate$ empty$ not
+ { check.arxiv.preprint
+ 'preprint
+ 'journal.article
+ if$
+ }
+ { pop$
+ booktitle empty$ not
'incollection
{ publisher empty$ not
'monograph
- { eprint empty$ not show.preprint and
+ { eprint empty$ not archivePrefix empty$ not or
'preprint
{ entry.is.electronic
'electronic
@@ -1910,6 +1979,8 @@ FUNCTION {archive}
misc
}
+FUNCTION {article} { misc }
+
FUNCTION {book} { monograph }
FUNCTION {booklet} { book }
@@ -1938,6 +2009,8 @@ FUNCTION {inproceedings}
FUNCTION {conference} { inproceedings }
+FUNCTION {legislation} { archive }
+
FUNCTION {map}
{ "CM" set.entry.mark
misc
@@ -2248,44 +2321,26 @@ FUNCTION {presort}
'sort.key$ :=
}
-STRINGS { longest.label last.label next.extra }
+STRINGS { longest.label last.label next.extra last.extra.label }
-INTEGERS { longest.label.width last.extra.num number.label }
+INTEGERS { longest.label.width 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 :=
+ "" 'last.extra.label :=
}
FUNCTION {forward.pass}
-{ last.label short.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 :=
- short.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 :=
}
diff --git a/Master/texmf-dist/doc/latex/thuthesis/CHANGELOG.md b/Master/texmf-dist/doc/latex/thuthesis/CHANGELOG.md
index d68be6a4604..086fa411a54 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/CHANGELOG.md
+++ b/Master/texmf-dist/doc/latex/thuthesis/CHANGELOG.md
@@ -6,67 +6,110 @@
## [Unreleased]
+## [v7.2.4] - 2022-03-19
+
+### Added
+
+- 增加警告提醒本科生将附录置于声明后([#682](https://github.com/tuna/thuthesis/issues/682))。
+- 增加警告提醒本科生将插图索引和表格索引置于正文后。
+- 本科生的 `\listoffiguresandtables` 改为分开的插图索引和表格索引。
+
+### Changed
+
+- 本科生的“答辩委员会名单”、“指导教师/小组学术评语”和“答辩委员会决议书”改为不输出内容([#688](https://github.com/tuna/thuthesis/issues/688))。
+- 研究生和博后不再默认载入 `bibunits`([#710](https://github.com/tuna/thuthesis/issues/710))。
+- 参考文献表中预印本的文献类型标识改为“A”。
+- 允许多行页眉([#735](https://github.com/tuna/thuthesis/issues/735))。
+
+### Fixed
+
+- 修复本科生“使用授权说明”中“日期”后缺失的冒号([#679](https://github.com/tuna/thuthesis/issues/679))。
+- 修复 `TikZ` 的 `external` 库与 `pdfpages` 的兼容性问题([#693](https://github.com/tuna/thuthesis/issues/693))。
+- 参考文献表中专利文献使用 `address`/`lcoation` 输出专利国别。
+- 修正一章内脚注数量超过 10 个时的报错问题,改为警告([#742](https://github.com/tuna/thuthesis/issues/742))。
+
+### Removed
+
+- 去掉了 `siunitx` 的 `inter-unit-product` 设置。
+
## [v7.2.3] - 2021-05-31
+
### Changed
-- 中文模板的公式编号改为中文括号(#297)。
+
+- 中文模板的公式编号改为中文括号([#287](https://github.com/tuna/thuthesis/issues/287))。
### Fixed
-- 修正硕士论文书脊的字号(#647)。
-- 修正本科生附录(调研和翻译)的目录在 TeX Live 2019 前无法生成的问题(#659)。
-- 修正本科生主要符号表的标题(#661)。
+
+- 修正硕士论文书脊的字号([#647](https://github.com/tuna/thuthesis/issues/647))。
+- 修正本科生附录(调研和翻译)的目录在 TeX Live 2019 前无法生成的问题([#659](https://github.com/tuna/thuthesis/issues/659))。
+- 修正本科生主要符号表的标题([#661](https://github.com/tuna/thuthesis/issues/661))。
## [v7.2.2] - 2021-04-03
+
### Changed
-- 修改授权说明的内容和格式,同 2020 年 12 月版 Word 模板一致(#625)。
-- 参考文献的页码前与冒号之间加上空格,同步 2021 年 3 月版《指南》的格式修改(#629)。
+
+- 修改授权说明的内容和格式,同 2020 年 12 月版 Word 模板一致([#625](https://github.com/tuna/thuthesis/issues/625))。
+- 参考文献的页码前与冒号之间加上空格,同步 2021 年 3 月版《指南》的格式修改([#629](https://github.com/tuna/thuthesis/issues/629))。
- 著者-出版年制参考文献表的著者姓名与年份之间改为逗号。
### Fixed
-- 修正图表等浮动体与文字之间的距离(#614、#617)。
-- 修正表格、算法等浮动体的行距(#619)。
-- 修正了上标式引用后与中文之间多余的空格(#624)。
-- 修正了参考文献的姓名或年份中含有中括号时的引用错误(#630)。
+
+- 修正图表等浮动体与文字之间的距离([#614](https://github.com/tuna/thuthesis/issues/614)、[#617](https://github.com/tuna/thuthesis/issues/617))。
+- 修正表格、算法等浮动体的行距([#619](https://github.com/tuna/thuthesis/issues/619))。
+- 修正了上标式引用后与中文之间多余的空格([#624](https://github.com/tuna/thuthesis/issues/624))。
+- 修正了参考文献的姓名或年份中含有中括号时的引用错误([#630](https://github.com/tuna/thuthesis/issues/630))。
## [v7.2.1] - 2021-03-21
+
### Added
+
- 在文档中添加更多关于数学公式样式的说明。
### Changed
+
- 允许控制研究生的声明页是否添加页眉页脚。
### Fixed
-- 调整文字与图表等浮动体之间的距离(#614)。
+
+- 调整文字与图表等浮动体之间的距离([#614](https://github.com/tuna/thuthesis/issues/614))。
- 修复一些字体选择相关的问题。
## [v7.2.0] - 2021-03-12
+
### Added
+
- 新增英文版写作指南要求的格式。
-- 新增选题报告的格式(#579)。
+- 新增选题报告的格式([#579](https://github.com/tuna/thuthesis/issues/579))。
- 新增 `figure-number-sepatator` 等选项设置图表编号的连接符。
- 新增数学符号字体风格选项 `math-style`。
- 新增选项控制数学字体风格的细节:`uppercase-greek`、`less-than-or-equal`、`integral`、`integral-limits`、`partial` 和 `math-ellipsis`。
- 新增数学字体试验性选项 `math-font = newtx`。
### Changed
-- 研究生的声明页默认加上页眉和页码,不受 `page-style` 的控制(#574)。
-- 取消图表标题的悬挂缩进(#589)。
+
+- 研究生的声明页默认加上页眉和页码,不受 `page-style` 的控制([#574](https://github.com/tuna/thuthesis/issues/574))。
+- 取消图表标题的悬挂缩进([#589](https://github.com/tuna/thuthesis/issues/589))。
- 英文封面的联合导师改为“Co-supervisor”。
- 联合导师的 key 改为 `co-supervisor`,同英文版模板一致。
### Fixed
-- 修正 `longtable` 宏包的配置(#584)。
-- 修正本科生的“目录”、“声明”和“致谢”等标题中的空白(#591)。
+
+- 修正 `longtable` 宏包的配置([#584](https://github.com/tuna/thuthesis/issues/584))。
+- 修正本科生的“目录”、“声明”和“致谢”等标题中的空白([#591](https://github.com/tuna/thuthesis/issues/591))。
- 修正参考文献的格式,取消页码与前面冒号之间的空格。
- 修正中文封面的字距。
## [v7.1.0] - 2020-10-14
+
### Changed
+
- 更新摘要的标题格式(研究生 2020-09-18 版)。
- 更新目录的格式(研究生 2020-09-18 版)。
- 图表浮动体的位置参数默认为 `h`。
- 更新示例文档。
### Fixed
+
- 修正 “keywords” 的拼写。
- 修正授权使用说明的内容。
- 修正授伪粗字体的粗度。
@@ -78,17 +121,21 @@
- 修正脚注的行距和缩进距离。
## [v7.0.0] - 2020-09-09
+
### Changed
+
- 更新 2020 年版目录、插图和附表清单的格式。
- 更新 2020 年版使用授权说明的内容。
- 更新 2020 年版参考文献表的格式。
### Added
+
- 新增 2020 年版“答辩委员会名单”页。
- 新增 biblatex 支持。
- 新增本科生外文系格式的支持。
### Fixed
+
- 修正本科生密级的字体。
- 修正表格的默认字号。
- 修正参考文献表的行距和段前段后间距。
@@ -97,72 +144,88 @@
- 修正封面的语言切换。
## [v6.1.3] - 2020-07-09
+
### Added
+
- 新增选项 `statement-page-style = empty / plain` 同时控制声明的页眉和页脚。
### Fixed
+
- `\record` 命令中,如果 `output` 配置为 `print`,则强制进行 `\cleardoublepage`,保证记录表独立成页。
-- 修正了在导言区设置论文主要语言无效的问题(#560)。
+- 修正了在导言区设置论文主要语言无效的问题([#560](https://github.com/tuna/thuthesis/issues/560))。
- 修正了研究生插入扫描版声明页时的页眉。
### Deprecated
+
- 选项 `statement-page-number` 已过时。
## [v6.1.2] - 2020-06-14
+
### Changed
+
- `\statement` 和 `\copyrightpage` 命令都会在 PDF 中生成相应位置的书签。
- `\statement` 命令编译生成声明页默认不含页码。
- `\statement[xxx.pdf]` 插入扫描页时在页脚生成页码,以解决打印版与电子版页码不一致的情况。
- 使用 `l3build` 编译的版本,在提交到 CTAN 时提供 TDS 结构,以解决编译时 `tsinghua-name-bachelor.pdf` 找不到的问题。
### Added
+
- 添加 `\record` 命令用于本科生插入综合论文训练记录表,同时在 PDF 中生成对应书签。
- 添加选项 `statement-page-number` 控制编译声明页时是否含页码。
### Fixed
+
- 修正示例代码中关于 `\statement` 的 typo。
## [v6.1.1] - 2020-06-12
+
### Changed
+
- 书脊中的西文不再需要调整高度。
- 修改预生成的隶书版本本科生封面学校名称的文件名为 `tsinghua-name-bachelor.pdf`,不再尝试使用系统字体生成。
- 将论文示例的文件名更改为 `thuthesis-example.tex / pdf`,以符合 CTAN 的要求。
### Added
-- 添加选项 `include-spine`,允许在正文中插入书脊页(#551)。
+
+- 添加选项 `include-spine`,允许在正文中插入书脊页([#551](https://github.com/tuna/thuthesis/issues/551))。
- 添加选项 `spine-title`、`spine-author` 控制书脊的内容。
- 添加选项 `spine-font` 控制书脊的字号。
-- 添加选项 `output` 选择输出格式为打印版或用于提交的电子版(#553)。
+- 添加选项 `output` 选择输出格式为打印版或用于提交的电子版([#553](https://github.com/tuna/thuthesis/issues/553))。
### Fixed
+
- 修正书脊的格式。
- 修复文档中 Changelog 的格式问题。
## [v6.1.0] - 2020-06-08
+
### Changed
+
- 在 `translation` 环境中使用 `\bibliography` 改为生成参考文献,
- 对应的原文索引改为 `translation-index` 环境(#529)。
+ 对应的原文索引改为 `translation-index` 环境([#529](https://github.com/tuna/thuthesis/issues/529))。
- 附录的图、表不再加入索引。
- 使用 `threeparttable` 示例表内脚注。
-- 本科生的目录章标题的西文字母和数字默认使用 Arial(#542)。
+- 本科生的目录章标题的西文字母和数字默认使用 Arial([#542](https://github.com/tuna/thuthesis/issues/542))。
- GitHub repo 所有者更改为清华大学 TUNA 协会。
-- 接管 `ctex` 的 `fontset` 选项,允许更灵活的字体配置(#498)。
+- 接管 `ctex` 的 `fontset` 选项,允许更灵活的字体配置([#498](https://github.com/tuna/thuthesis/issues/498))。
### Fixed
-- 本科生附录的调研报告使用英文(#479)。
+
+- 本科生附录的调研报告使用英文([#479](https://github.com/tuna/thuthesis/issues/479))。
- 修正本科生附录的 `algorithm` 和 `listings` 环境的编号格式。
-- 研究生的“使用授权说明”增加一空白页(#504)。
-- 修正 publication 列表行距问题(#507)。
+- 研究生的“使用授权说明”增加一空白页([#504](https://github.com/tuna/thuthesis/issues/504))。
+- 修正 publication 列表行距问题([#507](https://github.com/tuna/thuthesis/issues/507))。
- 修正研究生目录的行距。
-- 调整本科生封面有辅导教师、联合指导教师时的格式(#522, #537)。
-- 修正本科生封面日期的字体(#532)。
+- 调整本科生封面有辅导教师、联合指导教师时的格式([#522](https://github.com/tuna/thuthesis/issues/522), [#537](https://github.com/tuna/thuthesis/issues/537))。
+- 修正本科生封面日期的字体([#532](https://github.com/tuna/thuthesis/issues/532))。
- 设置三线表横线的默认粗度。
- 修正文档中关于本科生学科(专业)名称的说明。
- 允许用户使用文档类选项 `openright`。
-- 修正本科生的“单设一页”格式(#545)。
+- 修正本科生的“单设一页”格式([#545](https://github.com/tuna/thuthesis/issues/545))。
- 研究生的正文(main matter)起始于奇数页。
### Added
+
- 允许使用边注。
- 新增 `amsthm` 支持。
- 支持单个关键词设置样式。
@@ -170,37 +233,47 @@
- 添加选项 `toc-chapter-style` 控制本科生的目录章标题的西文字体。
## [v6.0.2] - 2020-02-23
+
### Fixed
-- 修复图表公式目录内容缺失(#467)。
+
+- 修复图表公式目录内容缺失([#467](https://github.com/tuna/thuthesis/issues/467))。
- 修复 Github Actions 执行 l3build check 问题。
- 文本模式使用 `\checkmark`。
### Added
+
- 补充 PDF 元信息:文档标题,语言。
### Changed
+
- 补充“著者-出版年”引用命令使用方法。
- 使用 `xeCJKfntef` 替换 `CJKfntef`。
## [v6.0.1] - 2020-02-03
+
### Changed
+
- 更新文档。
- 更新 bib 测试用例。
### Fixed
-- 修复 PDF 目录层级问题(#457)。
-- 修复 PDF 中章节连接问题(#453)。
+
+- 修复 PDF 目录层级问题([#457](https://github.com/tuna/thuthesis/issues/457))。
+- 修复 PDF 中章节连接问题([#453](https://github.com/tuna/thuthesis/issues/453))。
## [v6.0.0] - 2020-01-06
+
### Added
+
- 新增 `survey`(调研阅读报告)和 `translation`(书面翻译)环境用于本科生的附录,
- 其中的参考文献引用独立于论文正文(#343)。
+ 其中的参考文献引用独立于论文正文([#343](https://github.com/tuna/thuthesis/issues/343))。
- 新增论文语言选项。
- 增加 `l3build` 测试。
### Changed
+
- 重新设计 `\thusetup` 的接口。
-- 指导教师的姓名和职称用英文逗号分开(#424)。
+- 指导教师的姓名和职称用英文逗号分开([#424](https://github.com/tuna/thuthesis/issues/424))。
- 重新设计封面(题名页)。
- `\makecover` 拆分为 `\maketitle`、`\copyrightpage`。
- 中英文摘分别用 `abstract`、`abstract*` 环境生成。
@@ -212,26 +285,34 @@
- 整理 Makefile,便于日常使用。
## Removed
+
- 移除 `secret` 选项。
- 移除 `translationbib` 环境。
- 移除 `tocarialchapter`、`tocarialchapterentry` 和 `tocarialchapterpage` 选项。
- 只保留 xelatex 编译方式。
### Fixed
+
- 修正本科生的文献引用样式。
- 修正本科生目录章标题的字体。
- 处理 `hyperref` 与 `unicode-math` 的兼容性问题。
## [v5.5.2] - 2019-04-21
+
### Changed
+
- 使用 XITS 数学字体。
## [v5.5.1] - 2019-04-16
+
### Changed
+
- `\thu@textcircled`: 修复 minipage 中 footnote 编号问题。
## [v5.5.0] - 2019-03-15
+
### Changed
+
- 增加选项使用英文模板。
- 使用 `unicode-math` 处理数学字体。
- Windows 的中文字体开启伪粗。
@@ -242,11 +323,15 @@
- 增加 `nomencl` 宏包的支持。
## [v5.4.5] - 2018-05-17
+
### Changed
+
- `\normalsize`: 调整公式和正文间距。
## [v5.4.4] - 2018-04-22
+
### Changed
+
- 删除 `arialtitle`,所有论文格式都一样。
- 让目录中的引用不影响正文中引用序号。
- 参考文献列表的页码使用 hyphen 取代 en dash。
@@ -254,40 +339,56 @@
- 允许连续两个文献引用使用连接号。
## [v5.4.2] - 2017-12-18
+
### Changed
+
- 删除 `\pozhehao`。
- 使用 degree 取代 type 选项。
## [v5.4.1] - 2017-12-04
+
### Changed
+
- bst 在 ctan 上不分路径,故加前缀。
## [v5.4.0] - 2017-12-3
+
### Changed
+
- 基于 `natbib` 的环境调整距离兼容性更好。
- `\bibliographystyle{<newbib>}` will cause `\bibstyle@newbib` to be called on THE NEXT LATEX RUN (via the aux file).
## [v5.3.2] - 2017-05-01
+
### Changed
+
- 定理环境格式设置(环境标题和环境正文字体设置)统一放置到 .cfg 文件中。
## [v5.3.1] - 2016-03-20
+
### Changed
+
- 使用 CTeX 默认中文字体配置,支持不同引擎。
- `ctex` 默认加载 `CJKspace`。
- 几乎没人主动安装 Arial 字体。
## [v5.3.0] - 2016-03-11
+
### Changed
+
- 更新到研究生院 2016.3 指南。
## [v5.2.3] - 2016-02-13
+
### Changed
+
- `\thu@def@fontsize`: 改写字体定义命令。
- 安全注释本科公式部分。
## [v5.2.2] - 2016-02-01
+
### Changed
+
- 不希望 `newtx` 修改 `\@makefnmark`。
- 利用 `environ` 的 `\Collect@Body`。
- 目录中标题和页码都是链接。
@@ -297,26 +398,34 @@
- 用 `environ` 封装的 `\Collect@Body`。
## [v5.2.1] - 2016-01-14
+
### Changed
+
- 使用 `newtx` 替换 `txfonts`。
- 使用 `newtx` 字体。
- `denotation`: 利用 `enumitem` 改造环境定义,更直观。
- `acknowledgement`: 用 `acknowledgement` 替换 `ack`。
## [v5.2.0] - 2016-01-11
+
### Changed
+
- `\title`: 增加 `\title` 排版翻译标题。
- `translationbib`: 增加翻译文献环境 `translationbib`。
- `\publicationskip`: 增加 `\publicationskip`。
## [v5.1.0] - 2015-12-27
+
### Changed
+
- `\thusetup`: 通过 `\thusetup` 统一设置封面信息。
- `\thu@first@titlepage`: 利用 `CJKfilltwosides` 优化封面排版。
- `\thu@first@titlepage`: 修改联合指导教师显示问题。
## [v5.0.0] - 2015-12-21
+
### Changed
+
- 使用 `kvoptions` 简化选项 type。
- norggedbottom 选项修改为 raggedbottom。
- 删除 `paralist` 选项。
@@ -324,25 +433,29 @@
- 不再将页面尺寸写入 dvi,因为已不支持 dvips, 而该方案会使得在使用 tikzexternalize 时外部 PDF 图片 BBox 不对。
- 用 `geometry` 简化设置。
- `\ps@thu@headings`: 利用 `fancyhdr` 设置页眉页脚。
-- 修正定理字样为黑体(#104)。
+- 修正定理字样为黑体([#104](https://github.com/tuna/thuthesis/issues/104))。
- 本科附录图表编号用-不用.(如图A-1,表A-2)。
- 用 `\ctexset` 来设置,替换复杂的 `\@startsection`。
-- 修正章节间距问题(#57)。
+- 修正章节间距问题([#57](https://github.com/tuna/thuthesis/issues/57))。
- 硕士博士论文目录只出现到第 3 级标题即可。其他未明确要求。
-- `\tableofcontents`: 修正学位论文中目录里节前缩进(#103)。
-- `\makecover`: 使用 `pdfpages` 宏包支持本硕博论文授权说明扫描版(#36)。
-- `acknowledgement`: 使用 pdfpages 宏包支持本硕博论文声明扫描版(#36)。
+- `\tableofcontents`: 修正学位论文中目录里节前缩进([#103](https://github.com/tuna/thuthesis/issues/103))。
+- `\makecover`: 使用 `pdfpages` 宏包支持本硕博论文授权说明扫描版([#36](https://github.com/tuna/thuthesis/issues/36))。
+- `acknowledgement`: 使用 pdfpages 宏包支持本硕博论文声明扫描版([#36](https://github.com/tuna/thuthesis/issues/36))。
- `\inlinecite`: 用 `\inlinecite` 替换 `\onlinecite`。为保证兼 容性,`\onlinecite` 会保留。
-- `achievements`: 博士后就不提在学期间了,不合适(#100)。
-- `achievements`: 让简历部分更符合格式指南和示例文件(#122)。
+- `achievements`: 博士后就不提在学期间了,不合适([#100](https://github.com/tuna/thuthesis/issues/100))。
+- `achievements`: 让简历部分更符合格式指南和示例文件([#122](https://github.com/tuna/thuthesis/issues/122))。
- `\shuji`: 扩展 `\shuji[<标题>][<作者>]`。
## [v4.8.1] - 2014-12-09
+
### Changed
+
- 按照 CTAN 的要求整理一下文件。
## [v4.8] - 2014-11-25
+
### Changed
+
- no need to load `indentfirst` directly since we use `ctex`.
- 内部调用 `ctex` 宏包,自动检测编译引擎。
- dvips method is deprecated. We ask their users to load it manually.
@@ -355,7 +468,9 @@
- 在 CJK 模式下用 `CJKspace` 保留中英文间空格。
## [v4.7] - 2012-06-12
+
### Changed
+
- 去掉 `hypernat` 依赖,`hyperref` 和 `natbib` 可以很好配合了。
- 修改本科生页脚间距与样例基本一致。
- `\ps@thu@headings`: 本科页码用小五号字。
@@ -368,7 +483,9 @@
- `\thu@makeabstract`: Bachelor sample uses Keywords w/o space `-_-`
## [v4.6] - 2011-10-22
+
### Changed
+
- 增加博士后文档部分。
- 使用手册更新。
- 增加 postdoctor 选项。
@@ -379,7 +496,9 @@
- `resume`: 支持可选参数,自己定义简历章节标题。
## [v4.5.2] - 2010-09-19
+
### Changed
+
- 研究生页面边距由 3.2cm 改为 3cm。
- 本科论文日期具体到日。
- `\makecover`: 本科封面和授权说明之间不要空白页。
@@ -387,28 +506,38 @@
- `acknowledgement`: 研究生论文的致谢和声明终于分开了。
## [v4.5.1] - 2009-01-06
+
### Changed
+
- 太好了,不用处理 `longtable` 的 `\caption` 了。
- `\listoftables*`: 更优雅的插图/表格索引,避免跟 `caption` 包冲 突。`\thu@listof` 相应修改。
## [v4.5] - 2009-01-04
+
### Changed
+
- 加入 XeTeX 支持,需要 `xeCJK`。
- 彻底转向 UTF-8,并支持 XeLaTeX。
- 增加 xetex, pdftex 选项。
- `\shuji`: 简化代码,同时支持 XeLaTeX。
## [v4.4.4] - 2008-06-12
+
### Changed
+
- 修复了一个从 v4.3 升级到 v4.4 过程中的丢失公式索引的 bug,原修改代码保留备忘。
## [v4.4.3] - 2008-06-09
+
### Changed
+
- `\thu@first@titlepage`: 修改本科生论文封面格式以符合新样例。
- `\thu@first@titlepage`: 修改本科生论文封面日期格式以符合新样例。
## [v4.4.2] - 2008-06-07
+
### Changed
+
- 本科生格式终于也开始用空格作为关键字分隔符了。
- 本科生签名之间距离改为 `\hskip1em`。
- `\thu@authorization@mk`: 修改本科生的授权部分,按照 2008 年的新样例。
@@ -416,7 +545,9 @@
- `\thu@makeabstract`: Bachelor English abstract format requires indent and no hang-indent.
## [v4.4] - 2008-06-18
+
### Changed
+
- 修复网址断字。
- `\backmatter`: 本科正文后的页码延续前面的阿拉伯数字,不再用罗马数 字。
- `\backmatter`: 本科取消了所有页眉。
@@ -430,23 +561,31 @@
- `\tableofcontents`: 本科章目录项一直用黑体(Arial)。
## [v4.3] - 2008-03-11
+
### Changed
+
- 子图引用时加括号。
## [v4.2] - 2008-03-07
+
### Changed
+
- `\eqref` 加括号。
- 调整证明环境的编号和结尾的方块。
- `\thu@doctor@engcover`: 博士英文封面补充联合导师。
## [v4.0] - 2007-11-08
+
### Changed
+
- `\tableofcontents`: 本科研究生目录字号行距都不同。
- **内部**密级前面终究还是不要五角星了。
- `\thu@authorization@mk`: 研究生的授权部分调整了一下,不知道老师为什么总爱修改 那些无关紧要的格式,郁闷。感谢 PMHT@newsmth 的认真比对。
## [v3.1] - 2007-10-09
+
### Changed
+
- 本科的目录又不要 arial 字体了。
- replace `mathptmx` with `txfonts`.
- 英文摘要标题要搞特殊化。
@@ -460,7 +599,9 @@
- `\thu@makeabstract`: 研究生关键词不再沉底。
## [v3.0] - 2007-05-13
+
### Changed
+
- 不用专门为本科论文生成“**提交**”版本了。
- 没有了综合论文训练页面,很多本科论文专用命令就消失了。
- 删除 submit 选项。
@@ -473,7 +614,9 @@
- `acknowledgement`: 本科论文声明部分图片扫描取消。
## [v2.6.4] - 2006-10-23
+
### Changed
+
- 增加 `neverdecrease` 选项。
- `\thu@makeabstract`: **Keywords** but not **Key words**.
- `\listoftables*`: 增加 `\listoffigures*`,`\listoftables*`。
@@ -481,12 +624,16 @@
- 调整参考文献标签宽度,使得条目增多时仍能对齐。
## [v2.6.3] - 2006-07-01
+
### Changed
+
- `\thu@makeabstract`: 为本科正确设置目录及以后的页码。
- `acknowledgement`: 重画双虚线,自适应页面宽度。
## [v2.6.2] - 2006-06-20
+
### Changed
+
- 改正 groupmembers 的拼写错误。
- 去掉 `paralist` 的 `newitem` 和 `newenum` 选项,因为默认是打开的。
- `\thu@def@fontsize`: 引入此命令重新定义字号。
@@ -500,11 +647,15 @@
- `\equcaption`: 此命令配合 `amsmath` 命令基本可以满足所有 公式需要。
## [v2.6.1] - 2006-06-16
+
### Changed
+
- 取消 `thubib.bst` 中 inbook 类 volume 后的页 码。
## [v2.6] - 2006-06-09
+
### Changed
+
- 增加 dvipdfm 选项。
- 增加 `longtable`。
- 去除 hyperref 选项,等待全局传递。
@@ -513,7 +664,9 @@
- `\thu@first@titlepage`: 本科生题目加长,最多 24 个字。
## [v2.5.3] - 2006-06-08
+
### Changed
+
- submit 选项的一个笔误。
- `\backmatter`: 第一章永远右开。
- 不管 caption 出现在什么位置,`\aboveskip` 总是出现在标题和浮动体之间的距离。
@@ -522,7 +675,9 @@
- `\equcaption`: 取消 `\equcaption` 的参数
## [v2.5.2] - 2006-06-01
+
### Changed
+
- 更改默认列表距离。
- 上一个版本忘了把研究生的公式编号排除。
- `\thu@chapter*`: 定义自己的 `\thu@chapter*`。
@@ -534,7 +689,9 @@
- `resume`: 研究生的个人介绍要右开。
## [v2.5.1] - 2006-05-28
+
### Changed
+
- 如果选项设置了 dvips,但是用 PDFLaTeX 编译,报错。
- 根据教务处的新要求调整附录部分。
- 参考文献中杂志文章如果没有卷号,那么页码直接跟在 年份后面,并用句点分割。在 `thubib.bst` 中增加 output.year 函数。
@@ -560,7 +717,9 @@
- `resume`: 教务处和研究生院非要搞的不一样!
## [v2.5] - 2006-05-20
+
### Changed
+
- 对本科论文进行大幅度的重写,因为教务处修改了格式要求。
- 重新整理代码,使其布局更易读。
- 增加本科论文的提交选项 submit。
@@ -583,16 +742,22 @@
- 不用 `\CJKcaption`,在导言区直接引入配置文件。
## [v2.4.2] - 2006-04-18
+
### Changed
+
- 去掉参考文献第二个作者后面烦人的逗号。
## [v2.4.1] - 2006-04-17
+
### Changed
+
- 2.4 忘了把关键词的 tabular 改成 thu@tabular。
- 参考文献最后一个作者前是逗号而不是 and。
## [v2.4] - 2006-04-15
+
### Changed
+
- Fill more pdf info. with `\hypersetup`.
- 自动隐藏密级为内部时后面的五角星。
- 增加“注释(Remark)”环境。
@@ -616,7 +781,9 @@
- 参考文献间距调小一点,label 长度增加一点,以便让超过 100 的参考文献更好地对齐。
## [v2.3] - 2006-04-09
+
### Changed
+
- Fix a great bug: `\PassOptionsToClass` and `\LoadClass` rather than `\PassOptionToPackage` and `\LoadPackage`.
- Reorganize the codes in cover, make the pagestyle more readable.
- Add gbk2uni into the document.
@@ -629,14 +796,18 @@
- Change the brace in the cover.
## [v2.2] - 2006-03-26
+
### Changed
+
- Adjust margins. How bad it is to simulate MS WORD!.
- Add bachelor training overview details supporting.
- CJK support in preamble.
- Adjust hyperref to avoid boxes around links.
## [v2.1] - 2006-03-03
+
### Changed
+
- Add support to bachelor thesis.
- Remove `fancyhdr` and `geometry`.
- Redefine footnote marks.
@@ -651,11 +822,15 @@
- `\makecover`: 分成几个小模块来搞,不然这个 macro 太大了,看不过来。
## [v2.0e] - 2005-12-18
+
### Changed
+
- `denotation`: 主要符号表定义为一个 list,用起来方便。
## [v2.0] - 2005-12-20
+
### Changed
+
- `\ps@thu@headings`: 以前的太乱了,重新整理过清晰多了。
- `\tableofcontents`: 附录的目录项需要调整一下。以及公式编号方式等等。
- 增加了封面密级,增加博士封面支持
@@ -664,38 +839,53 @@
- `resume`: 最后决定将 resume 定义为环境。这样与前面的主要符号 表、致谢等对应。
## [v1.5] - 2005-12-16
+
### Changed
+
- `acknowledgement`: 在那些不显示编号的章节前面先执行一次 `\cleardoublepage`,使新开章节的页码到达正确的状态。否则会因为 `\addcontentsline` 在 chapter 之前而导致目录页码错误。
- `resume`: 增加个人简历章节的命令,去掉主文件中需要重新 定义 `\cleardoublepage` 和自己写 `\markboth`,`\addcontentsline` 的部分。
## [v1.4rc1] - 2005-12-14
+
### Changed
+
- I do not know why `\thu@authorizationaddon` does not work now for v1.3, while it's fine in v1.2. Temporarily, I remove the directive :(. There might be better solution. Other changes: add `config` option to subfig to be compatible with subfigure. add `courier` package for tt font.
- I have to put all chinese chars into cfg, otherwise they would not appear.
## [v1.4] - 2005-12-05
+
### Changed
+
- Fix the problem of **chinese**, which is because both CJK and everysel redefine the `\selectfont`. So, a not so good workaround is to merge them up. Add `shuji.tex` example. Add `\pozhehao` command.
## [v1.3] - 2005-11-14
+
### Changed
+
- Replace `subfigure` with `subfig`, replace `caption2` with `caption`, add details about using figure are in the example.
## [v1.2] - 2005-11-04
+
### Changed
+
- Remove `fancyref`; Remove `ucite` and implement `\onlinecite`; use package `arial` or `helvet` selectively.
## [v1.1] - 2005-11-03
+
### Changed
+
- Initial version, migrate from the old ``Bao--Pan'' version. Make the template a class instead of package.
## [v1.0] - 2005-07-06
+
### Changed
+
- Please refer to ``Bao--Pan'' version.
-[Unreleased]: https://github.com/tuna/thuthesis/compare/v7.2.3...HEAD
+[Unreleased]: https://github.com/tuna/thuthesis/compare/v7.2.4...HEAD
+[v7.2.4]: https://github.com/tuna/thuthesis/compare/v7.2.3...v7.2.4
[v7.2.3]: https://github.com/tuna/thuthesis/compare/v7.2.2...v7.2.3
[v7.2.2]: https://github.com/tuna/thuthesis/compare/v7.2.1...v7.2.2
[v7.2.1]: https://github.com/tuna/thuthesis/compare/v7.2.0...v7.2.1
diff --git a/Master/texmf-dist/doc/latex/thuthesis/README.md b/Master/texmf-dist/doc/latex/thuthesis/README.md
index 455b858f95b..c84c7f409f8 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/README.md
+++ b/Master/texmf-dist/doc/latex/thuthesis/README.md
@@ -15,10 +15,6 @@ Scroll down for the English version of README.
**由于模板升级频繁,在开始使用和提问前,请确保您已经认真完整地阅读了使用说明文档和示例代码。**
-**由于模板升级频繁,在开始使用和提问前,请确保您已经认真完整地阅读了使用说明文档和示例代码。**
-
-**由于模板升级频繁,在开始使用和提问前,请确保您已经认真完整地阅读了使用说明文档和示例代码。**
-
## 下载
推荐下载**发布版**模板,里面包括具体使用说明以及示例文档:
@@ -37,6 +33,8 @@ Scroll down for the English version of README.
* [Overleaf](https://www.overleaf.com/latex/templates/thuthesis-tsinghua-university-thesis-latex-template/wddqnwbyhtnk):Overleaf 的模板。
* 开发版:[GitHub](https://github.com/tuna/thuthesis)
+**任何在其他途径分发的 ThuThesis(包含其变体或衍生物)均不是官方版本,请谨慎使用。**
+
## 更新日志
每个版本的详细更新日志,请见 [CHANGELOG.md](CHANGELOG.md)。使用文档中也包含了这一内容。
@@ -107,6 +105,8 @@ Developer versions contain only source code but no pre-compiled `cls` file and d
* [Overleaf Template](https://www.overleaf.com/latex/templates/thuthesis-tsinghua-university-thesis-latex-template/wddqnwbyhtnk)
* Developer versions: [GitHub](https://github.com/tuna/thuthesis)
+**ThuThesis (including its variants / derivatives) distributed in any other way is NOT an official version. Use at your own risk.**
+
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for detailed changes in each release. They are also included in the usage documentation.
diff --git a/Master/texmf-dist/doc/latex/thuthesis/data/appendix-translation.tex b/Master/texmf-dist/doc/latex/thuthesis/data/appendix-translation.tex
index 812cfcc7670..0ca7d152642 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/data/appendix-translation.tex
+++ b/Master/texmf-dist/doc/latex/thuthesis/data/appendix-translation.tex
@@ -62,6 +62,13 @@
文献引用示例\cite{abrahams99tex}。
+\appendix
+
+\section{附录}
+
+附录的内容。
+
+
% 书面翻译的参考文献
\bibliographystyle{unsrtnat}
\bibliography{ref/appendix}
diff --git a/Master/texmf-dist/doc/latex/thuthesis/data/chap04.tex b/Master/texmf-dist/doc/latex/thuthesis/data/chap04.tex
index a7fcc1439f8..b07ce4dc96c 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/data/chap04.tex
+++ b/Master/texmf-dist/doc/latex/thuthesis/data/chap04.tex
@@ -47,7 +47,7 @@
\thusetup{
cite-style = author-year,
}
-\begin{tabular}{l@{\quad$\Rightarrow$\quad}l}
+\begin{tabular}{l@{\space$\Rightarrow$\space}l}
\verb|\cite{zhangkun1994}| & \cite{zhangkun1994} \\
\verb|\citet{zhangkun1994}| & \citet{zhangkun1994} \\
\verb|\citep{zhangkun1994}| & \citep{zhangkun1994} \\
diff --git a/Master/texmf-dist/doc/latex/thuthesis/ref/appendix.bib b/Master/texmf-dist/doc/latex/thuthesis/ref/appendix.bib
index 1e4cc0daefc..0f9ae22352c 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/ref/appendix.bib
+++ b/Master/texmf-dist/doc/latex/thuthesis/ref/appendix.bib
@@ -5,7 +5,7 @@
year = 1990,
}
-@incollection{salomon1995advanced,
+@book{salomon1995advanced,
author = {David Salomon},
title = {The advanced {\TeX}book},
address = {New York},
diff --git a/Master/texmf-dist/doc/latex/thuthesis/ref/refs.bib b/Master/texmf-dist/doc/latex/thuthesis/ref/refs.bib
index 7c397888d50..6b51f030037 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/ref/refs.bib
+++ b/Master/texmf-dist/doc/latex/thuthesis/ref/refs.bib
@@ -41,7 +41,9 @@
@patent{jiangxizhou1980,
author = {姜锡洲},
- title = {一种温热外敷药制备方案: 中国, 88105607.3},
+ title = {一种温热外敷药制备方案},
+ address = {中国},
+ number = {88105607.3},
date = {1980-07-26},
key = {jiang1 xi1 zhou1},
}
diff --git a/Master/texmf-dist/doc/latex/thuthesis/spine.pdf b/Master/texmf-dist/doc/latex/thuthesis/spine.pdf
index 63eef753e04..6f9d37e2ed5 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/spine.pdf
+++ b/Master/texmf-dist/doc/latex/thuthesis/spine.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/thuthesis/thusetup.tex b/Master/texmf-dist/doc/latex/thuthesis/thusetup.tex
index dc74d148bdf..718667f9690 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/thusetup.tex
+++ b/Master/texmf-dist/doc/latex/thuthesis/thusetup.tex
@@ -156,10 +156,10 @@
% \bibliographystyle{thuthesis-bachelor}
% 参考文献使用 BibLaTeX 宏包
-% \usepackage[backend=biber,style=thuthesis-numeric]{biblatex}
-% \usepackage[backend=biber,style=thuthesis-author-year]{biblatex}
-% \usepackage[backend=biber,style=apa]{biblatex}
-% \usepackage[backend=biber,style=mla-new]{biblatex}
+% \usepackage[style=thuthesis-numeric]{biblatex}
+% \usepackage[style=thuthesis-author-year]{biblatex}
+% \usepackage[style=apa]{biblatex}
+% \usepackage[style=mla-new]{biblatex}
% 声明 BibLaTeX 的数据库
% \addbibresource{ref/refs.bib}
diff --git a/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.pdf b/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.pdf
index a881f81a4a6..b25df293c9f 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.pdf
+++ b/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.tex b/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.tex
index 7e6f698ca22..39edf3af3e7 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.tex
+++ b/Master/texmf-dist/doc/latex/thuthesis/thuthesis-example.tex
@@ -24,6 +24,7 @@
\maketitle
% 学位论文指导小组、公开评阅人和答辩委员会名单
+% 本科生不需要
\input{data/committee}
% 使用授权的说明
@@ -39,9 +40,9 @@
% 插图和附表清单
% 本科生的插图索引和表格索引需要移至正文之后、参考文献前
-\listoffiguresandtables % 插图和附表清单
-% \listoffigures % 插图清单
-% \listoftables % 附表清单
+% \listoffiguresandtables % 插图和附表清单(仅限研究生)
+\listoffigures % 插图清单
+\listoftables % 附表清单
% 符号对照表
\input{data/denotation}
@@ -63,6 +64,7 @@
% \printbibliography % 参考文献使用 BibLaTeX 编译
% 附录
+% 本科生需要将附录放到声明之后,个人简历之前
\appendix
% \input{data/appendix-survey} % 本科生:外文资料的调研阅读报告
% \input{data/appendix-translation} % 本科生:外文资料的书面翻译
@@ -82,12 +84,15 @@
% \statement[file=scan-statement.pdf, page-style=plain]
% 个人简历、在学期间完成的相关学术成果
+% 本科生可以附个人简历,也可以不附个人简历
\input{data/resume}
% 指导教师/指导小组学术评语
+% 本科生不需要
\input{data/comments}
% 答辩委员会决议书
+% 本科生不需要
\input{data/resolution}
% 本科生的综合论文训练记录表(扫描版)
diff --git a/Master/texmf-dist/doc/latex/thuthesis/thuthesis.pdf b/Master/texmf-dist/doc/latex/thuthesis/thuthesis.pdf
index 6925a82705e..ad3acc14f29 100644
--- a/Master/texmf-dist/doc/latex/thuthesis/thuthesis.pdf
+++ b/Master/texmf-dist/doc/latex/thuthesis/thuthesis.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/thuthesis/thuthesis.dtx b/Master/texmf-dist/source/latex/thuthesis/thuthesis.dtx
index 3233b5e5806..f2a48c8a13d 100644
--- a/Master/texmf-dist/source/latex/thuthesis/thuthesis.dtx
+++ b/Master/texmf-dist/source/latex/thuthesis/thuthesis.dtx
@@ -14,7 +14,7 @@
%
% \iffalse
%<*driver>
-\ProvidesFile{thuthesis.dtx}[2021/05/31 7.2.3 Tsinghua University Thesis Template]
+\ProvidesFile{thuthesis.dtx}[2022/03/19 7.2.4 Tsinghua University Thesis Template]
\documentclass{ltxdoc}
\usepackage{dtx-style}
@@ -74,10 +74,10 @@
% \item 本模板为作者根据
% 清华大学研究生院颁发的《
% \href{http://yjsy.cic.tsinghua.edu.cn/docinfo/board/boarddetail.jsp?columnId=001050603&parentColumnId=0010506&itemSeq=5365}{%
-% 研究生学位论文写作指南}》(限校内网络访问)、
+% 研究生学位论文写作指南}》(2021年6月版本,限校内网络访问)、
% 英文版《Guide to Thesis Writing for Graduate Students》、
% 清华大学教务处颁发的《
-% \href{https://lib.tsinghua.edu.cn/dra/news/annoucement/7963}{%
+% \href{https://lib.tsinghua.edu.cn/info/1073/1978.htm}{%
% 综合论文训练写作指南}》、
% 外文系的《英语专业本科生综合论文训练》和
% 清华大学《
@@ -260,7 +260,7 @@
% \end{shell}
%
% 在调用 \XeLaTeX 时,如果设置了 \option{include-spine} 选项,
-% 则需要在文件名前加上 \texttt{-shell-scape} 的命令行选项。
+% 则需要在文件名前加上 \texttt{-shell-escape} 的命令行选项。
%
% 下面的命令用来生成用户手册:
% \begin{shell}
@@ -852,10 +852,10 @@
% 可能会造成正文和公式中的数字字体不一致,需要谨慎使用。
%
% 以上字体都是 OpenType 格式的字体,需要配合
-% \href{http://mirrors.ctan.org/macros/latex/contrib/unicode-math/unicode-math.pdf}{\pkg{unicode-math}}
+% \href{http://mirrors.ctan.org/macros/unicodetex/latex/unicode-math/unicode-math.pdf}{\pkg{unicode-math}}
% 宏包使用。
% 全部数学符号的命令参考
-% \href{http://mirrors.ctan.org/macros/latex/contrib/unicode-math/unimath-symbols.pdf}{\pkg{unimath-symbols}}。
+% \href{http://mirrors.ctan.org/macros/unicodetex/latex/unicode-math/unimath-symbols.pdf}{\pkg{unimath-symbols}}。
% 注意,\pkg{unicode-math} 宏包与 \pkg{amsfonts}、\pkg{amssymb}、\pkg{bm}、
% \pkg{mathrsfs}、\pkg{upgreek} 等宏包\emph{不}兼容。
% 模板作了处理,用户可以直接使用这些宏包的命令,如 \cs{bm}、\cs{mathscr}、
@@ -1009,7 +1009,7 @@
% \end{latex}
% 另一种方式是使用 biblatex,应在导言区设置
% \begin{latex}
-% \usepackage[backend=biber,style=thuthesis-author-year]{biblatex}
+% \usepackage[style=thuthesis-author-year]{biblatex}
% \addbibresource{ref/refs.bib}
% \end{latex}
% 这里的样式由 \href{https://ctan.org/pkg/biblatex-gb7714-2015}{biblatex-gb7714-2015} 进行了少量改编,
@@ -1082,12 +1082,12 @@
% 研究生不存在空白页的问题,在编译生成声明时默认加页眉页脚(\option{plain}),
% 而插入扫描版时不再重复(\option{empty})。
%
-% 声明的页眉页脚也可以通过 \option{pagestyle} 参数手动控制,
+% 声明的页眉页脚也可以通过 \option{page-style} 参数手动控制,
% 比如编译生成时固定不加页眉页脚:
% \begin{latex}
-% \statement[page-style=plain]
+% \statement[page-style=empty]
% \end{latex}
-% 插入扫面版声明补上页眉页脚:
+% 插入扫描版声明补上页眉页脚:
% \begin{latex}
% \statement[file=scan-statement.pdf, page-style=plain]
% \end{latex}
@@ -1250,7 +1250,7 @@
% \begin{macrocode}
%<cls>\NeedsTeXFormat{LaTeX2e}[2017/04/15]
%<cls>\ProvidesClass{thuthesis}
-%<cls>[2021/05/31 7.2.3 Tsinghua University Thesis Template]
+%<cls>[2022/03/19 7.2.4 Tsinghua University Thesis Template]
% \end{macrocode}
%
% 报错
@@ -1306,7 +1306,7 @@
%<*cls>
\hyphenation{Thu-Thesis}
\def\thuthesis{ThuThesis}
-\def\version{7.2.3}
+\def\version{7.2.4}
\RequirePackage{kvdefinekeys}
\RequirePackage{kvsetkeys}
\RequirePackage{kvoptions}
@@ -1731,9 +1731,20 @@
% \end{macrocode}
%
% \pkg{pdfpages} 宏包便于我们插入扫描后的授权说明和声明页 PDF 文档。
+%
+% 由于 \pkg{pdfpages} 跟 \pkg{TikZ} 的 \pkg{external} 库冲突,
+% 需要在导言区的结尾进行处理,见
+% \href{https://github.com/tuna/thuthesis/issues/693}{\#693}。
% \begin{macrocode}
\RequirePackage{pdfpages}
\includepdfset{fitpaper=true}
+\AtEndPreamble{
+ \ifx\tikzifexternalizing\@undefined\else
+ \tikzifexternalizing{
+ \renewcommand*\includepdf[2][]{}
+ }{}
+ \fi
+}
% \end{macrocode}
%
% 更好的列表环境。
@@ -1784,9 +1795,11 @@
}
}
\AtEndOfPackageFile*{natbib}{
- \@ifpackageloaded{apacite}{}{
- \RequirePackage{bibunits}
- }
+ \ifthu@degree@bachelor
+ \@ifpackageloaded{apacite}{}{
+ \RequirePackage{bibunits}
+ }
+ \fi
}
% \end{macrocode}
%
@@ -1829,16 +1842,6 @@
\thu@package@conflict{newtxmath}{upgreek}
% \end{macrocode}
%
-% \pkg{mathtools} 需要在 \pkg{unicode-math} 前载入,
-% 参考 \url{https://tex.stackexchange.com/q/521394/82731}。
-% \begin{macrocode}
-\AtBeginOfPackageFile*{mathtools}{
- \@ifpackageloaded{unicode-math}{
- \thu@error{The "mathtools" package should be loaded before setting "math-font"}
- }{}
-}%
-% \end{macrocode}
-%
% \pkg{amsthm} 需要在 \pkg{newtx} 前载入,参考 \pkg{newtx} 的文档。
% \begin{macrocode}
\AtBeginOfPackageFile*{amsthm}{
@@ -1858,7 +1861,12 @@
% 本科生《写作指南》:
% 页边距:上:3.8 厘米,下:3.2 厘米,左右:3 厘米,装订线:左 0.2 厘米。
% 本科生 Word 模板:
-% 页眉距边界:1.5 厘米,页脚距边界:1.75 厘米。
+% 无页眉,页脚距边界:1.75 厘米。
+%
+% \pkg{fancyhdr} 的页眉是沿底部对齐的,所以只需设置 \cs{headsep},
+% \cs{headheight} 可以适当增加高度允许多行页眉。
+% 研究生:\cs{headsep} = $\SI{3}{cm} - \SI{2.2}{cm} - \SI{10.5}{bp} \times 1.3
+% \approx \SI{0.3}{cm}$。
%
% \begin{macrocode}
\geometry{
@@ -1873,8 +1881,8 @@
bottom = 3.2cm,
left = 3.2cm,
right = 3cm,
- headheight = 0.5cm,
- headsep = 1.8cm,
+ headheight = 1.9cm,
+ headsep = 1.9cm,
footskip = 1.45cm,
}%
\ifthu@output@print
@@ -1890,7 +1898,7 @@
\else
\geometry{
margin = 3cm,
- headheight = 0.5cm,
+ headheight = 2.7cm,
headsep = 0.3cm,
footskip = 0.8cm,
}%
@@ -2837,10 +2845,12 @@
\thu@set@stix@names
\setmathfont{\thu@font@name@stix@math}[
Extension = .otf,
+ Scale = MatchLowercase,
StylisticSet = \thu@xits@integral@stylistic@set,
]%
\setmathfont{\thu@font@name@stix@math}[
Extension = .otf,
+ Scale = MatchLowercase,
StylisticSet = 1,
range = {scr,bfscr},
]%
@@ -3079,6 +3089,7 @@
\@mainmattertrue
\pagenumbering{arabic}%
}
+\newif\ifthu@backmatter
\renewcommand\backmatter{%
\if@openright
\cleardoublepage
@@ -3086,6 +3097,7 @@
\clearpage
\fi
\@mainmatterfalse
+ \thu@backmattertrue
\thusetup{toc-depth = 0}%
}
% \end{macrocode}
@@ -3256,7 +3268,7 @@
% \begin{macrocode}
\newcommand\thu@circled[1]{%
\ifnum#1 >10\relax
- \thu@error{%
+ \thu@warning{%
Too many footnotes in this page.
Keep footnote less than 10%
}%
@@ -3366,8 +3378,8 @@
%
% 图表浮动体的默认位置设为 |h|。
% \begin{macrocode}
-\def\fps@figure{h}
-\def\fps@table{h}
+\def\fps@figure{htbp}
+\def\fps@table{htbp}
% \end{macrocode}
%
% 设置浮动对象和文字之间的距离
@@ -4826,41 +4838,43 @@
% 学位论文指导小组、公开评阅人和答辩委员会名单。
% \begin{macrocode}
\def\thu@committee@name{学位论文指导小组、公开评阅人和答辩委员会名单}
-\newenvironment{committee}[1][]{%
- \cleardoublepage
- \let\thu@committee@file\@empty
- \kv@define@key{thu@committee}{name}{\let\thu@committee@name\kv@value}%
- \kv@define@key{thu@committee}{file}{\let\thu@committee@file\kv@value}%
- \kv@set@family@handler{thu@committee}{%
- \ifx\kv@value\relax
- \let\thu@committee@file\kv@key
+\NewEnviron{committee}[1][]{%
+ \ifthu@degree@graduate
+ \cleardoublepage
+ \let\thu@committee@file\@empty
+ \kv@define@key{thu@committee}{name}{\let\thu@committee@name\kv@value}%
+ \kv@define@key{thu@committee}{file}{\let\thu@committee@file\kv@value}%
+ \kv@set@family@handler{thu@committee}{%
+ \ifx\kv@value\relax
+ \let\thu@committee@file\kv@key
+ \else
+ \kv@handled@false
+ \fi
+ }%
+ \kvsetkeys{thu@committee}{#1}%
+ \ifx\thu@committee@file\@empty
+ \begingroup
+ \ifthu@main@language@english
+ \ctexset{chapter/format=\centering\sffamily\fontsize{16bp}{20bp}\selectfont}
+ \fi
+ \thu@chapter*[]{\thu@committee@name}%
+ \endgroup
\else
- \kv@handled@false
+ \thu@pdfbookmark{0}{\thu@committee@name}%
+ \includepdf{\thu@committee@file}%
\fi
- }%
- \kvsetkeys{thu@committee}{#1}%
- \ifx\thu@committee@file\@empty
- \begingroup
- \ifthu@main@language@english
- \ctexset{chapter/format=\centering\sffamily\fontsize{16bp}{20bp}\selectfont}
- \fi
- \thu@chapter*[]{\thu@committee@name}%
- \endgroup
- \else
- \thu@pdfbookmark{0}{\thu@committee@name}%
- \includepdf{\thu@committee@file}%
+ \thispagestyle{empty}%
+ \ctexset{
+ section = {
+ format += {\centering},
+ numbering = false,
+ afterindent = false,
+ },
+ }%
+ \thusetup{language=chinese}
+ \BODY\clearpage
+ \thu@reset@main@language
\fi
- \thispagestyle{empty}%
- \ctexset{
- section = {
- format += {\centering},
- numbering = false,
- afterindent = false,
- },
- }%
- \thusetup{language=chinese}
-}{%
- \thu@reset@main@language
}
% \end{macrocode}
% \end{environment}
@@ -4966,7 +4980,7 @@
\centering
签\quad 名:\thu@underline[6em]{}%
导师签名:\thu@underline[6em]{}%
- 日\quad 期\thu@underline[6em]{}%
+ 日\quad 期:\thu@underline[6em]{}%
\par
\endgroup
}
@@ -5175,8 +5189,10 @@
Use "page-style" option of \protect\statement command instead%
}%
}
+\newif\ifthu@statement@exists
\newcommand\statement[1][]{%
\@mainmatterfalse
+ \thu@statement@existstrue
\ifthu@degree@bachelor
\cleardoublepage
\def\thu@statement@name{声\hspace{2em}明}%
@@ -5269,6 +5285,11 @@
% 插图清单。
% \begin{macrocode}
\renewcommand\listoffigures{%
+ \ifthu@degree@bachelor
+ \ifthu@backmatter\else
+ \thu@warning{The list of figures should be placed in back matter}%
+ \fi
+ \fi
\thu@listof{figure}%
}
\titlecontents{figure}
@@ -5284,6 +5305,11 @@
% 附表清单。
% \begin{macrocode}
\renewcommand\listoftables{%
+ \ifthu@degree@bachelor
+ \ifthu@backmatter\else
+ \thu@warning{The list of tables should be placed in back matter}%
+ \fi
+ \fi
\thu@listof{table}%
}
\titlecontents{table}
@@ -5298,11 +5324,17 @@
% 将插图和附表合在一起列出“插图和附表清单”。
% \begin{macrocode}
\newcommand\listoffiguresandtables{%
- \thu@chapter*{\thu@list@figure@table@name}%
- \@starttoc{lof}%
- \par
- \null\par
- \@starttoc{lot}%
+ \ifthu@degree@bachelor
+ \thu@warning{The list of figures and tables are for graduates only}%
+ \listoffigures
+ \listoftables
+ \else
+ \thu@chapter*{\thu@list@figure@table@name}%
+ \@starttoc{lof}%
+ \par
+ \null\par
+ \@starttoc{lot}%
+ \fi
}
% \end{macrocode}
% \end{macro}
@@ -5794,6 +5826,11 @@
% \begin{macrocode}
\g@addto@macro\appendix{%
\@mainmattertrue
+ \ifthu@degree@bachelor
+ \ifthu@statement@exists\else
+ \thu@warning{The appendices should be placed after statement}%
+ \fi
+ \fi
}
% \end{macrocode}
%
@@ -5865,6 +5902,7 @@
\thu@print@contents{survey}{l}{1}{2}{}%
\vskip 20bp%
}%
+ \let\appendix\thu@appendix@appendix
\renewcommand\bibname{参考文献}%
\let\bibsection\thu@appendix@bibsection
\renewcommand\@bibunitname{\jobname-survey}%
@@ -5907,6 +5945,7 @@
\thu@print@contents{translation}{l}{1}{2}{}%
\vskip 20bp%
}%
+ \let\appendix\thu@appendix@appendix
\def\bibsection{%
\begingroup
\ctexset{section/numbering=false}%
@@ -5969,6 +6008,16 @@
}
% \end{macrocode}
%
+% 书面翻译的附录。
+% \begin{macrocode}
+\newcommand\thu@appendix@appendix{%
+ \def\theHsection{\Hy@AlphNoErr{section}}%
+ \setcounter{section}{0}%
+ \setcounter{subsection}{0}%
+ \renewcommand\thesection{\thechapter.\@Alph\c@section}%
+}%
+% \end{macrocode}
+%
% 调研阅读报告的参考文献(或书面翻译对应的外文资料的原文索引)标题用宋体小四号字,段前 20pt,段后 6pt,行距 20pt。
% \begin{macrocode}
\newcommand\thu@appendix@bibsection{%
@@ -6061,19 +6110,21 @@
% \subsection{指导教师/小组学术评语}
% \begin{environment}{comments}
% \begin{macrocode}
-\newenvironment{comments}[1][]{%
- \@mainmatterfalse
- \kv@define@key{thu@comments}{name}{\let\thu@comments@name\kv@value}%
- \kv@set@family@handler{thu@comments}{%
- \ifx\kv@value\relax
- \let\thu@comments@name\kv@key
- \else
- \kv@handled@false
- \fi
- }%
- \kvsetkeys{thu@comments}{#1}%
- \chapter{\thu@comments@name}%
-}{%
+\NewEnviron{comments}[1][]{%
+ \ifthu@degree@graduate
+ \@mainmatterfalse
+ \kv@define@key{thu@comments}{name}{\let\thu@comments@name\kv@value}%
+ \kv@set@family@handler{thu@comments}{%
+ \ifx\kv@value\relax
+ \let\thu@comments@name\kv@key
+ \else
+ \kv@handled@false
+ \fi
+ }%
+ \kvsetkeys{thu@comments}{#1}%
+ \chapter{\thu@comments@name}%
+ \BODY\clearpage
+ \fi
}
% \end{macrocode}
% \end{environment}
@@ -6081,10 +6132,13 @@
% \subsection{答辩委员会决议书}
% \begin{environment}{resolution}
% \begin{macrocode}
-\newenvironment{resolution}{%
- \@mainmatterfalse
- \chapter{\thu@resolution@name}%
-}{}
+\NewEnviron{resolution}{%
+ \ifthu@degree@graduate
+ \@mainmatterfalse
+ \chapter{\thu@resolution@name}%
+ \BODY\clearpage
+ \fi
+}
% \end{macrocode}
% \end{environment}
%
@@ -6150,6 +6204,7 @@
\pdfstringdefDisableCommands{
\let\\\relax
\let\quad\relax
+ \let\qquad\relax
\let\hspace\@gobble
}%
% \end{macrocode}
@@ -6195,6 +6250,20 @@
}
% \end{macrocode}
%
+% \subsubsection{\pkg{mathtools} 宏包}
+%
+% \pkg{mathtools} 会修改 \pkg{unicode-math} 的 \cs{underbrace} 和 \cs{overbrace},
+% 需要还原为 \cs{LaTeXunderbrace} 和 \cs{LaTeXoverbrace},
+% 参考 \url{https://tex.stackexchange.com/q/521394/82731}。
+% \begin{macrocode}
+\AtEndOfPackageFile*{mathtools}{
+ \@ifpackageloaded{unicode-math}{
+ \let\underbrace\LaTeXunderbrace
+ \let\overbrace\LaTeXoverbrace
+ }{}
+}
+% \end{macrocode}
+%
% \subsubsection{\pkg{nomencl} 宏包}
%
% \begin{macrocode}
@@ -6209,11 +6278,6 @@
%
% \begin{macrocode}
\AtEndOfPackageFile*{siunitx}{%
- \sisetup{
- group-minimum-digits = 4,
- separate-uncertainty = true,
- inter-unit-product = \ensuremath{{}\cdot{}},
- }
\newcommand\thu@set@siunitx@language{%
\ifthu@language@chinese
\sisetup{
@@ -6526,7 +6590,12 @@
\RequirePackage{enumitem}
\RequirePackage{etoolbox}
\RequirePackage{metalogo}
+
+% Pretending the `amssymb` has been loaded.
+% This should be removed after `markdown` v2.13.0.
+\expandafter\def\csname ver@amssymb.sty\endcsname{0000/00/00}
\RequirePackage[tightLists=false]{markdown}
+\expandafter\let\csname ver@amssymb.sty\endcsname\relax
\markdownSetup{
renderers = {
diff --git a/Master/texmf-dist/tex/latex/thuthesis/thuthesis-author-year.bbx b/Master/texmf-dist/tex/latex/thuthesis/thuthesis-author-year.bbx
index 47ec9ea8154..026e280cb16 100644
--- a/Master/texmf-dist/tex/latex/thuthesis/thuthesis-author-year.bbx
+++ b/Master/texmf-dist/tex/latex/thuthesis/thuthesis-author-year.bbx
@@ -6,7 +6,6 @@
\ExecuteBibliographyOptions{
gbnamefmt = lowercase,
gbpub = false,
- gbalign = left,
}
\defbibenvironment{bibliography}
@@ -18,3 +17,33 @@
\setlength{\parsep}{\bibparsep}}}
{\endlist}
{\item}
+
+%
+% 重设专利title的输出,将文献类型标识符输出出去
+%
+\renewbibmacro*{patenttitle}{%原输出来自biblatex.def文件
+ \ifboolexpr{%
+ test{\iffieldundef{title}}%
+ and%
+ test{\iffieldundef{subtitle}}%
+ }%
+ {}%
+ {\printtext[title]{\bibtitlefont%
+ \printfield[titlecase]{title}%
+ \ifboolexpr{test {\iffieldundef{subtitle}}}
+ {}{\setunit{\subtitlepunct}%
+ \printfield[titlecase]{subtitle}}%
+ \iffieldundef{titleaddon}{}
+ {\setunit{\subtitlepunct}\printfield{titleaddon}}%
+ % \setunit{\subtitlepunct}\printfield{number}%写专利号
+ \setunit{\subtitlepunct}%
+ \iflistundef{location}{}
+ {\printlist{location}\setunit{\addcomma\space}}% 专利国别
+ \printfield{number}%写专利号
+ \iftoggle{bbx:gbtype}{\printfield[gbtypeflag]{usera}}{}%
+ %\iffieldundef{booktitle}{\newunit}{}%当title是析出时,不要标点
+ %\newunit
+ }%
+}%
+\clearlist{location}\clearlist{address}%
+}
diff --git a/Master/texmf-dist/tex/latex/thuthesis/thuthesis-numeric.bbx b/Master/texmf-dist/tex/latex/thuthesis/thuthesis-numeric.bbx
index f0d6234effa..fb7dcdff687 100644
--- a/Master/texmf-dist/tex/latex/thuthesis/thuthesis-numeric.bbx
+++ b/Master/texmf-dist/tex/latex/thuthesis/thuthesis-numeric.bbx
@@ -25,3 +25,33 @@
\renewcommand*{\makelabel}[1]{\hss##1}}
{\endlist}
{\item}
+
+%
+% 重设专利title的输出,将文献类型标识符输出出去
+%
+\renewbibmacro*{patenttitle}{%原输出来自biblatex.def文件
+ \ifboolexpr{%
+ test{\iffieldundef{title}}%
+ and%
+ test{\iffieldundef{subtitle}}%
+ }%
+ {}%
+ {\printtext[title]{\bibtitlefont%
+ \printfield[titlecase]{title}%
+ \ifboolexpr{test {\iffieldundef{subtitle}}}
+ {}{\setunit{\subtitlepunct}%
+ \printfield[titlecase]{subtitle}}%
+ \iffieldundef{titleaddon}{}
+ {\setunit{\subtitlepunct}\printfield{titleaddon}}%
+ % \setunit{\subtitlepunct}\printfield{number}%写专利号
+ \setunit{\subtitlepunct}%
+ \iflistundef{location}{}
+ {\printlist{location}\setunit{\addcomma\space}}% 专利国别
+ \printfield{number}%写专利号
+ \iftoggle{bbx:gbtype}{\printfield[gbtypeflag]{usera}}{}%
+ %\iffieldundef{booktitle}{\newunit}{}%当title是析出时,不要标点
+ %\newunit
+ }%
+}%
+\clearlist{location}\clearlist{address}%
+}
diff --git a/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls b/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls
index 96b60b1381b..23b11b5cc73 100644
--- a/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls
+++ b/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2005-2021 by Tsinghua University TUNA Association <tuna@tsinghua.edu.cn>
+%% Copyright (C) 2005-2022 by Tsinghua University TUNA Association <tuna@tsinghua.edu.cn>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -23,7 +23,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2017/04/15]
\ProvidesClass{thuthesis}
-[2021/05/31 7.2.3 Tsinghua University Thesis Template]
+[2022/03/19 7.2.4 Tsinghua University Thesis Template]
\newcommand\thu@error[1]{%
\ClassError{thuthesis}{#1}{}%
}
@@ -56,7 +56,7 @@
}
\hyphenation{Thu-Thesis}
\def\thuthesis{ThuThesis}
-\def\version{7.2.3}
+\def\version{7.2.4}
\RequirePackage{kvdefinekeys}
\RequirePackage{kvsetkeys}
\RequirePackage{kvoptions}
@@ -324,6 +324,13 @@
\RequirePackage[labelformat=simple]{subcaption}
\RequirePackage{pdfpages}
\includepdfset{fitpaper=true}
+\AtEndPreamble{
+ \ifx\tikzifexternalizing\@undefined\else
+ \tikzifexternalizing{
+ \renewcommand*\includepdf[2][]{}
+ }{}
+ \fi
+}
\RequirePackage[shortlabels]{enumitem}
\RequirePackage{environ}
\ifthu@raggedbottom
@@ -345,9 +352,11 @@
}
}
\AtEndOfPackageFile*{natbib}{
- \@ifpackageloaded{apacite}{}{
- \RequirePackage{bibunits}
- }
+ \ifthu@degree@bachelor
+ \@ifpackageloaded{apacite}{}{
+ \RequirePackage{bibunits}
+ }
+ \fi
}
\newcommand\thu@package@conflict[2]{%
\AtEndOfPackageFile*{#1}{%
@@ -384,11 +393,6 @@
\thu@package@conflict{newtxmath}{amssymb}
\thu@package@conflict{newtxmath}{unicode-math}
\thu@package@conflict{newtxmath}{upgreek}
-\AtBeginOfPackageFile*{mathtools}{
- \@ifpackageloaded{unicode-math}{
- \thu@error{The "mathtools" package should be loaded before setting "math-font"}
- }{}
-}%
\AtBeginOfPackageFile*{amsthm}{
\@ifpackageloaded{newtxmath}{
\thu@error{The "amsthm" package should be loaded before setting "newtxmath"}
@@ -406,8 +410,8 @@
bottom = 3.2cm,
left = 3.2cm,
right = 3cm,
- headheight = 0.5cm,
- headsep = 1.8cm,
+ headheight = 1.9cm,
+ headsep = 1.9cm,
footskip = 1.45cm,
}%
\ifthu@output@print
@@ -423,7 +427,7 @@
\else
\geometry{
margin = 3cm,
- headheight = 0.5cm,
+ headheight = 2.7cm,
headsep = 0.3cm,
footskip = 0.8cm,
}%
@@ -1162,10 +1166,12 @@
\thu@set@stix@names
\setmathfont{\thu@font@name@stix@math}[
Extension = .otf,
+ Scale = MatchLowercase,
StylisticSet = \thu@xits@integral@stylistic@set,
]%
\setmathfont{\thu@font@name@stix@math}[
Extension = .otf,
+ Scale = MatchLowercase,
StylisticSet = 1,
range = {scr,bfscr},
]%
@@ -1362,6 +1368,7 @@
\@mainmattertrue
\pagenumbering{arabic}%
}
+\newif\ifthu@backmatter
\renewcommand\backmatter{%
\if@openright
\cleardoublepage
@@ -1369,6 +1376,7 @@
\clearpage
\fi
\@mainmatterfalse
+ \thu@backmattertrue
\thusetup{toc-depth = 0}%
}
\pagestyle{fancy}
@@ -1467,7 +1475,7 @@
\setlist{nosep}
\newcommand\thu@circled[1]{%
\ifnum#1 >10\relax
- \thu@error{%
+ \thu@warning{%
Too many footnotes in this page.
Keep footnote less than 10%
}%
@@ -1540,8 +1548,8 @@
}%
}%
}
-\def\fps@figure{h}
-\def\fps@table{h}
+\def\fps@figure{htbp}
+\def\fps@table{htbp}
\setlength{\floatsep}{12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength{\textfloatsep}{12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength{\intextsep}{12\p@ \@plus 2\p@ \@minus 2\p@}
@@ -2674,41 +2682,43 @@
\end{center}%
}
\def\thu@committee@name{学位论文指导小组、公开评阅人和答辩委员会名单}
-\newenvironment{committee}[1][]{%
- \cleardoublepage
- \let\thu@committee@file\@empty
- \kv@define@key{thu@committee}{name}{\let\thu@committee@name\kv@value}%
- \kv@define@key{thu@committee}{file}{\let\thu@committee@file\kv@value}%
- \kv@set@family@handler{thu@committee}{%
- \ifx\kv@value\relax
- \let\thu@committee@file\kv@key
+\NewEnviron{committee}[1][]{%
+ \ifthu@degree@graduate
+ \cleardoublepage
+ \let\thu@committee@file\@empty
+ \kv@define@key{thu@committee}{name}{\let\thu@committee@name\kv@value}%
+ \kv@define@key{thu@committee}{file}{\let\thu@committee@file\kv@value}%
+ \kv@set@family@handler{thu@committee}{%
+ \ifx\kv@value\relax
+ \let\thu@committee@file\kv@key
+ \else
+ \kv@handled@false
+ \fi
+ }%
+ \kvsetkeys{thu@committee}{#1}%
+ \ifx\thu@committee@file\@empty
+ \begingroup
+ \ifthu@main@language@english
+ \ctexset{chapter/format=\centering\sffamily\fontsize{16bp}{20bp}\selectfont}
+ \fi
+ \thu@chapter*[]{\thu@committee@name}%
+ \endgroup
\else
- \kv@handled@false
+ \thu@pdfbookmark{0}{\thu@committee@name}%
+ \includepdf{\thu@committee@file}%
\fi
- }%
- \kvsetkeys{thu@committee}{#1}%
- \ifx\thu@committee@file\@empty
- \begingroup
- \ifthu@main@language@english
- \ctexset{chapter/format=\centering\sffamily\fontsize{16bp}{20bp}\selectfont}
- \fi
- \thu@chapter*[]{\thu@committee@name}%
- \endgroup
- \else
- \thu@pdfbookmark{0}{\thu@committee@name}%
- \includepdf{\thu@committee@file}%
+ \thispagestyle{empty}%
+ \ctexset{
+ section = {
+ format += {\centering},
+ numbering = false,
+ afterindent = false,
+ },
+ }%
+ \thusetup{language=chinese}
+ \BODY\clearpage
+ \thu@reset@main@language
\fi
- \thispagestyle{empty}%
- \ctexset{
- section = {
- format += {\centering},
- numbering = false,
- afterindent = false,
- },
- }%
- \thusetup{language=chinese}
-}{%
- \thu@reset@main@language
}
\newcommand\copyrightpage[1][]{%
\cleardoublepage
@@ -2803,7 +2813,7 @@
\centering
签\quad 名:\thu@underline[6em]{}%
导师签名:\thu@underline[6em]{}%
- 日\quad 期\thu@underline[6em]{}%
+ 日\quad 期:\thu@underline[6em]{}%
\par
\endgroup
}
@@ -2954,8 +2964,10 @@
Use "page-style" option of \protect\statement command instead%
}%
}
+\newif\ifthu@statement@exists
\newcommand\statement[1][]{%
\@mainmatterfalse
+ \thu@statement@existstrue
\ifthu@degree@bachelor
\cleardoublepage
\def\thu@statement@name{声\hspace{2em}明}%
@@ -3031,6 +3043,11 @@
{\thu@chapter*{\csname list#1name\endcsname}\@starttoc{\csname ext@#1\endcsname}}%
}
\renewcommand\listoffigures{%
+ \ifthu@degree@bachelor
+ \ifthu@backmatter\else
+ \thu@warning{The list of figures should be placed in back matter}%
+ \fi
+ \fi
\thu@listof{figure}%
}
\titlecontents{figure}
@@ -3038,6 +3055,11 @@
{\contentspush{\figurename~\thecontentslabel\quad}}{}
{\nobreak\thu@leaders\nobreak\hfil\thecontentspage}
\renewcommand\listoftables{%
+ \ifthu@degree@bachelor
+ \ifthu@backmatter\else
+ \thu@warning{The list of tables should be placed in back matter}%
+ \fi
+ \fi
\thu@listof{table}%
}
\titlecontents{table}
@@ -3045,11 +3067,17 @@
{\contentspush{\tablename~\thecontentslabel\quad}}{}
{\thu@leaders\thecontentspage}
\newcommand\listoffiguresandtables{%
- \thu@chapter*{\thu@list@figure@table@name}%
- \@starttoc{lof}%
- \par
- \null\par
- \@starttoc{lot}%
+ \ifthu@degree@bachelor
+ \thu@warning{The list of figures and tables are for graduates only}%
+ \listoffigures
+ \listoftables
+ \else
+ \thu@chapter*{\thu@list@figure@table@name}%
+ \@starttoc{lof}%
+ \par
+ \null\par
+ \@starttoc{lot}%
+ \fi
}
\def\ext@equation{loe}
\def\equcaption#1{%
@@ -3405,6 +3433,11 @@
}
\g@addto@macro\appendix{%
\@mainmattertrue
+ \ifthu@degree@bachelor
+ \ifthu@statement@exists\else
+ \thu@warning{The appendices should be placed after statement}%
+ \fi
+ \fi
}
\thu@define@key{
toc-depth = {
@@ -3447,6 +3480,7 @@
\thu@print@contents{survey}{l}{1}{2}{}%
\vskip 20bp%
}%
+ \let\appendix\thu@appendix@appendix
\renewcommand\bibname{参考文献}%
\let\bibsection\thu@appendix@bibsection
\renewcommand\@bibunitname{\jobname-survey}%
@@ -3483,6 +3517,7 @@
\thu@print@contents{translation}{l}{1}{2}{}%
\vskip 20bp%
}%
+ \let\appendix\thu@appendix@appendix
\def\bibsection{%
\begingroup
\ctexset{section/numbering=false}%
@@ -3529,6 +3564,12 @@
{\contentspush{\thecontentslabel\quad}}{}
{\thu@leaders\thecontentspage}%
}
+\newcommand\thu@appendix@appendix{%
+ \def\theHsection{\Hy@AlphNoErr{section}}%
+ \setcounter{section}{0}%
+ \setcounter{subsection}{0}%
+ \renewcommand\thesection{\thechapter.\@Alph\c@section}%
+}%
\newcommand\thu@appendix@bibsection{%
\par
\vskip 20bp%
@@ -3592,24 +3633,29 @@
\newcommand\publicationskip{%
\thu@error{The "\protect\publicationskip" is obsolete. Do not use it}%
}
-\newenvironment{comments}[1][]{%
- \@mainmatterfalse
- \kv@define@key{thu@comments}{name}{\let\thu@comments@name\kv@value}%
- \kv@set@family@handler{thu@comments}{%
- \ifx\kv@value\relax
- \let\thu@comments@name\kv@key
- \else
- \kv@handled@false
- \fi
- }%
- \kvsetkeys{thu@comments}{#1}%
- \chapter{\thu@comments@name}%
-}{%
+\NewEnviron{comments}[1][]{%
+ \ifthu@degree@graduate
+ \@mainmatterfalse
+ \kv@define@key{thu@comments}{name}{\let\thu@comments@name\kv@value}%
+ \kv@set@family@handler{thu@comments}{%
+ \ifx\kv@value\relax
+ \let\thu@comments@name\kv@key
+ \else
+ \kv@handled@false
+ \fi
+ }%
+ \kvsetkeys{thu@comments}{#1}%
+ \chapter{\thu@comments@name}%
+ \BODY\clearpage
+ \fi
+}
+\NewEnviron{resolution}{%
+ \ifthu@degree@graduate
+ \@mainmatterfalse
+ \chapter{\thu@resolution@name}%
+ \BODY\clearpage
+ \fi
}
-\newenvironment{resolution}{%
- \@mainmatterfalse
- \chapter{\thu@resolution@name}%
-}{}
\newcommand{\record}[1]{%
\let\thu@record@file\@empty
\kv@define@key{thu@record}{file}{\let\thu@record@file\kv@value}%
@@ -3655,6 +3701,7 @@
\pdfstringdefDisableCommands{
\let\\\relax
\let\quad\relax
+ \let\qquad\relax
\let\hspace\@gobble
}%
\@ifpackagelater{hyperref}{2019/04/27}{}{%
@@ -3689,17 +3736,18 @@
pdfcreator={\thuthesis-v\version}}
}%
}
+\AtEndOfPackageFile*{mathtools}{
+ \@ifpackageloaded{unicode-math}{
+ \let\underbrace\LaTeXunderbrace
+ \let\overbrace\LaTeXoverbrace
+ }{}
+}
\AtEndOfPackageFile*{nomencl}{
\let\nomname\thu@denotation@name
\def\thenomenclature{\begin{denotation}[\nom@tempdim]}
\def\endthenomenclature{\end{denotation}}
}
\AtEndOfPackageFile*{siunitx}{%
- \sisetup{
- group-minimum-digits = 4,
- separate-uncertainty = true,
- inter-unit-product = \ensuremath{{}\cdot{}},
- }
\newcommand\thu@set@siunitx@language{%
\ifthu@language@chinese
\sisetup{