summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2025-01-04 20:46:10 +0000
committerKarl Berry <karl@freefriends.org>2025-01-04 20:46:10 +0000
commitdbcb91f5b0e559b087ff2a8cb872f38e739d2f4f (patch)
treebc61a58de3091ef99ad7810e2b67fca7f51914e5
parent8fbc8cdee6cf85578925c2dfb5021d4bc6581ae6 (diff)
hduthesis (4jan25)
git-svn-id: svn://tug.org/texlive/trunk@73300 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/README.md8
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/abstract.tex2
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/contents.tex126
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source.tex6
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a1.tex194
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a2.tex29
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a3.tex35
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a4.tex240
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a5.tex334
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a6.tex2
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a7.tex142
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-bc.pdfbin489599 -> 489591 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.pdfbin302030 -> 355528 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.tex62
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-pg.pdfbin182025 -> 182177 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.pdfbin175923 -> 175568 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.tex8
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/example/reference.bib129
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.pdfbin1092478 -> 1418576 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.tex6
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/beamerthemehdu.sty225
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-bc.config-module.code.tex2
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.l3doc-module.code.tex2
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.stationery-module.code.tex16
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-layout-module.code.tex9
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-pg.config-module.code.tex84
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-typeset-module.code.tex16
-rw-r--r--Master/texmf-dist/tex/xelatex/hduthesis/hduthesis.cls133
28 files changed, 1392 insertions, 418 deletions
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/README.md b/Master/texmf-dist/doc/xelatex/hduthesis/README.md
index 6a92084e29b..c90fe46b8d2 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/README.md
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/README.md
@@ -12,8 +12,12 @@
- `pg.config`: 硕士论文格式配置
+- `beamer`: HDU Beamer 主题
+
- `stationery.config`: 学校信纸生成
+
+
- `hdu.l3doc`: 模板 `l3doc` 用户手册配置
---
@@ -34,8 +38,12 @@ Modules of `hduThesiS` provide the following supports:
- `pg.config`: Configuration for postgraduate thesis' format
+- `beamer`: HDU Beamer theme
+
- `stationery.config`: Creation of HDU's stationery
+
+
- `hdu.l3doc`: Configuration for class's `l3doc` manual
**Welcome to pull requests [here](https://github.com/myhsia/hduthesis).**
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/abstract.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/abstract.tex
index 3bf688b19b1..2ce7512c451 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/abstract.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/abstract.tex
@@ -1,5 +1,5 @@
\begin{abstract}
- \hologo{hduthesis} 是杭州电子科技大学学位论文 \hologo{LaTeX} 模板,支持学士、硕士学位论文排版.
+ \hologo{hduthesis} 是杭州电子科技大学学位论文 \hologo{LaTeX} 模板,支持学士、硕士学位论文排版,同时提供了学校信笺、Slides(幻灯片)模板.
\end{abstract}
\begin{center}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/contents.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/contents.tex
index 764fa44ed47..25e9ac555b9 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/contents.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/contents.tex
@@ -18,11 +18,14 @@
其中,\file{hduthesis.cls} 是模板的核心文件,实质上并不提供主要功能,只用于对全局选项的控制加载模板的各个模块. 模板的功能模块如下
\begin{tasks}(2)
- \task! \file{typeset}:排版模块,用于控制字体和公式设置.
+ \task \file{typeset}:字体和公式设置.
+ \task \file{hdu.l3doc}:用户手册模块.
+ \addtocounter{task}{5}
\task! \file{layout}:版面模块,用于提供封面所用到的盒子和对输入文档信息的处理.
+ \addtocounter{task}{-6}
\task \file{bc.config}:本科学位论文配置模块.
\task \file{pg.config}:硕士学位论文配置模块.
- \task \file{hdu.l3doc}:用户手册模块.
+ \task \file{beamerthemehdu}:Beamer 主题.
\task \file{hdu.stationery}:信纸模块.
\end{tasks}
@@ -37,7 +40,7 @@
\begin{table}[htbp]
\centering \renewcommand* \arraystretch {.72}
- \begin{tabularx}{\linewidth}{*{9}{>{\footnotesize}X}}
+ \begin{tabular*}{\linewidth}{*9{@{\hspace{1ex}}>{\footnotesize}l@{\hspace{1ex}}}}
\toprule
\pkg{amssymb} & \pkg{bm} & \pkg{booktabs} &
\pkg{cancel} & \pkg{circuitikz} & \pkg{cleveref} &
@@ -45,9 +48,9 @@
\midrule
\pkg{hyperref} & \pkg{listings} & \pkg{mathtools} &
\pkg{multicol} & \pkg{pgfplots} & \pkg{physics2} &
- \pkg{siunitx} & \multicolumn{2}{>{\footnotesize}l}{\pkg{unicode-math}}\\
+ \pkg{siunitx} & \multicolumn{2}{@{}>{\footnotesize}l}{\pkg{unicode-math}}\\
\bottomrule
- \end{tabularx}
+ \end{tabular*}
\end{table}
\subsection{文件结构}
@@ -84,17 +87,28 @@
.2 hduthesis-layout-module.code.
.2 hduthesis-bc.config-module.code.
.2 hduthesis-pg.config-module.code.
- .2 hduthesis-hdu.l3doc-module.code.
+ .2 beamerthemehdu.sty.
.2 hduthesis-hdu.stationery-module.code.
+ %
+ .2 hduthesis-hdu.l3doc-module.code.
.2 hdulogo.pdf, hdutitle.pdf, hdumotto.pdf, hdubadge.pdf.
}
-\subsubsection{许可证}
+\subsubsection{许可证、入门手册}
\dirtree
{%
- .1 ./LICENSE, README.md.
+ .1 ./License, README.md.
}
+
+\subsection{模板的妥协与僵持}
+
+\begin{enumerate}
+ \item 模板的章节(\cmd{chapter}、\cmd{section}、\cmd{subsection})字体、前后间距完全按照\emph{杭电理工类毕业论文写作规范}进行设置,虽然这样的设置可能与您的审美不符,但是这是为了保证论文的格式符合学校的要求.
+ \item \emph{杭电理工类毕业论文写作规范} 中要求 \emph*{参考文献书写格式应符合GB7714-1987},但目前 \emph{GB7714-2015 为学术界通用格式,在已有新标准情况下旧标准理应废止使用}. 所以本模板默认使用 \pkg{gbt7714} 宏包.
+ \item 根据 \hologo{TeX} 的设计特性:\emph{上一页末尾有足够的空间排版额外一行文本,但在该文本后出现的公式无法完整排版在该页时,上一页末尾的最后一行文本将联同该公式一起移至下一页}. 如果您觉得这样的排版方式不符合您的审美,可以更改数值 \cmd{penalty} 的大小来控制换页算法,但是并不推荐这么做.
+\end{enumerate}
+
\section{模板安装}
\subsection{系统要求}
@@ -106,14 +120,10 @@
}
本模板最低兼容发行版 \hologo{TeX} Live 2022,推荐使用 \hologo{TeX} Live 2023 或更新版本.
\footnote
- { 发行版 \hologo{TeX} Live 2022 中不包含 \pkg{physics2} 宏包,无法快捷输入等高括号. }
-\footnote
- {
- 发行版 \hologo{TeX} Live 2022 中通过导言区设置中文字体伪粗体和伪斜体时可能遇到报错. 详情请见 3.2 节.
- }
-\footnote
{
- 根据 \emph{Plan for \hologo{TeX} Live 2025: 22feb: code freeze for final build, major bug fixes only; 1mar: final updates from CTAN, final doc tweaks.} 本模板将于 2025 年 2 月 22 日移除对 \hologo{TeX} Live 2022 的兼容,建议 \hologo{TeX} Live 2022 用户尽快升级至最新发行版.
+ 发行版 \hologo{TeX} Live 2022 中:
+ 1. 不包含 \pkg{physics2} 宏包.
+ 2. 通过导言区设置中文字体伪粗体和伪斜体时可能遇到报错. 详情请见 3.2 节. \emph{本模板将于 2025 年 2 月 22 日前移除对 \hologo{TeX} Live 2022 的兼容.}
}
使用本模板生成学位论文,仅支持 \hologo{XeLaTeX} 编译;使用本模板生成信纸,支持 \hologo{pdfLaTeX} 编译.
@@ -127,7 +137,7 @@
\end{verbatim}
\end{framed}
-Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示符. 有些时候,您需要手动更新 \cmd{tlmgr}
+Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示符. 有些时候,您需要手动更新 \cmd{tlmgr} 才能正常使用 \cmd{tlmgr} 命令安装宏包.
\begin{framed}
\begin{verbatim}
@@ -135,8 +145,6 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\end{verbatim}
\end{framed}
-才能正常使用 \cmd{tlmgr} 命令安装宏包.
-如果您的 \hologo{TeX} 发行版不支持 \cmd{tlmgr},请尽快升级您的 \hologo{TeX} 发行版.
升级该模板,在终端(Terminal)执行以下命令即可
\begin{framed}
@@ -147,7 +155,7 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\subsection{手动安装}
-本模板已上传至 CTAN、GitHub 和 Gitee 平台. 可以直接从三个平台下载最新版本的 \hologo{hduthesis} 模板. 下载后,将 \file{./hduthesis/tex/} 文件夹中的所有 (runtime) 文件复制到 \file{./hduthesis/example/} 目录下,即可编译 \file{./hduthesis/example/} 文件夹中的样例.
+本模板已上传至 CTAN、GitHub 和 Gitee 平台,可直接下载最新版本的 \hologo{hduthesis} 模板. 下载后,将 \file{./hduthesis/tex/} 文件夹中的所有 (runtime) 文件复制到 \file{./hduthesis/example/} 目录下,即可编译 \file{./hduthesis/example/} 中的样例.
\section{全局选项}
@@ -174,9 +182,7 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\end{framed}
如果你使用的是 \hologo{TeX} Live 2022,设置中文字体的伪粗体和伪斜体时可能会遇到报错.
-在此发行版中,最多能对两个选项中的其一赋强度值,且被赋值选项需放在未被赋值选项前.
-
-更加详细的字体设置请参考 \pkg{xeCJK} 宏包的文档.
+在此发行版中,最多能对两个选项中的其一赋强度值,且被赋值选项需放在未被赋值选项前. 更加详细的字体设置请参考 \pkg{xeCJK} 宏包的文档.
\section{文档信息设置}
@@ -185,19 +191,17 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\cs{DocInfo}\marg{keyvals}
\end{syntax}
- 此命令接收键值,用于设置文档信息. 键 \keys{\cmdmac~title} 用于设置论文标题,键 \keys{\cmdmac~department} 用于设置学院,键 \keys{\cmdmac~major} 用于设置专业,键 \keys{\cmdmac~class} 用于设置班级,键 \keys{\cmdmac~stdntid} 用于设置学号,键 \keys{\cmdmac~author} 用于设置作者,键 \keys{\cmdmac~supervisor} 用于设置导师,键 \keys{\cmdmac~bibsource} 用于设置插入参考文献文件源. 命令会根据输入的学号自动判断使用者为本科生/研究生.
-
- 命令 \cs{DocInfo} 需在导言区中执行. 完成文档信息输入后,在 \verb|\begin{document}| 后执行命令 \cs{maketitle} 会调用所设置的键值自动生成 \emph*{论文封面} 和 \emph*{目录}.
+ 此命令接收键值,用于设置文档信息,\emph{需在导言区中执行}. 键 \keys{\cmdmac~title} 用于设置论文标题,键 \keys{\cmdmac~department} 用于设置学院,键 \keys{\cmdmac~major} 用于设置专业,键 \keys{\cmdmac~class} 用于设置班级,键 \keys{\cmdmac~stdntid} 用于设置学号,键 \keys{\cmdmac~author} 用于设置作者,键 \keys{\cmdmac~supervisor} 用于设置导师,键 \keys{\cmdmac~bibsource} 用于设置插入参考文献文件源. 命令会根据输入的学号自动判断使用者为本科生/研究生.
\end{function}
-本科生输入样例如下. 需要使用键 \keys{\cmdmac~title} 设置类型为毕业设计/毕业论文,使用斜线 (/) 分隔,如 \cmd{title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业论文}.
+本科生输入样例如下. 需要使用键 \keys{\cmdmac~title} 设置封面大标题,使用斜线 (/) 分隔.
\begin{framed}
\begin{verbatim}
\DocInfo
{
title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/
- 本科毕业设计, department = 理学院, major = 物理学,
+ 本科毕业设计, department = 理学院, major = 物理学,
bibsource = reference, class = 英才班, stdntid = C668668E,
author = 申智能, supervisor = 教授:葉芷晴,
}
@@ -208,7 +212,6 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\begin{framed}
\begin{verbatim}
- \documentclass { hduthesis }
\DocInfo
{
title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/
@@ -247,15 +250,10 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\begin{framed}
\begin{verbatim}
- % 本科生使用用例
- ... \maketitle ... \commitment [ example-image-a/2024-05-31 ] ...
- % 研究生使用用例
- ... \maketitle ...
+ \begin{document} ... \maketitle
\commitment
- [
- example-image-a/2025-05-31, example-image-a/2025-05-31,
- example-image-b/2025-06-01
- ]
+ [ example-image-a/2025-05-31, example-image-a/2025-05-31,
+ example-image-b/2025-06-01 ] ... \end{document}
\end{verbatim}
\end{framed}
@@ -302,14 +300,24 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
\section{附加模块}
-\subsection{杭州电子科技大学信纸}
+\subsection{用户手册}
+
+本手册为 \cls{hduthesis} 加载 \pkg{l3doc} 模块后生成,此模块无需 \pkg{agreed} 选项.
+
+\begin{framed}
+ \begin{verbatim}
+ \documentclass [ mode = l3doc ] { hduthesis }
+ \end{verbatim}
+\end{framed}
+
+\subsection{杭州电子科技大学信笺}
-加载全局选项 \pkg{stationery},并进行文档信息设置,即可生成信纸. 可用于推荐信撰写或生成笔记纸.
+加载模块 \pkg{stationery},并进行文档信息设置,即可生成信纸. 可用于推荐信撰写或生成笔记纸.
此模块无需 \pkg{agreed} 选项.
\begin{framed}
\begin{verbatim}
- \documentclass [ stationery ] { hduthesis }
+ \documentclass [ mode = stationery ] { hduthesis }
\end{verbatim}
\end{framed}
@@ -326,30 +334,46 @@ Windows 系统用户无需 \verb|sudo|,请以管理员身份运行命令提示
date = {23\textsuperscript{th} December, 2024},
watermark = true
}
+ \begin{document} \maketitle ... \end{document}
\end{verbatim}
\end{framed}
若要在信纸上添加笔记线,可使用命令 \cs{noteLine}\oarg{num},其可选参数接收笔记线的数量,默认值为20. 下两页分别为生成的信纸和笔记纸样例,可在终端执行 \cmd{texdoc hduthesis-stationery} 获取此样例文件.
-\subsection{用户手册}
+\includepdf[pages = -, nup = 1x2, angle = -90, frame, linktodoc, scale = 0.96, delta = 0in .25in]
+ {/Users/myhsia/Documents/GitHub/hduthesis/example/hduthesis-stationery}
+
+\subsection{Beamer 主题}
-本手册为 \cls{hduthesis} 加载选项 \pkg{l3doc} 后生成,此模块无需 \pkg{agreed} 选项.
+本模板中存在独立的 Beamer 主题 \pkg{hdu},用于生成杭州电子科技大学风格的 Beamer 幻灯片. 由于本主题为杭州电子科技大学专属,所以该主题暂不开放更改主题色杭电蓝和Logo.
+
+加载模块 \pkg{beamer},并进行文档信息设置,即以 \pkg{hdu} 为主题制作Beamer.
+此模块无需 \pkg{agreed} 选项.
\begin{framed}
\begin{verbatim}
- \documentclass [ l3doc ] { hduthesis }
+ \documentclass [ mode = beamer ] { hduthesis }
\end{verbatim}
\end{framed}
-\includepdf[pages = -, nup = 1x2, angle = -90, frame, linktodoc, scale = 0.96, delta = 0in .25in]
- {/Users/myhsia/Documents/GitHub/hduthesis/example/hduthesis-stationery}
-
-\subsection{Beamer 主题}
+与学士 / 硕士学位论文文档信息设置类似,使用 \cs{DocInfo} 命令,对信件主题、发件人、邮箱、日期和水印进行设置. 此时 \cs{DocInfo} 命令接受键
+\keys{\cmdmac~title} \keys{\cmdmac~subtitle} \keys{\cmdmac~author} \keys{\cmdmac~date} \keys{\cmdmac~supervisor} \keys{\cmdmac~reference}. 下页为生成Beamer的样例.
-本模板中存在独立的 Beamer 主题 \cls{hdu},用于生成杭州电子科技大学风格的 Beamer 幻灯片. 由于本主题为杭州电子科技大学专属,所以该主题暂不开放更改主题色杭电蓝和Logo.
+\begin{framed}
+ \begin{verbatim}
+ \DocInfo
+ {
+ title = Research and Application of Micromagnetic Simulation
+ Based on Landau-Lifshitz-Gilbert Equation,
+ subtitle = hdu Undergraduate Thesis Proposal,
+ author = SAN Chi Nan (C668668E0),
+ date = {\today{} / Building 6, Room 321},
+ supervisor = Prof. YIP Tsz Ching,
+ bibsource = reference.bib,
+ }
+ \end{verbatim}
+\end{framed}
\begin{center}
- \frame{\includegraphics[width = .9\linewidth, page = 1]{/Users/myhsia/Documents/GitHub/hduthesis/example/hduthesis-beamer.pdf}}
- \par
- \frame{\includegraphics[width = .9\linewidth, page = 2]{/Users/myhsia/Documents/GitHub/hduthesis/example/hduthesis-beamer.pdf}}
-\end{center} \ No newline at end of file
+ \includepdf[pages = -, nup = 2x4, frame, linktodoc, scale = 0.96, delta = .25in .2in]{/Users/myhsia/Documents/GitHub/hduthesis/example/hduthesis-beamer.pdf}
+\end{center}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source.tex
index c92777877f5..7d7821f3e17 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source.tex
@@ -1,6 +1,6 @@
\ExplSyntaxOn
\pagecolor{black!\fpeval{100-3200/255}}
-\color{black!10} \color_select:n{black!10} \appendix
+\appendix
\colorlet{bg}{black!\fpeval{100-2400/255}}
\hypersetup
{ filecolor = DarkGreen!40, urlcolor = MidnightBlue!40,
@@ -8,10 +8,12 @@
\cfoot{\color_select:n{black!10} \thepage}
\lhead{} \rhead{} \let \headrule \relax
\pagestyle{fancy}
+\color{black!10} \color_select:n{black!10}
\ExplSyntaxOff
+\changefontsize[10.5pt]{8.5pt}
\section{实现细节}
-恭喜你已经阅读到了这部分!如你所见,页面已经变成了程序员视力友好颜色. 下面这些内容面向 \hologo{LaTeX} 宏包开发者或者对 \hologo{hduthesis} 开发感兴趣的用户,如果您有任何意见或建议或想法,都欢迎到 \href{https://github.com/myhsia/hduthesis/issues}{GitHub} 提交Issue. 您对模板开发或者本文档的撰写的任何贡献都会受到诚挚欢迎!
+恭喜你已经阅读到了这部分!如你所见,页面已经变成了程序员视力友好颜色. 下面这些内容面向 \hologo{LaTeX} 宏包开发者或者对 \hologo{hduthesis} 开发感兴趣的用户\footnote{\color{black!10}本部分由 GitHub Copilot 生成并由作者人工校验.},如果您有任何意见或建议或想法,都欢迎到 \href{https://github.com/myhsia/hduthesis/issues}{GitHub} 提交Issue. 您对模板开发或者本文档的撰写的任何贡献都会受到诚挚欢迎!
\setlength {\parindent} {0em}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a1.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a1.tex
index 4bb5fd10bef..dda42894425 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a1.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a1.tex
@@ -19,7 +19,6 @@
\end{minted}
兼容 \hologo{TeX} Live 2022 及之后的版本. 当对应命令不存在时,在已有命令基础上新增变体
-
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_if_exist:NF \seq_set_split:Nne
{ \cs_generate_variant:Nn \seq_set_split:Nnn { Nne } }
@@ -31,50 +30,50 @@
{ \cs_generate_variant:Nn \tl_gset:Nn { Ne } }
\end{minted}
-定义新命令 \cs{hduthesis_msg_new:nn} 和 \cs{hduthesis_msg_error:nn} 用于新增错误消息和将错误消息广播到 Workspace
+定义新命令 \cs{hduthesis_msg_new:nn}、\cs{hduthesis_msg_error:nn} 和 \cs{hduthesis_msg_warning:nn} 用于新增错误/警告消息,并将消息广播到 Workspace.
+同时为 \cs{hduthesis_msg_error:nn} 和 \cs{hduthesis_msg_warning:nn} 定义变体 \cs{hduthesis_msg_error:nx} 和 \cs{hduthesis_msg_warning:nx},用于在消息中使用参数时展开参数
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_new_protected:Npn \hduthesis_msg_new:nn #1#2
{ \msg_new:nnn { hduthesis } {#1} {#2} }
\cs_new_protected:Npn \hduthesis_msg_error:nn #1#2
{ \msg_error:nnn { hduthesis } {#1} {#2} }
+ \cs_generate_variant:Nn \hduthesis_msg_error:nn { nx }
+ \cs_new_protected:Npn \hduthesis_msg_warning:nn #1#2
+ { \msg_warning:nnn { hduthesis } {#1} {#2} }
+ \cs_generate_variant:Nn \hduthesis_msg_warning:nn { nx }
\end{minted}
-新增错误消息:用户协议
+新增错误消息 \cs{not found module}、\cs{unknown mode} 和 \cs{Users Agreement},分别对应``模块未找到''、``未知模式''和``用户协议''
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \hduthesis_msg_new:nn { 用户协议 }
+ \hduthesis_msg_new:nn { not found module }
+ { The~hduthesis~module~`#1'~not~found. }
+ \hduthesis_msg_new:nn { unknown mode }
+ { Unknown~hduthesis~mode~`#1',~ loading~mode~`thesis'~instead. }
+ \hduthesis_msg_new:nn { Users Agreement }
{ \exp_not:n
{
- hduThesiS~ 编译受阻.~
- 使用模板前请认真阅读模板说明文档封面上的「用户协议」~
- 模板作者不对使用本模板产生的格式审查问题负责~
- 添加选项 `agreed'[\documentclass[agreed]{hduthesis}]~
- 即可顺利编译并默认代表您已同意本协议.~ 祝君科研顺利!~
- 如遇问题,可邮件反馈至 xiamyphys@gmail.com.
+ 编译受阻!~
+ 使用模板前请阅读用户手册封面上的「用户协议」~
+ !!!模板作者(@myhsia)不对使用本模板产生的格式审查问题负责!!!~
+ 如果您同意用户协议,在全局选项中添加 `agreed' 即可解除本错误~
+ 欢迎您通过邮件(myhsia@hdu.edu.cn)或GitHub提交反馈意见
}
}
\end{minted}
-对命令 \cs{hduthesis_msg_error:nn} 新增 \cmd{nx} 变体
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \cs_generate_variant:Nn \hduthesis_msg_error:nn { nx }
-\end{minted}
-
-新增错误消息:未找到模块
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \hduthesis_msg_new:nn { not found module }
- { The~hduthesis~module~`#1'~not~found. }
-\end{minted}
-
-定义命令 \cs{hduthesis_load_module:n} 用于加载模块,若模块不存在则输出错误消息
+定义新命令 \cs{hduthesis_load_module:n} 用于加载模块,若模块不存在则报错
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_new_protected_nopar:Npn \hduthesis_load_module:n #1
{
- \file_if_exist_input:nF { hduthesis-##1-module.code.tex }
- { \hduthesis_msg_error:nn { not found module } {##1} }
+ \clist_map_inline:nn {#1}
+ {
+ \file_if_exist_input:nF { hduthesis-##1-module.code.tex }
+ { \hduthesis_msg_error:nn { not found module } {##1} }
+ }
}
\end{minted}
-定义命令 \cs{hduthesis_provide_module:n} 用于提供模块
+定义新命令 \cs{hduthesis_provide_module:n} 用于提供模块
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_new_protected_nopar:Npn \hduthesis_provide_module:n #1
{
@@ -85,19 +84,18 @@
\end{minted}
定义新数组 \cs{g__hdu_base_class_options_clist},用于存储文档类选项
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines, breaklines ] {tex}
\clist_new:N \g__hdu_base_class_options_clist
\end{minted}
定义文档类选项的键:
\begin{enumerate}
\item 布尔(Bool)值 \keys{\cmdmac~ agreed}:用户是否同意用户协议,初始值 \cmd{false}. 一旦输入 \cmd{agreed} 选项,则将 \cmd{agreed} 设置为 \cmd{true},即 \cmd{agreed} 等价于 \cmd{agreed = true}
- \item 布尔(Bool)值 \keys{\cmdmac~ l3doc}:是否启用 \cls{l3doc} 文档类,初始值 \cmd{false}. 一旦输入 \cmd{l3doc} 选项,则将 \cmd{l3doc} 设置为 \cmd{true},即 \cmd{l3doc} 等价于 \cmd{l3doc = true}
- \item 布尔(Bool)值 \keys{\cmdmac~ stationery}:是否启用 \cls{letter} 文档类,初始值 \cmd{false}. 一旦输入 \cmd{stationery} 选项,则将 \cmd{stationery} 设置为 \cmd{true},即 \cmd{stationery} 等价于 \cmd{stationery = true}
+ \item 令牌(token list)\keys{\cmdmac~ mode}:模式,可选值为 \cmd{thesis}、\cmd{l3doc}、\cmd{stationery} 和 \cmd{beamer}
\item 令牌(token list)\keys{\cmdmac~ math-font}:数学字体
- \item 令牌(token list) \keys{\cmdmac~ CJKmain-font}:中文主字体
- \item 令牌(token list) \keys{\cmdmac~ CJKsans-font}:中文无衬线字体
- \item 令牌(token list) \keys{\cmdmac~ CJKmono-font}:中文等宽字体
+ \item 令牌(token list)\keys{\cmdmac~ CJKmain-font}:中文主字体
+ \item 令牌(token list)\keys{\cmdmac~ CJKsans-font}:中文无衬线字体
+ \item 令牌(token list)\keys{\cmdmac~ CJKmono-font}:中文等宽字体
\item 未知选项 \keys{\cmdmac~ unknown}:将未知选项交给 \cs{__hduthesis_unknown_option:n} 处理
\end{enumerate}
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
@@ -106,12 +104,7 @@
agreed .bool_set:N = \g__hduthesis_agreement_bool,
agreed .initial:n = false,
agreed .default:n = true,
- l3doc .bool_set:N = \g__hduthesis_doc_bool,
- l3doc .initial:n = false,
- l3doc .default:n = true,
- stationery .bool_set:N = \g__hduthesis_stationery_bool,
- stationery .initial:n = false,
- stationery .default:n = true,
+ mode .tl_set:N = \g__hduthesis_mode_tl,
math-font .tl_set:N = \g__hduthesis_math_font,
CJKmain-font .tl_set:N = \g__hduthesis_main_CJK_font,
CJKsans-font .tl_set:N = \g__hduthesis_sans_CJK_font,
@@ -120,20 +113,18 @@
}
\end{minted}
-定义命令 \cs{__hduthesis_unknown_option:n} 用于处理未知选项
-
-若未知选项为空,则将 \cs{l_keys_key_str} 加入 \cs{g__hdu_base_class_options_clist} 列表;否则设置 \cs{l_keys_key_str} 为未知选项,并将其加入 \cs{g__hdu_base_class_options_clist} 列表
+定义新命令 \cs{__hduthesis_unknown_option:n} 用于处理未知选项. 若未知选项为空,则将 \cs{l_keys_key_str} 加入 \cs{g__hdu_base_class_options_clist} 列表;否则设置 \cs{l_keys_key_str} 为未知选项,并将其加入 \cs{g__hdu_base_class_options_clist} 列表
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_new_protected_nopar:Npn \__hduthesis_unknown_option:n #1
{
- \tl_if_empty:nTF { #1 }
- {
- \clist_gput_right:NV \g__hdu_base_class_options_clist \l_keys_key_str
- }
- {
- \exp_args:NNx \clist_gput_right:Nn \g__hdu_base_class_options_clist
- { \l_keys_key_str = \exp_not:n {#1} }
- }
+ \tl_if_empty:nTF {#1}
+ {
+ \clist_gput_right:NV \g__hdu_base_class_options_clist \l_keys_key_str
+ }
+ {
+ \exp_args:NNx \clist_gput_right:Nn \g__hdu_base_class_options_clist
+ { \l_keys_key_str = \exp_not:n {#1} }
+ }
}
\end{minted}
@@ -142,22 +133,34 @@
\ProcessKeyOptions [ hduthesis / classoption ]
\end{minted}
-若启用 \cmd{l3doc} 选项,加载 \cls{l3doc} 文档类为基底,加载 \file{hdu.l3doc} 模块并结束输入
+若令牌 \cs{g__hduthesis_mode_tl} 为空或者不是 \cmd{thesis}、\cmd{l3doc}、\cmd{stationery} 或 \cmd{beamer},则报错``未知模式''
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \bool_if:nT
+ {
+ !\str_if_empty_p:N \g__hduthesis_mode_tl &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { thesis } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { l3doc } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { stationery } &&
+ % !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { exam } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { beamer }
+ }
+ { \hduthesis_msg_warning:nx { unknown mode } { \g__hduthesis_mode_tl } }
+\end{minted}
+若模式为 \cmd{l3doc},则使用 \cls{l3doc} 文档类,并加载 \file{hdu.l3doc} 模块
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \bool_if:NT \g__hduthesis_doc_bool
+ \str_if_eq:eeT { \g__hduthesis_mode_tl } { l3doc }
{
- \PassOptionsToClass { 11pt, letterpaper } { l3doc }
+ \PassOptionsToClass { 11pt, letterpaper, kernel } { l3doc }
\exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { l3doc }
\hduthesis_load_module:n { hdu.l3doc }
\endinput
}
\end{minted}
-若启用 \cmd{stationery} 选项,加载 \cls{letter} 文档类为基底,加载 \file{hdu.stationery} 模块并结束输入
-
+若模式为 \cmd{stationery},则使用 \cls{letter} 文档类,并加载 \file{hdu.stationery} 模块
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \bool_if:NT \g__hduthesis_stationery_bool
+ \str_if_eq:eeT { \g__hduthesis_mode_tl } { stationery }
{
\PassOptionsToClass { 12pt } { letter }
\exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { letter }
@@ -166,55 +169,58 @@
}
\end{minted}
-为基本文档类 \cls{ctexrep} 添加选项 \keys{a4paper, zihao = -4},为 \pkg{xeCJK} 宏包添加选项 \keys{quiet, no-math},加载 \cls{ctexrep} 文档类为基底,并用 \cs{exp_args:NNV} 将未知选项展开加载到 \cls{ctexrep} 文档类上
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \PassOptionsToClass { a4paper, zihao = -4 } { ctexrep }
- \PassOptionsToPackage { quiet, no-math } { xeCJK }
- \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { ctexrep }
-\end{minted}
+% % \str_if_eq:eeT { \g__hduthesis_mode_tl } { exam }
+% % {
+% % \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { article }
+% % \hduthesis_load_module:n { hdu.exam }
+% % \endinput
+% % }
-如果用户未确认用户协议,输出错误消息,并不加载 \pkg{hyperref} 宏包,以免因``遇到报错而停止编译''而产生额外的 \pkg{hyperref} 警告. 否则,加载 \pkg{hyperref} 宏包,设置 \pkg{hyperref} 宏包选项
+若模式为 \cmd{beamer},则使用 \cls{beamer} 文档类,并加载 \file{hdu.beamer} 模块
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \bool_if:NTF \g__hduthesis_agreement_bool
+ \str_if_eq:eeT { \g__hduthesis_mode_tl } { beamer }
{
- \RequirePackage{hyperref}
- \pdfstringdefDisableCommands
- {
- \def \cite#1 {<#1>}
- \def \hologoRobust#1 {<#1>}
- }
- \AtBeginDocument
- { \hypersetup { hidelinks, pdfproducer = hduThesiS~by~Mingyu~Xia } }
- } { \hduthesis_msg_error:nn { 用户协议 } { 未确认 } }
+ \PassOptionsToClass { aspectratio = 2013 } { beamer }
+ \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { beamer }
+ \usetheme{hdu}
+ \endinput
+ }
\end{minted}
-预加载部分常用包,设置 \pkg{pgfplots} 宏包版本,设置 \pkg{hologo} 宏包字体,设置 \cs{graphicx} 包的相对路径
+若模式为 \cmd{thesis} 或者是除了 \cmd{l3doc}、\cmd{stationery} 和 \cmd{beamer} 之外的未知模式,则使用 \cls{ctexrep} 文档类. 如果用户未同意用户协议,则报错``Users Agreement'';如果用户同意用户协议,则加载 \pkg{hyperref} 宏包,并对其进行设置.\footnote{\color{black!10}此举是防止因``遇到``Users Agreement''报错而停止编译产生在只进行一次编译的情况下的\pkg{hyperref}警告} 加载 \file{typeset} 和 \file{layout} 模块,根据学号长度加载 \file{bc.config} 或 \file{pg.config} 模块
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \RequirePackage { siunitx, circuitikz, pgfplots, listings,
- hologo, lipsum, zhlipsum, booktabs, multicol }
- \pgfplotsset { compat = newest }
- \hologoFontSetup { general = \sffamily }
- \graphicspath
+ \bool_if:nT
{
- {./figure/}{./figures/}{./image/}{./images/}
- {./graphics/}{./graphic/}{./pictures/}{./picture/}
+ \str_if_eq_p:ee { \g__hduthesis_mode_tl } { thesis } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { l3doc } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { stationery } ||
+ % !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { exam } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { beamer }
}
-\end{minted}
-
-加载 \cmd{typeset} 和 \cmd{layout} 模块.
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \hduthesis_load_module:n { typeset }
- \hduthesis_load_module:n { layout }
-\end{minted}
-
-定义命令 \cs{__hduthesis_docinfo_degree_if_aux} 用于判断学号长度,若学号长度为 8,则加载 \cmd{bc.config} 模块;否则加载 \cmd{bc.config} 或 \cmd{pg.config} 模块. 此命令将用在 \file{hduthesis-docinfo-module.code} 模块中,因为学号长度的判断必须发生在设置文档信息后
-
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
- \cs_new_protected:Nn \__hduthesis_docinfo_degree_if_aux:
{
- \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 }
- { \hduthesis_load_module:n { bc.config } }
- { \hduthesis_load_module:n { pg.config } }
+ \PassOptionsToClass { a4paper, zihao = -4 } { ctexrep }
+ \PassOptionsToPackage { quiet, no-math } { xeCJK }
+ \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { ctexrep }
+ \bool_if:NTF \g__hduthesis_agreement_bool
+ {
+ \RequirePackage{hyperref}
+ \pdfstringdefDisableCommands
+ {
+ \def \cite#1 {<#1>}
+ \def \hologoRobust#1 {<#1>}
+ }
+ \AtBeginDocument
+ { \hypersetup { hidelinks, pdfproducer = hduThesiS~by~Mingyu~Xia } }
+ } { \hduthesis_msg_error:nn { Users Agreement } { Unconfirmed } }
+ \hduthesis_load_module:n { typeset }
+ \hduthesis_load_module:n { layout }
+ \cs_new_protected:Nn \__hduthesis_docinfo_degree_if_aux:
+ {
+ \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 }
+ { \hduthesis_load_module:n { bc.config } }
+ { \hduthesis_load_module:n { pg.config } }
+ }
+ \endinput
}
\end{minted}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a2.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a2.tex
index 8c78b072a84..e43d9db896c 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a2.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a2.tex
@@ -5,6 +5,27 @@
\hduthesis_provide_module:n {typeset}
\end{minted}
+调用 \pkg{circuitikz}, \pkg{pgfplots}, \pkg{listings}, \pkg{hologo}, \pkg{lipsum}, \pkg{zhlipsum}, \pkg{booktabs}, \pkg{multicol} 宏包
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RequirePackage { circuitikz, pgfplots, listings, hologo,
+ lipsum, zhlipsum, booktabs, multicol }
+\end{minted}
+
+设置 \pkg{pgfplots} 宏包的兼容性为最新版本,设置 \pkg{hologo} 宏包的全局字体为无衬线字体
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \pgfplotsset { compat = newest }
+ \hologoFontSetup { general = \sffamily }
+\end{minted}
+
+设置图片文件夹的常用相对路径
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \graphicspath
+ {
+ {./figure/}{./figures/}{./image/}{./images/}
+ {./graphics/}{./graphic/}{./pictures/}{./picture/}
+ }
+\end{minted}
+
设置行间距
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\linespread{1.39}
@@ -33,7 +54,7 @@
[
Extension = .otf, BoldItalicFont = *-bolditalic,
UprightFont = *-regular, BoldFont = *-bold,
- ItalicFont = *-italic, Scale = .9,
+ ItalicFont = *-italic, Scale = .9
]
\end{minted}
@@ -47,7 +68,7 @@
\file_if_exist:nTF { physics2.sty }
{
\RequirePackage{physics2}
- \usephysicsmodule{ ab, braket, ab.legacy, op.legacy, bm-um.legacy }
+ \usephysicsmodule{ ab, braket, op.legacy, bm-um.legacy }
} { \RequirePackage{bm} }
\end{minted}
@@ -82,7 +103,7 @@
{ \exp_last_unbraced:No \setCJKmonofont \g__hduthesis_mono_CJK_font }
\end{minted}
-结束 \file{hduthesis-typeset-module.code} 文件
+结束模块 \file{hduthesis-typeset-module.code} 文件
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\endinput
-\end{minted}
+\end{minted} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a3.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a3.tex
index 979f48225f4..a42d9452011 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a3.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a3.tex
@@ -154,7 +154,7 @@
}
\end{minted}
-定义处理文档信息的辅助命令. 其中论文标题与作者信息为一维数组,指导教师信息为二维数组.
+定义处理文档信息的辅助命令. 其中论文标题与作者信息为一维数组,指导教师信息为二维数组. 如果用户未同意用户协议,则清空参考文献来源,以避免加载 \pkg{biblatex} 宏包. 如果参考文献来源为空,则定义 \cs{printbibliography} 命令为输出参考文献空章节,并定义 \cs{cite} 命令为输出参考文献引用标记. 否则加载 \pkg{gbt7714} 宏包,设置参考文献样式为 \texttt{gbt7714-numerical},定义 \cs{printbibliography} 命令为输出参考文献并将其加入目录.
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\cs_set_protected_nopar:Nn \__hduthesis_docinfo_process_aux:
{
@@ -175,20 +175,25 @@
\bool_if:NF \g__hduthesis_agreement_bool
{ \tl_clear:N \l__docinfo_bibsource_tl }
\tl_if_empty:NTF \l__docinfo_bibsource_tl
- {
- \newcommand*\printbibliography{\chapter*{参考文献}}
- \renewcommand*\cite[1]{\textsuperscript{[##1]}}
- }
- {
- \RequirePackage[sort&compress]{gbt7714}
- \bibliographystyle{gbt7714-numerical}
- \dim_set:Nn \bibsep {.35ex}
- \newcommand*\printbibliography
- {
- \nocite{*} \bibliography { \l__docinfo_bibsource_tl }
- \addcontentsline{toc}{chapter}{参考文献}
- }
- }
+ {
+ \newcommand*\printbibliography{\chapter*{参考文献}}
+ \newcounter {citecount}
+ \renewcommand*\cite[1]
+ {
+ \refstepcounter{citecount}
+ \textsuperscript{[\thecitecount]}
+ }
+ }
+ {
+ \RequirePackage[sort&compress]{gbt7714}
+ \bibliographystyle{gbt7714-numerical}
+ \dim_set:Nn \bibsep {.35ex}
+ \newcommand*\printbibliography
+ {
+ \bibliography { \l__docinfo_bibsource_tl }
+ \addcontentsline{toc}{chapter}{参考文献}
+ }
+ }
}
\end{minted}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a4.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a4.tex
index e6f25c28e80..30e1373c56e 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a4.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a4.tex
@@ -1,4 +1,240 @@
\subsection{\file{hduthesis-bc.config-module.code} 的实现}
-\cmd{bc.config} 模块实现的过程略,主要是对前面定义的命令进行调用,并通过 \cs{ctexset}
-或对标准文档类 \cls{report} 中的命令进行重定义. \ No newline at end of file
+由于模块 \file{bc.config} 是通过命令 \cs{__hduthesis_docinfo_degree_if_aux:} 在命令 \cs{DocInfo} 中加载的,所以需要在此模块前后用 \cmd{\ExplSyntaxOn \makeatletter} 和 \cmd{\makeatother \ExplSyntaxOff} 包裹.
+
+提供模块 \file{bc.config} 文件
+\begin{minted} [ linenos, bgcolor = bg, breaklines ] {tex}
+ \hduthesis_provide_module:n {bc.config}
+\end{minted}
+
+设置页面布局、页眉、目录页码格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \geometry { top = 3.25cm, bottom = 2.4cm, left = 4cm, right = 2cm,
+ headheight = 15pt, headsep = .72cm }
+ \fancyhead[C]
+ { \raisebox { .12ex } { \small 杭州电子科技大学 \l__docinfo_entitle_tl } }
+ \hook_gput_code:nnn {cmd/tableofcontents/before} { . }
+ {
+ \clearpage
+ \pagenumbering{Roman} \cfoot{\small \thepage}
+ }
+ \hook_gput_code:nnn { cmd/tableofcontents/after } { . }
+ {
+ \thispagestyle{fancy} \clearpage
+ \pagenumbering{arabic} \cfoot{}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_cover_bc_aux:} 重定义 \cs{maketitle} 命令,用于生成封面,并对其单独设置页面布局
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RenewDocumentCommand \maketitle {}
+ {
+ \newgeometry{ margin = 3cm }
+ \begin{titlepage}
+ \__hduthesis_cover_bc_aux:
+ \end{titlepage}
+ \restoregeometry
+ }
+\end{minted}
+
+定义 \cs{l__hduthesis_grade_int} 保存毕业年份,根据当前月份判断毕业年份:如果当前月份小于 9 月,则今年毕业;否则判定为明年毕业
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \int_new:N \l__hduthesis_grade_int
+ \int_set:Nn \l__hduthesis_grade_int
+ {
+ \int_compare:nNnTF {\c_sys_month_int} < 9
+ {\c_sys_year_int} {\int_eval:n {\c_sys_year_int + 1}}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_cover_bc_aux:} 重定义封面页的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Nn \__hduthesis_cover_bc_aux:
+ {
+ \begin{center}
+ \vspace*{14\p@}
+ \includegraphics[ width = .64\linewidth ]{hdutitle}
+ \par \vspace*{36\p@}
+ \scalebox{2.75}
+ {
+ \textbf
+ {
+ \__hduthesis_cover_spread_box:nn
+ { .205\paperwidth } { \l__docinfo_entitle_tl }
+ }
+ }
+ \par \vspace*{1.5\baselineskip}
+ { \LARGE (\int_use:N \l__hduthesis_grade_int \bfseries 届) }
+ \par \vspace*{3.0\baselineskip}
+ \begin{tabular}
+ {
+ >{\large\bfseries}p{5.5\ccwd}@{}
+ >{\large\centering\arraybackslash\kaishu}p{.65\linewidth}@{}
+ }
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 题目 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth } { \@title }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 学院 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ { \l__docinfo_department_tl }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 专业 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ { \l__docinfo_major_tl }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 班级 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ { \l__docinfo_class_tl }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 学号 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ { \l__docinfo_stdntid_tl }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 学生姓名 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth } { \@author }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 指导教师 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ { \l__docinfo_cnsupervisor_tl \quad \l__docinfo_cnrole_tl }\\[5.2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 完成日期 } &
+ \__hduthesis_cover_center_box:nn { .95\linewidth }
+ {
+ \textsf{\int_use:N \c_sys_year_int} 年
+ \textsf{\int_use:N \c_sys_month_int} 月
+ }
+ \end{tabular}
+ \end{center}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_commitment_bc_aux:} 定义 \cs{commitment} 命令,用于生成承诺书页面. 该命令接收一个可选参数,用于添加签名图片与日期
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \NewDocumentCommand \commitment { O{} }
+ {
+ \newgeometry{ margin = 3cm }
+ \titlepage
+ \__hduthesis_commitment_bc_aux:n {#1}
+ \endtitlepage
+ \restoregeometry
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_commitment_bc_aux:} 定义承诺书页面的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Npn \__hduthesis_commitment_bc_aux:n #1
+ {
+ \vspace*{65\p@}
+ \begin{center}
+ \@beginparpenalty \@lowpenalty
+ \Large \textsf
+ { \bfseries \__hduthesis_cover_spread_box:nn { 6\ccwd }{ 诚信承诺 } }
+ \@endparpenalty \@M
+ \end{center}
+ \vspace*{.4\baselineskip} \par
+ \linespread{2.1}
+ { \semilarge
+ 我谨在此承诺:本人所写的毕业论文《\@title 》均系本人独立完成,
+ 没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。
+ \par\vspace*{\baselineskip} \bfseries\sffamily
+ \hskip.48\linewidth 承诺人(签名):
+ \__hduthesis_signature_process_aux:nnn {#1}{1}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ \par \vspace*{.5\baselineskip}
+ \hskip \dim_eval:n { .48\linewidth - 1em }
+ \makebox [ 3em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{1}{1} } 年
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{1}{2} } 月
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{1}{3} } 日
+ }
+ }
+\end{minted}
+
+重新定义摘要环境,该环境接收一个可选参数,用于生成中英文摘要页面,默认为英文页面
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RenewDocumentEnvironment {abstract} { O{en} }
+ {
+ \str_if_eq:nnT {#1} {en}
+ {
+ \tl_set:Nn \l__keywords_name_tl {Keywords:~}
+ \tl_set:Nn \l__keywords_sep_tl {;~}
+ \@beginparpenalty\@lowpenalty
+ \chapter*{\normalfont\bfseries ABSTRACT}
+ }
+ \str_if_eq:nnT {#1} {cn}
+ {
+ \tl_set:Nn \l__keywords_name_tl {\textsf{关键词:}}
+ \tl_set:Nn \l__keywords_sep_tl {;}
+ \@beginparpenalty\@lowpenalty
+ \chapter*{摘\qquad 要}
+ }
+ }
+ {
+ \tl_clear:N \l__abstract_name_tl
+ \cfoot{} \clearpage
+ }
+\end{minted}
+
+新建一个列表 \cs{l__abstract_keywords_clist} 保存关键词,定义 \cs{keywords} 命令,通过 \env{abstract} 环境的可选参数来以不同的分隔符输出关键词
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \clist_new:N \l__abstract_keywords_clist
+ \NewDocumentCommand \keywords { m }
+ {
+ \par \vspace*{\baselineskip}
+ \noindent\textbf{\l__keywords_name_tl}
+ \clist_set:Nn \l__abstract_keywords_clist {#1}
+ \clist_use:Nn \l__abstract_keywords_clist {\l__keywords_sep_tl}
+ }
+\end{minted}
+
+加载 \pkg{tocloft} 宏包,重新定义目录页的格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RequirePackage{tocloft}
+ \renewcommand \contentsname {\hfill 目 \qquad 录 \hfill}
+ \renewcommand* \cfttoctitlefont {\sffamily\semiLarge}
+ \dim_set:Nn \cftbeforetoctitleskip {3pt}
+ \dim_set:Nn \cftaftertoctitleskip {24pt}
+ \dim_set:Nn \cftbeforechapskip {1pt}
+ \dim_set:Nn \cftbeforesecskip {-.2pt}
+\end{minted}
+
+对 \hologo{LaTeX2e} 中用于生成目录导向线的宏 \cs{@dottedtocline} 打补丁,将导向线改为 ``dash'' 样式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \patchcmd { \@dottedtocline }
+ { \leaders \hbox { $\m@th\mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$ } }
+ { \kern 4pt \leaders \hbox { $\m@th\mkern .4 mu\hbox{-}\mkern .4 mu$ } } {}{}
+\end{minted}
+
+更改目录章节的项目间距、字体格式、导向线密度和目录深度
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \renewcommand* \l@chapter {\@dottedtocline{1}{0em}{1.6em}}
+ \renewcommand* \l@section {\@dottedtocline{1}{2.3em}{2.1em}}
+ \renewcommand* \@dotsep {1.7}
+ \renewcommand* \@pnumwidth {2.5ex}
+ \renewcommand* \cftchapfont {\normalfont}
+ \setcounter{tocdepth}{1}
+\end{minted}
+
+使用 \pkg{ctex} 宏包设置章节标题格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \ctexset
+ {
+ chapter =
+ {
+ fixskip = true, name = {}, beforeskip = 32pt, afterskip = 32pt,
+ format+ = \sffamily\semiLarge, pagestyle = fancy
+ },
+ section =
+ {
+ fixskip = true, format = \sffamily\large, beforeskip = 2ex, afterskip = 2.75ex
+ },
+ subsection =
+ {
+ fixskip = true, format = \sffamily\semilarge, beforeskip = 2ex, afterskip = 2.75ex
+ }
+ }
+\end{minted}
+
+结束模块 \file{hduthesis-bc.config-module.code} 文件
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \endinput
+\end{minted} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a5.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a5.tex
index a23e8009665..d55cdf54ad7 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a5.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a5.tex
@@ -1,4 +1,334 @@
\subsection{\file{hduthesis-pg.config-module.code} 的实现}
-\cmd{pg.config} 模块实现的过程略,主要是对前面定义的命令进行调用,并通过 \cs{ctexset}
-或对标准文档类 \cls{report} 中的命令进行重定义. \ No newline at end of file
+由于模块 \file{pg.config} 是通过命令 \cs{__hduthesis_docinfo_degree_if_aux:} 在命令 \cs{DocInfo} 中加载的,所以需要在此模块前后用 \cmd{\ExplSyntaxOn \makeatletter} 和 \cmd{\makeatother \ExplSyntaxOff} 包裹.
+
+提供模块 \file{pg.config} 文件
+\begin{minted} [ linenos, bgcolor = bg, breaklines ] {tex}
+ \hduthesis_provide_module:n {pg.config}
+\end{minted}
+
+设置页面布局、页眉、目录页码格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \geometry { top = 2.8cm, bottom = 3.2cm, left = 3.2cm, right = 3.2cm,
+ headheight = 15pt, headsep = .72cm, footskip = 1.5cm }
+ \fancyhead[C]
+ { \raisebox { .12ex } { \small 杭州电子科技大学硕士学位论文 } }
+ \hook_gput_code:nnn { cmd/tableofcontents/after } { . }
+ {
+ \clearpage
+ \pagenumbering{arabic}
+ \cfoot{\small \thepage}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_cover_pg_aux:} 重定义 \cs{maketitle} 命令,用于生成封面与扉页,并对其单独设置页面布局
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RenewDocumentCommand \maketitle {}
+ {
+ \newgeometry{margin = 2.75cm}
+ \begin{titlepage}
+ \__hduthesis_cover_pg_aux:
+ \end{titlepage}
+ \titlepage
+ \__hduthesis_cnoverleaf_pg_aux:
+ \endtitlepage
+ \titlepage
+ \__hduthesis_enoverleaf_pg_aux:
+ \endtitlepage
+ \restoregeometry
+ \pagenumbering{Roman}
+ \cfoot {\small \thepage}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_cover_pg_aux:} 重定义封面页的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Nn \__hduthesis_cover_pg_aux:
+ {
+ \begin{center}
+ \null
+ \includegraphics[height = 2.35cm]{hdutitle}
+ \par \vspace*{40\p@}
+ { \LARGE\__hduthesis_cover_spread_box:nn {.575\linewidth} {硕士学位论文} }
+ \par\vspace*{100\p@}
+ \semiLarge 题 \qquad 目:
+ \__hduthesis_cover_center_box:nn { .75\linewidth } { \kaishu \@title }
+ \vspace*{24\p@}\par
+ \begin{tabular}
+ { >{\semiLarge\centering\arraybackslash}p{4\ccwd}@{}
+ >{\semiLarge\centering\arraybackslash\kaishu}p{.65\linewidth}@{} }
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 研究生 } &
+ \__hduthesis_cover_center_box:nn { .96\linewidth } { \@author }\\
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 专业 } &
+ \__hduthesis_cover_center_box:nn { .96\linewidth }
+ { \l__docinfo_major_tl }\\
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { 指导教师 } &
+ \__hduthesis_cover_center_box:nn { .96\linewidth }
+ {
+ \l__docinfo_cnsupervisor_tl \qquad \l__docinfo_cnrole_tl
+ }\\[13.5ex]
+ \semilarge 完成日期 &
+ \__hduthesis_cover_center_box:nn { .96\linewidth }
+ { \semilarge
+ \textsf{\int_use:N \c_sys_year_int} 年
+ \textsf{\int_use:N \c_sys_month_int} 月
+ }
+ \end{tabular}
+ \end{center}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_cnoverleaf_pg_aux:} 重定义中文扉页的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Nn \__hduthesis_cnoverleaf_pg_aux:
+ {
+ \begin{center}
+ \vspace*{25\p@}
+ { \LARGE 杭州电子科技大学硕士学位论文 }
+ \vspace*{140\p@} \par
+ \begin{spacing}{1.15}
+ \huge\textsf{ \@title }
+ \end{spacing}
+ \vspace*{128\p@} \par
+ \begin{tabular}{>{\semiLarge}p{6.25\ccwd}>{\semiLarge\kaishu}l}
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } {研究生}:&
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } { \@author }\\[2ex]
+ \__hduthesis_cover_spread_box:nn { 4\ccwd } {指导教师}:&
+ \__hduthesis_cover_spread_box:nn { 4\ccwd }
+ { \l__docinfo_cnsupervisor_tl } \hskip1.5em \l__docinfo_cnrole_tl
+ \end{tabular}
+ \par \vspace{60\p@} \semilarge
+ \textsf{\int_use:N \c_sys_year_int} \kaishu 年
+ \textsf{\int_use:N \c_sys_month_int} \kaishu 月
+ \end{center}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_enoverleaf_pg_aux:} 重定义英文扉页的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Nn \__hduthesis_enoverleaf_pg_aux:
+ {
+ \begin{center}
+ \vspace*{16\p@}{\bfseries \semilarge
+ Dissertation~Submitted~to~Hangzhou~Dianzi~University\\[.8ex]
+ for~the~Degree~of~Master}
+ \vspace*{120\p@} \par
+ \begin{spacing}{1.12}
+ \huge\bfseries\l__docinfo_entitle_tl
+ \end{spacing}
+ \vspace*{112\p@} \par
+ \begin{tabular}
+ { >{\bfseries\large}l
+ >{\bfseries\large}l
+ }
+ \__hduthesis_cover_spread_box:nn { 5em } {Candidate:~} &
+ \l__docinfo_enauthor_tl\\[3ex]
+ \__hduthesis_cover_spread_box:nn { 5em } {Supervisor:~} &
+ \l__docinfo_enrole_tl{}~ \l__docinfo_ensupervisor_tl
+ \\[11ex]
+ \end{tabular}
+ \vspace*{8\p@}\par
+ \bfseries \large
+ \clist_item:Nn
+ \g_system_month_clist { \int_use:N \c_sys_month_int },~
+ \int_use:N \c_sys_year_int
+ \end{center}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_commitment_pg_aux:} 定义 \cs{commitment} 命令,用于生成承诺书页面. 该命令接收一个可选参数,用于添加签名图片与日期
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \NewDocumentCommand \commitment { O{} }
+ {
+ \cfoot {}
+ \newgeometry{margin = 2.75cm}
+ \titlepage
+ \__hduthesis_commitment_pg_aux:n {#1}
+ \endtitlepage
+ \restoregeometry
+ \cfoot {\small \thepage}
+ }
+\end{minted}
+
+使用辅助函数 \cs{__hduthesis_commitment_pg_aux:} 定义承诺书页面的内容
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \cs_new_protected_nopar:Npn \__hduthesis_commitment_pg_aux:n #1
+ {
+ \vspace*{-12\p@}
+ \begin{center}
+ \large
+ 杭州电子科技大学\\[1ex] 学位论文原创性声明和使用授权说明
+ \end{center}
+ \vspace*{20\p@}
+ \begin{center}
+ \semilarge 原创性声明
+ \end{center}
+ \par \vspace*{.4\baselineskip}
+ \begin{spacing}{1.65}
+ 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。
+ 除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。
+ 对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。\par
+ \noindent 申请学位论文与资料若有不实之处,本人承担一切相关责任。
+ \par \vspace*{1.25\baselineskip}
+ \noindent \makebox[.45\linewidth][l]
+ {
+ 论文作者签名:
+ \__hduthesis_signature_process_aux:nnn {#1}{1}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ }
+ 日期:
+ \makebox [ 2.5em ] [ l ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{1}{1} } 年
+ \makebox [ 2em ] { \__hduthesis_signature_process_aux:nnn {#1}{1}{2} } 月
+ \makebox [ 2em ] { \__hduthesis_signature_process_aux:nnn {#1}{1}{3} } 日
+ \par\vspace*{20\p@}
+ \begin{center}
+ \semilarge 学位论文使用授权说明
+ \end{center}
+ \par \vspace*{.4\baselineskip}
+ 本人完全了解杭州电子科技大学关于保留和使用学位论文的规定,
+ 即:研究生在校攻读学位期间论文工作的知识产权单位属杭州电子科技大学。
+ 本人保证毕业离校后,发表论文或使用论文工作成果时署名单位仍然为杭州电子科技大学。
+ 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,
+ 可以允许采用影印、缩印或其它复制手段保存论文。(保密论文在解密后遵守此规定)
+ \par \vspace*{1.25\baselineskip}
+ \noindent \makebox[.45\linewidth][l]
+ {
+ 论文作者签名:
+ \__hduthesis_signature_process_aux:nnn {#1}{2}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ }
+ 日期:
+ \makebox [ 2.5em ] [ l ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{1} } 年
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{2} } 月
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{3} } 日
+ \par \vspace*{\baselineskip}
+ \noindent \makebox[.45\linewidth][l]
+ {
+ 指导教师签名:
+ \__hduthesis_signature_process_aux:nnn {#1}{3}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ }
+ 日期:
+ \makebox [ 2.5em ] [ l ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{1} } 年
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{2} } 月
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{3} } 日
+ \end{spacing}
+ }
+\end{minted}
+
+重新定义摘要环境,该环境接收一个可选参数,用于生成中英文摘要页面,默认为英文页面
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RenewDocumentEnvironment {abstract} { O{en} }
+ {
+ \str_if_eq:nnT {#1} {en}
+ {
+ \tl_set:Nn \l__keywords_name_tl {Keywords:~}
+ \tl_set:Nn \l__keywords_sep_tl {,~}
+ \@beginparpenalty\@lowpenalty
+ \chapter*{\normalfont\bfseries Abstract}
+ \addcontentsline{toc}{chapter}{\bfseries Abstract}
+ }
+ \str_if_eq:nnT {#1} {cn}
+ {
+ \tl_set:Nn \l__keywords_name_tl {\textsf{关键词:}}
+ \tl_set:Nn \l__keywords_sep_tl {,}
+ \@beginparpenalty\@lowpenalty
+ \chapter*{摘要}
+ \addcontentsline{toc}{chapter}{摘要}
+ }
+ }
+ {
+ \tl_clear:N \l__abstract_name_tl
+ \clearpage
+ }
+\end{minted}
+
+新建一个列表 \cs{l__abstract_keywords_clist} 保存关键词,定义 \cs{keywords} 命令,通过 \env{abstract} 环境的可选参数来以不同的分隔符输出关键词
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \clist_new:N \l__abstract_keywords_clist
+ \NewDocumentCommand \keywords { m }
+ {
+ \par \vspace*{\baselineskip}
+ \noindent\textbf{\l__keywords_name_tl}
+ \clist_set:Nn \l__abstract_keywords_clist {#1}
+ \clist_use:Nn \l__abstract_keywords_clist {\l__keywords_sep_tl}
+ }
+\end{minted}
+
+加载 \pkg{tocloft} 宏包,重新定义目录页的格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RequirePackage{tocloft}
+ \renewcommand \contentsname {\hfill 目录 \hfill}
+ \renewcommand* \cfttoctitlefont{\sffamily\semiLarge}
+ \dim_set:Nn \cftbeforetoctitleskip {12pt}
+ \dim_set:Nn \cftaftertoctitleskip {24pt}
+ \dim_set:Nn \cftbeforechapskip {1pt}
+ \dim_set:Nn \cftbeforesecskip {-.2pt}
+\end{minted}
+
+对 \hologo{LaTeX2e} 中用于生成目录导向线的宏 \cs{@dottedtocline} 打补丁,更改导向线密度
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \patchcmd { \@dottedtocline }
+ { \leaders \hbox { $\m@th\mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$ } }
+ { \kern 4pt \leaders \hbox { $\m@th\mkern .4 mu\hbox{.}\mkern .4 mu$ } } {}{}
+\end{minted}
+
+更改目录章节的项目间距、字体格式、导向线密度和目录深度
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \renewcommand* \l@chapter {\@dottedtocline{1}{0em}{1.6em}}
+ \renewcommand* \l@section {\@dottedtocline{1}{2.3em}{2.1em}}
+ \renewcommand* \@dotsep {1.7}
+ \renewcommand* \@pnumwidth {2.5ex}
+ \renewcommand* \cftchapfont {\normalfont}
+ \setcounter{tocdepth}{1}
+\end{minted}
+
+使用 \pkg{ctex} 宏包设置章节标题格式
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \ctexset
+ {
+ chapter =
+ {
+ aftername = \hspace{.5\ccwd}, fixskip = true,
+ beforeskip = 32pt, afterskip = 32pt,
+ format+ = \sffamily\semiLarge,
+ pagestyle = fancy
+ },
+ section =
+ {
+ aftername = \hspace{.5\ccwd}, fixskip = true,
+ beforeskip = 2ex, afterskip = 2.75ex,
+ format = \sffamily\large
+ },
+ subsection =
+ {
+ aftername = \hspace{.5\ccwd}, fixskip = true,
+ beforeskip = 2ex, afterskip = 2.75ex,
+ format = \sffamily\semilarge
+ }
+ }
+\end{minted}
+
+结束模块 \file{hduthesis-pg.config-module.code} 文件
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \endinput
+\end{minted} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a6.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a6.tex
index 7efec03fbb5..0daa1160cf9 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a6.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a6.tex
@@ -2,7 +2,7 @@
模块 \file{hdu.l3doc} 的代码实现与之前类似,唯独不同的是添加了两个 \cs{hologo}:
-\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+\begin{minted} [ linenos, bgcolor = bg, breaklines ] {tex}
\def \HoLogo@hduThesiS #1
{
\raisebox{-.5pt}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a7.tex b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a7.tex
index a1d38534b2a..b445b4503dc 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a7.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/cha/source/a7.tex
@@ -1,8 +1,122 @@
\subsection{\file{hduthesis-hdu.stationery-module.code} 的实现}
-模块 \file{stationery} 的代码实现与之前类似. 不同的部分有使用钩子 \cmd{shipout} 来实现水印的添加
+提供模块 \file{hdu.stationery} 文件
+\begin{minted} [ linenos, bgcolor = bg, breaklines ] {tex}
+ \hduthesis_provide_module:n {hdu.stationery}
+\end{minted}
+
+定义文档信息的键
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \keys_define:nn { hdu.stationery / docinfo }
+ {
+ watermark .bool_set:N = \g__docinfo_watermark_bool,
+ watermark .initial:n = false,
+ watermark .default:n = true,
+ title .tl_set:N = \@title,
+ author .tl_set:N = \@author,
+ mail .tl_set:N = \l__docinfo_mail_tl,
+ date .tl_set:N = \@date
+ }
+\end{minted}
+
+加载所需的宏包
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \RequirePackage{ hyperref, geometry, tikz, twemojis, fancyhdr }
+ \hypersetup{hidelinks}
+ \urlstyle{same}
+\end{minted}
+
+定义用户端文档信息的输入命令:清空令牌 \cs{@author} 和 \cs{l__docinfo_mail_tl} 用于后续判断,设置键值对,通过 \pkg{hyperref} 设置 PDF 信息
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \NewDocumentCommand \DocInfo { m }
+ {
+ \tl_clear:N \@author
+ \tl_clear:N \l__docinfo_mail_tl
+ \keys_set:nn { hdu.stationery / docinfo } {#1}
+ \hypersetup
+ {
+ pdftitle = Hangzhou Dianzi University,
+ pdfsubject = \@title, pdfauthor = \@author
+ }
+ }
+\end{minted}
+
+定义页面布局
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \geometry
+ { hmargin = .8in, bottom = .75in, top = 1.95in, footskip = 15.87pt,
+ headheight = 1.2in, headsep = .3in, footskip = .3in }
+ \linespread{1.25}
+ \RequirePackage [ skip = \baselineskip ] { parskip }
+ \renewcommand* \familydefault { \sfdefault }
+\end{minted}
+
+定义杭州电子科技大学主题色
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \definecolor{hdu}{HTML}{214395}
+\end{minted}
+定义页眉页脚样式
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \renewcommand* \headrulewidth {2pt}
+ \renewcommand* \footrulewidth {2pt}
+ \hook_gput_code:nnn { cmd/headrule/before } { . } { \color{hdu!80} }
+ \hook_gput_code:nnn { cmd/footrule/before } { . } { \color{hdu!80} }
+ \lhead
+ { {}~
+ \minipage{.6\linewidth}
+ \medskip \leavevmode \lower -.111in
+ \hbox { \includegraphics [ height = .75in ] {hdubadge} }
+ \endminipage \medskip \hfill
+ \minipage{.36\linewidth}
+ \medskip \vbox
+ { \linespread{1.2}
+ \raggedright \small \color{hdu}
+ \texttwemoji{1f4cd}~ 1158~No.2~St.,~ Hangzhou,~ 310018\\
+ \texttwemoji{1f4de}~ (86)~0571-86915072\\
+ \texttwemoji{1f310}~ \url{www.hdu.edu.cn}
+ } \medskip
+ \endminipage
+ }
+ \lfoot
+ {
+ \small{}~ \texttwemoji{1f4cd}~
+ 1158~No.2~Street,~ Qiantang~District,~
+ Hangzhou,~ Zhejiang~Province,~ 310018,~ P.R.China
+ }
+ \cfoot {}
+ \rfoot { \small \texttwemoji{1f310}~ \url{www.hdu.edu.cn}~ }
+ \pagestyle{fancy}
+\end{minted}
+
+定义标题样式. 当令牌 \cs{@author} 和 \cs{l__docinfo_mail_tl} 都不为空时,输出 ``From'';当 \cs{@author} 为空时,输出未提供作者警告信息;当 \cs{l__docinfo_mail_tl} 不为空时,输出邮箱;当 \cs{@author} 和 \cs{l__docinfo_mail_tl} 都不为空时,输出换行;输出 ``Date'' 和日期;当 \cs{@title} 为空时,输出未提供标题错误消息;输出 ``Subject'' 和标题
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \renewcommand* \maketitle
+ {
+ \group_begin: \small
+ \bool_if:nT
+ { !\tl_if_empty_p:N \@author || !\tl_if_empty_p:N \l__docinfo_mail_tl }
+ { \makebox [ 4em ] [ l ] { \scshape From } }
+ \tl_if_empty:NTF \@author
+ { \@latex@warning@no@line {No \noexpand \author given} } { \@author{}~ }
+ \tl_if_empty:NF \l__docinfo_mail_tl
+ { \texttt { <\l__docinfo_mail_tl> } }
+ \bool_if:nT
+ { !\tl_if_empty_p:N \@author || !\tl_if_empty_p:N \l__docinfo_mail_tl }
+ { \\ }
+ \makebox [ 4em ] [ l ] { \scshape Date }
+ \tl_if_empty:NTF \@date \today \@date \\
+ \tl_if_empty:NTF \@title
+ { \@latex@error {No \noexpand \title given}\@ehc }
+ { \makebox [ 4em ] [ l ] { \scshape Subject } \@title }
+ \par \vspace{.5\baselineskip}
+ \group_end:
+ }
+\end{minted}
+
+更改字体颜色,通过钩子设置背景,添加水印
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \AtBeginDocument { \color_select:n {black!80} }
\DeclareHookRule { shipout / background } { hduthesis / stationery }
{ before } { pgfrcs }
\AddToHook { shipout / background } [ hduthesis / stationery ]
@@ -16,11 +130,10 @@
}
\end{minted}
-调用 \pkg{tikzpagenodes} 宏包用于定位版心的边缘,用循环句柄 \cs{int_step_inline:nn} 与 \cs{draw} 命令来实现横线的绘制.
-
+加载宏包 \pkg{tikzpagenodes} 用于定位文本区域. 定义命令 \cs{notelines} 用于绘制线条,参数为行数,默认为 20 行. 使用 \pkg{tikz} 绘制线条,透明度为 0.6,颜色为 \cs{hdu},线宽为 2pt,从当前页文本区域的西北角开始,向东绘制线条 \cs{linewidth} 长,每行间隔为 \cs{textheight} 的 20 分之一
\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
\RequirePackage{tikzpagenodes}
- \NewDocumentCommand \notelines {O{20}}
+ \NewDocumentCommand \notelines { O{20} }
{
\tikz [ remember~picture, overlay ]
{
@@ -33,3 +146,24 @@
}
}
\end{minted}
+
+从 \cls{ltxdoc} 中抄取命令 \cs{meta}
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \newcommand \meta[1]
+ {
+ \ensuremath \langle
+ \ifmmode \expandafter \nfss@text \fi
+ {
+ \itshape\ttfamily \edef \meta@hyphen@restore
+ { \hyphenchar \the \font \the \hyphenchar \font }
+ \hyphenchar \font \m@ne \language
+ \l@nohyphenation #1\/\meta@hyphen@restore
+ }
+ \ensuremath \rangle
+ }
+\end{minted}
+
+结束模块 \file{hduthesis-stationery-module.code} 文件
+\begin{minted} [ linenos, firstnumber = last, bgcolor = bg, breaklines ] {tex}
+ \endinput
+\end{minted}
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-bc.pdf b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-bc.pdf
index 8d6248c1ff0..27040a086d9 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-bc.pdf
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-bc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.pdf b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.pdf
index e9ef5dc0569..c63d716590e 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.pdf
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.tex b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.tex
index 43f87168d2e..26f2dbf8ec3 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-beamer.tex
@@ -1,15 +1,14 @@
-\documentclass [ svgnames,aspectratio = 2013, handout ] {beamer}
+\documentclass[ mode = beamer, handout ]{hduthesis}
-\usetheme{hdu}
-
-\infoset
+\usepackage[mono = false]{libertine}
+\DocInfo
{
title = Research and Application of Micromagnetic Simulation Based on Landau-Lifshitz-Gilbert Equation,
subtitle = hdu Undergraduate Thesis Proposal,
author = SAN Chi Nan (C668668E0),
date = {\today{} / Building 6, Room 321},
supervisor = Prof. YIP Tsz Ching,
- % reference = reference.bib,
+ bibsource = reference.bib,
}
\begin{document}
@@ -38,4 +37,57 @@
\alert{The LLG equation is more convenient for numerical calculation, while the LL equation can introduce the dissipation term more physically.}
\end{frame}
+\begin{frame}{Applications}
+ \pause
+ \begin{block}{Magnetic Memory}
+ Magnetic memory is a type of non-volatile memory that uses magnetic fields to store data. It is a type of computer memory that does not require power to maintain the information stored in the memory.
+ \end{block}
+ \pause
+ \begin{exampleblock}{Magnetic Logic}
+ Magnetic logic is a type of logic gate that uses magnetic fields to perform logical operations. It is a promising technology for future computing systems.
+ \end{exampleblock}
+ \pause
+ \begin{alertblock}{Magnetic Sensor}
+ Magnetic sensors are devices that detect magnetic fields. They are used in a wide range of applications, including automotive, industrial, and consumer electronics.
+ \end{alertblock}
+ Lorem\cite{xu2023unified},
+ Ipsum\cite{wang2023electrical},
+ dummy\cite{haug2008quantum},
+ text\cite{wang2024switching},
+ \cite{jhuria2020spin},
+ \cite{gilbert2004phenomenological},
+ \cite{foros2005magnetization},
+ \cite{chudnovskiy2008spin},
+ \cite{foros2009noise},
+ \cite{swiebodzinski2010spin},
+ \cite{brataas2008scattering},
+ \cite{brataas2011magnetization}
+\end{frame}
+
+\begin{frame}{The Nonequilibrium Green's Function Method}
+ \pause
+ The NEGF method can be used to study the quantum transport properties of nanoscale devices, such as quantum dots, nanowires, and molecular junctions. The four important Green's functions in the NEGF method are
+ \pause
+ \begin{equation}
+ \begin{cases*}
+ G^r = -i\theta(t - t') \ab<\{a_i(t), a_j^\dagger(t)\}> & Retarded Green's function\\
+ G^a = i\theta(t' - t) \ab<\{a_i(t), a_j^\dagger(t')\}> & Ahead Green's function\\
+ G^< = i\ab<\{a_j^\dagger(t'), a_i(t)\}> & Lesser Green's function\\
+ G^> = -i\ab<\{a_j^\dagger(t'), a_i(t)\}> & Greater Green's function
+ \end{cases*}
+ \end{equation}
+ \pause
+ And sometimes we need multiply anchors on the contour of time.
+ \begin{center}
+ \begin{tikzpicture}
+ \draw [->] (-3.6,0) -- (3,0) node [anchor=south] {$t$} node [anchor=north] {$+\infty$} node [at start,anchor=north] {$-\infty$};
+ \draw [densely dashed, red,thick] (-3,0.75) -- (1.5,0.75) node [at start,anchor=north] {$C_1$} arc (90:0:0.25);
+ \draw [densely dashed, green, thick] (1.75,0.5) arc (0:-90:0.25) node [at start] {$\times$} node [at start, anchor=west] {$t_1$} -- (-3.2,0.25) arc (90:270:0.25) -- (2.1,-0.25) arc (90:0:0.25);
+ \draw [densely dashed, ->, blue, thick] (2.35,-0.5) arc (0:-90:0.25) node [at start] {$\times$} node [at start,anchor=west] {$t_1'$} -- (-3,-0.75) node [anchor=south] {$C_2$};
+ \end{tikzpicture}
+ \end{center}
+\end{frame}
+
+\printbibliography
+
\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-pg.pdf b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-pg.pdf
index fb725211b93..2af96c37f89 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-pg.pdf
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-pg.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.pdf b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.pdf
index b84ec14d24c..39230b0c22d 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.pdf
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.tex b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.tex
index 4bc21e0f412..5e0cb7f6743 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/hduthesis-stationery.tex
@@ -1,4 +1,4 @@
-\documentclass[stationery]{hduthesis}
+\documentclass[mode = stationery]{hduthesis}
\usepackage{lipsum}
\RequirePackage [ mono = false ] {libertine}
@@ -8,7 +8,7 @@
title = Recommendation Letter for SAN Chi Nan,
author = YIP Tsz Ching,
mail = email@server.domain,
- date = {23\textsuperscript{th} December, 2024},
+ date = \today,
watermark = true
}
@@ -20,13 +20,15 @@ Dear Prof. Wong,
\lipsum[1-2]
-\vspace{\baselineskip} \raggedleft
+\vfill \raggedleft
Sincerely yours,\\[4ex]
\includegraphics[ height = 2em ]{hdutitle}\\[2ex]
Professor of Department of Physics\\
Room \meta{int}, Building \meta{int}, Hangzhou Dianzi University
+\vspace{\baselineskip}
+
\clearpage
\notelines[25]
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/example/reference.bib b/Master/texmf-dist/doc/xelatex/hduthesis/example/reference.bib
index 5775cc077f7..c8882d0f7c3 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/example/reference.bib
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/example/reference.bib
@@ -100,4 +100,133 @@
publisher={北京:北京航空航天大学出版社},
year={1994},
pages={6--28}
+}
+
+@article{xu2023unified,
+ title={Unified framework of the microscopic Landau-Lifshitz-Gilbert equation and its application to skyrmion dynamics},
+ author={Xu, Fuming and Li, Gaoyang and Chen, Jian and Yu, Zhizhou and Zhang, Lei and Wang, Baigeng and Wang, Jian},
+ journal={Physical Review B},
+ volume={108},
+ number={14},
+ pages={144409},
+ year={2023},
+ publisher={APS}
+}
+
+@article{wang2023electrical,
+ title={Electrical switchable room-temperature magnetic skyrmions in multiferroic MXene},
+ author={Wang, Liming and Ga, Yonglong and Li, Peng and Yu, Dongxing and Jiang, Jiawei and Liang, Jinghua and Wang, Shouguo and Yang, Hongxin},
+ journal={Physical Review B},
+ volume={108},
+ number={5},
+ pages={054440},
+ year={2023},
+ publisher={APS}
+}
+
+@book{haug2008quantum,
+ title={Quantum kinetics in transport and optics of semiconductors},
+ author={Haug, Hartmut and Jauho, Antti-Pekka and others},
+ volume={2},
+ year={2008},
+ publisher={Springer}
+}
+
+@article{wang2024switching,
+ title={Switching intrinsic magnetic skyrmions with controllable magnetic anisotropy in van der Waals multiferroic heterostructures},
+ author={Wang, Ze-quan and Xue, Feng and Qiu, Liang and Wang, Zhe and Wu, Ruqian and Hou, Yusheng},
+ journal={Nano Letters},
+ volume={24},
+ number={14},
+ pages={4117--4123},
+ year={2024},
+ publisher={ACS Publications}
+}
+
+@article{jhuria2020spin,
+ title={Spin--orbit torque switching of a ferromagnet with picosecond electrical pulses},
+ author={Jhuria, Kaushalya and Hohlfeld, Julius and Pattabi, Akshay and Martin, Elodie and Arriola C{\'o}rdova, Aldo Ygnacio and Shi, Xinping and Lo Conte, Roberto and Petit-Watelot, Sebastien and Rojas-Sanchez, Juan Carlos and Malinowski, Gregory and others},
+ journal={Nature Electronics},
+ volume={3},
+ number={11},
+ pages={680--686},
+ year={2020},
+ publisher={Nature Publishing Group UK London}
+}
+
+@article{gilbert2004phenomenological,
+ title={A phenomenological theory of damping in ferromagnetic materials},
+ author={Gilbert, Thomas L},
+ journal={IEEE transactions on magnetics},
+ volume={40},
+ number={6},
+ pages={3443--3449},
+ year={2004},
+ publisher={IEEE}
+}
+
+@article{foros2005magnetization,
+ title={Magnetization noise in magnetoelectronic nanostructures},
+ author={Foros, J{\o}rn and Brataas, Arne and Tserkovnyak, Yaroslav and Bauer, Gerrit EW},
+ journal={Physical review letters},
+ volume={95},
+ number={1},
+ pages={016601},
+ year={2005},
+ publisher={APS}
+}
+
+@article{chudnovskiy2008spin,
+ title={Spin-torque shot noise in magnetic tunnel junctions},
+ author={Chudnovskiy, AL and Swiebodzinski, J and Kamenev, A},
+ journal={Physical review letters},
+ volume={101},
+ number={6},
+ pages={066601},
+ year={2008},
+ publisher={APS}
+}
+
+@article{foros2009noise,
+ title={Noise and dissipation in magnetoelectronic nanostructures},
+ author={Foros, J{\o}rn and Brataas, Arne and Bauer, Gerrit EW and Tserkovnyak, Yaroslav},
+ journal={Physical Review B—Condensed Matter and Materials Physics},
+ volume={79},
+ number={21},
+ pages={214407},
+ year={2009},
+ publisher={APS}
+}
+
+@article{swiebodzinski2010spin,
+ title={Spin torque dynamics with noise in magnetic nanosystems},
+ author={Swiebodzinski, J and Chudnovskiy, A and Dunn, T and Kamenev, A},
+ journal={Physical Review B—Condensed Matter and Materials Physics},
+ volume={82},
+ number={14},
+ pages={144404},
+ year={2010},
+ publisher={APS}
+}
+
+@article{brataas2008scattering,
+ title={Scattering theory of Gilbert damping},
+ author={Brataas, Arne and Tserkovnyak, Yaroslav and Bauer, Gerrit EW},
+ journal={Physical review letters},
+ volume={101},
+ number={3},
+ pages={037207},
+ year={2008},
+ publisher={APS}
+}
+
+@article{brataas2011magnetization,
+ title={Magnetization dissipation in ferromagnets from scattering theory},
+ author={Brataas, Arne and Tserkovnyak, Yaroslav and Bauer, Gerrit EW},
+ journal={Physical Review B—Condensed Matter and Materials Physics},
+ volume={84},
+ number={5},
+ pages={054416},
+ year={2011},
+ publisher={APS}
} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.pdf b/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.pdf
index e51feb28f23..9681043d1b1 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.pdf
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.tex b/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.tex
index 9a0a36bd747..14595ff8a3f 100644
--- a/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.tex
+++ b/Master/texmf-dist/doc/xelatex/hduthesis/hduthesis.tex
@@ -1,6 +1,6 @@
-\documentclass[l3doc]{hduthesis}
+\documentclass[ mode = l3doc ]{hduthesis}
-\usepackage{minted}
+\usepackage[fontsize = 10.5pt]{fontsize}
\DocInfo
{
@@ -11,7 +11,7 @@
在 杭州电子科技大学非毕业生 / 教师 中寻找模板的继承维护者,
要求熟悉 \pkg{expl3}. 欢迎有意愿者邮件联系作者.
},
- author = Mingyu Xia \mailto{xiamyphys@gmail.com}
+ author = Mingyu Xia \mailto{myhsia@hdu.edu.cn}
\footnote{Physics Department, Graduate in 06/2025},
CJKmain-font = {[AutoFakeSlant]{Songti SC}},
CJKsans-font = {[BoldFont = Hei, AutoFakeSlant]{Heiti SC}},
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/beamerthemehdu.sty b/Master/texmf-dist/tex/xelatex/hduthesis/beamerthemehdu.sty
index dda662b5667..2a6cbf03236 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/beamerthemehdu.sty
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/beamerthemehdu.sty
@@ -1,93 +1,66 @@
-%% *****************************************************************************
-%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> *
-%% *
-%% This work may be distributed and/or modified under the conditions of the *
-%% LaTeX Project Public License *
-%% *
-%% http://www.latex-project.org/lppl.txt *
-%% *
-%% either version 1.3c of this license or any later version. *
-%% *
-%% This work has the LPPL maintenance status `maintained'. *
-%% *
-%% The Current Maintainers of this work is M.Y. XIA *
-%% *
-%% This work consists of the files hduthesis.cls, *
-%% hduthesis-typeset-module.code, *
-%% hduthesis-layout-module.code, *
-%% hduthesis-bc.config-module.code, *
-%% hduthesis-pg.config-module.code, *
-%% hduthesis-hdu.l3doc-module.code, *
-%% hduthesis-hdu.stationery-module.code, *
-%% beamerthemehdu.sty, *
-%% and README.md. *
-%% available at https://github.com/myhsia/hduthesis *
-%% *****************************************************************************
+\ProvidesExplPackage{beamerthemehdu}{\hduthesis@date}{\hduthesis@version}
+ {hduThesiS~ \text_titlecase:n {beamer} ~Module}
+
\mode<presentation>
-% info keyval
-\RequirePackage{keyval,tikz,graphicx}
-\usetikzlibrary{arrows,fadings,decorations.pathreplacing}
-\tikzset{%
- every picture/.append style = {%
- line join = round, line cap = round, thick
- }
-}
+\RequirePackage{tikz}
+\usetikzlibrary{fadings}
\graphicspath
{
{./figure/}{./figures/}{./image/}{./images/}
{./graphics/}{./graphic/}{./pictures/}{./picture/}
}
-\ExplSyntaxOn
-
-\keys_define:nn { infoset }
+\keys_define:nn { beamerthemehdu / docinfo }
{
title .tl_set:N = \@title,
- subtitle .tl_set:N = \l__infoset_subtitle_tl,
+ subtitle .tl_set:N = \l__docinfo_subtitle_tl,
author .tl_set:N = \@author,
date .tl_set:N = \@date,
- supervisor.tl_set:N = \l__infoset_supervisor_tl,
- reference .tl_set:N = \l__infoset_reference_tl,
+ supervisor.tl_set:N = \l__docinfo_supervisor_tl,
+ bibsource .tl_set:N = \l__docinfo_reference_tl,
}
-\NewDocumentCommand \infoset { m }
+\NewDocumentCommand \DocInfo { m }
{
- \keys_set:nn { infoset } { #1 }
+ \keys_set:nn { beamerthemehdu / docinfo } { #1 }
\title { \large \@title }
- \tl_set:Nn \insertshorttitle { \textsc { \l__infoset_subtitle_tl } }
+ \tl_set:Nn \insertshorttitle { \textsc { \l__docinfo_subtitle_tl } }
\author [ \@author ]
{
\@author
- \tl_if_empty:NF \l__infoset_supervisor_tl
+ \tl_if_empty:NF \l__docinfo_supervisor_tl
{
\texorpdfstring
- { \\[2ex] \small Supervised~by~\l__infoset_supervisor_tl }{}
+ { \\[2ex] \small Supervised~by~\l__docinfo_supervisor_tl }{}
}
}
\date { \@date }
- \tl_if_empty:NF \l__infoset_reference_tl
+ \tl_if_empty:NTF \l__docinfo_bibsource_tl
{
- \RequirePackage
- [ backend = biber, bibstyle = numeric, citestyle = numeric-comp,
- autocite = superscript, sorting = none
- ] { biblatex }
- \addbibresource { \l__infoset_reference_tl }
- \newcommand* \mkbibbracketsuperscript[1]
- { \mkbibsuperscript { \mkbibbrackets{#1} } }
- \DeclareCiteCommand \supercite [\mkbibbracketsuperscript]
+ \newcommand* \printbibliography
+ {
+ \begin{frame}[t]
+ \frametitle{Bibliography}
+ \end{frame}
+ }
+ \newcounter {citecount}
+ \renewcommand*\cite[1]
{
- \usebibmacro{cite:init}
- \let\multicitedelim=\supercitedelim
- \let\multicitesubentrydelim=\supercitesubentrydelim
- \let\multiciterangedelim=\superciterangedelim
- \let\multicitesubentryrangedelim=\supercitesubentryrangedelim
- \iffieldundef{prenote}{}
- {\BibliographyWarning{Ignoring prenote argument}}%
- \iffieldundef{postnote}{}
- {\BibliographyWarning{Ignoring postnote argument}}
+ \refstepcounter{citecount}
+ \textsuperscript{[\thecitecount]}
+ }
+ }
+ {
+ \RequirePackage [ backend = bibtex, sorting = none ] { biblatex }
+ \addbibresource { \l__docinfo_reference_tl }
+ \let \@printbibliography \printbibliography
+ \renewcommand* \printbibliography
+ {
+ \begin{frame}[t, allowframebreaks]{Bibliography}
+ \small
+ \@printbibliography
+ \end{frame}
}
- {\usebibmacro{citeindex}\usebibmacro{cite:comp}}{}
- {\usebibmacro{cite:dump}}
}
}
@@ -102,82 +75,87 @@
{
\tikz [ remember~picture, overlay ]
\node [ below~right, yshift = -1em ] at (current~page.north~west)
- { \includegraphics [ width = \textwidth/3 ]{ hdubadge.pdf } };
+ { \includegraphics [ width = 2\textwidth/7 ]{ hdubadge.pdf } };
}
-\ExplSyntaxOff
% theme & colors
\useoutertheme{infolines}
-\useinnertheme[shadow=false]{rounded}
+\useinnertheme[shadow = false]{rounded}
\definecolor{hdu}{HTML}{214395}
\definecolor{hduRed}{HTML}{BF6236}
-\usecolortheme[named=hdu]{structure}
-
-\setbeamercolor*{palette primary}{use=structure,fg=black,bg=structure.fg!40!white}
-\setbeamercolor*{palette secondary}{use=structure,fg=white,bg=structure.fg!60!white}
-\setbeamercolor*{palette tertiary}{use=structure,fg=white,bg=structure.fg!90!white}
-
-\setbeamercolor{block title}{use=structure,fg=structure.fg,bg=structure.fg!20!bg}
-\setbeamercolor{block title alerted}{use=alerted text,fg=alerted text.fg,bg=alerted text.fg!20!bg}
-\setbeamercolor{block title example}{use=example text,fg=example text.fg,bg=example text.fg!20!bg}
-\setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!50!bg}
-\setbeamercolor{block body alerted}{parent=normal text,use=block title alerted,bg=block title alerted.bg!50!bg}
-\setbeamercolor{block body example}{parent=normal text,use=block title example,bg=block title example.bg!50!bg}
-
-\setbeamertemplate{navigation symbols}{}
-\setbeamertemplate{page number in head/foot}{}
-\addtobeamertemplate{headline}{}{
- \tikz[remember picture, overlay]{
- \filldraw [hduRed, ultra thick, line cap = butt] (0,0) --++ (\paperwidth*\fpeval{\insertpagenumber-1}/\fpeval{\insertdocumentendpage-1},0);
- \draw [white, very thick, yshift = -.6pt] (0,0) --++ (\paperwidth,0);
+\usecolortheme[named = hdu]{structure}
+
+\setbeamercolor*{palette~primary}{use=structure,fg=black,bg=structure.fg!30!white}
+\setbeamercolor*{palette~secondary}{use=structure,fg=white,bg=structure.fg!60!white}
+\setbeamercolor*{palette~tertiary}{use=structure,fg=white,bg=structure.fg!90!white}
+
+\setbeamercolor{block~title}{use=structure,fg=structure.fg,bg=structure.fg!20!bg}
+\setbeamercolor{block~body}{parent=normal~text,use=block~title,bg=block~title.bg!50!bg}
+\addtobeamertemplate{block~begin}{\pgfsetfillopacity{0.8}}{\pgfsetfillopacity{1}}
+
+\setbeamercolor{block~title~alerted}{use=alerted~text,fg=alerted~text.fg,bg=alerted~text.fg!20!bg}
+\setbeamercolor{block~body~alerted}{parent=normal~text,use=block~title~alerted,bg=block~title~alerted.bg!50!bg}
+\addtobeamertemplate{block~alerted~begin}{\pgfsetfillopacity{0.8}}{\pgfsetfillopacity{1}}
+
+\setbeamercolor{block~title~example}{use=example~text,fg=example~text.fg,bg=example~text.fg!20!bg}
+\setbeamercolor{block~body~example}{parent=normal~text,use=block~title~example,bg=block~title~example.bg!50!bg}
+\addtobeamertemplate{block~example~begin}{\pgfsetfillopacity{0.8}}{\pgfsetfillopacity{1}}
+
+\addtobeamertemplate{headline}{}
+ {
+ \tikz [ remember~picture, overlay ]
+ {
+ \filldraw [hduRed, ultra~thick, line~cap = butt]
+ (0,0) --++
+ (\paperwidth * \fp_eval:n
+ {(\insertpagenumber-1)/(\insertdocumentendpage-1)},0);
+ \draw [white, very~thick, yshift = -.6pt] (0,0) --++ (\paperwidth,0);
+ }
}
-}
-
-\AtBeginSection[]{
- \begin{frame}
- \ifcsname @headlogo\endcsname
- \tikz [remember picture, overlay] \node [below right,yshift=-1em] at (current page.north west) {\includegraphics[width=\textwidth/3]{\@headlogo}};
- \fi
- \vfill
- \usebeamerfont{title}\insertsectionhead\par%
- \tikz{
- \draw [hdu!20, ultra thick] (0,0) --++ (2*\linewidth/3,0);
- \filldraw [hdu!60, ultra thick, path fading=west] (0,0) --++ (2*\linewidth*\fpeval{\insertframenumber-1}/\fpeval{\inserttotalframenumber-1}/3,0);
- }
- \vfill
- \end{frame}
-}
-
-\addtobeamertemplate{block begin}{\pgfsetfillopacity{0.75}}{\pgfsetfillopacity{1}}
-\addtobeamertemplate{block alerted begin}{\pgfsetfillopacity{0.75}}{\pgfsetfillopacity{1}}
-\addtobeamertemplate{block example begin}{\pgfsetfillopacity{0.75}}{\pgfsetfillopacity{1}}
-
-\setbeamercolor{title}{parent=author in head/foot}
-\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true]
-\usesubitemizeitemtemplate{%
- \tiny\raise1.5pt\hbox{\color{beamerstructure}$\blacktriangleright$}%
-}
-\usesubsubitemizeitemtemplate{%
- \tiny\raise1.5pt\hbox{\color{beamerstructure}$\bigstar$}%
-}
+
+\AtBeginSection[]
+ {
+ \begin{frame}
+ \tikz [ remember~picture, overlay ]
+ \node [ below~right, yshift = -1em ] at (current~page.north~west)
+ { \includegraphics [ width = 2\textwidth/7 ]{ hdubadge.pdf } };
+ \vfill
+ \usebeamerfont{title} \insertsectionhead \par
+ \tikz
+ {
+ \draw [line~cap = round, hdu!20, ultra~thick]
+ (0,0) --++ (2\linewidth/3,0);
+ \filldraw [line~cap = round, hdu!60, ultra~thick, path~fading=west]
+ (0,0) --++
+ (2\linewidth * \fp_eval:n
+ {(\insertframenumber - 1)/(\inserttotalframenumber - 1)}/3,0);
+ }
+ \vfill
+ \end{frame}
+ }
+
+\setbeamercolor{title}{parent=author~in~head/foot}
+\setbeamertemplate{title~page}[default][colsep=-4bp,rounded=true]
+\usesubitemizeitemtemplate
+ {\tiny\raise1.5pt\hbox{\color{beamerstructure}$\blacktriangleright$}}
+\usesubsubitemizeitemtemplate
+ { \tiny\raise1.5pt\hbox{\color{beamerstructure}$\bigstar$} }
% \setbeamersize{text margin left = 1em, text margin right=1em}
% math settings
\numberwithin{equation}{section}
-\RequirePackage[mono=false]{libertine}
\RequirePackage{keytheorems,amssymb,mathtools,physics2,fixdif,derivative,cancel,siunitx,nicematrix}
-\renewcommand\qedsymbol{$\color{gray}\blacksquare$}
-\usephysicsmodule{ab,ab.braket,diagmat,doubleprod,xmat,ab.legacy,op.legacy}
+\renewcommand* \qedsymbol {$\color{gray}\blacksquare$}
+\usephysicsmodule{ ab, braket, op.legacy }
\RequirePackage[e]{esvect}
\let\vec\vv
-\def\i{\mathrm i}\def\e{\mathrm e}\def\T{\mathsf T}
-\let\leq\leqslant\let\geq\geqslant
% Figure settings
-\RequirePackage[labelsep=period,figurename=FIG,font=footnotesize]{caption}
+\RequirePackage
+ [ labelsep = period, figurename = \textsc{Fig}, font = footnotesize ]{caption}
\RequirePackage{subcaption,booktabs}
\captionsetup{belowskip=0pt}
-\captionsetup[sub]{font=scriptsize}
+\captionsetup[sub]{font = scriptsize}
\RequirePackage{anyfontsize}
\renewcommand{\raggedright}{\leftskip=0pt \rightskip=0pt plus 0cm}
\RequirePackage{ragged2e}
@@ -185,4 +163,5 @@
\AtBeginEnvironment{columns}{\vspace*{-.5ex}}
\mode<all>
-\endinput \ No newline at end of file
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-bc.config-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-bc.config-module.code.tex
index c404557382b..1ed06c6aa00 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-bc.config-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-bc.config-module.code.tex
@@ -29,7 +29,7 @@
\int_set:Nn \l__hduthesis_grade_int
{
\int_compare:nNnTF {\c_sys_month_int} < 9
- {\c_sys_year_int} {\int_eval:n {\c_sys_year_int+1}}
+ {\c_sys_year_int} {\int_eval:n {\c_sys_year_int + 1}}
}
\cs_new_protected_nopar:Nn \__hduthesis_cover_bc_aux:
{
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.l3doc-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.l3doc-module.code.tex
index d0d70b9267d..ea8499350c1 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.l3doc-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.l3doc-module.code.tex
@@ -98,4 +98,6 @@
\hook_gput_code:nnn { cmd/tableofcontents/after } { . }
{ \endtitlepage \restoregeometry }
+\RequirePackage{minted}
+
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.stationery-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.stationery-module.code.tex
index 43fbe1d81a3..09bf33e20af 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.stationery-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-hdu.stationery-module.code.tex
@@ -12,10 +12,18 @@
}
\RequirePackage{ hyperref, geometry, tikz, twemojis, fancyhdr }
+\hypersetup{hidelinks}
+\urlstyle{same}
\NewDocumentCommand \DocInfo { m }
{
+ \tl_clear:N \@author
+ \tl_clear:N \l__docinfo_mail_tl
\keys_set:nn { hdu.stationery / docinfo } {#1}
- \hypersetup { hidelinks, pdftitle = \@title, pdfauthor = \@author }
+ \hypersetup
+ {
+ pdftitle = Hangzhou Dianzi University,
+ pdfsubject = \@title, pdfauthor = \@author
+ }
}
\geometry
{ hmargin = .8in, bottom = .75in, top = 1.95in, footskip = 15.87pt,
@@ -52,14 +60,14 @@
Hangzhou,~ Zhejiang~Province,~ 310018,~ P.R.China
}
\cfoot {}
-\rfoot { \small \texttwemoji{1f310}~ www.hdu.edu.cn~ }
+\rfoot { \small \texttwemoji{1f310}~ \url{www.hdu.edu.cn}~ }
\pagestyle{fancy}
\renewcommand* \maketitle
{
\group_begin: \small
- \bool_if:nF
- { \tl_if_empty_p:N \@author && \tl_if_empty_p:N \l__docinfo_mail_tl }
+ \bool_if:nT
+ { !\tl_if_empty_p:N \@author || !\tl_if_empty_p:N \l__docinfo_mail_tl }
{ \makebox [ 4em ] [ l ] { \scshape From } }
\tl_if_empty:NTF \@author
{ \@latex@warning@no@line {No \noexpand \author given} } { \@author{}~ }
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-layout-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-layout-module.code.tex
index cfd2e72690a..48779c1ee96 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-layout-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-layout-module.code.tex
@@ -110,7 +110,12 @@
\tl_if_empty:NTF \l__docinfo_bibsource_tl
{
\newcommand*\printbibliography{\chapter*{参考文献}}
- \renewcommand*\cite[1]{\textsuperscript{[##1]}}
+ \newcounter {citecount}
+ \renewcommand*\cite[1]
+ {
+ \refstepcounter{citecount}
+ \textsuperscript{[\thecitecount]}
+ }
}
{
\RequirePackage[sort&compress]{gbt7714}
@@ -118,7 +123,7 @@
\dim_set:Nn \bibsep {.35ex}
\newcommand*\printbibliography
{
- \nocite{*} \bibliography { \l__docinfo_bibsource_tl }
+ \bibliography { \l__docinfo_bibsource_tl }
\addcontentsline{toc}{chapter}{参考文献}
}
}
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-pg.config-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-pg.config-module.code.tex
index 3d48d98931c..cd11c0fccad 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-pg.config-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-pg.config-module.code.tex
@@ -161,49 +161,47 @@
\semilarge 学位论文使用授权说明
\end{center}
\par \vspace*{.4\baselineskip}
- \begin{spacing}{1.65}
- 本人完全了解杭州电子科技大学关于保留和使用学位论文的规定,
- 即:研究生在校攻读学位期间论文工作的知识产权单位属杭州电子科技大学。
- 本人保证毕业离校后,发表论文或使用论文工作成果时署名单位仍然为杭州电子科技大学。
- 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,
- 可以允许采用影印、缩印或其它复制手段保存论文。(保密论文在解密后遵守此规定)
- \par \vspace*{1.25\baselineskip}
- \noindent \makebox[.45\linewidth][l]
- {
- 论文作者签名:
- \__hduthesis_signature_process_aux:nnn {#1}{2}{0}
- \tl_if_empty:NF \l__hduthesis_signature_figure_tl
- {
- \signature { \l__hduthesis_signature_figure_tl }
- \tl_clear:N \l__hduthesis_signature_figure_tl
- }
- }
- 日期:
- \makebox [ 2.5em ] [ l ]
- { \__hduthesis_signature_process_aux:nnn {#1}{2}{1} } 年
- \makebox [ 2em ]
- { \__hduthesis_signature_process_aux:nnn {#1}{2}{2} } 月
- \makebox [ 2em ]
- { \__hduthesis_signature_process_aux:nnn {#1}{2}{3} } 日
- \par \vspace*{\baselineskip}
- \noindent \makebox[.45\linewidth][l]
- {
- 指导教师签名:
- \__hduthesis_signature_process_aux:nnn {#1}{3}{0}
- \tl_if_empty:NF \l__hduthesis_signature_figure_tl
- {
- \signature { \l__hduthesis_signature_figure_tl }
- \tl_clear:N \l__hduthesis_signature_figure_tl
- }
- }
- 日期:
- \makebox [ 2.5em ] [ l ]
- { \__hduthesis_signature_process_aux:nnn {#1}{3}{1} } 年
- \makebox [ 2em ]
- { \__hduthesis_signature_process_aux:nnn {#1}{3}{2} } 月
- \makebox [ 2em ]
- { \__hduthesis_signature_process_aux:nnn {#1}{3}{3} } 日
- \end{spacing}
+ 本人完全了解杭州电子科技大学关于保留和使用学位论文的规定,
+ 即:研究生在校攻读学位期间论文工作的知识产权单位属杭州电子科技大学。
+ 本人保证毕业离校后,发表论文或使用论文工作成果时署名单位仍然为杭州电子科技大学。
+ 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,
+ 可以允许采用影印、缩印或其它复制手段保存论文。(保密论文在解密后遵守此规定)
+ \par \vspace*{1.25\baselineskip}
+ \noindent \makebox[.45\linewidth][l]
+ {
+ 论文作者签名:
+ \__hduthesis_signature_process_aux:nnn {#1}{2}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ }
+ 日期:
+ \makebox [ 2.5em ] [ l ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{1} } 年
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{2} } 月
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{2}{3} } 日
+ \par \vspace*{\baselineskip}
+ \noindent \makebox[.45\linewidth][l]
+ {
+ 指导教师签名:
+ \__hduthesis_signature_process_aux:nnn {#1}{3}{0}
+ \tl_if_empty:NF \l__hduthesis_signature_figure_tl
+ {
+ \signature { \l__hduthesis_signature_figure_tl }
+ \tl_clear:N \l__hduthesis_signature_figure_tl
+ }
+ }
+ 日期:
+ \makebox [ 2.5em ] [ l ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{1} } 年
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{2} } 月
+ \makebox [ 2em ]
+ { \__hduthesis_signature_process_aux:nnn {#1}{3}{3} } 日
\end{spacing}
}
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-typeset-module.code.tex b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-typeset-module.code.tex
index ed0878b025f..6bcdc3e43f4 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-typeset-module.code.tex
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis-typeset-module.code.tex
@@ -1,5 +1,15 @@
\hduthesis_provide_module:n {typeset}
+\RequirePackage { circuitikz, pgfplots, listings, hologo,
+ lipsum, zhlipsum, booktabs, multicol }
+\pgfplotsset { compat = newest }
+\hologoFontSetup { general = \sffamily }
+\graphicspath
+ {
+ {./figure/}{./figures/}{./image/}{./images/}
+ {./graphics/}{./graphic/}{./pictures/}{./picture/}
+ }
+
\linespread{1.39}
\dim_set:Nn \parindent { 2\ccwd }
\newcommand \semilarge { \@setfontsize \semilarge{14}{16.5} }
@@ -14,14 +24,14 @@
[
Extension = .otf, BoldItalicFont = *-bolditalic,
UprightFont = *-regular, BoldFont = *-bold,
- ItalicFont = *-italic, Scale = .9,
+ ItalicFont = *-italic, Scale = .9
]
-\RequirePackage { amssymb, mathtools, cancel, fixdif, derivative }
+\RequirePackage { amssymb, mathtools, cancel, fixdif, derivative, siunitx }
\file_if_exist:nTF { physics2.sty }
{
\RequirePackage{physics2}
- \usephysicsmodule{ ab, braket, ab.legacy, op.legacy, bm-um.legacy }
+ \usephysicsmodule{ ab, braket, op.legacy, bm-um.legacy }
} { \RequirePackage{bm} }
\RequirePackage
[ warnings-off = { mathtools-colon, mathtools-overbracket } ] {unicode-math}
diff --git a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis.cls b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis.cls
index f40d3ca9d17..dca7cca40b0 100644
--- a/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis.cls
+++ b/Master/texmf-dist/tex/xelatex/hduthesis/hduthesis.cls
@@ -17,21 +17,21 @@
%% hduthesis-layout-module.code, *
%% hduthesis-bc.config-module.code, *
%% hduthesis-pg.config-module.code, *
-%% hduthesis-hdu.l3doc-module.code, *
-%% hduthesis-hdu.stationery-module.code, *
%% beamerthemehdu.sty, *
+%% hduthesis-hdu.stationery-module.code, *
+%% *
+%% hduthesis-hdu.l3doc-module.code, *
%% and README.md. *
%% available at https://github.com/myhsia/hduthesis *
%% *****************************************************************************
-\def\hduthesis@date{2024/12/31}
-\def\hduthesis@version{0.5.1}
+\def\hduthesis@date{2025/01/04}
+\def\hduthesis@version{0.5.2}
\def\hduthesis@maintainerid{myhsia}
\RequirePackage{etoolbox}
\ProvidesExplClass{hduthesis} {\hduthesis@date} {\hduthesis@version}
- {LaTeX Class for Thesis at Hangzhou Dianzi University}
+ {LaTeX Template Bundle for Hangzhou Dianzi University}
-% Module for TeX Live 2022 and (or) later
\cs_if_exist:NF \seq_set_split:Nne
{ \cs_generate_variant:Nn \seq_set_split:Nnn { Nne } }
\cs_if_exist:NF \seq_set_split:Nee
@@ -45,22 +45,24 @@
{ \msg_new:nnn { hduthesis } {#1} {#2} }
\cs_new_protected:Npn \hduthesis_msg_error:nn #1#2
{ \msg_error:nnn { hduthesis } {#1} {#2} }
+\cs_generate_variant:Nn \hduthesis_msg_error:nn { nx }
+\cs_new_protected:Npn \hduthesis_msg_warning:nn #1#2
+ { \msg_warning:nnn { hduthesis } {#1} {#2} }
+\cs_generate_variant:Nn \hduthesis_msg_warning:nn { nx }
-\hduthesis_msg_new:nn { 用户协议 }
+\hduthesis_msg_new:nn { not found module }
+ { The~hduthesis~module~`#1'~not~found. }
+\hduthesis_msg_new:nn { unknown mode }
+ { Unknown~hduthesis~mode~`#1',~ loading~mode~`thesis'~instead. }
+\hduthesis_msg_new:nn { Users Agreement }
{ \exp_not:n
{
- ⚠️⚠️⚠️⚠️⚠️~ 「hduThesiS」编译受阻🥵 ~⚠️⚠️⚠️⚠️⚠️~
- 使用模板前请认真阅读模板说明文档封面上的「用户协议」~
- 😡👊模板作者不对使用本模板产生的格式审查问题负责👊😡~
- 添加选项 `agreed'[\documentclass[agreed]{hduthesis}]~
- 即可顺利编译并默认代表您已同意本协议.~ 祝君科研顺利!~
- 如遇问题,可邮件反馈至📮xiamyphys@gmail.com.
+ 编译受阻!~ 使用模板前请阅读用户手册封面上的「用户协议」~
+ !!!模板作者(@myhsia)不对使用本模板产生的格式审查问题负责!!!~
+ 如果您同意用户协议,在全局选项中添加 `agreed' 即可解除本错误~
+ 欢迎您通过邮件(myhsia@hdu.edu.cn)或GitHub提交反馈意见
}
}
-
-\cs_generate_variant:Nn \hduthesis_msg_error:nn { nx }
-\hduthesis_msg_new:nn { not found module }
- { The~hduthesis~module~`#1'~not~found. }
\cs_new_protected_nopar:Npn \hduthesis_load_module:n #1
{
\clist_map_inline:nn {#1}
@@ -76,19 +78,13 @@
{hduThesiS~ \text_titlecase:n {#1} ~Module}
}
-% global options
\clist_new:N \g__hdu_base_class_options_clist
\keys_define:nn { hduthesis / classoption }
{
agreed .bool_set:N = \g__hduthesis_agreement_bool,
agreed .initial:n = false,
agreed .default:n = true,
- l3doc .bool_set:N = \g__hduthesis_doc_bool,
- l3doc .initial:n = false,
- l3doc .default:n = true,
- stationery .bool_set:N = \g__hduthesis_stationery_bool,
- stationery .initial:n = false,
- stationery .default:n = true,
+ mode .tl_set:N = \g__hduthesis_mode_tl,
math-font .tl_set:N = \g__hduthesis_math_font,
CJKmain-font .tl_set:N = \g__hduthesis_main_CJK_font,
CJKsans-font .tl_set:N = \g__hduthesis_sans_CJK_font,
@@ -108,15 +104,26 @@
}
\ProcessKeyOptions [ hduthesis / classoption ]
-\bool_if:NT \g__hduthesis_doc_bool
+\bool_if:nT
{
- \PassOptionsToClass { 11pt, letterpaper, kernel } { l3doc }
- \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { l3doc }
- \hduthesis_load_module:n { hdu.l3doc }
+ !\str_if_empty_p:N \g__hduthesis_mode_tl &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { thesis } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { beamer } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { stationery } &&
+ % !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { exam } &&
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { l3doc }
+ }
+ { \hduthesis_msg_warning:nx { unknown mode } { \g__hduthesis_mode_tl } }
+
+\str_if_eq:eeT { \g__hduthesis_mode_tl } { beamer }
+ {
+ \PassOptionsToClass { aspectratio = 2013 } { beamer }
+ \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { beamer }
+ \usetheme{hdu}
\endinput
}
-\bool_if:NT \g__hduthesis_stationery_bool
+\str_if_eq:eeT { \g__hduthesis_mode_tl } { stationery }
{
\PassOptionsToClass { 12pt } { letter }
\exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { letter }
@@ -124,37 +131,53 @@
\endinput
}
-\PassOptionsToClass { a4paper, zihao = -4 } { ctexrep }
-\PassOptionsToPackage { quiet, no-math } { xeCJK }
-\exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { ctexrep }
-\bool_if:NTF \g__hduthesis_agreement_bool
+% \str_if_eq:eeT { \g__hduthesis_mode_tl } { exam }
+% {
+% \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { article }
+% \hduthesis_load_module:n { hdu.exam }
+% \endinput
+% }
+
+\str_if_eq:eeT { \g__hduthesis_mode_tl } { l3doc }
{
- \RequirePackage{hyperref}
- \pdfstringdefDisableCommands
- {
- \def \cite#1 {<#1>}
- \def \hologoRobust#1 {<#1>}
- }
- \AtBeginDocument
- { \hypersetup { hidelinks, pdfproducer = hduThesiS~by~Mingyu~Xia } }
- } { \hduthesis_msg_error:nn { 用户协议 } { 未确认 } }
+ \PassOptionsToClass { 11pt, letterpaper, kernel } { l3doc }
+ \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { l3doc }
+ \hduthesis_load_module:n { hdu.l3doc }
+ \endinput
+ }
-\RequirePackage { siunitx, circuitikz, pgfplots, listings,
- hologo, lipsum, zhlipsum, booktabs, multicol }
-\pgfplotsset { compat = newest }
-\hologoFontSetup { general = \sffamily }
-\graphicspath
+\bool_if:nT
{
- {./figure/}{./figures/}{./image/}{./images/}
- {./graphics/}{./graphic/}{./pictures/}{./picture/}
+ \str_if_eq_p:ee { \g__hduthesis_mode_tl } { thesis } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { beamer } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { stationery } ||
+ % !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { exam } ||
+ !\str_if_eq_p:ee { \g__hduthesis_mode_tl } { l3doc }
}
-\hduthesis_load_module:n { typeset }
-\hduthesis_load_module:n { layout }
-\cs_new_protected:Nn \__hduthesis_docinfo_degree_if_aux:
{
- \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 }
- { \hduthesis_load_module:n { bc.config } }
- { \hduthesis_load_module:n { pg.config } }
+ \PassOptionsToClass { a4paper, zihao = -4 } { ctexrep }
+ \PassOptionsToPackage { quiet, no-math } { xeCJK }
+ \exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { ctexrep }
+ \bool_if:NTF \g__hduthesis_agreement_bool
+ {
+ \RequirePackage{hyperref}
+ \pdfstringdefDisableCommands
+ {
+ \def \cite#1 {<#1>}
+ \def \hologoRobust#1 {<#1>}
+ }
+ \AtBeginDocument
+ { \hypersetup { hidelinks, pdfproducer = hduThesiS~by~Mingyu~Xia } }
+ } { \hduthesis_msg_error:nn { Users Agreement } { Unconfirmed } }
+ \hduthesis_load_module:n { typeset }
+ \hduthesis_load_module:n { layout }
+ \cs_new_protected:Nn \__hduthesis_docinfo_degree_if_aux:
+ {
+ \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 }
+ { \hduthesis_load_module:n { bc.config } }
+ { \hduthesis_load_module:n { pg.config } }
+ }
+ \endinput
}
\endinput