forked from tuna/thuthesis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
thuthesis.dtx
7156 lines (7134 loc) · 211 KB
/
thuthesis.dtx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
% \iffalse meta-comment
%
% Copyright (C) 2005-2021 by Tsinghua University TUNA Association <[email protected]>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3c
% of this license or (at your option) any later version.
% The latest version of this license is in
% https://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX
% version 2008 or later.
%
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{thuthesis.dtx}[2023/05/15 7.4.0 Tsinghua University Thesis Template]
\documentclass{ltxdoc}
\usepackage{dtx-style}
\EnableCrossrefs
\CodelineIndex
\begin{document}
\DocInput{\jobname.dtx}
\end{document}
%</driver>
% \fi
%
% \DoNotIndex{\newenvironment,\@bsphack,\@empty,\@esphack,\sfcode}
% \DoNotIndex{\addtocounter,\label,\let,\linewidth,\newcounter}
% \DoNotIndex{\noindent,\normalfont,\par,\parskip,\phantomsection}
% \DoNotIndex{\providecommand,\ProvidesPackage,\refstepcounter}
% \DoNotIndex{\RequirePackage,\setcounter,\setlength,\string,\strut}
% \DoNotIndex{\textbackslash,\texttt,\ttfamily,\usepackage}
% \DoNotIndex{\begin,\end,\begingroup,\endgroup,\par,\\}
% \DoNotIndex{\if,\ifx,\ifdim,\ifnum,\ifcase,\else,\or,\fi}
% \DoNotIndex{\let,\def,\xdef,\edef,\newcommand,\renewcommand}
% \DoNotIndex{\expandafter,\csname,\endcsname,\relax,\protect}
% \DoNotIndex{\Huge,\huge,\LARGE,\Large,\large,\normalsize}
% \DoNotIndex{\small,\footnotesize,\scriptsize,\tiny}
% \DoNotIndex{\normalfont,\bfseries,\slshape,\sffamily,\interlinepenalty}
% \DoNotIndex{\textbf,\textit,\textsf,\textsc}
% \DoNotIndex{\hfil,\par,\hskip,\vskip,\vspace,\quad}
% \DoNotIndex{\centering,\raggedright,\ref}
% \DoNotIndex{\c@secnumdepth,\@startsection,\@setfontsize}
% \DoNotIndex{\ ,\@plus,\@minus,\p@,\z@,\@m,\@M,\@ne,\m@ne}
% \DoNotIndex{\@@par,\DeclareOperation,\RequirePackage,\LoadClass}
% \DoNotIndex{\AtBeginDocument,\AtEndDocument}
%
% \GetFileInfo{\jobname.dtx}
%
% \def\indexname{索引}
% \IndexPrologue{\section{\indexname}}
%
% \title{\bfseries\color{violet}\thuthesis:清华大学学位论文模板}
% \author{{\fangsong 清华大学 TUNA 协会}\\[5pt]\texttt{[email protected]}}
% \date{v\fileversion\ (\filedate)}
% \maketitle\thispagestyle{empty}
%
%
% \begin{abstract}\noindent
% 此宏包旨在建立一个简单易用的清华大学学位论文模板,包括本科综合论文训练、硕士
% 论文、博士论文以及博士后出站报告。
% \end{abstract}
%
% \vskip2cm
% \def\abstractname{免责声明}
% \begin{abstract}
% \noindent
% \begin{enumerate}
% \item 本模板的发布遵守 \href{https://www.latex-project.org/lppl/lppl-1-3c.txt}{\LaTeX{} Project Public License (1.3.c)},使用前请认真阅读协议内
% 容。
% \item 本模板为作者根据
% 清华大学研究生院颁发的《
% \href{http://yjsy.cic.tsinghua.edu.cn/docinfo/board/boarddetail.jsp?columnId=001050603&parentColumnId=0010506&itemSeq=5365}{%
% 研究生学位论文写作指南}》(更新到2023年3月版本,限校内网络访问)、
% 英文版《Guide to Thesis Writing for Graduate Students》、
% 清华大学教务处颁发的《
% \href{https://lib.tsinghua.edu.cn/info/1073/1978.htm}{%
% 综合论文训练写作指南}》、
% 外文系的《英语专业本科生综合论文训练》和
% 清华大学《
% \href{http://postdoctor.tsinghua.edu.cn/info/czxz/1283}{%
% 编写“清华大学博士后研究报告”参考意见}》
% 编写而成,旨在供清华大学毕业生撰写学位论文使用。
% \item 任何个人或组织以本模板为基础进行修改、扩展而生成的新的专用模板,请严格遵
% 守 \LaTeX{} Project Public License 协议。由于违犯协议而引起的任何纠纷争端均与
% 本模板作者无关。
% \end{enumerate}
% \end{abstract}
%
%
% \clearpage
% \pagestyle{fancy}
% \begin{multicols}{2}[
% \setlength{\columnseprule}{.4pt}
% \setlength{\columnsep}{18pt}]
% \tableofcontents
% \end{multicols}
% \clearpage
%
% \section{模板介绍}
% \thuthesis{}(\textbf{T}sing\textbf{h}ua \textbf{U}niversity \LaTeX{}
% \textbf{Thesis} Template)是为了帮助清华大学毕业生撰写毕业论文而编写
% 的 \LaTeX{} 论文模板。
%
% 本文档将尽量完整地介绍模板的使用方法,如有不清楚之处,或者想提出改进建议,
% 可以在 \href{https://github.com/tuna/thuthesis/issues/}{GitHub Issues}
% 参与讨论或提问。
% 有兴趣者都可以参与完善此手册,也非常欢迎对代码的贡献。
%
% \note[注意:]{模板的作用在于减少论文写作过程中格式调整的时间。前提是遵守模板的
% 用法,否则即便用了 \thuthesis{} 也难以保证输出的论文符合学校规范。}
%
% 用户如果遇到 bug,或者发现与学校《写作指南》 的要求不一致,可以尝试以下办法:
% \begin{enumerate}
% \item 将模板升级到最新,见第~\ref{sec:upgrade} 节;
% \item 阅读 \href{https://github.com/tuna/thuthesis/wiki/FAQ}{FAQ};
% \item 在 GitHub Issues 中按照说明
% \href{https://github.com/tuna/thuthesis/issues/new?template=bug_report.md}{报告 bug}。
% \end{enumerate}
%
% \section{贡献者}
% \label{sec:contributors}
%
% \thuthesis{} 的开发过程中,主要的维护者包括:
%
% \begin{itemize}
% \item 薛瑞尼(\githubuser{xueruini}):最早的开发者,2005 年创建 \thuthesis{} 并长期进行维护工作。
% \item 赵涛(\githubuser{alick}):2011-2015 年活跃,较早期阶段的开发者。
% \item 李泽平(\githubuser{zepinglee}):2016 年至今活跃,为目前主要维护者。
% \item 陈晟祺(\githubuser{Harry-Chen}):2020 年至今活跃,主要负责非开发性事宜。
% \end{itemize}
%
% 同时,也要感谢所有在 GitHub 上提出问题与贡献代码的同学、老师们。
% \thuthesis{} 的持续发展,离不开你们的帮助与支持。
%
% \section{安装}
% \label{sec:installation}
%
% \thuthesis{} 已经包含在主要的 \TeX{} 发行版中,但是通常版本较旧,而且不方便更新。
% 建议从下列途径下载最新版:
% \begin{description}
% \item[GitHub] \url{https://github.com/tuna/thuthesis},从 Release 中下载 zip 文件。
% \item[TUNA 镜像站] \url{https://mirrors.tuna.tsinghua.edu.cn/github-release/tuna/thuthesis/},也可在首页选择“获取下载链接——应用软件——\thuthesis{}论文模板”。
% \end{description}
%
%
% 模板支持在 TeX Live、MacTeX 和 MiKTeX 平台下进行编译,但要求 2017 年或更新的发行版。
% 当然,尽可能使用最新的版本可以避免 bug。
%
% \subsection{模板的组成}
% 下表列出了 \thuthesis{} 的主要文件及其功能介绍:
%
% \begin{longtable}{l|p{8cm}}
% \toprule
% {\heiti 文件(夹)} & {\heiti 功能描述}\\\midrule
% \endfirsthead
% \midrule
% {\heiti 文件(夹)} & {\heiti 功能描述}\\\midrule
% \endhead
% \endfoot
% \endlastfoot
% thuthesis.ins & \textsc{DocStrip} 驱动文件(开发用) \\
% thuthesis.dtx & \textsc{DocStrip} 源文件(开发用)\\\midrule
% thuthesis.cls & 模板类文件\\
% thuthesis-*.bst & \hologo{BibTeX} 参考文献表样式文件\\
% thuthesis-*.bbx & BibLaTeX 参考文献表样式文件\\
% thuthesis-*.cbx & BibLaTeX 参考文献引用样式文件\\
% tsinghua-name-bachelor.pdf & 校名 logo,本科生封面使用 \\\midrule
% thuthesis-example.tex & 示例文档主文件\\
% spine.tex & 书脊示例文档\\
% ref/ & 示例文档参考文献目录\\
% data/ & 示例文档章节具体内容\\
% figures/ & 示例文档图片路径\\
% thusetup.tex & 示例文档基本配置\\\midrule
% Makefile & Makefile\\
% latexmkrc & latexmk 配置文件 \\
% README.md & Readme\\
% \textbf{thuthesis.pdf} & 用户手册(本文档)\\\bottomrule
% \end{longtable}
%
% 几点说明:
% \begin{itemize}
% \item \file{thuthesis.cls} 可由 \file{thuthesis.ins}
% 和 \file{thuthesis.dtx} 生成,但为了降低新手用户的使用难度,故
% 将 \file{thuthesis.cls} 文件一起发布。
% \item 使用前阅读文档:\file{thuthesis.pdf}。
% \end{itemize}
%
% \subsection{生成模板}
% \label{sec:generate-cls}
% 模板的源文件(\file{thuthesis.dtx})中包含了大量的注释,需要将注释去掉生成轻量
% 级的 \file{.cls} 文件供 \cs{documentclass} 调用。
%
% \begin{shell}
% $ xetex thuthesis.ins
% \end{shell}
%
% \note[注意:]{如果没有生成的模板 \file{thuthesis.cls} 文件
% (跟 \file{thuthesis-example.tex} 同一目录下),
% \LaTeX{} 在编译时可能找到发行版中较旧版本的 \file{.cls},从而造成冲突。}
%
% \subsection{编译论文}
% \label{sec:generate-thesis}
% 本节介绍几种常见的生成论文的方法。用户可根据自己的情况选择。
%
% 在撰写论文时,我们\textbf{不推荐}使用原有的 \file{thuthesis-example.tex} 这一名称。
% 建议将其复制一份,改为其他的名字(如 \file{thesis.tex} 或者 \file{main.tex})。
% 需要注意,如果使用了来自 \file{data} 目录中的 \file{tex} 文件,
% 则重命名主文件后,其顶端的 \texttt{!TeX root} 选项也需要相应修改。
%
% \subsubsection{GNU make}
% \label{sec:make}
% 如果用户可以使用 GNU make 工具,这是最方便的办法。
% 所以 \thuthesis{} 提供了 \file{Makefile}:
% \begin{shell}
% $ make thesis # 生成论文示例 thuthesis-example.pdf
% $ make spine # 生成书脊 spine.pdf
% $ make doc # 生成说明文档 thuthesis.pdf
% $ make clean # 清理编译生成的辅助文件
% \end{shell}
%
% 需要注意,如果更改了主文件的名称,则需要修改 \file{Makefile} 顶端的 \texttt{THESIS} 变量定义。
%
% \subsubsection{latexmk}
% \label{sec:latexmk}
% \texttt{latexmk} 命令支持全自动生成 \LaTeX{} 编写的文档,并且支持使用不同的工具
% 链来进行生成,它会自动运行多次工具直到交叉引用都被解决。
% \begin{shell}
% $ latexmk thuthesis-example.tex # 生成示例论文 thuthesis-example.pdf
% $ latexmk spine.tex # 生成书脊 spine.pdf
% $ latexmk thuthesis.dtx # 生成说明文档 thuthesis.pdf
% $ latexmk -c # 清理编译生成的辅助文件
% \end{shell}
% \texttt{latexmk} 的编译过程是通过 \file{latexmkrc} 文件来配置的,如果要进一步了解,
% 可以参考 \pkg{latexmk} 文档。
%
% \subsubsection{\XeLaTeX}
% \label{sec:xelatex}
% 如果用户无法使用以上两种较为方便的编译方法,就只能按照以下复杂的办法手动编译。
%
% 首先,更新模板:
% \begin{shell}
% $ xetex thuthesis.ins # 生成 thuthesis.cls
% \end{shell}
%
% 然后,生成论文以及书脊:
% \begin{shell}
% $ xelatex thuthesis-example.tex
% $ bibtex thuthesis-example.aux # 生成 bbl 文件
% $ bibtex thuthesis-example-appendix-a.aux # 附录 A 的的参考文献
% $ bibtex thuthesis-example-appendix-b.aux # 附录 B 的的参考文献……
% $ bibtex thuthesis-example-index.aux # 本科生的书面翻译对应的原文索引
% $ xelatex thuthesis-example.tex # 解决引用
% $ xelatex thuthesis-example.tex # 生成论文 PDF
%
% $ xelatex spine.tex # 生成书脊 PDF
% \end{shell}
%
% 下面的命令用来生成用户手册:
% \begin{shell}
% $ xelatex -shell-escape thuthesis.dtx
% $ makeindex -s gind.ist -o thuthesis.ind thuthesis.idx
% $ xelatex -shell-escape thuthesis.dtx
% $ xelatex -shell-escape thuthesis.dtx # 生成说明文档 thuthesis.pdf
% \end{shell}
%
% \subsection{升级}
% \label{sec:upgrade}
% 如果需要升级 \thuthesis{},应当从 GitHub 下载最新的版本,
% 将 \file{thuthesis.dtx},\file{thuthesis.ins},\file{tsinghua-name-bachelor.pdf} 和
% \file{thuthesis-*.bst} 拷贝至工作目录覆盖相应的文件,然后按照
% 第~\ref{sec:generate-cls} 节的内容生成新的模板和使用说明。
%
% 有时模板可能进行了重要的修改,不兼容已写好的正文内容,用户应按照示例
% 文档重新调整。
%
% \section{使用说明}
% \label{sec:usage}
% 本手册假定用户已经能处理一般的 \LaTeX{} 文档,并对 \hologo{BibTeX} 有一定了解。如果
% 从未接触过 \TeX{} 和 \LaTeX,建议先学习相关的基础知识。
%
% \subsection{示例文件}
% \label{sec:userguide}
%
% 模板核心文件有:\file{thuthesis.cls},\file{tsinghua-name-bachelor.pdf},
% \file{thuthesis-*.bst}(\hologo{BibTeX}),
% \file{thuthesis-*.bbx} 和 \file{thuthesis-*.cbx}(BibLaTeX),
% 但如果没有示例文档会较难下手,所以推荐从模板自带的示例文档入手。其中包括了论文
% 写作用到的所有命令及其使用方法,只需用自己的内容进行相应替换就可以。对于不清
% 楚的命令可以查阅本手册。下面的例子描述了模板中章节的组织形式,来自于示例文档,
% 具体内容可以参考模板附带的 \file{thuthesis-example.tex} 和 \file{data/}。
%
% \subsection{论文选项}
% \label{sec:option}
%
% \subsubsection{学位}
% \DescribeOption{degree}
% 选择学位,可选:
% \option{bachelor},\option{master},\option{doctor}(默认),\option{postdoc}。
% 本节中的 \emph{key-value} 选项只能在文档类的选项中进行设置,
% 不能用于 \cs{thusetup} 命令。
% \begin{latex}
% % 博士论文
% \documentclass[degree=doctor]{thuthesis}
% \end{latex}
%
% \subsubsection{学位类型}
% \label{sec:degree-type}
% \DescribeOption{degree-type}
% 定义研究生学位的类型,可选:\option{academic}(默认)、\option{professional},
% 本科生不受影响。
% \begin{latex}
% \documentclass[degree=master, degree-type=professional]{thuthesis}
% \end{latex}
%
% \subsubsection{字体配置}
% \label{sec:font-config}
% \DescribeOption{fontset}
% 模板默认会自动根据操作系统配置合适的字体,
% 用户也可以通过 \option{fontset} 时指定使用预设的字库,如:
% \begin{latex}
% \documentclass[fontset=windows]{thuthesis}
% \end{latex}
% 允许的选项有 \option{windows}、\option{mac}、\option{ubuntu} 和 \option{fandol},
% 具体使用的字体见表~\ref{tab:fontset}。
% 用户也可以设置为 \option{none} 并自行配置字体。
%
% \begin{table}[htb]
% \centering
% \caption{\thuthesis{} 预设的字体}
% \label{tab:fontset}
% \begin{tabular}{cccc}
% \toprule
% \option{windows} & \option{mac} & \option{ubuntu} & \option{fandol} \\
% \midrule
% Times New Roman & Times New Roman & TeX Gyre Termes & TeX Gyre Termes \\
% Arial & Arial & TeX Gyre Heros & TeX Gyre Heros \\
% Courier & Menlo & TeX Gyre Cursor & TeX Gyre Cursor \\
% 中易宋体 & 华文宋体 & 思源宋体 & Fandol 宋体 \\
% 中易黑体 & 华文黑体 & 思源黑体 & Fandol 黑体 \\
% 中易仿宋 & 华文仿宋 & Fandol 仿宋 & Fandol 仿宋 \\
% 中易楷体 & 华文楷体 & Fandol 楷体 & Fandol 楷体 \\
% \bottomrule
% \end{tabular}
% \end{table}
%
% 需要注意,建议用户在提交终版前使用 Windows 平台的字体进行编译。
% 这样中文字体同 Word 模板一致。
%
% 关于字体的配置,
% 详见 \pkg{fontspec}、\pkg{xeCJK}、\pkg{ctex} 等宏包的使用说明和代码。
%
% \DescribeOption{font}
% 配置全文使用的西文字体。所有可选项目为 \option{auto}(默认)、\option{times}、\option{termes}、
% \option{stix}、\option{xits}、\option{libertinus}、\option{newcm}、\option{lm}、
% \option{newtx}、\option{none}。
% 通常来说,用户 \textbf{不需要} 调整此选项。
%
% \DescribeOption{cjk-font}
% 配置全文使用的中文字体。所有可选项为 \option{auto}(默认)、\option{windows}、\option{windows-local}、
% \option{mac}、\option{mac-word}、\option{noto}、\option{fandol} 和 \option{none}。
% 通常来说,用户 \textbf{不需要} 调整此选项,模板会自动通过 \option{fontset} 选项选择合适的字体。
%
% \DescribeOption{windows-font-dir}
% 配置搜索 Windows 字体的路径,仅适用于 Overleaf 等不方便全局安装字体的环境。如果此目录下能找到中易宋体,
% 则将自动使用这些字体编译。如有可能,始终建议全局安装相应字体,模板能够自动检测。
%
% \subsection{论文设置}
% 论文的设置可以通过统一命令 \cs{thusetup} 设置 \emph{key=value} 形式完成。
%
% \DescribeMacro{\thusetup}
% \cs{thusetup} 用法与常见 \emph{key=value} 命令相同,如下:
% \begin{latex}
% \thusetup{
% key1 = value1,
% key2 = {a value, with comma},
% }
% % 可以多次调用
% \thusetup{
% key3 = value3,
% key1 = value11, % 覆盖 value1
% }
% \end{latex}
%
% \note[注意:]{\cs{thusetup} 使用 \pkg{kvsetkeys} 机制,所以配置项之间不能有空行,否则
% 会报错。}
%
% \subsubsection{输出格式}
% \DescribeOption{output}
% 选择输出的格式是打印版还是电子版(用于提交),可选:\option{print}(默认)、\option{electronic}。
% 打印版 \option{print} 自动在单面打印的部分插入空白页(比如封面),并且保证正文第 1 页在右侧。
% 电子版 \option{electronic} 选项会去掉空白页,这是因为一些院系要求提交的电子版不含空白页。
% 注意在不同选项下,生成的声明页码很可能不同。为了避免页码错误,
% \thuthesis{}将会在插入扫描的 PDF 文件时自动生成页码,因此\textbf{扫描声明页时请移除底部的页码},以防重叠。
%
% \begin{latex}
% \thusetup{
% output = electronic,
% }
% \end{latex}
%
% 另外本科生要求有 0.2cm 留给装订线的宽度,这只有在打印版中才会生效。
%
%
% \subsubsection{书写语言}
% \DescribeOption{language}
% 在导言区设置 \option{language} 会修改论文的主要语言,如章节标题等。
% 在正文中设置 \option{language} 只修改接下来部分的书写语言,
% 如标点格式、图表名称,但不影响章节标题等。
%
% \begin{latex}
% \thusetup{
% language = english,
% }
% \end{latex}
%
% 论文的一些部分(如英文摘要、本科生的外文调研报告)要求使用特定的语言,
% 模板已经进行配置,并在这些部分结束后自动恢复为主要语言。
%
% 注意,本科生《写作指南》要求“本科生(含国外来华留学本科生)非外语专业论文统一要求
% 用中文书写。”研究生《写作指南》要求“外国人来华留学生可以用英文撰写学位论文,但
% 须采用中文封面”,“除留学生外,学位论文一律须用汉语书写”,用户须提前与导师和院系
% 的审查教师协商使用何种语言书写论文。
%
% \subsubsection{开题报告}
% \DescribeOption{thesis-type}
% 模板还支持本科生、博士生论文开题报告的格式,可以通过设置 \option{thesis-type=proposal} 得到。
%
% 开题报告与学位论文有两点不同:
% \begin{enumerate}
% \item 封面的信息和格式有区别,尤其是增加了一行“学号”信息,需要通过 \option{student-id} 填写;
% \item 开题报告不含英文标题页。
% \end{enumerate}
% \begin{latex}
% \thusetup{
% thesis-type = proposal,
% student-id = {2000310000},
% }
% \end{latex}
%
% \subsection{封面信息}
% \label{sec:titlepage}
% 封面信息可以通过统一设置命令 \cs{thusetup} 设置 \emph{key=value} 形式完成;
% 带 * 号的键通常是对应的英文。
%
% \subsubsection{论文标题}
% 中英文标题。可以在标题内部使用换行|\\|。
% \begin{latex}
% \thusetup{
% title = {论文中文题目},
% title* = {Thesis English Title},
% }
% \end{latex}
%
% \subsubsection{申请学位名称}
% \label{sec:degree-category}
% 学位名称的设置比较复杂,见表~\ref{tab:degree-category}。
%
% \begin{table}[h]
% \caption{学位名称的要求}
% \label{tab:degree-category}
% \begin{tabular}{p{2cm}p{6cm}p{6cm}}
% \toprule
% 学位类型 & degree-category & degree-category* \\
% \midrule
% 学术型博士 & 需注明所属的学科门类,例如:
% 哲学、经济学、法学、教育学、文学、历史学、理学、工学、农学、医学、
% 军事学、管理学、艺术学
% & Doctor of Philosophy \\
% \midrule
% 学术型硕士 & 同上
% & 哲学、文学、历史学、法学、教育学、艺术学门类
% 填写“Master of Arts“,其它填写“Master of Science” \\
% \midrule
% 专业型研究生学位 & 专业学位的名称,例如:教育博士、工程硕士
% & 专业学位的名称,例如:Doctor of Education, Master of Engineering \\
% \midrule
% 本科生 & - & - \\
% \bottomrule
% \end{tabular}
% \end{table}
%
% \begin{latex}
% \thusetup{
% degree-category = {您要申请什么学位},
% degree-category* = {Degree in English},
% }
% \end{latex}
%
% \subsubsection{院系名称}
% 院系名称。
% \begin{latex}
% \thusetup{
% department = {系名全称},
% }
% \end{latex}
%
% \subsubsection{学科名称}
%
% \begin{itemize}
% \item 研究生学术型学位:获得一级学科授权的学科填写一级学科名称,其他填写二级学科名称;
% \item 本科生:专业名称,第二学位论文需标注“(第二学位)”。
% \end{itemize}
%
% \begin{latex}
% \thusetup{
% discipline = {学科名称},
% discipline* = {Discipline in English},
% }
% \end{latex}
%
% \subsubsection{专业领域}
%
% 仅用于研究生专业型学位。
%
% \begin{itemize}
% \item 设置专业领域的专业学位类别,填写相应专业领域名称;
% \item 2019 级及之前工程硕士学位论文,在 \option{engineering-field} 填写相应工程领域名称;
% \item 其他专业学位类别的学位论文无需此信息。
% \end{itemize}
%
% \begin{latex}
% \thusetup{
% professional-field = {专业领域},
% professional-field* = {Professional field},
% }
% \end{latex}
%
%
% \subsubsection{作者姓名}
% 作者姓名。
% \begin{latex}
% \thusetup{
% author = {中文姓名},
% author* = {Name in Pinyin},
% }
% \end{latex}
%
% \subsubsection{学号}
% 学号,仅用于博士生论文开题报告。
% \begin{latex}
% \thusetup{
% student-id = {20000310000},
% }
% \end{latex}
%
% \subsubsection{导师}
% \myentry{导师}
% 导师的姓名与职称之间以“,”(西文逗号,U+002C)隔开,下同。
% \begin{latex}
% \thusetup{
% supervisor = {导师姓名, 教授},
% supervisor* = {Professor Supervisor Name},
% }
% \end{latex}
%
% \myentry{副导师}
% 本科生的辅导教师,硕士的副指导教师。
% \begin{latex}
% \thusetup{
% associate-supervisor = {副导师姓名, 副教授},
% associate-supervisor* = {Professor Assoc-Supervisor Name},
% }
% \end{latex}
%
% \myentry{联合指导教师}
% \begin{latex}
% \thusetup{
% co-supervisor = {联合指导教师姓名, 教授},
% co-supervisor* = {Professor Join-Supervisor Name},
% }
% \end{latex}
%
% \subsubsection{成文日期}
% 默认为当前日期,也可以自己指定,要求使用 ISO 格式。
% \begin{latex}
% \thusetup{
% date = {2011-07-01},
% }
% \end{latex}
%
% \subsubsection{密级}
% \label{sec:setup-secret}
% 定义秘密级别和年限。
% \begin{latex}
% \thusetup{
% secret-year = 10,
% secret-level = {秘密},
% }
% \end{latex}
%
% \subsubsection{博士后专用参数}
% \begin{latex}
% \thusetup{
% clc = {分类号},
% udc = {udc},
% id = {id},
% discipline-level-1 = {流动站(一级学科)名称},
% discipline-level-2 = {专业(二级学科)名称},
% start-date = {2011-07-01}, % 研究工作起始时间
% }
% \end{latex}
%
% \myentry{生成封面}
% \DescribeMacro{\maketitle}
% 生成封面,不含授权说明,摘要等。
% \begin{latex}
% % 直接生成封面
% \maketitle
% \end{latex}
%
% \subsection{前言部分}
%
% \subsubsection{指导小组、公开评阅人和答辩委员会名单}
% \myentry{答辩委员会名单}
% \DescribeEnv{committee}
% 学位论文指导小组、公开评阅人和答辩委员会名单可以由 \env{committee} 环境生成,
% 其中的可选参数可以使用 \option{name} 根据是有无指导小组设置合适的标题,比如
% \begin{latex}
% \begin{committee}[name={学位论文公开评阅人和答辩委员会名单}]
% ...
% \end{committee}
% \end{latex}
%
% 答辩委员会名单中的表格使用 LaTeX 生成可能略麻烦,也可以导入 Word 版转成的 PDF 文件,
% \begin{latex}
% \begin{committee}[file=figures/committee.pdf]
% \end{committee}
% \end{latex}
%
% \subsubsection{授权说明}
% \myentry{授权说明}
% \DescribeMacro{\copyrightpage}
% 可选参数为扫描得到的 PDF 文件名,例如:
% \begin{latex}
% % 将签字扫描后授权文件 scan-copyright.pdf 替换原始页面
% \copyrightpage[file=scan-copyright.pdf]
% \end{latex}
%
% \subsubsection{摘要}
% \myentry{摘要正文}
% \DescribeEnv{abstract}
% \DescribeEnv{abstract*}
%
% 摘要直接在正文中使用 \env{abstract}、\env{abstract*} 环境生成。
%
% \begin{latex}
% \begin{abstract}
% 摘要请写在这里...
% \end{abstract}
%
% \begin{abstract*}
% Here comes the abstract in English...
% \end{abstract*}
% \end{latex}
%
% \myentry{关键词}
% 关键词需要使用 \cs{thusetup} 进行设置。关键词之间以\emph{西文逗号}隔开,模板会
% 自动调整为要求的格式。关键词的设置只要在摘要环境结束前即可。
% \begin{latex}
% \thusetup{
% keywords = {关键词 1, 关键词 2},
% keywords* = {keyword 1, keyword 2},
% }
% \end{latex}
%
% \subsubsection{目录和索引表}
% 目录、插图、表格、公式和算法等索引命令分别如下,将其插入到期望的位置即可(带*的命令表
% 示对应的索引表不会出现在目录中):
%
% \DescribeMacro{\tableofcontents}
% \DescribeMacro{\listoffigures}
% \DescribeMacro{\listoffigures*}
% \DescribeMacro{\listoftables}
% \DescribeMacro{\listoftables*}
% \DescribeMacro{\listofequations}
% \DescribeMacro{\listofequations*}
% \DescribeMacro{\listofalgorithms}
% \DescribeMacro{\listofalgorithms*}
% \begin{longtable}{ll}
% \toprule
% {\heiti 用途} & {\heiti 命令} \\\midrule
% 目录 & \cs{tableofcontents} \\\midrule
% 插图索引 & \cs{listoffigures} \\
% & \cs{listoffigures*} \\\midrule
% 表格索引 & \cs{listoftables} \\
% & \cs{listoftables*} \\\midrule
% 公式索引 & \cs{listofequations} \\
% & \cs{listofequations*}\\\midrule
% 算法索引 & \cs{listofalgorithms} \\
% & \cs{listofalgorithms*}\\\bottomrule
% \end{longtable}
%
% \DescribeOption{toc-chapter-style}
% 本科生《写作指南》关于目录章标题要求“目录从第 1 章开始,每章标题用黑体小四号字”,
% 所以其中的西文和数字默认使用 Arial 字体,跟正文的章标题一致。
% 但是论文样例\footnote{此前发布在法学院网站,目前已经无公开可获得的链接。}的目录章标题的西文和数字却使用了 Times。
% 如果审查老师这样要求,需要在生成目录前设置
% \begin{latex}
% \thusetup{
% toc-chapter-style = times,
% }
% \end{latex}
% 该选项只对本科生有效。
%
% \LaTeX{} 默认支持插图和表格索引,是通过 \cs{caption} 命令完成的,因此它们必须出
% 现在浮动环境中,否则不被计数。
%
% 如果不想让某个表格或者图片出现在索引里面,那么请使用命令 \cs{caption*},这
% 个命令不会给表格编号,也就是出来的只有标题文字而没有“表~xx”,“图~xx”,否则
% 索引里面序号不连续就显得不伦不类,这也是 \LaTeX{} 里星号命令默认的规则。
%
% 如果的确想让其编号,但又不想出现在索引中的话,目前模板暂不支持。
%
% 公式索引为本模板扩展,模板扩展了 \pkg{amsmath} 几个内部命令,使得公式编号样式和
% 自动索引功能非常方便。一般来说,你用到的所有数学环境编号都没问题了,这个可以参
% 看示例文档。如果你有个非常特殊的数学环境需要加入公式索引,那么请使
% 用 \cs{equcaption}\marg{编号}。此命令表示 equation caption,带一个参数,即显示
% 在索引中的编号。因为公式与图表不同,我们很少给一个公式附加一个标题,之所以起这
% 么个名字是因为图表就是通过 \cs{caption} 加入索引的,\cs{equcaption} 完全就是为
% 了生成公式列表,不产生什么标题。
%
% 使用方法如下。假如有一个非 equation 数学环境 \texttt{mymath},只要在其中写一
% 句 \cs{equcaption} 就可以将它加入公式列表。
% \begin{latex}
% \begin{mymath}
% \label{eq:emc2}\equcaption{\ref{eq:emc2}}
% E=mc^2
% \end{mymath}
% \end{latex}
%
% \texttt{mymath} 中公式的编号需要自己来做。
%
% 同图表一样,附录中的公式有时也不希望它跟全文统一编号,而且不希望它出现在公式
% 索引中。目前的办法是利用 \cs{tag*}\marg{公式编号} 来解决。用法比较简单,此
% 处不再罗嗦,实例请参看示例文档附录 A 的前两个公式。
%
% \subsubsection{符号对照表}
% \DescribeEnv{denotation}
% 主要符号表环境,跟 \env{description} 类似,使用方法参见示例文件。带一个可选参数,
% 用来指定符号列的宽度(默认为 2.5cm)。
% \begin{latex}
% \begin{denotation}
% \item[E] 能量
% \item[m] 质量
% \item[c] 光速
% \end{denotation}
% \end{latex}
%
% 如果默认符号列的宽度不满意,可以通过参数来调整:
% \begin{latex}
% \begin{denotation}[1.5cm] % 设置为 1.5cm
% \item[E] 能量
% \item[m] 质量
% \item[c] 光速
% \end{denotation}
% \end{latex}
%
% 符号对照表的另外一种方法是调用 \pkg{nomencl} 宏包,需要在导言区设置:
%
% \begin{latex}
% \usepackage{nomencl}
% \makenomenclature
% \end{latex}
%
% 然后在正文中任意位置使用 \cs{nomenclature} 声明需要添加到主要符号表的符号:
%
% \begin{latex}
% \nomenclature{$m$}{The mass of one angel}
% \end{latex}
%
% 最后使用 \cs{printnomenclature} 命令生成符号表。更详细的使用方法参
% 见 \pkg{nomencl} 宏包的文档。
%
% \subsection{正文部分}
% \subsubsection{图表编号}
% \DescribeOption{figure-number-separator}
% \DescribeOption{table-number-separator}
% \DescribeOption{equation-number-separator}
% 研究生要求图表和公式的编号使用“.”或“-”连接,模板默认使用句点“.”。
% 用户也可以通过 \option{figure-number-separator}、\option{table-number-separator}
% 等选项分别设置:
% \begin{latex}
% \thusetup{
% figure-number-separator = {-},
% table-number-separator = {-},
% equation-number-separator = {-},
% }
% \end{latex}
% \DescribeOption{number-separator}
% 也可以使用 \option{number-separator} 同时设置图、表、公式三项的编号连接符,
% 比如 |\thusetup{number-separator = -}|。
%
% 本科生要求“附录中图、表、公式的编号,应与正文中的编号区分开”,
% 应理解为将章号改变为附录对应的大写字母编号,连接符不宜改变。
%
% \subsubsection{数学符号}
% \label{sec:math}
% 中文论文的数学符号默认遵循 GB/T 3102.11—1993《物理科学和技术中使用的数学符号》
% \footnote{原 GB 3102.11—1993,自 2017 年 3 月 23 日起,该标准转为推荐性标准。}。
% 该标准参照采纳 ISO 31-11:1992 \footnote{目前已更新为 ISO 80000-2:2019。},
% 但是与 \TeX{} 默认的美国数学学会(AMS)的习惯有许多差异。
% 这将在下文详细论述。
%
% \DescribeOption{math-style}
% 用户可以通过设置 \option{math-style} 选择数学符号样式(可选:
% \option{GB}(中文默认),\option{TeX}(英文默认)和 \option{ISO}),比如:
% \begin{latex}
% \thusetup{
% math-style = ISO,
% }
% \end{latex}
%
% 用户也可以逐项修改数学样式。
% \newcommand\dif{\mathop{}\!\mathrm{d}}
% \begin{enumerate}
% \item \DescribeOption{uppercase-greek}
% 大写希腊字母的正/斜体,可选:\option{italic}、\option{upright}。
% 有限增量符号 $\increment x$ 固定使用正体,推荐使用 \cs{increment} 表示。
% \item \DescribeOption{less-than-or-equal}
% 小于等于号和大于等于号的字形,可选:\option{slanted}、\option{horizontal}。
% 这将控制 \cs{le}、\cs{ge}、\cs{leq} 和 \cs{geq} 的符号
% 是“$\leqslant$、$\geqslant$”还是“$\leq$、$\geq$”。
% \item \DescribeOption{integral}
% 积分号的正/斜体,可选:\option{upright}、\option{slanted}。
% 该选项需要字体的支持,目前仅限 \option{xits}、\option{stix}、
% \option{libertinus} 和 \option{newcm}。参考下文关于数学字体的选择。
% \item \DescribeOption{integral-limits}
% 积分号上下限的位置,可选:\option{true}(在上下)、\option{false}(在右侧)。
% 这个设置只影响行间公式,行内公式统一居右侧,不受影响。
% \item \DescribeOption{partial}
% 偏微分符号的正/斜体,可选:\option{upright}、\option{italic}。
% \item \DescribeOption{math-ellipsis}
% 省略号 \cs{dots} 的样式,可选:\option{centered}(按照中文的习惯固定居中)、
% \option{lower} 和 \option{AMS}(取决于前后符号的位置)。
% 其他的省略号命令如 \cs{lots}、\cs{cdots} 则不受影响。
% \item \DescribeOption{real-part}
% 实部 \cs{Re} 和虚部 \cs{Im} 的字体,可选:\option{roman} 和 \option{fraktur}。
% \end{enumerate}
%
% 如果数学符号选择国标样式 |math-style = GB|,相当于设置了
% \begin{latex}
% \thusetup{
% uppercase-greek = italic,
% less-than-or-equal = slanted,
% integral = upright,
% integral-limits = false,
% partial = upright,
% math-ellipsis = centered,
% real-part = roman,
% }
% \end{latex}
%
% 另外,国标的数学样式与 AMS 还有一些差异无法统一设置,需要用户在写作时进行处理。
% \begin{enumerate}
% \item 数学常数和特殊函数名用正体,如 $\uppi = 3.14\dots$;$\symup{i}^2 = -1$;
% $\symup{e} = \lim_{n \to \infty} \left( 1 + \frac{1}{n} \right)^n$。
% \item 微分号使用正体,比如 $\dif y / \dif x$。
% \item 向量、矩阵和张量用粗斜体(\cs{symbf}),如 $\symbf{x}$、$\symbf{\Sigma}$、$\symbfsf{T}$。
% \end{enumerate}
%
% 需要注意,上述关于数学符号风格的设置在设置数学字体(\option{math-font})时才会生效。
%
% \DescribeOption{math-font}
% 模板使用默认使用 XITS Math 作为数学字体。
% 用户也可以使用 \option{math-font} 选项切换其他数学字体,可选:
% \option{stix}(STIX Two Math)、
% \option{libertinus}(Libertinus Math)、
% \option{newcm}(New Computer Modern Math)、
% \option{lm}(Latin Modern Math)。
%
% 其中 \option{lm} 和 \option{newcm} 的字形比较搭配 TeX 原生的 Computer Modern 字体,
% 但与《指南》要求的西文字体 Times New Roman 并不搭配。
% 可能会造成正文和公式中的数字字体不一致,需要谨慎使用。
%
% 以上字体都是 OpenType 格式的字体,需要配合
% \href{http://mirrors.ctan.org/macros/unicodetex/latex/unicode-math/unicode-math.pdf}{\pkg{unicode-math}}
% 宏包使用。
% 全部数学符号的命令参考
% \href{http://mirrors.ctan.org/macros/unicodetex/latex/unicode-math/unimath-symbols.pdf}{\pkg{unimath-symbols}}。
% 注意,\pkg{unicode-math} 宏包与 \pkg{amsfonts}、\pkg{amssymb}、\pkg{bm}、
% \pkg{mathrsfs}、\pkg{upgreek} 等宏包\emph{不}兼容。
% 模板作了处理,用户可以直接使用这些宏包的命令,如 \cs{bm}、\cs{mathscr}、
% \cs{uppi}。
%
% 另外,模板还为 `math-font` 提供了传统的 Type 1 字体 \option{newtx}。
% 该选项会调用 \pkg{newtxmath} 宏包。
% 但是,如果西文字体已经使用了 OpenType 的 Times New Roman,
% 混用 Type 1 字体可能会导致问题,尤其是使用 \pkg{siunitx} 宏包时。
% 该选项还处于测试阶段,需要谨慎使用。
%
% \subsubsection{定理环境}
% \label{sec:theorem}
% \thuthesis{} 定义了常用的数学环境:
%
% \begin{center}
% \begin{tabular}{*{7}{l}}\toprule
% axiom & theorem & definition & proposition & lemma & conjecture &\\
% 公理 & 定理 & 定义 & 命题 & 引理 & 猜想 &\\\midrule
% proof & corollary & example & exercise & assumption & remark & problem \\
% 证明 & 推论 & 例子& 练习 & 假设 & 注释 & 问题\\\bottomrule
% \end{tabular}
% \end{center}
%
% 比如:
% \begin{latex}
% \begin{definition}
% 道千乘之国,敬事而信,节用而爱人,使民以时。
% \end{definition}
% \end{latex}
% 产生(自动编号):
% \medskip
%
% \noindent\framebox[\linewidth][l]{{\heiti 定义~1.1~~~} % {道千乘之国,敬事而信,节用而爱人,使民以时。}}
%
% \smallskip
% 列举出来的数学环境毕竟是有限的,如果想用\emph{胡说}这样的数学环境,那么可以定义:
% \begin{latex}
% \newtheorem{nonsense}{胡说}[chapter]
% \end{latex}
%
% 然后这样使用:
% \begin{latex}
% \begin{nonsense}
% 契丹武士要来中原夺武林秘笈。—— 慕容博
% \end{nonsense}
% \end{latex}
%
% 产生(自动编号):
%
% \medskip
% \noindent\framebox[\linewidth][l]{{\heiti 胡说~1.1~~~} % {契丹武士要来中原夺武林秘笈。—— 慕容博}}
%
% \subsubsection{列表环境}
% \DescribeEnv{itemize}
% \DescribeEnv{enumerate}
% \DescribeEnv{description}
% 为了适合中文习惯,模板将这三个常用的列表环境用 \pkg{enumitem} 进行了纵向间距压
% 缩。一方面清除了多余空间,另一方面用户可以自己指定列表环境的样式(如标签符号,
% 缩进等)。细节请参看 \pkg{enumitem} 文档,此处不再赘述。
%
% \subsubsection{引用方式}
% \label{sec:citestyle}
% 模板支持两种引用方式,分别为理工科常用的“顺序编码制”和文科常用
% 的“著者-出版年制”。
% 使用者在设置参考文献表的格式
% (\cs{bibliographystyle},见第~\ref{sec:bibliography} 节)时,
% 正文中引用文献的标注会自动调整为对应的格式。
%
% 如果需要标出引文的页码,可以写在 \cs{cite} 的可选参数中,如
% |\cite[42]{knuth84}|。
%
% \paragraph{顺序编码制}
% \DescribeMacro{\inlinecite}
% 顺序编码制的参考文献引用分为两种模式:
% \begin{enumerate}
% \item 上标模式,比如“同样的工作有很多\textsuperscript{[1-2]}……”;
% \item 正文模式,比如“文 [3] 中详细说明了……”。
% \end{enumerate}
%
% \DescribeOption{cite-style}
% 用户可以将引用标注的格式设为正文模式:
% \begin{latex}
% \thusetup{
% cite-style = inline,
% }
% \end{latex}
% 也可以使用 \cs{inlinecite}\marg{key} 临时使用正文模式的引用标注。
%
% \paragraph{著者-出版年制}
% 著者-出版年制的参考文献引用有两种模式:
% \begin{enumerate}
% \item \cs{citep}:著者与年份均在括号中,比如“(Zhang, 2008)”,
% 同默认的 \cs{cite} 命令;
% \item \cs{citet}:著者姓名作为正文的一部分,比如“Zhang (2008)”;
% \end{enumerate}
%
% 另外,\pkg{natbib} 还提供了其他方便引用的命令,
% 比如 \cs{citeauthor}、\cs{citeyear} 等,
% 更多细节参考 \pkg{natbib} 的文档。
%
% \subsection{其他部分}
%
% \subsubsection{参考文献}
% \label{sec:bibliography}
%
% 参考文献通常可以使用 \hologo{BibTeX} 或 biblatex 生成。
% \hologo{BibTeX} 是 LaTeX 处理参考文献的传统的方式,
% 需要在使用 \cs{bibliographystyle}\marg{style} 选择样式
% 并用 \cs{bibliography} 设置 \file{.bib} 的路径。
% 然后使用 \texttt{bibtex} 对 \file{.aux} 文件进行编译得到 \file{.bbl} 文件。
% 其中的参考文献表内容会在后续编译时替换到 \cs{bibliography} 的位置。
% Biblatex 是较新的方式,需要在载入宏包时通过 \option{style} 选择样式,
% 在导言区使用 \cs{addbibresource} 声明数据库的路径,
% 并在输出参考文献表的位置使用 \cs{printbibliography} 命令,
% 而且编译参考文献的命令需要换为 biber。
% 这两种方式各有优缺点,比如 BibTeX 无法对中文按照拼音排序,一些样式更新不够及时;