forked from CamuseCao/XMU-thesis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathxmuthesis.dtx
4738 lines (4582 loc) · 196 KB
/
xmuthesis.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
% !TEX root = xmuthesis.tex
% !TEX program = xelatex
%
% !TeX encoding = UTF-8
%
%% File: xmuthesis.dtx
%
% Copyright (C) 2019-2020 CamuseCao
%
% It may be distributed and/or modified under the conditions of the
% LaTeX Project Public License (LPPL), either version 1.3c of this
% license or (at your option) any later version. The latest version
% of this license is in the file
%
% https://www.latex-project.org/lppl.txt
%
%
%
%
%<*driver>
\def\nameofplainTeX{plain}
\ifx\fmtname\nameofplainTeX\else
\expandafter\begingroup
\fi
%<*install>
% \input l3docstrip.tex
\input ctxdocstrip %
\keepsilent
\askforoverwritefalse
\preamble
<!--
----------------------------------------------------------------
xmuthesis --- A LaTeX template for XMU thesis writing
E-mail: [email protected]
Released under the LaTeX Project Public License v1.3c or later
See http://www.latex-project.org/lppl.txt
----------------------------------------------------------------
-->
\endpreamble
% stop docstrip adding \endinput
\postamble
<!--
Copyright (C) 2019 by CamuseCao <https://camusecao.top>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License (LPPL), either
version 1.3c of this license or (at your option) any later
version. The latest version of this license is in the file:
http://www.latex-project.org/lppl.txt
This work is "maintained" (as per LPPL maintenance status) by
CamuseCao.
This work consists of the file xmuthesis.dtx
and the derived files xmuthesis.cls,
xmuthesis.pdf and
xmulogo.sty.
-->
\endpostamble
\generate{
\usedir{tex/latex/\jobname}
\file{\jobname.cls}{\from{\jobname.dtx}{class}}
\file{xmulogo.sty}{\from{\jobname.dtx}{logo}}
}
% \generate{\file{l3doc.ist}{\from{l3doc.dtx}{docist}}}
\Msg{---------------------}
\Msg{| End of extracting |}
\Msg{---------------------}
\ifx\fmtname\nameofplainTeX
\expandafter\endbatchfile
\else
\expandafter\endgroup
\fi
%</install>
%</driver>
%
%<*driver|class>
% !TEX root = ./xmu.tex
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{ expl3, xparse, xtemplate, l3keys2e, scrlfile }
\RequirePackage[l2tabu, orthodox]{nag}
%</driver|class>
%
%<*driver>
\ProvidesFile{\jobname.dtx}[2020/10/09 v0.4.1 XMU thesis]
\documentclass{ctxdoc}% l3doc ctxdoc
\OnlyDescription
\begin{document}
\DocInput{\jobname.dtx}
\IndexLayout
\PrintChanges
\PrintIndex
\end{document}
%</driver>
% \fi
% \changes{v0.4}{2020/10/06}{引入 \LaTeX{3} 添加 overleaf 支持以及使用 lppl 许可证等}
% \changes{v0.3}{2020/08/09}{较少宏包的依赖以及修复部分问题}
% \changes{v0.2}{2019/07/02}{增加平台支持以及发布 xmulogo 宏包等}
% \changes{v0.1.1}{2019/02/19}{添加 a3 封面以及编译脚本等}
% \changes{v0.1}{2019/01/30}{第一版}
% \CheckSum{0}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
% Digits \0\1\2\3\4\5\6\7\8\9
% Exclamation \! Double quote \" Hash (number) \#
% Dollar \$ Percent \% Ampersand \&
% Acute accent \' Left paren \( Right paren \)
% Asterisk \* Plus \+ Comma \,
% Minus \- Point \. Solidus \/
% Colon \: Semicolon \; Less than \<
% Equals \= Greater than \> Question mark \?
% Commercial at \@ Left bracket \[ Backslash \\
% Right bracket \] Circumflex \^ Underscore \_
% Grave accent \` Left brace \{ Vertical bar \|
% Right brace \} Tilde \~}
%
% \GetFileInfo{\jobname.dtx}
% \DoNotIndex{\xmulineto, \vspace, \par, \draw, \begin, \end, \\, } %
%
% \title{\bfseries 厦大论文模板使用说明}
% \author{\href{https://camusecao.top}{酸奶}}
% \date{\filedate\quad\fileversion}
% \maketitle
% \begin{abstract}
% xmuthesis 是面向厦大毕业论文写作的 \LaTeX{} 模板,它能够节约你在排版上面所花的时间。但是它不是官方模板,是由我私人维护的,格式基本符合学校的要求。虽然在我之前已经有类似的模板,但是大多数缺乏维护,已经过时,因此有了该模板。现在模板已经支持本科、硕士和博士。
% \end{abstract}
% \tableofcontents
% \begin{documentation}
% \section{介绍}
%
% \subsection{历史}
% 厦大论文模板是 2018 年开始开发的, 2019 年发布于 Github 上。起初还没有写成 cls 模板,在后来逐渐规范,还额外开发了 xmulogo 宏包,用于生成高质量的校徽和校名图片。在 2020 年又统一用 dtx 来实现。
%
% \subsection{发现模板的问题}
%
% 如果发现模板用不对的地方或者有建议欢迎在 Github 上反馈或者发邮件给我。
%
% 联系方式:
% 邮箱: \href{mailto:[email protected]}{[email protected]}
%
% Github 项目的地址 : \href{https://github.com/CamuseCao/XMU-thesis}{XMU-thesis}
% \section{使用示例}
% \subsection{最小示例}
% \begin{ctexexam}
% \documentclass[degree=undergraduate,bibstyle=numerical,font=empty]{xmuthesis}
% \xmusetup{
% author = 酸奶 ,
% title = 你的论文题目 ,
% date = \today , % 二〇一九年二月二十八日
% class = 2015级 ,
% studentnumber = 1972015xxxxxx ,
% department = 物理科学与技术学院 ,
% major = 微电子科学与工程 ,
% advisor = 校内指导老师 \quad 职称 ,
% otheradvisor = 校外指导老师 \quad 职称 ,
% team = 物理科学与技术学院~理论物理 ,
% fundteam = 物理科学与技术学院~理论物理 ,
% degree = 本\quad 科 ,
% englishtitle = Your English Title ,
% majorordouble = 主修 , % 辅修
% lab = 实验室 ,
% % 以下几项本科生无需填写,也不用删除
% classified_code = 1234 , % 分类号
% security_classification = 公开 , % 内部 秘密 机密 公开 等
% UDC = 5 , % 国际十进分类法
% submit_date = 2020 年 8 月 10 日 , % 论文提交日期
% defense_date = 2020 年 8 月 11 日 , % 论文答辩日期
% conferred_date = 2020 年 8 月 21 日 , % 学位授予日期
% chairman = 张三 , % 答辩委员会主席
% referee = 李四 , % 评阅人
% }
% \usepackage{xmulogo}
% \begin{document}
% \maketitle
% \chapter*{致谢}
% 这里致谢
% \begin{abstract}*
% 中文摘要
% \keywords*{关键词1;关键词2;关键词3}
% \end{abstract}
% \begin{abstract}
% English abstract.
% \keywords{keyword1; keyword2; keyword3}
% \end{abstract}
% \xmutableofcontents % 双语目录
% \chapter{正文}{main body}
% 正文内容
% % \nocite{*}
% % \bibliography{Reference}
% \appendix
% 附录
% \backmatter
% 后记
% \end{document}
% \end{ctexexam}
%
% \subsection{编译}
%
% 本模板需要使用 \verb|xelatex| 编译才能得到正确的结果。
%
% 对于 \verb|latexmk| 用户,可以用
% \begin{frameverb}
% latexmk -xelatex main
% \end{frameverb}
% 一步到位编译好。
%
% 不用 \verb|latexmk| 的用户可以用
% \begin{frameverb}
% xelatex main
% \end{frameverb}
% 编译。
%
% 如果用了有参考文献需要编译,使用 \verb|latexmk| 编译的方法仍然可行。对于不用 \verb|latexmk| 的情况,则较为复杂,需要四步
% \begin{frameverb}
% xelatex main
% bibtex main
% xelatex main
% xelatex main
% \end{frameverb}
%
% \section{文档选项}
%
% \begin{function}[]{degree}
% \begin{syntax}
% degree = \Arg{学位}
% \end{syntax}
% 是 xmuthesis 声明学位的选项,根据学位的不同,文档风格略有不同,这是由于不同学位的毕业论文要求不同导致的。
% \end{function}
%
% \begin{optdesc}
% \item[undergraduate] 这是该选项的默认值,本科生选用该选项
% \item[master] 硕士生使用该选项
% \item[doctor] 博士生使用该选项
% \end{optdesc}
% 以硕士生为例,他应该使用
% \begin{frameverb}
% \documentclass[degree=master]{xmuthesis}
% \end{frameverb}
%
% \begin{function}[]{bibstyle}
% \begin{syntax}
% bibstyle = \Arg{参考文献样式}
% \end{syntax}
% 是控制参考文献样式的选项。模板默认加载 \verb|gbt7714| 宏包,需配合 \verb|bibtex| 编译得到最终结果。
% \end{function}
%
% \begin{optdesc}
% \item[numerical] 这是该选项的默认值,顺序编码制下,参考文献根据引用的顺序排序。引用样式是角标式。
% \item[numbers] 与 \verb|numerical| 一样是顺序编码制,但是引用使用正文模式,如“文献 [3] 中说明”
% \item[authoryear] 使用著者-出版年制
% \end{optdesc}
% 以著者-出版年制为例,应该使用
% \begin{frameverb}
% \documentclass[bibstyle=authoryear]{xmuthesis}
% \end{frameverb}
%
% 对于著者-出版年制,要获得正确的参考文献排序,需要用 \verb|key=| \Arg{拼音} 对 \verb|bib| 文件的中文作者注音,且用 \verb|&| 分隔作者。如
% \begin{ctexexam}
% @article{zhangsan,
% title={高等数学教学改革研究进展},
% author={张三 and 李四},
% key={zhang1 san1 & li3 si4},
% journal={大學數學},
% volume={23},
% number={4},
% pages={20--26},
% year={2007},
% publisher={大學數學編輯部}
% }
% \end{ctexexam}
%
%
% \begin{function}[]{font}
% \begin{syntax}
% bibstyle = \Arg{字体选项}
% \end{syntax}
% 是控制模板使用字体的命令。
% \end{function}
%
% \begin{optdesc}
% \item[empty] 这是该选项的默认值,采用 \CTeX{} 宏集的自动判断功能,自动根据系统配置字体
% \item[adobe] 采用 \CTeX{} 宏集配置的 adobe 字体,详情用 \verb|texdoc ctex| 查看
% \item[fandol] 同上
% \item[founder] 同上
% \item[mac] 同上
% \item[macnew] 同上
% \item[macold] 同上
% \item[ubuntu] 同上
% \item[windows] 同上
% \item[overleaf] 当模板在 overleaf 平台运行时,请使用该选项。这将调用 noto 中文字体
% \end{optdesc}
% 以 fandol 为例,应该使用
% \begin{frameverb}
% \documentclass[font=fandol]{xmuthesis}
% \end{frameverb}
%
% 由于学校要求英文使用 Times New Roman 和 Arial 字体,对于 Linux 用户,它们常常不是默认安装在系统中的字体,因此需要用户自行安装这两个字体。
%
%
% \begin{function}[]{nottoc, notabs, notbib}
% 是控制目录中出现的内容。
% \end{function}
% \begin{optdesc}
% \item[nottoc] 目录中不出现“目录”
% \item[nottabs] 目录中不出现“摘要”
% \item[notbib] 目录中不出现“参考文献”
% \end{optdesc}
% 以目录中不出现“摘要”和“参考文献” 为例,应该使用
% \begin{frameverb}
% \documentclass[nottabs,notbib]{xmuthesis}
% \end{frameverb}
%
% \section{信息录入}
%
% \begin{function}[]{\xmusetup}
% \begin{syntax}
% \tn{xmusetup} \Arg{键值列表}
% \end{syntax}
% 是 xmuthesis 的信息录入命令,其参数是一个键值列表,以通用的接口完成信息录入。
% \end{function}
% \begin{table}[htbp]
% \centering
% \caption{xmusetup 里的健值}
% \label{tab:xmusetup}
% \begin{tabular}{*3l}
% \toprule \\
% 值 & 解释 & 示例 \\
% \midrule
% author & 作者 & 酸奶 \\
% title & 题目 & 你的论文题目 \\
% date & 日期 & \verb|\today| 或~二〇一九年二月二十八日 \\
% class & 年级 & 2015级 \\
% studentnumber & 学号 & 1972015xxxxxx \\
% department & 学院 & 物理科学与技术学院 \\
% major & 专业 & 微电子科学与工程 \\
% advisor & 校内指导老师 & 张三 \verb|\quad| 职称 \\
% otheradvisor & 校外指导老师 & 李四 \verb|\quad| 职称 \\
% team & 所在课题组 & 物理科学与技术学院~理论物理 \\
% fundteam & 资助课题组 & 物理科学与技术学院~理论物理 \\
% degree & 学位 & 本\quad 科 \\
% englishtitle & 英文标题 & Your English Title \\
% majorordouble & 学位性质 & 主修 或 辅修 \\
% lab & 所在实验室 & 极端条件实验室 \\
% \midrule % \\
% \midrule % \\
% classified_code $^*$ & 分类号 & 1234 \\
% security_classification $^*$ & 安全等级 & 公开 内部 秘密 机密 公开 等 \\
% UDC $^*$ & 国际十进分类法 & 5 \\
% submit_date $^*$ & 论文提交日期 & 2020 年 8 月 10 日 \\
% defense_date $^*$ & 论文答辩日期 & 2020 年 8 月 11 日 \\
% conferred_date $^*$ & 学位授予日期 & 2020 年 8 月 21 日 \\
% chairman $^*$ & 答辩委员会主席 & 张三 \\
% refere $^*$ & 评阅人 & 李四 \\
% \bottomrule
% \end{tabular}
% \end{table}
% 表~\ref{tab:xmusetup}中是有的值,其中加 \( ^* \) 的值本科生无需填写,也无需删除。对于博士生和硕士生则需要填写。
%
% 例如对于毕业论文题目是“我的毕业论文”的张三,他需要在导演区填入的是
% \begin{frameverb}
% \xmusetup{
% author = 张三 ,
% title = 我的毕业论文 ,
% }
% \end{frameverb}
%
% \section{模板提供或修改过的命令和环境}
%
% \begin{function}{\maketitle}
% 该命令不仅仅是用于产生标题,还包括了承诺书等。在正确填写好 \verb|\xmusetup| 后,自动得到符合要求的的 title 。另外该命令与普通文档类一样,在 \verb|document| 环境的开头使用。例如
% \begin{ctexexam}
% \begin{document}
% \maketitle
% 其余内容
% \end{document}
% \end{ctexexam}
% \end{function}
%
% \begin{function}{\chapter, \section, \subsection}
% 这三个命令都不同于标准类文档,它们需要两个参数。第一个参数是中文的标题,第二个参数是英文的标题。在 \verb|\xmutableofcontents| 使用使用时需要加 * ,而之后的无需添加。如
% \begin{ctexexam}
% \chapter*{中文的章}{English Chapter}
% \xmutableofcontents
% \section{正文的节}{English section in main part}
% \end{ctexexam}
% \end{function}
%
% \begin{function}{abstract, \keywords}
% \verb|abstract| 环境和 \verb|keywords| 命令都有带 * 版和不带 * 版,分别对应中英文。一个简单但是完整的摘要应该是如下的样子
% \begin{ctexexam}
% \begin{abstract}*
% 中文摘要
% \keywords*{关键词1;关键词2;关键词3}
% \end{abstract}
% \begin{abstract}
% English abstract.
% \keywords{keyword1; keyword2; keyword3}
% \end{abstract}
% \end{ctexexam}
% \end{function}
%
% \begin{function}{\xmutableofcontents}
% 用于生成中英双语目录,一般在摘要结束后使用。 \verb|\tableofcontents| 不要在 xmuthesis 中使用。
% \end{function}
%
%
% \begin{function}{\cref}
% 由 \verb|cleveref| 宏包提供,并且在 xmuthesis 经过设置的智能引用命令,用于图片表格的交叉引用。使用例子
% \begin{ctexexam}
% \begin{equation}
% 1+1=2 \label{eq:1}
% \end{equation}
% \begin{equation}
% 2+2=4 \label{eq:2}
% \end{equation}
% \begin{equation}
% 3+3=6 \label{eq:3}
% \end{equation}
% \begin{equation}
% 4+4=8 \label{eq:4}
% \end{equation}
% 单引用:\cref{eq:1}
% 范围引用:\crefrange{eq:1}{eq:2}
% 连续多引用:\cref{eq:1,eq:3,eq:2} , 同于 \crefrange{eq:1}{eq:3}
% 不连续多引用:\cref{eq:1,eq:2,eq:4}
% \end{ctexexam}
% \end{function}
%
% \begin{function}{proof, law, theoty}
% 由 \verb|amsthm| 宏包提供或定制,分别对应于证明,定律和定理。注意 \verb|proof| 环境是没有编号的,另外两个是有的。简单的使用例子
% \begin{ctexexam}
% \begin{theory}[Energy–momentum relation]
% The relationship of energy, momentum and mass is
% \[E^2 = m_0^2 c^4 + p^2 c^2\]
% where $ c $ is the light speed.
% \end{theory}
% \begin{law}\label{law:box}
% Don't hide in the witness box.
% \end{law}
% \begin{proof}
% For simplicity, we use
% \[
% E=mc^2
% \]
% That's it.
% \end{proof}
% \end{ctexexam}
% \end{function}
%
% \begin{function}{\circled}
% 用于产生带圈的数字,产生带圈的数字用 \verb|\circled{1}| 。
% \end{function}
%
% \section{xmulogo 宏包}
%
% 为了方便输出高质量的校徽和校名图片,特意开发了 xmulogo 宏包。主要提供了两个命令。
% \begin{function}{\xmulogo, \xmulogon}
% \verb|\xmulogo| , \verb|\xmulogon| 分别用于产生校徽和校名。两者的用法完全一样。一下以 \verb|\xmulogo| 为例介绍其用法。用法为 \verb|\xmulogo[scale]{r,g,b}| ,其中 \verb|scale| 控制图片的尺寸,填入 $0\sim 1$ 之间的数。花括号的 \verb|{r,g,b}| 是用与控制颜色的,采用 rgb 的颜色控制方法。它是一个可选参数,不填则采用默认的颜色。以下用法均为正确用法。
% \begin{ctexexam}
% \xmulogo
% \xmulogo[0.5]
% \xmulogo{0.1,0.15,0.9}
% \xmulogo[0.4]{0.1,0.1,0.9}
% \end{ctexexam}
% \end{function}
%
% 模板封面页在 \verb|figs/xmu-flag.pdf| 不存在是会调用 \verb|xmulogo| 宏包生成相应的图片。建议像 Github 项目地址一样创建 \verb|figs| 文件,并且放入 \verb|xmu-flag.pdf| 。这样可以节约编译的时间。
% \section{一些建议}
%
%\subsection{致谢}
%
%致谢语应以简短的文字对课题研究与论文撰写过程中曾直接给予帮助的人员(例如指导教师、答疑教师及其他人员)表示自己的谢意。
%
%作为毕业论文提交时,应注意事项:致谢内容用小四号宋体。根据2016年2月施行的《厦门大学本科毕业论文(设计)规范》,致谢被放在论文起首。致谢结构一般分为三个部分:1,回顾;2,感谢; 3,承担责任以及献辞。第一部分可以简述论文写作的经历,所面对的挑战以及你如何应对。第二部分具体感谢在论文过程中给与你帮助的人。第三部分指出你将为自己的论文承担责任,如果你希望将此论文献给谁,可以在最后指出。致谢内容请亲自撰写,使其具备你个人的特色。抄袭任何模板内容是极其懒惰、没有意义、不负责任和错误的行为。
%
%
%\subsection{摘要}
% 本科生中文摘要应具有独立性和自含性,语言精炼、明确,高度概括论文内容,以 400 字左右为宜。关键词应体现论文特色,具有语义性,在论文中有明确出处,以 3—5 个为宜。关键词另起一行排在摘要的下方,每个关键词之间用中文分号“;”分开,最后一个关键词不打标点符号。
%
% 硕士与博士的中文摘要中文 600 字左右;重点概述本文研究的问题、意义、创新之处和主要观点、结论。关键词数量:不超过3个,能体现论文的主要内容,词组符合学术规范;每个关键词字数:不超过5个字;每个关键词字数:不超过5个字;
%
% 英文摘要、关键词内容与中文相同,每个关键词之间用英文
% 分号“;”加一空格分开,最后一个关键词不打标点符号。中、
% 英文摘要及其关键词各置一页内。
%
%
% \subsection{正文的基本要求}
%
% 正文从另右页开始。每一章应另起页,并从奇数页开始。正文一般从引言(绪论)开始,以结论或讨论结束。引言(绪论)应包括论文的研究目的、流程和方法等。研究领域的历史回顾、文献回溯、理论分析等内容应独立成章,用足够的文字叙述。结论应包含论文的核心观点,阐述自己的创造性成果及其在本研究领域中的意义、作用,交代研究工作的局限,提出未来工作的意见和建议。
%
% 正文由于涉及的学科、选题、研究方法、结果表达方式等有很大的差异,不作统一的规定,但要求自然科学论文应提供实验数据和图片资料真实,推理正确、结论清晰;人文和社会学科的论文应把握论点正确、论证充分、论据可靠,恰当运用系统分析和比较研究的方法进行模型或方案设计,注重实证研究和案例分析。
%
% 正文一般不少于 6000 字(不含图表、程序和计算数字)。用外国语言撰写的,字数参照 4 个英文单词折算 1 个中文字数进行计数。\footnote{以上内容仅供参考,详见《厦门大学本科毕业论文(设计)规范》}
%
%
% \subsection{学术名词}
%
% \begin{itemize}
% \item 科学技术名词术语采用全国自然科学名词审定委员会公布的规范词或国家标准、部标准中规定的名称,尚未统一规定或有争议的名词术语,可采用惯用的名称。
% \item 特定含义的名词术语或新名词、以及使用外文缩写代替某一名词术语时,首次出现时应在括号内注明其含义,如:OECD(Organization for Economic Co-operation and Development)
%代替经济合作发展组织。
% \item 外国人名一般采用英文原名,可不译成中文,英文人名按名前姓后的原则书写。一般很熟知的外国人名(如牛顿、爱因斯坦、达尔文、马克思等)可按通常标准译法写译名。
% \end{itemize}
%
%
%
%\subsection{物理量名称、符号与计量}
%
%
%\begin{itemize}
% \item 论文中某一物理量的名称和符号应统一,一律采用国务院发布的《中华人民共和国法定计量单位》或者国际公认的计量单位。单位名称和符号的书写方式,应采用国际通用符号。
% \item 在不涉及具体数据表达时允许使用中文计量单位如“千克”。
% \item 表达时间使用“2014 年 6 月”,不能使用“14 年 6 月”或“2014.6”。不能使用 80 年代,而应为上世纪 80 年代或 20 世纪80 年代。表达时刻应采用中文计量单位,如“下午 3 点 10 分”,不能写成“3h10min”,在表格中可以用“3:10PM”表示。
% \item 物理量符号、物理量常量、变量符号用斜体,计量单位符号均用正体。
%\end{itemize}
%
% 单位书写推荐用 \verb|siunitx| 宏包。
%
% 数学和物理的学生强烈推荐学习使用 \verb|physics| 宏包。
%
% \subsection{数字}
%
% \begin{enumerate}
% \item 无特别约定情况下,一般均采用阿拉伯数字表示。
% \item 小数的表示方法:一般情形下,小于 1 的数,需在小数点之前加 0。但当某些特殊数字不可能大于 1 时(如相关系数、比率、概率值),小数点之前的 0 可去掉,如 $ r=.26,p<.05 $ 。
% \item 统计符号的格式:一般除 $ \alpha , \beta , \lambda , \epsilon \text{以及} V $ 等符号外,其余统计符号一律以斜体字呈现,如\textit{ANCOVA,ANOVA,MANOVA,N,nl,M,SD,F,p,r } 等。
% \end{enumerate}
%
%
% \subsection{公式}
%
% \begin{enumerate}
% \item 公式应另起一行缩略书写,居于中央(注意行首无缩进),与周围文字留足够的空间区分开。
% \item 公式的编号用英文圆括号括起,放在公式右边行末,在公式和编号之间不加虚线。子公式可不编序号,需要引用时可加编 a、b、c……,重复引用的公式不得另编新序号。公式较多时,可分章编号,但应与表格、图的编序方式统一。
% \item 较长的公式最好在等号处转行,或在运算符号(如“+”、“-”号)处转行,等号或运算符号应在转行后的行首。公式中分数线的横线,其长度应等于或略大于分子和分母中较长的一方。
% \end{enumerate}
%
% \subsection{表格}
%
% \begin{enumerate}
% \item 表格要有:表号,表名,单位。表号和表名居表上方正中(注意行首无缩进);表格只有一个单位时,单位在表右上方。表较多时,可分章编号,但须与插图、公式的编序方式统一。
% \item 表格应优先采用三线表,三线表头尾两条线宽 1 磅,中间线宽 0.75 磅。也可根据需要使用其他格式。
% \item 表格如参考其他资料,应标明“作者、来源名称、时间”,置表格左下方。
% \item 表格允许下页接写,接写时应重复表号,表号后跟表名(可省略)和“(续)”,置于表上方。续表应重复表头。
% \item 表格应放在离正文首次出现处最近的地方,不应超前和过分拖后。表与上下正文之间各空一行。
% \end{enumerate}
%
% 三段表的示例为
% \begin{ctexexam}
% \begin{table}[!ht]
% \centering
% \begin{threeparttable}[b]
% \zihao{5}
% \caption{表格示例}
% \begin{tabular}{ccc}
% \toprule
% & ABS & CB \\
% \midrule
% (Intercept) & 5.482 & 3.4871 \\
% ABC & 1.1173 & 1.1933 \\
% DEF & 8.1752* & 2.6836 \\
% \bottomrule
% \multicolumn{3}{c}{*p<0.1; **p<0.05; ***p<0.01} \\
% \bottomrule
% \end{tabular}%
% \label{tab:mlogit}%
% \begin{tablenotes}
% \zihao{5}\item Note: These are estimates of multinomial logit model.
% \end{tablenotes}
% \end{threeparttable}
% \end{table}%
% \end{ctexexam}
%
%
% \subsection{插图}
%
% \begin{enumerate}
% \item 图包括曲线图、构造图、示意图、框图、流程图、记录图、地图、照片等。图应与文字内容相符,技术内容正确。所有制图应符合国家标准和专业标准,对无规定符号的图形应采用该行业的常用画法。
% \item 图要有:图号,图名,单位。图号和图名要居图下方的正中(注意行首无缩进)。图较多时,可分章编号,但须与表格、公式的编序方式统一。
% \item 图如参考其他资料,要示明“作者、来源名称、时间”,置图左下方。
% \item 由若干分图组成的插图,分图用 a、b、c……标序。分图的图名以及图中各种代号的意义,以图注形式写在图题下方,先写分图名,另起行写代号的意义。
% \item 图与图标题、图序号为一个整体,不得拆开排版为两页。当页空白不够排版该图整体时,可将其后文字部分提前,将图移至次页最前面。
% \end{enumerate}
%
%
%
% \subsection{注释}
%
% 当文中的字、词或短语需要进一步加以说明,而又没有具体的文献来源时,用注释。注释不宜过多。
% 篇名、作者注置于当页地脚。对文内有关特定内容的注释可夹在文内(加圆括号),也可排在当页地脚,注释序号以带圈的数字形式标示在被注释词条的右上角。注脚的命令如下\verb|\footnote{注脚内容}|。
%
%\subsection{参考文献与引用}
%
% 本模板默认引用 \verb|gbt7714| 宏包,可以使用它处理参考文献。
%
% 以下是一些参考文献的引用。应该能有合适的。不合适可以修改。
%
% \begin{ctexexam}
% \cite{label1}
% \cite{label,label2}
% \citet{label3}
% \citep{label3}
% \citealt{label3}
% \citeauthor{label3}
% \citeyearpar{label3}
% \end{ctexexam}
%
%
% \section{代码插入}
%
% 模板已加载 \verb|listings| 宏包,并且简单设置过。
% 可以使用 \verb|lstlisting| 环境来展示代码。
% 下面是一个Matlab的代码的插入示例,还可以插入其它类型的代码。有额外需求可以添加。
%
% \begin{frameverb}
% \lstinputlisting[language=Matlab]{Plot.m}
% \end{frameverb}
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
% \end{documentation}
%
% \StopEventually{}
%
%
%\begin{implementation}
% \clearpage
% \section{代码实现}
%<*class>
% \begin{macrocode}
\ExplSyntaxOn
\def\IfXeTeXTF#1#2{\csname sys_if_engine_xetex:TF\endcsname{#1}{#2}}
\IfXeTeXTF{
% \PassOptionsToClass{fontset=none}{ctexbook}
\PassOptionsToPackage{no-math}{fontspec}
\PassOptionsToPackage{utf8}{inputenc}
}{}
\sys_if_engine_pdftex:T {
\PassOptionsToClass{UTF8}{ctexbook}
\msg_new:nnn { engine } { msg } {
Don't~use~pdfLaTeX~to~compile~the~final~TeX~files.
}
\msg_warning:nn { engine } { msg }
}
\ProvidesClass{ xmuthesis }[2020/10/04 v0.4.1 XMU thesis]
\PassOptionsToPackage{subfigure}{tocloft}
\PassOptionsToPackage{noend}{algpseudocode}
\PassOptionsToPackage{para}{threeparttable}
\PassOptionsToPackage{sort&compress}{natbib}
\bool_set_false:N \l__xmu_advanced_font_bool
\bool_set_false:N \l__xmu_overleaf_font_bool
\bool_set_false:N \l__xmu_undergraduate_bool
\bool_set_false:N \l__xmu_master_bool
\bool_set_false:N \l__xmu_doctor_bool
\bool_set_true:N \l__xmu_toc_toc_bool
\bool_set_true:N \l__xmu_toc_abs_bool
\bool_set_true:N \l__xmu_toc_ref_bool
\keys_define:nn { xmuthesis }{
degree .choice: ,
degree .default:n = undergraduate ,
degree / undergraduate .code:n = \bool_set_true:N \l__xmu_undergraduate_bool ,
degree / master .code:n = \bool_set_true:N \l__xmu_master_bool ,
degree / doctor .code:n = \bool_set_true:N \l__xmu_doctor_bool ,
nottoc .code:n = \bool_set_false:N \l__xmu_toc_toc_bool ,
notabs .code:n = \bool_set_false:N \l__xmu_toc_abs_bool ,
notbib .code:n = \bool_set_false:N \l__xmu_toc_ref_bool ,
bibstyle .choice: ,
bibstyle .default:n = numerical ,
bibstyle / numerical .code:n = ,
bibstyle / numbers .code:n =
\AfterPackage{gbt7714}{\citestyle{numbers}} ,
bibstyle / authoryear .code:n =
\AfterPackage{gbt7714}{\bibliographystyle{gbt7714-author-year}} ,
bibstyle / unknown .code:n =
\msg_error:nnxxx { xmuthesis } { unknown-choice } { bibstyle }
{ numerical, numbers, authoryear }
{ The~choice~' #1 '~is~invalid~for~bibstyle} ,
font .choice: ,
font .default:n = empty ,
font / adobe .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / fandol .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / founder .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / mac .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / macnew .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / macold .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / windows .code:n = \PassOptionsToClass{fontset = #1}{ctexbook} ,
font / ubuntu .code:n = \PassOptionsToClass{fontset = #1}{ctexbook}
\msg_new:nnn { ubuntu font } { msg } {
You~are~using~the~default~fonts,~so~you~better~change~it~by~font=adobe,
~or~advance.~If~you~choose~them,
~you~should~download~the~necessary~font~and~put~them~in~the~right~place.
}
\msg_warning:nn { ubuntu font } { msg } ,
font / overleaf .code:n = \PassOptionsToClass{fontset =none}{ctexbook}
\bool_set_true:N \l__xmu_overleaf_font_bool ,
font / advance .code:n = \PassOptionsToClass{fontset =none}{ctexbook}
\bool_set_true:N \l__xmu_advanced_font_bool ,
font / empty .code:n = \msg_new:nnn { font } { msg } {
You~are~using~the~default~fonts,~you~can~change~it~by~font=adobe,
~windows,~mac,~advance~and~so~on.
}
\msg_warning:nn { font } { msg },
font / unknown .code:n = \msg_error:nnxxx { xmuthesis } { unknown-choice }{ font }{
empty, adobe, fandol, founder, mac, macnew, macold, ubuntu, windows, advance
}{
The~choice~' #1 '~is~invalid~for~font
},
}
\ProcessKeysOptions { xmuthesis }
\LoadClass [ zihao=-4 , openright, ] {ctexbook}
\sys_if_engine_pdftex:T {
\RequirePackage{microtype,amsfonts}
}
\NewDocumentCommand\degree{ m m m }{
\IfBooleanTF{\l__xmu_undergraduate_bool}{
#1
}{
\IfBooleanTF{\l__xmu_master_bool}{
#2
}{
#3
}
}
}
\NewDocumentCommand\undergratuateTF{ m m }{
\IfBooleanTF{\l__xmu_undergraduate_bool}{
#1
}{
#2
}
}
\undergratuateTF{
}{
\RequirePackage{xeCJKfntef}
}
\RequirePackage[UseMSWordMultipleLineSpacing,MSWordLineSpacingMultiple=1.5]
{zhlineskip}
\RequirePackage{
amsthm ,
physics ,
siunitx ,
verbatim ,
multirow ,
geometry ,
fancyhdr ,
graphicx ,
% longtable ,
booktabs ,
tabularx ,
caption ,
threeparttable ,
subfig ,
tocloft ,
% tocbibind ,
xcolor ,
listings ,
gbt7714 ,
% float ,
hyperref ,
algorithm ,
algpseudocode ,
cleveref ,
}
\IfXeTeXTF{
\RequirePackage{unicode-math}
\setmainfont{Times~New~Roman} % Times~New~Roman Source~Serif~Pro
\setsansfont{Arial} % Arial Source~Sans~Pro
\unimathsetup{
math-style = ISO ,
bold-style = ISO ,
nabla = upright ,
partial = upright ,
}
}{}
\geometry{
left = 2cm ,
right = 2cm ,
top = 4cm ,
bottom = 3cm ,
}
\bool_if:NTF \l__xmu_undergraduate_bool{
\captionsetup{font={small,bf}}
}{
\captionsetup{font={normalsize,bf}}
}
\hypersetup{
% bookmarks=true ,
bookmarksnumbered = false ,
linkcolor = black ,
citecolor = blue ,
urlcolor = green ,
colorlinks ,
}
\bool_if:NT \l__xmu_advanced_font_bool{
\setmonofont[
Extension = .otf ,
Path = fonts/ ,
UprightFont = *-regular ,
BoldFont = *-bold ,
ItalicFont = *-it ,
BoldItalicFont = *-boldit] {SourceCodePro}
\setCJKmonofont[
Extension = .otf ,
Path = fonts/ ,
UprightFont = *-Regular ,
BoldFont = *-Bold ,
ItalicFont = *-Regular ,
BoldItalicFont = *-Bold ,
ItalicFeatures = FakeSlant ,
BoldItalicFeatures = FakeSlant] {NotoSansMonoCJKsc}
\setCJKmainfont[
Extension = .otf ,
Path = fonts/ ,
UprightFont = *-Regular ,
BoldFont = *-Bold ,
ItalicFont = *-Regular ,
BoldItalicFont = *-Bold ,
ItalicFeatures = FakeSlant ,
BoldItalicFeatures = FakeSlant] {NotoSerifCJKsc}
\setCJKsansfont[
Extension = .otf ,
Path = fonts/ ,
UprightFont = *-Regular ,
BoldFont = *-Bold ,
ItalicFont = *-Regular ,
BoldItalicFont = *-Bold ,
ItalicFeatures = FakeSlant ,
BoldItalicFeatures = FakeSlant] {NotoSansCJKsc}
\setmathfont[
Extension = .otf ,
Path = fonts/ ,
BoldFont = XITSMath-Bold ,
StylisticSet = 8] {XITSMath-Regular}
}
\bool_if:NT \l__xmu_overleaf_font_bool{
% \setmainfont{Noto~Serif}
% \setsansfont{Noto~Sans}
% \setmonofont{Noto~Mono}
\setCJKmainfont{Noto~Serif~CJK~SC}
\setCJKsansfont{Noto~Sans~CJK~SC}
\setCJKmonofont{Noto~Sans~Mono~CJK~SC}
% \setmathfont{XITSMath}
}
\RenewDocumentCommand\chaptermark{m}{\markboth{#1}{#1}}
\fancyhf{} % cleans original header&footer
\fancyhead[CE]{\zihao{-5} \l__xmu_title_tl}
\fancyhead[CO]{\zihao{-5} \leftmark} %\leftmark \chaptermark
\fancyfoot[C]{\thepage}
\RenewDocumentCommand\headrulewidth{}{0pt}
\ctexset{
today = big, % format date
chapter = {
format = \centering\zihao{-3}\sffamily,
beforeskip = -15pt,
afterskip = 30pt,
pagestyle = fancy,},%
section = {
format = \zihao{4}\sffamily,
beforeskip = 10pt,
afterskip = 10pt,
},
subsection = {
format = \zihao{4}\sffamily,
},
}
\newlistof{indice}{tce}{Table~of~Contents}
\setlength{\cftbeforetcetitleskip}{-30pt}
\setlength{\cftbeforechapskip}{8pt}
\setlength{\cftbeforesecskip}{6pt}
\setlength{\cftbeforesubsecskip}{4pt}
\setlength{\cftbeforetoctitleskip}{-30pt}
\setlength{\cftsecnumwidth}{3.2em}
\setlength{\cftsubsecindent}{4.5em}
\RenewDocumentCommand\cftchapleader{}{\cftdotfill{\cftdotsep}} % for chapters
% Add \thispagestyle{plain} to the font setting
% to force the pagestyle in toc always be plain,
% or it maybe influence by my slfe-define \cleanrdoublepage
\bool_if:NTF \l__xmu_undergraduate_bool{
\RenewDocumentCommand\cftchapfont{}{
%\thispagestyle{plain}
\zihao{4}\sffamily
}% Chapter font
\RenewDocumentCommand\cftsecfont{}{
%\thispagestyle{plain}
\zihao{-3}\sffamily
}% Section font
\RenewDocumentCommand\cftsubsecfont{}{
%\thispagestyle{plain}
\zihao{-3}\rmfamily
}%subsection font
}{
\RenewDocumentCommand\cftchapfont{}{
\thispagestyle{plain}\zihao{4}\sffamily\bfseries
}% Chapter font
\RenewDocumentCommand\cftsecfont{}{
\thispagestyle{plain}\zihao{-4}\sffamily\bfseries
}% Section font
\RenewDocumentCommand\cftsubsecfont{}{
\thispagestyle{plain}\zihao{-4}\rmfamily
}%subsection font
}
% \RenewDocumentCommand\cfttoctitlefont{}
% {\hfill\zihao{-3}\sffamily 目\quad 录\hfill}%\phantom{mmmmmmmmm}
% \RenewDocumentCommand\cftaftertoctitle{}{\hfill}
\RenewDocumentCommand\cfttoctitlefont{}{\hspace*{\fill}\zihao{-3}\sffamily}
\RenewDocumentCommand\cftaftertoctitle{}{\hspace*{\fill}}
% \RenewDocumentCommand\cfttcetitlefont{}{
% \hfill\zihao{-3}\rmfamily\bfseries Table~of~Contents\hfill}%\phantom{mmmmmmm}
% \RenewDocumentCommand\cftaftertcetitle{}{\hfill}
\RenewDocumentCommand\cfttcetitlefont{}{\hspace*{\fill}\zihao{-3}\rmfamily\bfseries}
\RenewDocumentCommand\cftaftertcetitle{}{\hspace*{\fill}}
\let\oldappendix\appendix
\bool_set_false:N \l__xmu_appendix_bool
\RenewDocumentCommand\appendix{}{
\oldappendix
\bool_set_true:N \l__xmu_appendix_bool
}
\makeatletter
\NewDocumentCommand\captce { m } {
\if@mainmatter
\bool_if:NTF \l__xmu_appendix_bool{
\addcontentsline{tce}{chapter}{
\rmfamily\bfseries \protect\makebox[5em][l]{Appendix~\thechapter}~\;\;#1}
}{
\addcontentsline{tce}{chapter}{
\rmfamily\bfseries \protect\makebox[5em][l]{Chapter~\thechapter}#1}
}
\else
\addcontentsline{tce}{chapter}{
\rmfamily\bfseries\protect\makebox[0em][l]{}#1}
\fi
}
\makeatother
\NewDocumentCommand\sectce { m } {
\addcontentsline{tce}{section}{
\rmfamily\bfseries\protect\makebox[2.3em][l]{\thesection}#1