summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/thuthesis
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-05-18 03:00:54 +0000
committerNorbert Preining <norbert@preining.info>2022-05-18 03:00:54 +0000
commit606c3150f6696596010034bfce56f3b565fd7c85 (patch)
tree3b103171029bde57b5851f5e2bf7a8e241d10509 /macros/latex/contrib/thuthesis
parent1eda050c415a347a8a4208797e4257c29b4beefc (diff)
CTAN sync 202205180300
Diffstat (limited to 'macros/latex/contrib/thuthesis')
-rw-r--r--macros/latex/contrib/thuthesis/CHANGELOG.md21
-rw-r--r--macros/latex/contrib/thuthesis/README.md4
-rw-r--r--macros/latex/contrib/thuthesis/data/chap02.tex5
-rw-r--r--macros/latex/contrib/thuthesis/data/chap03.tex10
-rw-r--r--macros/latex/contrib/thuthesis/latexmkrc1
-rw-r--r--macros/latex/contrib/thuthesis/spine.pdfbin18789 -> 18834 bytes
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis-author-year.bst76
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis-bachelor.bst76
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis-example.pdfbin378207 -> 377654 bytes
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis-numeric.bst76
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis.dtx401
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis.pdfbin1008818 -> 1017096 bytes
12 files changed, 460 insertions, 210 deletions
diff --git a/macros/latex/contrib/thuthesis/CHANGELOG.md b/macros/latex/contrib/thuthesis/CHANGELOG.md
index 086fa411a5..e7883b5e17 100644
--- a/macros/latex/contrib/thuthesis/CHANGELOG.md
+++ b/macros/latex/contrib/thuthesis/CHANGELOG.md
@@ -6,6 +6,24 @@
## [Unreleased]
+## [v7.3.0] - 2022-05-17
+
+### Added
+
+- 新增 LuaTeX 支持(试验性)([#771](https://github.com/tuna/thuthesis/issues/771))。
+
+### Changed
+
+- 研究生英文版目录中的标签分隔符由 `\quad` 改为空格([#759](https://github.com/tuna/thuthesis/discussions/759))。
+- 研究生英文版章节标题的标签分隔符由 `\quad` 改为空格([#759](https://github.com/tuna/thuthesis/discussions/759))。
+- 研究生英文封面的“Submitted”改为小写,同步《指南》2022 年 5 月版的修改。
+- 更改示例文档中 `longtable` 的“续表”标题格式,同步《指南》2021 年 6 月版的修改([#766](https://github.com/tuna/thuthesis/issues/766))。
+
+### Fixed
+
+- 修正英文版研究成果的格式([#755](https://github.com/tuna/thuthesis/issues/755))。
+- 修复脚注内容可能跨页的问题([#778](https://github.com/tuna/thuthesis/issues/778))。
+
## [v7.2.4] - 2022-03-19
### Added
@@ -884,7 +902,8 @@
-[Unreleased]: https://github.com/tuna/thuthesis/compare/v7.2.4...HEAD
+[Unreleased]: https://github.com/tuna/thuthesis/compare/v7.3.0...HEAD
+[v7.3.0]: https://github.com/tuna/thuthesis/compare/v7.2.4...v7.3.0
[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
diff --git a/macros/latex/contrib/thuthesis/README.md b/macros/latex/contrib/thuthesis/README.md
index c84c7f409f..024a28e77a 100644
--- a/macros/latex/contrib/thuthesis/README.md
+++ b/macros/latex/contrib/thuthesis/README.md
@@ -15,6 +15,8 @@ Scroll down for the English version of README.
**由于模板升级频繁,在开始使用和提问前,请确保您已经认真完整地阅读了使用说明文档和示例代码。**
+任何违反 [LaTeX项目公共许可证 v1.3c](https://www.latex-project.org/lppl/lppl-1-3c/) 使用 ThuThesis 的行为将被记录在 [耻辱柱](https://github.com/tuna/thuthesis/issues/754) 页面中,以示警告。
+
## 下载
推荐下载**发布版**模板,里面包括具体使用说明以及示例文档:
@@ -90,6 +92,8 @@ This package establishes a simple and easy-to-use LaTeX template for Tsinghua di
**This template is subject to frequent changes. Please make sure you have read the usage documentation and example code completely and carefully before using and asking questions.**
+Any use of ThuThesis in violation of [The LaTeX project public license v1.3c](https://www.latex-project.org/lppl/lppl-1-3c/) will be recorded in the [Hall of Shame](https://github.com/tuna/thuthesis/issues/754).
+
## Downloads
**Published versions** are recommended. Specific usage documentation and examples can be found in the archive. At present, these documents are <b>only available in Chinese</b>:
diff --git a/macros/latex/contrib/thuthesis/data/chap02.tex b/macros/latex/contrib/thuthesis/data/chap02.tex
index 65630cb5d4..57ec26cf09 100644
--- a/macros/latex/contrib/thuthesis/data/chap02.tex
+++ b/macros/latex/contrib/thuthesis/data/chap02.tex
@@ -85,12 +85,13 @@
编号后跟表题(可省略)和“(续)”,置于表上方。续表均应重复表头。
\begin{longtable}{cccc}
- \caption{跨页长表格的表题} \\
+ \caption{跨页长表格的表题}
+ \label{tab:longtable} \\
\toprule
表头 1 & 表头 2 & 表头 3 & 表头 4 \\
\midrule
\endfirsthead
- \caption[]{跨页长表格的表题(续)} \\
+ \caption*{续表~\thetable\quad 跨页长表格的表题} \\
\toprule
表头 1 & 表头 2 & 表头 3 & 表头 4 \\
\midrule
diff --git a/macros/latex/contrib/thuthesis/data/chap03.tex b/macros/latex/contrib/thuthesis/data/chap03.tex
index 2efdc1db96..8cd4344fbb 100644
--- a/macros/latex/contrib/thuthesis/data/chap03.tex
+++ b/macros/latex/contrib/thuthesis/data/chap03.tex
@@ -17,11 +17,6 @@
注意有限增量符号 $\increment$ 固定使用正体,模板提供了 \cs{increment} 命令。
\item 小于等于号和大于等于号使用倾斜的字形 $\le$、$\ge$。
\item 积分号使用正体,比如 $\int$、$\oint$。
- \item 行间公式积分号的上下限位于积分号的上下两端,比如
- \begin{equation*}
- \int_a^b f(x) \dif x.
- \end{equation*}
- 行内公式为了版面的美观,统一居右侧,如 $\int_a^b f(x) \dif x$ 。
\item
偏微分符号 $\partial$ 使用正体。
\item
@@ -66,12 +61,11 @@
\section{数学公式}
数学公式可以使用 \env{equation} 和 \env{equation*} 环境。
-注意数学公式的引用应前后带括号,建议使用 \cs{eqref} 命令,比如式\eqref{eq:example}。
+注意数学公式的引用应前后带括号,通常使用 \cs{eqref} 命令,比如式\eqref{eq:example}。
\begin{equation}
- \frac{1}{2 \uppi \symup{i}} \int_\gamma f = \sum_{k=1}^m n(\gamma; a_k) \mathscr{R}(f; a_k)
+ \frac{1}{2 \uppi \symup{i}} \int_\gamma f = \sum_{k=1}^m n(\gamma; a_k) \mathscr{R}(f; a_k).
\label{eq:example}
\end{equation}
-注意公式编号的引用应含有圆括号,可以使用 \cs{eqref} 命令。
多行公式尽可能在“=”处对齐,推荐使用 \env{align} 环境。
\begin{align}
diff --git a/macros/latex/contrib/thuthesis/latexmkrc b/macros/latex/contrib/thuthesis/latexmkrc
index 17e9557a5e..848fd1312f 100644
--- a/macros/latex/contrib/thuthesis/latexmkrc
+++ b/macros/latex/contrib/thuthesis/latexmkrc
@@ -3,6 +3,7 @@
$pdf_mode = 5;
$xelatex = "xelatex -shell-escape -file-line-error -halt-on-error -interaction=nonstopmode -no-pdf -synctex=1 %O %S";
+$lualatex = "lualatex -shell-escape -file-line-error -halt-on-error -interaction=nonstopmode -synctex=1 %O %S";
$xdvipdfmx = "xdvipdfmx -q -E -o %D %O %S";
$bibtex_use = 1.5;
diff --git a/macros/latex/contrib/thuthesis/spine.pdf b/macros/latex/contrib/thuthesis/spine.pdf
index 6f9d37e2ed..de169dda9b 100644
--- a/macros/latex/contrib/thuthesis/spine.pdf
+++ b/macros/latex/contrib/thuthesis/spine.pdf
Binary files differ
diff --git a/macros/latex/contrib/thuthesis/thuthesis-author-year.bst b/macros/latex/contrib/thuthesis/thuthesis-author-year.bst
index 514368e842..fe7e0d20dd 100644
--- a/macros/latex/contrib/thuthesis/thuthesis-author-year.bst
+++ b/macros/latex/contrib/thuthesis/thuthesis-author-year.bst
@@ -6,11 +6,11 @@
%%
%% gbt7714.dtx (with options: `2015,thu,author-year')
%% -------------------------------------------------------------------
-%% GB/T 7714—2015 BibTeX Style
+%% GB/T 7714 BibTeX Style
%% https://github.com/zepinglee/gbt7714-bibtex-style
-%% Version: 2021/12/08 v2.1.3
+%% Version: 2022/03/21 v2.1.4
%% -------------------------------------------------------------------
-%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
+%% Copyright (C) 2016--2022 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -37,8 +37,6 @@ INTEGERS {
show.mark
space.before.mark
show.medium.type
- slash.for.extraction
- in.booktitle
short.journal
italic.journal
bold.journal.volume
@@ -60,6 +58,10 @@ INTEGERS {
lang.other.order
}
+STRINGS {
+ component.part.label
+}
+
FUNCTION {load.config}
{
#2 'citation.et.al.min :=
@@ -78,8 +80,7 @@ FUNCTION {load.config}
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
- #1 'slash.for.extraction :=
- #0 'in.booktitle :=
+ "slash" 'component.part.label :=
#0 'short.journal :=
#0 'italic.journal :=
#0 'bold.journal.volume :=
@@ -112,6 +113,7 @@ ENTRY
editor
eprint
eprinttype
+ entrysubtype
howpublished
institution
journal
@@ -392,9 +394,22 @@ FUNCTION {new.sentence}
FUNCTION {new.slash}
{ output.state before.all =
'skip$
- { slash.for.extraction
+ { component.part.label "slash" =
{ after.slash 'output.state := }
- { after.block 'output.state := }
+ { new.block
+ component.part.label "in" =
+ { entry.lang lang.en =
+ { "In: " output
+ write$
+ ""
+ before.all 'output.state :=
+ }
+ 'skip$
+ if$
+ }
+ 'skip$
+ if$
+ }
if$
}
if$
@@ -987,14 +1002,6 @@ 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$ * }
- 'skip$
- if$
- }
- 'skip$
- if$
}
FUNCTION {remove.period}
@@ -1136,9 +1143,13 @@ FUNCTION {format.edition}
{ edition empty$
{ "" }
{ edition is.number
- { entry.lang lang.zh =
- { edition " 版" * }
- { edition num.to.ordinal " ed." * }
+ { edition "1" = not
+ { entry.lang lang.zh =
+ { edition " 版" * }
+ { edition num.to.ordinal " ed." * }
+ if$
+ }
+ 'skip$
if$
}
{ entry.lang lang.en =
@@ -1300,7 +1311,10 @@ FUNCTION {format.year}
{ year extract.before.slash extra.label * }
{ date empty$ not
{ date extract.before.dash extra.label * }
- { "empty year in " cite$ * warning$
+ { entry.is.electronic not
+ { "empty year in " cite$ * warning$ }
+ 'skip$
+ if$
urldate empty$ not
{ "[" urldate extract.before.dash * extra.label * "]" * }
{ "" }
@@ -1338,7 +1352,15 @@ FUNCTION {format.date}
{ date empty$ not
{ type$ "patent" = type$ "newspaper" = or
{ date }
- { format.year }
+ { entrysubtype empty$ not
+ { type$ "article" = entrysubtype "newspaper" = and
+ { date }
+ { format.year }
+ if$
+ }
+ { format.year }
+ if$
+ }
if$
}
{ year empty$ not
@@ -1806,7 +1828,15 @@ FUNCTION {journal.article}
new.block
title.in.journal
{ format.title "title" output.check
- "J" set.entry.mark
+ entrysubtype empty$ not
+ {
+ entrysubtype "newspaper" =
+ { "N" set.entry.mark }
+ { "J" set.entry.mark }
+ if$
+ }
+ { "J" set.entry.mark }
+ if$
format.mark "" output.after
new.block
}
diff --git a/macros/latex/contrib/thuthesis/thuthesis-bachelor.bst b/macros/latex/contrib/thuthesis/thuthesis-bachelor.bst
index 78c81e628b..e7d7b7d85e 100644
--- a/macros/latex/contrib/thuthesis/thuthesis-bachelor.bst
+++ b/macros/latex/contrib/thuthesis/thuthesis-bachelor.bst
@@ -6,11 +6,11 @@
%%
%% gbt7714.dtx (with options: `2015,numerical')
%% -------------------------------------------------------------------
-%% GB/T 7714—2015 BibTeX Style
+%% GB/T 7714 BibTeX Style
%% https://github.com/zepinglee/gbt7714-bibtex-style
-%% Version: 2021/12/08 v2.1.3
+%% Version: 2022/03/21 v2.1.4
%% -------------------------------------------------------------------
-%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
+%% Copyright (C) 2016--2022 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -37,8 +37,6 @@ INTEGERS {
show.mark
space.before.mark
show.medium.type
- slash.for.extraction
- in.booktitle
short.journal
italic.journal
bold.journal.volume
@@ -55,6 +53,10 @@ INTEGERS {
end.with.period
}
+STRINGS {
+ component.part.label
+}
+
FUNCTION {load.config}
{
#2 'citation.et.al.min :=
@@ -73,8 +75,7 @@ FUNCTION {load.config}
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
- #1 'slash.for.extraction :=
- #0 'in.booktitle :=
+ "slash" 'component.part.label :=
#0 'short.journal :=
#0 'italic.journal :=
#0 'bold.journal.volume :=
@@ -102,6 +103,7 @@ ENTRY
editor
eprint
eprinttype
+ entrysubtype
howpublished
institution
journal
@@ -382,9 +384,22 @@ FUNCTION {new.sentence}
FUNCTION {new.slash}
{ output.state before.all =
'skip$
- { slash.for.extraction
+ { component.part.label "slash" =
{ after.slash 'output.state := }
- { after.block 'output.state := }
+ { new.block
+ component.part.label "in" =
+ { entry.lang lang.en =
+ { "In: " output
+ write$
+ ""
+ before.all 'output.state :=
+ }
+ 'skip$
+ if$
+ }
+ 'skip$
+ if$
+ }
if$
}
if$
@@ -977,14 +992,6 @@ 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$ * }
- 'skip$
- if$
- }
- 'skip$
- if$
}
FUNCTION {remove.period}
@@ -1126,9 +1133,13 @@ FUNCTION {format.edition}
{ edition empty$
{ "" }
{ edition is.number
- { entry.lang lang.zh =
- { edition " 版" * }
- { edition num.to.ordinal " ed." * }
+ { edition "1" = not
+ { entry.lang lang.zh =
+ { edition " 版" * }
+ { edition num.to.ordinal " ed." * }
+ if$
+ }
+ 'skip$
if$
}
{ entry.lang lang.en =
@@ -1290,7 +1301,10 @@ FUNCTION {format.year}
{ year extract.before.slash extra.label * }
{ date empty$ not
{ date extract.before.dash extra.label * }
- { "empty year in " cite$ * warning$
+ { entry.is.electronic not
+ { "empty year in " cite$ * warning$ }
+ 'skip$
+ if$
urldate empty$ not
{ "[" urldate extract.before.dash * extra.label * "]" * }
{ "" }
@@ -1328,7 +1342,15 @@ FUNCTION {format.date}
{ date empty$ not
{ type$ "patent" = type$ "newspaper" = or
{ date }
- { format.year }
+ { entrysubtype empty$ not
+ { type$ "article" = entrysubtype "newspaper" = and
+ { date }
+ { format.year }
+ if$
+ }
+ { format.year }
+ if$
+ }
if$
}
{ year empty$ not
@@ -1796,7 +1818,15 @@ FUNCTION {journal.article}
new.block
title.in.journal
{ format.title "title" output.check
- "J" set.entry.mark
+ entrysubtype empty$ not
+ {
+ entrysubtype "newspaper" =
+ { "N" set.entry.mark }
+ { "J" set.entry.mark }
+ if$
+ }
+ { "J" set.entry.mark }
+ if$
format.mark "" output.after
new.block
}
diff --git a/macros/latex/contrib/thuthesis/thuthesis-example.pdf b/macros/latex/contrib/thuthesis/thuthesis-example.pdf
index b25df293c9..4345c0a1cc 100644
--- a/macros/latex/contrib/thuthesis/thuthesis-example.pdf
+++ b/macros/latex/contrib/thuthesis/thuthesis-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/thuthesis/thuthesis-numeric.bst b/macros/latex/contrib/thuthesis/thuthesis-numeric.bst
index 0b41d73140..f667907095 100644
--- a/macros/latex/contrib/thuthesis/thuthesis-numeric.bst
+++ b/macros/latex/contrib/thuthesis/thuthesis-numeric.bst
@@ -6,11 +6,11 @@
%%
%% gbt7714.dtx (with options: `2015,thu,numerical')
%% -------------------------------------------------------------------
-%% GB/T 7714—2015 BibTeX Style
+%% GB/T 7714 BibTeX Style
%% https://github.com/zepinglee/gbt7714-bibtex-style
-%% Version: 2021/12/08 v2.1.3
+%% Version: 2022/03/21 v2.1.4
%% -------------------------------------------------------------------
-%% Copyright (C) 2016—2021 by Zeping Lee <zepinglee AT gmail.com>
+%% Copyright (C) 2016--2022 by Zeping Lee <zepinglee AT gmail.com>
%% -------------------------------------------------------------------
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -37,8 +37,6 @@ INTEGERS {
show.mark
space.before.mark
show.medium.type
- slash.for.extraction
- in.booktitle
short.journal
italic.journal
bold.journal.volume
@@ -55,6 +53,10 @@ INTEGERS {
end.with.period
}
+STRINGS {
+ component.part.label
+}
+
FUNCTION {load.config}
{
#2 'citation.et.al.min :=
@@ -73,8 +75,7 @@ FUNCTION {load.config}
#1 'show.mark :=
#0 'space.before.mark :=
#1 'show.medium.type :=
- #1 'slash.for.extraction :=
- #0 'in.booktitle :=
+ "slash" 'component.part.label :=
#0 'short.journal :=
#0 'italic.journal :=
#0 'bold.journal.volume :=
@@ -102,6 +103,7 @@ ENTRY
editor
eprint
eprinttype
+ entrysubtype
howpublished
institution
journal
@@ -382,9 +384,22 @@ FUNCTION {new.sentence}
FUNCTION {new.slash}
{ output.state before.all =
'skip$
- { slash.for.extraction
+ { component.part.label "slash" =
{ after.slash 'output.state := }
- { after.block 'output.state := }
+ { new.block
+ component.part.label "in" =
+ { entry.lang lang.en =
+ { "In: " output
+ write$
+ ""
+ before.all 'output.state :=
+ }
+ 'skip$
+ if$
+ }
+ 'skip$
+ if$
+ }
if$
}
if$
@@ -977,14 +992,6 @@ 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$ * }
- 'skip$
- if$
- }
- 'skip$
- if$
}
FUNCTION {remove.period}
@@ -1126,9 +1133,13 @@ FUNCTION {format.edition}
{ edition empty$
{ "" }
{ edition is.number
- { entry.lang lang.zh =
- { edition " 版" * }
- { edition num.to.ordinal " ed." * }
+ { edition "1" = not
+ { entry.lang lang.zh =
+ { edition " 版" * }
+ { edition num.to.ordinal " ed." * }
+ if$
+ }
+ 'skip$
if$
}
{ entry.lang lang.en =
@@ -1290,7 +1301,10 @@ FUNCTION {format.year}
{ year extract.before.slash extra.label * }
{ date empty$ not
{ date extract.before.dash extra.label * }
- { "empty year in " cite$ * warning$
+ { entry.is.electronic not
+ { "empty year in " cite$ * warning$ }
+ 'skip$
+ if$
urldate empty$ not
{ "[" urldate extract.before.dash * extra.label * "]" * }
{ "" }
@@ -1328,7 +1342,15 @@ FUNCTION {format.date}
{ date empty$ not
{ type$ "patent" = type$ "newspaper" = or
{ date }
- { format.year }
+ { entrysubtype empty$ not
+ { type$ "article" = entrysubtype "newspaper" = and
+ { date }
+ { format.year }
+ if$
+ }
+ { format.year }
+ if$
+ }
if$
}
{ year empty$ not
@@ -1796,7 +1818,15 @@ FUNCTION {journal.article}
new.block
title.in.journal
{ format.title "title" output.check
- "J" set.entry.mark
+ entrysubtype empty$ not
+ {
+ entrysubtype "newspaper" =
+ { "N" set.entry.mark }
+ { "J" set.entry.mark }
+ if$
+ }
+ { "J" set.entry.mark }
+ if$
format.mark "" output.after
new.block
}
diff --git a/macros/latex/contrib/thuthesis/thuthesis.dtx b/macros/latex/contrib/thuthesis/thuthesis.dtx
index f2a48c8a13..d273a1add8 100644
--- a/macros/latex/contrib/thuthesis/thuthesis.dtx
+++ b/macros/latex/contrib/thuthesis/thuthesis.dtx
@@ -14,7 +14,7 @@
%
% \iffalse
%<*driver>
-\ProvidesFile{thuthesis.dtx}[2022/03/19 7.2.4 Tsinghua University Thesis Template]
+\ProvidesFile{thuthesis.dtx}[2022/05/17 7.3.0 Tsinghua University Thesis Template]
\documentclass{ltxdoc}
\usepackage{dtx-style}
@@ -74,7 +74,7 @@
% \item 本模板为作者根据
% 清华大学研究生院颁发的《
% \href{http://yjsy.cic.tsinghua.edu.cn/docinfo/board/boarddetail.jsp?columnId=001050603&parentColumnId=0010506&itemSeq=5365}{%
-% 研究生学位论文写作指南}》(2021年6月版本,限校内网络访问)、
+% 研究生学位论文写作指南}》(更新到2022年5月版本,限校内网络访问)、
% 英文版《Guide to Thesis Writing for Graduate Students》、
% 清华大学教务处颁发的《
% \href{https://lib.tsinghua.edu.cn/info/1073/1978.htm}{%
@@ -379,8 +379,8 @@
% \subsubsection{输出格式}
% \DescribeOption{output}
% 选择输出的格式是打印版还是电子版(用于提交),可选:\option{print}(默认)、\option{electronic}。
-% 一些院系要求提交的电子版不含空白页,但是这对打印并不友好,
-% 比如正文第一页可能会在左侧;以及一些部分需要单面打印,需要插入空白页。
+% 打印版 \option{print} 自动在单面打印的部分插入空白页(比如封面),并且保证正文第 1 页在右侧。
+% 电子版 \option{electronic} 选项会去掉空白页,这是因为一些院系要求提交的电子版不含空白页。
% 注意在不同选项下,生成的声明页码很可能不同。为了避免页码错误,
% \thuthesis{}将会在插入扫描的 PDF 文件时自动生成页码,因此\textbf{扫描声明页时请移除底部的页码},以防重叠。
%
@@ -670,9 +670,7 @@
% \DescribeOption{toc-chapter-style}
% 本科生《写作指南》关于目录章标题要求“目录从第 1 章开始,每章标题用黑体小四号字”,
% 所以其中的西文和数字默认使用 Arial 字体,跟正文的章标题一致。
-% 但是论文样例\footnote{
-% \url{http://www.law.tsinghua.edu.cn/publish/law/7024/2012/20120216153516317135347/20120216153516317135347_.html}
-% }的目录章标题的西文和数字却使用了 Times。
+% 但是论文样例\footnote{此前发布在法学院网站,目前已经无公开可获得的链接。}的目录章标题的西文和数字却使用了 Times。
% 如果审查老师这样要求,需要在生成目录前设置
% \begin{latex}
% \thusetup{
@@ -822,7 +820,7 @@
% uppercase-greek = italic,
% less-than-or-equal = slanted,
% integral = upright,
-% integral-limits = true,
+% integral-limits = false,
% partial = upright,
% math-ellipsis = centered,
% real-part = roman,
@@ -1250,7 +1248,7 @@
% \begin{macrocode}
%<cls>\NeedsTeXFormat{LaTeX2e}[2017/04/15]
%<cls>\ProvidesClass{thuthesis}
-%<cls>[2022/03/19 7.2.4 Tsinghua University Thesis Template]
+%<cls>[2022/05/17 7.3.0 Tsinghua University Thesis Template]
% \end{macrocode}
%
% 报错
@@ -1288,7 +1286,9 @@
% \begin{macrocode}
\RequirePackage{iftex}
\ifXeTeX\else
- \thu@error{XeLaTeX is required to compile this document}
+ \ifLuaTeX\else
+ \thu@error{XeLaTeX or LuaLaTeX is required to compile this document}
+ \fi
\fi
% \end{macrocode}
%
@@ -1306,7 +1306,7 @@
%<*cls>
\hyphenation{Thu-Thesis}
\def\thuthesis{ThuThesis}
-\def\version{7.2.4}
+\def\version{7.3.0}
\RequirePackage{kvdefinekeys}
\RequirePackage{kvsetkeys}
\RequirePackage{kvoptions}
@@ -1541,6 +1541,7 @@
auto,
windows,
mac,
+ mac-word,
noto,
fandol,
none,
@@ -1767,8 +1768,11 @@
% 利用 \pkg{xeCJKfntef} 实现汉字的下划线和盒子内两段对齐,并可以避免
% \cs{makebox}\oarg{width}\oarg{s} 可能产生的 underful boxes。
% \begin{macrocode}
-\RequirePackage{xeCJKfntef}
-\RequirePackage{soul}
+\ifXeTeX
+ \RequirePackage{xeCJKfntef}
+\else
+ \RequirePackage{ulem}
+\fi
% \end{macrocode}
%
% 表格控制
@@ -2061,8 +2065,20 @@
%
% 带圈数字和星号使用中文字体。
% \begin{macrocode}
-\xeCJKDeclareCharClass{CJK}{"2460 -> "2473}
-\xeCJKDeclareCharClass{CJK}{"2605}
+\ifLuaTeX
+ % ctex 将带圈数字 U+2460–U+24FF 归入字符范围 3(ALchar),这里改回范围 6(JAchar)
+ \ltjdefcharrange{3}{%
+ "2000-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF}
+ \ltjdefcharrange{6}{%
+ "2460-"24FF, "2E80-"2EFF, "3000-"30FF, "3190-"319F, "31F0-"4DBF,
+ "4E00-"9FFF, "F900-"FAFF, "FE10-"FE1F, "FE30-"FE6F, "FF00-"FFEF,
+ "1B000-"1B16F, "1F100-"1F2FF, "20000-"3FFFF, "E0100-"E01EF}
+\else
+ \ifXeTeX
+ \xeCJKDeclareCharClass{CJK}{"2460 -> "2473}
+ \xeCJKDeclareCharClass{CJK}{"2605}
+ \fi
+\fi
% \end{macrocode}
%
% \newcommand\unicodechar[1]{U+#1(\symbol{"#1})}
@@ -2083,16 +2099,28 @@
% \begin{macrocode}
\newcommand\thu@set@punctuations{%
\ifthu@language@chinese
- \xeCJKDeclareCharClass{FullLeft}{"2018, "201C}%
- \xeCJKDeclareCharClass{FullRight}{
- "00B7, "2019, "201D, "2013, "2014, "2025, "2026, "2E3A,
- }%
+ \ifLuaTeX
+ \ltjsetparameter{jacharrange={+9}}
+ \else
+ \ifXeTeX
+ \xeCJKDeclareCharClass{FullLeft}{"2018, "201C}%
+ \xeCJKDeclareCharClass{FullRight}{
+ "00B7, "2019, "201D, "2013, "2014, "2025, "2026, "2E3A,
+ }%
+ \fi
+ \fi
\else
\ifthu@language@english
- \xeCJKDeclareCharClass{HalfLeft}{"2018, "201C}%
- \xeCJKDeclareCharClass{HalfRight}{
- "00B7, "2019, "201D, "2013, "2014, "2025, "2026, "2E3A,
- }%
+ \ifLuaTeX
+ \ltjsetparameter{jacharrange={-9}}
+ \else
+ \ifXeTeX
+ \xeCJKDeclareCharClass{HalfLeft}{"2018, "201C}%
+ \xeCJKDeclareCharClass{HalfRight}{
+ "00B7, "2019, "201D, "2013, "2014, "2025, "2026, "2E3A,
+ }%
+ \fi
+ \fi
\fi
\fi
}
@@ -2208,6 +2236,9 @@
%
% 使用 \pkg{fontspec} 配置字体。
% \begin{macrocode}
+\newcommand\thu@mac@word@font@path{%
+ /Applications/Microsoft Word.app/Contents/Resources/DFonts/%
+}
\ifthu@fontset@auto
\ifthu@system@windows
\thusetup{fontset = windows}
@@ -2215,15 +2246,19 @@
\IfFontExistsTF{SimSun}{
\thusetup{fontset = windows}
}{
- \ifthu@system@mac
- \thusetup{fontset = mac}
- \else
- \IfFontExistsTF{Noto Serif CJK SC}{
- \thusetup{fontset = ubuntu}
- }{
- \thusetup{fontset = fandol}
- }
- \fi
+ \IfFileExists{\thu@mac@word@font@path/SimSun.ttf}{
+ \thusetup{fontset = windows}
+ }{
+ \ifthu@system@mac
+ \thusetup{fontset = mac}
+ \else
+ \IfFontExistsTF{Noto Serif CJK SC}{
+ \thusetup{fontset = ubuntu}
+ }{
+ \thusetup{fontset = fandol}
+ }
+ \fi
+ }
}
\fi
\fi
@@ -2487,13 +2522,30 @@
%
% \subsubsection{中文字体}
%
+% 去掉“no requested script”警告。
+% \begin{macrocode}
+\ExplSyntaxOn
+\@ifpackageloaded { xeCJK }
+ { \msg_redirect_name:nnn { fontspec } { no-script } { info } }
+ { }
+\ExplSyntaxOff
+% \end{macrocode}
+%
% \begin{macrocode}
\ifthu@cjk@font@auto
\ifthu@fontset@mac
\thusetup{cjk-font = mac}
\else
\ifthu@fontset@windows
- \thusetup{cjk-font = windows}
+ \IfFontExistsTF{SimSun}{
+ \thusetup{cjk-font = windows}
+ }{
+ \IfFileExists{\thu@mac@word@font@path/SimSun.ttf}{
+ \thusetup{cjk-font = mac-word}
+ }{
+ \thu@error{Cannot find "SimSun" font}
+ }
+ }
\else
\ifthu@fontset@ubuntu
\thusetup{cjk-font = noto}
@@ -2508,24 +2560,48 @@
% Windows 的中易字体。
% \begin{macrocode}
\newcommand\thu@set@cjk@font@windows{%
- \xeCJKsetup{EmboldenFactor=3}%
\setCJKmainfont{SimSun}[
- AutoFakeBold = true,
+ AutoFakeBold = 3,
ItalicFont = KaiTi,
]%
- \setCJKsansfont{SimHei}[AutoFakeBold]%
+ \setCJKsansfont{SimHei}[AutoFakeBold = 3]%
\setCJKmonofont{FangSong}%
- \setCJKfamilyfont{zhsong}{SimSun}[AutoFakeBold]%
- \setCJKfamilyfont{zhhei}{SimHei}[AutoFakeBold]%
+ \setCJKfamilyfont{zhsong}{SimSun}[AutoFakeBold = 3]%
+ \setCJKfamilyfont{zhhei}{SimHei}[AutoFakeBold = 3]%
\setCJKfamilyfont{zhkai}{KaiTi}%
\setCJKfamilyfont{zhfs}{FangSong}%
}
% \end{macrocode}
%
+% macOS 的 Microsoft Word 字体。
+% \begin{macrocode}
+\@namedef{thu@set@cjk@font@mac-word}{%
+ \setCJKmainfont{SimSun}[%
+ Path = \thu@mac@word@font@path,
+ AutoFakeBold = 3,
+ ItalicFont = KaiTi,
+ ]%
+ \setCJKsansfont{SimHei}[%
+ Path = \thu@mac@word@font@path,
+ AutoFakeBold = 3,
+ ]%
+ \setCJKmonofont{FangSong}[Path=\thu@mac@word@font@path]%
+ \setCJKfamilyfont{zhsong}{SimSun}[%
+ Path = \thu@mac@word@font@path,
+ AutoFakeBold = 3,
+ ]%
+ \setCJKfamilyfont{zhhei}{SimHei}[%
+ Path = \thu@mac@word@font@path,
+ AutoFakeBold = 3,
+ ]%
+ \setCJKfamilyfont{zhkai}{KaiTi}[Path = \thu@mac@word@font@path]%
+ \setCJKfamilyfont{zhfs}{FangSong}[Path = \thu@mac@word@font@path]%
+}
+% \end{macrocode}
+%
% macOS 的华文字体。
% \begin{macrocode}
\newcommand\thu@set@cjk@font@mac{%
- \defaultCJKfontfeatures{}%
\setCJKmainfont{Songti SC}[
UprightFont = * Light,
BoldFont = * Bold,
@@ -2562,30 +2638,19 @@
% 注意 Noto CJK 的 regular 字重名字不带“Regular”。
% \begin{macrocode}
\newcommand\thu@set@cjk@font@noto{%
- \defaultCJKfontfeatures{}%
\setCJKmainfont{Noto Serif CJK SC}[
UprightFont = * Light,
BoldFont = * Bold,
ItalicFont = FandolKai-Regular,
ItalicFeatures = {Extension = .otf},
- Script = CJK,
- ]%
- \setCJKsansfont{Noto Sans CJK SC}[
- BoldFont = * Medium,
- Script = CJK,
- ]%
- \setCJKmonofont{Noto Sans Mono CJK SC}[
- Script = CJK,
]%
+ \setCJKsansfont{Noto Sans CJK SC}[BoldFont = * Medium]%
+ \setCJKmonofont{Noto Sans Mono CJK SC}%
\setCJKfamilyfont{zhsong}{Noto Serif CJK SC}[
UprightFont = * Light,
UprightFont = * Bold,
- Script = CJK,
- ]%
- \setCJKfamilyfont{zhhei}{Noto Sans CJK SC}[
- BoldFont = * Medium,
- Script = CJK,
]%
+ \setCJKfamilyfont{zhhei}{Noto Sans CJK SC}[BoldFont * Medium]%
\setCJKfamilyfont{zhfs}{FandolFang}[
Extension = .otf,
UprightFont = *-Regular,
@@ -2600,7 +2665,6 @@
% Fandol 字体。
% \begin{macrocode}
\newcommand\thu@set@cjk@font@fandol{%
- \defaultCJKfontfeatures{}%
\setCJKmainfont{FandolSong}[
Extension = .otf,
UprightFont = *-Regular,
@@ -2668,19 +2732,20 @@
\thusetup{
uppercase-greek = italic,
integral = upright,
- integral-limits = true,
partial = upright,
real-part = roman,
}%
\ifthu@math@style@ISO
\thusetup{
less-than-or-equal = horizontal,
+ integral-limits = true,
math-ellipsis = lower,
}%
\else
\ifthu@math@style@GB
\thusetup{
less-than-or-equal = slanted,
+ integral-limits = false,
math-ellipsis = centered,
}%
\fi
@@ -3187,7 +3252,6 @@
% \begin{macrocode}
\ctexset{%
punct=quanjiao,
- space=auto,
}
\newcommand\thu@set@indent{%
\ifthu@main@language@chinese
@@ -3254,6 +3318,13 @@
%
% \subsubsection{脚注}
% \label{sec:footnote}
+%
+% 严格禁止脚注跨页,参考 \href{https://github.com/tuna/thuthesis/issues/778}{\#778}
+% 和 \url{https://texfaq.org/FAQ-splitfoot}。
+% \begin{macrocode}
+\interfootnotelinepenalty=10000
+% \end{macrocode}
+%
% 脚注内容采用小五号字,中文用宋体,英文和数字用 Times New Roman 体按两端对齐格式书写,
% 单倍行距,段前段后均空 0 磅。
% 脚注的序号按页编排,不同页的脚注序号不需要连续。
@@ -3593,21 +3664,17 @@
numberformat = {},
titleformat = {},
fixskip = true,
- aftername = \quad,
afterindent = true,
lofskip = 0pt,
lotskip = 0pt,
},
section = {
- aftername = \quad,
afterindent = true,
},
subsection = {
- aftername = \quad,
afterindent = true,
},
subsubsection = {
- aftername = \quad,
afterindent = true,
},
paragraph/afterindent = true,
@@ -3636,21 +3703,25 @@
\ctexset{%
chapter = {
format = \centering\sffamily\fontsize{15bp}{20bp}\selectfont,
+ aftername = \quad,
beforeskip = 30bp,
afterskip = 20bp,
},
section = {
format = \sffamily\fontsize{14bp}{18bp}\selectfont,
+ aftername = \quad,
beforeskip = 25bp,
afterskip = 12bp,
},
subsection = {
format = \sffamily\fontsize{13bp}{15bp}\selectfont,
+ aftername = \quad,
beforeskip = 12bp,
afterskip = 6bp,
},
subsubsection = {
format = \sffamily\fontsize{12bp}{14bp}\selectfont,
+ aftername = \quad,
beforeskip = 12bp,
afterskip = 6bp,
},
@@ -3700,6 +3771,25 @@
% 由于 Word 的行距算法不同,这里进行了一些调整使得视觉上更接近。
% \begin{macrocode}
\else
+ \ctexset{%
+ chapter = {
+ beforeskip = 27bp,
+ afterskip = 27bp,
+ number = \thechapter,
+ },
+ section = {
+ beforeskip = 24bp,
+ afterskip = 6bp,
+ },
+ subsection = {
+ beforeskip = 12bp,
+ afterskip = 6bp,
+ },
+ subsubsection = {
+ beforeskip = 12bp,
+ afterskip = 6bp,
+ },
+ }%
\ifthu@main@language@chinese
\ctexset{%
chapter = {
@@ -3707,15 +3797,19 @@
nameformat = {},
titleformat = {},
name = {第,章},
+ aftername = \quad,
},
section = {
format = \sffamily\fontsize{14bp}{20bp}\selectfont,
+ aftername = \quad,
},
subsection = {
format = \sffamily\fontsize{13bp}{20bp}\selectfont,
+ aftername = \quad,
},
subsubsection = {
format = \sffamily\fontsize{12bp}{20bp}\selectfont,
+ aftername = \quad,
},
}%
\else
@@ -3725,37 +3819,22 @@
nameformat = \MakeUppercase,
titleformat = \MakeUppercase,
name = \chaptername\space,
+ aftername = \space,
},
section = {
format = \sffamily\bfseries\fontsize{14bp}{20bp}\selectfont,
+ aftername = \space,
},
subsection = {
format = \sffamily\bfseries\fontsize{13bp}{20bp}\selectfont,
+ aftername = \space,
},
subsubsection = {
format = \sffamily\bfseries\fontsize{12bp}{20bp}\selectfont,
+ aftername = \space,
},
}%
\fi
- \ctexset{%
- chapter = {
- beforeskip = 27bp,
- afterskip = 27bp,
- number = \thechapter,
- },
- section = {
- beforeskip = 24bp,
- afterskip = 6bp,
- },
- subsection = {
- beforeskip = 12bp,
- afterskip = 6bp,
- },
- subsubsection = {
- beforeskip = 12bp,
- afterskip = 6bp,
- },
- }%
\fi
}
\thu@set@section@format
@@ -3953,7 +4032,7 @@
\else
\titlecontents{chapter}
[\z@]{\addvspace{6bp}\heiti}
- {\contentspush{\MakeUppercase{\thecontentslabel}\quad}\MakeUppercase}{\MakeUppercase}
+ {\contentspush{\MakeUppercase{\thecontentslabel}\space}\MakeUppercase}{\MakeUppercase}
{\rmfamily\thu@leaders\thecontentspage}%
\titlecontents{section}
[1em]{}
@@ -4133,17 +4212,22 @@
\newcommand\thu@date@en@short[3]{\thu@date@month{#2}, #1}
% \end{macrocode}
%
-% 下划线命令
+% 下划线命令。
+% \pkg{ulem} 的下划线 \cs{uline} 可以控制粗细和深度。
% \begin{macrocode}
\newcommand\thu@underline[2][6em]{\hskip1pt\underline{\hb@xt@ #1{\hss#2\hss}}\hskip3pt}
-\newcommand\thu@CJKunderline[2][6em]{\CJKunderline*{\hb@xt@ #1{\hss#2\hss}}}
+\newcommand\thu@uline[2][6em]{\uline{\hb@xt@ #1{\hss#2\hss}}}
% \end{macrocode}
%
% 将内容拉伸或压缩到固定宽度。
% \begin{macrocode}
\newcommand\thu@fixed@box[2]{%
\begingroup
- \def\CJKglue{\hskip 0pt plus 2filll minus 1filll}%
+ \ifLuaTeX
+ \ltjsetparameter{kanjiskip = {0pt plus 2filll minus 1filll}}%
+ \else
+ \renewcommand\CJKglue{\hspace{0pt plus 2filll minus 1filll}}%
+ \fi
\makebox[#1][l]{#2}%
\endgroup
}
@@ -4156,7 +4240,11 @@
\sbox\thu@stretch@box{#2}%
\ifdim \wd\thu@stretch@box < #1\relax
\begingroup
- \def\CJKglue{\hskip 0pt plus 2filll}%
+ \ifLuaTeX
+ \ltjsetparameter{kanjiskip = {0pt plus 2filll}}%
+ \else
+ \renewcommand\CJKglue{\hspace{0pt plus 2filll}}%
+ \fi
\makebox[#1][l]{#2}%
\endgroup
\else
@@ -4379,8 +4467,14 @@
\thu@titlepage@degree
\vfill
\parbox[t][8.5cm][t]{\textwidth}{%
- \centering\CJKfamily+{}%
- \centering\fangsong\sanhao[1.95]%
+ \centering
+ \fangsong
+ \ifLuaTeX
+ \fontspec{\CJK@family}%
+ \else
+ \CJKfamily+{}%
+ \fi
+ \sanhao[1.95]%
\thu@titlepage@info
}\par
\parbox[t][2.5cm][t]{\textwidth}{\centering\thu@titlepage@date}\par
@@ -4415,8 +4509,14 @@
% \begin{macrocode}
\newcommand\thu@titlepage@degree{%
\begingroup
- \CJKfamily+{}\xiaoer
- \def\CJKglue{\hskip 1bp}%
+ \xiaoer
+ \ifLuaTeX
+ \fontspec{\CJK@family}%
+ \ltjsetparameter{kanjiskip = {1bp}}%
+ \else
+ \CJKfamily+{}%
+ \renewcommand\CJKglue{\hspace{1bp}}%
+ \fi
\ifthu@thesis@type@thesis
(申请清华大学\thu@degree@name
\ifthu@degree@type@professional
@@ -4540,7 +4640,11 @@
\newcommand\thu@titlepage@date{%
\begingroup
\sanhao
- \def\CJKglue{\hskip 1bp}%
+ \ifLuaTeX
+ \ltjsetparameter{kanjiskip = {1bp}}%
+ \else
+ \renewcommand\CJKglue{\hspace{1bp}}%
+ \fi
\thu@format@date{\thu@date@zh@short}{\thu@date}\par
\endgroup
}
@@ -4632,7 +4736,7 @@
\fi
}
\newcommand\thu@titlepage@en@degree{%
- \thu@thesis@name@en{} Submitted to\par
+ \thu@thesis@name@en{} submitted to\par
{\bfseries Tsinghua University\par}%
in partial fulfillment of the requirement\par
for the
@@ -4700,22 +4804,23 @@
\vskip 1.8cm%
\begingroup
\heiti
- \ifthu@main@language@chinese
- \yihao[1.56]%
- \else
- \fontsize{26bp}{32bp}\selectfont
- \fi
- \parindent=18bp%
- \hangindent=72bp%
- \makebox[54bp]{\xiaoer[1.2]题目:}%
- \CJKunderline*[skip=false, thickness=0.05em, depth=0.12em]{\thu@title}%
- \ifthu@main@language@english
- \\
- \thusetup{language=english}%
- \ul\thu@title@en
- \thusetup{language=chinese}%
- \fi
- \par
+ % 21.0cm - 0.2cm - 3cm * 2 - 18bp * 4 = 347bp
+ \noindent\hspace{1em}\makebox[54bp]{\xiaoer[1.2]题目:}%
+ \parbox[t]{347bp}{%
+ \ifthu@main@language@chinese
+ \yihao[1.56]%
+ \else
+ \fontsize{26bp}{32bp}\selectfont
+ \fi
+ \renewcommand\ULthickness{0.05em}%
+ \renewcommand\ULdepth{0.17em}%
+ \expandafter\uline\expandafter{\thu@title}\par
+ \ifthu@main@language@english
+ \thusetup{language=english}%
+ \expandafter\uline\expandafter{\thu@title@en}\par
+ \thusetup{language=chinese}%
+ \fi
+ }\par
\endgroup
\vskip 1.9cm%
\begingroup
@@ -4746,7 +4851,12 @@
\vskip 1.4cm%
\begingroup
\centering
- {\CJKfamily+{}\xiaosi\thu@format@date{\thu@date@zh@digit}{\thu@date}\par}%
+ \ifLuaTeX
+ \fontspec{\CJK@family}%
+ \else
+ \CJKfamily+{}%
+ \fi
+ \xiaosi\thu@format@date{\thu@date@zh@digit}{\thu@date}\par
\endgroup
\vfill
\clearpage
@@ -4774,20 +4884,23 @@
}%
\vskip 0.2cm%
\parbox[t][4.0cm][c]{\textwidth}{%
- \centering\sihao[3.46]\CJKunderline*[depth=1em]{\thu@title}\par
+ \centering\sihao[3.46]%
+ \renewcommand\ULdepth{1em}%
+ \expandafter\uline\expandafter{\thu@title}\par
}\par
\vskip 0.4cm%
{\xiaosi\thu@author\par}%
\vskip 1.4cm%
- {\xiaosi[1.58]\xeCJKsetup{underline/depth=0.9em}%
+ {\xiaosi[1.58]%
+ \renewcommand\ULdepth{0.9em}%
工作完成日期\quad
- \thu@CJKunderline[5.9cm]{%
+ \thu@uline[5.9cm]{%
\thu@format@date{\thu@date@zh@digit@short}{\thu@start@date}—%
\thu@format@date{\thu@date@zh@digit@short}{\thu@end@date}
}\par
\vskip 0.55cm%
报告提交日期\quad
- \thu@CJKunderline[5.9cm]{\thu@format@date{\thu@date@zh@digit@short}{\thu@date}}\par
+ \thu@uline[5.9cm]{\thu@format@date{\thu@date@zh@digit@short}{\thu@date}}\par
}%
\vskip 0.45cm%
{\xiaosi[2]{\ziju{1}清华大学}\quad (北京)\par}%
@@ -6047,16 +6160,49 @@
format += \centering,
numbering = false,
},
- subsection = {
- format = \sffamily\fontsize{14bp}{20bp}\selectfont,
- numbering = false,
- aftertitle = \ifthu@language@chinese :\else :\fi,
- },
}%
- \ifthu@degree@bachelor
- \ifthu@language@english
- \sffamily\fontsize{15bp}{20bp}\selectfont,
+ \ifthu@language@chinese
+ \ctexset{
+ subsection = {
+ format = \sffamily\fontsize{14bp}{20bp}\selectfont,
+ numbering = false,
+ aftertitle = :,
+ },
+ }%
+ \ifthu@degree@graduate
+ \fontsize{12bp}{16bp}\selectfont
+ \fi
+ \setlist[achievements]{
+ topsep = 6bp,
+ itemsep = 6bp,
+ leftmargin = 1cm,
+ labelwidth = 1cm,
+ labelsep = 0pt,
+ align = left,
+ label = [\arabic*],
+ }%
+ \else
+ \ctexset{
+ subsection = {
+ beforeskip = 0pt,
+ afterskip = 0pt,
+ format = \bfseries\normalsize,
+ indent = \parindent,
+ numbering = false,
+ },
+ }%
+ \ifthu@degree@bachelor
+ % 内容部分用Arial字体,字号15pt,行距采用固定值20pt, 段前后 0pt。
+ \sffamily\fontsize{15bp}{20bp}\selectfont
\fi
+ \setlist[achievements]{
+ topsep = 0bp,
+ itemsep = 0bp,
+ leftmargin = 1.75cm,
+ labelsep = 0.5cm,
+ align = right,
+ label = [\arabic*],
+ }%
\fi
}{}
% \end{macrocode}
@@ -6077,19 +6223,14 @@
% \begin{macrocode}
\newlist{achievements}{enumerate}{1}
\setlist[achievements]{
- label = [\arabic*],
- align = left,
- leftmargin = 10mm,
topsep = 6bp,
- parsep = 0bp,
partopsep = 0bp,
itemsep = 6bp,
- labelsep = !,
- before = {
- \ifthu@degree@graduate
- \fontsize{12bp}{16bp}\selectfont
- \fi
- },
+ parsep = 0bp,
+ leftmargin = 10mm,
+ itemindent = 0pt,
+ align = left,
+ label = [\arabic*],
resume = achievements,
}
% \end{macrocode}
@@ -6332,7 +6473,7 @@
% \itshape
% #1\@addpunct{.}]\ignorespaces
\sffamily
- #1\@addpunct{\thu@theorem@separator}]\ignorespaces
+ #1]\ignorespaces
}{%
\popQED\endtrivlist\@endpefalse
}
diff --git a/macros/latex/contrib/thuthesis/thuthesis.pdf b/macros/latex/contrib/thuthesis/thuthesis.pdf
index ad3acc14f2..57cc881d94 100644
--- a/macros/latex/contrib/thuthesis/thuthesis.pdf
+++ b/macros/latex/contrib/thuthesis/thuthesis.pdf
Binary files differ