diff options
author | Karl Berry <karl@freefriends.org> | 2020-10-14 21:43:48 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-10-14 21:43:48 +0000 |
commit | d9deede12964dba7eb0bc52e805ceadbd9e22d52 (patch) | |
tree | 37f2ab796306654983db964543939f09c752a728 /Master/texmf-dist/tex | |
parent | 96017976c095713d2013168eeb9d3c2ad8c1c7dc (diff) |
thuthesis (14oct20)
git-svn-id: svn://tug.org/texlive/trunk@56659 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls | 539 |
1 files changed, 357 insertions, 182 deletions
diff --git a/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls b/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls index 0c9a916bb9d..ea7170ad6d1 100644 --- a/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls +++ b/Master/texmf-dist/tex/latex/thuthesis/thuthesis.cls @@ -23,7 +23,7 @@ %% \NeedsTeXFormat{LaTeX2e}[2017/04/15] \ProvidesClass{thuthesis} -[2020/09/09 7.0.0 Tsinghua University Thesis Template] +[2020/10/14 7.1.0 Tsinghua University Thesis Template] \newcommand\thu@error[1]{% \ClassError{thuthesis}{#1}{}% } @@ -33,6 +33,15 @@ \newcommand\thu@patch@error[1]{% \thu@error{Failed to patch command \protect#1}% } +\newcommand\thu@deprecate[2]{% + \def\thu@@tmp{#2}% + \thu@warning{% + The #1 is deprecated% + \ifx\thu@@tmp\@empty\else + . Use #2 instead% + \fi + }% +} \@ifl@t@r\fmtversion{2017/04/15}{}{ \thu@error{% TeX Live 2017 or later version is required to compile this document% @@ -47,7 +56,7 @@ } \hyphenation{Thu-Thesis} \def\thuthesis{ThuThesis} -\def\version{7.0.0} +\def\version{7.1.0} \RequirePackage{kvdefinekeys} \RequirePackage{kvsetkeys} \RequirePackage{kvoptions} @@ -351,6 +360,7 @@ \clearpage \fi \@mainmatterfalse + \thusetup{toc-depth = 0}% } \ifthu@fontset@mac \thusetup{ @@ -601,7 +611,7 @@ \fi \fi \newcommand\thu@load@cjk@font@windows{% - \xeCJKsetup{EmboldenFactor=2} + \xeCJKsetup{EmboldenFactor=3}% \setCJKmainfont{SimSun}[ AutoFakeBold = true, ItalicFont = KaiTi, @@ -637,7 +647,6 @@ UprightFont = * Light, BoldFont = * Bold, ]% - \xeCJKsetwidth{‘’“”}{1em}% } \newcommand\thu@load@cjk@font@noto{% \setCJKmainfont{Noto Serif CJK SC}[ @@ -714,10 +723,44 @@ \thu@option@hook{cjk-font}{\thu@load@cjk@font} \renewcommand\normalsize{% \@setfontsize\normalsize{12bp}{20bp}% - \abovedisplayskip=12bp \@plus 2bp \@minus 2bp - \abovedisplayshortskip=12bp \@plus 2bp \@minus 2bp - \belowdisplayskip=\abovedisplayskip - \belowdisplayshortskip=\abovedisplayshortskip} + \abovedisplayskip 6bp% + \abovedisplayshortskip 6bp% + \belowdisplayshortskip 6bp% + \belowdisplayskip \abovedisplayskip +} +\normalsize +\ifx\MakeRobust\@undefined \else + \MakeRobust\normalsize +\fi +\DeclareRobustCommand\small{% + \@setfontsize\small{10.5bp}{17.5bp}% + \abovedisplayskip 6bp% + \abovedisplayshortskip 6bp% + \belowdisplayshortskip 6bp% + \def\@listi{\leftmargin\leftmargini + \topsep \z@skip + \parsep \z@skip + \itemsep \z@skip}% + \belowdisplayskip \abovedisplayskip +} +\DeclareRobustCommand\footnotesize{% + \@setfontsize\footnotesize{9bp}{15bp}% + \abovedisplayskip 6bp% + \abovedisplayshortskip 6bp% + \belowdisplayshortskip 6bp% + \def\@listi{\leftmargin\leftmargini + \topsep \z@skip + \parsep \z@skip + \itemsep \z@skip}% + \belowdisplayskip \abovedisplayskip +} +\DeclareRobustCommand\scriptsize{\@setfontsize\scriptsize{7.5bp}{12.5bp}} +\DeclareRobustCommand\tiny{\@setfontsize\tiny{6.5bp}{10.83bp}} +\DeclareRobustCommand\large{\@setfontsize\large{15bp}{25bp}} +\DeclareRobustCommand\Large{\@setfontsize\Large{18bp}{30bp}} +\DeclareRobustCommand\LARGE{\@setfontsize\LARGE{22bp}{36.67bp}} +\DeclareRobustCommand\huge{\@setfontsize\huge{24bp}{40bp}} +\DeclareRobustCommand\Huge{\@setfontsize\Huge{26bp}{43.33bp}} \def\thu@def@fontsize#1#2{% \expandafter\newcommand\csname #1\endcsname[1][1.3]{% \fontsize{#2}{##1\dimexpr #2}\selectfont}} @@ -730,9 +773,7 @@ \thu@def@fontsize{sanhao}{16bp} \thu@def@fontsize{xiaosan}{15bp} \thu@def@fontsize{sihao}{14bp} -\thu@def@fontsize{banxiaosi}{13bp} \thu@def@fontsize{xiaosi}{12bp} -\thu@def@fontsize{dawu}{11bp} \thu@def@fontsize{wuhao}{10.5bp} \thu@def@fontsize{xiaowu}{9bp} \thu@def@fontsize{liuhao}{7.5bp} @@ -759,9 +800,9 @@ \def\bibname{参考文献}% \def\appendixname{附录}% \def\indexname{索引}% - \def\thu@acknowledgements@name{致\hspace{\ccwd}谢}% + \def\thu@acknowledgements@name{致\quad 谢}% \ifthu@degree@bachelor - \def\contentsname{目\hspace{\ccwd}录}% + \def\contentsname{目\quad 录}% \def\listfigurename{插图索引}% \def\listtablename{表格索引}% \def\thu@list@figure@table@name{插图和附表索引}% @@ -776,12 +817,11 @@ \def\thu@list@algorithm@name{算法清单}% \def\listequationname{公式清单}% \ifthu@degree@graduate - \def\contentsname{目\hspace{\ccwd}录}% - \def\thu@toc@contents@name{目录}% + \def\contentsname{目\quad 录}% \def\thu@denotation@name{符号和缩略语说明}% \def\thu@resume@name{个人简历、在学期间完成的相关学术成果}% \else % degree = postdoc - \def\contentsname{目\hspace{2\ccwd}次}% + \def\contentsname{目\qquad 次}% \def\thu@denotation@name{符号表}% \def\thu@resume@name{个人简历、发表的学术论文与科研成果}% \fi @@ -806,7 +846,6 @@ \def\thu@resume@name{PUBLICATIONS}% \else \def\contentsname{Contents}% - \def\thu@toc@contents@name{Contents}% \def\listfigurename{List of Figures}% \def\listtablename{List of Tables}% \def\thu@list@figure@table@name{List of Figures and Tables}% @@ -873,6 +912,8 @@ } \thu@set@names \thu@option@hook{language}{\thu@set@names} +\xeCJKDeclareCharClass{CJK}{"2460 -> "2473} +\xeCJKDeclareCharClass{CJK}{"2605} \newcommand\thu@set@punctuations{% \ifthu@language@chinese \xeCJKDeclareCharClass{FullLeft}{"2018, "201C}% @@ -912,7 +953,7 @@ \fancyfoot[C]{\wuhao\thepage}% \let\@mkboth\markboth \def\chaptermark##1{% - \markboth{\CTEXifname{\CTEXthechapter\hskip\ccwd}{}##1}{}% + \markboth{\CTEXifname{\CTEXthechapter\quad}{}##1}{}% }% \fi \let\sectionmark\@gobble @@ -937,26 +978,6 @@ \thu@set@indent \thu@option@hook{degree}{\thu@set@indent} \thu@option@hook{main-language}{\thu@set@indent} -\setlist{nosep} -\def\thu@textcircled#1{% - \ifnum\value{#1} >10\relax - \thu@error{% - Too many footnotes in this page. - Keep footnote less than 10% - }% - \fi - {\CJKfamily+{}\symbol{\the\numexpr\value{#1}+"245F\relax}}% -} -\renewcommand{\thefootnote}{\thu@textcircled{footnote}} -\renewcommand{\thempfootnote}{\thu@textcircled{mpfootnote}} -\def\footnoterule{\vskip-3\p@\hrule\@width0.3\textwidth\@height0.4\p@\vskip2.6\p@} -\let\thu@footnotesize\footnotesize -\renewcommand\footnotesize{\thu@footnotesize\xiaowu[1.5]} -\footnotemargin1.5em\relax -\let\thu@makefnmark\@makefnmark -\def\thu@@makefnmark{\hbox{{\normalfont\@thefnmark}}} -\pretocmd{\@makefntext}{\let\@makefnmark\thu@@makefnmark}{}{} -\apptocmd{\@makefntext}{\let\@makefnmark\thu@makefnmark}{}{} \urlstyle{same} \g@addto@macro\UrlBreaks{% \do0\do1\do2\do3\do4\do5\do6\do7\do8\do9% @@ -966,6 +987,85 @@ \do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v\do\w\do\x\do\y\do\z } \Urlmuskip=0mu plus 0.1mu +\partopsep=\z@skip +\def\@listi{\leftmargin\leftmargini + \parsep \z@skip + \topsep \z@skip + \itemsep\z@skip} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep \z@skip + \parsep \z@skip + \itemsep \z@skip} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep \z@skip + \parsep \z@skip + \partopsep \z@skip + \itemsep \z@skip} +\setlist{nosep} +\newcommand\thu@circled[1]{% + \ifnum#1 >10\relax + \thu@error{% + Too many footnotes in this page. + Keep footnote less than 10% + }% + \fi + {\symbol{\the\numexpr#1+"245F\relax}}% +} +\renewcommand{\thefootnote}{\thu@circled{\c@footnote}} +\renewcommand{\thempfootnote}{\thu@circled{\c@mpfootnote}} +\def\footnoterule{\vskip-3\p@\hrule\@width0.3\textwidth\@height0.4\p@\vskip2.6\p@} +\footnotemargin=13.5bp +\long\def\@makefntext#1{% + \begingroup + % 序号取消上标 + \def\@makefnmark{\hbox{\normalfont\@thefnmark}}% + \xiaowu + \ifFN@hangfoot + \bgroup + \setbox\@tempboxa\hbox{% + \ifdim\footnotemargin>\z@ + \hb@xt@\footnotemargin{\@makefnmark\hss}% + \else + \@makefnmark + \fi + }% + \leftmargin\wd\@tempboxa + \rightmargin\z@ + \linewidth \columnwidth + \advance \linewidth -\leftmargin + \parshape \@ne \leftmargin \linewidth + % \footnotesize + \xiaowu + \@setpar{{\@@par}}% + \leavevmode + \llap{\box\@tempboxa}% + \parskip\hangfootparskip\relax + \parindent\hangfootparindent\relax + \else + \parindent1em% + \noindent + \ifdim\footnotemargin>\z@ + \hb@xt@ \footnotemargin{\hss\@makefnmark}% + \else + \ifdim\footnotemargin=\z@ + \llap{\@makefnmark}% + \else + \llap{\hb@xt@ -\footnotemargin{\@makefnmark\hss}}% + \fi + \fi + \fi + \footnotelayout#1% + \ifFN@hangfoot + \par\egroup + \fi + \endgroup +} \newcommand\thu@set@math@ellipsis{% \ifthu@language@chinese \DeclareRobustCommand\mathellipsis{\mathinner{\unicodecdots}}% @@ -1005,19 +1105,8 @@ } \allowdisplaybreaks[4] \renewcommand\theequation{\ifnum \c@chapter>\z@ \thechapter-\fi\@arabic\c@equation} -\def\make@df@tag{\@ifstar\thu@make@df@tag@@\make@df@tag@@@} -\def\thu@make@df@tag@@#1{\gdef\df@tag{\thu@maketag{#1}\def\@currentlabel{#1}}} -\iffalse -\ifthu@degree@bachelor - \def\thu@maketag#1{\maketag@@@{% - (\ignorespaces\text{\thu@equation@name\hskip0.5em}#1\unskip\@@italiccorr)}} - \def\tagform@#1{\maketag@@@{% - (\ignorespaces\text{\thu@equation@name\hskip0.5em}#1\unskip\@@italiccorr)\equcaption{#1}}} -\fi -\fi -\def\thu@maketag#1{\maketag@@@{(\ignorespaces #1\unskip\@@italiccorr)}} -\def\tagform@#1{\maketag@@@{(\ignorespaces #1\unskip\@@italiccorr)\equcaption{#1}}} -\renewcommand{\eqref}[1]{\textup{(\ref{#1})}} +\def\fps@figure{h} +\def\fps@table{h} \setlength{\floatsep}{6bp} \setlength{\textfloatsep}{6bp} \setlength{\intextsep}{6bp} @@ -1032,7 +1121,7 @@ \normalsize }{% \fontsize{11bp}{14.3bp}\selectfont - \renewcommand\arraystretch{1.2}% + \renewcommand\arraystretch{1.4}% }{}{\thu@patch@error{\@floatboxreset}} \ifthu@degree@bachelor \AtBeginDocument{% delay the check until all packages are loaded @@ -1040,12 +1129,21 @@ \g@addto@macro\appendix{\renewcommand*{\thetable}{\thechapter-\arabic{table}}} } \fi -\DeclareCaptionFont{thu}{\dawu} -\DeclareCaptionLabelSeparator{thu}{\hspace{\ccwd}} +\newcommand\thu@caption@font{} +\newcommand\thu@set@caption@font{% + \ifthu@degree@bachelor + \renewcommand\thu@caption@font{\fontsize{11bp}{15bp}\selectfont}% + \else + \renewcommand\thu@caption@font{\fontsize{11bp}{14.3bp}\selectfont}% + \fi +} +\thu@set@caption@font +\thu@option@hook{degree}{\thu@set@caption@font} +\DeclareCaptionFont{thu}{\thu@caption@font} \captionsetup{ format = hang, font = thu, - labelsep = thu, + labelsep = quad, aboveskip = 6bp, belowskip = 6bp, figureposition = bottom, @@ -1056,14 +1154,14 @@ \renewcommand{\thesubtable}{(\alph{subtable})} \heavyrulewidth=1.5bp \lightrulewidth=1bp -\def\hlinewd#1{% - \noalign{\ifnum0=`}\fi\hrule \@height #1 \futurelet - \reserved@a\@xhline} +\AtEndOfPackageFile*{threeparttable}{ + \g@addto@macro\TPT@defaults{\wuhao} +} \ifthu@degree@bachelor \newcommand{\thu@abstract@name}{中文摘要} \newcommand{\thu@abstract@name@en}{ABSTRACT} \else - \newcommand{\thu@abstract@name}{摘\hspace{\ccwd}要} + \newcommand{\thu@abstract@name}{摘\quad 要} \newcommand{\thu@abstract@name@en}{Abstract} \fi \ctexset{% @@ -1125,8 +1223,8 @@ \ctexset{% chapter = { format = \centering\sffamily\sanhao, - beforeskip = 32bp, - afterskip = 32bp, + beforeskip = 27bp, + afterskip = 27bp, }, section = { format = \sffamily\fontsize{14bp}{20bp}\selectfont, @@ -1209,7 +1307,7 @@ \setcounter{tocdepth}{2} \renewcommand\tableofcontents{% \ifthu@degree@graduate - \thu@chapter*[\thu@toc@contents@name]{\contentsname}% + \thu@chapter*{\contentsname}% \else \thu@chapter*[]{\contentsname}% \fi @@ -1266,13 +1364,7 @@ \fi \else \titlecontents{chapter} - [\z@]{\addvspace{6bp} - \ifthu@main@language@chinese - \heiti - \else - \sffamily - \fi - } + [\z@]{\addvspace{6bp}\sffamily} {\contentspush{\thecontentslabel\quad}}{} {\rmfamily\thu@leaders\thecontentspage}% \titlecontents{section} @@ -1532,7 +1624,7 @@ \restoregeometry } \newcommand\thu@titlepage@secret{% - \sffamily\CJKfamily+{}\sanhao + \sffamily\sanhao \ifx\thu@secret@level\@empty \phantom{秘密}% \else @@ -1755,7 +1847,7 @@ \centering \parbox[t][0cm][t]{\textwidth}{% \hfill - \CJKfamily+{}\xiaosi + \xiaosi \ifx\thu@secret@level\@empty\else \thu@secret@level\space\thu@secret@year 年\par \fi @@ -1923,52 +2015,19 @@ }% }{% } -\newcommand{\thu@authorization@title}{关于学位论文使用授权的说明} -\newcommand{\thu@authorization@content}{% -\ifthu@degree@bachelor - 本人完全了解清华大学有关保留、使用学位论文的规定,% - 即:学校有权保留学位论文的复印件,允许该论文被查阅和借阅;% - 学校可以公布该论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存该论文。% -\else - 本人完全了解清华大学有关保留、使用学位论文的规定,即:\par - 清华大学拥有在著作权法规定范围内学位论文的使用权,其中包括:% - (1)已获学位的研究生必须按学校规定提交学位论文,% - 学校可以采用影印、缩印或其他复制手段保存研究生上交的学位论文;% - (2)为教学和科研目的,学校可以将公开的学位论文作为资料在图书馆、资料室等场所供校内师生阅读,% - 或在校园网上供校内师生浏览部分内容;% - \ifthu@degree@doctor - (3)根据《中华人民共和国学位条例暂行实施办法》及相关部门具体要求,向国家图书馆报送相应的学位论文。% - \else - (3)按照相关部门督导、抽查等要求,报送相应的学位论文。% - \fi - \par - 本人保证遵守上述规定。% - \fi -} -\newcommand{\thu@authorization@addon}{% - \ifthu@degree@bachelor(涉密的学位论文在解密后应遵守此规定)\else (保密的论文在解密后遵守此规定)\fi} -\newcommand{\thu@authorization@authorsig}{\ifthu@degree@bachelor 签\hskip1em名:\else 作者签名:\fi} -\newcommand{\thu@authorization@teachersig}{导师签名:} -\newcommand{\thu@authorization@frontdate}{% - 日\ifthu@degree@bachelor\hspace{1em}\else\hspace{2em}\fi 期:} \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 - \ifthu@degree@bachelor\thu@authorization@mk\else% - \begin{list}{}{% - \topsep\z@% - \listparindent\parindent% - \parsep\parskip% - \setlength{\leftmargin}{0.9mm}% - \setlength{\rightmargin}{0.9mm}}% - \item[]\thu@authorization@mk% - \end{list}% - \fi% + \ifthu@degree@bachelor + \thu@copyright@page@bachelor + \else + \thu@copyright@page@graduate + \fi \else + \cleardoublepage + \thispagestyle{empty}% + \thu@pdfbookmark{0}{\thu@authorization@title}% \thu@phantomsection \kv@define@key{thu@copyright}{file}{\includepdf{\kv@value}}% \kv@set@family@handler{thu@copyright}{% @@ -1982,25 +2041,84 @@ \fi \fi } -\newcommand{\thu@authorization@mk}{% - \ifthu@degree@bachelor\vspace*{0.2cm}\else\vspace*{0.42cm}\fi % shit code! - \begin{center}\erhao\heiti \thu@authorization@title\end{center} - \ifthu@degree@bachelor\vskip5pt\else\vskip40pt\sihao[2.03]\fi\par - \thu@authorization@content\par - \textbf{\thu@authorization@addon}\par - \ifthu@degree@bachelor\vskip0.7cm\else\vskip1.0cm\fi - \ifthu@degree@bachelor - \indent\mbox{\thu@authorization@authorsig\thu@underline\relax% - \thu@authorization@teachersig\thu@underline\relax\thu@authorization@frontdate\thu@underline\relax} - \else - \begingroup - \parindent0pt\xiaosi - \hspace*{1.5cm}\thu@authorization@authorsig\thu@underline[7em]\relax\hfill% - \thu@authorization@teachersig\thu@underline[7em]\relax\hspace*{1cm}\\[3pt] - \hspace*{1.5cm}\thu@authorization@frontdate\thu@underline[7em]\relax\hfill% - \thu@authorization@frontdate\thu@underline[7em]\relax\hspace*{1cm} - \endgroup - \fi} +\newcommand{\thu@authorization@frontdate}{% + 日\ifthu@degree@bachelor\hspace{1em}\else\hspace{2em}\fi 期:} +\newcommand\thu@copyright@page@graduate{% + \cleardoublepage + \newgeometry{ + vmargin = 3.8cm, + hmargin = 3.2cm, + }% + \begingroup + \ctexset{ + chapter = { + format = {\centering\sffamily\erhao}, + beforeskip = 18bp, + afterskip = 6bp, + }, + }% + \thu@chapter*[]{关于学位论文使用授权的说明}% + \thispagestyle{empty}% + \endgroup + \vskip 50bp% + \begingroup + \fontsize{14bp}{26bp}\selectfont + 本人完全了解清华大学有关保留、使用学位论文的规定,即:\par + 清华大学拥有在著作权法规定范围内学位论文的使用权,其中包括:% + (1)已获学位的研究生必须按学校规定提交学位论文,% + 学校可以采用影印、缩印或其他复制手段保存研究生上交的学位论文;% + (2)\nobreak 为教学和科研目的,学校可以将公开的学位论文作为资料在图书馆、资料室等场所供校内师生阅读,% + 或在校园网上供校内师生浏览部分内容;% + \ifthu@degree@doctor + (3)根据《中华人民共和国学位条例暂行实施办法》及上级教育主管部门具体要求,向国家图书馆报送相应的学位论文。% + \else + (3)按照上级教育主管部门督导、抽查等要求,报送相应的学位论文。% + \fi + \par + 本人保证遵守上述规定。\par + \vskip 6bp% + \textbf{(保密的论文在解密后遵守此规定)}\par + \endgroup + \vskip1.2cm% + \begingroup + \noindent\xiaosi + \hspace*{1.5cm}% + 作者签名:\thu@underline[7em]\relax\hfill + 导师签名:\thu@underline[7em]\relax\hspace*{1cm}\\[3pt]% + \hspace*{1.5cm}% + 日\hspace{2em}期:\thu@underline[7em]\relax\hfill + 日\hspace{2em}期:\thu@underline[7em]\relax\hspace*{1cm}% + \endgroup + \clearpage + \restoregeometry +} +\newcommand\thu@copyright@page@bachelor{% + \cleardoublepage + \begingroup + \ctexset{ + chapter = { + format = {\centering\sffamily\erhao[1]}, + beforeskip = 1bp, + afterskip = 24bp, + }, + }% + \thu@chapter*[]{关于学位论文使用授权的说明}% + \thispagestyle{empty}% + \endgroup + \vskip 4bp% + 本人完全了解清华大学有关保留、使用学位论文的规定,即:% + 学校有权保留学位论文的复印件,允许该论文被查阅和借阅;% + 学校可以公布该论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存该论文。\par + \textbf{(涉密的学位论文在解密后应遵守此规定)}\par + \null\par + \begingroup + \centering + 签\quad 名:\thu@underline[6em]{}% + 导师签名:\thu@underline[6em]{}% + 日\quad 期\thu@underline[6em]{}% + \par + \endgroup +} \thu@define@key{ keywords, keywords* = { @@ -2031,18 +2149,14 @@ \fi }{% \par + \null\par \ifthu@degree@graduate - \vspace*{\stretch{4}}% \noindent \textsf{关键词:}% \else - \null\par \textbf{关键词:}% \fi \thu@clist@use{\thu@keywords}{;}% - \ifthu@degree@graduate - \vspace*{\stretch{1}}% - \fi \ifthu@degree@bachelor \cleardoublepage \fi @@ -2054,23 +2168,17 @@ \fi \thusetup{language = english}% \ifthu@degree@graduate - \begingroup - \ctexset{chapter/format+=\bfseries}% - \thu@chapter*[\sffamily\bfseries\thu@abstract@name@en]{\thu@abstract@name@en}% - \endgroup + \thu@chapter*{\thu@abstract@name@en}% \else \thu@chapter*[]{\thu@abstract@name@en}% \fi }{% \par + \null\par \ifthu@degree@graduate - \vspace*{\stretch{4}}% \noindent - \textbf{Key Words:}\space - \else - \null\par - \textbf{Keywords:}\space \fi + \textbf{Keywords:}\space \thu@clist@use{\thu@keywords@en}{; }% \ifthu@degree@graduate \vspace*{\stretch{1}}% @@ -2204,14 +2312,14 @@ } \titlecontents{figure} [\z@]{} - {\contentspush{\figurename~\thecontentslabel\hspace{\ccwd}}}{} + {\contentspush{\figurename~\thecontentslabel\quad}}{} {\nobreak\thu@leaders\nobreak\hfil\thecontentspage} \renewcommand\listoftables{% \thu@listof{table}% } \titlecontents{table} [\z@]{} - {\contentspush{\tablename~\thecontentslabel\hspace{\ccwd}}}{} + {\contentspush{\tablename~\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage} \newcommand\listoffiguresandtables{% \thu@chapter*{\thu@list@figure@table@name}% @@ -2233,6 +2341,11 @@ \thu@define@key{ cite-style = { name = cite@style, + choices = { + super, + inline, + author-year, + } } } \PassOptionsToPackage{compress}{natbib} @@ -2240,14 +2353,17 @@ \DeclareRobustCommand\inlinecite{\@inlinecite} \def\@inlinecite#1{\begingroup\let\@cite\NAT@citenum\citep{#1}\endgroup} \let\onlinecite\inlinecite - \expandafter\newcommand\csname bibstyle@thuthesis-numeric\endcsname{% + \newcommand\bibstyle@super{% \bibpunct{[}{]}{,}{s}{,}{\textsuperscript{,}}} - \expandafter\newcommand\csname bibstyle@thuthesis-author-year\endcsname{% + \newcommand\bibstyle@inline{% + \bibpunct{[}{]}{,}{n}{,}{,}} + \@namedef{bibstyle@author-year}{% \bibpunct{(}{)}{;}{a}{,}{,}} - \expandafter\newcommand\csname bibstyle@thuthesis-bachelor\endcsname{% - \bibpunct{[}{]}{,}{s}{,}{\textsuperscript{,}}} - \@namedef{bibstyle@thuthesis-inline}{\bibpunct{[}{]}{,}{n}{,}{,}} - \thu@option@hook{cite-style}{\@nameuse{bibstyle@thuthesis-\thu@cite@style}} + \thu@option@hook{cite-style}{\@nameuse{bibstyle@\thu@cite@style}} + \@namedef{bibstyle@thuthesis-numeric}{\citestyle{super}} + \@namedef{bibstyle@thuthesis-author-year}{\citestyle{author-year}} + \@namedef{bibstyle@thuthesis-bachelor}{\citestyle{super}} + \@namedef{bibstyle@thuthesis-inline}{\citestyle{inline}} \renewcommand\NAT@citesuper[3]{\ifNAT@swa \if*#2*\else#2\NAT@spacechar\fi % \unskip\kern\p@\textsuperscript{\NAT@@open#1\NAT@@close}% @@ -2443,7 +2559,7 @@ \newcommand\thu@set@bibliography@format{% \ifthu@degree@bachelor \renewcommand\bibfont{\fontsize{10.5bp}{17bp}\selectfont}% - \setlength{\bibsep}{6bp}% + \setlength{\bibsep}{6bp \@plus 3bp \@minus 3bp}% \ifthu@main@language@chinese \setlength{\bibhang}{21bp}% \else @@ -2451,13 +2567,24 @@ \fi \else \renewcommand\bibfont{\fontsize{10.5bp}{16bp}\selectfont}% - \setlength{\bibsep}{3bp}% + \setlength{\bibsep}{3bp \@plus 3bp \@minus 3bp}% \setlength{\bibhang}{21bp}% \fi } \thu@set@bibliography@format \thu@option@hook{degree}{\thu@set@bibliography@format} \thu@option@hook{main-language}{\thu@set@bibliography@format} + \patchcmd\thebibliography{% + \clubpenalty4000% + }{% + \interlinepenalty=5000\relax + \clubpenalty=10000\relax + }{}{\thu@patch@error{\thebibliography}} + \patchcmd\thebibliography{% + \widowpenalty4000% + }{% + \widowpenalty=10000\relax + }{}{\thu@patch@error{\thebibliography}} \def\@biblabel#1{[#1]\hfill} \renewcommand\NAT@bibsetnum[1]{% % \settowidth\labelwidth{\@biblabel{#1}}% @@ -2489,7 +2616,7 @@ \newcommand\thu@set@bibliography@format{% \ifthu@degree@bachelor \renewcommand\bibfont{\fontsize{10.5bp}{17bp}\selectfont}% - \setlength{\bibitemsep}{6bp}% + \setlength{\bibitemsep}{6bp \@plus 3bp \@minus 3bp}% \ifthu@main@language@chinese \setlength{\bibhang}{21bp}% \else @@ -2497,7 +2624,7 @@ \fi \else \renewcommand\bibfont{\fontsize{10.5bp}{16bp}\selectfont}% - \setlength{\bibitemsep}{3bp}% + \setlength{\bibitemsep}{3bp \@plus 3bp \@minus 3bp}% \setlength{\biblabelsep}{0.1cm}% \setlength{\bibhang}{21bp}% \fi @@ -2560,6 +2687,7 @@ \section*{Contents}% \thu@pdfbookmark{1}{Contents}% \printcontents[survey]{l}{1}[2]{}% + \vskip 20bp% }% \renewcommand\bibname{参考文献}% \let\bibsection\thu@appendix@bibsection @@ -2583,6 +2711,7 @@ \section*{目录}% \thu@pdfbookmark{1}{目录}% \printcontents[translation]{l}{1}[2]{}% + \vskip 20bp% }% \def\bibsection{% \begingroup @@ -2619,15 +2748,15 @@ \newcommand\thu@set@partial@toc@format{% \titlecontents{section} [\z@]{} - {\contentspush{\thecontentslabel\hspace{\ccwd}}}{} + {\contentspush{\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage}% \titlecontents{subsection} - [1\ccwd]{} - {\contentspush{\thecontentslabel\hspace{\ccwd}}}{} + [1em]{} + {\contentspush{\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage}% \titlecontents{subsubsection} - [2\ccwd]{} - {\contentspush{\thecontentslabel\hspace{\ccwd}}}{} + [2em]{} + {\contentspush{\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage}% } \newcommand\thu@appendix@bibsection{% @@ -2641,20 +2770,58 @@ \vskip 6bp% }% \newcommand\thu@appendix@bibliography[1]{\putbib[#1]} -\newenvironment{resume}[1][\thu@resume@name]{% +\newenvironment{resume}{% \@mainmatterfalse - \thu@chapter*{#1}}{} -\newcommand{\resumeitem}[1]{% - \vspace{24bp}{\sihao\heiti\centerline{#1}}\par\vspace{6bp}} -\newcommand{\researchitem}[1]{% - \vspace{32bp}{\sihao\heiti\centerline{#1}}\par\vspace{14bp}} -\newlist{publications}{enumerate}{1} -\setlist[publications]{label=[\arabic*],align=left,nosep,itemsep=8bp, - leftmargin=10mm,labelsep=!,before=\xiaosi[1.26],resume} + \thu@chapter*{\thu@resume@name}% + \ctexset{ + section = { + 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, + \fi + \fi +}{} +\newcommand\resumeitem[1]{% + \thu@error{The "\protect\resumeitem" is obsolete. Please update to the new format}% +} +\newcommand\researchitem[1]{% + \thu@error{The "\protect\researchitem" is obsolete. Please update to the new format}% +} \newlist{achievements}{enumerate}{1} -\setlist[achievements]{label=[\arabic*],align=left,nosep,itemsep=8bp, - leftmargin=10mm,labelsep=!,before=\xiaosi[1.26]} -\def\publicationskip{\bigskip\bigskip} +\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 + }, + resume = achievements, +} +\newenvironment{publications}{% + \thu@deprecate{"publications" environment}{"achievements"}% + \begin{achievements}% +}{% + \end{achievements}% +} +\newcommand\publicationskip{% + \thu@error{The "\protect\publicationskip" is obsolete. Do not use it}% +} \newcommand{\record}[1]{% \let\thu@record@file\@empty \kv@define@key{thu@record}{file}{\let\thu@record@file\kv@value}% @@ -2698,7 +2865,8 @@ \phantomsection } \pdfstringdefDisableCommands{ - \let\\\@empty + \let\\\relax + \let\quad\relax \let\hspace\@gobble }% \@ifpackagelater{hyperref}{2019/04/27}{}{% @@ -2738,9 +2906,11 @@ \def\thenomenclature{\begin{denotation}[\nom@tempdim]} \def\endthenomenclature{\end{denotation}} } -\AtBeginDocument{% - \let\thu@LT@array\LT@array - \def\LT@array{\dawu[1.5]\thu@LT@array} % set default font size +\AtEndOfPackageFile*{longtable}{ + \pretocmd\LT@array{% + \fontsize{11bp}{14.3bp}\selectfont + \renewcommand\arraystretch{1.4}% + }{}{\thu@patch@error{\LT@array}} } \AtEndOfPackageFile*{siunitx}{% \sisetup{ @@ -2835,16 +3005,16 @@ \contentsuse{algorithm}{loa} \titlecontents{algorithm} [\z@]{} - {\contentspush{\fname@algorithm~\thecontentslabel\hspace{\ccwd}}}{} + {\contentspush{\fname@algorithm~\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage} } \PassOptionsToPackage{algochapter}{algorithm2e} \AtEndOfPackageFile*{algorithm2e}{ \renewcommand\algorithmcfname{\thu@algorithm@name} - \SetAlgoCaptionLayout{dawu} + \SetAlgoCaptionLayout{thu@caption@font} \SetAlCapSty{relax} \SetAlgoCaptionSeparator{\hspace*{1em}} - \SetAlFnt{\dawu} + \SetAlFnt{\fontsize{11bp}{14.3bp}\selectfont} \renewcommand\listofalgorithms{% \thu@listof{algorithmcf}% } @@ -2853,7 +3023,7 @@ \contentsuse{algocf}{loa} \titlecontents{algocf} [\z@]{} - {\contentspush{\algorithmcfname~\thecontentslabel\hspace{\ccwd}}}{} + {\contentspush{\algorithmcfname~\thecontentslabel\quad}}{} {\thu@leaders\thecontentspage} } \AtEndOfPackageFile*{minted}{ @@ -2955,7 +3125,12 @@ \fi \fi } -\AtEndOfClass{\sloppy} +\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} +\DeclareRobustCommand\file{\nolinkurl} +\DeclareRobustCommand\env{\textsf} +\DeclareRobustCommand\pkg{\textsf} +\DeclareRobustCommand\cls{\textsf} +\sloppy \endinput %% %% End of file `thuthesis.cls'. |