From 539648a9305d6107a588ecdff34b5cdce48fb930 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 15 Jun 2020 03:01:25 +0000 Subject: CTAN sync 202006150301 --- macros/latex/contrib/pict2e/p2e-drivers.pdf | Bin 216023 -> 216020 bytes macros/latex/contrib/pict2e/pict2e.dtx | 192 +++--- macros/latex/contrib/pict2e/pict2e.pdf | Bin 577516 -> 887097 bytes macros/latex/contrib/thuthesis/CHANGELOG.md | 659 +++++++++++++++++++++ macros/latex/contrib/thuthesis/LICENSE | 416 +++++++++++++ macros/latex/contrib/thuthesis/Makefile | 3 + .../latex/contrib/thuthesis/figures/scan-auth.pdf | Bin 35716 -> 0 bytes .../contrib/thuthesis/figures/scan-copyright.pdf | Bin 0 -> 35716 bytes .../contrib/thuthesis/figures/scan-statement.pdf | Bin 26709 -> 31558 bytes macros/latex/contrib/thuthesis/latexmkrc | 5 - macros/latex/contrib/thuthesis/spine.pdf | Bin 17166 -> 17265 bytes macros/latex/contrib/thuthesis/thusetup.tex | 8 +- .../latex/contrib/thuthesis/thuthesis-example.pdf | Bin 877155 -> 877114 bytes .../latex/contrib/thuthesis/thuthesis-example.tex | 12 +- macros/latex/contrib/thuthesis/thuthesis.dtx | 207 ++++--- macros/latex/contrib/thuthesis/thuthesis.pdf | Bin 1075242 -> 1075310 bytes 16 files changed, 1311 insertions(+), 191 deletions(-) create mode 100644 macros/latex/contrib/thuthesis/CHANGELOG.md create mode 100644 macros/latex/contrib/thuthesis/LICENSE delete mode 100644 macros/latex/contrib/thuthesis/figures/scan-auth.pdf create mode 100644 macros/latex/contrib/thuthesis/figures/scan-copyright.pdf (limited to 'macros/latex/contrib') diff --git a/macros/latex/contrib/pict2e/p2e-drivers.pdf b/macros/latex/contrib/pict2e/p2e-drivers.pdf index 1b8add2b0e..fe1a1c89af 100644 Binary files a/macros/latex/contrib/pict2e/p2e-drivers.pdf and b/macros/latex/contrib/pict2e/p2e-drivers.pdf differ diff --git a/macros/latex/contrib/pict2e/pict2e.dtx b/macros/latex/contrib/pict2e/pict2e.dtx index 9c4baa4f3f..9c2b986cc2 100644 --- a/macros/latex/contrib/pict2e/pict2e.dtx +++ b/macros/latex/contrib/pict2e/pict2e.dtx @@ -2,7 +2,7 @@ % % % -% Copyright (C) 2003-2016 +% Copyright (C) 2003-2020 % Rolf Niepraschk, Rolf.Niepraschk@gmx.de % Hubert Gaesslein, hubertjg@gmx.de % Josef Tkadlec, j.tkadlec@email.cz @@ -23,12 +23,12 @@ % %<*package> \NeedsTeXFormat{LaTeX2e}[1999/12/01] -\ProvidesPackage{pict2e}[2019/08/20 v0.3c Improved picture commands (HjG,RN,JT)] +\ProvidesPackage{pict2e}[2020/06/13 v0.3d Improved picture commands (HjG,RN,JT)] % % %<*driver> \listfiles -\errorcontextlines5 +\setcounter{errorcontextlines}{5} \documentclass{ltxdoc} \usepackage{pict2e} % [pstarrows] %%\usepackage[debug]{pict2e} @@ -37,13 +37,16 @@ \usepackage{color} \usepackage{graphicx} \usepackage{array} -%%\usepackage{pstcol} +\usepackage[T1]{fontenc} +\usepackage{lmodern} \usepackage{longtable} \IfFileExists{geometry.sty}{% \usepackage[left=\marginparwidth,textwidth=1.15\textwidth,% top=20mm,bottom=30mm]{geometry}}{} \IfFileExists{url.sty}{\usepackage{url}} {\newcommand*\url[1]{\texttt{#1}}} +\usepackage{hypdoc} + %\OnlyDescription \AlsoImplementation \EnableCrossrefs @@ -60,9 +63,9 @@ % \fi % % \GetFileInfo{pict2e.sty} -% \def\docdate{2016/01/09} +% \def\docdate{2020/06/13} % -% \CheckSum{2158} +% \CheckSum{2157} % % ^^A ======== % @@ -184,6 +187,7 @@ % \changes{v0.2y}{2011/04/05}{Support for dvipdfmx. (JT)} % \changes{v0.2z}{2014/01/12}{Conflict wit epic, eepic solved. (JT)} % \changes{v0.3a}{2016/01/09}{Local line types, documentation fixes. (JT)} +% \changes{v0.3d}{2020/06/13}{\cmd{\@sline} renamed \cmd{\pIIe@sline} (RN)} % \fi % % \changes{v0.1a}{2003/07/18}{First version. (RN)} @@ -1594,39 +1598,44 @@ } % \end{macrocode} % \end{macro} -% Arrow shape options. -% The values for \LaTeX-style arrows are ``hand optimized''; -% they should be regarded as experimental, -% i.e., they may change in future versions of this package. -% The values for \PSTricks-style arrows are the default ones used by -% that bundle. -% If the \textsf{pstricks} package is actually loaded, then -% \textsf{pict2e} will obey the current values of the corresponding -% internal \PSTricks\ parameters; -% this feature should be regarded as experimental, -% i.e., it may change in future versions of this package. +% \begin{macro}{\pIIe@FAL} +% \begin{macro}{\pIIe@FAW} +% \begin{macro}{\pIIe@CAW} +% \begin{macro}{\pIIe@FAI} +% Some macros to parametrize the shape of the vector outline. +% The following values are “hand optimized” with the aim of emulating +% \LaTeX-style arrows. They also seem suitable for our \PSTricks-style arrows. +% See Figures~\ref{fig:vector:ltx} and~\ref{fig:vector:pst}. +% \changes{v0.1x}{2003/11/27}{Introduce ``inset''. (RN,HjG)} % \begin{macrocode} -\DeclareOption{ltxarrows}{\AtEndOfPackage{% +\newcommand*\pIIe@FAL{1.52}% +\newcommand*\pIIe@FAW{3.2}% +\newcommand*\pIIe@CAW{1.5pt}% +\newcommand*\pIIe@FAI{0.25}% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\ltxarrows} +% \begin{macro}{\pstarrows} +% The following user-level macros can be used to change the arrow style +% (\LaTeX-style is the default). +% \changes{v0.3d}{2020/06/13}{New user-level macros \cmd{\ltxarrows} +% and \cmd{\pstarrows}. (RN)} +% \begin{macrocode} +\newcommand*\ltxarrows{% \let\pIIe@vector=\pIIe@vector@ltx - \def\pIIe@FAL{1.52}% - \def\pIIe@FAW{3.2}% - \def\pIIe@CAW{1.5pt}% - \def\pIIe@FAI{0.25}% - }} -\DeclareOption{pstarrows}{\AtEndOfPackage{% +} +\newcommand*\pstarrows{% \let\pIIe@vector=\pIIe@vector@pst - \iffalse - \def\pIIe@FAL{1.4}% - \def\pIIe@FAW{2}% - \def\pIIe@CAW{1.5pt}% - \def\pIIe@FAI{0.4}% - \else % These are the ltxarrows values, which looks better. (RN) - \def\pIIe@FAL{1.52}% - \def\pIIe@FAW{3.2}% - \def\pIIe@CAW{1.5pt}% - \def\pIIe@FAI{0.25}% - \fi - }} +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \begin{macrocode} +\DeclareOption{ltxarrows}{\AtEndOfPackage{\ltxarrows}} +\DeclareOption{pstarrows}{\AtEndOfPackage{\pstarrows}} % \end{macrocode} % % \begin{macro}{\pIIe@debug@comment} @@ -2392,41 +2401,61 @@ % \changes{v0.2t}{2008/05/11}{All lines by \cmd{\@sline} (JT)} % \begin{macrocode} \def\line(#1,#2)#3{% + \begingroup \pIIe@checkslopeargsline{#1}{#2}% \@tempdima=#1pt\relax \@tempdimb=#2pt\relax \@linelen #3\unitlength - \ifdim\@linelen<\z@ \@badlinearg \else \@sline \fi} + \ifdim\@linelen<\z@ \@badlinearg \else + \pIIe@sline + \pIIe@moveto\z@\z@ + \pIIe@lineto\@xdim\@ydim + \pIIe@strokeGraph +% \end{macrocode} +% Simulated bounding box +% \begin{macrocode} + \box\@tempboxa + \fi + \endgroup} % \end{macrocode} % \end{macro} -% -% \begin{macro}{\@sline} -% (The implementation here is different from \cmd{\vector}!) +% \begin{macro}{\pIIe@sline} +% Common code for \cmd{\line} and \cmd{\vector}. +% \changes{v0.3d}{2020/06/13}{Simulated bounding boxes for \cmd{\line} +% and \cmd{\vector} suggested by Donald Arseneau (RN)} +% \begin{macrocode} + \newcommand*\pIIe@sline{% +% \end{macrocode} +% Calculation of the endpoints \cmd{\@xdim}, \cmd{\@ydim} +% (used for \cmd{\line} only). % \begin{macrocode} - \def\@sline{% - \begingroup \ifdim\@tempdima=\z@ \ifdim\@tempdimb<\z@\@linelen-\@linelen\fi \@ydim=\@linelen \@xdim=\z@ \else + \ifdim\@tempdima<\z@\@linelen-\@linelen\fi \ifdim\@tempdimb=\z@ - \ifdim\@tempdima<\z@\@linelen-\@linelen\fi \@xdim=\@linelen \@ydim=\z@ \else - \ifnum\@tempdima<\z@\@linelen-\@linelen\fi \pIIe@divide\@tempdimb\@tempdima\dimen@ \@ydim=\strip@pt\dimen@\@linelen \@xdim=\@linelen \fi \fi - \pIIe@moveto\z@\z@ - \pIIe@lineto\@xdim\@ydim - \pIIe@strokeGraph - \endgroup} +% \end{macrocode} +% Prepare a box that can be used as a bounding box for \cmd{\line} and +% \cmd{\vector} to achieve the same behavior as standard \LaTeX\ outside +% of a picture environment. +% \begin{macrocode} + \@ovxx=\ifnum\@xdim=\z@ \z@\else\@linelen\fi + \@ovyy=\ifnum\@ydim<\z@ \z@\else\@ydim\fi + \@ovdy=\ifnum\@ydim<\z@ -\@ydim\else\z@\fi + \setbox\@tempboxa\hbox{% + \vrule\@height \@ovyy \@depth \@ovdy \@width \z@ + \vrule\@height \z@ \@depth \z@ \@width \@ovxx}} % \end{macrocode} % \end{macro} -% % \subsubsection{Vector} % \label{sec:implementation:vector} % @@ -2450,10 +2479,11 @@ \@tempdima=#1pt\relax \@tempdimb=#2pt\relax \@linelen#3\unitlength \ifdim\@linelen<\z@ \@badlinearg \else + \pIIe@sline + \@linelen#3\unitlength \pIIe@pyth{\@tempdima}{\@tempdimb}\dimen@ - \ifdim\@tempdima=\z@ - \else\ifdim\@tempdimb=\z@ - \else + \ifdim\@tempdima=\z@ \else + \ifdim\@tempdimb=\z@ \else % \end{macrocode} % This calculation is only necessary, if the vector is actually % sloped. @@ -2477,6 +2507,10 @@ % \begin{macrocode} \pIIe@vector \pIIe@fillGraph +% \end{macrocode} +% Simulated bounding box +% \begin{macrocode} + \box\@tempboxa \fi \endgroup} % \end{macrocode} @@ -2492,51 +2526,6 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\pIIe@FAL} -% \begin{macro}{\pIIe@FAW} -% \begin{macro}{\pIIe@CAW} -% \begin{macro}{\pIIe@FAI} -% \changes{v0.1x}{2003/11/27}{Introduce ``inset''. (RN,HjG)} -% \begin{macro}{\pIIe@@firstnum} -% \changes{v0.1x}{2003/11/27}{New ancillary macro (RN,HjG)} -% \begin{macro}{\pIIe@@secondnum} -% \changes{v0.1x}{2003/11/27}{New ancillary macro (RN,HjG)} -% Some macros to parametrize the shape of the vector outline. -% ^^A Should be user-level macros or changeable via key-value interface. -% ^^A (Defered to future version.) -% See Figures~\ref{fig:vector:ltx} and~\ref{fig:vector:pst}. -%\iffalse -% Note that when the \textsf{pstricks} package has been loaded, its -% arrow-drawing parameters will be dynamically evaluated; -% of course, -% this is only useful with the \textsf{pstarrows} package -% option. -% probably\slash most likely not useful with the default -% \textsf{ltxarrows} package option. -% \fi -% \begin{macrocode} - \newcommand*\pIIe@FAL{}\newcommand*\pIIe@FAW{}\newcommand*\pIIe@CAW{} - \newcommand*\pIIe@FAI{} - \newcommand*\pIIe@@firstnum{}\newcommand*\pIIe@@secondnum{} - \iffalse% the pstricks values gives too small arrows. (RN) - \AtBeginDocument{% - \@ifpackageloaded{pstricks}{% - \def\pIIe@FAL{\psk@arrowlength}% - \def\pIIe@FAW{\expandafter\pIIe@@secondnum\psk@arrowsize}% - \def\pIIe@CAW{\expandafter\pIIe@@firstnum\psk@arrowsize}% - \def\pIIe@FAI{\psk@arrowinset}% - \def\pIIe@@firstnum#1 #2 {#1\p@}% - \def\pIIe@@secondnum#1 #2 {#2}% - }{}% - } - \fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} % % \paragraph{\LaTeX\ version} % @@ -3069,6 +3058,7 @@ % % \begin{macro}{\oval} % \begin{macro}{\pIIe@maxovalrad} +% \begin{macro}{\pIIe@oval} % The variant of \cmd{\oval} defined here takes an additional optional % argument, which specifies the maximum radius of the rounded corners % (default = 20\,pt, as given above). @@ -3078,19 +3068,23 @@ % \changes{v0.2n}{2004/04/22}{Moved radius test from \cmd{\pIIe@def@UL} % (RN/HjG)} % \changes{v0.2n}{2004/04/22}{Allow zero diameter (RN/HjG)} +% \changes{v0.3d}{2020/06/13}{Allow spaces after the first optional Argument +% suggested by FMi (RN)} % \begin{macrocode} \newcommand*\pIIe@maxovalrad{} + \newcommand*\pIIe@oval{} + \def\pIIe@oval#1(#2,#3){\@ifnextchar[{\@oval(#2,#3)}{\@oval(#2,#3)[]}} \renewcommand*\oval[1][\maxovalrad]{% \begingroup \pIIe@defaultUL\pIIe@maxovalrad{#1}% \ifdim\pIIe@maxovalrad<\z@ \pIIe@badcircarg \fi % \end{macrocode} % Can't close the group here, since arguments must be parsed. -% (This is done by calling the saved original.) % \begin{macrocode} - \pIIe@oldoval} + \pIIe@oval} % \end{macrocode} % \end{macro} % \end{macro} +% \end{macro} % % \begin{macro}{\@oval} % (This is called in turn by the saved original.) diff --git a/macros/latex/contrib/pict2e/pict2e.pdf b/macros/latex/contrib/pict2e/pict2e.pdf index df33032e04..bcc86e4850 100644 Binary files a/macros/latex/contrib/pict2e/pict2e.pdf and b/macros/latex/contrib/pict2e/pict2e.pdf differ diff --git a/macros/latex/contrib/thuthesis/CHANGELOG.md b/macros/latex/contrib/thuthesis/CHANGELOG.md new file mode 100644 index 0000000000..4ccfabe39f --- /dev/null +++ b/macros/latex/contrib/thuthesis/CHANGELOG.md @@ -0,0 +1,659 @@ +# Changelog + +此处记载了 ThuThesis 中所有值得留意的改动,格式参照 [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)。 + +点击版本号即可在 GitHub 上查看相邻版本间的代码变动。 + +## [Unreleased] + +## [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)。 +- 添加选项 `spine-title`、`spine-author` 控制书脊的内容。 +- 添加选项 `spine-font` 控制书脊的字号。 +- 添加选项 `output` 选择输出格式为打印版或用于提交的电子版(#553)。 + +### Fixed +- 修正书脊的格式。 +- 修复文档中 Changelog 的格式问题。 + +## [v6.1.0] - 2020-06-08 +### Changed +- 在 `translation` 环境中使用 `\bibliography` 改为生成参考文献, + 对应的原文索引改为 `translation-index` 环境(#529)。 +- 附录的图、表不再加入索引。 +- 使用 `threeparttable` 示例表内脚注。 +- 本科生的目录章标题的西文字母和数字默认使用 Arial(#542)。 +- GitHub repo 所有者更改为清华大学 TUNA 协会。 +- 接管 `ctex` 的 `fontset` 选项,允许更灵活的字体配置(#498)。 + +### Fixed +- 本科生附录的调研报告使用英文(#479)。 +- 修正本科生附录的 `algorithm` 和 `listings` 环境的编号格式。 +- 研究生的“使用授权说明”增加一空白页(#504)。 +- 修正 publication 列表行距问题(#507)。 +- 修正研究生目录的行距。 +- 调整本科生封面有辅导教师、联合指导教师时的格式(#522, #537)。 +- 修正本科生封面日期的字体(#532)。 +- 设置三线表横线的默认粗度。 +- 修正文档中关于本科生学科(专业)名称的说明。 +- 允许用户使用文档类选项 `openright`。 +- 修正本科生的“单设一页”格式(#545)。 +- 研究生的正文(main matter)起始于奇数页。 + +### Added +- 允许使用边注。 +- 新增 `amsthm` 支持。 +- 支持单个关键词设置样式。 +- 在 `survey` 和 `translation` 环境中生成独立目录。 +- 添加选项 `toc-chapter-style` 控制本科生的目录章标题的西文字体。 + +## [v6.0.2] - 2020-02-23 +### Fixed +- 修复图表公式目录内容缺失 (#467)。 +- 修复 Github Actions 执行 l3build check 问题。 +- 文本模式使用 `\checkmark`。 + +### Added +- 补充 PDF 元信息:文档标题,语言。 + +### Changed +- 补充“著者-出版年”引用命令使用方法。 +- 使用 `xeCJKfntef` 替换 `CJKfntef`。 + +## [v6.0.1] - 2020-02-03 +### Changed +- 更新文档。 +- 更新 bib 测试用例。 + +### Fixed +- 修复 PDF 目录层级问题 (#457)。 +- 修复 PDF 中章节连接问题 (#453)。 + +## [v6.0.0] - 2020-01-06 +### Added +- 新增 `survey`(调研阅读报告)和 `translation`(书面翻译)环境用于本科生的附录, + 其中的参考文献引用独立于论文正文(#343)。 +- 新增论文语言选项。 +- 增加 `l3build` 测试。 + +### Changed +- 重新设计 `\thusetup` 的接口。 +- 指导教师的姓名和职称用英文逗号分开(#424)。 +- 重新设计封面(题名页)。 +- `\makecover` 拆分为 `\maketitle`、`\copyrightpage`。 +- 中英文摘分别用 `abstract`、`abstract*` 环境生成。 +- 附录使用 `\appendix` 命令开始,不再使用 `appendix` 环境。 +- 修改 `shuji` 为 `spine`。 +- 修改 `acknowledgement` 为 `acknowledgements`。 +- 从 travis 切换到 github actions。 +- 更改日志从 `thuthesis.dtx` 挪到 `CHANGELOG.md`。 +- 整理 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 的中文字体开启伪粗。 +- `\thu@textcircled`: 去掉 `pifootnote` 选项。 +- 移除 cfg 文件。 +- 修正图表标题与文字之间的距离。 +- `\thu@first@titlepage`: 修正博士后封面的格式。 +- 增加 `nomencl` 宏包的支持。 + +## [v5.4.5] - 2018-05-17 +### Changed +- `\normalsize`: 调整公式和正文间距。 + +## [v5.4.4] - 2018-04-22 +### Changed +- 删除 `arialtitle`,所有论文格式都一样。 +- 让目录中的引用不影响正文中引用序号。 +- 参考文献列表的页码使用 hyphen 取代 en dash。 +- 参考文献标号左对齐。 +- 允许连续两个文献引用使用连接号。 + +## [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{}` 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`。 +- 目录中标题和页码都是链接。 +- `\thu@textcircled`: 脚注编号每页允许至多 9 个。 +- 基于 `footmisc` 来设置不同位置 footnote marker 样式。 +- `\tableofcontents`: 用 `\patchcmd` 修改 `\@dottedtocline`。 +- 用 `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` 选项。 +- 固定字体设置,同时改善与 `ctex` 兼容性。 +- 不再将页面尺寸写入 dvi,因为已不支持 dvips, 而该方案会使得在使用 tikzexternalize 时外部 PDF 图片 BBox 不对。 +- 用 `geometry` 简化设置。 +- `\ps@thu@headings`: 利用 `fancyhdr` 设置页眉页脚。 +- 修正定理字样为黑体 (#104)。 +- 本科附录图表编号用-不用.(如图A-1,表A-2)。 +- 用 `\ctexset` 来设置,替换复杂的 `\@startsection`。 +- 修正章节间距问题(#57) +- 硕士博士论文目录只出现到第 3 级标题即可。其他未明确要求。 +- `\tableofcontents`: 修正学位论文中目录里节前缩进(#103) +- `\makecover`: 使用 `pdfpages` 宏包支持本硕博论文授权说明扫描版(#36)。 +- `acknowledgement`: 使用 pdfpages 宏包支持本硕博论文声明扫描版(#36)。 +- `\inlinecite`: 用 `\inlinecite` 替换 `\onlinecite`。为保证兼 容性,`\onlinecite` 会保留。 +- `achievements`: 博士后就不提在学期间了,不合适(#100) +- `achievements`: 让简历部分更符合格式指南和示例文件(#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. +- reset baselinestretch after ctex's change. +- 好几年累积的一些更新,最重要的是切换到 CTeX。 +- v4.7曾经想发布,但是一直没有做,于是就被跳过了,算是造一个段子吧。 +- 增加 noraggedbottom 选项。 +- 添加 nocap 选项,恢复默认标题样式,模板会进一步定制。 +- no need to load amssymb since we use txfonts. +- 在 CJK 模式下用 `CJKspace` 保留中英文间空格。 + +## [v4.7] - 2012-06-12 +### Changed +- 去掉 `hypernat` 依赖,`hyperref` 和 `natbib` 可以很好配合了。 +- 修改本科生页脚间距与样例基本一致。 +- `\ps@thu@headings`: 本科页码用小五号字。 +- 修正本科生作者信息名称。 +- 本科生关键字也用分号分割了。 +- `\thu@first@titlepage`: 硕士中文封面不再需要英文标题。 +- `\thu@first@titlepage`: 本科生题目下划线长度自动适应字数。 +- `\thu@doctor@engcover`: 硕士生新增英文封面。 +- `\makecover`: 硕士论文也需要英文封面。 +- `\thu@makeabstract`: Bachelor sample uses Keywords w/o space `-_-` + +## [v4.6] - 2011-10-22 +### Changed +- 增加博士后文档部分。 +- 使用手册更新。 +- 增加 postdoctor 选项。 +- 增加博士后相关指令。 +- 增加博士后相关配置。 +- `\thu@first@titlepage`: 增加博士后封面。 +- `\makecover`: 博士后报告无授权说明。 +- `resume`: 支持可选参数,自己定义简历章节标题。 + +## [v4.5.2] - 2010-09-19 +### Changed +- 研究生页面边距由 3.2cm 改为 3cm。 +- 本科论文日期具体到日。 +- `\makecover`: 本科封面和授权说明之间不要空白页。 +- `\thu@makeabstract`: 本科论文摘要亦无需右开。 +- `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 年的新样例。 +- `\thu@makeabstract`: 本科生格式中文关键词采用首行缩进且无悬挂缩进。 +- `\thu@makeabstract`: Bachelor English abstract format requires indent and no hang-indent. + +## [v4.4] - 2008-06-18 +### Changed +- 修复网址断字。 +- `\backmatter`: 本科正文后的页码延续前面的阿拉伯数字,不再用罗马数 字。 +- `\backmatter`: 本科取消了所有页眉。 +- 本科论文终于去掉了**公式**二字。 +- 调整段前距为 -20bp 而不是原来的 -24bp。 +- 修改本科生模板的二级节标题为小四而不是半小四。 +- 调整段前距为 -12bp 而不是原来的 -16bp。 +- 调整段前距为 -12bp 而不是原来的 -16bp。 +- `\tableofcontents`: 本科生目录字号改回`\xiaosi[<1.8>]`。 +- `\tableofcontents`: 本科生目录缩进要求不同。 +- `\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`. +- 英文摘要标题要搞特殊化。 +- 博士论文目录只出现到第 3 级标题即可。 +- `\thu@def@term`: 重新定义摘要为环境,long 选项不需要了。 +- 重新定义摘要成为环境。 +- 增强的关键词命令。 +- 去掉配置文件中的 `\hfill`。 +- **内部**密级前面要五角星了。 +- `\thu@first@titlepage`: 重新放置封面表格的提示元素。 +- `\thu@makeabstract`: 研究生关键词不再沉底。 + +## [v3.0] - 2007-05-13 +### Changed +- 不用专门为本科论文生成“**提交**”版本了。 +- 没有了综合论文训练页面,很多本科论文专用命令就消失了。 +- 删除 submit 选项。 +- 本科公式又要取消全文统一编号了。 +- `\tableofcontents`: 缩小目录中标题与页码之间**点**之间的距离。 +- `\makecover`: 本科论文评语取消。 +- `\makecover`: 本科论文授权图片扫描取消。 +- `\makecover`: 本科综合论文训练在电子版中取消。 +- `\thu@makeabstract`: **Key words** but not **Keywords**. What are you doing? +- `acknowledgement`: 本科论文声明部分图片扫描取消。 + +## [v2.6.4] - 2006-10-23 +### Changed +- 增加 `neverdecrease` 选项。 +- `\thu@makeabstract`: **Keywords** but not **Key words**. +- `\listoftables*`: 增加 `\listoffigures*`,`\listoftables*`。 +- `\listofequations*`: 增加 `\listofequations*`。 +- 调整参考文献标签宽度,使得条目增多时仍能对齐。 + +## [v2.6.3] - 2006-07-01 +### Changed +- `\thu@makeabstract`: 为本科正确设置目录及以后的页码。 +- `acknowledgement`: 重画双虚线,自适应页面宽度。 + +## [v2.6.2] - 2006-06-20 +### Changed +- 改正 groupmembers 的拼写错误。 +- 去掉 `paralist` 的 `newitem` 和 `newenum` 选项,因为默认是打开的。 +- `\thu@def@fontsize`: 引入此命令重新定义字号。 +- 根据不同论文格式显示不同公式编号,并自动加入索引。 +- 增加问题和猜想两个数学环境。 +- `\thu@def@term`: 引入 `\thu@def@term` 定义封面命令。 +- `\thu@first@titlepage`: 如果本科生没有辅导教师则不显示。 +- `\thu@makeabstract`: 取消最后一列的空白。 +- `\thu@makeabstract`: 取消 tabular 环境,用 `\hangindent` 实现关键词 悬挂缩进,英文摘要同。 +- `\thu@makeabstract`: 取消最后一列的空白。 +- `\equcaption`: 此命令配合 `amsmath` 命令基本可以满足所有 公式需要。 + +## [v2.6.1] - 2006-06-16 +### Changed +- 取消 `thubib.bst` 中 inbook 类 volume 后的页 码。 + +## [v2.6] - 2006-06-09 +### Changed +- 增加 dvipdfm 选项。 +- 增加 `longtable`。 +- 去除 hyperref 选项,等待全局传递。 +- 脚注改成 1.5 倍行距,漂亮。 +- 增加 `\floatsep`,`\@fptop`,`\@fpsep` 和 `\@fpbot`。 +- `\thu@first@titlepage`: 本科生题目加长,最多 24 个字。 + +## [v2.5.3] - 2006-06-08 +### Changed +- submit 选项的一个笔误。 +- `\backmatter`: 第一章永远右开。 +- 不管 caption 出现在什么位置,`\aboveskip` 总是出现在标题和浮动体之间的距离。 +- 增加对 `longtable` 的处理。 +- `\thu@makeabstract`: `\pagenumber` 会自动设置页码为 1。 +- `\equcaption`: 取消 `\equcaption` 的参数 + +## [v2.5.2] - 2006-06-01 +### Changed +- 更改默认列表距离。 +- 上一个版本忘了把研究生的公式编号排除。 +- `\thu@chapter*`: 定义自己的 `\thu@chapter*`。 +- `\tableofcontents`: 用 `\thu@chapter*` 改写目录命令。 +- `\thu@first@titlepage`: 研究生论文标题中英文用 arial 字体。 +- `\thu@makeabstract`: 在研究生论文中,摘要不出现在目录中,但是要在书签中出现。 +- `acknowledgement`: 研究生致谢右开。 +- `acknowledgement`: 研究生致谢题目是致谢,目录是致谢与声明。 +- `resume`: 研究生的个人介绍要右开。 + +## [v2.5.1] - 2006-05-28 +### Changed +- 如果选项设置了 dvips,但是用 PDFLaTeX 编译,报错。 +- 根据教务处的新要求调整附录部分。 +- 参考文献中杂志文章如果没有卷号,那么页码直接跟在 年份后面,并用句点分割。在 `thubib.bst` 中增加 output.year 函数。 +- 如果没有设置格式选项,报错。 +- submit 只能由本科用。 +- 研究生院目录要 times,而教务处要 arial。 +- 本科 openright,研究生 openany。 +- `\backmatter`: 本科正文之后页码即用罗马数字,研究生不变。 +- `\thu@textcircled`: 脚注编号使用 `\textcircled` 命令,每页允许至多 99 个。 +- 本科公式编号前添加**公式**二字。需要修 `amsmath` 极其深的一个命令。 +- 教务处居然要本科论文公式全文编号! +- 增加 `subfigure` 和 `subtable` 的 caption 配置。 +- 重新定义表格默认字体。 +- 让 `\chapter*` 自动 `\markboth`。 +- `\tableofcontents`: 减小目录项中的导引小点跟页码之间的留白。 +- 硕士封面的冒号前居然有点小距离! +- `\thu@first@titlepage`: 本科封面标题调整微小的空隙。 +- `\thu@first@titlepage`: 本科封面标题第二行的横线上移一点。 +- `\thu@makeabstract`: 教务处又不要正文前的页眉了。 +- `\thu@makeabstract`: 不管是哪种论文格式,摘要都要右开。 +- `\thu@makeabstract`: 研究生封面英文摘要连续。 +- `\listofequations*`: 公式索引项 numwidth 增加。 +- `resume`: 教务处和研究生院非要搞的不一样! + +## [v2.5] - 2006-05-20 +### Changed +- 对本科论文进行大幅度的重写,因为教务处修改了格式要求。 +- 重新整理代码,使其布局更易读。 +- 增加本科论文的提交选项 submit。 +- `\ps@thu@headings`: 本科的奇偶页眉不同。 +- `\ps@thu@headings`: 增加 empty 页面样式。 +- 修正 minipage 中的脚注。 +- 标题上下间距重调,以前没有考虑 `\intextsep` 的影响。 +- 增加索引名称定义。 +- 取消 `titlesec` 宏包,用基本 LaTeX 命令格式化标题。 +- `\tableofcontents`: 取消 `titletoc` 宏包,用 `\dottedtocline` 调整 目录。 +- 院系和专业分别改名用 department 和 major,代替原来 的 affil 和 subject。 +- `\makecover`: 本科论文评语位置调整。 +- `\makecover`: 综合论文训练在授权说明之后。 +- `acknowledgement`: 本科论文要求致谢声明分页,但是研究生的不分。 +- `\listoftables*`: 增加插图、表格和公式索引。 +- `\listoftables*`: 为了让索引中能出现**图 xxx**,不得不修改 LaTeX内部命令 `\@caption`。 +- `\equcaption`: 将公式编号写入临时文件以便生成公式列表。 +- `\listofequations*`: 增加公式索引命令。 +- 参考文献序号靠左,而不是靠右。 +- 不用 `\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)”环境。 +- 压缩 item 之间的距离。 +- `thubib.bst` 文献标题取消自动小写。 +- 中文参考文献取消 In: Proceedings。 +- 英文文参考文献调整 In: editor, Proceedings。 +- 参考文献为学位论文时,加方括号,作者后面为实心点。 +- 中文参考文献作者超过三个加等。 +- 中文参考文献需要在 bib 中指定 `lang="chinese"`。 +- 学位论文不在需要 type 字段。 +- 为摘要等条目增加书签。 +- 章节的编号用黑体,也就是自动打开 `arialtitle` 选项。 +- 添加模板名称命令。 +- 把页面尺寸写入 dvi,避免有的用户通 过 dvips 不指定页面类型而得到古怪的结果。 +- 表格内容为 11 磅。 +- 图表标题左对齐,取消原先漂亮的 hang 模式。 +- `\thu@makeabstract`: It is **Key words**, but not **Key Words**. +- `denotation`: 为主要符号表环境增加一个可选参数,调节符号列的宽度。 +- `acknowledgement`: 调整**致谢**等中间的距离。 +- 参考文献间距调小一点,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. +- Support `openright` and openany. +- Adjust `\hypersetup` to remove color and box. +- Adjust margins again. +- Adjust references formats. +- Redefine frontmatter and mainmatter to fit our case. +- Add assumption environment. +- 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. +- Replace `thubib.bst` with `chinesebst.bst`. +- Merge the modification of `ntheorem`. +- Remove `footmisc` and refine the document. +- Work very hard on the document. +- Add `\checklab` code to reduce “unresolved labels“ warning +- `\ps@thu@headings`: 彻底放弃 fancyhdr,定义自己的样式。 +- 让脚注它悬挂起来,而且中文中用上标,脚注中用正体。 +- `\thu@first@titlepage`: 增加本科部分。 +- `\makecover`: 分成几个小模块来搞,不然这个 macro 太大了,看不过来。 + +## [v2.0e] - 2005-12-18 +### Changed +- `denotation`: 主要符号表定义为一个 list,用起来方便。 + +## [v2.0] - 2005-12-20 +### Changed +- `\ps@thu@headings`: 以前的太乱了,重新整理过清晰多了。 +- `\tableofcontents`: 附录的目录项需要调整一下。以及公式编号方式等等。 +- 增加了封面密级,增加博士封面支持 +- `\thu@first@titlepage`: 封面的培养单位,学科等内容字距自动调整。 +- `acknowledgement`: 将致谢定义为一个环境更合适,里面也不用像以前段首需 要自己缩进。 +- `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/v6.1.2...HEAD +[v6.1.2]: https://github.com/tuna/thuthesis/compare/v6.1.1...v6.1.2 +[v6.1.1]: https://github.com/tuna/thuthesis/compare/v6.1.0...v6.1.1 +[v6.1.0]: https://github.com/tuna/thuthesis/compare/v6.0.2...v6.1.0 +[v6.0.2]: https://github.com/tuna/thuthesis/compare/v6.0.1...v6.0.2 +[v6.0.1]: https://github.com/tuna/thuthesis/compare/v6.0.0...v6.0.1 +[v6.0.0]: https://github.com/tuna/thuthesis/compare/v5.5.2...v6.0.0 +[v5.5.2]: https://github.com/tuna/thuthesis/compare/v5.5.1...v5.5.2 +[v5.5.1]: https://github.com/tuna/thuthesis/compare/v5.5.0...v5.5.1 +[v5.5.0]: https://github.com/tuna/thuthesis/compare/v5.4.5...v5.5.0 +[v5.4.5]: https://github.com/tuna/thuthesis/compare/v5.4.4...v5.4.5 +[v5.4.4]: https://github.com/tuna/thuthesis/compare/v5.4.2...v5.4.4 +[v5.4.2]: https://github.com/tuna/thuthesis/compare/v5.4.1...v5.4.2 +[v5.4.1]: https://github.com/tuna/thuthesis/compare/v5.4.0...v5.4.1 +[v5.4.0]: https://github.com/tuna/thuthesis/compare/v5.3.2...v5.4.0 +[v5.3.2]: https://github.com/tuna/thuthesis/compare/v5.3.1...v5.3.2 +[v5.3.1]: https://github.com/tuna/thuthesis/compare/v5.3.0...v5.3.1 +[v5.3.0]: https://github.com/tuna/thuthesis/compare/v5.2.3...v5.3.0 +[v5.2.3]: https://github.com/tuna/thuthesis/compare/v5.2.2...v5.2.3 +[v5.2.2]: https://github.com/tuna/thuthesis/compare/v5.2.1...v5.2.2 +[v5.2.1]: https://github.com/tuna/thuthesis/compare/v5.2.0...v5.2.1 +[v5.2.0]: https://github.com/tuna/thuthesis/compare/v5.1.0...v5.2.0 +[v5.1.0]: https://github.com/tuna/thuthesis/compare/v5.0.0...v5.1.0 +[v5.0.0]: https://github.com/tuna/thuthesis/compare/v4.8.1...v5.0.0 +[v4.8.1]: https://github.com/tuna/thuthesis/compare/v4.8...v4.8.1 +[v4.8]: https://github.com/tuna/thuthesis/compare/v4.7...v4.8 +[v4.7]: https://github.com/tuna/thuthesis/compare/v4.6...v4.7 +[v4.6]: https://github.com/tuna/thuthesis/compare/v4.5.2...v4.6 +[v4.5.2]: https://github.com/tuna/thuthesis/compare/v4.5.1...v4.5.2 +[v4.5.1]: https://github.com/tuna/thuthesis/compare/v4.5...v4.5.1 +[v4.5]: https://github.com/tuna/thuthesis/compare/v4.4.4...v4.5 +[v4.4.4]: https://github.com/tuna/thuthesis/compare/v4.4.3...v4.4.4 +[v4.4.3]: https://github.com/tuna/thuthesis/compare/v4.4.2...v4.4.3 +[v4.4.2]: https://github.com/tuna/thuthesis/compare/v4.4...v4.4.2 +[v4.4]: https://github.com/tuna/thuthesis/compare/v4.3...v4.4 +[v4.3]: https://github.com/tuna/thuthesis/compare/v4.2...v4.3 +[v4.2]: https://github.com/tuna/thuthesis/compare/v4.0...v4.2 +[v4.0]: https://github.com/tuna/thuthesis/compare/v3.1...v4.0 +[v3.1]: https://github.com/tuna/thuthesis/compare/v3.0...v3.1 +[v3.0]: https://github.com/tuna/thuthesis/compare/v2.6.4...v3.0 +[v2.6.4]: https://github.com/tuna/thuthesis/compare/v2.6.3...v2.6.4 +[v2.6.3]: https://github.com/tuna/thuthesis/compare/v2.6.2...v2.6.3 +[v2.6.2]: https://github.com/tuna/thuthesis/compare/v2.6.1...v2.6.2 +[v2.6.1]: https://github.com/tuna/thuthesis/compare/v2.6...v2.6.1 +[v2.6]: https://github.com/tuna/thuthesis/compare/v2.5.3...v2.6 +[v2.5.3]: https://github.com/tuna/thuthesis/compare/v2.5.2...v2.5.3 +[v2.5.2]: https://github.com/tuna/thuthesis/compare/v2.5.1...v2.5.2 +[v2.5.1]: https://github.com/tuna/thuthesis/compare/v2.5...v2.5.1 +[v2.5]: https://github.com/tuna/thuthesis/compare/v2.4.2...v2.5 +[v2.4.2]: https://github.com/tuna/thuthesis/compare/v2.4.1...v2.4.2 +[v2.4.1]: https://github.com/tuna/thuthesis/compare/v2.4...v2.4.1 +[v2.4]: https://github.com/tuna/thuthesis/compare/v2.3...v2.4 +[v2.3]: https://github.com/tuna/thuthesis/compare/v2.2...v2.3 +[v2.2]: https://github.com/tuna/thuthesis/compare/v2.1...v2.2 +[v2.1]: https://github.com/tuna/thuthesis/compare/v2.0e...v2.1 +[v2.0e]: https://github.com/tuna/thuthesis/compare/v2.0...v2.0e +[v2.0]: https://github.com/tuna/thuthesis/compare/v1.5...v2.0 +[v1.5]: https://github.com/tuna/thuthesis/compare/v1.4rc1...v1.5 +[v1.4rc1]: https://github.com/tuna/thuthesis/compare/v1.4...v1.4rc1 +[v1.4]: https://github.com/tuna/thuthesis/compare/v1.3...v1.4 +[v1.3]: https://github.com/tuna/thuthesis/compare/v1.2...v1.3 +[v1.2]: https://github.com/tuna/thuthesis/compare/v1.1...v1.2 +[v1.1]: https://github.com/tuna/thuthesis/compare/v1.0...v1.1 +[v1.0]: https://github.com/tuna/thuthesis/releases/tag/v1.0 diff --git a/macros/latex/contrib/thuthesis/LICENSE b/macros/latex/contrib/thuthesis/LICENSE new file mode 100644 index 0000000000..2244313901 --- /dev/null +++ b/macros/latex/contrib/thuthesis/LICENSE @@ -0,0 +1,416 @@ +The LaTeX Project Public License +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + +LPPL Version 1.3c 2008-05-04 + +Copyright 1999 2002-2008 LaTeX3 Project + Everyone is allowed to distribute verbatim copies of this + license document, but modification of it is not allowed. + + +PREAMBLE +======== + +The LaTeX Project Public License (LPPL) is the primary license under +which the LaTeX kernel and the base LaTeX packages are distributed. + +You may use this license for any work of which you hold the copyright +and which you wish to distribute. This license may be particularly +suitable if your work is TeX-related (such as a LaTeX package), but +it is written in such a way that you can use it even if your work is +unrelated to TeX. + +The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', +below, gives instructions, examples, and recommendations for authors +who are considering distributing their works under this license. + +This license gives conditions under which a work may be distributed +and modified, as well as conditions under which modified versions of +that work may be distributed. + +We, the LaTeX3 Project, believe that the conditions below give you +the freedom to make and distribute modified versions of your work +that conform with whatever technical specifications you wish while +maintaining the availability, integrity, and reliability of +that work. If you do not see how to achieve your goal while +meeting these conditions, then read the document `cfgguide.tex' +and `modguide.tex' in the base LaTeX distribution for suggestions. + + +DEFINITIONS +=========== + +In this license document the following terms are used: + + `Work' + Any work being distributed under this License. + + `Derived Work' + Any work that under any applicable law is derived from the Work. + + `Modification' + Any procedure that produces a Derived Work under any applicable + law -- for example, the production of a file containing an + original file associated with the Work or a significant portion of + such a file, either verbatim or with modifications and/or + translated into another language. + + `Modify' + To apply any procedure that produces a Derived Work under any + applicable law. + + `Distribution' + Making copies of the Work available from one person to another, in + whole or in part. Distribution includes (but is not limited to) + making any electronic components of the Work accessible by + file transfer protocols such as FTP or HTTP or by shared file + systems such as Sun's Network File System (NFS). + + `Compiled Work' + A version of the Work that has been processed into a form where it + is directly usable on a computer system. This processing may + include using installation facilities provided by the Work, + transformations of the Work, copying of components of the Work, or + other activities. Note that modification of any installation + facilities provided by the Work constitutes modification of the Work. + + `Current Maintainer' + A person or persons nominated as such within the Work. If there is + no such explicit nomination then it is the `Copyright Holder' under + any applicable law. + + `Base Interpreter' + A program or process that is normally needed for running or + interpreting a part or the whole of the Work. + + A Base Interpreter may depend on external components but these + are not considered part of the Base Interpreter provided that each + external component clearly identifies itself whenever it is used + interactively. Unless explicitly specified when applying the + license to the Work, the only applicable Base Interpreter is a + `LaTeX-Format' or in the case of files belonging to the + `LaTeX-format' a program implementing the `TeX language'. + + + +CONDITIONS ON DISTRIBUTION AND MODIFICATION +=========================================== + +1. Activities other than distribution and/or modification of the Work +are not covered by this license; they are outside its scope. In +particular, the act of running the Work is not restricted and no +requirements are made concerning any offers of support for the Work. + +2. You may distribute a complete, unmodified copy of the Work as you +received it. Distribution of only part of the Work is considered +modification of the Work, and no right to distribute such a Derived +Work may be assumed under the terms of this clause. + +3. You may distribute a Compiled Work that has been generated from a +complete, unmodified copy of the Work as distributed under Clause 2 +above, as long as that Compiled Work is distributed in such a way that +the recipients may install the Compiled Work on their system exactly +as it would have been installed if they generated a Compiled Work +directly from the Work. + +4. If you are the Current Maintainer of the Work, you may, without +restriction, modify the Work, thus creating a Derived Work. You may +also distribute the Derived Work without restriction, including +Compiled Works generated from the Derived Work. Derived Works +distributed in this manner by the Current Maintainer are considered to +be updated versions of the Work. + +5. If you are not the Current Maintainer of the Work, you may modify +your copy of the Work, thus creating a Derived Work based on the Work, +and compile this Derived Work, thus creating a Compiled Work based on +the Derived Work. + +6. If you are not the Current Maintainer of the Work, you may +distribute a Derived Work provided the following conditions are met +for every component of the Work unless that component clearly states +in the copyright notice that it is exempt from that condition. Only +the Current Maintainer is allowed to add such statements of exemption +to a component of the Work. + + a. If a component of this Derived Work can be a direct replacement + for a component of the Work when that component is used with the + Base Interpreter, then, wherever this component of the Work + identifies itself to the user when used interactively with that + Base Interpreter, the replacement component of this Derived Work + clearly and unambiguously identifies itself as a modified version + of this component to the user when used interactively with that + Base Interpreter. + + b. Every component of the Derived Work contains prominent notices + detailing the nature of the changes to that component, or a + prominent reference to another file that is distributed as part + of the Derived Work and that contains a complete and accurate log + of the changes. + + c. No information in the Derived Work implies that any persons, + including (but not limited to) the authors of the original version + of the Work, provide any support, including (but not limited to) + the reporting and handling of errors, to recipients of the + Derived Work unless those persons have stated explicitly that + they do provide such support for the Derived Work. + + d. You distribute at least one of the following with the Derived Work: + + 1. A complete, unmodified copy of the Work; + if your distribution of a modified component is made by + offering access to copy the modified component from a + designated place, then offering equivalent access to copy + the Work from the same or some similar place meets this + condition, even though third parties are not compelled to + copy the Work along with the modified component; + + 2. Information that is sufficient to obtain a complete, + unmodified copy of the Work. + +7. If you are not the Current Maintainer of the Work, you may +distribute a Compiled Work generated from a Derived Work, as long as +the Derived Work is distributed to all recipients of the Compiled +Work, and as long as the conditions of Clause 6, above, are met with +regard to the Derived Work. + +8. The conditions above are not intended to prohibit, and hence do not +apply to, the modification, by any method, of any component so that it +becomes identical to an updated version of that component of the Work as +it is distributed by the Current Maintainer under Clause 4, above. + +9. Distribution of the Work or any Derived Work in an alternative +format, where the Work or that Derived Work (in whole or in part) is +then produced by applying some process to that format, does not relax or +nullify any sections of this license as they pertain to the results of +applying that process. + +10. a. A Derived Work may be distributed under a different license + provided that license itself honors the conditions listed in + Clause 6 above, in regard to the Work, though it does not have + to honor the rest of the conditions in this license. + + b. If a Derived Work is distributed under a different license, that + Derived Work must provide sufficient documentation as part of + itself to allow each recipient of that Derived Work to honor the + restrictions in Clause 6 above, concerning changes from the Work. + +11. This license places no restrictions on works that are unrelated to +the Work, nor does this license place any restrictions on aggregating +such works with the Work by any means. + +12. Nothing in this license is intended to, or may be used to, prevent +complete compliance by all parties with all applicable laws. + + +NO WARRANTY +=========== + +There is no warranty for the Work. Except when otherwise stated in +writing, the Copyright Holder provides the Work `as is', without +warranty of any kind, either expressed or implied, including, but not +limited to, the implied warranties of merchantability and fitness for a +particular purpose. The entire risk as to the quality and performance +of the Work is with you. Should the Work prove defective, you assume +the cost of all necessary servicing, repair, or correction. + +In no event unless required by applicable law or agreed to in writing +will The Copyright Holder, or any author named in the components of the +Work, or any other party who may distribute and/or modify the Work as +permitted above, be liable to you for damages, including any general, +special, incidental or consequential damages arising out of any use of +the Work or out of inability to use the Work (including, but not limited +to, loss of data, data being rendered inaccurate, or losses sustained by +anyone as a result of any failure of the Work to operate with any other +programs), even if the Copyright Holder or said author or said other +party has been advised of the possibility of such damages. + + +MAINTENANCE OF THE WORK +======================= + +The Work has the status `author-maintained' if the Copyright Holder +explicitly and prominently states near the primary copyright notice in +the Work that the Work can only be maintained by the Copyright Holder +or simply that it is `author-maintained'. + +The Work has the status `maintained' if there is a Current Maintainer +who has indicated in the Work that they are willing to receive error +reports for the Work (for example, by supplying a valid e-mail +address). It is not required for the Current Maintainer to acknowledge +or act upon these error reports. + +The Work changes from status `maintained' to `unmaintained' if there +is no Current Maintainer, or the person stated to be Current +Maintainer of the work cannot be reached through the indicated means +of communication for a period of six months, and there are no other +significant signs of active maintenance. + +You can become the Current Maintainer of the Work by agreement with +any existing Current Maintainer to take over this role. + +If the Work is unmaintained, you can become the Current Maintainer of +the Work through the following steps: + + 1. Make a reasonable attempt to trace the Current Maintainer (and + the Copyright Holder, if the two differ) through the means of + an Internet or similar search. + + 2. If this search is successful, then enquire whether the Work + is still maintained. + + a. If it is being maintained, then ask the Current Maintainer + to update their communication data within one month. + + b. If the search is unsuccessful or no action to resume active + maintenance is taken by the Current Maintainer, then announce + within the pertinent community your intention to take over + maintenance. (If the Work is a LaTeX work, this could be + done, for example, by posting to comp.text.tex.) + + 3a. If the Current Maintainer is reachable and agrees to pass + maintenance of the Work to you, then this takes effect + immediately upon announcement. + + b. If the Current Maintainer is not reachable and the Copyright + Holder agrees that maintenance of the Work be passed to you, + then this takes effect immediately upon announcement. + + 4. If you make an `intention announcement' as described in 2b. above + and after three months your intention is challenged neither by + the Current Maintainer nor by the Copyright Holder nor by other + people, then you may arrange for the Work to be changed so as + to name you as the (new) Current Maintainer. + + 5. If the previously unreachable Current Maintainer becomes + reachable once more within three months of a change completed + under the terms of 3b) or 4), then that Current Maintainer must + become or remain the Current Maintainer upon request provided + they then update their communication data within one month. + +A change in the Current Maintainer does not, of itself, alter the fact +that the Work is distributed under the LPPL license. + +If you become the Current Maintainer of the Work, you should +immediately provide, within the Work, a prominent and unambiguous +statement of your status as Current Maintainer. You should also +announce your new status to the same pertinent community as +in 2b) above. + + +WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE +====================================================== + +This section contains important instructions, examples, and +recommendations for authors who are considering distributing their +works under this license. These authors are addressed as `you' in +this section. + +Choosing This License or Another License +---------------------------------------- + +If for any part of your work you want or need to use *distribution* +conditions that differ significantly from those in this license, then +do not refer to this license anywhere in your work but, instead, +distribute your work under a different license. You may use the text +of this license as a model for your own license, but your license +should not refer to the LPPL or otherwise give the impression that +your work is distributed under the LPPL. + +The document `modguide.tex' in the base LaTeX distribution explains +the motivation behind the conditions of this license. It explains, +for example, why distributing LaTeX under the GNU General Public +License (GPL) was considered inappropriate. Even if your work is +unrelated to LaTeX, the discussion in `modguide.tex' may still be +relevant, and authors intending to distribute their works under any +license are encouraged to read it. + +A Recommendation on Modification Without Distribution +----------------------------------------------------- + +It is wise never to modify a component of the Work, even for your own +personal use, without also meeting the above conditions for +distributing the modified component. While you might intend that such +modifications will never be distributed, often this will happen by +accident -- you may forget that you have modified that component; or +it may not occur to you when allowing others to access the modified +version that you are thus distributing it and violating the conditions +of this license in ways that could have legal implications and, worse, +cause problems for the community. It is therefore usually in your +best interest to keep your copy of the Work identical with the public +one. Many works provide ways to control the behavior of that work +without altering any of its licensed components. + +How to Use This License +----------------------- + +To use this license, place in each of the components of your work both +an explicit copyright notice including your name and the year the work +was authored and/or last substantially modified. Include also a +statement that the distribution and/or modification of that +component is constrained by the conditions in this license. + +Here is an example of such a notice and statement: + + %% pig.dtx + %% Copyright 2005 M. Y. Name + % + % This work may be distributed and/or modified under the + % conditions of the LaTeX Project Public License, either version 1.3 + % of this license or (at your option) any later version. + % The latest version of this license is in + % http://www.latex-project.org/lppl.txt + % and version 1.3 or later is part of all distributions of LaTeX + % version 2005/12/01 or later. + % + % This work has the LPPL maintenance status `maintained'. + % + % The Current Maintainer of this work is M. Y. Name. + % + % This work consists of the files pig.dtx and pig.ins + % and the derived file pig.sty. + +Given such a notice and statement in a file, the conditions +given in this license document would apply, with the `Work' referring +to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being +generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' +referring to any `LaTeX-Format', and both `Copyright Holder' and +`Current Maintainer' referring to the person `M. Y. Name'. + +If you do not want the Maintenance section of LPPL to apply to your +Work, change `maintained' above into `author-maintained'. +However, we recommend that you use `maintained', as the Maintenance +section was added in order to ensure that your Work remains useful to +the community even when you can no longer maintain and support it +yourself. + +Derived Works That Are Not Replacements +--------------------------------------- + +Several clauses of the LPPL specify means to provide reliability and +stability for the user community. They therefore concern themselves +with the case that a Derived Work is intended to be used as a +(compatible or incompatible) replacement of the original Work. If +this is not the case (e.g., if a few lines of code are reused for a +completely different task), then clauses 6b and 6d shall not apply. + + +Important Recommendations +------------------------- + + Defining What Constitutes the Work + + The LPPL requires that distributions of the Work contain all the + files of the Work. It is therefore important that you provide a + way for the licensee to determine which files constitute the Work. + This could, for example, be achieved by explicitly listing all the + files of the Work near the copyright notice of each file or by + using a line such as: + + % This work consists of all files listed in manifest.txt. + + in that place. In the absence of an unequivocal list it might be + impossible for the licensee to determine what is considered by you + to comprise the Work and, in such a case, the licensee would be + entitled to make reasonable conjectures as to which files comprise + the Work. + diff --git a/macros/latex/contrib/thuthesis/Makefile b/macros/latex/contrib/thuthesis/Makefile index 5500053e5f..1b75fed140 100644 --- a/macros/latex/contrib/thuthesis/Makefile +++ b/macros/latex/contrib/thuthesis/Makefile @@ -82,4 +82,7 @@ else endif dist: check all-dev + # use l3build for CTAN release (zip with .tds.zip) + l3build ctan --config build-ctan + # use gulp for GitHub release (zip with generated file) $(NPM) run build -- --version=$(version) diff --git a/macros/latex/contrib/thuthesis/figures/scan-auth.pdf b/macros/latex/contrib/thuthesis/figures/scan-auth.pdf deleted file mode 100644 index 9d5c5a5665..0000000000 Binary files a/macros/latex/contrib/thuthesis/figures/scan-auth.pdf and /dev/null differ diff --git a/macros/latex/contrib/thuthesis/figures/scan-copyright.pdf b/macros/latex/contrib/thuthesis/figures/scan-copyright.pdf new file mode 100644 index 0000000000..9d5c5a5665 Binary files /dev/null and b/macros/latex/contrib/thuthesis/figures/scan-copyright.pdf differ diff --git a/macros/latex/contrib/thuthesis/figures/scan-statement.pdf b/macros/latex/contrib/thuthesis/figures/scan-statement.pdf index 8b4933afad..25e1494d7a 100644 Binary files a/macros/latex/contrib/thuthesis/figures/scan-statement.pdf and b/macros/latex/contrib/thuthesis/figures/scan-statement.pdf differ diff --git a/macros/latex/contrib/thuthesis/latexmkrc b/macros/latex/contrib/thuthesis/latexmkrc index d5134325de..b924b9d8b6 100644 --- a/macros/latex/contrib/thuthesis/latexmkrc +++ b/macros/latex/contrib/thuthesis/latexmkrc @@ -10,11 +10,6 @@ $bibtex_use = 1.5; $clean_ext = "hd loe ptc synctex.gz thm xdv"; $makeindex = "makeindex -s gind.ist %O -o %D %S"; -add_cus_dep('glo', 'gls', 0, 'glo2gls'); -sub glo2gls { - system("makeindex -s gglo.ist -o \"$_[0].gls\" \"$_[0].glo\""); -} -push @generated_exts, 'glo', 'gls'; add_cus_dep('nlo', 'nls', 0, 'nlo2nls'); sub nlo2nls { diff --git a/macros/latex/contrib/thuthesis/spine.pdf b/macros/latex/contrib/thuthesis/spine.pdf index ce40eba7d1..dabd941d2c 100644 Binary files a/macros/latex/contrib/thuthesis/spine.pdf and b/macros/latex/contrib/thuthesis/spine.pdf differ diff --git a/macros/latex/contrib/thuthesis/thusetup.tex b/macros/latex/contrib/thuthesis/thusetup.tex index 3da519449b..c1545ad811 100644 --- a/macros/latex/contrib/thuthesis/thusetup.tex +++ b/macros/latex/contrib/thuthesis/thusetup.tex @@ -85,10 +85,16 @@ % % date = {2019-07-07}, % - % 是否在中文封面后的空白页生成书脊 + % 是否在中文封面后的空白页生成书脊(默认 false) % include-spine = false, % + % 生成的声明页是否要插入页码(默认 false) + % 仅在需要进行电子签名时,才需要打开这一选项 + % 插入的扫描声明页总是会有页码,不受这一选项影响 + % + statement-page-number = false, + % % 密级和年限 % 秘密, 机密, 绝密 % diff --git a/macros/latex/contrib/thuthesis/thuthesis-example.pdf b/macros/latex/contrib/thuthesis/thuthesis-example.pdf index b0bfa584a5..5fff934faf 100644 Binary files a/macros/latex/contrib/thuthesis/thuthesis-example.pdf and b/macros/latex/contrib/thuthesis/thuthesis-example.pdf differ diff --git a/macros/latex/contrib/thuthesis/thuthesis-example.tex b/macros/latex/contrib/thuthesis/thuthesis-example.tex index 93113b7a6a..24d38279d7 100644 --- a/macros/latex/contrib/thuthesis/thuthesis-example.tex +++ b/macros/latex/contrib/thuthesis/thuthesis-example.tex @@ -20,8 +20,8 @@ % 使用授权的说明 \copyrightpage -% 将签字扫描后授权文件 scan-auth.pdf 替换原始页面 -% \copyrightpage[scan-auth.pdf] +% 将签字扫描后授权文件 scan-copyright.pdf 替换原始页面 +% \copyrightpage[scan-copyright.pdf] \frontmatter \input{data/abstract.tex} @@ -57,8 +57,8 @@ % 声明 \statement -% 将签字扫描后的声明n'g statement.pdf 替换原始页面 -% \copyrightpage[statement.pdf] +% 将签字扫描后的声明文件 scan-statement.pdf 替换原始页面 +% \statement[scan-statement.pdf] % 附录 \appendix @@ -69,7 +69,7 @@ % 个人简历 \input{data/resume} -% 本科生的综合论文训练记录表 -% \includepdf[pages=-]{scan-record.pdf} +% 本科生的综合论文训练记录表(扫描版) +% \record{scan-record.pdf} \end{document} diff --git a/macros/latex/contrib/thuthesis/thuthesis.dtx b/macros/latex/contrib/thuthesis/thuthesis.dtx index 6d7d046b56..fe1a16b6fa 100644 --- a/macros/latex/contrib/thuthesis/thuthesis.dtx +++ b/macros/latex/contrib/thuthesis/thuthesis.dtx @@ -17,7 +17,7 @@ % % \iffalse %<*driver> -\ProvidesFile{thuthesis.dtx}[2020/06/12 6.1.1 Tsinghua University Thesis Template] +\ProvidesFile{thuthesis.dtx}[2020/06/14 6.1.2 Tsinghua University Thesis Template] \documentclass{ltxdoc} \usepackage{dtx-style} @@ -268,7 +268,6 @@ % \begin{shell} % $ xelatex -shell-escape thuthesis.dtx % $ makeindex -s gind.ist -o thuthesis.ind thuthesis.idx -% $ makeindex -s gglo.ist -o thuthesis.gls thuthesis.glo % $ xelatex -shell-escape thuthesis.dtx % $ xelatex -shell-escape thuthesis.dtx # 生成说明文档 thuthesis.pdf % \end{shell} @@ -395,7 +394,8 @@ % 选择输出的格式是打印版还是电子版(用于提交),可选:\option{print}(默认)、\option{electronic}。 % 一些院系要求提交的电子版不含空白页,但是这对打印并不友好, % 比如正文第一页可能会在左侧;以及一些部分需要单面打印,需要插入空白页。 -% 注意在不同选项下,生成的\textbf{声明页码很可能不同},需要打印签字并扫描后插入的用户请特别关注这一情况。 +% 注意在不同选项下,生成的声明页码很可能不同。为了避免页码错误, +% \thuthesis{}将会在插入扫描的 PDF 文件时自动生成页码,因此\textbf{扫描声明页时请移除底部的页码},以防重叠。 % % \begin{latex} % \thusetup{ @@ -578,8 +578,8 @@ % 生成授权说明。用法:\cs{copyrightpage}\oarg{file}。 % 可选参数为扫描得到的 PDF 文件名,例如: % \begin{latex} -% % 将签字扫描后授权文件 scan-auth.pdf 替换原始页面 -% \copyrightpage[scan-auth.pdf] +% % 将签字扫描后授权文件 scan-copyright.pdf 替换原始页面 +% \copyrightpage[scan-copyright.pdf] % \end{latex} % % \subsubsection{摘要} @@ -877,6 +877,18 @@ % \statement[scan-statement.pdf] % \end{latex} % +% 由于打印版和电子版有空白页的差别,声明的页码可能不同。所以编译声明页时默认不加页码, +% 在签字后插入扫描页时再补上页码,防止页码冲突。 +% +% \DescribeOption{statement-page-number} +% 如果需要编译时也加页码(如直接对电子版进行签名而不是插入扫描页),可以使用在 \cs{statement} 前设置 +% \begin{latex} +% \thusetup{ +% statement-page-number = true, +% } +% \end{latex} +% 注意,插入扫描页总是会加页码,不受该选项控制。 +% % \subsubsection{附录} % % 附录由 \cs{appendix} 命令开启,然后像正文一样书写。 @@ -1001,6 +1013,15 @@ % % 具体用法请参看示例文档 \file{data/resume.tex}。 % +% \subsubsection{综合论文训练记录表} +% \DescribeMacro{\record} +% 本科生需要在最后附上综合论文训练记录表,可以用如下命令: +% +% \begin{latex} +% \record{scan-record.pdf} +% \end{latex} +% +% % \subsection{书脊} % \DescribeMacro{\spine} % \DescribeOption{spine-font} @@ -1061,7 +1082,7 @@ % \begin{macrocode} %\NeedsTeXFormat{LaTeX2e}[2017/04/15] %\ProvidesClass{thuthesis} -%[2020/06/12 6.1.1 Tsinghua University Thesis Template] +%[2020/06/14 6.1.2 Tsinghua University Thesis Template] % \end{macrocode} % % 报错 @@ -1095,7 +1116,7 @@ %<*cls> \hyphenation{Thu-Thesis} \def\thuthesis{ThuThesis} -\def\version{6.1.1} +\def\version{6.1.2} \RequirePackage{kvdefinekeys} \RequirePackage{kvsetkeys} \RequirePackage{kvoptions} @@ -1570,7 +1591,7 @@ \ifodd\c@page \else \thispagestyle{empty}% - \hbox{} + \hbox{}% \newpage \if@twocolumn \hbox{}\newpage @@ -1589,11 +1610,6 @@ % \begin{macrocode} \renewcommand\frontmatter{% \cleardoublepage - \ifthu@degree@bachelor - \pagestyle{thu@plain} - \else - \pagestyle{thu@headings} - \fi \@mainmatterfalse \pagenumbering{Roman}% \let\@tabular\thu@tabular @@ -1601,10 +1617,14 @@ \renewcommand\mainmatter{% \cleardoublepage \@mainmattertrue - \pagenumbering{arabic} - \ifthu@degree@bachelor\pagestyle{thu@plain}\else\pagestyle{thu@headings}\fi} + \pagenumbering{arabic}% +} \renewcommand\backmatter{% - \if@openright\cleardoublepage\else\clearpage\fi + \if@openright + \cleardoublepage + \else + \clearpage + \fi \@mainmattertrue} % \end{macrocode} % \end{macro} @@ -2281,38 +2301,57 @@ % \subsubsection{页眉页脚} % \label{sec:headerfooter} % +% \pkg{fancyhdr} 定义页眉页脚很方便,但是有一个非常隐蔽的坑。 +% 第一次调用 \pkg{fancyhdr} 定义的样式时会修改 \cs{chaptermark}, +% 这会导致页眉信息错误(多余章号并且英文大写)。 +% 这是因为在 \cs{ps@fancy} 中对 \cs{chaptermark} 进行重定义, +% 所以我们先调用 \cs{ps@fancy},再修改 \cs{chaptermark}。 +% \begin{macrocode} +\pagestyle{fancy} +% \end{macrocode} +% % 定义页眉和页脚。 -% \begin{macro}{\ps@thu@empty} -% \begin{macro}{\ps@thu@plain} -% \begin{macro}{\ps@thu@headings} -% 定义三种页眉页脚格式: -% \begin{itemize} -% \item \texttt{thu@empty}:页眉页脚都没有 -% \item \texttt{thu@plain}:只显示页脚的页码。\cs{chapter} 自动调用 -% \cs{thispagestyle\{thu@plain\}}。 -% \item \texttt{thu@headings}:页眉页脚同时显示 -% \end{itemize} +% 研究生要求: +% 页眉宋体五号字,宋体五号字居中书写; +% 页码五号 Times New Roman 体。 +% +% 本科生要求: +% 页眉:无; +% 页码:位于页面底端,居中书写。 +% +% 本科外文专业要求页码字号 12pt。 +% \begin{macrocode} +\fancypagestyle{plain}{% + \fancyhf{}% + \renewcommand\footrulewidth{0pt}% + \ifthu@degree@bachelor + \renewcommand\headrulewidth{0pt}% + \fancyfoot[C]{\xiaowu\thepage}% + \let\@mkboth\@gobbletwo + \else + \renewcommand\headrulewidth{0.75bp}% + \fancyhead[C]{\wuhao\leftmark}% + \fancyfoot[C]{\wuhao\thepage}% + \let\@mkboth\markboth + \fi + \def\chaptermark##1{% + \markboth{\CTEXifname{\CTEXthechapter\hskip\ccwd}{}##1}{}% + }% +} +\pagestyle{plain} +% \end{macrocode} +% +% 用于声明页,不含页脚。 % \begin{macrocode} -\fancypagestyle{thu@empty}{% - \fancyhf{} - \renewcommand{\headrulewidth}{0pt} - \renewcommand{\footrulewidth}{0pt}} -\fancypagestyle{thu@plain}{% - \fancyhead{} - \fancyfoot[C]{\xiaowu\thepage} - \renewcommand{\headrulewidth}{0pt} - \renewcommand{\footrulewidth}{0pt}} -\fancypagestyle{thu@headings}{% - \fancyhead{} - \fancyhead[C]{\wuhao\normalfont\leftmark} - \fancyfoot{} - \fancyfoot[C]{\wuhao\thepage} - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0pt}} +\fancypagestyle{nofooter}{% + \fancyfoot{}% +} +% \end{macrocode} +% +% \cs{chapter} 会调用特殊的 page style。 +% \begin{macrocode} +\ctexset{chapter/pagestyle = plain} % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} % % % \subsubsection{段落} @@ -2611,35 +2650,6 @@ \fi % \end{macrocode} % -% \pkg{fancyhdr} 定义页眉页脚很方便,但是有一个非常隐蔽的坑。通过 \pkg{fancyhdr} -% 定义的样式在第一次被调用时会修改 \cs{chaptermark},这会导致页眉信息错误(多余 -% 章号并且英文大写)。这是因为在原始的 \file{book.cls} 中定义如下(大意): -% \begin{latex} -% \newcommand\chaptername{Chapter} -% \newcommand\@chapapp{\chaptername} -% \def\chaptermark#1{ -% \markboth{\MakeUppercase{\@chapapp\ \thechapter}}{}} -% \end{latex} -% 很显然这个 \cs{\@chapapp} 不适合中文,因此我们使用\cs{CTEXthechapter}( -% 如,“第 x 章”),同时会将 \cs{MakeUppercase} 去掉。也就是说我们会做如下动作: -% \begin{latex} -% \renewcommand{\chaptermark}[1]{\@mkboth{\CTEXthechapter\hskip\ccwd#1}{}} -% \end{latex} -% 但,\pkg{fancyhdr} 不知何故在 \cs{ps@fancy} 中对 \cs{chaptermark} 进行重定义 -% (其实一模一样),而这个 \cs{ps@fancy} 会在 \cs{fancypagestyle} 中使用,如下: -% \begin{latex} -% \newcommand{\fancypagestyle}[2]{% -% \@namedef{ps@#1}{\let\fancy@gbl\relax#2\relax\ps@fancy}} -% \end{latex} -% 这样的话,\cs{ps@fancy} 会在 \pkg{fancyhdr} 定义的任何样式首次样被激活时调用,从 -% 而覆盖我们的 \cs{chaptermark} 定义(后续样式再激活不会重复覆盖)。所以我们采用如下 -% 方法解决: -% \begin{macrocode} -\AtBeginDocument{% - \pagestyle{thu@empty} - \renewcommand{\chaptermark}[1]{\@mkboth{\CTEXthechapter\hskip\ccwd#1}{}}} -% \end{macrocode} -% % 各级标题格式设置。 % \begin{description} % \item[chapter] 章序号与章名之间空一个汉字符 黑体三号字,居中书写,单倍行距,段 @@ -2669,7 +2679,6 @@ \ctexset{% chapter={ afterindent=true, - pagestyle={\ifthu@degree@bachelor thu@plain\else thu@headings\fi}, beforeskip={\ifthu@degree@bachelor 15bp\else 9bp\fi}, aftername=\hskip\ccwd, afterskip={\ifthu@degree@bachelor 20bp\else 24bp\fi}, @@ -3068,7 +3077,6 @@ % \begin{macrocode} \renewcommand\maketitle{% \cleardoublepage - \pagestyle{thu@empty}% \pagenumbering{Alph}% \thu@pdfbookmark{-1}{\thu@title}% \thu@titlepage @@ -3128,6 +3136,7 @@ bottom = 6cm, hmargin = 3.5cm, }% + \thispagestyle{empty}% \null\vskip 0.2cm% \begingroup \centering @@ -3156,6 +3165,7 @@ bottom = 6cm, hmargin = 3.5cm, }% + \thispagestyle{empty}% \null\vskip 0.45cm% \begingroup \centering @@ -3315,6 +3325,7 @@ bottom = 5cm, hmargin = 3.6cm, }% + \thispagestyle{empty}% \ifthu@degree@type@academic \thu@titlepage@en@graduate@academic \else @@ -3435,6 +3446,7 @@ vmargin = 2.54cm, hmargin = 3.17cm, }% + \thispagestyle{empty}% \null\vskip 0.44cm% \begingroup \centering @@ -3500,6 +3512,7 @@ % \myentry{博士后封面} % \begin{macrocode} \newcommand\thu@cover@postdoc{% + \thispagestyle{empty}% \begin{center}% \renewcommand\ULthickness{0.7pt}% \vspace*{0.35cm}% @@ -3542,6 +3555,7 @@ % \myentry{博士后题名页} % \begin{macrocode} \newcommand\thu@titlepage@postdoc{% + \thispagestyle{empty}% \begin{center}% \vspace*{1.5cm}% \parbox[t][3cm][c]{\textwidth}{% @@ -3604,6 +3618,7 @@ \newcommand\copyrightpage[1][]{% \ifthu@degree@postdoc\relax\else \cleardoublepage + \thispagestyle{empty}% \thu@pdfbookmark{0}{\thu@authorization@title}% \def\thu@@tmp{#1} \ifx\thu@@tmp\@empty @@ -3618,6 +3633,7 @@ \end{list}% \fi% \else + \thu@phantomsection \includepdf{#1}% \fi \fi @@ -3777,7 +3793,7 @@ % \label{sec:ackanddeclare} % % \begin{environment}{acknowledgements} -% 支持扫描文件替换。 +% 定义致谢环境 % \begin{macrocode} \newcommand\thu@statement@name{声\hspace{\ccwd}明} \newcommand{\thu@statement@text}{本人郑重声明:所呈交的学位论文,是本人在导师指导下 @@ -3802,8 +3818,20 @@ } % \end{macrocode} % -% 声明部分 +% \end{environment} +% \begin{environment}{statement} +% 声明部分(支持扫描文件替换) % \begin{macrocode} +\thu@define@key{ + statement-page-number = { + name = statement@page@number, + choices = { + false, + true, + }, + default = false, + }, +} \newcommand\statement[1][]{% \ifthu@degree@bachelor \cleardoublepage @@ -3811,6 +3839,9 @@ \def\thu@@tmp{#1}% \ifx\thu@@tmp\@empty \thu@chapter*{\thu@statement@name}% + \ifthu@statement@page@number@false + \thispagestyle{nofooter}% + \fi \thu@statement@text\par \ifthu@degree@graduate \vskip 2cm% @@ -3820,7 +3851,8 @@ {\hfill\thu@signature\thu@underline[2.5cm]\relax \thu@backdate\thu@underline[2.5cm]\relax}% \else - \includepdf[pagecommand={\thispagestyle{thu@empty}% + \includepdf[pagecommand={% + \thu@phantomsection \addcontentsline{toc}{chapter}{\thu@statement@name}% }]{#1}% \fi @@ -4053,7 +4085,7 @@ \g@addto@macro\appendix{% \thusetup{ toc-depth = 0, - } + }% } % \end{macrocode} % @@ -4234,6 +4266,21 @@ % \end{macrocode} % \end{macro} % +% \subsection{综合论文训练记录表} +% +% \begin{macro}{\record} +% (本科生专用)插入综合论文训练记录表的 PDF 版本,并加入书签。 +% +% \begin{macrocode} +\newcommand{\record}[1]{% + \clearpage + \thu@pdfbookmark{0}{综合论文训练记录表}% + \includepdf[pages=-]{#1}% +} +% \end{macrocode} +% +% \end{macro} +% % \subsection{其他宏包的设置} % % 这些宏包并非格式要求,但是为了方便同学们使用,在这里进行简单设置。 diff --git a/macros/latex/contrib/thuthesis/thuthesis.pdf b/macros/latex/contrib/thuthesis/thuthesis.pdf index 919eff6aa3..1891336779 100644 Binary files a/macros/latex/contrib/thuthesis/thuthesis.pdf and b/macros/latex/contrib/thuthesis/thuthesis.pdf differ -- cgit v1.2.3