summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-09-05 03:04:44 +0000
committerNorbert Preining <norbert@preining.info>2022-09-05 03:04:44 +0000
commit428a6bcc4c634ccfe1ea8d9c1a3e4318037a0fee (patch)
tree1ce9c1f647600748ee81625267bf6a9caf46b385
parent909458d2a89fa74c77683cbaf6f3b83861b186c3 (diff)
CTAN sync 202209050304
-rw-r--r--FILES.byname420
-rw-r--r--FILES.byname.gzbin2453532 -> 2453576 bytes
-rw-r--r--FILES.last07days431
-rw-r--r--macros/latex/contrib/bithesis/README.md5
-rw-r--r--macros/latex/contrib/bithesis/bithesis.dtx3249
-rw-r--r--macros/latex/contrib/bithesis/bithesis.ins22
-rw-r--r--macros/latex/contrib/bithesis/bithesis.pdfbin339348 -> 818866 bytes
-rw-r--r--macros/latex/contrib/bithesis/contributing-zh.md2
-rw-r--r--macros/latex/contrib/democodetools/README.md42
-rw-r--r--macros/latex/contrib/democodetools/doc/democodetools.pdfbin0 -> 377361 bytes
-rw-r--r--macros/latex/contrib/democodetools/doc/democodetools.tex355
-rw-r--r--macros/latex/contrib/democodetools/latex/democodelisting.sty522
-rw-r--r--macros/latex/contrib/democodetools/latex/democodetools.sty340
-rw-r--r--macros/latex/contrib/fduthesis/README.md6
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis-code.pdfbin920850 -> 965673 bytes
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis-doc.dtx391
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis-en.pdfbin155894 -> 162961 bytes
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis-logo.dtx3
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis.dtx1690
-rw-r--r--macros/latex/contrib/fduthesis/fduthesis.pdfbin402649 -> 424983 bytes
-rw-r--r--macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdfbin802991 -> 816736 bytes
-rw-r--r--macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex145
-rw-r--r--macros/latex/contrib/proflycee/tex/ProfLycee.sty89
-rw-r--r--macros/latex/contrib/unbtex/README.md4
-rw-r--r--macros/latex/contrib/unbtex/unbtex-example.pdfbin1212119 -> 1212636 bytes
-rw-r--r--macros/latex/contrib/unbtex/unbtex-example.tex4
-rw-r--r--macros/latex/contrib/unbtex/unbtex.cls11
-rw-r--r--macros/texinfo/latest/texinfo.tex4
-rw-r--r--support/latex2nemeth/README6
-rwxr-xr-x[-rw-r--r--]support/latex2nemeth/contrib/nemeth2odt0
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl4
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb132
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2405628 -> 2404660 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini8
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini8
-rw-r--r--timestamp2
39 files changed, 6386 insertions, 1527 deletions
diff --git a/FILES.byname b/FILES.byname
index 32894b208f..11ee2cab96 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -5281,7 +5281,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2022/09/03 | 78953 | FILES.last07days
+2022/09/04 | 61408 | FILES.last07days
2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs
2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf
2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf
@@ -189090,7 +189090,7 @@
2014/11/26 | 125896 | install/macros/latex/contrib/everyhook.tds.zip
2018/10/23 | 686749 | install/macros/latex/contrib/exsol.tds.zip
2016/06/27 | 190038 | install/macros/latex/contrib/fancytabs.tds.zip
-2020/08/30 | 1769613 | install/macros/latex/contrib/fduthesis.tds.zip
+2022/09/04 | 1838516 | install/macros/latex/contrib/fduthesis.tds.zip
2013/05/03 | 382005 | install/macros/latex/contrib/feynmp-auto.tds.zip
2019/09/21 | 131617 | install/macros/latex/contrib/filecontents.tds.zip
2013/03/27 | 577400 | install/macros/latex/contrib/filedate.tds.zip
@@ -210143,13 +210143,13 @@
2001/08/18 | 135415 | macros/latex/contrib/biocon/source.pdf
2001/08/18 | 23396 | macros/latex/contrib/biocon/source.tex
2005/04/30 | 295813 | macros/latex/contrib/biocon.zip
-2022/05/09 | 55864 | macros/latex/contrib/bithesis/bithesis.dtx
-2022/05/09 | 3303 | macros/latex/contrib/bithesis/bithesis.ins
-2022/05/09 | 339348 | macros/latex/contrib/bithesis/bithesis.pdf
-2022/05/09 | 2332 | macros/latex/contrib/bithesis/contributing.md
-2022/05/09 | 2649 | macros/latex/contrib/bithesis/contributing-zh.md
-2022/05/09 | 1992 | macros/latex/contrib/bithesis/README.md
-2022/05/09 | 354825 | macros/latex/contrib/bithesis.zip
+2022/09/04 | 151679 | macros/latex/contrib/bithesis/bithesis.dtx
+2022/09/04 | 3720 | macros/latex/contrib/bithesis/bithesis.ins
+2022/09/04 | 818866 | macros/latex/contrib/bithesis/bithesis.pdf
+2022/09/04 | 2332 | macros/latex/contrib/bithesis/contributing.md
+2022/09/04 | 2643 | macros/latex/contrib/bithesis/contributing-zh.md
+2022/09/04 | 1993 | macros/latex/contrib/bithesis/README.md
+2022/09/04 | 839081 | macros/latex/contrib/bithesis.zip
2015/12/11 | 25038 | macros/latex/contrib/bitpattern/bitpattern.dtx
2015/12/11 | 1753 | macros/latex/contrib/bitpattern/bitpattern.ins
2015/12/11 | 175733 | macros/latex/contrib/bitpattern/bitpattern.pdf
@@ -213250,6 +213250,12 @@
2018/12/30 | 1110 | macros/latex/contrib/delimset/README.txt
2018/12/30 | 328783 | macros/latex/contrib/delimset.zip
2011/09/15 | 301243 | macros/latex/contrib/delim.zip
+2022/09/04 | 377361 | macros/latex/contrib/democodetools/doc/democodetools.pdf
+2022/09/04 | 14263 | macros/latex/contrib/democodetools/doc/democodetools.tex
+2022/09/04 | 19420 | macros/latex/contrib/democodetools/latex/democodelisting.sty
+2022/09/04 | 12726 | macros/latex/contrib/democodetools/latex/democodetools.sty
+2022/09/04 | 1918 | macros/latex/contrib/democodetools/README.md
+2022/09/04 | 364510 | macros/latex/contrib/democodetools.zip
2022/06/13 | 91195 | macros/latex/contrib/denisbdoc/denisbdoc.dtx
2022/06/13 | 14679 | macros/latex/contrib/denisbdoc/denisbdoc.pdf
2022/06/13 | 485 | macros/latex/contrib/denisbdoc/README.md
@@ -216002,17 +216008,17 @@
2022/02/01 | 816 | macros/latex/contrib/fcolumn/makefile
2022/02/01 | 3054 | macros/latex/contrib/fcolumn/README
2022/02/01 | 341514 | macros/latex/contrib/fcolumn.zip
-2020/08/30 | 920850 | macros/latex/contrib/fduthesis/fduthesis-code.pdf
-2020/08/30 | 63790 | macros/latex/contrib/fduthesis/fduthesis-doc.dtx
-2020/08/30 | 219590 | macros/latex/contrib/fduthesis/fduthesis.dtx
-2020/08/30 | 155894 | macros/latex/contrib/fduthesis/fduthesis-en.pdf
-2020/08/30 | 259421 | macros/latex/contrib/fduthesis/fduthesis-logo.dtx
-2020/08/30 | 402649 | macros/latex/contrib/fduthesis/fduthesis.pdf
-2020/08/30 | 10688 | macros/latex/contrib/fduthesis/fudan-emblem-new.pdf
-2020/08/30 | 15957 | macros/latex/contrib/fduthesis/fudan-emblem.pdf
-2020/08/30 | 9952 | macros/latex/contrib/fduthesis/fudan-name.pdf
-2020/08/30 | 2463 | macros/latex/contrib/fduthesis/README.md
-2020/08/30 | 1637554 | macros/latex/contrib/fduthesis.zip
+2022/09/04 | 965673 | macros/latex/contrib/fduthesis/fduthesis-code.pdf
+2022/09/04 | 63845 | macros/latex/contrib/fduthesis/fduthesis-doc.dtx
+2022/09/04 | 227168 | macros/latex/contrib/fduthesis/fduthesis.dtx
+2022/09/04 | 162961 | macros/latex/contrib/fduthesis/fduthesis-en.pdf
+2022/09/04 | 259394 | macros/latex/contrib/fduthesis/fduthesis-logo.dtx
+2022/09/04 | 424983 | macros/latex/contrib/fduthesis/fduthesis.pdf
+2022/09/04 | 10688 | macros/latex/contrib/fduthesis/fudan-emblem-new.pdf
+2022/09/04 | 15957 | macros/latex/contrib/fduthesis/fudan-emblem.pdf
+2022/09/04 | 9952 | macros/latex/contrib/fduthesis/fudan-name.pdf
+2022/09/04 | 2456 | macros/latex/contrib/fduthesis/README.md
+2022/09/04 | 1712439 | macros/latex/contrib/fduthesis.zip
2021/06/13 | 0 | macros/latex/contrib/fei/10.3
2021/06/13 | 120844 | macros/latex/contrib/fei/fei.dtx
2021/06/13 | 653620 | macros/latex/contrib/fei/fei.pdf
@@ -226766,21 +226772,21 @@
2022/04/26 | 323 | macros/latex/contrib/proflabo/README.md
2022/04/26 | 9327 | macros/latex/contrib/proflabo/tex/ProfLabo.sty
2022/04/26 | 136164 | macros/latex/contrib/proflabo.zip
-2022/09/02 | 32 | macros/latex/contrib/proflycee/doc/basique.csv
-2022/09/02 | 968 | macros/latex/contrib/proflycee/doc/cap.csv
+2022/09/03 | 32 | macros/latex/contrib/proflycee/doc/basique.csv
+2022/09/03 | 968 | macros/latex/contrib/proflycee/doc/cap.csv
2022/06/28 | 9278 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_a.png
2022/06/28 | 13958 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_b.png
2022/06/28 | 9989 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_c2.png
2022/06/28 | 11759 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_c.png
2022/06/28 | 7316 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_d.png
2022/06/28 | 9599 | macros/latex/contrib/proflycee/doc/graphics/pl-doc-stats_e.png
-2022/09/02 | 736 | macros/latex/contrib/proflycee/doc/perroquet.csv
-2022/09/02 | 802991 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
-2022/09/02 | 142772 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
-2022/09/02 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
+2022/09/03 | 736 | macros/latex/contrib/proflycee/doc/perroquet.csv
+2022/09/03 | 816736 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
+2022/09/03 | 148604 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
+2022/09/03 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
2022/08/10 | 439 | macros/latex/contrib/proflycee/README.md
-2022/09/02 | 65293 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
-2022/09/02 | 889526 | macros/latex/contrib/proflycee.zip
+2022/09/03 | 68656 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
+2022/09/04 | 904793 | macros/latex/contrib/proflycee.zip
1996/02/05 | 1760 | macros/latex/contrib/progkeys/demo/demo.tex
1996/02/05 | 459 | macros/latex/contrib/progkeys/demo/prog1.tex
1996/02/05 | 347 | macros/latex/contrib/progkeys/demo/prog2.tex
@@ -234218,30 +234224,30 @@
2014/04/21 | 351465 | macros/latex/contrib/unamth-template/tesis.pdf
2014/04/21 | 5583 | macros/latex/contrib/unamth-template/tesis.tex
2014/04/22 | 5394231 | macros/latex/contrib/unamth-template.zip
-2022/07/29 | 2039 | macros/latex/contrib/unbtex/README.md
-2022/07/29 | 17504 | macros/latex/contrib/unbtex/unbtex.cls
-2022/07/29 | 558 | macros/latex/contrib/unbtex/unbtex-example/anexo-a.tex
-2022/07/29 | 424 | macros/latex/contrib/unbtex/unbtex-example/anexo-b.tex
-2022/07/29 | 2714 | macros/latex/contrib/unbtex/unbtex-example/apendice-a.tex
-2022/07/29 | 624 | macros/latex/contrib/unbtex/unbtex-example/apendice-b.tex
-2022/07/29 | 2752 | macros/latex/contrib/unbtex/unbtex-example/capitulo1.tex
-2022/07/29 | 26805 | macros/latex/contrib/unbtex/unbtex-example/capitulo2.tex
-2022/07/29 | 3814 | macros/latex/contrib/unbtex/unbtex-example/capitulo3.tex
-2022/07/29 | 2448 | macros/latex/contrib/unbtex/unbtex-example/capitulo4.tex
-2022/07/29 | 214 | macros/latex/contrib/unbtex/unbtex-example/capitulo5.tex
-2022/07/29 | 373 | macros/latex/contrib/unbtex/unbtex-example/codigos/controle.m
-2022/07/29 | 1671 | macros/latex/contrib/unbtex/unbtex-example/codigos/controleSmithPredictor.py
-2022/07/29 | 972 | macros/latex/contrib/unbtex/unbtex-example/codigos/ModalReduction.jl
-2022/07/29 | 19971 | macros/latex/contrib/unbtex/unbtex-example/figuras/1280px-LaTeX-logo.png
-2022/07/29 | 1356 | macros/latex/contrib/unbtex/unbtex-example/figuras/capa_fundo.pdf
-2022/07/29 | 99154 | macros/latex/contrib/unbtex/unbtex-example/figuras/fig1.eps
-2022/07/29 | 31319 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-grafico.pdf
-2022/07/29 | 245216 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-marca.pdf
-2022/07/29 | 1212119 | macros/latex/contrib/unbtex/unbtex-example.pdf
-2022/07/29 | 5069 | macros/latex/contrib/unbtex/unbtex-example/references.bib
-2022/07/29 | 11441 | macros/latex/contrib/unbtex/unbtex-example/referencias.bib
-2022/07/29 | 14364 | macros/latex/contrib/unbtex/unbtex-example.tex
-2022/07/30 | 1491496 | macros/latex/contrib/unbtex.zip
+2022/09/04 | 2093 | macros/latex/contrib/unbtex/README.md
+2022/09/04 | 17463 | macros/latex/contrib/unbtex/unbtex.cls
+2022/09/04 | 558 | macros/latex/contrib/unbtex/unbtex-example/anexo-a.tex
+2022/09/04 | 424 | macros/latex/contrib/unbtex/unbtex-example/anexo-b.tex
+2022/09/04 | 2714 | macros/latex/contrib/unbtex/unbtex-example/apendice-a.tex
+2022/09/04 | 624 | macros/latex/contrib/unbtex/unbtex-example/apendice-b.tex
+2022/09/04 | 2752 | macros/latex/contrib/unbtex/unbtex-example/capitulo1.tex
+2022/09/04 | 26805 | macros/latex/contrib/unbtex/unbtex-example/capitulo2.tex
+2022/09/04 | 3814 | macros/latex/contrib/unbtex/unbtex-example/capitulo3.tex
+2022/09/04 | 2448 | macros/latex/contrib/unbtex/unbtex-example/capitulo4.tex
+2022/09/04 | 214 | macros/latex/contrib/unbtex/unbtex-example/capitulo5.tex
+2022/09/04 | 373 | macros/latex/contrib/unbtex/unbtex-example/codigos/controle.m
+2022/09/04 | 1671 | macros/latex/contrib/unbtex/unbtex-example/codigos/controleSmithPredictor.py
+2022/09/04 | 972 | macros/latex/contrib/unbtex/unbtex-example/codigos/ModalReduction.jl
+2022/09/04 | 19971 | macros/latex/contrib/unbtex/unbtex-example/figuras/1280px-LaTeX-logo.png
+2022/09/04 | 1356 | macros/latex/contrib/unbtex/unbtex-example/figuras/capa_fundo.pdf
+2022/09/04 | 99154 | macros/latex/contrib/unbtex/unbtex-example/figuras/fig1.eps
+2022/09/04 | 31319 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-grafico.pdf
+2022/09/04 | 245216 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-marca.pdf
+2022/09/04 | 1212636 | macros/latex/contrib/unbtex/unbtex-example.pdf
+2022/09/04 | 5069 | macros/latex/contrib/unbtex/unbtex-example/references.bib
+2022/09/04 | 11441 | macros/latex/contrib/unbtex/unbtex-example/referencias.bib
+2022/09/04 | 14373 | macros/latex/contrib/unbtex/unbtex-example.tex
+2022/09/04 | 1492083 | macros/latex/contrib/unbtex.zip
2006/09/09 | 3917 | macros/latex/contrib/underlin/underlin.dtx
1997/02/17 | 111 | macros/latex/contrib/underlin/underlin.ins
2006/09/09 | 83139 | macros/latex/contrib/underlin/underlin.pdf
@@ -240390,7 +240396,7 @@
2022/01/10 | 22769 | macros/texinfo/latest/htmlxref.cnf
2022/04/08 | 58497 | macros/texinfo/latest/texi2dvi
2021/07/03 | 1163 | macros/texinfo/latest/texi2pdf
-2022/09/01 | 375463 | macros/texinfo/latest/texinfo.tex
+2022/09/03 | 375460 | macros/texinfo/latest/texinfo.tex
2021/02/09 | 67 | macros/texinfo/texinfo/ABOUT-NLS
2021/07/03 | 46407 | macros/texinfo/texinfo/aclocal.m4
2019/12/01 | 2201 | macros/texinfo/texinfo/AUTHORS
@@ -273751,19 +273757,19 @@
2018/11/25 | 1101 | support/latex2man/README
2018/11/25 | 29 | support/latex2man/THIS-IS-VERSION-1.29
2018/11/25 | 358895 | support/latex2man.zip
-2022/06/11 | 741 | support/latex2nemeth/contrib/nemeth2odt
-2022/06/04 | 460304 | support/latex2nemeth/doc/unicode-math-braille.pdf
-2022/07/02 | 234422 | support/latex2nemeth/doc/unicode-math-braille.tex
-2022/06/30 | 166709 | support/latex2nemeth/encodings/nemeth.json
-2022/06/30 | 166981 | support/latex2nemeth/encodings/polytonic.json
-2022/06/11 | 2775 | support/latex2nemeth/examples/mathpics.tex
-2022/06/11 | 13560 | support/latex2nemeth/examples/mathtest.tex
-2022/06/11 | 35147 | support/latex2nemeth/gpl-3.0.txt
-2022/06/11 | 124 | support/latex2nemeth/latex2nemeth
-2022/06/30 | 8154981 | support/latex2nemeth/latex2nemeth.jar
-2022/06/30 | 6093 | support/latex2nemeth/README
-2022/06/30 | 229408 | support/latex2nemeth/source.zip
-2022/07/02 | 8163135 | support/latex2nemeth.zip
+2022/09/04 | 741 | support/latex2nemeth/contrib/nemeth2odt
+2022/09/04 | 460304 | support/latex2nemeth/doc/unicode-math-braille.pdf
+2022/09/04 | 234422 | support/latex2nemeth/doc/unicode-math-braille.tex
+2022/09/04 | 166709 | support/latex2nemeth/encodings/nemeth.json
+2022/09/04 | 166981 | support/latex2nemeth/encodings/polytonic.json
+2022/09/04 | 2775 | support/latex2nemeth/examples/mathpics.tex
+2022/09/04 | 13560 | support/latex2nemeth/examples/mathtest.tex
+2022/09/04 | 35147 | support/latex2nemeth/gpl-3.0.txt
+2022/09/04 | 124 | support/latex2nemeth/latex2nemeth
+2022/09/04 | 8155571 | support/latex2nemeth/latex2nemeth.jar
+2022/09/04 | 6202 | support/latex2nemeth/README
+2022/09/04 | 228965 | support/latex2nemeth/source.zip
+2022/09/04 | 8163249 | support/latex2nemeth.zip
2014/06/16 | 1579721 | support/latex2rtf/latex2rtf-2.3.8.tar.gz
2014/06/16 | 3277975 | support/latex2rtf/latex2rtf-2.3.8_win.exe
2015/12/08 | 3942 | support/latex2rtf/README
@@ -281777,8 +281783,8 @@
2020/04/22 | 787504 | systems/texlive/tlnet/archive/bearwear.doc.r54826.tar.xz
2020/04/22 | 2376 | systems/texlive/tlnet/archive/bearwear.r54826.tar.xz
2020/04/22 | 5992 | systems/texlive/tlnet/archive/bearwear.source.r54826.tar.xz
-2022/06/17 | 476408 | systems/texlive/tlnet/archive/beaulivre.doc.r63612.tar.xz
-2022/06/17 | 4636 | systems/texlive/tlnet/archive/beaulivre.r63612.tar.xz
+2022/09/04 | 476940 | systems/texlive/tlnet/archive/beaulivre.doc.r64280.tar.xz
+2022/09/04 | 4628 | systems/texlive/tlnet/archive/beaulivre.r64280.tar.xz
2022/05/27 | 890924 | systems/texlive/tlnet/archive/beebe.r63404.tar.xz
2022/05/08 | 785552 | systems/texlive/tlnet/archive/begingreek.doc.r63255.tar.xz
2022/05/08 | 1808 | systems/texlive/tlnet/archive/begingreek.r63255.tar.xz
@@ -283061,8 +283067,8 @@
2019/02/28 | 2020 | systems/texlive/tlnet/archive/colorinfo.r15878.tar.xz
2019/02/28 | 25984 | systems/texlive/tlnet/archive/coloring.doc.r41042.tar.xz
2019/02/28 | 1480 | systems/texlive/tlnet/archive/coloring.r41042.tar.xz
-2022/06/17 | 112780 | systems/texlive/tlnet/archive/colorist.doc.r63612.tar.xz
-2022/06/17 | 10180 | systems/texlive/tlnet/archive/colorist.r63612.tar.xz
+2022/09/04 | 111264 | systems/texlive/tlnet/archive/colorist.doc.r64280.tar.xz
+2022/09/04 | 10608 | systems/texlive/tlnet/archive/colorist.r64280.tar.xz
2019/02/28 | 27632 | systems/texlive/tlnet/archive/colorprofiles.doc.r49086.tar.xz
2019/02/28 | 87972 | systems/texlive/tlnet/archive/colorprofiles.r49086.tar.xz
2019/02/28 | 1884 | systems/texlive/tlnet/archive/colorsep.r13293.tar.xz
@@ -283342,8 +283348,8 @@
2019/02/28 | 1544 | systems/texlive/tlnet/archive/crbox.r29803.tar.xz
2022/08/13 | 95776 | systems/texlive/tlnet/archive/create-theorem.doc.r64104.tar.xz
2022/08/13 | 10224 | systems/texlive/tlnet/archive/create-theorem.r64104.tar.xz
-2022/08/29 | 61884 | systems/texlive/tlnet/archive/crefthe.doc.r64216.tar.xz
-2022/08/29 | 3212 | systems/texlive/tlnet/archive/crefthe.r64216.tar.xz
+2022/09/04 | 61676 | systems/texlive/tlnet/archive/crefthe.doc.r64280.tar.xz
+2022/09/04 | 3220 | systems/texlive/tlnet/archive/crefthe.r64280.tar.xz
2020/03/24 | 34244 | systems/texlive/tlnet/archive/crimson.doc.r54512.tar.xz
2020/03/24 | 85172 | systems/texlive/tlnet/archive/crimsonpro.doc.r54512.tar.xz
2020/03/24 | 2563452 | systems/texlive/tlnet/archive/crimsonpro.r54512.tar.xz
@@ -284519,8 +284525,8 @@
2019/02/28 | 4224 | systems/texlive/tlnet/archive/eiad-ltx.source.r15878.tar.xz
2019/02/28 | 25636 | systems/texlive/tlnet/archive/eiad.r15878.tar.xz
2019/02/28 | 6960 | systems/texlive/tlnet/archive/eijkhout.r15878.tar.xz
-2022/06/17 | 384136 | systems/texlive/tlnet/archive/einfart.doc.r63612.tar.xz
-2022/06/17 | 4752 | systems/texlive/tlnet/archive/einfart.r63612.tar.xz
+2022/09/04 | 378612 | systems/texlive/tlnet/archive/einfart.doc.r64280.tar.xz
+2022/09/04 | 4748 | systems/texlive/tlnet/archive/einfart.r64280.tar.xz
2021/11/05 | 284620 | systems/texlive/tlnet/archive/ejpecp.doc.r60950.tar.xz
2021/11/05 | 5704 | systems/texlive/tlnet/archive/ejpecp.r60950.tar.xz
2021/11/05 | 7428 | systems/texlive/tlnet/archive/ejpecp.source.r60950.tar.xz
@@ -286115,8 +286121,8 @@
2021/11/28 | 6640 | systems/texlive/tlnet/archive/hep-title.source.r61173.tar.xz
2020/04/16 | 100060 | systems/texlive/tlnet/archive/hepunits.doc.r54758.tar.xz
2020/04/16 | 1804 | systems/texlive/tlnet/archive/hepunits.r54758.tar.xz
-2022/08/30 | 63772 | systems/texlive/tlnet/archive/hereapplies.doc.r64231.tar.xz
-2022/08/30 | 5156 | systems/texlive/tlnet/archive/hereapplies.r64231.tar.xz
+2022/09/04 | 420080 | systems/texlive/tlnet/archive/hereapplies.doc.r64282.tar.xz
+2022/09/04 | 5272 | systems/texlive/tlnet/archive/hereapplies.r64282.tar.xz
2019/02/28 | 596 | systems/texlive/tlnet/archive/here.doc.r16135.tar.xz
2019/02/28 | 896 | systems/texlive/tlnet/archive/here.r16135.tar.xz
2019/02/28 | 213100 | systems/texlive/tlnet/archive/he-she.doc.r41359.tar.xz
@@ -286745,8 +286751,8 @@
2019/02/28 | 139420 | systems/texlive/tlnet/archive/kastrup.doc.r15878.tar.xz
2019/02/28 | 1388 | systems/texlive/tlnet/archive/kastrup.r15878.tar.xz
2019/02/28 | 7392 | systems/texlive/tlnet/archive/kastrup.source.r15878.tar.xz
-2022/07/17 | 995940 | systems/texlive/tlnet/archive/kaytannollista-latexia.doc.r63911.tar.xz
-2022/07/17 | 572 | systems/texlive/tlnet/archive/kaytannollista-latexia.r63911.tar.xz
+2022/09/04 | 998912 | systems/texlive/tlnet/archive/kaytannollista-latexia.doc.r64278.tar.xz
+2022/09/04 | 572 | systems/texlive/tlnet/archive/kaytannollista-latexia.r64278.tar.xz
2021/02/05 | 339680 | systems/texlive/tlnet/archive/kblocks.doc.r57617.tar.xz
2021/02/05 | 8140 | systems/texlive/tlnet/archive/kblocks.r57617.tar.xz
2019/02/28 | 718580 | systems/texlive/tlnet/archive/kdgdocs.doc.r24498.tar.xz
@@ -287352,8 +287358,8 @@
2020/11/08 | 344060 | systems/texlive/tlnet/archive/leaflet.doc.r56878.tar.xz
2020/11/08 | 5652 | systems/texlive/tlnet/archive/leaflet.r56878.tar.xz
2020/11/08 | 13844 | systems/texlive/tlnet/archive/leaflet.source.r56878.tar.xz
-2022/06/17 | 402364 | systems/texlive/tlnet/archive/lebhart.doc.r63612.tar.xz
-2022/06/17 | 4652 | systems/texlive/tlnet/archive/lebhart.r63612.tar.xz
+2022/09/04 | 397728 | systems/texlive/tlnet/archive/lebhart.doc.r64280.tar.xz
+2022/09/04 | 4632 | systems/texlive/tlnet/archive/lebhart.r64280.tar.xz
2019/02/28 | 1126000 | systems/texlive/tlnet/archive/lecturer.doc.r23916.tar.xz
2019/02/28 | 18668 | systems/texlive/tlnet/archive/lecturer.r23916.tar.xz
2020/02/03 | 2080 | systems/texlive/tlnet/archive/lectures.doc.r53642.tar.xz
@@ -288553,8 +288559,8 @@
2019/02/28 | 435560 | systems/texlive/tlnet/archive/minifp.doc.r32559.tar.xz
2019/02/28 | 10000 | systems/texlive/tlnet/archive/minifp.r32559.tar.xz
2019/02/28 | 43836 | systems/texlive/tlnet/archive/minifp.source.r32559.tar.xz
-2022/06/17 | 114472 | systems/texlive/tlnet/archive/minimalist.doc.r63612.tar.xz
-2022/06/17 | 9864 | systems/texlive/tlnet/archive/minimalist.r63612.tar.xz
+2022/09/04 | 113752 | systems/texlive/tlnet/archive/minimalist.doc.r64280.tar.xz
+2022/09/04 | 10296 | systems/texlive/tlnet/archive/minimalist.r64280.tar.xz
2022/03/05 | 296672 | systems/texlive/tlnet/archive/minim.doc.r62419.tar.xz
2022/03/05 | 26048 | systems/texlive/tlnet/archive/minim-hatching.doc.r62395.tar.xz
2022/03/05 | 2232 | systems/texlive/tlnet/archive/minim-hatching.r62395.tar.xz
@@ -290114,8 +290120,8 @@
2019/12/07 | 14376 | systems/texlive/tlnet/archive/pmboxdraw.source.r53046.tar.xz
2019/02/28 | 129312 | systems/texlive/tlnet/archive/pmgraph.doc.r15878.tar.xz
2019/02/28 | 10064 | systems/texlive/tlnet/archive/pmgraph.r15878.tar.xz
-2021/11/30 | 709996 | systems/texlive/tlnet/archive/pmhanguljamo.doc.r61183.tar.xz
-2021/11/30 | 5448 | systems/texlive/tlnet/archive/pmhanguljamo.r61183.tar.xz
+2022/09/04 | 753904 | systems/texlive/tlnet/archive/pmhanguljamo.doc.r64279.tar.xz
+2022/09/04 | 5804 | systems/texlive/tlnet/archive/pmhanguljamo.r64279.tar.xz
2021/08/30 | 681608 | systems/texlive/tlnet/archive/pm-isomath.doc.r60368.tar.xz
2021/08/30 | 2840 | systems/texlive/tlnet/archive/pm-isomath.r60368.tar.xz
2021/08/30 | 19428 | systems/texlive/tlnet/archive/pm-isomath.source.r60368.tar.xz
@@ -290259,8 +290265,8 @@
2022/09/01 | 1215556 | systems/texlive/tlnet/archive/profcollege.r64250.tar.xz
2022/04/27 | 134096 | systems/texlive/tlnet/archive/proflabo.doc.r63147.tar.xz
2022/04/27 | 2748 | systems/texlive/tlnet/archive/proflabo.r63147.tar.xz
-2022/08/25 | 872524 | systems/texlive/tlnet/archive/proflycee.doc.r64187.tar.xz
-2022/08/25 | 14988 | systems/texlive/tlnet/archive/proflycee.r64187.tar.xz
+2022/09/04 | 870228 | systems/texlive/tlnet/archive/proflycee.doc.r64281.tar.xz
+2022/09/04 | 15016 | systems/texlive/tlnet/archive/proflycee.r64281.tar.xz
2019/02/28 | 49880 | systems/texlive/tlnet/archive/program.doc.r44214.tar.xz
2019/02/28 | 11780 | systems/texlive/tlnet/archive/program.r44214.tar.xz
2019/02/28 | 86236 | systems/texlive/tlnet/archive/progressbar.doc.r33822.tar.xz
@@ -291470,8 +291476,8 @@
2019/02/28 | 4412 | systems/texlive/tlnet/archive/simplewick.source.r15878.tar.xz
2019/02/28 | 942836 | systems/texlive/tlnet/archive/simplified-latex.doc.r20620.tar.xz
2019/02/28 | 380 | systems/texlive/tlnet/archive/simplified-latex.r20620.tar.xz
-2022/06/17 | 461040 | systems/texlive/tlnet/archive/simplivre.doc.r63612.tar.xz
-2022/06/17 | 4728 | systems/texlive/tlnet/archive/simplivre.r63612.tar.xz
+2022/09/04 | 459692 | systems/texlive/tlnet/archive/simplivre.doc.r64280.tar.xz
+2022/09/04 | 4720 | systems/texlive/tlnet/archive/simplivre.r64280.tar.xz
2019/02/28 | 136908 | systems/texlive/tlnet/archive/simurgh.doc.r31719.tar.xz
2019/02/28 | 246476 | systems/texlive/tlnet/archive/simurgh.r31719.tar.xz
2021/06/24 | 323456 | systems/texlive/tlnet/archive/sistyle.doc.r59682.tar.xz
@@ -292303,7 +292309,7 @@
2022/03/05 | 164864 | systems/texlive/tlnet/archive/tex.i386-solaris.r62391.tar.xz
2019/02/28 | 1956 | systems/texlive/tlnet/archive/texilikechaps.r28553.tar.xz
2019/02/28 | 956 | systems/texlive/tlnet/archive/texilikecover.r15878.tar.xz
-2022/08/31 | 96952 | systems/texlive/tlnet/archive/texinfo.r64237.tar.xz
+2022/09/04 | 96912 | systems/texlive/tlnet/archive/texinfo.r64275.tar.xz
2019/02/28 | 1336 | systems/texlive/tlnet/archive/tex-ini-files.doc.r40533.tar.xz
2019/02/28 | 3264 | systems/texlive/tlnet/archive/tex-ini-files.r40533.tar.xz
2019/02/28 | 36596 | systems/texlive/tlnet/archive/tex-label.doc.r16372.tar.xz
@@ -292370,7 +292376,7 @@
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r55172.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r55172.tar.xz
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r55172.tar.xz
-2022/09/03 | 420612 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64263.tar.xz
+2022/09/04 | 420648 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64275.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -292394,7 +292400,7 @@
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r55172.tar.xz
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r55172.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r55172.tar.xz
-2022/09/03 | 113500 | systems/texlive/tlnet/archive/texlive-scripts.r64263.tar.xz
+2022/09/04 | 113468 | systems/texlive/tlnet/archive/texlive-scripts.r64275.tar.xz
2021/02/25 | 572 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r57908.tar.xz
2022/04/19 | 36296 | systems/texlive/tlnet/archive/texlive-scripts.win32.r63068.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r55172.tar.xz
@@ -294223,16 +294229,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2022/07/17 | 124404 | systems/texlive/tlnet/install-tl
-2022/09/03 | 5831646 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/09/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/09/04 | 5831633 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/09/04 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat
-2022/09/03 | 20434244 | systems/texlive/tlnet/install-tl-windows.exe
-2022/09/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/09/03 | 25516427 | systems/texlive/tlnet/install-tl.zip
-2022/09/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/09/04 | 20438355 | systems/texlive/tlnet/install-tl-windows.exe
+2022/09/04 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/09/04 | 25516402 | systems/texlive/tlnet/install-tl.zip
+2022/09/04 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2022/04/03 | 1229 | systems/texlive/tlnet/README.md
2022/04/03 | 0 | systems/texlive/tlnet/TEXLIVE_2022
2022/02/28 | 7791 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -294242,7 +294248,7 @@
2022/02/28 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2022/05/27 | 49794 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2022/09/02 | 7231 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2022/09/03 | 7124 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/07/21 | 222477 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -294285,12 +294291,12 @@
2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2022/09/03 | 17623168 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/09/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/09/04 | 17623350 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/09/04 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2022/04/18 | 86658 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2022/09/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/09/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/09/03 | 2402416 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/09/04 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/09/04 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/09/04 | 2405628 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2021/12/21 | 58848 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2022/08/01 | 42206 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -299617,7 +299623,7 @@
2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma
2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma
2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma
-2022/09/03 | 663956 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/09/04 | 663956 | systems/win32/miktex/tm/packages/files.csv.lzma
2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma
2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma
2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma
@@ -301307,9 +301313,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2022/07/26 | 39695 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2022/08/27 | 43640 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/09/03 | 291356 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/09/03 | 1488042 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/09/03 | 1369236 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/09/04 | 291346 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/09/04 | 1488274 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/09/04 | 1368610 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2022/07/26 | 13519 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2022/08/27 | 14450 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma
2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma
@@ -301552,102 +301558,102 @@
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2022/09/03 | 661919 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/09/03 | 57316 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/09/03 | 1161750 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/09/03 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/09/03 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/09/03 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/09/03 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/09/03 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/09/03 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/09/03 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/09/03 | 37051 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2022/09/03 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/09/03 | 270467 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2022/09/03 | 196213 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2022/09/03 | 103247 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2022/09/03 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/09/03 | 481895 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/09/03 | 52038 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2022/09/03 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/09/03 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/09/03 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2022/09/03 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/09/03 | 112980 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/09/03 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/09/03 | 28509 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/09/03 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/09/03 | 155430 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/09/03 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/09/03 | 81449 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2022/09/03 | 295945 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/09/03 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/09/03 | 112880 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2022/09/03 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/09/03 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/09/03 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/09/03 | 565080 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2022/09/03 | 247206 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2022/09/03 | 169678 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/09/03 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/09/03 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/09/03 | 30572 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/09/03 | 682214 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/09/03 | 599103 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/09/03 | 527569 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/09/03 | 103597 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/09/03 | 2023132 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2022/09/03 | 74100 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/09/03 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/09/03 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/09/03 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/09/03 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/09/03 | 104921 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/09/03 | 140013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/09/03 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/09/03 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/09/03 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/09/03 | 35230 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/09/03 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/09/03 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/09/03 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/09/03 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/09/03 | 41179 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2022/09/03 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/09/03 | 203418 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/09/03 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/09/03 | 88482 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/09/03 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2022/09/03 | 23950 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/09/03 | 37506 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/09/03 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/09/03 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2022/09/03 | 769652 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/09/03 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/09/03 | 52628 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/09/03 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/09/03 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/09/03 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/09/03 | 70940 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2022/09/03 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/09/03 | 68147 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/09/03 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/09/03 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/09/03 | 62361 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/09/03 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/09/03 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/09/03 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/09/03 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/09/03 | 57500 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/09/03 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2022/09/03 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/09/03 | 291328 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/09/03 | 1486856 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/09/03 | 1369207 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2022/09/03 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/09/04 | 661919 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/09/04 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/09/04 | 1161749 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/09/04 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/09/04 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/09/04 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/09/04 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/09/04 | 77210 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/09/04 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/09/04 | 394143 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/09/04 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/09/04 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/09/04 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/09/04 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/09/04 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/09/04 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/09/04 | 481893 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/09/04 | 52036 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/09/04 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/09/04 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/09/04 | 135464 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/09/04 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/09/04 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/09/04 | 48850 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/09/04 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/09/04 | 63239 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/09/04 | 155430 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/09/04 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/09/04 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/09/04 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/09/04 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/09/04 | 112878 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/09/04 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/09/04 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/09/04 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/09/04 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/09/04 | 247205 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/09/04 | 169676 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/09/04 | 109648 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/09/04 | 18381 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/09/04 | 30570 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/09/04 | 682213 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/09/04 | 599103 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/09/04 | 527568 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/09/04 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/09/04 | 2023131 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/09/04 | 74099 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/09/04 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/09/04 | 8825 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/09/04 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/09/04 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/09/04 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/09/04 | 140012 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/09/04 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/09/04 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/09/04 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/09/04 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/09/04 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/09/04 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/09/04 | 52368 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/09/04 | 213847 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/09/04 | 41179 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/09/04 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/09/04 | 203418 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/09/04 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/09/04 | 88482 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/09/04 | 1323745 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/09/04 | 23949 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/09/04 | 37506 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/09/04 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/09/04 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/09/04 | 769650 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/09/04 | 1503054 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/09/04 | 52626 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/09/04 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/09/04 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/09/04 | 18510 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/09/04 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/04 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/09/04 | 68145 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/09/04 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/09/04 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/09/04 | 62356 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/09/04 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/09/04 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/09/04 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/09/04 | 352463 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/09/04 | 57500 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/09/04 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/09/04 | 43527 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/09/04 | 291329 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/09/04 | 1487155 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/09/04 | 1368546 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/09/04 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma
-2022/09/03 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/09/04 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma
2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma
@@ -302136,7 +302142,7 @@
2022/02/22 | 6917 | systems/win32/miktex/tm/packages/preview.tar.lzma
2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma
2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2022/09/03 | 947 | systems/win32/miktex/tm/packages/pr.ini
+2022/09/04 | 947 | systems/win32/miktex/tm/packages/pr.ini
2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma
2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma
2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma
@@ -304089,7 +304095,7 @@
2004/06/04 | 404 | tds/tds.sed
2004/06/23 | 65418 | tds/tds.tex
2019/05/29 | 304264 | tds.zip
-2022/09/04 | 186 | timestamp
+2022/09/05 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2022/02/28 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index bd787c1c34..ab2462e67f 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index eec0b42908..8d6f20baa3 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,137 +1,269 @@
+2022/09/04 | 998912 | systems/texlive/tlnet/archive/kaytannollista-latexia.doc.r64278.tar.xz
+2022/09/04 | 9952 | macros/latex/contrib/fduthesis/fudan-name.pdf
+2022/09/04 | 99154 | macros/latex/contrib/unbtex/unbtex-example/figuras/fig1.eps
+2022/09/04 | 972 | macros/latex/contrib/unbtex/unbtex-example/codigos/ModalReduction.jl
+2022/09/04 | 96912 | systems/texlive/tlnet/archive/texinfo.r64275.tar.xz
+2022/09/04 | 965673 | macros/latex/contrib/fduthesis/fduthesis-code.pdf
+2022/09/04 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/09/04 | 947 | systems/win32/miktex/tm/packages/pr.ini
+2022/09/04 | 904793 | macros/latex/contrib/proflycee.zip
+2022/09/04 | 88482 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/09/04 | 8825 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/09/04 | 870228 | systems/texlive/tlnet/archive/proflycee.doc.r64281.tar.xz
+2022/09/04 | 839081 | macros/latex/contrib/bithesis.zip
+2022/09/04 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/09/04 | 818866 | macros/latex/contrib/bithesis/bithesis.pdf
+2022/09/04 | 8163249 | support/latex2nemeth.zip
+2022/09/04 | 8155571 | support/latex2nemeth/latex2nemeth.jar
+2022/09/04 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/09/04 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/09/04 | 77210 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/09/04 | 769650 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/09/04 | 753904 | systems/texlive/tlnet/archive/pmhanguljamo.doc.r64279.tar.xz
+2022/09/04 | 741 | support/latex2nemeth/contrib/nemeth2odt
+2022/09/04 | 74099 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/09/04 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/09/04 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/09/04 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/09/04 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/04 | 682213 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/09/04 | 68145 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/09/04 | 663956 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/09/04 | 661919 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/09/04 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/09/04 | 63845 | macros/latex/contrib/fduthesis/fduthesis-doc.dtx
+2022/09/04 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/09/04 | 63239 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/09/04 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/09/04 | 624 | macros/latex/contrib/unbtex/unbtex-example/apendice-b.tex
+2022/09/04 | 62356 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/09/04 | 6202 | support/latex2nemeth/README
+2022/09/04 | 61676 | systems/texlive/tlnet/archive/crefthe.doc.r64280.tar.xz
+2022/09/04 | 599103 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/09/04 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/09/04 | 5831633 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/09/04 | 5804 | systems/texlive/tlnet/archive/pmhanguljamo.r64279.tar.xz
+2022/09/04 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/09/04 | 57500 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/09/04 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/09/04 | 572 | systems/texlive/tlnet/archive/kaytannollista-latexia.r64278.tar.xz
+2022/09/04 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/09/04 | 558 | macros/latex/contrib/unbtex/unbtex-example/anexo-a.tex
+2022/09/04 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/09/04 | 527568 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/09/04 | 5272 | systems/texlive/tlnet/archive/hereapplies.r64282.tar.xz
+2022/09/04 | 52626 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/09/04 | 52368 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/09/04 | 52036 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/09/04 | 5069 | macros/latex/contrib/unbtex/unbtex-example/references.bib
+2022/09/04 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/09/04 | 48850 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/09/04 | 481893 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/09/04 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/09/04 | 476940 | systems/texlive/tlnet/archive/beaulivre.doc.r64280.tar.xz
+2022/09/04 | 4748 | systems/texlive/tlnet/archive/einfart.r64280.tar.xz
+2022/09/04 | 4720 | systems/texlive/tlnet/archive/simplivre.r64280.tar.xz
+2022/09/04 | 4632 | systems/texlive/tlnet/archive/lebhart.r64280.tar.xz
+2022/09/04 | 4628 | systems/texlive/tlnet/archive/beaulivre.r64280.tar.xz
+2022/09/04 | 460304 | support/latex2nemeth/doc/unicode-math-braille.pdf
+2022/09/04 | 459692 | systems/texlive/tlnet/archive/simplivre.doc.r64280.tar.xz
+2022/09/04 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/09/04 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/09/04 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/09/04 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/09/04 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/09/04 | 43527 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/09/04 | 424 | macros/latex/contrib/unbtex/unbtex-example/anexo-b.tex
+2022/09/04 | 424983 | macros/latex/contrib/fduthesis/fduthesis.pdf
+2022/09/04 | 420648 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64275.tar.xz
+2022/09/04 | 420080 | systems/texlive/tlnet/archive/hereapplies.doc.r64282.tar.xz
+2022/09/04 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/09/04 | 41179 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/09/04 | 397728 | systems/texlive/tlnet/archive/lebhart.doc.r64280.tar.xz
+2022/09/04 | 394143 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/09/04 | 3814 | macros/latex/contrib/unbtex/unbtex-example/capitulo3.tex
+2022/09/04 | 378612 | systems/texlive/tlnet/archive/einfart.doc.r64280.tar.xz
+2022/09/04 | 377361 | macros/latex/contrib/democodetools/doc/democodetools.pdf
+2022/09/04 | 37506 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/09/04 | 373 | macros/latex/contrib/unbtex/unbtex-example/codigos/controle.m
+2022/09/04 | 3720 | macros/latex/contrib/bithesis/bithesis.ins
+2022/09/04 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/09/04 | 364510 | macros/latex/contrib/democodetools.zip
+2022/09/04 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/09/04 | 352463 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/09/04 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/09/04 | 35147 | support/latex2nemeth/gpl-3.0.txt
+2022/09/04 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/09/04 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/09/04 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/09/04 | 3220 | systems/texlive/tlnet/archive/crefthe.r64280.tar.xz
+2022/09/04 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/09/04 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/09/04 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/09/04 | 31319 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-grafico.pdf
+2022/09/04 | 30570 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/09/04 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/09/04 | 291346 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/09/04 | 291329 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/09/04 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/09/04 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/09/04 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/09/04 | 2775 | support/latex2nemeth/examples/mathpics.tex
+2022/09/04 | 2752 | macros/latex/contrib/unbtex/unbtex-example/capitulo1.tex
+2022/09/04 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/09/04 | 2714 | macros/latex/contrib/unbtex/unbtex-example/apendice-a.tex
+2022/09/04 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/09/04 | 26805 | macros/latex/contrib/unbtex/unbtex-example/capitulo2.tex
+2022/09/04 | 2643 | macros/latex/contrib/bithesis/contributing-zh.md
+2022/09/04 | 259394 | macros/latex/contrib/fduthesis/fduthesis-logo.dtx
+2022/09/04 | 25516402 | systems/texlive/tlnet/install-tl.zip
+2022/09/04 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/09/04 | 247205 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/09/04 | 2456 | macros/latex/contrib/fduthesis/README.md
+2022/09/04 | 245216 | macros/latex/contrib/unbtex/unbtex-example/figuras/img-marca.pdf
+2022/09/04 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/09/04 | 2448 | macros/latex/contrib/unbtex/unbtex-example/capitulo4.tex
+2022/09/04 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/09/04 | 2405628 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/09/04 | 23949 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/09/04 | 234422 | support/latex2nemeth/doc/unicode-math-braille.tex
+2022/09/04 | 2332 | macros/latex/contrib/bithesis/contributing.md
+2022/09/04 | 228965 | support/latex2nemeth/source.zip
+2022/09/04 | 227168 | macros/latex/contrib/fduthesis/fduthesis.dtx
+2022/09/04 | 214 | macros/latex/contrib/unbtex/unbtex-example/capitulo5.tex
+2022/09/04 | 213847 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/09/04 | 2093 | macros/latex/contrib/unbtex/README.md
+2022/09/04 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/09/04 | 20438355 | systems/texlive/tlnet/install-tl-windows.exe
+2022/09/04 | 203418 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/09/04 | 2023131 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/09/04 | 19971 | macros/latex/contrib/unbtex/unbtex-example/figuras/1280px-LaTeX-logo.png
+2022/09/04 | 1993 | macros/latex/contrib/bithesis/README.md
+2022/09/04 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/09/04 | 19420 | macros/latex/contrib/democodetools/latex/democodelisting.sty
+2022/09/04 | 1918 | macros/latex/contrib/democodetools/README.md
+2022/09/04 | 18510 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/09/04 | 1838516 | install/macros/latex/contrib/fduthesis.tds.zip
+2022/09/04 | 18381 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/09/04 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/09/04 | 17623350 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/09/04 | 17463 | macros/latex/contrib/unbtex/unbtex.cls
+2022/09/04 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/09/04 | 1712439 | macros/latex/contrib/fduthesis.zip
+2022/09/04 | 169676 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/09/04 | 1671 | macros/latex/contrib/unbtex/unbtex-example/codigos/controleSmithPredictor.py
+2022/09/04 | 166981 | support/latex2nemeth/encodings/polytonic.json
+2022/09/04 | 166709 | support/latex2nemeth/encodings/nemeth.json
+2022/09/04 | 162961 | macros/latex/contrib/fduthesis/fduthesis-en.pdf
+2022/09/04 | 15957 | macros/latex/contrib/fduthesis/fudan-emblem.pdf
+2022/09/04 | 155430 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/09/04 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/09/04 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/09/04 | 151679 | macros/latex/contrib/bithesis/bithesis.dtx
+2022/09/04 | 1503054 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/09/04 | 15016 | systems/texlive/tlnet/archive/proflycee.r64281.tar.xz
+2022/09/04 | 1492083 | macros/latex/contrib/unbtex.zip
+2022/09/04 | 1488274 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/09/04 | 1487155 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/09/04 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/09/04 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/09/04 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/09/04 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/09/04 | 14373 | macros/latex/contrib/unbtex/unbtex-example.tex
+2022/09/04 | 14263 | macros/latex/contrib/democodetools/doc/democodetools.tex
+2022/09/04 | 140012 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/09/04 | 1368610 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/09/04 | 1368546 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/09/04 | 1356 | macros/latex/contrib/unbtex/unbtex-example/figuras/capa_fundo.pdf
+2022/09/04 | 13560 | support/latex2nemeth/examples/mathtest.tex
+2022/09/04 | 135464 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/09/04 | 1323745 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/09/04 | 12726 | macros/latex/contrib/democodetools/latex/democodetools.sty
+2022/09/04 | 124 | support/latex2nemeth/latex2nemeth
+2022/09/04 | 1212636 | macros/latex/contrib/unbtex/unbtex-example.pdf
+2022/09/04 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/09/04 | 1161749 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/09/04 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/09/04 | 11441 | macros/latex/contrib/unbtex/unbtex-example/referencias.bib
+2022/09/04 | 113752 | systems/texlive/tlnet/archive/minimalist.doc.r64280.tar.xz
+2022/09/04 | 113468 | systems/texlive/tlnet/archive/texlive-scripts.r64275.tar.xz
+2022/09/04 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/09/04 | 112878 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/09/04 | 111264 | systems/texlive/tlnet/archive/colorist.doc.r64280.tar.xz
+2022/09/04 | 109648 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/09/04 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/09/04 | 10688 | macros/latex/contrib/fduthesis/fudan-emblem-new.pdf
+2022/09/04 | 10608 | systems/texlive/tlnet/archive/colorist.r64280.tar.xz
+2022/09/04 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/09/04 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/09/04 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/09/04 | 10296 | systems/texlive/tlnet/archive/minimalist.r64280.tar.xz
+2022/09/03 | 968 | macros/latex/contrib/proflycee/doc/cap.csv
2022/09/03 | 95692 | macros/unicodetex/latex/einfart/einfart-doc-fr.pdf
-2022/09/03 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/09/03 | 947 | systems/win32/miktex/tm/packages/pr.ini
2022/09/03 | 930 | macros/latex/contrib/hereapplies/hereapplies-example.tex
2022/09/03 | 92970 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf
2022/09/03 | 92560 | macros/unicodetex/latex/einfart/einfart-doc-en.pdf
2022/09/03 | 91176 | macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf
-2022/09/03 | 88482 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
2022/09/03 | 884221 | info/kaytannollista-latexia/kaytannollista-latexia.pdf
2022/09/03 | 88375 | info/kaytannollista-latexia/luku-merkintakieli.tex
-2022/09/03 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/09/03 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/09/03 | 81449 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/09/03 | 816736 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
2022/09/03 | 7990 | macros/latex/contrib/hereapplies/hereapplies-doc.tex
-2022/09/03 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
2022/09/03 | 7757 | macros/latex/contrib/minimalist/minimart.cls
2022/09/03 | 7754 | macros/latex/contrib/minimalist/minimbook.cls
-2022/09/03 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/09/03 | 769652 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
2022/09/03 | 753688 | systems/texlive/tlnet/archive/darkmode.doc.r64271.tar.xz
2022/09/03 | 743 | macros/latex/contrib/hereapplies/package.json
-2022/09/03 | 74100 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/09/03 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/09/03 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/09/03 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/09/03 | 70940 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/03 | 736 | macros/latex/contrib/proflycee/doc/perroquet.csv
+2022/09/03 | 7124 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/09/03 | 6999 | macros/latex/contrib/colorist/colorart.cls
2022/09/03 | 6996 | macros/latex/contrib/colorist/colorbook.cls
-2022/09/03 | 682214 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/09/03 | 68147 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/09/03 | 68656 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
2022/09/03 | 6740 | systems/texlive/tlnet/archive/collection-latexextra.r64271.tar.xz
-2022/09/03 | 663956 | systems/win32/miktex/tm/packages/files.csv.lzma
2022/09/03 | 66197 | macros/latex/contrib/crefthe.zip
-2022/09/03 | 661919 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/09/03 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/09/03 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/09/03 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/09/03 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2022/09/03 | 62361 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
2022/09/03 | 6138 | info/kaytannollista-latexia/README.md
2022/09/03 | 61252 | systems/texlive/tlnet/archive/letgut.source.r64269.tar.xz
-2022/09/03 | 599103 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/09/03 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
2022/09/03 | 5851 | macros/latex/contrib/hereapplies/README.md
-2022/09/03 | 5831646 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/09/03 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/09/03 | 57500 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/09/03 | 57316 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
2022/09/03 | 5686 | macros/latex/contrib/minimalist/minimalist.sty
-2022/09/03 | 565080 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
2022/09/03 | 555182 | macros/unicodetex/latex/beaulivre.zip
-2022/09/03 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
2022/09/03 | 541177 | macros/unicodetex/latex/simplivre.zip
2022/09/03 | 5372 | systems/texlive/tlnet/archive/luafindfont.r64270.tar.xz
2022/09/03 | 53358 | macros/latex/contrib/crefthe/crefthe-doc.pdf
-2022/09/03 | 527569 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/09/03 | 52628 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/09/03 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/09/03 | 52038 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/09/03 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
2022/09/03 | 5022 | macros/latex/contrib/hereapplies/lyx-module/hereapplies-example.lyx
2022/09/03 | 49588 | systems/texlive/tlnet/archive/letgut.r64269.tar.xz
2022/09/03 | 49420 | macros/latex/contrib/hereapplies/hereapplies-example.pdf
-2022/09/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
-2022/09/03 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/09/03 | 481895 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/09/03 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
2022/09/03 | 4782 | macros/latex/contrib/colorist/colorist.sty
-2022/09/03 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/09/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/09/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2022/09/03 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/09/03 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/09/03 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
2022/09/03 | 430733 | macros/latex/contrib/hereapplies.zip
2022/09/03 | 426813 | macros/unicodetex/latex/lebhart.zip
-2022/09/03 | 420612 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64263.tar.xz
-2022/09/03 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/09/03 | 41179 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
2022/09/03 | 409307 | macros/unicodetex/latex/einfart.zip
-2022/09/03 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
2022/09/03 | 38234 | macros/latex/contrib/minimalist/minimalist-classical.sty
2022/09/03 | 38148 | macros/latex/contrib/colorist/colorist-fancy.sty
-2022/09/03 | 37506 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/09/03 | 37051 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/09/03 | 375460 | macros/texinfo/latest/texinfo.tex
2022/09/03 | 364778 | macros/latex/contrib/hereapplies/hereapplies-doc.pdf
2022/09/03 | 36327 | macros/latex/contrib/minimalist/minimalist-plain.sty
2022/09/03 | 3624 | systems/texlive/tlnet/archive/darkmode.source.r64271.tar.xz
-2022/09/03 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/09/03 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/09/03 | 35230 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
2022/09/03 | 34523 | macros/latex/contrib/hereapplies/COPYING
-2022/09/03 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/09/03 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/09/03 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/09/03 | 32 | macros/latex/contrib/proflycee/doc/basique.csv
2022/09/03 | 321511 | info/kaytannollista-latexia/luku-rakenne.tex
-2022/09/03 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
2022/09/03 | 31815 | macros/unicodetex/latex/simplivre/simplivre.cls
2022/09/03 | 31811 | macros/unicodetex/latex/einfart/einfart.cls
-2022/09/03 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/09/03 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
2022/09/03 | 30951 | macros/unicodetex/latex/beaulivre/beaulivre.cls
2022/09/03 | 30947 | macros/unicodetex/latex/lebhart/lebhart.cls
-2022/09/03 | 30572 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
2022/09/03 | 29 | info/kaytannollista-latexia/versio.tex
2022/09/03 | 2994 | info/kaytannollista-latexia/kirjallisuutta.bib
-2022/09/03 | 295945 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/09/03 | 291356 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/09/03 | 291328 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/09/03 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
2022/09/03 | 2853 | macros/latex/contrib/hereapplies/lyx-module/hereapplies.module
-2022/09/03 | 28509 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/09/03 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
2022/09/03 | 2796 | macros/latex/contrib/crefthe/README.md
-2022/09/03 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/09/03 | 270467 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
2022/09/03 | 2633 | info/kaytannollista-latexia/luku-esipuhe.tex
2022/09/03 | 262070 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf
2022/09/03 | 2619744 | systems/texlive/tlnet/archive/simpleicons.r64268.tar.xz
2022/09/03 | 256471 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf
-2022/09/03 | 25516427 | systems/texlive/tlnet/install-tl.zip
2022/09/03 | 25409 | macros/latex/contrib/minimalist/minimalist-doc.tex
2022/09/03 | 2537 | macros/latex/contrib/minimalist/README.md
-2022/09/03 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
2022/09/03 | 25080 | macros/latex/contrib/colorist/colorist-doc.tex
2022/09/03 | 24901 | macros/unicodetex/latex/einfart/einfart-doc-fr.tex
-2022/09/03 | 247206 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
2022/09/03 | 24536 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex
-2022/09/03 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
2022/09/03 | 2422 | macros/latex/contrib/colorist/README.md
-2022/09/03 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/09/03 | 2402416 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
-2022/09/03 | 23950 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
2022/09/03 | 23521 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex
2022/09/03 | 2325 | macros/latex/contrib/hereapplies/ChangeLog.md
2022/09/03 | 23111 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex
@@ -141,19 +273,13 @@
2022/09/03 | 21948 | macros/unicodetex/latex/einfart/einfart-doc-cn.tex
2022/09/03 | 21706 | macros/unicodetex/latex/simplivre/simplivre-doc-en.tex
2022/09/03 | 21385 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex
-2022/09/03 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
2022/09/03 | 21246 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex
-2022/09/03 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2022/09/03 | 20662 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex
2022/09/03 | 20612 | info/kaytannollista-latexia/luku-erikoiset.tex
2022/09/03 | 20561 | info/kaytannollista-latexia/luku-valmistautuminen.tex
-2022/09/03 | 20434244 | systems/texlive/tlnet/install-tl-windows.exe
-2022/09/03 | 203418 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/09/03 | 2023132 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
2022/09/03 | 200690 | macros/unicodetex/latex/einfart/einfart-doc-cn.pdf
2022/09/03 | 19935 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex
2022/09/03 | 19803 | macros/latex/contrib/hereapplies/hereapplies.sty
-2022/09/03 | 196213 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2022/09/03 | 1925688 | systems/texlive/tlnet/archive/simpleicons.doc.r64268.tar.xz
2022/09/03 | 19106 | macros/unicodetex/latex/simplivre/LICENSE
2022/09/03 | 19106 | macros/unicodetex/latex/lebhart/LICENSE
@@ -162,39 +288,19 @@
2022/09/03 | 19106 | macros/latex/contrib/minimalist/LICENSE
2022/09/03 | 19106 | macros/latex/contrib/crefthe/LICENSE
2022/09/03 | 19106 | macros/latex/contrib/colorist/LICENSE
-2022/09/03 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/09/03 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/09/03 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/09/03 | 17623168 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/09/03 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/09/03 | 169678 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
2022/09/03 | 16166 | macros/latex/contrib/hereapplies/hereapplies-doc.lyx
-2022/09/03 | 155430 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/09/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
2022/09/03 | 15390 | info/kaytannollista-latexia/kaytannollista-latexia.tex
-2022/09/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2022/09/03 | 1508 | systems/texlive/tlnet/archive/darkmode.r64271.tar.xz
-2022/09/03 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/09/03 | 1488042 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/09/03 | 1486856 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/09/03 | 148604 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
2022/09/03 | 1478 | macros/unicodetex/latex/einfart/README.md
2022/09/03 | 1475 | macros/unicodetex/latex/simplivre/README.md
2022/09/03 | 1460 | macros/unicodetex/latex/lebhart/README.md
-2022/09/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
2022/09/03 | 1458 | macros/unicodetex/latex/beaulivre/README.md
-2022/09/03 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/09/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/09/03 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2022/09/03 | 143583 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf
2022/09/03 | 140591 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf
-2022/09/03 | 140013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
2022/09/03 | 139425 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf
-2022/09/03 | 1369236 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
-2022/09/03 | 1369207 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
2022/09/03 | 136792 | macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf
-2022/09/03 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2022/09/03 | 135273 | macros/latex/contrib/minimalist.zip
-2022/09/03 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2022/09/03 | 12883 | macros/latex/contrib/crefthe/crefthe-doc.tex
2022/09/03 | 126162 | macros/latex/contrib/colorist.zip
2022/09/03 | 12571 | macros/latex/contrib/crefthe/crefthe.sty
@@ -202,41 +308,23 @@
2022/09/03 | 12174 | info/kaytannollista-latexia/tavutusvihjeet.tex
2022/09/03 | 1211460 | systems/texlive/tlnet/archive/letgut.doc.r64269.tar.xz
2022/09/03 | 11930136 | systems/texlive/tlnet/archive/tlgs.win32.r64273.tar.xz
-2022/09/03 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
-2022/09/03 | 1161750 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
2022/09/03 | 116040 | systems/texlive/tlnet/archive/luafindfont.doc.r64270.tar.xz
-2022/09/03 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/09/03 | 113500 | systems/texlive/tlnet/archive/texlive-scripts.r64263.tar.xz
-2022/09/03 | 112980 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/09/03 | 112880 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2022/09/03 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/09/03 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/09/03 | 104921 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
2022/09/03 | 104027 | macros/latex/contrib/minimalist/minimalist-doc.pdf
-2022/09/03 | 103597 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
2022/09/03 | 1032482 | info/kaytannollista-latexia.zip
-2022/09/03 | 103247 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
2022/09/03 | 101376 | macros/latex/contrib/colorist/colorist-doc.pdf
-2022/09/02 | 968 | macros/latex/contrib/proflycee/doc/cap.csv
2022/09/02 | 952773 | macros/latex/contrib/darkmode.zip
2022/09/02 | 947 | support/luafindfont/CHANGELOG
2022/09/02 | 930808 | systems/texlive/tlnet/archive/arabtex.doc.r64260.tar.xz
2022/09/02 | 92140 | support/luafindfont/doc/luafindfont-doc.pdf
2022/09/02 | 905201 | language/korean/pmhanguljamo.zip
-2022/09/02 | 889526 | macros/latex/contrib/proflycee.zip
2022/09/02 | 8312 | systems/texlive/tlnet/archive/mugsthesis.source.r64259.tar.xz
2022/09/02 | 805156 | systems/texlive/tlnet/archive/install-latex-guide-zh-cn.doc.r64257.tar.xz
-2022/09/02 | 802991 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
-2022/09/02 | 736 | macros/latex/contrib/proflycee/doc/perroquet.csv
-2022/09/02 | 7231 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/09/02 | 690506 | macros/luatex/latex/letgut/doc/letgut-code.pdf
2022/09/02 | 67995 | macros/luatex/latex/letgut/doc/letgut.tex
2022/09/02 | 665 | fonts/simpleicons/README.md
-2022/09/02 | 65293 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
2022/09/02 | 60858 | language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex
2022/09/02 | 577714 | language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.pdf
2022/09/02 | 568 | systems/texlive/tlnet/archive/install-latex-guide-zh-cn.r64257.tar.xz
-2022/09/02 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
2022/09/02 | 5248 | support/luafindfont/man/luafindfont.1
2022/09/02 | 512776 | systems/texlive/tlnet/archive/xindex.doc.r64256.tar.xz
2022/09/02 | 4778569 | fonts/simpleicons.zip
@@ -244,7 +332,6 @@
2022/09/02 | 394520 | systems/texlive/tlnet/archive/mugsthesis.doc.r64259.tar.xz
2022/09/02 | 366699 | macros/luatex/latex/letgut/doc/letgut.pdf
2022/09/02 | 34720 | systems/texlive/tlnet/archive/xindex.r64256.tar.xz
-2022/09/02 | 32 | macros/latex/contrib/proflycee/doc/basique.csv
2022/09/02 | 3099 | macros/luatex/latex/letgut/doc/localconf.tex
2022/09/02 | 3040 | systems/texlive/tlnet/archive/mugsthesis.r64259.tar.xz
2022/09/02 | 2842 | fonts/simpleicons/enc/simpleiconsOne.enc
@@ -290,7 +377,6 @@
2022/09/02 | 1520 | macros/luatex/latex/letgut/source/HOWTO.md
2022/09/02 | 143726 | language/korean/pmhanguljamo/doc/munjangganghwa.jpg
2022/09/02 | 14337 | language/korean/pmhanguljamo/tex/pmhanguljamo-rrk.sty
-2022/09/02 | 142772 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
2022/09/02 | 1404 | language/korean/pmhanguljamo/README.md
2022/09/02 | 1401683 | install/macros/luatex/latex/letgut.tds.zip
2022/09/02 | 1274509 | macros/luatex/latex/letgut.zip
@@ -380,7 +466,6 @@
2022/09/01 | 404743 | macros/latex/contrib/mugsthesis.zip
2022/09/01 | 388 | macros/latex/contrib/mugsthesis/sample/acknowledgments.tex
2022/09/01 | 38089 | systems/mac/mactex/ExtrasFolder.pdf
-2022/09/01 | 375463 | macros/texinfo/latest/texinfo.tex
2022/09/01 | 32832 | systems/texlive/tlnet/archive/l3backend.source.r64252.tar.xz
2022/09/01 | 295368 | macros/latex/contrib/mugsthesis/mugsthesis.pdf
2022/09/01 | 2939 | indexing/xindex/CHANGELOG
@@ -431,7 +516,6 @@
2022/09/01 | 10269032 | systems/texlive/tlnet/archive/profcollege.doc.r64250.tar.xz
2022/09/01 | 101272 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf
2022/09/01 | 100486 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf
-2022/08/31 | 96952 | systems/texlive/tlnet/archive/texinfo.r64237.tar.xz
2022/08/31 | 95468 | systems/texlive/tlnet/archive/markdown.source.r64240.tar.xz
2022/08/31 | 929348 | macros/latex/contrib/l3backend.zip
2022/08/31 | 907983 | macros/latex/contrib/profcollege/latex/ProfCollege.sty
@@ -507,7 +591,6 @@
2022/08/30 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
2022/08/30 | 6451 | macros/latex/contrib/l3kernel/l3term-glossary.tex
2022/08/30 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
-2022/08/30 | 63772 | systems/texlive/tlnet/archive/hereapplies.doc.r64231.tar.xz
2022/08/30 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
2022/08/30 | 626173 | macros/latex/contrib/l3kernel/expl3.pdf
2022/08/30 | 6224 | macros/latex/contrib/l3kernel/l3.ins
@@ -523,7 +606,6 @@
2022/08/30 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
2022/08/30 | 538263 | macros/latex/contrib/covington.zip
2022/08/30 | 5156 | systems/texlive/tlnet/archive/xgreek.r64233.tar.xz
-2022/08/30 | 5156 | systems/texlive/tlnet/archive/hereapplies.r64231.tar.xz
2022/08/30 | 513914 | macros/latex/contrib/covington/covington.pdf
2022/08/30 | 5122 | macros/latex/contrib/texshade/README
2022/08/30 | 51059 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
@@ -659,7 +741,6 @@
2022/08/29 | 75134 | macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md
2022/08/29 | 746689 | macros/latex/required/babel/base/babel.dtx
2022/08/29 | 673 | graphics/pstricks/contrib/pedigree/pedigree-perl/NEWS
-2022/08/29 | 61884 | systems/texlive/tlnet/archive/crefthe.doc.r64216.tar.xz
2022/08/29 | 617651 | support/TeX4ht/source/tex4ht-html4.tex
2022/08/29 | 5808 | graphics/pstricks/contrib/pedigree/pedigree-perl/pedigree.1
2022/08/29 | 5056 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
@@ -670,7 +751,6 @@
2022/08/29 | 37408 | systems/texlive/tlnet/archive/exam-zh.r64219.tar.xz
2022/08/29 | 357 | support/texaccents/README.md
2022/08/29 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
-2022/08/29 | 3212 | systems/texlive/tlnet/archive/crefthe.r64216.tar.xz
2022/08/29 | 319593 | graphics/pstricks/contrib/pedigree/pedigree-perl.zip
2022/08/29 | 3176061 | info/latex2e-help-texinfo-fr.zip
2022/08/29 | 3006634 | install/macros/latex/required/babel-base.tds.zip
@@ -700,92 +780,3 @@
2022/08/29 | 1133 | graphics/pstricks/contrib/pedigree/pedigree-perl/Makefile
2022/08/29 | 1108872 | systems/texlive/tlnet/archive/teubner.doc.r64217.tar.xz
2022/08/29 | 1014829 | info/latex2e-help-texinfo-fr/latex2e-fr.info
-2022/08/28 | 9599 | macros/xetex/latex/exam-zh/CHANGELOG.md
-2022/08/28 | 95528 | systems/win32/miktex/tm/packages/markdown__source.tar.lzma
-2022/08/28 | 945480 | systems/texlive/tlnet/archive/biber-ms.source.r64213.tar.xz
-2022/08/28 | 91784 | systems/win32/miktex/tm/packages/langnames.tar.lzma
-2022/08/28 | 91112 | systems/texlive/tlnet/archive/langnames.r64209.tar.xz
-2022/08/28 | 845845 | systems/win32/miktex/tm/packages/widows-and-orphans__doc.tar.lzma
-2022/08/28 | 844409 | systems/win32/miktex/tm/packages/scripture__doc.tar.lzma
-2022/08/28 | 843620 | systems/texlive/tlnet/archive/widows-and-orphans.doc.r64212.tar.xz
-2022/08/28 | 840956 | systems/texlive/tlnet/archive/scripture.doc.r64211.tar.xz
-2022/08/28 | 83739 | macros/xetex/latex/xgreek.zip
-2022/08/28 | 822 | macros/xetex/latex/exam-zh/doc/back/development.tex
-2022/08/28 | 81911 | systems/win32/miktex/tm/packages/pstricks.tar.lzma
-2022/08/28 | 81132 | systems/win32/miktex/tm/packages/tkz-euclide__source.tar.lzma
-2022/08/28 | 8095368 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
-2022/08/28 | 7340453 | systems/win32/miktex/tm/packages/pstricks__doc.tar.lzma
-2022/08/28 | 730 | macros/xetex/latex/exam-zh/doc/body/cover.tex
-2022/08/28 | 72111 | macros/xetex/latex/xgreek/xgreek.pdf
-2022/08/28 | 7003 | systems/win32/miktex/tm/packages/scripture.tar.lzma
-2022/08/28 | 69732 | macros/xetex/latex/exam-zh/tex/exam-zh.cls
-2022/08/28 | 6752 | systems/texlive/tlnet/archive/scripture.r64211.tar.xz
-2022/08/28 | 6359 | systems/win32/miktex/tm/packages/luaquotes__source.tar.lzma
-2022/08/28 | 63533 | systems/win32/miktex/tm/packages/swungdash__doc.tar.lzma
-2022/08/28 | 6310 | systems/win32/miktex/tm/packages/pdfoverlay__source.tar.lzma
-2022/08/28 | 596 | systems/texlive/tlnet/archive/collection-humanities.r64209.tar.xz
-2022/08/28 | 5900 | systems/texlive/tlnet/archive/pdfoverlay.source.r64210.tar.xz
-2022/08/28 | 567970 | systems/win32/miktex/tm/packages/pdfoverlay__doc.tar.lzma
-2022/08/28 | 5675 | macros/xetex/latex/exam-zh/doc/body/installation.tex
-2022/08/28 | 565420 | systems/texlive/tlnet/archive/pdfoverlay.doc.r64210.tar.xz
-2022/08/28 | 53117 | macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty
-2022/08/28 | 50770 | macros/xetex/latex/exam-zh/tex/exam-zh-question.sty
-2022/08/28 | 500 | systems/texlive/tlnet/archive/biber-ms.r64213.tar.xz
-2022/08/28 | 474 | macros/xetex/latex/exam-zh/doc/back/about-author.tex
-2022/08/28 | 46001 | systems/win32/miktex/tm/packages/markdown.tar.lzma
-2022/08/28 | 45342 | systems/win32/miktex/tm/packages/tikzpingus__source.tar.lzma
-2022/08/28 | 4518 | systems/win32/miktex/tm/packages/langnames__source.tar.lzma
-2022/08/28 | 45025 | macros/xetex/latex/xgreek/xgreek.dtx
-2022/08/28 | 4064 | systems/texlive/tlnet/archive/langnames.source.r64209.tar.xz
-2022/08/28 | 38958 | systems/win32/miktex/tm/packages/tkz-euclide.tar.lzma
-2022/08/28 | 34627 | macros/xetex/latex/exam-zh/doc/xdyydoc.cls
-2022/08/28 | 3306 | macros/xetex/latex/xgreek/README
-2022/08/28 | 3190 | systems/win32/miktex/tm/packages/pdfoverlay.tar.lzma
-2022/08/28 | 3100 | systems/win32/miktex/tm/packages/widows-and-orphans.tar.lzma
-2022/08/28 | 3008 | systems/texlive/tlnet/archive/pdfoverlay.r64210.tar.xz
-2022/08/28 | 289 | macros/xetex/latex/exam-zh/doc/back/main-changelog.tex
-2022/08/28 | 2892 | systems/texlive/tlnet/archive/widows-and-orphans.r64212.tar.xz
-2022/08/28 | 2863 | systems/win32/miktex/tm/packages/swungdash__source.tar.lzma
-2022/08/28 | 2749 | systems/win32/miktex/tm/packages/luaquotes.tar.lzma
-2022/08/28 | 2635620 | systems/win32/miktex/tm/packages/simpleicons.tar.lzma
-2022/08/28 | 2632606 | systems/win32/miktex/tm/packages/tikzpingus__doc.tar.lzma
-2022/08/28 | 258716 | systems/texlive/tlnet/archive/biber-ms.doc.r64213.tar.xz
-2022/08/28 | 252261 | info/latex2e-help-texinfo-fr/ChangeLog
-2022/08/28 | 24865 | macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty
-2022/08/28 | 24608 | macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty
-2022/08/28 | 23177 | macros/xetex/latex/exam-zh/examples/example-multiple.tex
-2022/08/28 | 213449 | systems/win32/miktex/tm/packages/langnames__doc.tar.lzma
-2022/08/28 | 213099 | macros/xetex/latex/exam-zh/doc/figures/firstpage.pdf
-2022/08/28 | 212772 | systems/texlive/tlnet/archive/langnames.doc.r64209.tar.xz
-2022/08/28 | 2116018 | macros/xetex/latex/exam-zh.zip
-2022/08/28 | 2093167 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
-2022/08/28 | 20721 | macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty
-2022/08/28 | 20635 | macros/xetex/latex/exam-zh/tex/exam-zh-font.sty
-2022/08/28 | 204716 | macros/xetex/latex/exam-zh/doc/figures/gitee-main.png
-2022/08/28 | 199097 | systems/win32/miktex/tm/packages/pstricks__source.tar.lzma
-2022/08/28 | 1955 | macros/xetex/latex/exam-zh/doc/exam-zh-doc-setup.tex
-2022/08/28 | 1927147 | systems/win32/miktex/tm/packages/simpleicons__doc.tar.lzma
-2022/08/28 | 19106 | macros/xetex/latex/exam-zh/LICENSE
-2022/08/28 | 18346 | systems/win32/miktex/tm/packages/scripture__source.tar.lzma
-2022/08/28 | 18068 | systems/texlive/tlnet/archive/scripture.source.r64211.tar.xz
-2022/08/28 | 174288 | macros/xetex/latex/exam-zh/examples/example-multiple.pdf
-2022/08/28 | 17312 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
-2022/08/28 | 171403 | macros/xetex/latex/exam-zh/doc/figures/gitee-release.png
-2022/08/28 | 1542 | macros/xetex/latex/xgreek/xgreek.ins
-2022/08/28 | 1519 | macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex
-2022/08/28 | 1498 | macros/xetex/latex/exam-zh/doc/body/introduction.tex
-2022/08/28 | 149087 | macros/xetex/latex/exam-zh/examples/example-single.pdf
-2022/08/28 | 1405 | systems/win32/miktex/tm/packages/swungdash.tar.lzma
-2022/08/28 | 13779 | systems/win32/miktex/tm/packages/widows-and-orphans__source.tar.lzma
-2022/08/28 | 13187 | systems/win32/miktex/tm/packages/tikzpingus.tar.lzma
-2022/08/28 | 12312 | systems/texlive/tlnet/archive/widows-and-orphans.source.r64212.tar.xz
-2022/08/28 | 1209757 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
-2022/08/28 | 1164 | macros/xetex/latex/exam-zh/doc/back/package.tex
-2022/08/28 | 1156812 | macros/latex/contrib/teubner.zip
-2022/08/28 | 11482 | macros/xetex/latex/exam-zh/README.md
-2022/08/28 | 1148091 | macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdf
-2022/08/28 | 11475 | macros/xetex/latex/exam-zh/examples/example-single.tex
-2022/08/28 | 112850 | macros/xetex/latex/exam-zh/doc/body/usage.tex
-2022/08/28 | 1086875 | systems/win32/miktex/tm/packages/tkz-euclide__doc.tar.lzma
-2022/08/28 | 104164 | systems/win32/miktex/tm/packages/luaquotes__doc.tar.lzma
-2022/08/28 | 1024182 | systems/win32/miktex/tm/packages/markdown__doc.tar.lzma
diff --git a/macros/latex/contrib/bithesis/README.md b/macros/latex/contrib/bithesis/README.md
index 9407b05b5a..c76d91bfdc 100644
--- a/macros/latex/contrib/bithesis/README.md
+++ b/macros/latex/contrib/bithesis/README.md
@@ -10,11 +10,12 @@ The current maintainer of this project is [Feng Kaiyu](https://github.com/fky201
[![Latexmk](https://badgen.net/badge/compiler/latexmk/blue)](https://mg.readthedocs.io/latexmk.html)
[![License](https://badgen.net/github/license/BITNP/BIThesis?color=008080&labelColor=2b2b2b)](./LICENSE)
-BIThesis is an unofficial LaTeX template set for your **undergraduate, master or doctoral thesis** as well as other academic writing here at BIT.
+BIThesis is an unofficial LaTeX template set for your
+**undergraduate, master or doctoral thesis** as well as other academic writing here at BIT.
This project is supported by the _[Dept. of Undergraduate Academic Affairs, BIT](https://jwc.bit.edu.cn/)_ and the _[School of Computer Science and Technology, BIT](https://cs.bit.edu.cn/)_. See [Acknowledgements - Official Sponsors](https://bithesis.bitnp.net/Guide/5-Acknowledgements/Acknowledgements.html#%E5%AE%98%E6%96%B9%E8%B5%9E%E5%8A%A9-official-sponsors).
-At present, `bithesis` only supports XETEX and LuaTEX engines. `bithesis` only allows `UTF-8` encoding.
+At present, `bithesis` only supports XeTeX and LuaTeX engines. `bithesis` only allows `UTF-8` encoding.
## How Do I Use `bithesis`?
diff --git a/macros/latex/contrib/bithesis/bithesis.dtx b/macros/latex/contrib/bithesis/bithesis.dtx
index 1d2314ddca..4d8499b64d 100644
--- a/macros/latex/contrib/bithesis/bithesis.dtx
+++ b/macros/latex/contrib/bithesis/bithesis.dtx
@@ -17,15 +17,21 @@
% \fi
%
% \iffalse
-%<cls>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<cls>\RequirePackage{expl3,l3keys2e}
+%<thesis>\ProvidesExplClass{bithesis}
+%<report>\ProvidesExplClass{bitreport}
+%<beamer>\ProvidesExplClass{bitbeamer}
+%<cls>{2022-09-03}{3.0.0}{BIT Thesis Templates}
+%
+%<oldcls>\NeedsTeXFormat{LaTeX2e}[2020/10/01]
%<book>\ProvidesClass{bitbook}
%<article>\ProvidesClass{bitart}
%<graduate>\ProvidesClass{bitgrad}
-%<cls> [2022/05/09 v2.1.1 BIT Thesis Templates]
+%<oldcls> [2022/05/09 v2.1.1 BIT Thesis Templates]
%
%<*driver>
-\ProvidesFile{bithesis.dtx}[2022/05/09 2.1.1 BIT Thesis Templates]
-\documentclass{ltxdoc}
+\ProvidesFile{bithesis.dtx}[2022/09/03 3.0.0 BIT Thesis Templates]
+\documentclass[letterpaper]{l3doc}
\usepackage{dtx-style}
\EnableCrossrefs
@@ -34,6 +40,9 @@
\RecordChanges
\begin{document}
\DocInput{\jobname.dtx}
+ \PrintChanges
+ \def\indexname{代码索引}
+ \PrintIndex
\end{document}
%</driver>
% \fi
@@ -57,7 +66,7 @@
% \DoNotIndex{\c@secnumdepth,\@startsection,\@setfontsize}
% \DoNotIndex{\ ,\@plus,\@minus,\p@,\z@,\@m,\@M,\@ne,\m@ne}
% \DoNotIndex{\@@par,\DeclareOperation,\RequirePackage,\LoadClass}
-% \DoNotIndex{\AtBeginDocument,\AtEndDocument}
+% \DoNotIndex{\AtBeginDocument,\AtEndDocument,\AtBeginEnvironment}
%
% \GetFileInfo{\jobname.dtx} %
%
@@ -66,15 +75,14 @@
%
% \title{\includegraphics[width=0.3\textwidth]{images/icon.png}
% \\[1cm]
-% \bfseries 北京理工大学本科生{\LaTeX}学位论文及报告模板 }
+% \bfseries 北京理工大学{\LaTeX}学位论文及报告模板 }
% \author{北京理工大学网络开拓者协会 \\ \texttt{webmaster@bitnp.net}} %
% \date{\zihao{-4} \today\quad \color{RubineRed}{\kaishu {\BIThesis}版本\version}}
% \maketitle\thispagestyle{empty}
%
% \def\abstractname{}
% \begin{abstract}\noindent
-% 此宏包旨在建立一个简单易用的北京理工大学学位论文模板,包括本科综合论文训练、硕士
-% 论文、博士论文以及博士后出站报告。
+% 此宏包旨在建立一个简单易用的北京理工大学学位论文模板(以及其他模板),包括本科毕业设计与研究生论文。
% \end{abstract}
%
% \vspace{5mm}
@@ -88,6 +96,7 @@
% \noindent
% \begin{enumerate}
% \item 本模板的发布遵守 \LPPL ,使用前请认真阅读协议内容。
+% \item 与\BIThesis 相关的文档内容采用 \href{https://github.com/BITNP/BIThesis-wiki/blob/main/LICENSE}{CC0-1.0 协议} 发布。
% \item 任何个人或组织以本模板为基础进行修改、扩展而生成的新的专用模板,请严格遵
% 守 \LaTeX{} Project Public License 协议。由于违犯协议而引起的任何纠纷争端均与
% 本模板作者无关。
@@ -98,7 +107,7 @@
%
% \def\abstractname{简介}
% \begin{abstract}
-% \BIThesisLaTeX 是北京理工大学本科生毕业设计开题报告、总论文,以及其他课程报告、实验报告等重要论文、报告的 {\LaTeX} 模板集合。
+% \BIThesisLaTeX 是北京理工大学本科生毕业设计与研究生学位论文,以及其他课程报告、实验报告的 {\LaTeX} 模板集合。
% 如果你厌烦了 Word 格式的不人性化、参考文献的难以管理、公式输入的差劲体验……那么欢迎来尝试用专业的学术稿件排版利器 —— {\LaTeX},来排版你的论文。
% 专业高端、学界认可、开源免费,{\LaTeX} 是你论文排版的最佳搭档。
%
@@ -117,6 +126,7 @@
% \section{项目简介}
% \subsection{历史与贡献者们}
% \begin{itemize}
+% \item 2017 - 2018 年,杨雅婷等人受研究生院委托,制作了\href{https://github.com/BIT-thesis/LaTeX-template}{BIT-Thesis} 研究生学位论文模板。
% \item 2019 - 2020 年,\BIThesis 最早由 2016 级的武上博、王赞、唐誉铭、牟思睿和詹熠莎等人维护。
% \begin{itemize}
% \item 在此期间,\BIThesis 从无到有诞生了,包括使用手册、在线文档和开箱即用的模板。
@@ -127,10 +137,12 @@
% \item 在此期间,冯开宇将原来的 .tex 文件制作成了宏包,并发布到 CTAN 上。
% \item 项目代码也随之被拆分成了 \BIThesisMacroPackage,\BIThesisWiki 和 \BIThesisScaffold。
% \end{itemize}
-% \item 2021 - 2022 年,2021 级(硕士研究生)的冯开宇针对 2021、2022 毕业季收到的反馈对该项目进行维护升级(前向兼容)。
+% \item 2021 - 2022 年,2021 级(硕士研究生)的冯开宇针对 2021、2022 毕业季收到的反馈对该项目进行维护升级。
% \begin{itemize}
% \item 在此期间,冯开宇合入了杨雅婷等人在 2017 年开发的研究生学位论文模板。
% \item 在项目架构上,BIThesis-scaffold 合入 BIThesis 以便于进一步维护。
+% \item 次年暑假期间,冯开宇用 \pkg{expl3} 重构了\LaTeX 样式代码,向用户提供了简易易用的接口。
+% \item 同时,也增加了本科全英文专业的毕设论文模板样式。
% \end{itemize}
% \end{itemize}
% \subsection{\BIThesis 是什么?}
@@ -138,21 +150,21 @@
%
% \BIThesisLaTeX 是由北京理工大学众多学子发起并维护的开源项目。该项目旨在建立一套简单易用的北京理工大学 \LaTeX 学位论文模板,包括本科综合论文训练。
% \subsubsection{\BIThesisLaTeX 的组成}
-% 我们将 \BIThesisLaTeX 划分为了三个主要仓库:
+% 我们将 \BIThesisLaTeX 划分为了两个主要仓库:
% \begin{table}[H]
% \centering
% \begin{tabular}{@{}l l p{6cm} @{}}
% \toprule
% 项目 & 项目地址 & 主要目的 \\ \midrule
-% BIThesis & \href{https://github.com/BITNP/BIThesis}{BITNP/BIThesis} & 主要存储 \BIThesis 宏包 \\
-% BIThesis-wiki & \href{https://github.com/BITNP/BIThesis-wiki}{BITNP/BIThesis-wiki} & 存储 \BIThesisLaTeX 项目在线文档 \\
-% BIThesis-scaffold & \href{https://github.com/BITNP/BIThesis-scaffold}{BITNP/BIThesis-scaffold} & 存储开箱即用的论文模板样式,便于使用者快速开始写作 \\ \bottomrule
+% BIThesis & \href{https://github.com/BITNP/BIThesis}{BITNP/BIThesis} & 主要存储 \BIThesis 宏包以及开箱即用的模板样式 \\
+% BIThesis-wiki & \href{https://github.com/BITNP/BIThesis-wiki}{BITNP/BIThesis-wiki} & 存储 \BIThesisLaTeX 项目在线文档 \\ \bottomrule
% \end{tabular}
% \end{table}
%
% 如果你仅想解决「我如何使用 \BIThesisLaTeX 来帮助我完成实验论文?」这个问题,那么欢迎你访问我们的\href{https://bithesis.bitnp.net}{在线文档}以获得更多信息。
+%
+% 如果你想深入了解 \BIThesisLaTeX 提供的接口的各种选项,那么请继续阅读。
%
-% \section{使用说明}
% \subsection{\BIThesis 宏包的组成}
% 为了适应用户的不同需求,并符合 CTeX 宏集的设计习惯,我们将 \BIThesisMacroPackage 的主要功能设计安排在两个中文文档类当中,具体的组成见 \ref{tab:classes}。
% \begin{table}[H]
@@ -162,24 +174,1032 @@
% \begin{tabular}{@{}lll@{}}
% \toprule
% 类别 & 文件 & 说明 \\ \midrule
-% \multirow{2}{*}{文档类} & bitart.cls & 对应 ctxart.cls,提供实验报告模板、开题报告模板。 \\
-% & bitbook.cls & 对应 ctexbook.cls ,提供本科生毕业设计模板。 \\ \cmidrule(l){2-3}
-% & bitgrad.cls & 对应 ctexbook.cls ,提供研究生毕业设计模板。(全体硕士及2020级以前博士适用) \\ \cmidrule(l){2-3}
+% \multirow{2}{*}{文档类} & \cls{bithesis.cls} & 封装本科生与研究生的毕业论文样式。 \\
+% & \cls{bitreport.cls} & 封装了本科生开题报告与实验报告样式。 \\ \cmidrule(l){2-3}
+% & \cls{bitbeamer.cls} & 对应 ctexbeamer.cls ,提供了北理工的 Beamer 模板样式。 \\ \cmidrule(l){2-3}
% \end{tabular}
% \end{table}
+%
+% \section{安装}
% \subsection{\BIThesis 宏包的安装和更新}
% 最常见的 \TeX 发行版(\hologo{TeX} Live 和 \hologo{MiKTeX})已收录\BIThesisMacroPackage 及其依赖的宏包和宏集。
%
% 如果安装以上发行版的时间较早,可能你本地的环境中不存在 \BIThesisMacroPackage 或者不是最新版本的。那么你需要通过包管理器来安装/更新 \BIThesisMacroPackage:
-% \mint{bash}|tlmgr update --self --all|
-% \subsection{使用 \BIThesis 文档类}
-% 推荐使用 \BIThesisScaffold 来进行具体的项目编写。\BIThesisScaffold 提供了多种最常用的模板,你可以在 \href{https://github.com/BITNP/BIThesis}{主项目的 Releases}中找到它们。
+% \begin{shell}[morekeywords={tlmgr,install}]
+% tlmgr install fduthesis
+% \end{shell}
+%
+% 更新可以通过图形界面进行,或者通过命令行:
+% \begin{shell}[morekeywords={tlmgr,install}]
+% tlmgr update fduthesis
+% \end{shell}
+%
+% \section{\cls{bithesis} 使用与配置}
+%
+% 推荐使用\BIThesisRelease (开箱即用)。
+%
+% \BIThesisRelease 提供了多种最常用的模板,你可以在
+% \href{https://github.com/BITNP/BIThesis/releases}{主项目的 Releases}中找到它们。
+%
+% 使用此文档类的模板有:
+% \begin{itemize}
+% \item \BIThesisTemplates{UT}
+% \item \BIThesisTemplates{UTE}
+% \item \BIThesisTemplates{PT}
+% \item \BIThesisTemplates{GT}
+% \end{itemize}
+%
+% \subsection{最小用例}
+%
+% \begin{latex}
+% \documentclass[type=bachelor]{bithesis}
+% \BITSetup{
+% info = {
+% author = FKY,
+% ......
+% }
+% }
+% \begin{document}
+% \end{document}
+% \end{latex}
+%
+% 如您所见,在 \LaTeX 中,用户使用的命令通常以「\\」作为开头,后面依次跟随
+% 命令名称、若干可选参数和若干必需参数。如:
+%
+% \begin{latex}
+% \MakeCover
+% \BITSetup{}
+% \FooBar[]{}
+% \end{latex}
+%
+% 同理,用户使用的环境通常以 begin 和 end 进行包裹,同样可以传入可选参数和必需参数:
+%
+% \begin{latex}
+% \begin{abstract}
+% \end{abstract}
+%
+% \begin{abstract}[addTOC=false]
+% \end{abstract}
+%
+% \begin{foo}{param1}
+% \end{foo}
+% \end{latex}
+%
+% 需要强调的是:以方框号表示的可选参数,在没有参数传入的时候,是可以忽略的。
+% 比如以下两个命令等价:
+% \begin{latex}
+% \FooBar
+% \FooBar[]
+% \end{latex}
+%
+% 环境同理。
+%
+% \subsection{模板选项} \label{sec:template-options}
+%
+% 所谓“模板选项”,指需要在引入文档类的时候指定的选项:
+%
+% \begin{latex}[deletetexcs={\documentclass},morekeywords={\documentclass}]
+% \documentclass(*\oarg{模板选项}*){bithesis}
+% \end{latex}
+%
+% \begin{function}{type}
+% \begin{bitsyntax}[emph={[1]type}]
+% type = (*<(bachelor)|\mbox{bachelor_translation}|\mbox{bachelor_english}|master|docter>*)
+% \end{bitsyntax}
+% 选择论文类型,它们分别对应:
+% \begin{itemize}
+% \item \BIThesisTemplates{UT}
+% \item \BIThesisTemplates{PT}
+% \item \BIThesisTemplates{UTE}
+% \item \BIThesisTemplates{GT} 研究生
+% \item \BIThesisTemplates{GT} 博士生
+% \end{itemize}
+% \end{function}
+%
+% \begin{function}{blindPeerReview}
+% \begin{bitsyntax}[emph={[1]blindPeerReview}]
+% blindPeerReview = (*<(false)|true>*)
+% \end{bitsyntax}
+%
+% 此选项用于输出符合盲审要求的论文。所有可能暴露个人信息的页面都将隐藏,
+% 比如封面、信息页、原创性声明、个人简介、致谢等等。
+% \end{function}
+%
+% \begin{function}{twoside}
+% \begin{bitsyntax}[emph={[1]twoside}]
+% twoside = (*<(false)|true>*)
+% \end{bitsyntax}
+% \end{function}
+%
+% \begin{function}{ctex}
+% \begin{bitsyntax}[emph={[1]ctex}]
+% ctex = (*传给 ctexbook 的模板选项*)
+% \end{bitsyntax}
+%
+% 该选项用于传入模板选项至 ctexbook。
+% \end{function}
+%
+% \subsection{参数设置}
+%
+% \begin{function}{\BITSetup}
+% \begin{bitsyntax}[emph={[1]BITSetup}]
+% \BITSetup = {(*\oarg{键值对}*)}
+% \end{bitsyntax}
+% \end{function}
+%
+% 本模板提供了一系列选项,可由您自行配置。载入文档类之后,以下所有选项均可通过统一的
+% 命令 \cs{BITSetup} 来设置。
+%
+% \cs{BITSetup} 的参数是一组由(英文)逗号隔开的选项列表,列表中的选项通常是 \meta{key} =
+% \meta{value} 的形式。部分选项的 \meta{value} 可以省略。对于同一项,后面的设置将会覆盖前面的设
+% 置。在下文的说明中,将用粗体表示默认值。
+%
+% \cs{BITSetup} 采用 LATEX3 风格的键值设置,支持不同类型以及多种层次的选项设定。键值列
+% 表中,“=”左右的空格不影响设置;但需注意,参数列表中不可以出现空行。
+% 与模板选项相同,布尔型的参数可以省略 \meta{选项} = true 中的“= true”。
+% 另有一些选项包含子选项,如 cover 和 info 等。它们可以按如下两种等价方式来设定:
+%
+% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}]
+% \BITSetup{
+% cover = {
+% date = xxxx年x月,
+% },
+% info = {
+% author = Feng Kaiyu,
+% title = A Thesis Title for Your Paper,
+% }
+% }
+% \end{latex}
+%
+% 或者
+%
+% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}]
+% \BITSetup{
+% cover / date = xxxx年x月,
+% info / author = Feng Kaiyu,
+% info / title = A Thesis Title for Your Paper,
+% }
+% \end{latex}
+%
+% \textbf{请注意:以下选项根据模板的不同,可能会有不同的默认值。
+% 有些模板可能不会使用某些选项。使用与否以及使用方式是根据学校的论文撰写要求实现的。}
+%
+% \subsubsection{封面选项} \label{sec:cover}
+%
+% \begin{function}{cover}
+% \begin{bitsyntax}[emph={[1]cover}]
+% cover = (*\marg{键值列表}*)
+% cover/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于设置论文格式。具体内容见下。
+% \end{function}
+%
+% \begin{function}{cover/date}
+% \begin{bitsyntax}[emph={[1]date}]
+% date = (*\marg{任意字符串}*)
+% \end{bitsyntax}
+%
+% 覆盖封面的日期。
+% \end{function}
+%
+% \begin{function}{cover/headerImage}
+% \begin{bitsyntax}[emph={[1]headerImage}]
+% headerImage = (*\marg{图片路径}*)
+% \end{bitsyntax}
+%
+% 设置封面顶部的“北京理工大学”字样图片。
+% \end{function}
+%
+% \begin{function}{cover/xiheiFont}
+% \begin{bitsyntax}[emph={[1]xiheiFont}]
+% xiheiFont = (*\marg{字体路径}*)
+% \end{bitsyntax}
+%
+% 配置此选项以在部分模板封面中使用“华文细黑”,保证与 Word 模板中的字体一致。
+%
+% 在 Windows 和 MacOS 中,该字体已经安装;在 Linux 中一般需要用户自行安装。
+% \end{function}
+%
+% \begin{function}{cover/dilimiter}
+% \begin{bitsyntax}[emph={[1]dilimiter}]
+% dilimiter = (*\marg{任意字符串}*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 设置封面信息中标签和值的分隔符。一般为全角或者半角的冒号。
+% \end{function}
+%
+% \begin{function}{cover/autoWidth}
+% \begin{bitsyntax}[emph={[1]autoWidth}]
+% autoWidth = (*<(true)|false>*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 自动计算封面中下划线的长度。
+%
+% 如果关闭了该选项,则建议配合\kvopt{cover/labelMaxWidth}{\meta{长度}}\\
+% 和\kvopt{cover/valueMaxWidth}{\meta{长度}}使用,以控制下划线的长度。
+% \end{function}
+%
+% \begin{function}{cover/labelMaxWidth}
+% \begin{bitsyntax}[emph={[1]labelMaxWidth}]
+% labelMaxWidth = (*\marg{任意长度}*)
+% \end{bitsyntax}
+%
+% 此选项仅当\kvopt{cover/autoWidth}{false}时生效。
+%
+% 设置封面信息中标签的占位长度。
+% \end{function}
+%
+% \begin{function}{cover/valueMaxWidth}
+% \begin{bitsyntax}[emph={[1]valueMaxWidth}]
+% valueMaxWidth = (*\marg{任意长度}*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 设置封面信息中值的占位长度。\textbf{同时也会影响下划线的长度。}
+% \end{function}
+%
+% \begin{function}{cover/labelAlign}
+% \begin{bitsyntax}[emph={[1]labelAlign}]
+% labelAlign = (*<c|l|r>*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 设置封面信息中值的对其方式(居中,左对齐、右对齐)。
+% \end{function}
+%
+% \begin{function}{cover/valueAlign}
+% \begin{bitsyntax}[emph={[1]valueAlign}]
+% valueAlign = (*<c|l|r>*)
+% \end{bitsyntax}
+%
+% 此选项仅当\kvopt{cover/autoWidth}{false}时生效。
+%
+% 设置封面信息中标签的对其方式(居中,左对齐、右对齐)。
+% \end{function}
+%
+% \begin{function}{cover/underlineThickness}
+% \begin{bitsyntax}[emph={[1]underlineThickness}]
+% underlineThickness = (*\marg{任意长度}*)
+% \end{bitsyntax}
+%
+% 设置封面信息中下划线的厚度。
+% \end{function}
+%
+% \begin{function}{cover/underlineOffset}
+% \begin{bitsyntax}[emph={[1]underlineOffset}]
+% underlineOffset = (*(-10pt)|\marg{任意长度}*)
+% \end{bitsyntax}
+%
+% 设置封面信息中下划线的偏移量。
+% \end{function}
+%
+% \subsubsection{论文基本信息}
+%
+% \begin{function}{info}
+% \begin{bitsyntax}[emph={[1]info}]
+% info = (*\marg{键值列表}*)
+% info/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于录入论文信息。具体内容见下。
+% 一般以「En」结尾的项目表示对应的英文字段。
+% \end{function}
+%
+% \begin{function}{info/title,info/titleEn}
+% \begin{bitsyntax}[emph={[1]title,titleEn}]
+% title = (*\marg{字符串}*)
+% titleEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 论文标题。
+% \end{function}
+%
+% \begin{function}{info/school,info/schoolEn}
+% \begin{bitsyntax}[emph={[1]school,schoolEn}]
+% school = (*\marg{字符串}*)
+% schoolEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 学院名称。
+% \end{function}
+%
+% \begin{function}{info/major,info/majorEn}
+% \begin{bitsyntax}[emph={[1]major,majorEn}]
+% major = (*\marg{字符串}*)
+% majorEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 专业名称。
+% \end{function}
+%
+% \begin{function}{info/author,info/authorEn}
+% \begin{bitsyntax}[emph={[1]author,authorEn}]
+% author = (*\marg{字符串}*)
+% authorEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 作者姓名。
+% \end{function}
+%
+% \begin{function}{info/studentId}
+% \begin{bitsyntax}[emph={[1]studentId}]
+% studentId = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 学号。
+% \end{function}
+%
+% \begin{function}{info/supervisor,info/supervisorEn}
+% \begin{bitsyntax}[emph={[1]supervisor,supervisorEn}]
+% supervisor = (*\marg{字符串}*)
+% supervisorEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 指导教师。
+% \end{function}
+%
+% \begin{function}{info/externalSupervisor}
+% \begin{bitsyntax}[emph={[1]externalSupervisor}]
+% externalSupervisor = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 校外指导教师。
+% \end{function}
+%
+% \begin{function}{info/keywords,info/keywordsEn}
+% \begin{bitsyntax}[emph={[1]keywords,keywordsEn}]
+% keywords = (*\marg{字符串;以全角分号分割}*)
+% keywordsEn = (*\marg{字符串;以分号分割}*)
+% \end{bitsyntax}
+%
+% 摘要关键词。
+% \end{function}
+%
+% \begin{function}{info/translationTitle}
+% \begin{bitsyntax}[emph={[1]translationTitle}]
+% translationTitle = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 文献翻译中,翻译后的论文名称。
+% \end{function}
+%
+% \begin{function}{info/translationOriginTitleEn}
+% \begin{bitsyntax}[emph={[1]translationOriginTitleEn}]
+% translationOriginTitleEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 文献翻译中,翻译前的论文名称。
+% \end{function}
+%
+% \begin{function}{info/classification}
+% \begin{bitsyntax}[emph={[1]classification}]
+% classification = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 中国分类号。
+% \end{function}
+%
+% \begin{function}{info/UDC}
+% \begin{bitsyntax}[emph={[1]UDC}]
+% UDC = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% UDC分类号。
+% \end{function}
+%
+% \begin{function}{info/chairman,info/chairmanEn}
+% \begin{bitsyntax}[emph={[1]chairman,chairmanEn}]
+% chairman = (*\marg{字符串}*)
+% chairmanEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 答辩委员会主席。
+% \end{function}
+%
+% \begin{function}{info/degree,info/degreeEn}
+% \begin{bitsyntax}[emph={[1]degree,degreeEn}]
+% degree = (*\marg{字符串}*)
+% degreeEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 申请学位。
+% \end{function}
+%
+% \begin{function}{info/institute,info/instituteEn}
+% \begin{bitsyntax}[emph={[1]institute,instituteEn}]
+% institute = (*(北京理工大学)|\marg{字符串}*)
+% instituteEn = (*(Beijing~Institute~of~Technology)|\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 学位授予单位。
+% \end{function}
+%
+% \begin{function}{info/defenseDate,info/defenseDateEn}
+% \begin{bitsyntax}[emph={[1]defenseDate,defenseDateEn}]
+% defenseDate = (*\marg{字符串}*)
+% defenseDateEn = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 答辩日期。
+% \end{function}
+%
+% \begin{function}{info/classifiedLevel}
+% \begin{bitsyntax}[emph={[1]classifiedLevel}]
+% classifiedLevel = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 密级。
+% \end{function}
+%
+% \subsubsection{样式信息}
+%
+% \begin{function}{style}
+% \begin{bitsyntax}[emph={[1]style}]
+% style = (*\marg{键值列表}*)
+% style/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于调整样式。具体内容见下。
+% \end{function}
+%
+% \begin{function}{style/head}
+% \begin{bitsyntax}[emph={[1]head}]
+% head = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 页眉文字。
+% \end{function}
+%
+% \subsubsection{目录选项}
+%
+% \begin{function}{TOC}
+% \begin{bitsyntax}[emph={[1]TOC}]
+% TOC = (*\marg{键值列表}*)
+% TOC/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于调整其他选项。具体内容见下。
+% \end{function}
+%
+% \begin{function}{TOC/abstract,TOC/abstractEn}
+% \begin{bitsyntax}[emph={[1]abstract,abstractEn}]
+% abstract = (*(true)|false*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 是否在目录中索引摘要。
+% \end{function}
+%
+% \begin{function}{TOC/symbols}
+% \begin{bitsyntax}[emph={[1]symbols}]
+% abstract = (*(true)|false*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 是否在目录中索引主要符号对照表。
+% \end{function}
+%
+% \subsubsection{附录选项}
+%
+% \begin{function}{appendices}
+% \begin{bitsyntax}[emph={[1]appendices}]
+% appendices = (*\marg{键值列表}*)
+% appendices/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于调整其他选项。具体内容见下。
+% \end{function}
+%
+% \begin{function}{appendices/chapterLevel}
+% \begin{bitsyntax}[emph={[1]chapterLevel}]
+% chapterLevel = (*<(false)|true>*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 开启后,可以使用以「chapter」为顶层的附录格式。
+%
+% \begin{latex}[emph={[1]appendices,chapter}]
+% \begin{appendices}
+% \chapter{附录A 题目}
+% (*\meta{附录A 内容}*)
+% \chapter{附录B 题目}
+% (*\meta{附录B 内容}*)
+% \end{appendices}
+% \end{latex}
+% \end{function}
+%
+% \begin{function}{appendices/title}
+% \begin{bitsyntax}[emph={[1]title}]
+% title = (*\meta{字符串}*)
+% \end{bitsyntax}
+%
+% 可以覆盖附录的标题名称,默认为「附录」。
+% \end{function}
+%
+% \begin{function}{appendices/TOCTitle}
+% \begin{bitsyntax}[emph={[1]TOCTitle}]
+% TOCTitle = (*\meta{字符串}*)
+% \end{bitsyntax}
+%
+% 可以覆盖附录在目录中的名称,默认为「附录」。
+% \end{function}
+%
+% \subsubsection{其他配置}
+%
+% \begin{function}{misc}
+% \begin{bitsyntax}[emph={[1]misc}]
+% misc = (*\marg{键值列表}*)
+% misc/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于调整其他选项。具体内容见下。
+% \end{function}
+%
+% \begin{function}{misc/arialFont}
+% \begin{bitsyntax}[emph={[1]arialFont}]
+% arialFont = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% \textit{此选项一般不需要用户自行修改。}
+%
+% 本科生毕业设计模板(全英文专业)需要设置 Arial 字体。
+% (Windows 和 MacOS 自带,Linux 需要用户自行安装)
+% \end{function}
+%
+% \section{正文编写}
+%
+% 请注意,请在\env{document} 之内使用以下命令 。
+%
+% \subsection{封面及基本信息}
+%
+% \begin{function}{\MakeCover}
+%
+% \textit{封面内容会根据模板选项(具体参见节\ref{sec:template-options})中\meta{type=xxx}的值而变化。}
+% \textit{封面的下划线效果会受到参数设置中封面选项(具体见节\ref{sec:cover})的影响。}
+%
+% 绘制封面。
+%
+% 在默认配置下,封面中的下划线会自动计算最大宽度。此时,如果用户需要换行,可以通过「//」控制换行。
+%
+% 当关闭自动计算下划线宽度后,可以通过\meta{labelMaxWidth=xxx} 与 \meta{valueMaxWidth=xxx}来指定下划线的宽度。一般情况下,我们不建议您这样做。
+% \end{function}
+%
+% \begin{function}{\MakePaperBack}
+%
+% 绘制书脊。
+% \end{function}
+%
+% \begin{function}{\MakeTitle}
+%
+% 绘制中英文信息页。
+% \end{function}
+%
+% \begin{function}{\MakeOriginality}
+%
+% 绘制中英文信息页。
+% \end{function}
+%
+% \subsection{前置部分}
+%
+% \begin{function}{\frontmatter}
+%
+% 声明前置部分开始。
+%
+% 此时页码会使用罗马数字进行计数。
+% \end{function}
+%
+% \begin{function}{abstract}
+% \begin{bitsyntax}[emph={[1]abstract}]
+% \begin{abstract}
+% (*\meta{中文摘要}*)
+% \end{abstract}
+% \end{bitsyntax}
+% \end{function}
+%
+% \begin{function}{abstractEn}
+% \begin{bitsyntax}[emph={[1]abstractEn}]
+% \begin{abstractEn}
+% (*\meta{英文摘要}*)
+% \end{abstractEn}
+% \end{bitsyntax}
+%
+% 摘要。
+%
+% 摘要的最后会显示关键词,关键词通过 \cs{BITSetup} 录入。
+%
+% \end{function}
+%
+% \begin{function}{\MakeTOC,\listoffigures,\listoftables}
+%
+% 绘制目录、插图目录与表格目录。
+% \end{function}
+%
+% \begin{function}{symbols}
+% \begin{bitsyntax}[emph={[1]symbols}]
+% \begin{symbols}
+% \item[BIT] 北京理工大学的英文缩写
+% \item[\LaTeX] 一个很棒的排版系统
+% \end{symbols}
+% \end{bitsyntax}
+%
+% 主要符号对照表。
+%
+% 主要符号对照表类似于一个列表环境,用以添加文章中使用的关键符号与缩略词。
+%
+% \end{function}
+%
+% \begin{function}{addTOC}
+% \begin{bitsyntax}[emph={[1]addTOC}]
+% addTOC = (*<(true)|false>*)
+% \end{bitsyntax}
+%
+% 主要符号对照表的可选参数。
+%
+% 添加主要符号对照表到目录,默认开启。
+% \end{function}
+%
+% \subsection{正文部分}
+%
+% \begin{function}{\mainmatter}
+%
+% 声明正文部分开始。
+%
+% 此时页码会使用阿拉伯数字进行计数。
+% \end{function}
+%
+% \subsubsection{定理类环境}
+% \paragraph{默认格式}
+%
+% \begin{function}{algorithm,theorem,lemma,proposition,corollary,axiom,definition,conjecture,example,case,remark}
+% \begin{bitsyntax}[emph={[2]proof}]
+% \begin{theorem}[留数定理]
+% (*\meta{定理内容}*)
+% \end{theorem}
+%
+% \begin{proof}(*\oarg{小标题}*)
+% (*\meta{证明过程}*)
+% \end{proof}
+% \end{bitsyntax}
+% 一系列预定义的数学环境。具体含义见表~\ref{tab:theorem}。
+% \end{function}
+%
+% \begin{table}[]
+% \caption{预定义的数学环境}
+% \centering
+% \subfloat[][plain样式]{
+% \begin{tabular}{@{}ccccccc@{}}
+% \toprule
+% \textbf{名称} & algorithm & theorem & lemma & proposition & corollary & axiom \\ \midrule
+% \textbf{含义} & 算法 & 定理 & 引理 & 命题 & 推论 & 公理 \\
+% \textbf{样式} & \multicolumn{6}{c}{\textbf{定理2.1.} \textit{定理内容……}} \\ \bottomrule
+% \end{tabular}
+% }
+%
+% \subfloat[][definition样式]{
+% \begin{tabular}{@{}ccccc@{}}
+% \toprule
+% \textbf{名称} & definition & conjecture & example & case \\ \midrule
+% \textbf{含义} & 定义 & 猜想 & 例 & 情形 \\
+% \textbf{样式} & \multicolumn{4}{c}{\textbf{定义2.1.} 定义内容……} \\ \bottomrule
+% \end{tabular}
+% }
+%
+% \subfloat[][remark样式]{
+% \begin{tabular}{@{}cc@{}}
+% \toprule
+% \textbf{名称} & remark \\ \midrule
+% \textbf{含义} & 注 \\
+% \textbf{样式} & \multicolumn{1}{c}{\textit{注1.} 内容……} \\ \bottomrule
+% \end{tabular}
+% }
+%
+% \subfloat[][proof样式]{
+% \begin{tabular}{@{}cc@{}}
+% \toprule
+% \textbf{名称} & proof \\ \midrule
+% \textbf{含义} & 证明 \\
+% \textbf{样式} & \multicolumn{1}{c}{\textit{证明. } 内容…… 「证毕符号」} \\ \bottomrule
+% \end{tabular}
+% }
+% \label{tab:theorem}
+% \end{table}
+%
+% \subsection{后置部分}
+%
+% \begin{function}{\backmatter}
+%
+% 声明后置部分开始。
+%
+% 会取消章节标题的的编号。
+%
+% \end{function}
+%
+% \begin{function}{conclusion}
+% \begin{bitsyntax}[emph={[1]conclusion}]
+% \begin{conclusion}
+% (*\meta{结论}*)
+% \end{conclusion}
+% \end{bitsyntax}
+% \end{function}
+%
+% \begin{function}{bibprint}
+% \begin{bitsyntax}[emph={[1]bibprint}]
+% \begin{bibprint}
+% \printbibliography[heading=none]
+% \end{bibprint}
+% \end{bitsyntax}
+%
+% 打印参考文献。
+%
+% 在使用\BIThesisTemplates{GT}时需要注意,由于研究生学位论文也要求使用国标形式输出「攻读学位期间发表论文与研究成果清单」,因此 bithesis 同样使用 bibtex 管理其文献。而由于 biblatex 的排序是全局的,因此需要使用 \meta{category} 功能来分割出两个不同的类别。
+%
+% 因此,请使用下列语句输出参考文献:
+% \begin{latex}[emph={[1]bibprint}]
+% \begin{bibprint}
+% \printbibliography[heading=none,notcategory=mypub,resetnumbers=true]
+% \end{bibprint}
+% \end{latex}
+% \end{function}
+%
+% \begin{function}{appendices}
+% \begin{bitsyntax}[emph={[1]appendices}]
+% \begin{appendices}
+% \section{附录A题目}
+% (*\meta{附录A内容}*)
+% \section{附录B题目}
+% (*\meta{附录B内容}*)
+% \end{appendices}
+% \end{bitsyntax}
+%
+% 附录。
+% \end{function}
+%
+% \begin{function}{publications}
+% \begin{bitsyntax}[emph={[1]publications,addtocategory,printbibliography}]
+% \begin{publications}
+% \nocite{\meta{引用内容的key}}
+% \addtocategory{mypub}{\meta{引用内容的key}}
+% \printbibliography[heading=none,category=mypub,resetnumbers=true]
+% \end{publications}
+% \end{bitsyntax}
+%
+% 攻读学位期间发表论文与研究成果清单。
+% \end{function}
+%
+% \begin{function}{acknowledgements}
+% \begin{bitsyntax}[emph={[1]acknowledgements}]
+% \begin{acknowledgements}
+% (*\meta{致谢内容}*)
+% \end{acknowledgements}
+% \end{bitsyntax}
+%
+% 致谢。
+% \end{function}
+%
+% \begin{function}{resume}
+% \begin{bitsyntax}[emph={[1]resume}]
+% \begin{resume}
+% (*\meta{个人简介内容}*)
+% \end{resume}
+% \end{bitsyntax}
+%
+% 个人简介。
+% \end{function}
+%
+% \section{\cls{bitreport} 使用与配置}
+%
+% 推荐使用\BIThesisRelease (开箱即用)。
+%
+% \BIThesisRelease 提供了多种最常用的模板,你可以在
+% \href{https://github.com/BITNP/BIThesis/releases}{主项目的 Releases}中找到它们。
+%
+% 使用此文档类的模板有:
+% \begin{itemize}
+% \item \BIThesisTemplates{UP}
+% \item \BIThesisTemplates{LR}
+% \end{itemize}
+%
+% \subsection{最小用例}
+%
+% \begin{latex}
+% \documentclass[]{bitreport}
+% \BITSetup{
+% info = {
+% author = FKY,
+% ......
+% }
+% }
+% \begin{document}
+% \end{document}
+% \end{latex}
+%
+% \subsection{模板选项}
+%
+% 所谓“模板选项”,指需要在引入文档类的时候指定的选项:
+%
+% \begin{latex}[deletetexcs={\documentclass},morekeywords={\documentclass}]
+% \documentclass(*\oarg{模板选项}*){bithesis}
+% \end{latex}
+%
+% \begin{function}{type}
+% \begin{bitsyntax}[emph={[1]type}]
+% type = (*<(common)|\mbox{undergraduate_proposal}>*)
+% \end{bitsyntax}
+% 选择论文类型,它们分别对应:
+% \begin{itemize}
+% \item \BIThesisTemplates{LR}
+% \item \BIThesisTemplates{UP}
+% \end{itemize}
+% \end{function}
+%
+% \begin{function}{ctex}
+% \begin{bitsyntax}[emph={[1]ctex}]
+% ctex = (*传给 ctexbook 的模板选项*)
+% \end{bitsyntax}
+%
+% 该选项用于传入模板选项至 ctexbook。
+% \end{function}
+%
+% \subsection{参数设置}
+%
+% \begin{function}{\BITSetup}
+% \begin{bitsyntax}[emph={[1]BITSetup}]
+% \BITSetup = {(*\oarg{键值对}*)}
+% \end{bitsyntax}
+% \end{function}
+%
+% 本模板提供了一系列选项,可由您自行配置。载入文档类之后,以下所有选项均可通过统一的
+% 命令 \cs{BITSetup} 来设置。
+%
+% \cs{BITSetup} 的参数是一组由(英文)逗号隔开的选项列表,列表中的选项通常是 \meta{key} =
+% \meta{value} 的形式。部分选项的 \meta{value} 可以省略。对于同一项,后面的设置将会覆盖前面的设
+% 置。在下文的说明中,将用粗体表示默认值。
+%
+% \cs{BITSetup} 采用 LATEX3 风格的键值设置,支持不同类型以及多种层次的选项设定。键值列
+% 表中,“=”左右的空格不影响设置;但需注意,参数列表中不可以出现空行。
+% 与模板选项相同,布尔型的参数可以省略 \meta{选项} = true 中的“= true”。
+% 另有一些选项包含子选项,如 cover 和 info 等。它们可以按如下两种等价方式来设定:
+%
+% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}]
+% \BITSetup{
+% cover = {
+% date = xxxx年x月,
+% },
+% info = {
+% author = Feng Kaiyu,
+% title = A Report Title for Your Experiment,
+% }
+% }
+% \end{latex}
+%
+% 或者
+%
+% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}]
+% \BITSetup{
+% cover / date = xxxx年x月,
+% info / author = Feng Kaiyu,
+% info / title = A Thesis Title for Your Paper,
+% }
+% \end{latex}
+%
+% \subsubsection{封面选项}
+%
+% \begin{function}{cover}
+% \begin{bitsyntax}[emph={[1]cover}]
+% cover = (*\marg{键值列表}*)
+% cover/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于设置论文格式。具体内容见下。
+% \end{function}
+%
+% \begin{function}{cover/date}
+% \begin{bitsyntax}[emph={[1]date}]
+% date = (*\marg{任意字符串}*)
+% \end{bitsyntax}
+%
+% 覆盖封面的日期。
+% \end{function}
+%
+% \subsubsection{文档基本信息}
+%
+% \begin{function}{info}
+% \begin{bitsyntax}[emph={[1]info}]
+% info = (*\marg{键值列表}*)
+% info/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于录入论文信息。具体内容见下。
+% \end{function}
+%
+% \begin{function}{info/title}
+% \begin{bitsyntax}[emph={[1]title}]
+% title = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 论文或报告标题。
+% \end{function}
+%
+% \begin{function}{info/school}
+% \begin{bitsyntax}[emph={[1]school}]
+% school = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 学院名称。
+% \end{function}
+%
+% \begin{function}{info/major}
+% \begin{bitsyntax}[emph={[1]major}]
+% major = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 专业名称。
+% \end{function}
+%
+% \begin{function}{info/author}
+% \begin{bitsyntax}[emph={[1]author}]
+% author = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 作者姓名。
+% \end{function}
+%
+% \begin{function}{info/studentId}
+% \begin{bitsyntax}[emph={[1]studentId}]
+% studentId = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 学号。
+% \end{function}
+%
+% \begin{function}{info/supervisor}
+% \begin{bitsyntax}[emph={[1]supervisor}]
+% supervisor = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 指导教师。
+% \end{function}
+%
+% \begin{function}{info/externalSupervisor}
+% \begin{bitsyntax}[emph={[1]externalSupervisor}]
+% externalSupervisor = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 校外指导教师。
+% \end{function}
+%
+% \begin{function}{info/class}
+% \begin{bitsyntax}[emph={[1]class}]
+% class = (*\marg{字符串}*)
+% \end{bitsyntax}
+%
+% 班级。
+% \end{function}
+%
+% \subsubsection{其他选项}
+%
+% \begin{function}{misc}
+% \begin{bitsyntax}[emph={[1]misc}]
+% misc = (*\marg{键值列表}*)
+% misc/(*\meta{key}*) = (*\meta{value}*)
+% \end{bitsyntax}
+%
+% 该选项包含许多子项目,用于额外的控制。具体内容见下。
+% \end{function}
+%
+% \begin{function}{misc/reviewTable}
+% \begin{bitsyntax}[emph={[1]reviewTable}]
+% reviewTable = (*\marg{指向评审表的路径}*)
+% \end{bitsyntax}
+%
+% 用于指定已经填写好的评审表 PDF 文件。
+% \end{function}
+%
% \section{致谢}
+% \begin{itemize}
+% \item 感谢贡献者对 BIThesis 的无私奉献。
+% \item 感谢学校及相关老师对 BIThesis 的支持。
+% \item 感谢清华大学和复旦大学的学位论文模板项目,他们为后来者提供了前进的方向。
+% \end{itemize}
+%
% \section{软件许可证}
+%
% \begin{itemize}
% \item 北京理工大学校徽校名图片的版权归北京理工大学所有。
% \item \BIThesisLaTeX 宏包以及相关文档类使用 \LPPL 授权。
-% \item \BIThesisLaTeX 文档及其他附属文件通过 \LPPL 授权。
+% \item \BIThesisLaTeX 文档及其他附属文件通过 CC0-1.0 授权。
% \end{itemize}
% \section{实现细节}
%
@@ -187,22 +1207,2094 @@
%<*package>
% \end{macrocode}
%
-% \begin{macro}{\YOURMACRO}
-% Put explanation of |\YOURMACRO|’s implementation here.
+% Identify the internal prefix (\LaTeX3 \pkg{DocStrip} convention).
% \begin{macrocode}
-\newcommand{\YOURMACRO}{}
+%<@@=bithesis>
% \end{macrocode}
-% \end{macro}
%
-% \begin{environment}{YOURENV}
-% Put explanation of |YOURENV|’s implementation here.
% \begin{macrocode}
-\newenvironment{YOURENV}{}{}
+%</package>
+% \end{macrocode}
+
+% \begin{macrocode}
+%<*thesis>
% \end{macrocode}
-% \end{environment}
+
+% Define Global Variables
+% \begin{macrocode}
+\int_new:N \g_@@_thesis_type_int
+\int_new:N \g_@@_head_zihao_int
+\bool_new:N \g_@@_twoside_bool
+\bool_new:N \g_@@_thesis_type_english_bool
+\bool_new:N \g_@@_blind_mode_bool
+\tl_new:N \g_@@_label_divide_char_tl
+
+% \bool_new:N \l_@@_cover_auto_width_bool
+% \bool_set_true:N \l_@@_cover_auto_width_bool
%
+% Define tmp Variables
+\seq_new:N \l_@@_right_seq
+\seq_new:N \l_@@_left_seq
+
+% helper functions
+
+\cs_generate_variant:Nn \tl_if_empty:nTF {x}
+\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx}
+
+\cs_new:Npn \@@_same_page: {
+ \let\clearpage\relax
+ \let\cleardoublepage\relax
+}
+
+% 是否为研究生学位论文
+\cs_new:Npn \@@_if_graduate:TF #1#2 {
+ \int_compare:nNnTF {3} < {\g_@@_thesis_type_int}
+ {#1}
+ {#2}
+ }
+
+% 是否某一特定模板
+\cs_new:Npn \@@_if_thesis_int_type:nTF #1#2#3 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {#1} {#2} {#3}}
+\cs_new:Npn \@@_if_thesis_int_type:nT #1#2 {\@@_if_thesis_int_type:nTF {#1} {#2} {}}
+
+% 是否为英文模板,这里包括全英文专业和研究生模板的英文模式。
+\cs_new:Npn \@@_if_thesis_english:TF #1#2 {\bool_if:nTF {\g_@@_thesis_type_english_bool} {#1} {#2}}
+\cs_new:Npn \@@_if_thesis_english:T #1 {\@@_if_thesis_english:TF {#1}{}}
+
+\cs_new:Npn \@@_if_bachelor_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} < {4} {#1} {#2}}
+\cs_new:Npn \@@_if_bachelor_thesis:T #1 {\@@_if_bachelor_thesis:TF {#1} {}}
+\cs_new:Npn \@@_if_master_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {4} {#1} {#2}}
+\cs_new:Npn \@@_if_doctor_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {5} {#1} {#2}}
+
+% Define Consts.
+\clist_const:Nn \c_@@_thesis_type_clist
+ { bachelor, bachelor_translation, bachelor_english, master, docter}
+
+\cs_new_protected:Npn \@@_define_label:nn #1#2
+ { \tl_const:cn { c_@@_label_ #1 _tl } {#2} }
+
+\cs_new_protected:Npn \@@_define_label_by_thesis_type:nnn #1#2#3
+ {
+ \tl_const:cn { c_@@_ #1 _label_ #2 _tl } {#3}
+ }
+
+\cs_new_protected:Npn \@@_define_label:nnn #1#2#3
+ {
+ \tl_const:cn { c_@@_label_ #1 _tl } {#2}
+ \tl_const:cn { c_@@_label_ #1 _en_tl } {#3}
+ }
+
+\cs_new_protected:Npn \@@_define_label_by_thesis_type:nnnn #1#2#3#4
+ {
+ \tl_const:cn { c_@@_ #1 _label_ #2 _tl } {#3}
+ \tl_const:cn { c_@@_ #1 _label_ #2 _en_tl } {#4}
+ }
+
+\clist_map_inline:nn
+ {
+ {code} {代码},
+ {udc} {UDC分类号:},
+ {classification} {中国分类号:},
+ {classified_level} {密级},
+ {type} {种类},
+ }
+ {\@@_define_label:nn #1}
+
+% bachelor
+\clist_map_inline:nn
+ {
+ {title} {本科生毕业设计(论文)},
+ {originality} {原创性声明},
+ {originality_clause} {本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下独立进行研究所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。\par~特此申明。},
+ {authorization} {关于使用授权的声明},
+ {authorization_clause} {本人完全了解北京理工大学有关保管、使用毕业设计(论文)的规定,其中包括:\circled{1}~学校有权保管、并向有关部门送交本毕业设计(论文)的原件与复印件;\circled{2}~学校可以采用影印、缩印或其它复制手段复制并保存本毕业设计(论文);\circled{3}~学校可允许本毕业设计(论文)被查阅或借阅;\circled{4}~学校可以学术交流为目的,复制赠送和交换本毕业设计(论文);\circled{5}~学校可以公布本毕业设计(论文)的全部或部分内容。},
+ {originality_author_signature} {本人签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{13mm}年\hspace{8mm}月\hspace{8mm}日},
+ {originality_supervisor_signature} {指导老师签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{13mm}年\hspace{8mm}月\hspace{8mm}日},
+ } {\@@_define_label_by_thesis_type:nnn {bachelor} #1}
+
+% % bachelor english
+\clist_map_inline:nn
+ {
+ {title} {},
+ {originality} {原创性声明~Statement~of~Originality},
+ {originality_clause} {
+ 本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下独立进行研究所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。特此申明。\par
+ \arialfamily I,\dunderline[-1pt]{1pt}{\makebox[18mm]{}},~solemnly~
+ declare:~the~submitted~graduation~design~(thesis),~is~the~research~achievement~completed~independently~by~myself~
+ under~the~guidance~of~the~supervisor.~This~article~does~not~contain~
+ any~research~published~or~written~by~any~other~individual~or~group,~
+ except~as~already~referenced~in~this~paper.~Individuals~and~groups~
+ that~have~made~important~contributions~to~the~study~of~this~paper~
+ are~clearly~indicated~and~cited~in~the~paper.\par
+ },
+ {authorization} {关于使用授权的声明~State~of~Use~Authorization},
+ {authorization_clause} {
+ 本人完全了解北京理工大学有关保管、使用毕业设计(论文)的规定,其中包括:\circled{1}学校有权保管、并向有关部门送交本毕业设计(论文)的原件与复印件;\circled{2}学校可以采用影印、缩印或其它复制手段复制并保存本毕业设计(论文);\circled{3}学校可允许本毕业设计(论文)被查阅或借阅;\circled{4}学校可以学术交流为目的,复制赠送和交换本毕业设计(论文);\circled{5}学校可以公布本毕业设计(论文)的全部或部分内容。\par
+ I~fully~understand~the~regulations~on~the~storage,~use~of~graduation~design~(thesis)~in~Beijing~Institute~of~Technology.~Beijing~Institute~of~Technology~has~the~right~to~(1)~keep,~and~to~the~relevant~departments~to~send~the~original~or~copy~of~this~graduation~design~(thesis);~(2)~copy~and~preserve~this~graduation~design~(thesis)~by~photocopying,~miniature~or~other~means~of~reproduction;~(3)~allow~this~graduation~design~(thesis)~to~be~read~or~borrowed;~(4)~for~the~purpose~of~academic~exchange,~copy,~give~and~exchange~this~graduation~design~(thesis);~(5)~publish~all~or~part~of~the~contents~of~this~graduation~design~(thesis).~
+ },
+ } {\@@_define_label_by_thesis_type:nnn {bachelor_english} #1}
+
+\cs_new:Npn \smallgap: {
+ \hspace{0.45ex}
+}
+
+\cs_new:Npn \label_space: {
+ \@@_if_bachelor_thesis:T {
+ \quad
+ }
+}
+
+% graduate
+\clist_map_inline:nn
+ {
+ {originality} {研究成果声明},
+ {originality_clause} {本人郑重声明:所提交的学位论文是我本人在指导教师的指导下进行的研究工作获得的研究成果。尽我所知,文中除特别标注和致谢的地方外,学位论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京理工大学或其它教育机构的学位或证书所使用过的材料。与我一同工作的合作者对此研究工作所做的任何贡献均已在学位论文中作了明确的说明并表示了谢意。\par~特此申明。},
+ {authorization} {关于学位论文使用权的说明},
+ {authorization_clause} {本人完全了解北京理工大学有关保管、使用学位论文的规定,其中包括:\circled{1}~学校有权保管、并向有关部门送交学位论文的原件与复印件;\circled{2}~学校可以采用影印、缩印或其它复制手段复制并保存学位论文;\circled{3}~学校可允许学位论文被查阅或借阅;\circled{4}~学校可以学术交流为目的,复制赠送和交换学位论文;\circled{5}~学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。},
+ {originality_author_signature} {签\qquad 名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{30mm}\quad},
+ {originality_supervisor_signature} {指导老师签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{30mm}\quad},
+ } {\@@_define_label_by_thesis_type:nnn {graduate} #1}
+
+\clist_map_inline:nn
+ {
+ {author} {作\quad 者\quad 姓\quad 名} {Candidate~Name},
+ {school} {学\quad 院\quad 名\quad 称} {School~or~Department},
+ {supervisor} {指\quad 导\quad 教\quad 师} {Faculty~Mentor},
+ {chairman} {答辩委员会主席} {Chair,~Thesis~Committee},
+ {degree} {申\smallgap: 请\smallgap: 学\smallgap: 位\smallgap: 级\smallgap: 别} {Degree~Applied},
+ {major} {学\quad 科\quad 专\quad 业} {Major},
+ {institute} {学\smallgap: 位\smallgap: 授\smallgap: 予\smallgap: 单\smallgap: 位} {Degree~by},
+ {defense_date} {论\smallgap: 文\smallgap: 答\smallgap: 辩\smallgap: 日\smallgap: 期} {The~Date~of~Defence},
+ } {\@@_define_label_by_thesis_type:nnnn {graduate} #1}
+
+\clist_map_inline:nn
+ {
+ {school} {学\qquad 院} {School},
+ {major} {专\qquad 业} {Degree},
+ {author} {学生姓名} {Author},
+ {student_id} {学\qquad 号} {Student~ID},
+ {supervisor} {指导教师} {Supervisor},
+ {co_supervisor} {校外指导教师} {Co-Supervisor},
+ {keywords} {关键词:} {Key~Words:~},
+ {toc} {目\label_space: 录} {Table~of~Contents},
+ {abstract} {摘\label_space: 要} {Abstract},
+ {conclusion} {结\label_space: 论} {Conclusions},
+ {appendix} {附\label_space: 录} {Appendices},
+ {ack} {致\label_space: 谢} {Acknowledgement},
+ {figure} {插\quad 图} {Illustrations},
+ {table} {表\quad 格} {Tables},
+ {appendix_prefix} {附录} {Appendix},
+ {reference} {参考文献} {References},
+ {university} {北京理工大学} {Beijing~Institute~of~Technology},
+ {publications} {攻读学位期间发表论文与研究成果清单} {Publications~During~Studies},
+ % TODO: Not so sure about the translation.
+ {resume} {作者简介} {},
+ {symbols} {主要符号对照表} {},
+ }
+ {\@@_define_label:nnn #1}
+
+% TODO: \clist_item:Nn
+\clist_const:Nn \c_@@_bachelor_thesis_header_clist
+ {北京理工大学本科生毕业设计(论文), 北京理工大学本科生毕业设计(论文)外文翻译, Beijing~Institute~of~Technology~Bachelor's~Thesis }
+\clist_const:Nn \c_@@_bachelor_thesis_cover_title_clist
+ {
+ 本科生毕业设计(论文),
+ 本科生毕业设计(论文)外文翻译,
+ Beijing\nobreak{~}Institute\nobreak{~}of\nobreak{~}Technology~Bachelor's~Thesis,
+ }
+
+
+% key-value interface definition.
+\keys_define:nn { bithesis }
+{
+ info .meta:nn = { bithesis / info } {#1},
+ misc .meta:nn = { bithesis / misc } {#1},
+ cover .meta:nn = { bithesis / cover } {#1},
+ style .meta:nn = { bithesis / style } {#1},
+ option .meta:nn = { bithesis / option } {#1},
+ TOC .meta:nn = { bithesis / TOC } {#1},
+ appendices .meta:nn = { bithesis / appendices } {#1},
+}
+
+\keys_define:nn { bithesis / option }
+{
+ type .choice:,
+ type .value_required:n = true,
+ type .choices:Vn =
+ \c_@@_thesis_type_clist
+ {
+ \int_set_eq:NN \g_@@_thesis_type_int \l_keys_choice_int
+ \int_case:nn {\l_keys_choice_int} {
+ % 本科全英文也是英文模板。
+ {3} {\bool_set_true:N \g_@@_thesis_type_english_bool}
+ }
+ },
+ type .initial:n = bachelor,
+ twoside .bool_gset:N = \g_@@_twoside_bool,
+ blindPeerReview .bool_gset:N = \g_@@_blind_mode_bool,
+ ctex .tl_set:N = \l_@@_options_to_ctex_tl,
+}
+
+\keys_define:nn { bithesis / cover }
+ {
+ date .tl_set:N = \l_@@_cover_date_tl,
+ headerImage .tl_set:N = \l_bit_coverheaderimage_tl,
+ xiheiFont .tl_set:N = \l_@@_cover_xihei_font_path_tl,
+ xiheiFont .default:n = {STXihei},
+ %% cover entry
+ dilimiter .tl_set:N = \l_@@_cover_dilimiter_tl,
+ labelAlign .tl_set:N = \l_@@_cover_label_align_tl,
+ labelAlign .initial:n = {r},
+ valueAlign .tl_set:N = \l_@@_cover_value_align_tl,
+ valueAlign .initial:n = {c},
+ labelMaxWidth .dim_set:N = \l_@@_cover_label_max_width_dim,
+ valueMaxWidth .dim_set:N = \l_@@_cover_value_max_width_dim,
+ autoWidth .bool_set:N = \l_@@_cover_auto_width_bool,
+ autoWidth .initial:n = {true},
+ underlineThickness .dim_set:N = \l_@@_cover_underline_thickness_dim,
+ underlineThickness .initial:n = {1pt},
+ underlineOffset .dim_set:N = \l_@@_cover_underline_offset_dim,
+ underlineOffset .initial:n = { -10pt },
+ }
+
+\keys_define:nn { bithesis / info }
+ {
+ title .tl_set:N = \l_@@_value_title_tl,
+ titleEn .tl_set:N = \l_@@_value_title_en_tl,
+ school .tl_set:N = \l_@@_value_school_tl,
+ major .tl_set:N = \l_@@_value_major_tl,
+ author .tl_set:N = \l_@@_value_author_tl,
+ studentId .tl_set:N = \l_@@_value_student_id_tl,
+ supervisor .tl_set:N = \l_@@_value_supervisor_tl,
+ externalSupervisor .tl_set:N = \l_@@_value_external_supervisor_tl,
+ keywords .tl_set:N = \l_@@_value_keywords_tl,
+ keywordsEn .tl_set:N = \l_@@_value_keywords_en_tl,
+ translationTitle .tl_set:N = \l_@@_value_trans_title_tl,
+ translationOriginTitle .tl_set:N = \l_@@_value_trans_origin_title_tl,
+ % 中国分类号,研究生学位论文使用
+ classification .tl_set:N = \l_@@_value_classification_tl,
+ % UDC 分类号,研究生学位论文使用
+ UDC .tl_set:N = \l_@@_value_udc_tl,
+ chairman .tl_set:N = \l_@@_value_chairman_tl,
+ degree .tl_set:N = \l_@@_value_degree_tl,
+ degreeEn .tl_set:N = \l_@@_value_degree_en_tl,
+ institute .tl_set:N = \l_@@_value_institute_tl,
+ institute .initial:n = {\c_@@_label_university_tl},
+ defenseDate .tl_set:N = \l_@@_value_defense_date_tl,
+ authorEn .tl_set:N = \l_@@_value_author_en_tl,
+ schoolEn .tl_set:N = \l_@@_value_school_en_tl,
+ supervisorEn .tl_set:N = \l_@@_value_supervisor_en_tl,
+ chairmanEn .tl_set:N = \l_@@_value_chairman_en_tl,
+ majorEn .tl_set:N = \l_@@_value_major_en_tl,
+ instituteEn .tl_set:N = \l_@@_value_institute_en_tl,
+ instituteEn .initial:n = {\c_@@_label_university_en_tl},
+ defenseDateEn .tl_set:N = \l_@@_value_defense_date_en_tl,
+ classifiedLevel .tl_set:N = \l_@@_value_classified_level_tl,
+ }
+
+\keys_define:nn { bithesis / misc }
+ {
+ arialFont .tl_set:N = \l_@@_misc_arial_font_path_tl,
+ }
+
+\keys_define:nn { bithesis / style }
+{
+ head .tl_set:N = \l_@@_style_head_tl,
+ head .initial:n = {
+ \int_case:nn {\g_@@_thesis_type_int}
+ {
+ {1} {北京理工大学本科生毕业设计(论文)}
+ {2} {北京理工大学本科生毕业设计(论文)外文翻译}
+ {3} {Beijing~Institute~of~Technology~Bachelor's~Thesis}
+ {4} {北京理工大学硕士学位论文}
+ {5} {北京理工大学博士学位论文}
+ }
+ },
+}
+
+\keys_define:nn { bithesis / TOC }
+{
+ abstract .bool_set:N = \l_@@_add_abstract_to_toc_bool,
+ abstract .initial:n = {true},
+ abstractEn .bool_set:N = \l_@@_add_abstract_en_to_toc_bool,
+ abstractEn .initial:n = {true},
+ symbols .bool_set:N = \l_@@_add_symbols_to_toc_bool,
+ symbols .initial:n = {true},
+}
+
+\keys_define:nn { bithesis / appendices }
+{
+ chapterLevel .bool_set:N = \l_@@_appendices_chapter_level_bool,
+ title .tl_set:N = \l_@@_appendices_title_tl,
+ TOCTitle .tl_set:N = \l_@@_appendix_toc_title_tl,
+}
+
+\ProcessKeysOptions { bithesis / option }
+
+\@@_if_thesis_english:T {
+ \PassOptionsToClass{scheme=plain}{ctexbook}
+}
+
+\bool_if:NTF \g_@@_twoside_bool {} {
+ \PassOptionsToClass{oneside,openany}{ctexbook}
+}
+
+
+% Any extra option passed by user will be passed to ctexbook.
+\DeclareOption*{
+ \PassOptionsToClass{\l_@@_options_to_ctex_tl}{ctexbook}
+}
+% Executes the code for each option.
+\ProcessOptions\relax
+% Load
+\LoadClass[zihao=-4,]{ctexbook}
+
+\RequirePackage{geometry}
+\RequirePackage{xeCJK}
+\RequirePackage{titletoc}
+\RequirePackage{setspace}
+\RequirePackage{graphicx}
+\RequirePackage{fancyhdr}
+\RequirePackage{pdfpages}
+\RequirePackage{setspace}
+\RequirePackage{booktabs}
+\RequirePackage{multirow}
+\RequirePackage{tikz}
+\RequirePackage{etoolbox}
+\RequirePackage{hyperref}
+\RequirePackage{xcolor}
+\RequirePackage{caption}
+\RequirePackage{array}
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{amsthm}
+\RequirePackage{unicode-math}
+\RequirePackage{pdfpages}
+\RequirePackage{listings}
+\RequirePackage{enumitem}
+\RequirePackage{environ}
+
+% Suppress warning for \hskip by hyperref.
+\pdfstringdefDisableCommands{%
+ \let\quad\empty
+}
+
+\@@_if_graduate:TF {
+ \int_set:Nn \g_@@_head_zihao_int {5}
+ \geometry{
+ a4paper,
+ left=2.7cm,
+ bottom=2.5cm + 7bp,
+ top=3.5cm + 7bp,
+ right=2.7cm,
+ headsep = 3.5cm + 7bp - 2.5cm - 15bp,
+ headheight = 15 bp,
+ footskip = 2.5cm + 7bp - 1.8cm,
+ }
+} {
+ \int_set:Nn \g_@@_head_zihao_int {4}
+ \geometry{
+ a4paper,
+ left=3cm,
+ bottom=2.6cm + 7bp,
+ top=3.5cm + 7bp,
+ right=2.6cm,
+ headsep = 3.5cm + 7bp - 2.4cm - 20bp,
+ headheight = 20 bp,
+ footskip = 2.6cm + 7bp - 2cm,
+ }
+}
+
+% One blank line before the figure and after the caption.
+\setlength{\intextsep}{2\baselineskip plus 0.2\baselineskip minus 0.2\baselineskip}
+
+\setromanfont{Times~New~Roman}
+
+\ctex_at_end_preamble:n {
+ \@@_if_thesis_english:TF {
+ \@@_if_thesis_int_type:nT {3} {
+ % font Arial needed
+ \newfontfamily\arialfamily{Arial}
+ }
+
+ } {
+ \tl_if_blank:VTF \l_@@_cover_xihei_font_path_tl {}
+ {
+ \setCJKfamilyfont{xihei}[AutoFakeBold,AutoFakeSlant]{\l_@@_cover_xihei_font_path_tl}
+ }
+ }
+
+ \@@_if_thesis_int_type:nT {3} {
+ \RequirePackage[en-US]{datetime2}
+ \RequirePackage{indentfirst}
+ \DTMlangsetup[en-US]{dayyearsep={\space}}
+ }
+
+ % Define biblatex category if it was imported.
+ \cs_if_exist:NT \DeclareBibliographyCategory {
+ \DeclareBibliographyCategory{mypub}
+ }
+}
+
+\cs_new:Npn \xihei:n #1 {
+ \xeCJK_family_if_exist:nTF {xihei} {
+ \CJKfamily{xihei} #1
+ }{
+ \heiti #1
+ }
+}
+
+\cs_new:Npn \l_@@_title_font_cs:n #1 {
+ \int_compare:nNnTF {\g_@@_thesis_type_int} = {3}
+ {
+ \arialfamily #1
+ } {
+ \heiti #1
+ }
+}
+
+\cs_new:Npn \l_@@_unnumchapter_style_cs:n #1 {
+ % 本科全英文、研究生学位论文需要加粗
+ \int_compare:nNnTF {\g_@@_thesis_type_int} > {2}
+ {
+ \bfseries #1
+ } {
+ \mdseries #1
+ }
+}
+
+\cs_set:Npn \arabicHeiti #1 {#1}
+
+% TODO: custom title
+\fancypagestyle{BIThesis}{
+ \fancyhf{}
+ % 定义页眉、页码
+ \fancyhead[C]{\zihao{\int_use:N \g_@@_head_zihao_int}\ziju{0.08}\songti{\tl_use:N \l_@@_style_head_tl}}
+ \fancyfoot[C]{\songti\zihao{5} \thepage}
+ % 页眉分割线稍微粗一些
+ \RenewDocumentCommand \headrulewidth {} {0.6pt}
+}
+
+\ctexset{chapter={
+ number = {\arabicHeiti{ \arabic{chapter} }},
+ format = { \l_@@_title_font_cs:n \bfseries \centering \zihao{3}},
+ nameformat = {},
+ titleformat = {},
+ aftername = \hspace{9bp},
+ pagestyle = BIThesis,
+ beforeskip = 8bp,
+ afterskip = 32bp,
+ fixskip = true,
+ }
+}
+
+\ctexset{section={
+ number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}}},
+ format = {\l_@@_title_font_cs:n \raggedright \bfseries \zihao{4}},
+ nameformat = {},
+ titleformat = {},
+ aftername = \hspace{8bp},
+ beforeskip = 20bp plus 1ex minus .2ex,
+ afterskip = 18bp plus .2ex,
+ fixskip = true,
+ }
+}
+
+\ctexset{subsection={
+ number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}.\hspace{1bp}\arabic{subsection}}},
+ format = {\l_@@_title_font_cs:n \bfseries \raggedright \zihao{-4}},
+ nameformat = {},
+ titleformat = {},
+ aftername = \hspace{7bp},
+ beforeskip = 17bp plus 1ex minus .2ex,
+ afterskip = 14bp plus .2ex,
+ fixskip = true,
+ }
+}
+
+\ctexset{
+ secnumdepth = 3,
+ subsubsection={
+ numbering = true,
+ number = {\arabicHeiti{\arabic{chapter}.\hspace{1bp}\arabic{section}.\hspace{1bp}\arabic{subsection}.\hspace{1bp}\arabic{subsubsection}}},
+ format={\l_@@_title_font_cs:n \bfseries \raggedright \zihao{-4}},
+ nameformat = {},
+ titleformat = {},
+ beforeskip=28bp plus 1ex minus .2ex,
+ afterskip=24bp plus .2ex,
+ fixskip=true,
+ }
+}
+
+% TOC
+\addtocontents{toc}{\protect\hypersetup{hidelinks}}
+
+\@@_if_graduate:TF {
+ % 各章标题,宋体四号
+ \titlecontents{chapter}[0pt]{\songti \zihao{4}}
+ {\thecontentslabel\hspace{\ccwd}}{}
+ {\hspace{.5em}\titlerule*{.}\contentspage}
+} {
+ \titlecontents{chapter}[0pt]{\songti \zihao{-4}}
+ {\thecontentslabel\hspace{\ccwd}}{}
+ {\hspace{.5em}\titlerule*{.}\contentspage}
+}
+\titlecontents{section}[1\ccwd]{\songti \zihao{-4}}
+{\thecontentslabel\hspace{\ccwd}}{}
+{\hspace{.5em}\titlerule*{.}\contentspage}
+\titlecontents{subsection}[2\ccwd]{\songti \zihao{-4}}
+{\thecontentslabel\hspace{\ccwd}}{}
+{\hspace{.5em}\titlerule*{.}\contentspage}
+
+% \bool_new:N \l_@@_add_to_toc_bool
+% \bool_set_true:N \l_@@_add_to_toc_bool
+%
+% \keys_define:nn { bit }
+% {
+% abstract .meta:nn = { bit / abstract } {#1},
+% abstract_en .meta:nn = { bit / abstract_en } {#1},
+% symbols .meta:nn = { bit / symbols } {#1},
+% appendices .meta:nn = { bit / appendices } {#1},
+% }
+%
+% \keys_define:nn { bit / abstract }
+% {
+% addTOC .bool_set:N = \l_@@_add_to_toc_bool,
+% }
+%
+% \keys_define:nn { bit / abstract_en }
+% {
+% addTOC .bool_set:N = \l_@@_add_to_toc_bool,
+% }
+%
+% \keys_define:nn { bit / symbols }
+% {
+% addTOC .bool_set:N = \l_@@_add_to_toc_bool,
+% }
+%
+% \keys_define:nn { bit / appendices }
+% {
+% chapterLevel .bool_set:N = \l_@@_appendices_chapter_level_bool,
+% title .tl_set:N = \l_@@_appendices_title_tl,
+% TOCTitle .tl_set:N = \l_@@_appendix_toc_title_tl,
+% }
+
+\RenewDocumentCommand \frontmatter {} {
+
+ \int_compare:nNnTF {\g_@@_thesis_type_int} = {3}
+ {
+ \pagenumbering{roman}
+ } {
+ \pagenumbering{Roman}
+ }
+ \ctexset{
+ chapter = {
+ numbering = false,
+ }
+ }
+ \pagestyle{BIThesis}
+}
+
+\RenewDocumentCommand \mainmatter {} {
+ \cleardoublepage
+
+ \ctexset{
+ chapter = {
+ numbering = true,
+ }
+ }
+ \pagenumbering{arabic}
+ \pagestyle{BIThesis}
+ % 正文 22 磅的行距
+ \setlength{\parskip}{0em}
+ \setstretch{1.53}
+ % 修复脚注出现跨页的问题
+ \interfootnotelinepenalty=10000
+}
+
+\RenewDocumentCommand \backmatter {} {
+ \setcounter{section}{0}
+ \setcounter{subsection}{0}
+ \setcounter{subsubsection}{0}
+ \ctexset{
+ chapter = {
+ numbering = false,
+ beforeskip = 18bp,
+ format = {\l_@@_title_font_cs:n \l_@@_unnumchapter_style_cs:n \centering \zihao{3}},
+ afterskip = 26bp,
+ }
+ }
+}
+
+\setlength{\abovecaptionskip}{11pt}
+\setlength{\belowcaptionskip}{9pt}
+
+\@@_if_graduate:TF {
+ \tl_set:Nn \g_@@_label_divide_char_tl {.}
+} {
+ \tl_set:Nn \g_@@_label_divide_char_tl {-}
+}
+
+% figure
+\cs_set:Npn \thefigure {\thechapter\g_@@_label_divide_char_tl\arabic{figure}}
+\captionsetup[figure]{font=small,labelsep=space}
+
+% table
+\cs_set:Npn \thetable {\thechapter\g_@@_label_divide_char_tl\arabic{table}}
+\captionsetup[table]{font=small,labelsep=space,skip=2pt}
+
+% equation
+\cs_set:Npn \theequation {\thechapter\g_@@_label_divide_char_tl\arabic{equation}}
+
+% code snippet
+\cs_set:Npn \thelstlisting {\thechapter\g_@@_label_divide_char_tl\arabic{lstlisting}}
+\cs_set:Npn \lstlistingname {\c_@@_label_code_tl}
+
+
+% 调整底层 TeX 排版引擎参数以保证所有段落能够很好地以两端对齐的方式呈现
+\tolerance=1
+\emergencystretch=\maxdimen
+\hyphenpenalty=10000
+\hbadness=10000
+
+\definecolor{codegreen}{rgb}{0,0.6,0}
+\definecolor{codegray}{rgb}{0.5,0.5,0.5}
+\definecolor{codepurple}{rgb}{0.58,0,0.82}
+\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
+\lstdefinestyle{examplestyle}{
+ backgroundcolor=\color{backcolour},
+ commentstyle=\color{codegreen},
+ keywordstyle=\color{magenta},
+ numberstyle=\tiny\color{codegray},
+ stringstyle=\color{codepurple},
+ basicstyle=\ttfamily\footnotesize,
+ breakatwhitespace=false,
+ breaklines=true,
+ captionpos=b,
+ keepspaces=true,
+ numbers=left,
+ numbersep=5pt,
+ showspaces=false,
+ showstringspaces=false,
+ showtabs=false,
+ tabsize=2
+}
+% TODO: optional
+\lstset{style=examplestyle}
+
+% 调整插图目录与表格目录的标题
+\cs_set:Npn \listfigurename {\c_@@_label_figure_tl}
+\cs_set:Npn \listtablename {\c_@@_label_table_tl}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% 根据 GB 3102.11--93 以及 ISO 80000-2:2009 的规定,数学表达式中
+% 表示变量的拉丁字母和希腊字母均应当使用斜体。
+\unimathsetup{
+ math-style = ISO,
+ bold-style = ISO,
+}
+
+% 预定义用户常用的证明环境
+\theoremstyle{plain}
+ \newtheorem{algorithm}{算法}[chapter]
+ \newtheorem{theorem}{定理}[chapter]
+ \newtheorem{lemma}[theorem]{引理}
+ \newtheorem{proposition}[theorem]{命题}
+ \newtheorem{corollary}[theorem]{推论}
+ \newtheorem{axiom}[theorem]{公理}
+\theoremstyle{definition}
+ \newtheorem{definition}{定义}[chapter]
+ \newtheorem{conjecture}{猜想}[chapter]
+ \newtheorem{example}{例}[chapter]
+ \newtheorem{case}{情形}
+\theoremstyle{remark}
+ \newtheorem{remark}{注}
+ \renewcommand{\qedsymbol}{\ensuremath{\QED}}
+
+
+% user interface.
+\DeclareDocumentCommand \BITSetup { m }
+ { \keys_set:nn { bithesis } { #1 }}
+
+\cs_new:Npn \@@_render_cover_entry:nn #1#2 {
+ \makebox[\l_@@_cover_label_max_width_dim][\l_@@_cover_label_align_tl]{
+ \tl_if_blank:VTF #1 {} {#1\l_@@_cover_dilimiter_tl}
+ }
+ \hspace{1ex}
+ \@@_dunderline:nnn{\l_@@_cover_underline_offset_dim}{\l_@@_cover_underline_thickness_dim}{
+ \makebox[\l_@@_cover_value_max_width_dim][\l_@@_cover_value_align_tl]{#2}
+ }\par
+}
+
+% Get text with from #2, then set to #1.
+\cs_new:Npn \@@_get_text_width:Nn #1#2
+ {
+ \hbox_set:Nn \l_tmpa_box {#2}
+ \dim_set:Nn #1 { \box_wd:N \l_tmpa_box }
+ }
+\cs_generate_variant:Nn \@@_get_text_width:Nn { NV }
+
+% Get max text width from seq #2, then set to #1.
+\cs_new:Npn \@@_get_max_text_width:NN #1#2
+ {
+% 这里用 |group| 确保局部变量不会被污染。
+ \group_begin:
+ \seq_set_eq:NN \l_@@_tmpa_seq #2
+ \dim_zero_new:N \l_@@_tmpa_dim
+ \bool_until_do:nn { \seq_if_empty_p:N \l_@@_tmpa_seq }
+ {
+ \seq_pop_left:NN \l_@@_tmpa_seq \l_@@_tmpa_tl
+ \@@_get_text_width:NV \l_@@_tmpa_dim \l_@@_tmpa_tl
+ \dim_gset:Nn #1 { \dim_max:nn {#1} { \l_@@_tmpa_dim } }
+ }
+ \group_end:
+ }
+
+% process label (#1) and value #2 separately
+\cs_new:Npn \@@_parse_entry #1 #2 {
+ \seq_set_split:Nnx \l_@@_tmp_right_seq {//} {#2}
+ \seq_clear:N \l_@@_tmp_left_seq
+ \seq_map_inline:Nn \l_@@_tmp_right_seq {
+ \seq_put_right:Nn \l_@@_tmp_left_seq {}
+ }
+ \seq_put_left:Nn \l_@@_tmp_left_seq {#1}
+ \seq_pop_right:NN \l_@@_tmp_left_seq \g_@@_trashcan_tl
+}
+
+\cs_new:Npn \@@_render_cover_entry:n #1 {
+ \seq_set_from_clist:NN \l_@@_input_seq #1
+ % parse newline //
+ \seq_map_inline:Nn \l_@@_input_seq {
+ \@@_parse_entry ##1
+ \seq_concat:NNN \l_@@_right_seq \l_@@_right_seq \l_@@_tmp_right_seq
+ \seq_concat:NNN \l_@@_left_seq \l_@@_left_seq \l_@@_tmp_left_seq
+ }
+
+ \bool_if:NT \l_@@_cover_auto_width_bool {
+ \@@_get_max_text_width:NN \l_@@_cover_label_max_width_dim \l_@@_left_seq
+ \@@_get_max_text_width:NN \l_@@_cover_value_max_width_dim \l_@@_right_seq
+ }
+
+
+ \group_begin:
+ \bool_until_do:nn { \seq_if_empty_p:N \l_@@_left_seq }
+ {
+ \seq_pop_left:NN \l_@@_left_seq \l_@@_tmpa_tl
+ \seq_pop_left:NN \l_@@_right_seq \l_@@_tmpb_tl
+ \tl_if_empty:xTF \l_@@_tmpb_tl {} {
+ \@@_render_cover_entry:nn {\l_@@_tmpa_tl} {\l_@@_tmpb_tl}
+ }
+ }
+ \group_end:
+}
+
+% #1: position
+% #2: line_thickness
+% #3: token list
+\cs_new:Npn \@@_dunderline:nnn #1#2#3 {
+ {\setbox0=\hbox{#3}\ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}}
+}
+
+\cs_new:Npn \@@_dunderline:nn #1#2 {
+ \@@_dunderline:nnn {#1} {1pt} {#2}
+}
+
+\cs_new:Npn \@@_dunderline:n #1 {
+ \@@_dunderline:nnn {-10pt} {1pt} {#1}
+}
+
+\newcommand\dunderline[3][-1pt]{{%
+ \setbox0=\hbox{#3}
+ \ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}}}
+
+\NewEnviron{blindPeerReview}{
+ \bool_if:NTF \g_@@_blind_mode_bool {} {
+ \BODY
+ }
+}
+
+% 重定义 \tn{cleardoublepage},使得偶数页面在没有内容时也不显示页眉页脚,见
+% \url{https://tex.stackexchange.com/a/1683}。
+\RenewDocumentCommand \cleardoublepage { }
+ {
+ \clearpage
+ \bool_if:NT \g_@@_twoside_bool
+ {
+ \int_if_odd:nF \c@page
+ { \hbox:n { } \thispagestyle { empty } \newpage }
+ }
+ }
+
+\cs_new:Npn \make_graduate_cover: {
+ \cleardoublepage
+ \begin{titlepage}
+ {
+ \heiti\zihao{5}
+ \tl_if_blank:VTF \l_@@_value_classified_level_tl {} {
+ \flushright
+ \c_@@_label_classified_level_tl:~
+ \l_@@_value_classified_level_tl \par
+ }
+ }
+ \centering
+ \vspace*{65mm}
+ {\heiti\zihao{-2} \l_@@_value_title_tl}
+ \vskip 60mm
+ {\heiti \zihao{-3} \l_@@_value_author_tl} % 黑体 小三
+ \vskip 10mm
+ {\heiti \zihao{-3} \l_@@_cover_date_tl} % 黑体 小三
+ \end{titlepage}
+}
+
+\cs_new:Npn \make_paper_back: {
+ \cleardoublepage
+ \begin{titlepage}
+ \vskip 5cm
+ \begin{center}
+ \setstretch{1.1}
+ \begin{minipage}[t][19.7cm]{2em}
+ \begin{center}
+ {\heiti\zihao{3}\l_@@_value_title_tl}
+ \vfill
+ {\heiti\zihao{3}\l_@@_value_author_tl}
+ \vfill
+ {\heiti\zihao{3}\c_@@_label_university_tl}
+ \end{center}
+ \end{minipage}
+ \end{center}
+ % \vskip 5cm
+ \end{titlepage}
+}
+
+\cs_new:Npn \@@_make_chinese_title_page: {
+ \cleardoublepage
+ \begin{titlepage}
+ { %
+ {\heiti \zihao{5} \noindent \c_@@_label_classification_tl} \l_@@_value_classification_tl\\
+ {\heiti \zihao{5} \c_@@_label_udc_tl} \l_@@_value_udc_tl
+ }
+ \begin{center}
+
+ \vskip \stretch{1}
+ {\heiti\zihao{-2} \l_@@_value_title_tl}
+ \vskip \stretch{1}
+
+ % TODO: delete this?
+ {\fangsong\zihao{4}}
+ \def\tabcolsep{1pt}
+ \def\arraystretch{1.5}
+
+ {
+ \renewcommand{\baselinestretch}{2}
+
+ \tl_if_empty:NT \l_@@_cover_dilimiter_tl {
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {\qquad}
+ }
+ \tl_set:Nn \l_@@_cover_underline_offset_dim {-5pt}
+ % if not auto width, try override width
+ \bool_if:NF \l_@@_cover_auto_width_bool {
+ \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {45mm}
+ }
+ \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {60mm}
+ }
+ }
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\c_@@_graduate_label_author_tl} {\l_@@_value_author_tl},
+ {\c_@@_graduate_label_school_tl} {\l_@@_value_school_tl},
+ {\c_@@_graduate_label_supervisor_tl} {\l_@@_value_supervisor_tl},
+ {\c_@@_graduate_label_chairman_tl} {\l_@@_value_chairman_tl},
+ {\c_@@_graduate_label_degree_tl} {\l_@@_value_degree_tl},
+ {\c_@@_graduate_label_major_tl} {\l_@@_value_major_tl},
+ {\c_@@_graduate_label_institute_tl} {\l_@@_value_institute_tl},
+ {\c_@@_graduate_label_defense_date_tl} {\l_@@_value_defense_date_tl},
+ }
+
+ \heiti\zihao{-3}
+ \@@_render_cover_entry:n \l_@@_input_clist
+ }
+ \end{center}
+ \vskip \stretch{0.5}
+ \end{titlepage}
+}
+
+\cs_new:Npn \@@_make_english_title_page: {
+ \begin{titlepage}
+ \begin{center}
+
+ \vspace*{10em}
+ {\zihao{-2}\textbf{\l_@@_value_title_en_tl}}
+ % \bfseries
+ \vskip \stretch{1}
+
+ {
+ \tl_if_empty:NT \l_@@_cover_dilimiter_tl {
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {:~}
+ }
+
+ \tl_set:Nn \l_@@_cover_label_align_tl {l}
+ \tl_set:Nn \l_@@_cover_underline_offset_dim {-5pt}
+
+ % if not auto width, try override width
+ \bool_if:NF \l_@@_cover_auto_width_bool {
+ \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {55mm}
+ }
+ \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {85mm}
+ }
+ }
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\c_@@_graduate_label_author_en_tl} {\l_@@_value_author_en_tl},
+ {\c_@@_graduate_label_school_en_tl} {\l_@@_value_school_en_tl},
+ {\c_@@_graduate_label_supervisor_en_tl} {\l_@@_value_supervisor_en_tl},
+ {\c_@@_graduate_label_chairman_en_tl} {\l_@@_value_chairman_en_tl},
+ {\c_@@_graduate_label_degree_en_tl} {\l_@@_value_degree_en_tl},
+ {\c_@@_graduate_label_major_en_tl} {\l_@@_value_major_en_tl},
+ {\c_@@_graduate_label_institute_en_tl} {\l_@@_value_institute_en_tl},
+ {\c_@@_graduate_label_defense_date_en_tl} {\l_@@_value_defense_date_en_tl},
+ }
+
+ \zihao{-3}
+ \@@_render_cover_entry:n \l_@@_input_clist
+ }
+
+ \end{center}
+
+ \vskip \stretch{0.5}
+ \end{titlepage}
+}
+
+\DeclareDocumentCommand \MakeCover {}
+ {
+ \begin{blindPeerReview}
+ \group_begin:
+
+ \int_case:nn {\g_@@_thesis_type_int}
+ {
+ {1}
+ {
+ \begin{titlepage}
+ \vspace*{16mm}
+
+ \centering
+
+ \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} {
+ \includegraphics[width=9.87cm]{\l_bit_coverheaderimage_tl}\\
+ }
+
+ \vspace*{-3mm}
+
+ \zihao{-0}\textbf{\ziju{0.12}\songti{\c_@@_bachelor_label_title_tl}}\par
+
+ \vspace{16mm}
+
+ \zihao{2}\textbf{\xihei:n \l_@@_value_title_tl}\par
+
+ \vspace{3mm}
+
+ \begin{spacing}{1.2}
+ \zihao{3}\selectfont{\textbf{\l_@@_value_title_en_tl}}\par
+ \end{spacing}
+
+ \vspace{15mm}
+
+
+ \begin{spacing}{1.8}
+ \begin{center}
+ \tl_if_empty:NT \l_@@_cover_dilimiter_tl {
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {:}
+ }
+ % if not auto width, try override width
+ \bool_if:NF \l_@@_cover_auto_width_bool {
+ \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm}
+ }
+ \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {78mm}
+ }
+ }
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\c_@@_label_school_tl} {\l_@@_value_school_tl},
+ {\c_@@_label_major_tl} {\l_@@_value_major_tl},
+ {\c_@@_label_author_tl} {\l_@@_value_author_tl},
+ {\c_@@_label_student_id_tl} {\l_@@_value_student_id_tl},
+ {\c_@@_label_supervisor_tl} {\l_@@_value_supervisor_tl},
+ {\c_@@_label_co_supervisor_tl} {\l_@@_value_external_supervisor_tl},
+ }
+
+ \zihao{3}
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{center}
+ \end{spacing}
+
+ \vspace*{\fill}
+ \centering
+ \zihao{3}\ziju{0.5}\songti{
+ \tl_if_empty:NTF \l_@@_cover_date_tl {
+ \today
+ } {
+ \l_@@_cover_date_tl
+ }
+ }
+ \end{titlepage}
+ }
+ {2}
+ {
+ \begin{titlepage}
+ \centering
+
+ \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} {
+ \includegraphics[width=6.87cm]{\l_bit_coverheaderimage_tl}\\
+ }
+
+ \vspace{1mm}
+
+ \zihao{2}\textbf{\songti{本科生毕业设计(论文)外文翻译}}
+
+ \vspace{8mm}
+
+ {
+
+ \begin{spacing}{1.8}
+
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {\textbf{:}}
+ \bool_set_false:N \l_@@_cover_auto_width_bool
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm}
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {115mm}
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\zihao{4}\textbf{外文原文题目}} {\l_@@_value_trans_origin_title_tl},
+ {\zihao{4}\textbf{中文翻译题目}} {\l_@@_value_trans_title_tl},
+ }
+
+ \zihao{-3}
+ \centering
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{spacing}
+
+ }
+
+ \vspace{14mm}
+
+ \zihao{2}\textbf{\xihei:n \l_@@_value_title_tl}\par
+
+ \vspace{3mm}
+
+ \begin{spacing}{1.2}
+ \zihao{3}\selectfont{\textbf{\l_@@_value_title_en_tl}}\par
+ \end{spacing}
+
+ \vspace{19mm}
+
+ \begin{spacing}{1.8}
+ \tl_if_empty:NT \l_@@_cover_dilimiter_tl {
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {:}
+ }
+
+ % if not auto width, try override width
+ \bool_if:NF \l_@@_cover_auto_width_bool {
+ \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm}
+ }
+ \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {78mm}
+ }
+ }
+
+ \zihao{3}
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\c_@@_label_school_tl} {\l_@@_value_school_tl},
+ {\c_@@_label_major_tl} {\l_@@_value_major_tl},
+ {\c_@@_label_author_tl} {\l_@@_value_author_tl},
+ {\c_@@_label_student_id_tl} {\l_@@_value_student_id_tl},
+ {\c_@@_label_supervisor_tl} {\l_@@_value_supervisor_tl},
+ {\c_@@_label_co_supervisor_tl} {\l_@@_value_external_supervisor_tl},
+ }
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{spacing}
+
+ \vspace*{\fill}
+ \end{titlepage}
+ }
+ {3} {
+ \begin{titlepage}
+ \vspace*{16mm}
+
+ \centering
+
+ \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} {
+ \includegraphics[width=9.87cm]{\l_bit_coverheaderimage_tl}\\
+ }
+
+ \vspace*{-3mm}
+
+ \zihao{1}\textbf{\ziju{0.12}Beijing\nobreak{~}Institute\nobreak{~}of\nobreak{~}Technology~Bachelor's~Thesis}\par
+
+ \vspace{18mm}
+
+ \zihao{2}\textbf{\xihei:n \l_@@_value_title_en_tl}\par
+
+ \vspace{10mm}
+
+
+ \begin{spacing}{1.8}
+ \begin{center}
+ \tl_if_empty:NT \l_@@_cover_dilimiter_tl {
+ \tl_set:Nn \l_@@_cover_dilimiter_tl {:}
+ }
+
+ % if not auto width, try override width
+ \bool_if:NF \l_@@_cover_auto_width_bool {
+ \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_label_max_width_dim {20mm}
+ }
+ \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} {
+ \dim_set:Nn \l_@@_cover_value_max_width_dim {105mm}
+ }
+ }
+
+ \zihao{4}
+
+ \clist_set:Nn \l_@@_input_clist {
+ {\c_@@_label_school_en_tl} {\l_@@_value_school_tl},
+ {\c_@@_label_major_en_tl} {\l_@@_value_major_tl},
+ {\c_@@_label_author_en_tl} {\l_@@_value_author_tl},
+ {\c_@@_label_student_id_en_tl} {\l_@@_value_student_id_tl},
+ {\c_@@_label_supervisor_en_tl} {\l_@@_value_supervisor_tl},
+ {\c_@@_label_co_supervisor_en_tl} {\l_@@_value_external_supervisor_tl},
+ }
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{center}
+ \end{spacing}
+
+ \vspace*{\fill}
+ \centering
+ \zihao{3}\ziju{0.5}\songti{
+ \tl_if_empty:NTF \l_@@_cover_date_tl {
+ \today
+ } {
+ \l_@@_cover_date_tl
+ }
+ }
+ \end{titlepage}
+ }
+ {4} {
+ \make_graduate_cover:
+ }
+ {5} {
+ \make_graduate_cover:
+ }
+ }
+ \group_end:
+ \end{blindPeerReview}
+ }
+
+% 圆形数字编号定义
+\newcommand{\circled}[2][]{\tikz[baseline=(char.base)]
+ {\node[shape = circle, draw, inner~sep = 1pt]
+ (char) {\phantom{\ifblank{#1}{#2}{#1}}};
+ \node at (char.center) {\makebox[0pt][c]{#2}};}}
+\robustify{\circled}
+
+\cs_new:Npn \@@_graduate_originality: {
+ \ctexset {
+ chapter / pagestyle = plain,
+ }
+
+ \begin{titlepage}
+ \pagenumbering{gobble}
+
+ % 原创性声明部分
+ \begin{center}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{3}\c_@@_graduate_label_originality_tl}
+ \end{center}~\par
+
+ % 本部分字号为小三
+ \zihao{4}
+ \c_@@_graduate_label_originality_clause_tl
+
+ \vspace{17mm}
+
+ \begin{flushright}
+ \c_@@_graduate_label_originality_author_signature_tl\par
+ \end{flushright}
+
+ \vspace{16mm}
+
+ % 使用授权声明部分
+ \begin{center}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{3}\c_@@_graduate_label_authorization_tl}
+ \end{center}~\par
+
+ \c_@@_graduate_label_authorization_clause_tl
+
+ \vspace*{15mm}
+
+ \begin{flushright}
+ \begin{spacing}{1.65}
+ \zihao{4}
+ % \hspace{5mm}\raisebox{-2ex}{\includegraphics[width=30mm]{example-image}}\hspace{5mm}
+ \c_@@_graduate_label_originality_author_signature_tl\par
+ \c_@@_graduate_label_originality_supervisor_signature_tl\par
+ \end{spacing}
+ \end{flushright}
+ \end{titlepage}
+ \cleardoublepage
+}
+
+\NewDocumentCommand \MakeOriginality {}
+{
+ \group_begin:
+ \begin{blindPeerReview}
+ \int_case:nn {\g_@@_thesis_type_int}
+ {
+ {1}
+ {
+ \pagestyle{BIThesis}
+ \pagenumbering{gobble}
+
+ % 原创性声明部分
+ \begin{center}
+ \vspace*{-2bp}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{2}\c_@@_bachelor_label_originality_tl}
+ \end{center}~\par
+
+ % 本部分字号为小三
+ \zihao{-3}
+ \c_@@_bachelor_label_originality_clause_tl
+
+ \vspace{17mm}
+
+ \begin{flushright}
+ \c_@@_bachelor_label_originality_author_signature_tl\par
+ \end{flushright}
+
+ \vspace{16mm}
+
+ % 使用授权声明部分
+ \begin{center}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{2}\c_@@_bachelor_label_authorization_tl}
+ \end{center}~\par
+
+ \c_@@_bachelor_label_authorization_clause_tl
+
+ \vspace*{3mm}
+
+ \begin{flushright}
+ \begin{spacing}{1.65}
+ \zihao{-3}
+ % \hspace{5mm}\raisebox{-2ex}{\includegraphics[width=30mm]{example-image}}\hspace{5mm}
+ \c_@@_bachelor_label_originality_author_signature_tl\par
+ \c_@@_bachelor_label_originality_supervisor_signature_tl\par
+ \end{spacing}
+ \end{flushright}
+
+ \newpage
+ }
+ {3} {
+ \setstretch{1.26}
+ % 原创性声明部分
+ \begin{center}
+ \vspace*{-2bp}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{-2}\c_@@_bachelor_english_label_originality_tl}
+ \end{center}~\par
+
+ % 本部分字号为小三
+ \zihao{-4}
+ \c_@@_bachelor_english_label_originality_clause_tl
+
+ \bigbreak
+
+ Student~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm]{}}~Date:\par
+
+ \vspace{6mm}
+
+ % 使用授权声明部分
+ \begin{center}
+ \@@_same_page:
+ \chapter*{\heiti\zihao{-2}\c_@@_bachelor_english_label_authorization_tl}
+ \end{center}~\par
+
+ \c_@@_bachelor_english_label_authorization_clause_tl
+
+ \bigbreak
+ Student~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm + 16bp]{}}~\hspace{2mm}Date:\par
+ Supervisor~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm]{}}~\hspace{2mm}Date:\par
+ }
+ {4} {\@@_graduate_originality:}
+ {5} {\@@_graduate_originality:}
+ }
+ \end{blindPeerReview}
+ \group_end:
+}
+
+\NewDocumentCommand \MakePaperBack {}
+ {
+ \begin{blindPeerReview}
+ \make_paper_back:
+ \end{blindPeerReview}
+ }
+
+\NewDocumentCommand \MakeTitle {}
+ {
+ \begin{blindPeerReview}
+ \@@_make_chinese_title_page:
+ \@@_make_english_title_page:
+ \end{blindPeerReview}
+ }
+
+\DeclareDocumentCommand \MakeTOC {}
+ {
+ {
+ \@@_if_bachelor_thesis:TF {
+ \renewcommand{\baselinestretch}{1.35}
+ } {
+ \renewcommand{\baselinestretch}{1.56}
+ }
+
+ \@@_if_thesis_english:TF {
+ \tl_set:Nn \l_@@_toc_title_tl {\c_@@_label_toc_en_tl}
+ } {
+ \tl_set:Nn \l_@@_toc_title_tl {\c_@@_label_toc_tl}
+ }
+
+ % 自定义目录样式
+ \cs_set:Npn \contentsname {
+ \fontsize{16pt}{\baselineskip}
+ \l_@@_unnumchapter_style_cs:n\l_@@_title_font_cs:n{\l_@@_toc_title_tl}
+ \vspace{-8pt}
+ }
+
+ % 制作目录
+ \tableofcontents
+
+ % 在本科生全英文模板中,添加「目录」本身到目录中。
+ \@@_if_thesis_int_type:nT {3} {
+ \addcontentsline{toc}{chapter}{\c_@@_label_toc_en_tl}
+ }
+ }
+ }
+
+ % TODO:
+ \NewDocumentEnvironment {abstract} {}
+ {
+
+ \cleardoublepage
+ \setstretch{1.53}
+
+ \@@_if_bachelor_thesis:T {
+ \begin{center}
+ \vspace*{-17bp}
+ \heiti\zihao{-2}\textbf{
+ \int_case:nn {\g_@@_thesis_type_int}
+ {
+ {1} {\l_@@_value_title_tl}
+ {2} {\l_@@_value_trans_title_tl}
+ {3} {\l_@@_value_title_tl}
+ }
+ }
+ \end{center}
+
+ \vspace*{2mm}
+ }
+
+ \ctexset{
+ chapter/numbering = false,
+ }
+
+ \@@_if_bachelor_thesis:T {
+ \ctexset{
+ chapter/titleformat = {\textmd}
+ }
+ }
+
+ {
+ \@@_same_page:
+ \bool_if:NTF \l_@@_add_abstract_to_toc_bool {
+ \chapter{\c_@@_label_abstract_tl}
+ } {
+ \chapter*{\c_@@_label_abstract_tl}
+ }
+ }
+ \vspace*{1mm}
+ \par
+ }
+ {
+ \par
+ \vspace{4ex}\noindent\textbf{\heiti \c_@@_label_keywords_tl \l_@@_value_keywords_tl}\par
+ \newpage
+ }
+
+ \NewDocumentEnvironment {abstractEn} {}
+ {
+ \cleardoublepage
+ \setstretch{1.53}
+
+ \@@_if_bachelor_thesis:T {
+ \begin{spacing}{0.95}
+ \centering
+ \vspace*{-2bp}
+
+ \@@_if_thesis_int_type:nTF {3} {
+ \arialfamily\zihao{-2}\textbf\l_@@_value_title_en_tl\\
+ } {
+ \heiti\zihao{3}\textbf\l_@@_value_title_en_tl\\
+ }
+ \end{spacing}
+ \vspace*{10mm}
+ }
+
+ \ctexset{
+ chapter/numbering = false,
+ }
+
+ \@@_if_bachelor_thesis:TF {
+ \int_compare:nNnTF {\g_@@_thesis_type_int} = {3}
+ {
+ \ctexset{
+ chapter = {
+ titleformat = {\heiti\zihao{3}\centering\textbf},
+ }
+ }
+ } {
+ \ctexset{
+ chapter = {
+ titleformat = {\heiti\zihao{-3}\centering\textmd},
+ }
+ }
+ }
+ } {
+ \ctexset {
+ chapter/titleformat = {\heiti\zihao{3}\centering\textbf}
+ }
+ }
+
+ {
+ \@@_same_page:
+ \bool_if:nTF {\l_@@_add_abstract_en_to_toc_bool} {
+ \chapter{\c_@@_label_abstract_en_tl}
+ } {
+ \chapter*{\c_@@_label_abstract_en_tl}
+ }
+ }
+ }
+ {
+ \par\vspace{3ex}\noindent\textbf{\c_@@_label_keywords_en_tl \l_@@_value_keywords_en_tl}
+ \newpage
+ }
+
+% after \backmatter
+ \NewDocumentEnvironment {conclusion} {}
+ {
+ \ctexset{
+ section/number = \arabic{section}
+ }
+
+ \@@_if_thesis_english:TF {
+ \chapter{\c_@@_label_conclusion_en_tl}
+ } {
+ \chapter{\c_@@_label_conclusion_tl}
+ }
+ }
+ {}
+
+% after backmatter
+ \NewDocumentEnvironment {bibprint} {}
+ {
+ % 设置参考文献字号为 5 号
+ \renewcommand*{\bibfont}{\zihao{5}}
+ % 设置参考文献各个项目之间的垂直距离为 0
+ \setlength{\bibitemsep}{0ex}
+ \setlength{\bibnamesep}{0ex}
+ \setlength{\bibinitsep}{0ex}
+ \@@_if_graduate:TF {
+ } {
+ % 「本科生」设置单倍行距
+ \renewcommand{\baselinestretch}{1.2}
+ }
+ % 设置参考文献顺序标签 `[1]` 与文献内容 `作者. 文献标题...` 的间距
+ \setlength{\biblabelsep}{1.7mm}
+ % 设置参考文献后文缩进为 0(与 Word 模板保持一致)
+ % See: https://github.com/hushidong/biblatex-gb7714-2015
+ % 如何修参考文献表的缩进?
+ \cs_set:Npn \itemcmd {
+ \settowidth{\lengthid}{\mkgbnumlabel{\printfield{labelnumber}}}
+ %%这里是所做的调整,以下两句通过调整\lengthid来调整缩进
+ \setlength{\lengthid}{0pt}
+ \addtolength{\lengthid}{-\biblabelsep}
+ \setlength{\lengthlw}{\textwidth}
+ \addtolength{\lengthlw}{-\lengthid}
+ \addvspace{\bibitemsep}%恢复\bibitemsep的作用
+ \hangindent\lengthid
+ \leavevmode\mkgbnumlabel{\printfield{labelnumber}}%
+ \hspace{\biblabelsep}
+ }
+ \@@_if_thesis_english:TF {
+ \chapter{\c_@@_label_reference_en_tl}
+ } {
+ \chapter{\c_@@_label_reference_tl}
+ }
+ }
+ {}
+
+ % #1: The name that used as chapter title
+ % #2: The name that used in ToC.
+ \NewDocumentEnvironment {appendices} {}
+ {
+ % Used in chapter, ToC.
+ \tl_new:N \l_@@_appendix_plain_label_tl
+ % Used before reference label.
+ \tl_new:N \l_@@_appendix_default_title_tl
+
+ \@@_if_thesis_english:TF {
+ \tl_set:Nn \l_@@_appendix_plain_label_tl {\c_@@_label_appendix_prefix_en_tl}
+ \tl_set:Nn \l_@@_appendix_default_title_tl {\c_@@_label_appendix_en_tl}
+ } {
+ \tl_set:Nn \l_@@_appendix_plain_label_tl {\c_@@_label_appendix_prefix_tl}
+ \tl_set:Nn \l_@@_appendix_default_title_tl {\c_@@_label_appendix_tl}
+ }
+
+ \bool_if:NTF \l_@@_appendices_chapter_level_bool {
+ \setcounter{chapter}{0}
+ \ctexset{
+ chapter/numbering = true,
+ chapter/name = {},
+ chapter/number = \l_@@_appendix_plain_label_tl\hspace{1ex}\Alph{chapter},
+ section/number = \Alph{chapter}. \arabic{section},
+ subsection/number = \Alph{chapter}. \arabic{section}. \arabic{subsection},
+ }
+
+ \cs_set:Npn \thechapter {
+ \Alph{chapter}
+ }
+ } {
+ \ctexset{
+ section/number = \l_@@_appendix_plain_label_tl\hspace{1ex}\Alph{section},
+ subsection/number = \Alph{section}. \arabic{subsection},
+ }
+
+ \cs_set:Npn \thechapter {
+ \Alph{section}
+ }
+
+ \tl_if_blank:VTF \l_@@_appendices_title_tl {
+ \chapter{\l_@@_appendix_default_title_tl}
+ } {
+ \chapter*{\l_@@_appendices_title_tl}
+ \stepcounter{chapter}
+ \tl_if_blank:VTF \l_@@_appendix_toc_title_tl {
+ \addcontentsline{toc}{chapter}{\l_@@_appendix_default_title_tl}
+ } {
+ \addcontentsline{toc}{chapter}{\l_@@_appendix_toc_title_tl}
+ }
+ }
+ }
+ }
+ {
+ }
+
+ \NewDocumentEnvironment {acknowledgements} {+b}
+ {
+ \begin{blindPeerReview}
+ \ctexset{
+ section/number = \arabic{section},
+ subsection/number = \arabic{section}. \arabic{subsection},
+ }
+
+ \@@_if_thesis_english:TF {
+ \chapter{\c_@@_label_ack_en_tl}
+ } {
+ \chapter{\c_@@_label_ack_tl}
+ }
+ #1
+ \end{blindPeerReview}
+ } {}
+
+ \NewDocumentEnvironment {publications} {+b}
+ {
+ \begin{blindPeerReview}
+ % 设置参考文献字号为 5 号
+ \renewcommand*{\bibfont}{\zihao{5}}
+ % 设置参考文献各个项目之间的垂直距离为 0
+ \setlength{\bibitemsep}{0ex}
+ \setlength{\bibnamesep}{0ex}
+ \setlength{\bibinitsep}{0ex}
+ % 设置单倍行距
+ \renewcommand{\baselinestretch}{1.2}
+ % 设置参考文献顺序标签 `[1]` 与文献内容 `作者. 文献标题...` 的间距
+ \setlength{\biblabelsep}{1.7mm}
+ % 设置参考文献后文缩进为 0(与 Word 模板保持一致)
+ % See: https://github.com/hushidong/biblatex-gb7714-2015
+ % 如何修参考文献表的缩进?
+ \cs_set:Npn \itemcmd {
+ \settowidth{\lengthid}{\mkgbnumlabel{\printfield{labelnumber}}}
+ %%这里是所做的调整,以下两句通过调整\lengthid来调整缩进
+ \setlength{\lengthid}{0pt}
+ \addtolength{\lengthid}{-\biblabelsep}
+ \setlength{\lengthlw}{\textwidth}
+ \addtolength{\lengthlw}{-\lengthid}
+ \addvspace{\bibitemsep}%恢复\bibitemsep的作用
+ \hangindent\lengthid
+ \leavevmode\mkgbnumlabel{\printfield{labelnumber}}%
+ \hspace{\biblabelsep}
+ }
+
+ % ===== 上方定义与「参考文献」部分相同
+ \cs_set:Npn \mkbibnamegiven ##1 {
+ \ifitemannotation{myself}{\textbf{##1}}{##1}
+ }
+
+ \cs_set:Npn \mkbibnamefamily ##1 {
+ \ifitemannotation{myself}{\textbf{##1}}{##1}
+ }
+
+ % Sorting by year, name, type.
+ \newrefcontext[sorting=ynt]
+ \chapter{\c_@@_label_publications_tl}
+ #1
+ \end{blindPeerReview}
+ }
+ {}
+
+ \NewDocumentEnvironment {resume} {+b}
+ {
+ \begin{blindPeerReview}
+ \chapter{\c_@@_label_resume_tl}
+ #1
+ \end{blindPeerReview}
+ }
+ {
+ }
+
+ \NewDocumentEnvironment {symbols} {}
+ {
+ \bool_if:NTF \l_@@_add_symbols_to_toc_bool {
+ \chapter{\c_@@_label_symbols_tl}
+ } {
+ \chapter*{\c_@@_label_symbols_tl}
+ }
+ \zihao{-4}
+ \begin{itemize}[labelwidth=2.5cm,labelsep=0.5cm,leftmargin=3cm,itemindent=0cm,itemsep=0cm]
+ \cs_set:Npn \makelabel ##1 {##1\hfil}
+ }
+ {
+ \end{itemize}
+ }
+% \end{macrocode}
% \begin{macrocode}
-%</package>
+%</thesis>
+% \end{macrocode}
+
+% \begin{macrocode}
+%<*report>
+% \end{macrocode}
+%
+% \begin{macrocode}
+% Define global
+\int_new:N \g_@@_report_type_int
+
+% Define Consts.
+\clist_const:Nn \c_@@_report_type_clist
+ { common, undergraduate_proposal}
+
+% Define tmp Variables
+\seq_new:N \l_@@_right_seq
+\seq_new:N \l_@@_left_seq
+
+\PassOptionsToPackage{AutoFakeBold,AutoFakeSlant}{xeCJK}
+
+\keys_define:nn { bitreport }
+ {
+ option .meta:nn = {bitreport / option } {#1},
+ cover .meta:nn = { bitreport / cover } {#1},
+ info .meta:nn = { bitreport / info } {#1},
+ misc .meta:nn = { bitreport / misc } {#1}
+ }
+
+\keys_define:nn { bitreport / option }
+ {
+ type .choice:,
+ type .value_required:n = true,
+ type .choices:Vn =
+ \c_@@_report_type_clist
+ {
+ \int_set_eq:NN \g_@@_report_type_int \l_keys_choice_int
+ },
+ type .initial:n = common,
+ ctex .tl_set:N = \l_@@_options_to_ctex_tl,
+ }
+
+
+% Pass every option not explicitly defined to `ctexbeamer`.
+\DeclareOption*{
+ \PassOptionsToClass{\l_@@_options_to_ctex_tl}{ctexart}
+}
+% Executes the code for each option.
+\ProcessOptions\relax
+% Load
+\LoadClass[zihao=-4]{ctexart}
+
+\RequirePackage[a4paper,left=3cm,right=2.4cm,top=2.6cm,bottom=2.38cm,includeheadfoot]{geometry}
+\RequirePackage{fancyhdr}
+\RequirePackage{setspace}
+\RequirePackage{caption}
+\RequirePackage{booktabs}
+\RequirePackage{pdfpages}
+
+
+\keys_define:nn { bitreport / cover }
+ {
+ imagePath .tl_set:N = \l_bit_coverimagepath_tl,
+ date .tl_set:N = \l_@@_cover_date_tl,
+ %% cover entry
+ dilimiter .tl_set:N = \l_@@_cover_dilimiter_tl,
+ labelAlign .tl_set:N = \l_@@_cover_label_align_tl,
+ labelAlign .initial:n = {r},
+ valueAlign .tl_set:N = \l_@@_cover_value_align_tl,
+ valueAlign .initial:n = {c},
+ labelMaxWidth .dim_set:N = \l_@@_cover_label_max_width_dim,
+ valueMaxWidth .dim_set:N = \l_@@_cover_value_max_width_dim,
+ autoWidth .bool_set:N = \l_@@_cover_auto_width_bool,
+ autoWidth .initial:n = {true},
+ underlineThickness .dim_set:N = \l_@@_cover_underline_thickness_dim,
+ underlineThickness .initial:n = {1pt},
+ underlineOffset .dim_set:N = \l_@@_cover_underline_offset_dim,
+ underlineOffset .initial:n = { -10pt },
+ }
+
+\keys_define:nn { bitreport / info }
+ {
+ title .tl_set:N = \l_@@_value_title_tl,
+ school .tl_set:N = \l_@@_value_school_tl,
+ major .tl_set:N = \l_@@_value_major_tl,
+ class .tl_set:N = \l_@@_value_class_tl,
+ author .tl_set:N = \l_@@_value_author_tl,
+ supervisor .tl_set:N = \l_@@_value_supervisor_tl,
+ externalSupervisor .tl_set:N = \l_@@_value_external_supervisor_tl,
+ studentId .tl_set:N = \l_@@_value_student_id_tl,
+ }
+
+\keys_define:nn { bitreport / misc }
+ {
+ reviewTable .tl_set:N = \l_bit_reviewtable_tl,
+ }
+
+\ProcessKeysOptions { bitreport / option }
+
+\cs_generate_variant:Nn \tl_if_empty:nTF {x}
+\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx}
+
+% #1: position
+% #2: line_thickness
+% #3: token list
+\cs_new:Npn \@@_dunderline:nnn #1#2#3 {
+ {\setbox0=\hbox{#3}\ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}}
+}
+
+\cs_new:Npn \@@_render_cover_entry:nn #1#2 {
+ \makebox[\l_@@_cover_label_max_width_dim][\l_@@_cover_label_align_tl]{
+ \tl_if_blank:VTF #1 {} {#1\l_@@_cover_dilimiter_tl}
+ }
+ \hspace{1ex}
+ \@@_dunderline:nnn{\l_@@_cover_underline_offset_dim}{\l_@@_cover_underline_thickness_dim}{
+ \makebox[\l_@@_cover_value_max_width_dim][\l_@@_cover_value_align_tl]{#2}
+ }\par
+}
+
+% Get text with from #2, then set to #1.
+\cs_new:Npn \@@_get_text_width:Nn #1#2
+ {
+ \hbox_set:Nn \l_tmpa_box {#2}
+ \dim_set:Nn #1 { \box_wd:N \l_tmpa_box }
+ }
+\cs_generate_variant:Nn \@@_get_text_width:Nn { NV }
+
+% Get max text width from seq #2, then set to #1.
+\cs_new:Npn \@@_get_max_text_width:NN #1#2
+ {
+% 这里用 |group| 确保局部变量不会被污染。
+ \group_begin:
+ \seq_set_eq:NN \l_@@_tmpa_seq #2
+ \dim_zero_new:N \l_@@_tmpa_dim
+ \bool_until_do:nn { \seq_if_empty_p:N \l_@@_tmpa_seq }
+ {
+ \seq_pop_left:NN \l_@@_tmpa_seq \l_@@_tmpa_tl
+ \@@_get_text_width:NV \l_@@_tmpa_dim \l_@@_tmpa_tl
+ \dim_gset:Nn #1 { \dim_max:nn {#1} { \l_@@_tmpa_dim } }
+ }
+ \group_end:
+ }
+
+% process label (#1) and value #2 separately
+\cs_new:Npn \@@_parse_entry #1 #2 {
+ \seq_set_split:Nnx \l_@@_tmp_right_seq {//} {#2}
+ \seq_clear:N \l_@@_tmp_left_seq
+ \seq_map_inline:Nn \l_@@_tmp_right_seq {
+ \seq_put_right:Nn \l_@@_tmp_left_seq {}
+ }
+ \seq_put_left:Nn \l_@@_tmp_left_seq {#1}
+ \seq_pop_right:NN \l_@@_tmp_left_seq \g_@@_trashcan_tl
+}
+
+\cs_new:Npn \@@_render_cover_entry:n #1 {
+ \seq_set_from_clist:NN \l_@@_input_seq #1
+ % parse newline //
+ \seq_map_inline:Nn \l_@@_input_seq {
+ \@@_parse_entry ##1
+ \seq_concat:NNN \l_@@_right_seq \l_@@_right_seq \l_@@_tmp_right_seq
+ \seq_concat:NNN \l_@@_left_seq \l_@@_left_seq \l_@@_tmp_left_seq
+ }
+
+ \bool_if:NT \l_@@_cover_auto_width_bool {
+ \@@_get_max_text_width:NN \l_@@_cover_label_max_width_dim \l_@@_left_seq
+ \@@_get_max_text_width:NN \l_@@_cover_value_max_width_dim \l_@@_right_seq
+ }
+
+
+ \group_begin:
+ \bool_until_do:nn { \seq_if_empty_p:N \l_@@_left_seq }
+ {
+ \seq_pop_left:NN \l_@@_left_seq \l_@@_tmpa_tl
+ \seq_pop_left:NN \l_@@_right_seq \l_@@_tmpb_tl
+ \tl_if_empty:xTF \l_@@_tmpb_tl {} {
+ \@@_render_cover_entry:nn {\l_@@_tmpa_tl} {\l_@@_tmpb_tl}
+ }
+ }
+ \group_end:
+}
+
+\DeclareDocumentCommand \BITSetup { m }
+ { \keys_set:nn { bitreport } { #1 }}
+\DeclareDocumentCommand \MakeCover {}
+ {
+ \group_begin:
+ \int_case:nn {\g_@@_report_type_int} {
+ {1} {
+ \begin{titlepage}
+ \centering
+ \vspace{23mm}
+ \tl_if_empty:NF \l_bit_coverimagepath_tl {
+ \includegraphics[width=.5\textwidth]{\l_bit_coverimagepath_tl}\\
+ }
+ \vspace{10mm}
+ \heiti\fontsize{24pt}{24pt}\selectfont{\l_@@_value_title_tl}\\
+ \vspace{67mm}
+ \begin{spacing}{2.2}
+ \songti\zihao{3}
+ \clist_set:Nn \l_@@_input_clist {
+ {\textbf{学\qquad 院:}} {\l_@@_value_school_tl},
+ {\textbf{专\qquad 业:}} {\l_@@_value_major_tl},
+ {\textbf{班\qquad 级:}} {\l_@@_value_class_tl},
+ {\textbf{学\qquad 号:}} {\l_@@_value_student_id_tl},
+ {\textbf{姓\qquad 名:}} {\l_@@_value_author_tl},
+ {\textbf{任课教师:}} {\l_@@_value_supervisor_tl},
+ }
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{spacing}
+ \vspace*{\fill}
+ \centering
+ \songti\fontsize{12pt}{12pt}\selectfont{
+ \tl_if_empty:NTF \l_@@_cover_date_tl {
+ \today
+ } {
+ \l_@@_cover_date_tl
+ }
+ }
+ \end{titlepage}
+ }
+ {2} {
+ % Main code for \MakeCover
+ \begin{titlepage}
+ \topskip=0pt
+ \vspace*{-16mm}
+ \centering
+ \hspace{-6mm}\songti\fontsize{22pt}{22pt}\selectfont{北京理工大学}\par
+
+ \vspace{13mm}
+
+ \hspace{-6mm}\heiti\fontsize{24pt}{24pt}\selectfont{本科生毕业设计(论文)开题报告}\par
+
+ \vspace{53mm}
+
+ \begin{spacing}{2.2}
+ \songti\zihao{3}
+ \clist_set:Nn \l_@@_input_clist {
+ {\textbf{学\qquad 院:}} {\l_@@_value_school_tl},
+ {\textbf{专\qquad 业:}} {\l_@@_value_major_tl},
+ {\textbf{班\qquad 级:}} {\l_@@_value_class_tl},
+ {\textbf{姓\qquad 名:}} {\l_@@_value_author_tl},
+ {\textbf{指导教师:}} {\l_@@_value_supervisor_tl},
+ {\textbf{校外指导教师:}} {\l_@@_value_external_supervisor_tl},
+ }
+
+ \@@_render_cover_entry:n \l_@@_input_clist
+
+ \end{spacing}
+
+ \vspace*{\fill}
+
+ \centering
+ \hspace{-6mm}\songti\fontsize{12pt}{12pt}\selectfont{\today}
+ \end{titlepage}
+ }
+ }
+ \group_end:
+ }
+
+\DeclareDocumentCommand \MakeReviewTable {}
+ {
+ \group_begin:
+ \begin{titlepage}
+ \includepdf[pages=-]{\l_bit_reviewtable_tl}
+ \end{titlepage}
+ \group_end:
+ }
+
+% 定义 caption 字体为楷体
+\DeclareCaptionFont{kaiticaption}{\kaishu \normalsize}
+
+% 设置图片的 caption 格式
+\renewcommand{\thefigure}{\thesection-\arabic{figure}}
+\captionsetup[figure]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption}
+
+% 设置表格的 caption 格式
+\renewcommand{\thetable}{\thesection-\arabic{table}}
+\captionsetup[table]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption}
+
+% 输出大写数字日期
+\ctexset{today=big}
+
+% 将西文字体设置为 Times New Roman
+\setromanfont{Times~New~Roman}
+
+%% 将中文楷体设置为 SIMKAI.TTF(如果需要)
+% \setCJKfamilyfont{zhkai}{[SIMKAI.TTF]}
+% \newcommand*{\kaiti}{\CJKfamily{zhkai}}
+
+% 设置文档标题深度
+\setcounter{tocdepth}{3}
+\setcounter{secnumdepth}{3}
+
+%%
+% 设置一级标题、二级标题格式
+% 一级标题:小三,宋体,加粗,段前段后各半行
+\ctexset{section={
+ format={\raggedright \bfseries \songti \zihao{-3}},
+ beforeskip = 24bp plus 1ex minus .2ex,
+ afterskip = 24bp plus .2ex,
+ fixskip = true,
+ name = {,.\quad}
+ }
+}
+% 二级标题:小四,宋体,加粗,段前段后各半行
+\ctexset{subsection={
+ format = {\bfseries \songti \raggedright \zihao{4}},
+ beforeskip = 24bp plus 1ex minus .2ex,
+ afterskip = 24bp plus .2ex,
+ fixskip = true,
+ }
+}
+% 页眉和页脚(页码)的格式设定
+\fancyhf{}
+\int_case:nn {\g_@@_report_type_int} {
+ {1} {\fancyhead[R]{\fontsize{10.5pt}{10.5pt}\selectfont{\l_@@_value_title_tl}}}
+ {2} {\fancyhead[R]{\fontsize{10.5pt}{10.5pt}\selectfont{北京理工大学本科生毕业设计(论文)开题报告}}}
+}
+\fancyfoot[R]{\fontsize{9pt}{9pt}\selectfont{\thepage}}
+\renewcommand{\headrulewidth}{1pt}
+\renewcommand{\footrulewidth}{0pt}
+
+% 正文开始
+\pagestyle{fancy}
+\setcounter{page}{1}
+
+% 正文 22 磅的行距,段前段后间距为 0
+% \setlength{\parskip}{0em}
+\cs_set:Npn \baselinestretch {1.53}
+% 正文首行悬挂 1.02cm
+% \setlength{\parindent}{1.02cm}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</report>
+% \end{macrocode}
+% \begin{macrocode}
+%<*beamer>
+% \end{macrocode}
+%
+% \begin{macrocode}
+% Define our keyvalues
+\keys_define:nn { bitbeamer }
+ {
+ titlegraphic .tl_set:N = \l_bit_titlegraphic_tl,
+ framelogo .tl_set:N = \l_bit_framelogo_tl,
+ }
+\ProcessKeysOptions { bitbeamer }
+
+% Pass every option not explicitly defined to `ctexbeamer`.
+\DeclareOption*{
+ \PassOptionsToClass{\CurrentOption}{ctexbeamer}
+}
+% Executes the code for each option.
+\ProcessOptions\relax
+
+% Load
+\LoadClass{ctexbeamer}
+
+\RequirePackage{xeCJKfntef}
+\RequirePackage{tikz}
+
+\usetheme{Madrid}
+% 设置主题色
+\colorlet{beamer@blendedblue}{green!40!black}
+
+\cs_new:Npn \CJKhl:nn #1 #2
+ { \CJKsout*[thickness=2.5ex, format=\color{#1}]{#2} }
+
+% Set header if logo path is provided.
+\tl_if_empty:NF \l_bit_titlegraphic_tl {
+ % BIT Logo
+ \titlegraphic{
+ \includegraphics[width=2cm]{\l_bit_titlegraphic_tl}
+ }
+}
+
+% Set title logo if logo path is provided.
+\tl_if_empty:NF \l_bit_framelogo_tl {
+ \addtobeamertemplate{frametitle}{}{%
+ \begin{tikzpicture}[remember~picture,overlay]
+ \node[anchor=north~east,yshift=2pt] at (current~page.north~east) {\includegraphics[height=0.8cm]{\tl_use:N \l_bit_framelogo_tl}};
+ \end{tikzpicture}
+ }
+}
+
+% Expose command to user.
+\cs_new_eq:NN \CJKhl \CJKhl:nn
+% \end{macrocode}
+% \begin{macrocode}
+%</beamer>
% \end{macrocode}
% \begin{macrocode}
@@ -239,7 +3331,7 @@
\PassOptionsToPackage{AutoFakeBold,AutoFakeSlant}{xeCJK}
\LoadClass[UTF8,zihao=-4,oneside,openany]{ctexbook}
-\RequirePackage[a4paper,left=3cm,right=2.6cm,top=3.5cm,bottom=2.9cm]{geometry}
+% \RequirePackage[a4paper,left=3cm,right=2.6cm,top=3.5cm,bottom=2.9cm]{geometry}
% 目前 29mm 最接近 Word 排版
\RequirePackage{xeCJK}
\RequirePackage{titletoc}
@@ -502,7 +3594,7 @@
% 设置参考文献编译后端为 biber,引用格式为 GB/T7714-2015 格式
% 参考文献使用宏包见 https://github.com/hushidong/biblatex-gb7714-2015
-\usepackage[style=gb7714-2015,backend=biber]{biblatex}
+\RequirePackage[style=gb7714-2015,backend=biber]{biblatex}
\if@bit@labreport
% 将西文字体设置为 Times New Roman
@@ -549,7 +3641,7 @@
\captionsetup[table]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption}
% 输出大写数字日期
- \CTEXoptions[today=big]
+ \ctexset{today=big}
% 将西文字体设置为 Times New Roman
\setromanfont{Times New Roman}
@@ -1015,8 +4107,7 @@ footskip=0.7cm% 页脚 1.8cm %
showspaces=false, %
flexiblecolumns=true, %
breaklines=true, % 对过长的代码自动换行
- breakautoindent=true,%
- breakindent=4em, %
+ postbreak=\mbox{\textcolor{red}{$\hookrightarrow$}\space},
aboveskip=1em, % 代码块边框
%% added by http://bbs.ctex.org/viewthread.php?tid=53451
fontadjust,
@@ -1491,17 +4582,16 @@ footskip=0.7cm% 页脚 1.8cm %
\ProvidesPackage{dtx-style}
\RequirePackage{hypdoc}
\RequirePackage{ifthen}
-\RequirePackage{fontspec}[2017/01/20]
+\RequirePackage{fontspec}
\RequirePackage{amsmath}
\RequirePackage{unicode-math}
-\RequirePackage[UTF8,scheme=chinese,heading]{ctex}
+\RequirePackage[UTF8,scheme=chinese,heading,sub3section]{ctex}
\RequirePackage[
top=2.5cm, bottom=2.5cm,
- left=4cm, right=2cm,
+ left=5cm, right=2cm,
headsep=3mm]{geometry}
\RequirePackage{graphicx}
\RequirePackage{multirow}
-\RequirePackage[ruled,vlined]{algorithm2e}
\RequirePackage{wrapfig}
\RequirePackage{hologo}
\RequirePackage{array,longtable,booktabs}
@@ -1509,7 +4599,7 @@ footskip=0.7cm% 页脚 1.8cm %
\RequirePackage{fancyhdr}
\RequirePackage[dvipsnames]{xcolor}
\RequirePackage{awesomebox}
-\RequirePackage{etoolbox}
+% \RequirePackage{etoolbox}
\RequirePackage{dirtree}
\RequirePackage{metalogo}
\RequirePackage[tightLists=false]{markdown}
@@ -1518,12 +4608,10 @@ footskip=0.7cm% 页脚 1.8cm %
\usetikzlibrary{positioning}
\RequirePackage{framed}
\RequirePackage{menukeys}
+\RequirePackage{float}
+\RequirePackage{subfig}
- % 设置代码高亮
-\RequirePackage{minted}
-\usemintedstyle{tango}
-
- % 设置列表无间隔
+ % 设置列表无间隔
\usepackage{enumitem}
\setlist{nosep}
@@ -1546,12 +4634,48 @@ footskip=0.7cm% 页脚 1.8cm %
\newcommand{\BIThesisMacroPackage}{{\BIThesis}宏集}
\newcommand{\BIThesisWiki}{{\BIThesis}在线文档}
\newcommand{\BIThesisScaffold}{{\BIThesis}模板}
+\newcommand{\BIThesisRelease}{{\BIThesis}模板}
\newcommand{\LPPL}{{\href{https://www.latex-project.org/lppl/lppl-1-3c.txt}{\LaTeX{} Project Public License (1.3.c)}}}
-\newcommand{\version}{v2.0 BirthdayCake}
+\newcommand{\versionold}{v2.0 BirthdayCake}
+\newcommand{\version}{v3 Summer Time}
+
+\ExplSyntaxOn
+
+\AtBeginEnvironment { bitsyntax } {
+ \cs_set:Npn \lparen { \textup { ( } }
+ \cs_set:Npn \rparen { \textup { ) } }
+ \char_set_catcode_active:N |
+ \char_set_catcode_active:N <
+ \char_set_catcode_active:N (
+ \char_set_active_eq:NN | \orbar
+ \char_set_active_eq:NN < \syntaxopt@aux
+ \char_set_active_eq:NN ( \defaultval@aux
+}
+
+\NewDocumentCommand \BIThesisTemplates {m} {
+ \str_case:nn {#1} {
+ {UT}{本科生毕业论文模板(undergraduate-thesis)}
+ {UTE}{本科生全英文专业毕业论文模板(undergraduate-thesis-en)}
+ {GT}{研究生学位论文模板(graduate-thesis)}
+ {LR}{简易使用报告模板(lab-report)}
+ {PT}{本科生毕业设计外文翻译模板(paper-translation)}
+ {PS}{北理工主题的 Beamer 模板(presentation-slide)}
+ {UP}{本科生毕业设计开题报告(undergraduate-proposal)}
+ }
+}
+
+% 允许换行的细间距。
+\def\breakablethinspace{\hskip 0.16667em\relax}
+
+
+\DeclareDocumentCommand\kvopt{mm}
+ {\texttt{#1\breakablethinspace=\breakablethinspace#2}}
+
+\ExplSyntaxOff
\ctexset{
today=big,
- abstractname=简介
+ abstractname=简介,
}
\ctexset{section={
@@ -1654,6 +4778,7 @@ footskip=0.7cm% 页脚 1.8cm %
boxpos=c,
showlines=false,
extendedchars=true,
+ escapeinside = {(*}{*)},
upquote=true,
tabsize=2,
showtabs=false,
@@ -1683,16 +4808,35 @@ footskip=0.7cm% 页脚 1.8cm %
style=lstStyleBase,
frame=l,
rulecolor=\color{purple},
- language=bash}
+ language=bash,
+}
\lstdefinestyle{lstStyleLaTeX}{%
style=lstStyleBase,
frame=l,
rulecolor=\color{violet},
- language=[LaTeX]TeX}
+ language=[LaTeX]TeX,
+ emphstyle=[1]\color{teal},
+}
+
+\lstdefinestyle{lstStyleSyntax}{%
+ style=lstStyleBase,
+ frame=l,
+ rulecolor=\color{violet},
+ language=[LaTeX]TeX,
+ emphstyle=[1]\color{teal},
+}
-\lstnewenvironment{latex}{\lstset{style=lstStyleLaTeX}}{}
+\lstnewenvironment{latex}[1][]{\lstset{style=lstStyleLaTeX, #1}}{}
\lstnewenvironment{shell}{\lstset{style=lstStyleShell}}{}
+\lstnewenvironment{bitsyntax}[1][]{\lstset{style=lstStyleSyntax, #1}}{}
+
+\def\orbar{\textup{\textbar}}
+\def\syntaxopt#1{\textit{#1}}
+\def\defaultval#1{\textbf{\textup{#1}}}
+\def\syntaxopt@aux#1>{\syntaxopt{#1}}
+\def\defaultval@aux#1){\defaultval{#1}}
+
\setlist{nosep}
@@ -1738,9 +4882,8 @@ footskip=0.7cm% 页脚 1.8cm %
\kern 1ex
}
}
-\makeatother
-
+\makeatother
%</dtx-style>
% \fi
diff --git a/macros/latex/contrib/bithesis/bithesis.ins b/macros/latex/contrib/bithesis/bithesis.ins
index eb76bab010..27ae5ee939 100644
--- a/macros/latex/contrib/bithesis/bithesis.ins
+++ b/macros/latex/contrib/bithesis/bithesis.ins
@@ -46,10 +46,13 @@
\generate
{
\usedir{tex/latex/bithesis}
- \file{bitart.cls} {\from{\jobname.dtx}{cls,article}}
- \file{bitbook.cls} {\from{\jobname.dtx}{cls,book}}
- \file{bitgrad.cls} {\from{\jobname.dtx}{cls,graduate}}
- \file{dtx-style.sty} {\from{\jobname.dtx}{dtx-style}}
+ \file{bitart.cls} {\from{\jobname.dtx}{oldcls,article}}
+ \file{bitbook.cls} {\from{\jobname.dtx}{oldcls,book}}
+ \file{bitgrad.cls} {\from{\jobname.dtx}{oldcls,graduate}}
+ \file{bithesis.cls} {\from{\jobname.dtx}{cls,thesis}}
+ \file{bitbeamer.cls} {\from{\jobname.dtx}{cls,beamer}}
+ \file{bitreport.cls} {\from{\jobname.dtx}{cls,report}}
+ \file{dtx-style.sty} {\from{\jobname.dtx}{dtx-style}}
}
\obeyspaces
@@ -60,11 +63,14 @@
\Msg{* *}
\Msg{* The recommended directory is TDS:tex/latex/bithesis *}
\Msg{* *}
-\Msg{* bitart.cls *}
-\Msg{* bitbook.cls *}
-\Msg{* bitgrad.cls *}
+\Msg{* bithesis.cls *}
+\Msg{* bitreport.cls *}
+\Msg{* bitbeamer.cls *}
+\Msg{* bitart.cls (deprecated) *}
+\Msg{* bitbook.cls (deprecated) *}
+\Msg{* bitgrad.cls (deprecated) *}
\Msg{* *}
-\Msg{* To produce the documentation run the file ctex.dtx *}
+\Msg{* To produce the documentation run the file bithesis.dtx *}
\Msg{* through XeLaTeX. *}
\Msg{* *}
\Msg{* Happy BIThesis! *}
diff --git a/macros/latex/contrib/bithesis/bithesis.pdf b/macros/latex/contrib/bithesis/bithesis.pdf
index cdb875f3a5..83d3151ff5 100644
--- a/macros/latex/contrib/bithesis/bithesis.pdf
+++ b/macros/latex/contrib/bithesis/bithesis.pdf
Binary files differ
diff --git a/macros/latex/contrib/bithesis/contributing-zh.md b/macros/latex/contrib/bithesis/contributing-zh.md
index bbc6163d82..52a09bae99 100644
--- a/macros/latex/contrib/bithesis/contributing-zh.md
+++ b/macros/latex/contrib/bithesis/contributing-zh.md
@@ -47,7 +47,7 @@
5. 创建一个 PR,并添加相应的说明。
6. 在 PR 被合并之前请保持关注,以便进行修改。
-寻找更细致的流程请参考
+更细致的流程请参考
_[Github Help](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests)_。
[QQ chat group invitation]: https://jq.qq.com/?_wv=1027&k=KYDrmS5z
diff --git a/macros/latex/contrib/democodetools/README.md b/macros/latex/contrib/democodetools/README.md
new file mode 100644
index 0000000000..43121c20c0
--- /dev/null
+++ b/macros/latex/contrib/democodetools/README.md
@@ -0,0 +1,42 @@
+%%%==============================================================================
+%% Copyright 2022 by Alceu Frigeri
+%%
+%%
+%% 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
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status “maintained”.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version 1.0beta (2022/09/01)
+%%
+%%
+%% This work consists of the files
+%%
+%% democodelisting.sty set of macros to typeset and demonstrate LaTeX code
+%% democodetools.sty set of macros to document LaTeX packages
+%%
+%% README.md (this file) quick introduction
+%%
+%% democode.tex LaTeX documentation
+%% democode.pdf documentation in PDF form
+%%
+%%%==============================================================================
+
+This is 'yet another doc/docx/doc3' package for LaTeX code documetation (and demonstration).
+It is designed to be 'as class independent as possible',
+meaning: it makes no assumption about page layout (besides 'having a marginpar') or underline macros.
+Furthermore, it's assumed that \maketitle and the abstract environment
+were modified by the underline class, so alternatives (based on the article class) are provided.
+
+For more details, see the documentation, democodetools.pdf (source code: democodetools.tex)
+
+The main idea is to be able to document a package/class loading it first and then this package,
+making it possible not only to document the 'syntax'
+but also to show the end result 'as is' when using that other specific class/package.
diff --git a/macros/latex/contrib/democodetools/doc/democodetools.pdf b/macros/latex/contrib/democodetools/doc/democodetools.pdf
new file mode 100644
index 0000000000..9d55a1d615
--- /dev/null
+++ b/macros/latex/contrib/democodetools/doc/democodetools.pdf
Binary files differ
diff --git a/macros/latex/contrib/democodetools/doc/democodetools.tex b/macros/latex/contrib/democodetools/doc/democodetools.tex
new file mode 100644
index 0000000000..6aa11e81f2
--- /dev/null
+++ b/macros/latex/contrib/democodetools/doc/democodetools.tex
@@ -0,0 +1,355 @@
+%%%==============================================================================
+%% Copyright 2022 by Alceu Frigeri
+%%
+%%
+%% 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
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status “maintained”.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version 1.0beta (2022/09/01)
+%%
+%%
+%% This work consists of the files
+%%
+%% democodelisting.sty set of macros to typeset and demonstrate LaTeX code
+%% democodetools.sty set of macros to document LaTeX packages
+%%
+%% README.md quick introduction
+%%
+%% democodetools.tex LaTeX documentation (this file)
+%% democodetools.pdf documentation in PDF form
+%%
+%%%==============================================================================
+\makeatletter
+\def\tc@tmp@packname{democodetoolsdoc}
+\def\tc@tmp@altpackname{democodetoolsdoc}
+\def\tc@tmp@packdesc{Demo Code Tools Documentantion}
+\def\tc@tmp@packdate{2022/09/01}
+\def\tc@tmp@packversion{1.0beta}
+\let\@exp\expandafter
+\@exp\edef\csname\tc@tmp@altpackname version\endcsname{\tc@tmp@packversion}
+\makeatother
+
+\documentclass[dctools,english]{ufrgscca}
+\usepackage{democodetools}
+
+\dcTitle{The democodetools and democodelisting Packages - Version \democodetoolsversion}
+\dcAuthor{Alceu Frigeri}
+\dcDate{September 2022}
+
+\begin{document}
+
+\dcMakeTitle
+
+\begin{dcAbstract}
+This is `yet another doc/docx/doc3' package. It is designed to be `as class independent as possible', meaning: it makes no assumption about page layout (besides `having a marginpar') or underline macros. Furthermore, it's assumed that \Macro{\maketitle}{} and the \Key{abstract} environment were modified by the underline class, so alternatives (based on the article class) are provided. The main idea is to be able to document a package/class loading it first and then this, so that it is possible not only to document the `syntax' but also to show the end result `as is' when using that other specific class/package.
+
+\end{dcAbstract}
+
+\tableofcontents
+
+\section{Introduction}
+The packages/classes doc/docx/doc3 (and for that matter doctools) where designed to be used with dtx files, which is handy for package developers, as long as one is fine with the `default article' format (which is true most of the time). This came to be from the willingness of having the `new look and feel' used in doc3, but, instead of having to rely on a standard class, being able to use any class as the base one, which allows to `demonstrate the documented commands with the final layout'.\\
+
+\Pack{democodelisting} defines a few macros to display and demonstrate \LaTeX~ code verbatim (using \Pack{listings} and \Pack{scontents}), whilst \Pack{democodetools} defines a series of macros to display/enumerate macros and environments (somewhat resembling the \Pack{doc3} style).\\
+\subsection{Current Version}
+This doc regards to \Pack{democodelisting} version \democodelistingversion~ and \Pack{democodetools} version \democodetoolsversion. Those two packages are 'usable' but they haven't been thoroughly tested, nor should anyone consider them stable (they might be considered more or less stable but more due the 'maintainer' lack of time than anything else. Use it at your own risk.)
+
+\section{democodelisting Package}
+
+It requires two packages: \Pack{listings} and \Pack{scontents}\\
+Defines an environment: \Env{stcode} and\\
+ 4 commands: \Macro{\DemoCode}{}, \Macro{\DisplayCode}{}, \Macro{\TabbedDisplayCode}{} and \Macro{\setdclisting}{}.
+
+\subsection{In Memory Code Storage}
+Thanks to \Pack{scontents} (\Pack{expl3} based) it's possible to store \LaTeX~ code snippets in a \Pack{expl3} key.
+
+\begin{Envs}{stcode}
+ \begin{Syntax}%
+ \Macro{\begin{stcode}}[keys]{} \Macro{\end{stcode}}{}
+ \end{Syntax}
+This environment is an alias to \Env{scontents} environment (from \Pack{scontents} package), all \Pack{scontents} keys are valid, with an additional one: \Key{st} which is an alias to the \Key{store-env} key.
+The environment body is stored verbatim in the \Key{st} named key.
+\end{Envs}
+
+\subsection{Code Display/Demo}
+\begin{Macros}{\DisplayCode,\DemoCode,\TabbedDemoCode}
+ \begin{Syntax}%
+ \Macro{\DisplayCode}[dclisting-keys]{st-name}
+ \Macro{\DemoCode}[dclisting-keys]{st-name}
+ \Macro{\TabbedDemoCode}[dclisting-keys]{st-name}
+ \end{Syntax}
+\end{Macros}
+\Macro{\DisplayCode}{} just typesets \Arg{st-name} (the key-name created with \Env{stcode}), in verbatim mode with syntax highlight.\\
+\Macro{\DemoCode}{} first typesets \Arg{st-name}, as above, then it \emph{executes} said code.
+Finally \Macro{\TabbedDemoCode}{} does the same, but typesetting it, and executed code, side by side. N.B. Both typeset and executed code are placed inside a \Env{minipage} so that, when \emph{executing} the code, one can have, for instance, 'normal' paragraph indentation.\\
+For Example:
+
+\begin{stcode}[st=demostcode]
+ \begin{stcode}[st=stmeta]
+ Some \LaTeX~coding, for example: \ldots.
+\end{stcode}
+This will just typesets \Key{stmeta}:
+
+ \DisplayCode{stmeta}
+
+and this will demonstrate it, side by side with source code:
+
+\TabbedDemoCode[numbers=left,codeprefix={inner code},resultprefix={inner result}]{stmeta}
+\end{stcode}
+
+\DemoCode[emph={DisplayCode,TabbedDemoCode},keywd2={stcode}]{demostcode}
+
+\begin{Macros}{\setdclisting}
+ \begin{Syntax}%
+ \Macro{\setdclisting}{dclisting-keys}
+ \end{Syntax}
+Instead of setting/defining \Meta{dclisting-keys} per \Macro{\Demo}{}/\Macro{\Display}{} call, one can set those \emph{globally}, better said, \emph{in the called context group} .\\
+N.B.: All \Macro{\Display}{}/\Macro{\Demo}{} commands create a local group (\Macro{\begingroup}{}) in which the \Meta{dclisting-keys} are defined, and discarded once said local group is closed. \Macro{\setdclisting}{} defines those keys in the \emph{current} context/group (\Macro{\def}{}, \Macro{\edef}{})
+\end{Macros}
+
+\subsubsection{\Meta{dclisting-keys}}
+Using a \Key{key}\,=\Value{value} syntax, one can fine tune \Pack{listings} syntax highlight.
+\begin{Args}
+\DescribeArg{dclisting-keys}
+\begin{Syntax} %
+ \Keylst{settexcs,settexcs2,settexcs3}
+ \Keylst{texcs,texcs2,texcs3}
+ \Keylst{texcsstyle,texcs2style,texcs3style}
+\end{Syntax}Those define sets of \LaTeX~commands (csnames), the \Key{set} variants initialize/redefine those sets (an empty list, clears the set), while the others extend those sets. The \Key{style} ones redefines the command display style (an empty \Meta{par} resets the style to it's default).\\
+
+\begin{Syntax} %
+ \Keylst{setkeywd,setkeywd2,setkeywd3}
+ \Keylst{keywd,keywd2,keywd3}
+ \Keylst{keywdstyle,keywd2style,keywd3style}
+\end{Syntax}
+Same for other \emph{keywords} sets.\\
+
+\begin{Syntax} %
+ \Keylst{setemph,setemph2,setemph3}
+ \Keylst{emph,emph2,emph3}
+ \Keylst{emphstyle,emph2style,emph3style}
+\end{Syntax}
+for some extra emphasis sets.\\
+
+\begin{Syntax} %
+ \Keylst{numbers,numberstyle}
+\end{Syntax}
+\Key{numbers} possible values are \Value{none} (default) and \Value{left} (to add tinny numbers to the left of the listing). With \Key{numberstyle} one can redefine the numbering style.\\
+
+\begin{Syntax} %
+ \Keylst{stringstyle,commentstyle}
+\end{Syntax}
+to redefine \Key{strings} and \Key{comments} formatting style.\\
+
+\begin{Syntax} %
+ \Key{bckgndcolor}
+\end{Syntax}
+to change the listing background's color.\\
+
+\begin{Syntax} %
+ \Keylst{codeprefix,resultprefix}
+\end{Syntax}
+those set the \Key{codeprefix} (default: \LaTeX~Code:) and \Key{resultprefix} (default: \LaTeX~Result:)
+\end{Args}
+
+\section{democodetools Package}
+
+
+
+
+\subsection{Environments}
+\begin{Envs}{Macros,Envs}
+\begin{Syntax}%
+\Macro{\begin{Macros}}{macrolist}
+\Macro{\begin{Envs}}{envlist}
+\end{Syntax}
+Those are the two main environments to describe \Env{Macros} and \Env{Environments}. Both typeset \Arg{macrolist} (csv list) or \Arg{envlist} (csv list) in the margin. N.B. Each element of the list gets \Macro{\detokenize}{}
+\end{Envs}
+
+\begin{Envs}{Syntax}
+\begin{Syntax}%
+\Macro{\begin{Syntax}}{}
+\end{Syntax}
+The \Env{Syntax} environment sets the fontsize and activates \Macro{\obeylines}{}, so one can list macros/cmds/keys use, one per line.
+
+\begin{stcode}[st=demoD]
+\begin{Envs}{Macros,Envs}
+\begin{Syntax}%
+\Macro{\begin{Macros}}{macrolist}
+\Macro{\begin{Envs}}{envlist}
+\end{Syntax}
+Those are the two main ...
+\end{Envs}
+\end{stcode}
+\DisplayCode{demoD}
+
+\end{Envs}
+
+
+\begin{Envs}{Args,Keys,Values,Options}
+\begin{Syntax}%
+\Macro{\begin{Args}}{}
+\Macro{\begin{Args+}}{}
+\Macro{\begin{Keys}}{}
+\Macro{\begin{Keys+}}{}
+\Macro{\begin{Values}}{}
+\Macro{\begin{Values+}}{}
+\Macro{\begin{Options}}{}
+\Macro{\begin{Options+}}{}
+\end{Syntax}
+
+Those environments are all the same, starting a dedicated \emph{description list}. Together with the many \Macro{\Description...}{} commands, one can list all \Keylst{Options, Args, Keys, Values} as needed. The \Key{+} form are meant to be used with the \Macro{\Description...+}{} forms, for \emph{in text} lists. The non \Key{+} form are meant to have the many \emph{'descriptors'} in the \emph{margin par}.
+\end{Envs}
+
+\subsection{Describe Commands}
+\begin{Macros}{\DescribeMacro}
+\begin{Syntax}%
+\Macro!{\DescribeMacro}<*!+>{\marg{csname}\oarg{oarglist}\marg{marglist}}
+\end{Syntax}
+\begin{Args+}
+\DescribeKey+{*} typesets the macro name in bold face.
+\DescribeKey+{!} \Arg{marglist} is treated as an expandable code, 'as is'.
+\DescribeKey+{+} the macro name is typeseted in text.
+\DescribeArg+{csname} macro name (\Macro{\detokenize}{})
+\DescribeArg+{oarglist} csv list of optional args.
+\DescribeArg+{marglist} csv list of mandatory args.
+\end{Args+}
+\end{Macros}
+
+\begin{Macros}{\DescribeArg,\DescribeKey,\DescribeValue,\DescribeOption,\DescribePackage,}
+\begin{Syntax}%
+\Macro{\DescribeArg}<*+>[type]{arg}
+\Macro{\DescribeKey}<*+>[type]{arg}
+\Macro{\DescribeValue}<*+>[type]{arg}
+\Macro{\DescribeOption}<*+>[type]{arg}
+\Macro{\DescribePackage}<*+>[type]{arg}
+\end{Syntax}
+\begin{Args+}
+\DescribeKey+{*} typesets it in bold face.
+\DescribeKey+{+} typesets in text (not in marginpar)
+\DescribeArg+{type} key/arg/... format
+\DescribeArg+{arg} key/arg/... name.
+\end{Args+}
+\end{Macros}
+
+
+\subsection{Macros Typeset}
+\begin{Macros}{\Macro}
+ \begin{Syntax}%
+ \Macro!{\Macro}{\marg{csname}\xarg{embl}\oarg{olist}\marg{mlist}}
+ \Macro!{\Macro}<!>{\marg{csname}\xarg{embl}\marg{par.desc.}}
+ \end{Syntax}
+ When describing a macro \Arg{csname} (Command Sequence, csname) the \Arg{olist} and \Arg{mlist} are comma separated lists (csv) of optional and mandatory arguments. \Arg{embl} are optional, single char, 'embellishment' tokens, like {\bfseries * ! +}. Finally, in the {\bfseries !} form, the \Arg{par.desc.} is any text representing the macro parameter list (for non regular, non usual, cases).
+
+ \begin{stcode}[st=demoB]
+ \Macro
+ {\Macro}<*!>[opt1,opt2]{arg3}
+ \Macro!
+ {\Macro}<!>{\xarg{embl}\marg{par.desc.}}
+\end{stcode}
+ \TabbedDemoCode{demoB}
+\end{Macros}
+
+\subsection{Args Typeset}
+\begin{Macros}{\oarg,\marg,\parg,\xarg,\Arg,\Meta}
+ \begin{Syntax}%
+ \Macro{\oarg}[type]{arg}
+ \Macro{\marg}[type]{arg}
+ \Macro{\parg}[type]{arg}
+ \Macro{\xarg}[type]{arg}
+ \Macro{\Arg}[type]{arg}
+ \Macro{\Meta}{arg}
+ \end{Syntax}
+ Those are meant to typeset the diverse kinds of 'command's arguments' (mandatory, optional, parenthesis . . .). \Macro{\Meta{arg}}{} typesets \emph{arg} as \Meta{arg}.
+ \begin{Args}
+ \DescribeArg{type} defaults to \Value{Meta} (it's the csname of any valid formatting command, like Meta, textbf, etc.)
+ \DescribeArg{arg} the argument name itself.
+ \end{Args}
+ \begin{stcode}[st=demoA]
+ \oarg{fam}
+ \parg{xtra}
+ \marg[textbf]{text}
+ \xarg{x-text}
+\end{stcode}
+ \TabbedDemoCode{demoA}
+\end{Macros}
+
+\subsection{Keys Typeset}
+\begin{Macros}{\Key,\Keylst,\KeyUse}
+ \begin{Syntax}%
+ \Macro{\Key}[pre]{key}
+ \Macro{\Keylst}[default]{keylst}
+ \Macro{\KeyUse}{key}{value}
+ \end{Syntax}
+ To typeset a \Arg{Key} or \Arg{keylst} (csv list). \Arg{pre} is just prepended to \Arg{key} whilst \Arg{default} is the default key value. \Macro{\KeyUse}{} is just a short-cut for a, possible, common construction.
+
+ \begin{stcode}[st=demoC]
+ \Key{Akey}
+
+ \Keylst[Bkey]{Akey,Bkey}
+
+ \KeyUse{keyA}{arg}
+\end{stcode}
+ \TabbedDemoCode{demoC}
+
+\end{Macros}
+
+\begin{Macros}{\Env,\Pack,\Value}
+ \begin{Syntax}%
+ \Macro{\Env}[pre]{key}
+ \Macro{\Pack}[pre]{key}
+ \Macro{\Value}[pre]{key}
+ \end{Syntax}
+ Similar to \Macro{\Key}{} above, they will typeset a \Arg{Key}. \Arg{pre} is just prepended to \Arg{key} whilst \Arg{default} is the default key value.
+
+
+\end{Macros}
+
+
+\subsection{Others}
+\begin{Macros}{\MetaFmt}
+ \begin{Syntax}%
+ \Macro{\MetaFmt}<*>[type]{}
+ \end{Syntax}
+It sets the font size, series, face as defined by \Meta{type}, \Meta{type} being one of \Keylst{Oarg,Marg,Parg,Xarg,Macro,Code,Key,KeyVal,Option,Value,Default}. The star version uses bold.
+\end{Macros}
+
+
+\begin{Macros}{\MarginNote}
+ \begin{Syntax}%
+ \Macro{\MarginNote}{text}
+ \end{Syntax}
+As the name implies, to add small margin notes.
+\end{Macros}
+
+
+\begin{Macros}{\dcAuthor,\dcDate,\dcTitle,\dcMakeTitle}
+ \begin{Syntax}%
+ \Macro{\dcAuthor}{name}
+ \Macro{\dcDate}{date}
+ \Macro{\dcTitle}{title}
+ \Macro{\dcMakeTitle}{}
+ \end{Syntax}
+Those allow one to define (as in standard article, book, report classes) the document \emph{author}, \emph{date} and \emph{date} \Macro{\dcMakeTitle}{} will write a typical title+author heading (as in the article class).
+\end{Macros}
+
+\begin{Envs}{dcAbstract}
+ \begin{Syntax}%
+ \Macro{\begin{dcAbstract}}{} \Macro{\end{dcAbstract}}{}
+ \end{Syntax}
+Same as above, for the abstract.
+\end{Envs}
+
+
+
+
+\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/democodetools/latex/democodelisting.sty b/macros/latex/contrib/democodetools/latex/democodelisting.sty
new file mode 100644
index 0000000000..1041b6f249
--- /dev/null
+++ b/macros/latex/contrib/democodetools/latex/democodelisting.sty
@@ -0,0 +1,522 @@
+%%%==============================================================================
+%% Copyright 2022 by Alceu Frigeri
+%%
+%%
+%% 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
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status “maintained”.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version 1.0beta (2022/09/01)
+%%
+%%
+%% This work consists of the files
+%%
+%% democodelisting.sty set of macros to typeset and demonstrate LaTeX code
+%% democodetools.sty set of macros to document LaTeX packages
+%%
+%% README.md quick introduction
+%%
+%% democodetools.tex LaTeX documentation
+%% democodetools.pdf documentation in PDF form
+%%
+%%%==============================================================================
+\NeedsTeXFormat{LaTeX2e}[2022/06/01]
+\def\tc@tmp@packname{democodelisting}
+\def\tc@tmp@altpackname{democodelisting}
+\def\tc@tmp@packdesc{Demo Code Listing}
+\def\tc@tmp@packdate{2022/09/01}
+\def\tc@tmp@packversion{1.0beta}
+\let\@exp\expandafter
+\@exp\edef\csname\tc@tmp@altpackname version\endcsname{\tc@tmp@packversion}
+\@exp\@exp\@exp\ProvidesPackage\@exp\@exp\@exp{\@exp\tc@tmp@packname\@exp}\@exp[\tc@tmp@packdate\space v\tc@tmp@packversion\space\tc@tmp@packdesc]
+
+\RequirePackage{listings}
+\RequirePackage{scontents}
+
+\newlength{\dc@demo@parindent}
+\newlength{\dc@org@parindent}
+\setlength\dc@org@parindent{\parindent}
+\setlength\parindent{0pt}
+
+
+\colorlet{dc@lightcyan}{white!97!cyan}
+\colorlet{dc@lightgray}{white!97!black}
+\definecolor{dc@grayblack}{rgb}{0.8,0.8,0.8}
+
+\colorlet{dc@darkgreen}{green!45!black!100}
+\colorlet{dc@darkteal}{teal!45!black!100}
+\colorlet{dc@darkblue}{blue!40!black!100}
+\colorlet{dc@darkred}{red!45!black!100}
+
+\colorlet{dc@blueishblack}{blue!75!black!100}
+\colorlet{dc@reddishblack}{red!60!black!100}
+\colorlet{dc@greenishblack}{green!45!black!100}
+
+\def\dc@lstbckgndcolordefault{dc@lightgray}%
+\def\dc@lststringcolordefault{dc@darkteal}
+\def\dc@lstcommentcolordefault{dc@darkgreen}
+\def\dc@lsttexcscolordefault{dc@darkblue}
+\def\dc@lstkeywdcolordefault{dc@darkblue}
+
+\def\dc@lsttexcsBcolordefault{dc@blueishblack}
+\def\dc@lstkeywdBcolordefault{dc@greenishblack}
+\def\dc@lstemphcolordefault{dc@reddishblack}
+
+\colorlet{dc@lstnumbercolordefault}{white!50!black!100}
+
+\def\dc@lstrulecolordefault{gray}
+\def\dc@lstnumbercolordefault{gray}
+
+\DeclareKeys[dclisting]{
+ settexcs.usage = general,
+ settexcs.code = {\ifblank{#1}{\def\dc@lsttexcs{}}{\def\dc@lsttexcs{#1}}},
+ texcs.usage = general,
+ texcs.code = {\ifblank{#1}{}{\edef\dc@lsttexcs{\dc@lsttexcs,#1}}},
+ texcsstyle.usage = general,
+ texcsstyle.code = {\ifblank{#1}{\def\dc@lsttexcsstyle{\bfseries\color{\dc@lsttexcscolordefault}}}{\def\dc@lsttexcsstyle{#1}}},
+
+ settexcs2.usage = general,
+ settexcs2.code = {\ifblank{#1}{\def\dc@lsttexcsB{}}{\def\dc@lsttexcsB{#1}}},
+ texcs2.usage = general,
+ texcs2.code = {\ifblank{#1}{}{\edef\dc@lsttexcsB{\dc@lsttexcsB,#1}}},
+ texcs2style.usage = general,
+ texcs2style.code = {\ifblank{#1}{\def\dc@lsttexcsBstyle{\bfseries\color{\dc@lsttexcsBcolordefault}}}{\def\dc@lsttexcsBstyle{#1}}},
+
+ settexcs3.usage = general,
+ settexcs3.code = {\ifblank{#1}{\def\dc@lsttexcsC{}}{\def\dc@lsttexcsC{#1}}},
+ texcs3.usage = general,
+ texcs3.code = {\ifblank{#1}{}{\edef\dc@lsttexcsC{\dc@lsttexcsC,#1}}},
+ texcs3style.usage = general,
+ texcs3style.code = {\ifblank{#1}{\def\dc@lsttexcsCstyle{\bfseries\color{\dc@lsttexcsBcolordefault}}}{\def\dc@lsttexcsCstyle{#1}}},
+
+ setkeywd.usage = general,
+ setkeywd.code = {\ifblank{#1}{\def\dc@lstkeywd{}}{\def\dc@lstkeywd{#1}}},
+ keywd.usage = general,
+ keywd.code = {\ifblank{#1}{}{\edef\dc@lstkeywd{\dc@lstkeywd,#1}}},
+ keywdstyle.usage = general,
+ keywdstyle.code = {\ifblank{#1}{\def\dc@lstkeywdstyle{\bfseries\color{\dc@lstkeywdcolordefault}}}{\def\dc@lstkeywdstyle{#1}}},
+
+ setkeywd2.usage = general,
+ setkeywd2.code = {\ifblank{#1}{\def\dc@lstkeywdB{}}{\def\dc@lstkeywdB{#1}}},
+ keywd2.usage = general,
+ keywd2.code = {\ifblank{#1}{}{\edef\dc@lstkeywdB{\dc@lstkeywdB,#1}}},
+ keywd2style.usage = general,
+ keywd2style.code = {\ifblank{#1}{\def\dc@lstkeywdBstyle{\bfseries\color{\dc@lstkeywdBcolordefault}}}{\def\dc@lstkeywdBstyle{#1}}},
+
+ setkeywd3.usage = general,
+ setkeywd3.code = {\ifblank{#1}{\def\dc@lstkeywdC{}}{\def\dc@lstkeywdC{#1}}},
+ keywd3.usage = general,
+ keywd3.code = {\ifblank{#1}{}{\edef\dc@lstkeywdC{\dc@lstkeywdC,#1}}},
+ keywd3style.usage = general,
+ keywd3style.code = {\ifblank{#1}{\def\dc@lstkeywdCstyle{\bfseries\color{\dc@lstkeywdBcolordefault}}}{\def\dc@lstkeywdCstyle{#1}}},
+
+ setemph.usage = general,
+ setemph.code = {\ifblank{#1}{\def\dc@lstemph{}}{\def\dc@lstemph{#1}}},
+ emph.usage = general,
+ emph.code = {\ifblank{#1}{}{\edef\dc@lstemph{\dc@lstemph,#1}}},
+ emphstyle.usage = general,
+ emphstyle.code = {\ifblank{#1}{\def\dc@lstemphstyle{\bfseries\color{\dc@lstemphcolordefault}}}{\def\dc@lstemphstyle{#1}}},
+
+ setemph2.usage = general,
+ setemph2.code = {\ifblank{#1}{\def\dc@lstemphB{}}{\def\dc@lstemphB{#1}}},
+ emph2.usage = general,
+ emph2.code = {\ifblank{#1}{}{\edef\dc@lstemphB{\dc@lstemphB,#1}}},
+ emph2style.usage = general,
+ emph2style.code = {\ifblank{#1}{\def\dc@lstemphBstyle{\bfseries\color{\dc@lstemphcolordefault}}}{\def\dc@lstemphBstyle{#1}}},
+
+ setemph3.usage = general,
+ setemph3.code = {\ifblank{#1}{\def\dc@lstemphC{}}{\def\dc@lstemphC{#1}}},
+ emph3.usage = general,
+ emph3.code = {\ifblank{#1}{}{\edef\dc@lstemphC{\dc@lstemphC,#1}}},
+ emph3style.usage = general,
+ emph3style.code = {\ifblank{#1}{\def\dc@lstemphCstyle{\bfseries\color{\dc@lstemphcolordefault}}}{\def\dc@lstemphCstyle{#1}}},
+
+ stringstyle.usage = general,
+ stringstyle.code = {\ifblank{#1}{\def\dc@lststringstyle{\color{\dc@lststringcolordefault}}}{\def\dc@lststringstyle{#1}}},
+
+ commentstyle.usage = general,
+ commentstyle.code = {\ifblank{#1}{\def\dc@lstcommentstyle{\color{\dc@lstcommentcolordefault}}}{\def\dc@lstcommentstyle{#1}}},
+
+ bckgndcolor.usage = general,
+ bckgndcolor.code = {\ifblank{#1}{\def\dc@lstbckgndcolor{\color{\dc@lstbckgndcolordefault}}}{\def\dc@lstbckgndcolor{#1}}},
+
+ rulecolor.usage = general,
+ rulecolor.code = {\ifblank{#1}{\def\dc@lstrulecolor{\color{\dc@lstrulecolordefault}}}{\def\dc@lstrulecolor{#1}}},
+
+ numbers.usage = general,
+ numbers.code = {\ifblank{#1}{\def\dc@lstnumbers{none}}{\def\dc@lstnumbers{#1}}},
+
+ numberstyle.usage = general,
+ numberstyle.code = {\ifblank{#1}{\def\dc@lstnumberstyle{\tiny\color{\dc@lstnumbercolordefault}}}{\def\dc@lstnumberstyle{#1}}},
+
+ parindent.usage = general,
+ parindent.code = {\setlength\dc@demo@parindent{\parindent}\setdcpar{#1}},
+
+ default.usage = general,
+ default.code = {\dc@lstkeysdefault},
+}
+\NewDocumentCommand{\setdclisting}{m}{\SetKeys[dclisting]{#1}}
+\NewDocumentCommand{\dc@lstkeysdefault}{}{%
+ \setdclisting{%
+ settexcs,texcsstyle,settexcs2,texcs2style,settexcs3,texcs3style,%
+ setkeywd,keywdstyle,setkeywd2,keywd2style,setkeywd3,keywd3style,%
+ setemph,emphstyle,setemph2,emph2style,setemph3,emph3style,%
+ stringstyle,commentstyle,bckgndcolor,rulecolor,%
+ numbers,numberstyle,%
+ }%
+}
+\setdclisting{default}
+
+\DeclareKeys[dcpar]{
+ org.usage = general,
+ org.code = {\setlength\dc@demo@parindent\dc@org@parindent},
+ default.usage = general,
+ default.code = {\setlength\dc@demo@parindent\parindent},
+}
+\DeclareUnknownKeyHandler[dcpar]{\ifblank{#1}{\setlength\dc@demo@parindent\dc@org@parindent}{\setlength\dc@demo@parindent{#1}}}
+
+\NewDocumentCommand{\setdcpar}{m}{\SetKeys[dcpar]{#1}}
+
+\DeclareKeys[dclisting]{
+ codeprefix.usage = general,
+ codeprefix.code = {\ifblank{#1}{\def\dc@codeprefix{\LaTeX~Code:}}{\def\dc@codeprefix{#1}}},
+
+ resultprefix.usage = general,
+ resultprefix.code = {\ifblank{#1}{\def\dc@resultprefix{\LaTeX~Result:}}{\def\dc@resultprefix{#1}}},
+
+ defaulttools.usage = general,
+ defaulttools.code = {\SetKeys[dclisting]{codeprefix,resultprefix}} ,
+}
+%\DeclareUnknownKeyHandler[dclisting]{\setdclisting{#1={#2}}}
+
+%\NewDocumentCommand{\setdctools}{m}{\SetKeys[dctools]{#1}}
+\SetKeys[dclisting]{defaulttools}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%
+%%%
+%%% From doctools.dtx file
+%%% lstlistings 'definitions'
+%%%
+%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%
+
+%%% listings
+%
+\lstdefinestyle{lstStyleDefault}{
+%%% appearance
+ ,basicstyle=\small\ttfamily % Standardschrift
+%%% Space and placement
+ ,floatplacement=tbp % is used as float place specifier
+ ,aboveskip=\medskipamount % define the space above and
+ ,belowskip=\medskipamount % below displayed listings.
+ ,lineskip=0pt % specifies additional space between lines in listings.
+ ,boxpos=c % c,b,t
+%%% The printed range
+ ,showlines=false % prints empty lines at the end of listings
+%%% characters
+ ,extendedchars=true % allows or prohibits extended characters
+ % in listings, that means (national)
+ % characters of codes 128-255.
+ ,upquote=true % determines printing of quotes
+ ,tabsize=2, % chars of tab
+ ,showtabs=false % do not show tabs
+ ,showspaces=false % do not show spaces
+ ,showstringspaces=false % do not show blank spaces in string
+%%% Line numbers
+ ,numbers=none % left, right, none
+%%% Captions
+ ,numberbychapter=true %
+ ,captionpos=b % t,b
+ ,abovecaptionskip=\smallskipamount % the vertical space respectively above
+ ,belowcaptionskip=\smallskipamount % or below each caption
+%%% Margins and line shape
+ ,linewidth=\linewidth % defines the base line width for listings.
+ ,xleftmargin=0pt % extra margins
+ ,xrightmargin=0pt %
+ ,resetmargins=false % indention from list environments like enumerate
+ % or itemize is reset, i.e. not used.
+ ,breaklines=true % line breaking of long lines.
+ ,breakatwhitespace=false % allows line breaks only at white space.
+ ,breakindent=0pt % is the indention of the second, third, ...
+ % line of broken lines.
+ ,breakautoindent=true % apply intendation
+ ,columns=flexible %
+ ,keepspaces=true %
+}
+
+
+\lstdefinestyle{lstDocStyleBase}{
+%%% base style
+%
+ ,style=lstStyleDefault
+%%% appearance
+ ,commentstyle=\slshape
+%%% Line numbers
+ ,numbers=left % left, right, none
+ ,stepnumber=1 % seperation between numbers
+ ,numberfirstline=false % number first line always
+ ,numberstyle={\dc@lstnumberstyle} % style of numbers
+ ,numbersep=5pt % distance to text
+ ,numberblanklines=true %
+%%% language
+ ,language = [LaTeX]TeX
+%%% commands
+ % LaTeX programming
+ ,moretexcs={setlength,usepackage,newcommand,renewcommand,providecommand,RequirePackage,SelectInputMappings,ifpdftex,ifpdfoutput,AtBeginEnvironment,ProvidesPackage},
+ % other commands
+ ,moretexcs={maketitle,text,includegraphics,chapter,section,subsection,
+ subsubsection,paragraph,textmu,enquote,blockquote,ding,mathds,ifcsdef,Bra,Ket,Braket,subcaption,lettrine,mdfsetup,captionof,listoffigures,listoftables,tableofcontents,appendix}
+ % tables
+ ,moretexcs={newcolumntype,rowfont,taburowcolors,rowcolor,rowcolors,bottomrule,
+ toprule,midrule,}
+ % hyperref
+ ,moretexcs={hypersetup}
+ % glossaries
+ ,moretexcs={gls,printglossary,glsadd,newglossaryentry,newacronym}
+ % Koma
+ ,moretexcs={mainmatter,frontmatter,geometry,KOMAoptions,setkomafont,addtokomafont}
+ % SI, unit
+ ,moretexcs={si,SI,sisetup,unit,unitfrac,micro}
+ % biblatex package
+ ,moretexcs={newblock,ExecuteBibliographyOptions,addbibresource}
+ % math packages
+ ,moretexcs={operatorname,frac,sfrac,dfrac,DeclareMathOperator,mathcal,underset}
+ % demo package
+ ,moretexcs={democodefile,package,cs,command,env,DemoError,PrintDemo}
+ % tablestyles
+ ,moretexcs={theadstart,tbody,tsubheadstart,tsubhead,tend}
+ % code section package
+ ,moretexcs={DefineCodeSection,SetCodeSection,BeginCodeSection,
+ EndCodeSection}
+ % template tools package
+ ,moretexcs={IfDefined,IfUndefined,IfElseDefined,IfElseUndefined,IfMultDefined,IfNotDraft,IfNotDraftElse,IfDraft,IfPackageLoaded,IfElsePackageLoaded,IfPackageNotLoaded,IfPackagesLoaded,IfPackagesNotLoaded,ExecuteAfterPackage,ExecuteBeforePackage,IfTikzLibraryLoaded,IfColumntypeDefined,IfColumntypesDefined,IfColorDefined,IfColorsDefined,IfMathVersionDefined,SetTemplateDefinition,UseDefinition,IfFileExists,iflanguage}
+ % tablestyles
+ ,moretexcs={setuptablefontsize,tablefontsize,setuptablestyle,tablestyle, setuptablecolor,tablecolor,disablealternatecolors, tablealtcolored,tbegin,tbody,tend,thead, theadstart,tsubheadstart,tsubhead,theadrow,tsubheadrow,resettablestyle,theadend,tsubheadend,tableitemize,PreserveBackslash}
+ % todonotes
+ ,moretexcs={todo,missingfigure}
+ % listings
+ ,moretexcs={lstloadlanguages,lstdefinestyle,lstset}
+ % index
+ ,moretexcs={indexsetup}
+ % glossaries
+ ,moretexcs={newglossarystyle,glossarystyle,deftranslation,newglossary}
+ % tikz
+ ,moretexcs={usetikzlibrary}
+ % color
+ ,moretexcs={definecolor,colorlet}
+ % caption
+ ,moretexcs={captionsetup,DeclareCaptionStyle}
+ % floatrow
+ ,moretexcs={floatsetup}
+ % doc.sty
+ ,moretexcs={EnableCrossrefs,DisableCrossrefs,PageIndex,CodelineIndex,CodelineNumbered}
+ % refereces
+ ,moretexcs={cref,Cref,vref,eqnref,figref,tabref,secref,chapref}
+}
+
+%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%
+%%%
+%%% From doctools.dtx file
+%%% lstlistings 'definitions'
+%%%
+%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%
+
+
+
+\lstloadlanguages{[LaTeX]TeX}
+\lstdefinestyle{codestyle}{
+%%% base style
+ style=lstDocStyleBase,
+ language=[LaTeX]{TeX},
+ numbers=none,%{\dc@lstnumbers},%
+ %%% colors
+ rulecolor={\dc@lstrulecolor},
+ backgroundcolor={\dc@lstbckgndcolor},%
+ stringstyle={\dc@lststringstyle},
+ commentstyle={\dc@lstcommentstyle},
+ framerule=0pt,%0.4pt,
+ nolol=true,
+ frame=none,
+ aboveskip=-2ex,
+ belowskip=-2ex,
+ basicstyle=\footnotesize\ttfamily , % Standardschrift
+ rulesep = 0pt,
+ breaklines=true,
+ breakindent=3em,
+ moretexcs={\dc@lsttexcs},
+ moretexcs=[2]{\dc@lsttexcsB},
+ moretexcs=[3]{\dc@lsttexcsC},
+ texcsstyle=*{\dc@lsttexcsstyle},
+ texcsstyle=*[2]{\dc@lsttexcsBstyle},
+ texcsstyle=*[3]{\dc@lsttexcsCstyle},
+ morekeywords={\dc@lstkeywd},
+ morekeywords=[2]{\dc@lstkeywdB},
+ morekeywords=[3]{\dc@lstkeywdC},
+ keywordstyle={\dc@lstkeywdstyle},
+ keywordstyle=[2]{\dc@lstkeywdBstyle},
+ keywordstyle=[3]{\dc@lstkeywdCstyle},
+ emph={\dc@lstemph},
+ emph=[2]{\dc@lstemphB},
+ emph=[3]{\dc@lstemphC},
+ emphstyle={\dc@lstemphstyle},
+ emphstyle=[2]{\dc@lstemphBstyle},
+ emphstyle=[3]{\dc@lstemphCstyle},
+}
+\lstset{style=codestyle}
+
+%%%
+%%% Using scontents package !!!!
+%%%
+\ExplSyntaxOn
+\keys_define:nn { scontents / scontents}
+ {
+ st.meta:nn = { scontents } { store-env = #1 },
+ st.value_required:n = true
+ }
+\ExplSyntaxOff
+
+\newenvsc{stcode}
+\let\verbatimsc\@undefined
+\let\verbatimsc@\@undefined
+\let\endverbatimsc\@undefined
+\lstnewenvironment{verbatimsc}{\lstset{style=codestyle}}{}
+
+
+\NewDocumentEnvironment{verbsc}{m}{%
+ \let\verbatimsc\@undefined
+ \let\verbatimsc@\@undefined
+ \let\endverbatimsc\@undefined
+ \setdclisting{#1}
+ \edef\dc@tmp{style=codestyle,moretexcs={\dc@lsttexcs},moretexcs=[2]{\dc@lsttexcsB},moretexcs=[3]{\dc@lsttexcsC},%
+ morekeywords={\dc@lstkeywd},morekeywords=[2]{\dc@lstkeywdB},morekeywords=[3]{\dc@lstkeywdC},%
+ emph={\dc@lstemph},emph=[2]{\dc@lstemphB},emph=[3]{\dc@lstemphC},%
+ numbers={\dc@lstnumbers}}
+ \lstnewenvironment{verbatimsc}{\expandafter\lstset\expandafter{\dc@tmp}}{}
+}{%
+}
+
+\NewDocumentCommand{\DisplayCodeB}{O{}m}{%
+ {%
+ \begin{verbsc}{#1}%
+ \begin{tabular}{J{.98\textwidth}}\dc@codeprefix \\
+ \typestored{#2}%
+ \end{tabular}%
+ \end{verbsc}%
+ }%
+}
+
+\NewDocumentCommand{\DemoCodeB}{O{}m}{{%
+ \setlength\parindent\dc@org@parindent
+ \begin{verbsc}{#1}%
+ \begin{tabular}{J{.98\textwidth}}%
+ \dc@codeprefix \\%
+ \typestored{#2}\\%
+ \end{tabular}%
+
+ \begin{tabular}{J{.98\textwidth}}%
+ \dc@resultprefix \\\hline\\[-1ex]%
+ \getstored{#2}\\\hline%
+ \end{tabular}%
+ \end{verbsc}%
+}}
+
+\NewDocumentCommand{\TabbedDemoCodeB}{O{}m}{{%
+ \setlength\parindent\dc@org@parindent
+ \begin{verbsc}{#1}%
+ \arrayrulecolor{gray}
+ \begin{tabular}{J{.49\textwidth}@{}J{.49\textwidth}}%
+ \dc@codeprefix & \dc@resultprefix\\\hline\\[-1ex]%
+ \typestored{#2} & \getstored{#2}\\\hline%
+ \end{tabular}%
+ \end{verbsc}%
+}}
+
+
+\NewDocumentCommand{\DisplayCode}{O{}m}{{%
+ \begin{verbsc}{#1}%
+ \vspace*{0.5ex}
+ \begin{minipage}{1\textwidth}\dc@codeprefix \\
+ \typestored{#2}%
+ \end{minipage}%
+ \\[1.5ex]%
+ \end{verbsc}%
+}}
+
+\NewDocumentCommand{\DemoCode}{O{}mO{1ex}}{{%
+ \begin{verbsc}{#1}%
+ \vspace*{1ex}
+ \begin{minipage}{1\textwidth}\dc@codeprefix \\
+ \typestored{#2}%
+ \end{minipage}%
+ \\[3ex]
+ \begin{minipage}{1\textwidth}%
+ \dc@resultprefix \\[-1.5ex]%
+ \rule{\textwidth}{0.2pt}\vspace*{0.75ex}%
+ \setlength\parindent\dc@demo@parindent%
+
+ \getstored{#2}%
+ \end{minipage}%
+ \\[#3]%
+ \rule{1\textwidth}{0.2pt}%\vspace*{0.25ex}
+ \end{verbsc}%
+}}
+
+\NewDocumentCommand{\TabbedDemoCode}{O{}mO{1ex}}{{%
+ \begin{verbsc}{#1}%
+ \begin{minipage}{.5\textwidth}%
+ \dc@codeprefix%
+ \end{minipage}%
+ \begin{minipage}{.5\textwidth}%
+ \dc@resultprefix%
+ \end{minipage}\\[-1.5ex]%
+ \rule{\textwidth}{0.2pt}\vspace*{1ex}%
+
+ \begin{minipage}{.5\textwidth}\vspace*{2ex}%
+ \typestored{#2}\vspace*{1.5ex}%
+ \end{minipage}%
+ \begin{minipage}{.5\textwidth}%
+ \setlength\parindent\dc@demo@parindent%
+ \getstored{#2}%
+ \end{minipage}%
+ \\[#3]%
+ \rule{1\textwidth}{0.2pt}%\vspace*{0.5ex}
+ \end{verbsc}%
+}}
+%%%
+%%% Using scontents package !!!!
+%%%
+
+
+%%%
+%%% from https://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings#Encoding_issue
+\lstset{literate=
+ {á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1
+ {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1
+ {à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1
+ {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1
+ {ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1
+ {Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1
+ {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1
+ {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1
+ {ã}{{\~{a}}}1 {õ}{{\~{o}}}1
+ {Ã}{{\~{A}}}1 {Õ}{{\~{O}}}1
+ {ý}{{\'{y}}}1 {Ý}{{\'{Y}}}1 {ÿ}{{\"{y}}}1 {Ÿ}{{\"{Y}}}1
+ {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1
+ {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1
+ {€}{{\EUR}}1 {£}{{\pounds}}1
+}
+
+\endinput
diff --git a/macros/latex/contrib/democodetools/latex/democodetools.sty b/macros/latex/contrib/democodetools/latex/democodetools.sty
new file mode 100644
index 0000000000..1360cd7fc6
--- /dev/null
+++ b/macros/latex/contrib/democodetools/latex/democodetools.sty
@@ -0,0 +1,340 @@
+%%%==============================================================================
+%% Copyright 2022 by Alceu Frigeri
+%%
+%%
+%% 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
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status “maintained”.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version 1.0beta (2022/09/01)
+%%
+%%
+%% This work consists of the files
+%%
+%% democodelisting.sty set of macros to typeset and demonstrate LaTeX code
+%% democodetools.sty set of macros to document LaTeX packages
+%%
+%% README.md quick introduction
+%%
+%% democodetools.tex LaTeX documentation
+%% democodetools.pdf documentation in PDF form
+%%
+%%%==============================================================================
+\NeedsTeXFormat{LaTeX2e}[2022/06/01]
+\def\tc@tmp@packname{democodetools}
+\def\tc@tmp@altpackname{democodetools}
+\def\tc@tmp@packdesc{Demo Code Tools}
+\def\tc@tmp@packdate{2022/09/01}
+\def\tc@tmp@packversion{1.0beta}
+\let\@exp\expandafter
+\@exp\edef\csname\tc@tmp@altpackname version\endcsname{\tc@tmp@packversion}
+\@exp\@exp\@exp\ProvidesPackage\@exp\@exp\@exp{\@exp\tc@tmp@packname\@exp}\@exp[\tc@tmp@packdate\space v\tc@tmp@packversion\space\tc@tmp@packdesc]
+
+\RequirePackage{democodelisting}
+
+
+
+
+\setdclisting{settexcs2={Macro,Arg,xarg,oarg,marg,parg,Key,Keylst,DescribeMacro,DescribeKey,DescribeValue,DescribeOption,DescribeArg},setkeywd2={Envs,Macros,Args,Syntax,Keys,Values,Options}}
+
+
+\def\dc@keyvaluestr{Value}
+\def\dc@keyvaluemeanstr{Meaning}
+\def\dc@keydefaultstr{Default}
+\def\dc@csfontsize{\small}
+
+
+\NewDocumentCommand{\MarginNote}{+m}{\marginpar{{\scriptsize\hfill#1}}}
+
+
+%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+\DeclareDocumentCommand{\Meta}{m}{\ensuremath\langle#1\ensuremath\rangle}
+
+%%%
+%%% In text arg
+%%%
+\gdef\dc@ArgHack{}
+\NewDocumentCommand{\dc@arg}{st+O{Code}O{}mmm}{{\MetaFmt[#3]{\dc@ArgHack#5\csname #4\endcsname{{\IfBooleanT{#1}{\bfseries}\IfBooleanTF{#2}{#6}{\detokenize{#6}}}}#7}}\gdef\dc@ArgHack{\,}}
+\NewDocumentCommand{\oarg}{O{Meta}m}{\dc@arg+[Oarg][#1]{[}{#2}{]}}
+\NewDocumentCommand{\marg}{O{Meta}m}{\dc@arg+[Marg][#1]{\{}{#2}{\}}}
+\NewDocumentCommand{\parg}{O{Meta}m}{\dc@arg+[Parg][#1]{(}{#2}{)}}
+\NewDocumentCommand{\xarg}{O{Meta}m}{\dc@arg+[Xarg][#1]{<}{#2}{>}}
+\NewDocumentCommand{\Arg}{m}{\def\dc@ArgHack{}\dc@arg+[Marg][Meta]{}{#1}{}}
+
+\NewDocumentCommand{\dc@x}{O{}O{}m}{#1\dc@arg+[#2][]{}{#3}{}}% single mandatory value => \dc@arg
+\NewDocumentCommand{\dc@xhack}{O{}m}{\dc@x[\dc@XHack][#1]{#2}\def\dc@XHack{\,, }}% single mandatory value => \dc@arg
+\NewDocumentCommand{\dc@xlst}{O{}O{}m}{\gdef\dc@ArgHack{}\def\dc@XHack{}\forcsvlist{\dc@xhack[#2]}{#3}\ifblank{#1}{}{\hfill\dc@keydefaultstr:~{\bfseries\Key{#1}}}}%single KEY... LIST of ValueS... default Value (if any)
+
+
+\NewDocumentCommand{\Key}{O{}m}{\dc@x[#1][Value]{#2}}
+\NewDocumentCommand{\Keylst}{O{}m}{\dc@xlst[#1][Value]{#2}}
+
+\NewDocumentCommand{\KeyUse}{mm}{\Key{#1}\space $=$ \Meta{#2}}
+
+
+\NewDocumentCommand{\Env}{O{}m}{\dc@x[#1][Env]{#2}}
+\NewDocumentCommand{\Envlst}{O{}m}{\dc@xlst[#1][Env]{#2}}
+
+\NewDocumentCommand{\Pack}{O{}m}{\dc@x[#1][Pack]{#2}}
+\NewDocumentCommand{\Packlst}{O{}m}{\dc@xlst[#1][Pack]{#2}}
+
+\NewDocumentCommand{\Value}{O{}m}{\dc@x[#1][Value]{#2}}
+\NewDocumentCommand{\Valuelst}{O{}m}{\dc@xlst[#1][Value]{#2}}
+
+\NewDocumentCommand{\Option}{O{}m}{\dc@x[#1][Option]{#2}}
+\NewDocumentCommand{\Optionlst}{O{}m}{\dc@xlst[#1][Option]{#2}}
+
+
+%%%
+%%% In text macro
+%%%
+\NewDocumentCommand{\Macro}{t!mD<>{}O{}m}{{\MetaFmt[Code]{\expandafter\zap@space\detokenize{#2#3} \@empty}}\IfBooleanTF{#1}{#5}{\gdef\dc@ArgHack{\,}\forcsvlist{\oarg}{#4}\forcsvlist{\marg}{#5}}}%
+
+
+\NewDocumentCommand{\dc@Describe}{st+O{Key}O{Meta}m}{%
+ \IfBooleanTF{#2}%
+ {\item[{\dc@arg+[#3][#4]{}{#5}{}}]}%
+ {\item[]~\hspace{-0.6675em}\IfBooleanTF{#1}%
+ {\dc@margincode*+[#3]{{\dc@arg+[#3][#4]{}{#5}{}}}}%
+ {\dc@margincode+[#3]{{\dc@arg+[#3][#4]{}{#5}{}}}}}%
+}%
+
+\NewDocumentCommand{\DescribeArg}{st+O{Key}m}{%
+ \IfBooleanTF{#2}%
+ {\dc@Describe+[#3][Meta]{#4}}%
+ {\IfBooleanTF{#1}%
+ {\dc@Describe*[#3][Meta]{#4}}%
+ {\dc@Describe[#3][Meta]{#4}}}%
+}%
+\NewDocumentCommand{\DescribeKey}{st+O{Key}m}{%
+ \IfBooleanTF{#2}%
+ {\dc@Describe+[#3][]{#4}}%
+ {\IfBooleanTF{#1}%
+ {\dc@Describe*[#3][]{#4}}%
+ {\dc@Describe[#3][]{#4}}}%
+}%
+\let\DescribeValue\DescribeKey
+\let\DescribeOption\DescribeKey
+\let\DescribePackage\DescribeKey
+
+\NewDocumentCommand{\DescribeMacro}{st!t+mO{}m}{%
+ \IfBooleanTF{#3}%
+ {\item[{\Macro{#4}{}}]}%
+ {\item[]~\hspace{-0.6675em}\IfBooleanTF{#1}%
+ {\dc@margincode*{#4}}%
+ {\dc@margincode{#4}}}\IfBooleanTF{#2}{{\Macro!{}[]{#6}}}{{\Macro{}[#5]{#6}}}%
+}%
+
+\SetEnumitemKey{marginlst}{leftmargin=0mm,labelindent=0mm,listparindent=0mm,labelwidth=0mm,labelsep=0mm}
+\SetEnumitemKey{intextlst}{leftmargin=7.5mm,labelindent=0mm,listparindent=0mm,labelwidth=20mm,labelsep=2.5mm}
+
+\NewDocumentCommand{\dc@margincode}{st+O{Code}m}{\ifvmode\leavevmode\else\fi{\marginpar{\raggedleft\MetaFmt[#3]{\IfBooleanT{#1}{\bfseries}\vspace{-1.35ex}\IfBooleanTF{#2}{#4}{\expandafter\zap@space\detokenize{#4} \@empty}\vspace{0.3ex}}}}}
+
+\NewDocumentEnvironment{Macros}{m}{%
+ \ifvmode\vspace{1ex}\leavevmode\else\fi{\marginpar{\vspace*{-1.755ex}~\color{gray}\hrule\vspace{0.3ex}}\forcsvlist\dc@margincode{#1}\marginpar{\vspace{-1.1ex}~\color{gray}\hrule}}%
+ }{}
+ \NewDocumentEnvironment{Envs}{m}{\begin{Macros}{#1}}{\end{Macros}}%
+
+\NewDocumentEnvironment{Syntax}{}{\begingroup\setlength{\parindent}{0pt}\obeylines\hspace{-0.382em}\dc@csfontsize}{\endgroup}
+
+\NewDocumentEnvironment{Args}{}{\begin{description}[nosep,marginlst]\vspace{0.5ex}}{\end{description}}
+\NewDocumentEnvironment{Args+}{}{\begin{description}[nosep,intextlst]\vspace{0.5ex}}{\end{description}}
+\NewDocumentEnvironment{Keys}{}{\begin{Args}}{\end{Args}}
+\NewDocumentEnvironment{Keys+}{}{\begin{Args+}}{\end{Args+}}
+\NewDocumentEnvironment{Values}{}{\begin{Args}}{\end{Args}}
+\NewDocumentEnvironment{Values+}{}{\begin{Args+}}{\end{Args+}}
+\NewDocumentEnvironment{Options}{}{\begin{Args}}{\end{Args}}
+\NewDocumentEnvironment{Options+}{}{\begin{Args+}}{\end{Args+}}
+
+
+%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+
+
+\colorlet{dc@ColorCode}{blue!40!black}
+\colorlet{dc@ColorMacro}{blue!40!black}
+\colorlet{dc@ColorMarg}{gray!60!black}
+\colorlet{dc@ColorOarg}{gray!90!black}
+\colorlet{dc@ColorParg}{gray!60!black}
+\colorlet{dc@ColorXarg}{gray!60!black}
+\colorlet{dc@ColorDefaultVal}{blue!60!black}
+\colorlet{dc@ColorDefault}{blue!60!black}
+\colorlet{dc@ColorKeys}{teal!40!black}
+\colorlet{dc@ColorValue}{teal!40!black}
+\colorlet{dc@ColorKey}{teal!40!black}
+\colorlet{dc@ColorOptions}{green!30!black}
+\colorlet{dc@ColorOthers}{green!30!black}
+\colorlet{dc@ColorEnv}{green!30!black}
+\colorlet{dc@ColorPack}{green!30!black}
+
+
+
+\def\dc@metafont{\dc@csfontsize\ttfamily}
+
+\DeclareKeys[MetaFormat]{
+ Oarg.usage = general,
+ Oarg.code = {\def\dc@Metafmt{\color{dc@ColorOarg}\dc@metafont}},
+ %
+ Marg.usage = general,
+ Marg.code = {\def\dc@Metafmt{\color{dc@ColorMarg}\dc@metafont}},
+ %
+ Parg.usage = general,
+ Parg.code = {\def\dc@Metafmt{\color{dc@ColorParg}\dc@metafont}},
+ %
+ Xarg.usage = general,
+ Xarg.code = {\def\dc@Metafmt{\color{dc@ColorXarg}\dc@metafont}},
+ %
+ Macro.usage = general,
+ Macro.code = {\def\dc@Metafmt{\color{dc@ColorCode}\dc@metafont}},
+ %
+ Code.usage = general,
+ Code.code = {\def\dc@Metafmt{\color{dc@ColorCode}\dc@metafont}},
+ %
+ Key.usage = general,
+ Key.code = {\def\dc@Metafmt{\color{dc@ColorKey}\dc@metafont\slshape}},
+ %
+ KeyVal.usage = general,
+ KeyVal.code = {\def\dc@Metafmt{\color{dc@ColorKeyVal}\dc@metafont\slshape}},
+ %
+ Option.usage = general,
+ Option.code = {\def\dc@Metafmt{\color{dc@ColorOptions}\dc@metafont}},
+ %
+ Default.usage = general,
+ Default.code = {\def\dc@Metafmt{\color{dc@ColorDefault}\dc@metafont}},
+ %
+ Value.usage = general,
+ Value.code = {\def\dc@Metafmt{\color{dc@ColorValue}\dc@metafont\slshape}},
+ %
+ Env.usage = general,
+ Env.code = {\def\dc@Metafmt{\color{dc@ColorEnv}\dc@metafont\slshape}},
+ %
+ Pack.usage = general,
+ Pack.code = {\def\dc@Metafmt{\color{dc@ColorPack}\dc@metafont\slshape}},
+ }
+\DeclareUnknownKeyHandler[MetaFormat]{\def\dc@Metafmt{\color{dc@ColorOthers}\ttfamily}}
+
+\NewDocumentCommand{\MetaFmt}{sO{}}{\ifblank{#2}{}{\dc@@MetaFmt{#2}}\IfBooleanT{#1}{\bfseries}\dc@Metafmt}
+\NewDocumentCommand{\dc@@MetaFmt}{m}{\SetKeys[MetaFormat]{#1}}
+\dc@@MetaFmt{Code}
+
+
+\titleformat{\chapter}{\sffamily\bfseries\selectfont\large}{\thechapter}{2ex}{}
+\titleformat{name=\chapter,numberless}{\sffamily\bfseries\selectfont\large\center}{}{0pt}{}
+\titlespacing{\chapter}{0pt}{\tc@chapbefore}{\tc@chapafter}
+
+
+\def\tc@chapbefore{18pt plus 4pt minus 4pt}
+\def\tc@chapafter{12pt plus 3pt minus 3pt}
+\def\tc@secbefore{12pt plus 3pt minus 3pt}
+\def\tc@secafter{8pt plus 2pt minus 2pt}
+
+\titleformat{\section}[hang]{\normalfont\selectfont\large}{\thesection}{.5em}{}
+\titlespacing{\section}{0pt}{\tc@secbefore}{\tc@secafter}
+\titleformat{\subsection}[hang]{\normalfont\sffamily\slshape\selectfont}{\thesubsection}{.5em}{}
+
+\titleformat{name=\section,numberless}[hang]{\normalfont\large\bfseries\scshape\selectfont\center}{}{0pt}{}
+\titlespacing{name=\section,numberless}{0pt}{\tc@secbefore}{\tc@secafter}
+
+
+
+\reversemarginpar
+
+
+\NewDocumentCommand{\dcAuthor}{m}{\def\dc@author{#1}}
+\NewDocumentCommand{\dcDate}{m}{\def\dc@date{#1}}
+\NewDocumentCommand{\dcTitle}{m}{\def\dc@title{#1}}
+
+\NewDocumentCommand\dcMakeTitle{}{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{%
+ \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+ \if@twocolumn
+ \ifnum \col@number=\@ne
+ \dc@maketitle
+ \else
+ \twocolumn[\dc@maketitle]%
+ \fi
+ \else
+ \newpage
+ \global\@topnum\z@ % Prevents figures from going at top of page.
+ \dc@maketitle
+ \fi
+ \thispagestyle{plain}\@thanks
+ \endgroup
+}
+\def\dc@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \let \footnote \thanks
+ {\LARGE \dc@title \par}%
+ \vskip 1.5em%
+ {\large
+ \lineskip .5em%
+ \begin{tabular}[t]{c}%
+ \dc@author
+ \end{tabular}\par}%
+ \vskip 1em%
+ {\large \dc@date}%
+ \end{center}%
+ \par
+ \vskip 1.5em}
+
+\NewDocumentEnvironment{dcAbstract}{}{%
+ \if@twocolumn
+ \section*{\abstractname}%
+ \else
+ \small
+ \begin{center}%
+ {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
+ \end{center}%
+ \quotation
+ \fi}{\if@twocolumn\else\endquotation\fi}
+
+
+
+\def\convertto#1#2{\strip@pt\dimexpr #2*65536/\number\dimexpr 1#1}
+
+\NewDocumentCommand{\bigtab}{}{
+\begin{center}\begin{tabular}
+ {>{\def\colunit{pt}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{mm}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{cm}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{ex}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{em}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{bp}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{dd}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\def\colunit{pc}}l<{\convertto{\rowunit}{1\colunit}}
+% >{\def\colunit{in}}l<{\convertto{\rowunit}{1\colunit}}
+ >{\bfseries}l}
+\multicolumn{1}{l}{\bfseries 1pt} & \multicolumn{1}{l}{\bfseries 1mm} & \multicolumn{1}{l}{\bfseries 1cm} & \multicolumn{1}{l}{\bfseries 1ex} & \multicolumn{1}{l}{\bfseries 1em} & \multicolumn{1}{l}{\bfseries 1bp} & \multicolumn{1}{l}{\bfseries 1dd} & \multicolumn{1}{l}{\bfseries 1pc} & \\%\multicolumn{1}{l}{\bfseries 1in} & \\
+\gdef\rowunit{pt} & & & & & & & & \rowunit\\
+\gdef\rowunit{mm} & & & & & & & & \rowunit\\
+\gdef\rowunit{cm} & & & & & & & & \rowunit\\
+\gdef\rowunit{ex} & & & & & & & & \rowunit\\
+\gdef\rowunit{em} & & & & & & & & \rowunit\\
+\gdef\rowunit{bp} & & & & & & & & \rowunit\\
+\gdef\rowunit{dd} & & & & & & & & \rowunit\\
+\gdef\rowunit{pc} & & & & & & & & \rowunit\\
+%\gdef\rowunit{in} & & & & & & & & & \rowunit\\
+\end{tabular}\end{center}
+}
+
+
+
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/fduthesis/README.md b/macros/latex/contrib/fduthesis/README.md
index 1a43d90b6a..abbb1b2e8e 100644
--- a/macros/latex/contrib/fduthesis/README.md
+++ b/macros/latex/contrib/fduthesis/README.md
@@ -1,7 +1,7 @@
The `fduthesis` Class
=====================
-*LaTeX thesis template for Fudan University, v0.7e*
+*LaTeX thesis template for Fudan University, v0.8*
Overview
--------
@@ -21,7 +21,7 @@ The documentation can be found in
[fduthesis-en.pdf](http://mirrors.ctan.org/macros/latex/contrib/fduthesis/fduthesis-en.pdf)
(in English).
-GitHub re­pos­i­tory: <https://github.com/stone-zeng/fduthesis>.
+GitHub repository: <https://github.com/stone-zeng/fduthesis>.
Installation
------------
@@ -78,4 +78,4 @@ version.
-----
-Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
+Copyright (C) 2017&ndash;2022 by Xiangdong Zeng <xdzeng96@gmail.com>.
diff --git a/macros/latex/contrib/fduthesis/fduthesis-code.pdf b/macros/latex/contrib/fduthesis/fduthesis-code.pdf
index 428fde6903..65a33c4825 100644
--- a/macros/latex/contrib/fduthesis/fduthesis-code.pdf
+++ b/macros/latex/contrib/fduthesis/fduthesis-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/fduthesis/fduthesis-doc.dtx b/macros/latex/contrib/fduthesis/fduthesis-doc.dtx
index 9bc77b7821..15bc16d666 100644
--- a/macros/latex/contrib/fduthesis/fduthesis-doc.dtx
+++ b/macros/latex/contrib/fduthesis/fduthesis-doc.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2017--2020 by Xiangdong Zeng <xdzeng96@gmail.com>
+% Copyright (C) 2017--2022 by Xiangdong Zeng <xdzeng96@gmail.com>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -33,13 +33,13 @@
%
% \subsection{模板文档样式 \cls{fdudoc}}
%
-% \changes{v0.4}{2017/07/29}{在 \cls{ctxdoc} 的基础上完成
-% \cls{fdudoc} 文档类,用于模板手册的编写。}
+% \changes{v0.4}{2017/07/29}{在 \cls{ctxdoc} 的基础上完成 \cls{fdudoc} 文档类,
+% 用于模板手册的编写。}
%
% 编写 \LaTeX{} 宏包文档,传统上会采用 \pkg{doc} 宏包或
% \cls{ltxdoc} 文档类。而对于使用 \LaTeX3 开发的宏包,\cls{l3doc}
% 文档类将是一个更好的选择。\CTeX{} 宏集所附带的
-% \href{https://github.com/CTeX-org/ctex-kit/blob/master/tool/ctxdoc.cls}^^A
+% \href{https://github.com/CTeX-org/ctex-kit/blob/main/tool/ctxdoc.cls}^^A
% {\cls{ctxdoc}} 文档类,则在 \cls{l3doc} 的基础上进行了一些修正,
% 特别是重新实现了 \env{macrocode} 环境,使之能更好地应用于中文
% 文档。\cls{ctxdoc} 的主要功能如下:
@@ -58,18 +58,16 @@
% 进行了整理,添加了相关注释,并做了一些改动:
%
% \begin{itemize}
-% \item 允许模块标记 |<*|\meta{module}|>| 和
-% |</|\meta{module}|>| 出现在行号左侧;
+% \item 允许模块标记 |<*|\meta{module}|>| 和 |</|\meta{module}|>|
+% 出现在行号左侧;
% \item 不再以直立、倾斜字体区分不同嵌套层次的模块;
% \item 调整索引中版本号的排序方式;
% \item 新增一系列实用命令;
% \item 修改文档字体、配色等。
% \end{itemize}
%
-% 本文档样式的核心代码主要来自 \cls{ctxdoc} 文档类 v2.4.10。
-% 在此,本人要向原开发者
-% \href{https://github.com/CTeX-org/}{CTEX.ORG}
-% 团队表示由衷的感谢。
+% 本文档样式的核心代码主要来自 \cls{ctxdoc} 文档类 v2.4.10。在此,本人要向原
+% 开发者 \href{https://github.com/CTeX-org/}{CTEX.ORG} 团队表示感谢。
%
% 以下为 \cls{fdudoc} 的具体实现。
%
@@ -85,21 +83,15 @@
\@namedef{ver@thumbpdf.sty}{9999/99/99}
% \end{macrocode}
%
-% 关闭 \pkg{xparse} 中的命令声明信息。
-% \begin{macrocode}
-\PassOptionsToPackage{log-declarations = false}{xparse}
-% \end{macrocode}
+% \changes{v0.8}{2021/10/21}{[\pkg{fdudoc}] 使用 \pkg{gbt7714} 宏包
+% 处理参考文献。}
%
% 载入宏包和文档类。
% \begin{macrocode}
\LoadClass[a4paper, full]{l3doc}
-\RequirePackage[UTF8, heading, sub3section, fontset = none]{ctex}
-% \end{macrocode}
-% 与 \pkg{hypdoc}(由 \cls{l3doc} 调用)冲突,导致脚注超链接
-% 无法正常跳转。暂时禁用。
-% \begin{macrocode}
-% \RequirePackage[stable, bottom]{footmisc}
-\RequirePackage{%
+\RequirePackage[heading, sub3section, fontset=none]{ctex}
+\RequirePackage[sort&compress]{gbt7714}
+\RequirePackage{
caption,
geometry,
graphicx,
@@ -121,11 +113,10 @@
% \paragraph{继承的代码}
%
% \begin{macro}[int]{\macro@code}
-% 在 \pkg{doc} 宏包中,\env{macrocode} 环境的核心功能由命令
-% \tn{macro@code} 负责实现,而 \tn{xmacro@code} 只用来结束
-% \env{macrocode} 环境。但在 \cls{l3doc} 以及 \cls{ctxdoc} 中,
-% \tn{xmacro\-@\-code} 则基本接管了 \tn{macro@code} 的功能。
-% 后者此时只起辅助作用。
+% 在 \pkg{doc} 宏包中,\env{macrocode} 环境的核心功能由命令 \tn{macro@code}
+% 负责实现,而 \tn{xmacro@code} 只用来结束 \env{macrocode} 环境。但在
+% \cls{l3doc} 以及 \cls{ctxdoc} 中, \tn{xmacro\-@\-code} 则基本接管了
+% \tn{macro@code} 的功能。后者此时只起辅助作用。
% \begin{macrocode}
\def\macro@code{%
% \end{macrocode}
@@ -139,11 +130,10 @@
\partopsep \z@skip
% \if@inlabel\leavevmode\fi
% \end{macrocode}
-% 构建 \env{trivlist} 环境,设置段间距为 0。
-% 之后修改字体,并调节左右间距。\tn{MacroIndent} 会根据代码行数
-% 更新,具体细节见后文。
-% \tn{macro@font} 用来在不同模块见切换字体。本文档类不使用
-% \tn{AltMacroFont},因此这里改用 \tn{MacroFont} 代替。
+% 构建 \env{trivlist} 环境,设置段间距为 0。之后修改字体,并调节左右间距。
+% \tn{MacroIndent} 会根据代码行数更新,具体细节见后文。\tn{macro@font} 用来在
+% 不同模块见切换字体。本文档类不使用 \tn{AltMacroFont},因此这里改用
+% \tn{MacroFont} 代替。
% \begin{macrocode}
\trivlist \parskip \z@ \item[]%
% \macro@font
@@ -151,16 +141,16 @@
\leftskip\@totalleftmargin \advance\leftskip\MacroIndent
\rightskip\z@ \parindent\z@ \parfillskip\@flushglue
% \end{macrocode}
-% 按照 \LaTeXe{} 中 \tn{verbatim} 环境中定义 \tn{par},使得空行
-% 可以原样输出,否则空行会被吃掉。
+% 按照 \LaTeXe{} 中 \tn{verbatim} 环境中定义 \tn{par},使得空行可以原样输出,
+% 否则空行会被吃掉。
% \begin{macrocode}
\blank@linefalse \def\par{\ifblank@line
\leavevmode\fi
\blank@linetrue\@@par
\penalty\interlinepenalty}
% \end{macrocode}
-% \tn{obeylines} 将把回车符 |^^M| 变成 \tn{par}。
-% 接下来将所有特殊符号的类别码设为 12,即“其他”类。
+% \tn{obeylines} 将把回车符 |^^M| 变成 \tn{par}。接下来将所有特殊符号的类别码
+% 设为 12,即“其他”类。
% \begin{macrocode}
\obeylines
\let\do\do@noligs \verbatim@nolig@list
@@ -214,8 +204,8 @@
% \paragraph{代码行处理}
%
% \begin{macro}[int]{\xmacro@code,\sxmacro@code}
-% 重新实现 \env{macrocode} 与 \env{macrocode*} 环境的核心功能,
-% 将对代码逐行处理。后者会将空格显示为“\verb*| |”。
+% 重新实现 \env{macrocode} 与 \env{macrocode*} 环境的核心功能,将对代码逐行
+% 处理。后者会将空格显示为“\verb*| |”。
% \begin{macrocode}
\cs_set_protected_nopar:Npn \xmacro@code
{ \@@_marco_code:w }
@@ -269,8 +259,8 @@
% \end{macrocode}
% \end{macro}
%
-% 设置 \tn{endlinechar} 为 $-1$,表示行末不插入任何字符
-% (实际上相当于在行尾插入注释符 |%|)。
+% 设置 \tn{endlinechar} 为 $-1$,表示行末不插入任何字符(实际上相当于在行尾
+% 插入注释符 |%|)。
% \begin{macrocode}
\group_begin:
\int_set:Nn \tex_endlinechar:D { -1 }
@@ -296,8 +286,7 @@
% \end{macrocode}
%
% \begin{macro}{\@@_make_finish_tag:n,\@@_make_finish_tag:x}
-% \env{macrocode} 结尾标记。展开后变成
-% “\verb*|% \end{#1}^^M|”。
+% \env{macrocode} 结尾标记。展开后变成“\verb*|% \end{#1}^^M|”。
% \begin{macrocode}
\cs_new_protected:Npx \@@_make_finish_tag:n #1
{
@@ -316,8 +305,7 @@
% \end{macro}
%
% \begin{macro}{\@@_macro_code_start:w}
-% 开始代码环境。此命令主要是为了防止 |\begin{macrocode}|
-% 后出现多余的空行。
+% 开始代码环境。此命令主要是为了防止 |\begin{macrocode}| 后出现多余的空行。
% \begin{macrocode}
\cs_new_protected:Npn \@@_macro_code_start:w #1
{
@@ -329,10 +317,9 @@
% \end{macro}
%
% \begin{macro}{\@@_macro_code_read_line:w}
-% 逐行读取代码,并连同行尾回车符一并存入
-% \cs{l_@@_macro_code_line_tl}。如果该行与结束标记
-% “\verb*|% \end{macrocode}^^M|”相同,则结束此
-% \env{macrocode};否则继续处理该行代码。
+% 逐行读取代码,并连同行尾回车符一并存入 \cs{l_@@_macro_code_line_tl}。如果该行
+% 与结束标记“\verb*|% \end{macrocode}^^M|”相同,则结束此 \env{macrocode};
+% 否则继续处理该行代码。
% \begin{macrocode}
\cs_new_protected:Npn \@@_macro_code_read_line:w #1 ^^M
{
@@ -453,8 +440,8 @@
% 处理代码行。该命令的作用如下:
% \begin{itemize}
% \item 正常情况下,等同于 \cs{@@_process_normal_line:};
-% \item 在 \cs{DontCheckModules} 之后,等价于
-% \cs{@@_output_line:},即不检查模块标记,直接输出;
+% \item 在 \cs{DontCheckModules} 之后,等价于 \cs{@@_output_line:},
+% 即不检查模块标记,直接输出;
% \item 在抄录环境中,等价于 \cs{@@_process_verbatim_line:},
% 此时将不再特殊处理以 |%| 开头的代码行。
% \end{itemize}
@@ -467,8 +454,7 @@
% \paragraph{模块标记处理}
%
% \begin{macro}{\CheckModules,\DontCheckModules}
-% 选择是否检查模块标记。这两个命令在 \pkg{doc} 宏包中已有定义,
-% 此处重新声明。
+% 选择是否检查模块标记。这两个命令在 \pkg{doc} 宏包中已有定义,此处重新声明。
% \begin{macrocode}
\DeclareDocumentCommand \CheckModules { }
{
@@ -505,8 +491,7 @@
% \item |@|:名字空间(|%<@@=|\meta{namespace}|>|);
% \item |<|:抄录环境开始(|%<<|\meta{end-tag})。
% \end{itemize}
-% 若不是这几种情况,则为单独一行的独立模块
-% (|%<|\meta{module}|>|)。
+% 若不是这几种情况,则为单独一行的独立模块(|%<|\meta{module}|>|)。
% \begin{macrocode}
\cs_new_protected:Npn \@@_check_module:n #1
{
@@ -543,8 +528,7 @@
\cs_new_protected:Npn \@@_module_star:w #1 > #2 \q_stop
{
% \end{macrocode}
-% 临时变量 \cs{l_@@_tmp_tl} 保存 |<*|\meta{module}|>|
-% 之后的部分,即真实代码。
+% 临时变量 \cs{l_@@_tmp_tl} 保存 |<*|\meta{module}|>| 之后的部分,即真实代码。
% \begin{macrocode}
\tl_set:Nn \l_@@_tmpa_tl {#2}
% \end{macrocode}
@@ -623,8 +607,8 @@
{ \color { at@guard } }
{ \@@_module_angle:n { @ @ = #1 } }
% \end{macrocode}
-% 设置名字空间为 |#1|。\cls{l3doc} 中将名字空间称为
-% “模块”(module),注意不要混淆。
+% 设置名字空间为 |#1|。\cls{l3doc} 中将名字空间称为“模块”(module),
+% 注意不要混淆。
% \begin{macrocode}
\tl_gset:Nn \g__codedoc_module_name_tl {#1}
\@@_output_line:n {#2}
@@ -633,8 +617,8 @@
% \end{macro}
%
% \begin{macro}{\@@_module_verb:w}
-% 抄录开始。|#1|: |<|\meta{end-tag},只有一个 |<|。
-% \meta{end-tag} 的最后会带有一个回车符 |^^M|。
+% 抄录开始。|#1|: |<|\meta{end-tag},只有一个 |<|。\meta{end-tag} 的最后会
+% 带有一个回车符 |^^M|。
% \begin{macrocode}
\cs_new_protected:Npn \@@_module_verb:w #1 \q_stop
{
@@ -730,8 +714,7 @@
% \begin{macro}{\@@_replace_at_at:N,
% \@@_replace_at_at_aux:Nn,\@@_replace_at_at_aux:No}
% 把 |@@| 替换为相应的名字空间。其名称存放在全局变量
-% \cs{g__codedoc_module_name_tl} 中。
-% 它为空时(|%<@@=>|),不做替换。
+% \cs{g__codedoc_module_name_tl} 中。它为空时(|%<@@=>|),不做替换。
% \begin{macrocode}
\cs_new_protected:Npn \@@_replace_at_at:N #1
{
@@ -758,8 +741,7 @@
%
% \begin{macro}{\@@_module_push:n,
% \@@_module_push_aux:nn,\@@_module_push_aux:on}
-% 将模块名压入栈中。此处的栈主要用来处理模块名(包括抄录标记)
-% 之间的超链接。
+% 将模块名压入栈中。此处的栈主要用来处理模块名(包括抄录标记)之间的超链接。
% \begin{macrocode}
\cs_new_protected_nopar:Npn \@@_module_push:n
{ \@@_module_push_aux:on { \int_use:N \c@HD@hypercount } }
@@ -902,8 +884,8 @@
% \end{macro}
% \end{macro}
%
-% 设置色系的增量大小。可选参数 |3| 意味着基色(blue)与
-% 末色(purple)之间将等分为三份。该数字比嵌套最大深度小 1。
+% 设置色系的增量大小。可选参数 |3| 意味着基色(blue)与末色(purple)之间将被
+% 等分为三份。该数字比嵌套最大深度小 1。
% \begin{macrocode}
\resetcolorseries [ 3 ] { guard@series }
% \end{macrocode}
@@ -982,8 +964,8 @@
% \@@_disable_ecglue:,
% \@@_plain_punct_style:}
% \begin{macro}[int]{\meta@font@select}
-% 调整文字间距,以便于让 CJK 字符占的宽度等于西文等宽字体中两个
-% 空格的宽度。需要按编译情况分别定义。
+% 调整文字间距,以便于让 CJK 字符占的宽度等于西文等宽字体中两个空格的宽度。
+% 需要按编译情况分别定义。
% \begin{macrocode}
\sys_if_engine_xetex:TF
{
@@ -1027,10 +1009,10 @@
%
% \begin{environment}{syntax}
% \begin{environment}{fdusyntax}
-% 在 \env{syntax} 和 \env{fdusyntax} 环境前设置若干活动字符。
-% \texttt{\textbar} 用于分隔多个选项,无需倾斜;|<xxx>| 表示选项,
-% |(xxx)| 表示默认选项。原来的括号用宏保存,并且使用直立字体。
-% \env{syntax} 环境另需要额外调整行距、标点样式及字符间距。
+% 在 \env{syntax} 和 \env{fdusyntax} 环境前设置若干活动字符。\texttt{\textbar}
+% 用于分隔多个选项,无需倾斜;|<xxx>| 表示选项,|(xxx)| 表示默认选项。原来的
+% 括号用宏保存,并且使用直立字体。\env{syntax} 环境另需要额外调整行距、标点
+% 样式及字符间距。
% \begin{macrocode}
\AtBeginEnvironment { syntax }
{
@@ -1079,8 +1061,7 @@
% \end{macro}
%
% \begin{variable}{\g_@@_version_date_prop}
-% 存放版本号与对应的修改日期。
-% key = 版本号,value = \{ 开始日期,结束日期 \}。
+% 存放版本号与对应的修改日期。其中键为版本号,值为 |{开始日期,结束日期}|。
% 开始日期与结束日期可以相同。
% \begin{macrocode}
\prop_new:N \g_@@_version_date_prop
@@ -1101,8 +1082,7 @@
{#1} \l_@@_tmpa_tl
{
% \end{macrocode}
-% \cs{l_@@_tmp_tl} 相当于两个参数(开始日期、结束日期),
-% 因此需要提前展开。
+% \cs{l_@@_tmp_tl} 相当于两个参数(开始日期、结束日期),因此需要提前展开。
% \begin{macrocode}
\exp_after:wN
\@@_save_version_date_aux:nnnn \l_@@_tmpa_tl
@@ -1171,8 +1151,8 @@
% \end{macro}
%
% \begin{macro}[int]{\CTEX@versionitem}
-% 版本条目标签。如果版本号不在 \cs{g_@@_version_date_prop} 的
-% key 里面,则利用未定义的 \cs{BOOM} 报错。
+% 版本条目标签。如果版本号不在 \cs{g_@@_version_date_prop} 里面,
+% 则利用未定义的 \cs{BOOM} 报错。
% \begin{macrocode}
\cs_new_protected:Npn \CTEX@versionitem #1 \efill
{
@@ -1214,9 +1194,8 @@
% \end{macro}
%
% \begin{macro}[int]{\HDorg@theglossary}
-% 该命令由 \pkg{hypdoc} 宏包定义,用于存放标准文档类 \cls{book}
-% 中定义的 \tn{theindex} 命令。
-% 此处的补丁将在版本号一行最后加上修改日期。
+% 该命令由 \pkg{hypdoc} 宏包定义,用于存放标准文档类 \cls{book} 中定义的
+% \tn{theindex} 命令。此处的补丁将在版本号一行最后加上修改日期。
% \begin{macrocode}
\ctex_patch_cmd:Nnn \HDorg@theglossary
{ \let \item \@idxitem }
@@ -1362,8 +1341,7 @@
% \end{macro}
%
% \begin{macro}[int]{\HDorg@SpecialEnvIndex}
-% \pkg{hypdoc} 宏包重新定义了 \tn{SpecialEnvIndex} 命令,因此需要
-% 修改内部定义。
+% \pkg{hypdoc} 宏包重新定义了 \tn{SpecialEnvIndex} 命令,因此需要修改内部定义。
% \begin{macrocode}
\ctex_patch_cmd:Nnn \HDorg@SpecialEnvIndex
{ (environment) } { ~ 环境 }
@@ -1372,6 +1350,15 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}[int]{\NAT@citexnum}
+% 将参考文献引用中的 hyphen 改为 en-dash。
+% \begin{macrocode}
+\ctex_patch_cmd:Nnn \NAT@citexnum
+ { - \NAT@penalty }
+ { \textendash \NAT@penalty }
+% \end{macrocode}
+% \end{macro}
+%
% \paragraph{\cls{l3doc} 补丁}
%
% \begin{macrocode}
@@ -1379,7 +1366,7 @@
% \end{macrocode}
%
% \begin{macro}{\list}
-% \cls{l3doc} 会设置列表环境中 \tn{listparindent} |=| \tn{z@},
+% \cls{l3doc} 会在列表环境中设置 \kvopt{\tn{listparindent}}{\tn{z@}},
% 这里将其恢复。
% \begin{macrocode}
\cs_set_eq:NN \list \@@_oldlist:nn
@@ -1396,11 +1383,10 @@
% \end{macro}
%
% \begin{macro}{\@@_function_assemble:}
-% 在 \cls{l3doc} 中,\env{function} 环境里的 \env{syntax} 和
-% \env{descr} 盒子中间存在一段 \tn{med\-skip\-amount} 的距离。
-% 但是如果 \env{syntax} 盒子为空(未使用 \env{syntax} 环境),
-% 就会显得不好看。此时通过把 \tn{medskipamount} 设置为零来修正。
-% 若盒子非空,则把 \tn{parskip} 还回去。
+% 在 \cls{l3doc} 中,\env{function} 环境里的 \env{syntax} 和 \env{descr} 盒子
+% 中间存在一段 \tn{med\-skip\-amount} 的距离。但是如果 \env{syntax} 盒子为空
+% (未使用 \env{syntax} 环境),就会显得不好看。此时通过把 \tn{medskipamount}
+% 设置为零来修正。若盒子非空,则把 \tn{parskip} 还回去。
% \begin{macrocode}
\__fdudoc_preto_cmd:Nn \@@_function_assemble:
{
@@ -1443,7 +1429,7 @@
% \end{macro}
%
% \begin{macro}{\@@_macro_end_style:n}
-% 禁止显示 \env{macro} 环境最后的 “(\emph{End definition for ...})”。
+% 不显示 \env{macro} 环境最后的 “(\emph{End definition for ...})”。
% \begin{macrocode}
\cs_set_eq:NN \@@_macro_end_style:n \use_none:n
% \end{macrocode}
@@ -1482,9 +1468,8 @@
\hbox_set:Nn \l_tmpa_box
{ \@@_print_macroname:nN {#1} #2 }
% \end{macrocode}
-% \tn{marginparwidth} 和 \tn{marginparsep} 分别是边注的宽度及其到
-% 版心的距离,\tn{la\-bel\-sep} 则是编号盒子右端与条目首行文本之间
-% 的距离。
+% \tn{marginparwidth} 和 \tn{marginparsep} 分别是边注的宽度及其到版心的距离,
+% \tn{la\-bel\-sep} 则是编号盒子右端与条目首行文本之间的距离。
% \begin{macrocode}
\dim_set:Nn \l_tmpa_dim
{ \marginparwidth - \labelsep - \marginparsep }
@@ -1562,8 +1547,7 @@
% \end{macro}
%
% \begin{macro}{\@@_special_index_aux:nnnnnnn}
-% 该函数在 \cls{l3doc} 中本来只有 6 个参数。这里增加了一个,用来辅助
-% 排序。
+% 该函数在 \cls{l3doc} 中本来只有 6 个参数。这里增加了一个,用来辅助排序。
% \begin{arguments}
% \item 键(即宏名称字符串,用来排序)
% \item 宏名称
@@ -1687,9 +1671,9 @@
\section{\indexname}%
\textit{意大利体的数字表示对应索引项出现的页码;
带下划线的数字表示定义对应索引项的代码行号;
- 其他则表示使用对应索引项的代码行号.}}
+ 其他则表示使用对应索引项的代码行号。}}
\def\IndexLayout{%
- \newgeometry{%
+ \newgeometry{
left = 0.85 in,
right = 0.85 in,
top = 1.25 in,
@@ -1702,8 +1686,7 @@
% \end{macro}
%
% \begin{macro}{\usage}
-% 控制“描述对应索引项的页码”样式。在 \pkg{doc} 宏包中的定义为
-% \tn{textit}。
+% 控制“描述对应索引项的页码”样式。在 \pkg{doc} 宏包中的定义为\tn{textit}。
% \begin{macrocode}
% \def\usage#1{\textsf{#1}}
% \end{macrocode}
@@ -1717,55 +1700,63 @@
% \end{macrocode}
% \end{macro}
%
+% 参考文献使用国标的顺序编码制。
+% \begin{macrocode}
+\bibliographystyle{gbt7714-numerical}
+% \end{macrocode}
+%
% \changes{v0.7c}{2019/02/08}{修改宏包手册主要字体。}
%
% 西文字体。为兼容 macOS,系统字体需使用字体名,而 \TeXLive{}
% 中的字体需使用文件名。
% \begin{macrocode}
-\setmainfont{LibertinusSerif}[%
+\setmainfont{LibertinusSerif}[
Extension = .otf,
UprightFont = *-Regular,
BoldFont = *-Bold,
ItalicFont = *-Italic,
BoldItalicFont = *-BoldItalic,
Scale = 1.1]
-\setsansfont{IBMPlexSansCondensed}[%
+\setsansfont{IBMPlexSansCondensed}[
Extension = .otf,
UprightFont = *-Regular,
BoldFont = *-Bold,
ItalicFont = *-Italic,
BoldItalicFont = *-BoldItalic]
-\setmonofont{Iosevka Slab}[%
+\setmonofont{Iosevka Slab}[
UprightFont = * Light,
BoldFont = * Semibold,
+ ItalicFont = * Light Oblique,
+ BoldItalicFont = * Semibold Oblique,
Scale = MatchLowercase]
\setmathfont{LibertinusMath-Regular.otf}
% \end{macrocode}
%
% 中文字体。
% \begin{macrocode}
-\setCJKmainfont{Source Han Serif SC}[%
+\setCJKmainfont{Source Han Serif SC}[
ItalicFont = FZKai-Z03,
- RawFeature = +fwid]
-\setCJKsansfont{Source Han Sans SC}[%
+ CharacterWidth = Full]
+\setCJKsansfont{Source Han Sans SC}[
ItalicFont = *,
- RawFeature = +fwid]
-\setCJKmonofont{Source Han Sans SC}[%
+ CharacterWidth = Full]
+\setCJKmonofont{Source Han Sans SC}[
UprightFont = * Normal,
BoldFont = * Bold,
AutoFakeSlant = 0.1763, % = tan(10 deg)
Scale = 0.8903,
- RawFeature = +fwid]
+ CharacterWidth = Full]
% \end{macrocode}
%
% 版式排版格式。
% \begin{macrocode}
-\ctexset{%
+\ctexset{
section/name = {第,节},
section/format+ = \raggedright,
paragraph/runin = false,
paragraph/numbering = false,
punct = kaiming}
+\xeCJKsetwidth{·}{0.5em}
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{3}
\pagestyle{plain}
@@ -1773,19 +1764,15 @@
%
% 单位设置(\pkg{siunitx} 宏包)。
% \begin{macrocode}
-\sisetup{%
- number-math-rm = \ensuremath,
- inter-unit-product = \ensuremath{{}\cdot{}},
- group-digits = true,
- group-minimum-digits = 4,
- group-separator = \text{~},
- range-phrase = \symbol{"FF5E},
- separate-uncertainty = true}
+\sisetup{
+ inter-unit-product = \ensuremath{{}\cdot{}},
+ range-phrase = {--},
+ uncertainty-mode = separate}
% \end{macrocode}
%
% 超链接设置(\pkg{hyperref} 宏包)。
% \begin{macrocode}
-\hypersetup{%
+\hypersetup{
bookmarksdepth = 4,
bookmarksnumbered = true,
colorlinks = true,
@@ -1796,10 +1783,15 @@
%
% 浮动体标题设置(\pkg{caption} 宏包)。
% \begin{macrocode}
-\captionsetup{labelsep = quad, labelfont+ = bf}
+\captionsetup{labelsep=quad, font+=bf}
+% \end{macrocode}
+%
+% 居中且自动延伸的列格式(利用 \pkg{tabularx} 宏包的 |X| 格式扩展)。
+% \begin{macrocode}
+\newcolumntype{C}{>{\centering\arraybackslash}X}
% \end{macrocode}
%
-% 设置标准列表环境样式。
+% 设置标准列表环境样式(\pkg{enumitem} 宏包)。
% \begin{macrocode}
\setlist{noitemsep, topsep=\smallskipamount}
\setlist[1]{labelindent=\parindent}
@@ -1808,29 +1800,33 @@
% \end{macrocode}
%
% \begin{environment}{optdesc}
-% 用于描述各选项。设置条目间距为 \tn{marginparsep},与
-% \cls{l3doc} 一致。
+% 用于描述各选项。设置条目间距为 \tn{marginparsep},与 \cls{l3doc} 一致。
% \begin{macrocode}
\newlist{optdesc}{description}{3}
-\setlist[optdesc]{%
- font=\mdseries\small\ttfamily, align=right,
- listparindent=\parindent,
- labelsep=\marginparsep, labelindent=-\marginparsep,
- leftmargin=*}
+\setlist[optdesc]{
+ font = \mdseries\small\ttfamily,
+ align = right,
+ listparindent = \parindent,
+ labelsep = \marginparsep,
+ labelindent = -\marginparsep,
+ leftmargin = *}
% \end{macrocode}
% \end{environment}
%
-% \begin{environment}{tablenotes}
-% \begin{variable}{tpt@id}
-% 重新定义 \pkg{threeparttable} 包的 \env{tablenotes} 环境,
-% 用于表格的注释。
+%^^A TODO: \begin{environment}{tablenotes}
+% \begin{macro}{tablenotes}
+% \begin{macro}[int]{tpt@id}
+% 重新定义 \pkg{threeparttable} 包的 \env{tablenotes} 环境,用于表格注释。
+% 此处设定为悬挂缩进。
% \begin{macrocode}
\renewlist{tablenotes}{description}{1}
-\setlist[tablenotes]{%
- format=\normalfont\tnote@item, align=right,
- listparindent=\parindent, labelindent=\tabcolsep,
- leftmargin=*, rightmargin=\tabcolsep,
- after=\@noparlisttrue}
+\setlist[tablenotes]{
+ format = \normalfont\itshape\tnote@item,
+ labelwidth = 0.5em,
+ itemindent = 0pt,
+ rightmargin = \tabcolsep,
+ leftmargin = \the\dimexpr\tabcolsep+1em\relax,
+ after = \@noparlisttrue}
\AtBeginEnvironment{tablenotes}{%
\setlength\parindent{2\ccwd}%
\normalfont\footnotesize}
@@ -1839,15 +1835,15 @@
\edef\curr@tpt@id{tpt@\arabic{tpt@id}}}
\newcounter{tpt@id}
% \end{macrocode}
-% \end{variable}
-% \end{environment}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}[int]{\tnote@item,\TPTtagStyle}
% 为 \tn{tnote} 增加超链接。
% \begin{macrocode}
\def\tnote@item#1{%
\Hy@raisedlink{\hyper@anchor{\curr@tpt@id-#1}}#1}
-\def\TPTtagStyle#1{\hyperlink{\curr@tpt@id-#1}{#1}}
+\def\TPTtagStyle#1{\textit{\hyperlink{\curr@tpt@id-#1}{#1}}}
% \end{macrocode}
% \end{macro}
%
@@ -1893,14 +1889,13 @@
%
% \begin{macro}{\exptarget,\rexptarget,\expstar,\rexpstar,
% \__codedoc_typeset_exp:,\__codedoc_typeset_rexp:}
-% 部分命令之后的特殊符号($\symbol{"263A}$ 或 $\symbol{"263B}$),表明其不同用法。
-% 这里的“exp”和“rexp”分别源自 \LaTeX3 中的“expandable”
-% 和“restricted-expandable”。
+% 部分命令之后的特殊符号($^^^^263a$ 或 $^^^^263b$),表明其不同用法。这里的
+% “exp”和“rexp”分别源自 \LaTeX3 中的“expandable”和“restricted-expandable”。
% \begin{macrocode}
\newcommand*\exptarget{\Hy@raisedlink{\hypertarget{expstar}{}}}
\newcommand*\rexptarget{\Hy@raisedlink{\hypertarget{rexpstar}{}}}
-\newcommand*\expstar{\hyperlink{expstar}{$\symbol{"263B}$}}
-\newcommand*\rexpstar{\hyperlink{rexpstar}{$\symbol{"263A}$}}
+\newcommand*\expstar{\hyperlink{expstar}{$^^^^263b$}}
+\newcommand*\rexpstar{\hyperlink{rexpstar}{$^^^^263a$}}
\ExplSyntaxOn
\cs_set_eq:NN \__codedoc_typeset_exp: \expstar
\cs_set_eq:NN \__codedoc_typeset_rexp: \rexpstar
@@ -1947,7 +1942,7 @@
% \begin{macro}{\syntaxopt,\defaultval}
% \begin{macro}[int]{\syntaxopt@aux,\defaultval@aux}
% \env{syntax} 中的选项及命令选项。
-% |aux| 结尾的两个命令用于定义利用 |<>| 和 |()| 的简写形式。
+% |@aux| 结尾的两个命令用于定义利用 |<>| 和 |()| 的简写形式。
% \begin{macrocode}
\def\syntaxopt#1{\textit{#1}}
\def\defaultval#1{\textbf{\textup{#1}}}
@@ -1969,13 +1964,11 @@
% \end{macro}
%
% \begin{environment}{arguments}
-% 放在 \env{macro} 环境中,用于描述对应命令的参数。
-% \cls{l3doc} 中的定义 \opt{labelsep} 设置不太合理,会使标签被覆盖,
-% 这里重新定义。
+% 放在 \env{macro} 环境中,用于描述对应命令的参数。\cls{l3doc} 中的定义
+% \opt{labelsep} 设置不太合理,会使标签被覆盖,这里重新定义。
% \begin{macrocode}
\DeclareDocumentEnvironment{arguments}{}
- {\enumerate[%
- label={\texttt{\#\arabic*:~}}, labelsep=0pt, nolistsep]}%
+ {\enumerate[label={\texttt{\#\arabic*:~}}, labelsep=0pt, nolistsep]}
{\endenumerate}
% \end{macrocode}
% \end{environment}
@@ -1998,7 +1991,6 @@
\def\TeXLive{\TeX\ Live}
\def\MiKTeX{\hologo{MiKTeX}}
\def\BibTeX{\hologo{BibTeX}}
-\def\BibTeX{\hologo{BibTeX}}
\def\biber{\hologo{biber}}
% \end{macrocode}
% 该定义来自 \file{pgfmanual-en-macros.tex}。
@@ -2040,19 +2032,12 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\scite}
-% 位于上标的文献引用。
-% \begin{macrocode}
-\newcommand*\scite[1]{\textsuperscript{\cite{#1}}}
-% \end{macrocode}
-% \end{macro}
-%
% \paragraph{示例代码环境}
%
% \pkg{listings} 宏包中连字符 |-| 原本以数学模式输出,此处改为普通文本。
% 见 \url{https://tex.stackexchange.com/a/33188}。
% \begin{macrocode}
-\lst@CCPutMacro\lst@ProcessOther {"2D}{\lst@ttfamily{-{}}{-{}}}
+\lst@CCPutMacro\lst@ProcessOther{"2D}{\lst@ttfamily{-{}}{-{}}}
\@empty\z@\@empty
% \end{macrocode}
%
@@ -2062,68 +2047,64 @@
% 定义几种代码样式。
% \begin{macro}[int]{style@base}
% \begin{macrocode}
-\lstdefinestyle{style@base}
- {
- basewidth = 0.5 em,
- gobble = 3,
- lineskip = 2 pt,
- frame = l,
- framerule = 1 pt,
- framesep = 0 pt,
- escapeinside = {(*}{*)},
- basicstyle = \small\ttfamily\color{MaterialGrey900},
- keywordstyle = \bfseries\color{MaterialIndigo},
- commentstyle = \itshape\color{MaterialGrey600},
- stringstyle = \color{MaterialRed},
- backgroundcolor = \color{MaterialGrey50}
- }
+\lstdefinestyle{style@base}{
+ basewidth = 0.5 em,
+ gobble = 3,
+ lineskip = 2 pt,
+ frame = l,
+ framerule = 1 pt,
+ framesep = 0 pt,
+ escapeinside = {(*}{*)},
+ basicstyle = \small\ttfamily\color{MaterialGrey900},
+ keywordstyle = \bfseries\color{MaterialIndigo},
+ commentstyle = \itshape\color{MaterialGrey600},
+ stringstyle = \color{MaterialRed},
+ backgroundcolor = \color{MaterialGrey50}
+}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[int]{style@shell}
% \begin{macrocode}
-\lstdefinestyle{style@shell}
- {
- style = style@base,
- rulecolor = \color{MaterialPink},
- language = bash,
- alsoletter = {-},
- emphstyle = \color{MaterialGreen800}
- }
+\lstdefinestyle{style@shell}{
+ style = style@base,
+ rulecolor = \color{MaterialPink},
+ language = bash,
+ alsoletter = {-},
+ emphstyle = \color{MaterialGreen800}
+}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[int]{style@latex}
% \begin{macrocode}
-\lstdefinestyle{style@latex}
- {
- style = style@base,
- rulecolor = \color{MaterialIndigo},
- language = [LaTeX]TeX,
- alsoletter = {*, -},
- texcsstyle = *\color{MaterialDeepOrange},
- emphstyle = [1]\color{MaterialGreen800},
- emphstyle = [2]\color{MaterialTeal}
- }
+\lstdefinestyle{style@latex}{
+ style = style@base,
+ rulecolor = \color{MaterialIndigo},
+ language = [LaTeX]TeX,
+ alsoletter = {*, -},
+ texcsstyle = *\color{MaterialDeepOrange},
+ emphstyle = [1]\color{MaterialGreen800},
+ emphstyle = [2]\color{MaterialTeal}
+}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[int]{style@syntax}
% \begin{macrocode}
-\lstdefinestyle{style@syntax}
- {
- basewidth = 0.5 em,
- gobble = 6,
- escapeinside = {(*}{*)},
- language = [LaTeX]TeX,
- alsoletter = {*, -},
- basicstyle = \footnotesize\ttfamily\color{MaterialGrey900},
- keywordstyle = \bfseries\color{MaterialIndigo},
- commentstyle = \itshape\color{MaterialGrey600},
- texcsstyle = *\color{MaterialDeepOrange},
- emphstyle = [1]\color{MaterialGreen800},
- emphstyle = [2]\color{MaterialTeal}
- }
+\lstdefinestyle{style@syntax}{
+ basewidth = 0.5 em,
+ gobble = 6,
+ escapeinside = {(*}{*)},
+ language = [LaTeX]TeX,
+ alsoletter = {*, -},
+ basicstyle = \footnotesize\ttfamily\color{MaterialGrey900},
+ keywordstyle = \bfseries\color{MaterialIndigo},
+ commentstyle = \itshape\color{MaterialGrey600},
+ texcsstyle = *\color{MaterialDeepOrange},
+ emphstyle = [1]\color{MaterialGreen800},
+ emphstyle = [2]\color{MaterialTeal}
+}
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/fduthesis/fduthesis-en.pdf b/macros/latex/contrib/fduthesis/fduthesis-en.pdf
index 2ee02030d2..72fa0e8381 100644
--- a/macros/latex/contrib/fduthesis/fduthesis-en.pdf
+++ b/macros/latex/contrib/fduthesis/fduthesis-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/fduthesis/fduthesis-logo.dtx b/macros/latex/contrib/fduthesis/fduthesis-logo.dtx
index fc8735f1a2..67bfae521e 100644
--- a/macros/latex/contrib/fduthesis/fduthesis-logo.dtx
+++ b/macros/latex/contrib/fduthesis/fduthesis-logo.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2017--2020 by Xiangdong Zeng <xdzeng96@gmail.com>
+% Copyright (C) 2017--2022 by Xiangdong Zeng <xdzeng96@gmail.com>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -44,7 +44,6 @@
%<*logo>
\RequirePackage { luatex85 }
\RequirePackage { xcolor, tikz }
-\RequirePackage { xparse }
% \end{macrocode}
%
% \subsubsection{用户接口}
diff --git a/macros/latex/contrib/fduthesis/fduthesis.dtx b/macros/latex/contrib/fduthesis/fduthesis.dtx
index 6f536377da..c6439e661b 100644
--- a/macros/latex/contrib/fduthesis/fduthesis.dtx
+++ b/macros/latex/contrib/fduthesis/fduthesis.dtx
@@ -2,7 +2,7 @@
% !TeX program = XeLaTeX
% !TeX encoding = UTF-8
%
-% Copyright (C) 2017--2020 by Xiangdong Zeng <xdzeng96@gmail.com>
+% Copyright (C) 2017--2022 by Xiangdong Zeng <xdzeng96@gmail.com>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -21,7 +21,6 @@
% This work consists of the files fduthesis.dtx,
% fduthesis-doc.dtx,
% fduthesis-logo.dtx,
-% fduthesis-template.tex,
% and the derived files fduthesis.ins,
% fduthesis.cls,
% fduthesis-en.cls,
@@ -47,7 +46,7 @@
The `fduthesis` Class
=====================
-*LaTeX thesis template for Fudan University, v0.7e*
+*LaTeX thesis template for Fudan University, v0.8*
Overview
--------
@@ -67,7 +66,7 @@ The documentation can be found in
[fduthesis-en.pdf](http://mirrors.ctan.org/macros/latex/contrib/fduthesis/fduthesis-en.pdf)
(in English).
-GitHub re­pos­i­tory: <https://github.com/stone-zeng/fduthesis>.
+GitHub repository: <https://github.com/stone-zeng/fduthesis>.
Installation
------------
@@ -124,7 +123,7 @@ version.
-----
-Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
+Copyright (C) 2017&ndash;2022 by Xiangdong Zeng <xdzeng96@gmail.com>.
%</readme>
%
%<*internal>
@@ -136,13 +135,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%</internal>
%
%<*install>
-\input l3docstrip.tex
+\input docstrip.tex
\keepsilent
\askforoverwritefalse
\preamble
- Copyright (C) 2017--2020 by Xiangdong Zeng <xdzeng96@gmail.com>
+ Copyright (C) 2017--2022 by Xiangdong Zeng <xdzeng96@gmail.com>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -161,7 +160,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
This work consists of the files fduthesis.dtx,
fduthesis-doc.dtx,
fduthesis-logo.dtx,
- fduthesis-template.tex,
and the derived files fduthesis.ins,
fduthesis.cls,
fduthesis-en.cls,
@@ -194,12 +192,10 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\from{\jobname-logo.dtx}{ex-logo}}
\file{\jobname-cover.tex} {\from{\jobname.dtx}{cover}
\from{\jobname-logo.dtx}{cover}}
-%</install>
%<*internal>
\usedir{source/latex/fduthesis}
\file{\jobname.ins} {\from{\jobname.dtx}{install}}
%</internal>
-%<*install>
\usedir{doc/latex/fduthesis}
\nopreamble\nopostamble
\file{README.md} {\from{\jobname.dtx}{readme}}
@@ -233,10 +229,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\fi
%</internal>
%
-%<class|class-en|doc|logo>\NeedsTeXFormat{LaTeX2e}
-%<class|class-en|doc|logo>\RequirePackage{expl3}
+%<class|class-en|doc|logo>\NeedsTeXFormat{LaTeX2e}[2020/10/01]
%<*!(driver|install|ex-logo|cover)>
-%<!readme>\GetIdInfo $Id: fduthesis.dtx 0.7e 2020-08-30 12:00:00Z Xiangdong Zeng <xdzeng96@gmail.com> $
+%<!readme>\GetIdInfo $Id: fduthesis.dtx 0.8 2022-09-04 12:00:00Z Xiangdong Zeng <xdzeng96@gmail.com> $
%<class> {Thesis template for Fudan University}
%<class>\ProvidesExplClass{\ExplFileName}
%<class-en> {Thesis template for Fudan University (English version)}
@@ -252,7 +247,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%<*driver>
% \PassOptionsToPackage{showframe}{geometry}
\documentclass{fdudoc}
-\usepackage{multirow,xeCJKfntef,xpinyin}
+\usepackage{xeCJKfntef}
\hypersetup{
pdftitle = {fduthesis: 复旦大学论文模板},
pdfauthor = {曾祥东}}
@@ -274,16 +269,15 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \def\FSFW{{\xeCJKsetup{PunctStyle=banjiao}.}}
%^^A!
-\title{\textcolor{MaterialIndigo800}{%
- \textbf{fduthesis: 复旦大学论文\xpinyin[font=\sffamily,format=\color{MaterialIndigo800}]{模}{mu2}板}}}
+\title{\textcolor{MaterialIndigo800}{\textbf{fduthesis: 复旦大学论文模板}}}
\author{曾祥东}
-\date{2020/08/30\quad v0.7e%
+\date{2022/09/04\quad v0.8%
\thanks{\url{https://github.com/stone-zeng/fduthesis}.}}
%^^A! \title{\textcolor{MaterialIndigo800}{%
%^^A! \textbf{The \textsf{fduthesis} Class \\
%^^A! \LaTeX{} Thesis Template for Fudan University}}}
%^^A! \author{Xiangdong Zeng}
-%^^A! \date{2020/08/30\quad v0.7e%
+%^^A! \date{2022/09/04\quad v0.8%
%^^A! \thanks{\url{https://github.com/stone-zeng/fduthesis}.}}
%^^A!
@@ -324,24 +318,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \changes{v0.7b}{2018/04/29}{支持 \TeXLive{} 2018。}
% \changes{v0.7b}{2018/05/06}{将校名、校徽图片添加至发行版。}
%
-% \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 \~}
-%
%^^A 禁止使用 " 符号作为抄录文本缩略符
% \DeleteShortVerb\"
%^^A! \DeleteShortVerb\"
@@ -389,28 +365,21 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \section{Introduction}
%^^A!
%
-% 目前,在网上可以找到的复旦大学 \LaTeX{} 论文模板主要有以下这些:
+% 本模板编写之初,可以找到的复旦大学 \LaTeX{} 论文模板有以下这些:
% \begin{itemize}
-% \item 数学科学学院 2001 级的何力同学和李湛同学在 2005 年根据
-% 学校要求所设计的 \cls{毕业论文格式 tex04 版},以及 2008 年
-% 张越同学修改之后的 \cls{毕业论文格式 tex08 版},这是专为
-% 数院本科生撰写毕业论文而设计的
-% \scite{数院毕业论文格式,数院毕业论文格式更新};
-% \item Pandoxie 编写的 \cls{FDU-Thesis-Latex}
-% \scite{pandoxie2014fduthesislatex},基本满足了博士(硕士)
-% 毕业论文格式要求,使用人数较多;
-% \item richarddzh 编写的硕士论文模板 \cls{fudan-thesis}
-% \scite{richard2016fudanthesis}。
+% \item 数学科学学院的本科毕业论文模版 \cite{数院本科毕业论文写作模板},主要贡献者为 2001 级的
+% 何力同学、李湛同学和 2004 级的张越同学;
+% \item Pandoxie 编写的 \cls{FDU-Thesis-Latex} \cite{pandoxie2014fduthesislatex},基本满足了博士
+% (硕士)毕业论文格式要求,在当时使用人数较多;
+% \item richarddzh 编写的硕士论文模板 \cls{fudan-thesis} \cite{richard2016fudanthesis}。
% \end{itemize}
-% 以上这些模板大都没有经过系统的设计,也鲜有后续维护。相比之下,
-% 清华大学 \scite{thuthesis}、重庆大学 \scite{cquthesis}、
-% 中国科学技术大学 \scite{ustcthesis} 中国科学院大学 \scite{ucasthesis}
-% 以及友校上海交通大学 \scite{sjtuthesis}等,都有成熟、
-% 稳定的解决方案,值得参考。
-%
-% 本模板将借鉴前辈经验,重新设计,并使用 \LaTeX3
-% \scite{source3} 编写,以适应 \TeX{} 技术发展潮流;
-% 同时还将构建一套简洁的接口,方便用户使用。
+% 以上模板大都没有经过系统的设计,也缺乏后续维护。相比之下,清华大学 \cite{thuthesis}、
+% 北京大学 \cite{pkuthss}、重庆大学 \cite{cquthesis}、中国科学技术大学 \cite{ustcthesis}、
+% 中国科学院大学 \cite{ucasthesis} 以及友校上海交通大学 \cite{sjtuthesis} 等,都有较为成熟、稳定
+% 的解决方案,也积累了广泛的用户基础,值得参考与借鉴。
+%
+% 考虑到开发与持续维护的需要,本模板使用 \LaTeX3 \cite{source3} 语法编写。同时将构建一套简洁的
+% 接口,以方便用户使用。
%^^A! \cls{fduthesis} is a thesis template for Fudan University.
%^^A! This template is mostly written in \LaTeX3 syntax, and
%^^A! provides a simple interface for users.
@@ -420,11 +389,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \subsection*{Getting started with \LaTeX{}}
%^^A!
%
-% 本文档并非是一份 \LaTeX{} 零基础教程。如果您是完完全全的新手,
-% 建议先阅读相关入门文档,如刘海洋编著的《\LaTeX{} 入门》
-% \scite{刘海洋2013latex入门} 第一章,或大名鼎鼎的“\pkg{lshort}”
-% \scite{lshort} 及其中文翻译版 \scite{lshort-zh-cn}。当然,
-% 网络上的入门教程多如牛毛,您可以自行选取。
+% 本文档不是一份 \LaTeX{} 零基础教程。如果缺乏使用 \LaTeX{} 的经验,建议先阅读有关入门文档,如
+% 刘海洋编著的《\LaTeX{} 入门》\cite{刘海洋2013latex入门} 第一章,或“\pkg{lshort}” \cite{lshort}
+% 及其中文翻译版 \cite{lshort-zh-cn}。当然,网络上的 \LaTeX{} 教程数量甚多,也可自行选取。
%^^A! This documentation is \emph{not} a \LaTeX{} tutorial at
%^^A! starter's level. If you are totally a newbie, please read some
%^^A! introductions like the famous \pkg{lshort}. Of course, there
@@ -436,12 +403,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \subsection*{About this documentation}
%^^A!
%
-% 本文采用不同字体表示不同内容。无衬线字体表示宏包名称,如
-% \pkg{xeCJK} 宏包、\cls{fduthesis} 文档类等;等宽字体表示代码或
-% 文件名,如 \cs{fdusetup} 命令、\env{abstract} 环境、\TeX{} 文档
-% \file{thesis.tex} 等;带有尖括号的楷体(或西文斜体)表示命令参数,
-% 如 \meta{模板选项}、\meta{English title} 等。在使用时,参数两侧
-% 的尖括号不必输入。示例代码进行了语法高亮处理,以方便阅读。
+% 本文档采用不同字体表示不同内容。无衬线字体表示宏包名称,如 \pkg{xeCJK} 宏包、\cls{fduthesis}
+% 文档类等;等宽字体表示代码或文件名,如 \cs{fdusetup} 命令、\env{abstract} 环境、\TeX{} 文档
+% \file{thesis.tex} 等;带有尖括号的楷体(或西文斜体)表示命令参数,如 \meta{模板选项}、
+% \meta{English title} 等。在使用时,参数两侧的尖括号不必输入。示例代码进行了语法高亮处理,
+% 以方便阅读。
%^^A! In this documentation, different typefaces are used to
%^^A! represent different contents. Packages and classes are shown
%^^A! in sans-serif font, e.g.\ \pkg{xeCJK} package and
@@ -454,9 +420,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! proper syntax highlighting so it will be much easier to read.
%^^A!
%
-% 在用户手册中,带有蓝色侧边线的为 \LaTeX{} 代码,而带有粉色侧边线
-% 的则为命令行代码,请注意区分。模板提供的选项、命令、环境等,
-% 均用横线框起,同时给出使用语法和相关说明。
+% 在用户手册中,带有蓝色侧边线的为 \LaTeX{} 代码,而带有粉色侧边线的则为命令行代码,请注意区分。
+% 模板提供的选项、命令、环境等,均列在左边栏并用横线框起,同时给出使用语法和相关说明。
%^^A! \LaTeX{} code lines will have a blue line on their left, while
%^^A! for command lines there will be a pink line. The options,
%^^A! commands and environments in \cls{fduthesis} will be surrounded
@@ -466,12 +431,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% 本模板中的选项、命令或环境可以分为以下三类:
% \begin{itemize}
-% \item 名字后面带有 \rexptarget\rexpstar{} 的,表示只能在^^A
-% \emph{中文模板}中使用;
-% \item 名字后面带有 \exptarget\expstar{} 的,表示只能在^^A
-% \emph{英文模板}中使用;
-% \item 名字后面不带有特殊符号的,表示既可以在中文模板中使用,
-% 也可以在英文模板中使用。
+% \item 名字后面带有 \rexptarget\rexpstar{} 的,表示只能在\emph{中文模板}中使用;
+% \item 名字后面带有 \exptarget\expstar{} 的,表示只能在\emph{英文模板}中使用;
+% \item 名字后面不带有特殊符号的,表示既可以在中文模板中使用,也可以在英文模板中使用。
% \end{itemize}
%^^A! The options, commands and environments in \cls{fduthesis} can be
%^^A! divided into the following three types:
@@ -485,17 +447,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{itemize}
%^^A!
%
-% 代码实现主要面向对 \LaTeX{} 宏包开发感兴趣的用户。如果您有任何改进
-% 意见或者功能需求,欢迎前往 GitHub 仓库
-% \href{https://github.com/stone-zeng/fduthesis/issues}{提交 issue}。
-%^^A! If you want to read the implementation part, please turn to the
-%^^A! Chinese version. Any issues or feature requests can be submitted
-%^^A! in the \href{https://github.com/stone-zeng/fduthesis/issues}%
-%^^A! {GitHub repository}.
-%^^A!
-%
-% 文档的最后还提供了版本历史和代码索引,以供查阅。
-%
% \section{安装}
%^^A! \section{Installation}
%^^A!
@@ -508,12 +459,17 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \subsubsection{Standard installation}
%^^A!
%
-% 如果没有特殊理由,始终建议您使用宏包管理器安装 \cls{fduthesis}。
-% 例如在 \TeXLive{} 中,执行(可能需要管理员权限)
+% 如果没有特殊理由,始终建议使用宏包管理器安装 \cls{fduthesis}。例如在 \TeXLive{} 中,执行(可能
+% 需要管理员权限)
% \begin{shellexample}[morekeywords={tlmgr,install}]
% tlmgr install fduthesis
% \end{shellexample}
-% 即可完成安装。
+% 即可完成安装。如果已经装有完整版的 \TeXLive{},则 \cls{fduthesis} 应当已经包含在其中,此时即可
+% 直接使用,也可以执行
+% \begin{shellexample}[morekeywords={tlmgr,update},emph={--all}]
+% tlmgr update --all
+% \end{shellexample}
+% 检查并更新全部宏包。
%^^A! If there are no special reasons, it is always recommended to
%^^A! install \cls{fduthesis} with a package manager. For example,
%^^A! the following command will install the package in \TeXLive{}
@@ -523,8 +479,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{shellexample}
%^^A!
%
-% 在 \TeXLive{} 和 \MiKTeX{} 中,您还可以通过图形界面进行安装,
-% 此处不再赘述。
+% 在 \TeXLive{} 和 \MiKTeX{} 中,还可以通过图形界面进行安装和更新,此处不再赘述。
%^^A! In \TeXLive{} and \MiKTeX{}, you can also install \cls{fduthesis}
%^^A! through a graphical interface. It's rather simple and will not be
%^^A! described here.
@@ -534,14 +489,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \subsubsection{Install manually}
%^^A!
%
-% 如果您需要从 CTAN 上自行下载并手动安装,较好的方法是使用 TDS
-% 安装包:
+% 如果需要从 CTAN 上自行下载并手动安装,可使用 TDS 安装包:
% \begin{itemize}
% \item 从 CTAN 上下载 \cls{fduthesis} 的
-% \href{http://mirror.ctan.org/install/macros/latex/contrib/fduthesis.tds.zip}{TDS 安装包};
-% \item 按目录结构将 \file{fduthesis.tds.zip} 中的文件复制到 \TeX{}
-% 发行版的本地 TDS 根目录;
-% \item 执行 \bashcmd{mktexlsr} 刷新文件名数据库以完成安装。
+% \href{https://mirror.ctan.org/install/macros/latex/contrib/fduthesis.tds.zip}{TDS 安装包};
+% \item 按目录结构将 \file{fduthesis.tds.zip} 中的文件复制到 \TeX{} 发行版的本地 TDS 根目录;
+% \item 执行 \bashcmd{mktexlsr} 命令刷新文件名数据库以完成安装。
% \end{itemize}
%^^A! If you want to download the template from CTAN and install it
%^^A! manually, the recommended way is to use the TDS ZIP file:
@@ -553,115 +506,86 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \item Run \bashcmd{mktexlsr} to update the ls-R database.
%^^A! \end{itemize}
%^^A
-% 您也可以从源代码直接生成模板(不推荐):
+%
+% \subsubsection{开发版本}
+%^^A! \subsubsection{Development version}
+%^^A!
+%
+% CTAN 上仅提供了 \cls{fduthesis} 的稳定版,其更新可能较为滞后,一些 bug 常常不能得到及时修复。
+% 如果需要使用开发版(托管在 GitHub 上),可以使用模板提供的安装脚本:
% \begin{itemize}
-% \item 打开 \href{https://github.com/stone-zeng/fduthesis}^^A
-% {项目主页},点击“Clone or download”,并选择“Download ZIP”,
-% 下载 \file{fduthesis-master.zip};如果您的电脑中安装有 git
-% 程序,也可通过以下命令直接克隆代码仓库:
-% \begin{shellexample}[gobble=7,alsoletter={.},^^A
-% morekeywords={git,clone}]
+% \item 打开 \href{https://github.com/stone-zeng/fduthesis}{项目主页},点击“Code”按钮,并选择
+% “Download ZIP”,下载 \file{fduthesis-main.zip};如果已经装有 Git 程序,也可通过以下命令直接
+% 克隆代码仓库:
+% \begin{shellexample}[gobble=7,alsoletter={.},morekeywords={git,clone}]
% git clone https://github.com/stone-zeng/fduthesis.git
% \end{shellexample}
-% \item 解压并进入到 \file{source} 文件夹,执行以下命令以生成
-% 模板的各组件:
-% \begin{shellexample}[gobble=7,morekeywords={xetex}]
-% xetex fduthesis.dtx
-% \end{shellexample}
-% \item 将生成的文档类(\file{.cls})、宏包(\file{.sty})以及
-% 参数配置文件(\file{.def})复制到 \TeX{} 发行版本地 TDS 树
-% 的 \path{texmf-local/tex/latex/fduthesis/} 目录下,并执行
-% \bashcmd{mktexlsr} 刷新文件名数据库,方可完成安装。
-% \item 使用 \cls{fduthesis} 撰写论文时,您还需要从代码仓库下的
-% \file{testfiles/support} 目录中复制 \file{fudan-name.pdf}
-% 文件至工作目录,以确保封面中的校名图片可以正确显示。
+% \item 执行 \file{install-win.bat}(Windows 系统)或 \file{install-linux.sh}(Linux 或 macOS
+% 系统),所有需要的文件便会在 \file{thesis} 文件夹中生成。
% \end{itemize}
-%^^A! Although not recommended, you may generate the whole template
-%^^A! from source code as well:
+%^^A! On CTAN, only the stable version of \cls{fduthesis} is provided, where new features and
+%^^A! bug fixes may not be included in time. To use the latest development version on GitHub,
+%^^A! you can use the install script:
%^^A! \begin{itemize}
-%^^A! \item Open the project's \href{https://github.com/stone-zeng/fduthesis}%
-%^^A! {homepage}, click ``Clone or download'' and choose
-%^^A! ``Download ZIP'' to download \file{fduthesis-master.zip}.
-%^^A! If you have git program on your computer, you can also
-%^^A! clone the repository directly:
-%^^A! \begin{shellexample}[gobble=5,alsoletter={.},%
-%^^A! morekeywords={git,clone}]
+%^^A! \item Open the project's \href{https://github.com/stone-zeng/fduthesis}{homepage}, click
+%^^A! ``Code'' button and choose ``Download ZIP'' to download \file{fduthesis-main.zip}.
+%^^A! If you have git program on your computer, you can also clone the repository directly:
+%^^A! \begin{shellexample}[gobble=5,alsoletter={.},morekeywords={git,clone}]
%^^A! git clone https://github.com/stone-zeng/fduthesis.git
%^^A! \end{shellexample}
-%^^A! \item Extract files, and get into the \file{source} directory.
-%^^A! Run the following command to generate all the components:
-%^^A! \begin{shellexample}[gobble=5,morekeywords={xetex}]
-%^^A! xetex fduthesis.dtx
-%^^A! \end{shellexample}
-%^^A! \item Copy the generated document classes (\file{.cls}),
-%^^A! packages (\file{.sty}) and configuration files (\file{.def})
-%^^A! into \path{texmf-local/tex/latex/fduthesis/} under the local
-%^^A! TDS tree of \TeX{} distribution. Then run \bashcmd{mktexlsr}
-%^^A! to update the ls-R database.
-%^^A! \item When writing your thesis with \cls{fduthesis}, you need
-%^^A! to copy the file \file{fudan-name.pdf} (can be found in the
-%^^A! \file{testfiles/support} directory of the Git repository) to
-%^^A! your working directory, to make sure that the logo in the
-%^^A! cover can be displayed correctly.
+%^^A! \item Run \file{install-win.bat} (on Windows) or \file{install-linux.sh} (on Linux),
+%^^A! then all the necessary files will be found in the \file{thesis} folder.
%^^A! \end{itemize}
%^^A!
%
-% \subsubsection{扁平化安装}
-%^^A! \subsubsection{\cls{fduthesis} on the fly}
+% \subsubsection{Overleaf}
+%^^A! \subsubsection{Overleaf}
%^^A!
%
-% 如果您不希望安装本模板,但需要立刻使用,也可以使用模板提供的安装脚本。
-% 从 GitHub 上获取代码仓库后,执行 \file{install-win.bat}(Windows 系统)
-% 或 \file{install-linux.sh}(Linux 系统),所有需要的文件便会在
-% \file{thesis} 文件夹中生成。
-%^^A! If you don't want to install \cls{fduthesis} but need to use it
-%^^A! at once, you can try the installation scripts. Download the
-%^^A! repository from GitHub, run \file{install-win.bat} (on Windows)
-%^^A! or \file{install-linux.sh} (on Linux), then all the necessary
-%^^A! files will be found in the \file{thesis} folder.
+% \cls{fduthesis} 也提供了 \href{https://www.overleaf.com/latex/templates/fduthesis-latex-thesis-template-for-fudan-university/svtdhhstkmkt}{Overleaf 的版本},
+% 打开链接并登录后即可直接编辑。
+%^^A! \cls{fduthesis} also provides the \href{https://www.overleaf.com/latex/templates/fduthesis-latex-thesis-template-for-fudan-university/svtdhhstkmkt}{Overleaf version}.
+%^^A! You can follow the link and login to edit directly on the web.
%^^A!
%
% \subsection{模板组成}
%^^A! \subsection{Composition of the template}
%^^A!
%
-% 本模板主要包含核心文档类、配置文件、附属宏包以及用户文档等几个
-% 部分,其具体组成见表~\ref{tab:fduthesis-components}。
-%^^A! There are several parts in \cls{fduthesis}, including kernel
-%^^A! template classes, configuration files, affiliated packages and
-%^^A! user's guides. More details are listed in table~%
-%^^A! \ref{tab:fduthesis-components}.
+% 本模板主要包含核心文档类、配置文件、附属宏包以及用户文档等几个部分,其具体组成见
+% 表~\ref{tab:fduthesis-components}。
+%^^A! There are several parts in \cls{fduthesis}, including kernel template
+%^^A! classes, configuration files, affiliated packages and user's guides.
+%^^A! More details are listed in table~\ref{tab:fduthesis-components}.
%^^A!
%
% \begin{table}[ht]
% \caption{\cls{fduthesis} 的主要组成部分}
% \label{tab:fduthesis-components}
% \centering
-% \begin{tabular}{lp{20em}}
+% \small
+% \begin{tabular}{ll}
% \toprule
-% \textbf{文件} & \textbf{功能说明} \\
+% \textbf{文件} & \textbf{功能说明} \\
% \midrule
-% \file{fduthesis.cls} & 中文模板文档类 \\
-% \file{fduthesis-en.cls} & 英文模板文档类 \\
-% \file{fduthesis.def} & 参数配置文件,用于设定
-% \cls{fduthesis} 的初始参数,不建议您自行改动 \\
-% \file{fdudoc.cls} & 用户手册文档类 \\
-% \file{fdulogo.sty} & 复旦大学视觉识别系统 \\
-% \file{fudan-emblem.pdf} & 校徽 \\
-% \file{fudan-emblem-new.pdf} & 校徽(重修版) \\
-% \file{fudan-name.pdf} & 校名图片 \\
-% \file{README.md} & 简要自述 \\
-% \ifdefined\FDUCODEDOC
-% \file{fduthesis.pdf} & 中文用户手册 \\
-% \file{fduthesis-en.pdf} & 英文用户手册 \\
-% \file{fduthesis-code.pdf} & 模板实现代码(本文档) \\
-% \else
-% \file{fduthesis.pdf} & 中文用户手册(本文档) \\
-% \file{fduthesis-en.pdf} & 英文用户手册 \\
-% \file{fduthesis-code.pdf} & 模板实现代码 \\
-% \fi
-% \file{fduthesis-template.tex} & 空白模板,可据此为基础完成论文
-% 撰写 \\
+% \file{fduthesis.cls} & 中文模板文档类 \\
+% \file{fduthesis-en.cls} & 英文模板文档类 \\
+% \file{fduthesis.def} & 参数配置文件,用于设定初始参数,不建议自行改动 \\
+% \file{fdudoc.cls} & 用户手册文档类 \\
+% \file{fdulogo.sty} & 复旦大学视觉识别系统 \\
+% \file{fudan-emblem.pdf} & 校徽 \\
+% \file{fudan-emblem-new.pdf} & 校徽(重修版) \\
+% \file{fudan-name.pdf} & 校名图片 \\
+% \file{README.md} & 简要自述 \\
+% \ifdefined\FDUCODEDOC
+% \file{fduthesis.pdf} & 中文用户手册 \\
+% \file{fduthesis-en.pdf} & 英文用户手册 \\
+% \file{fduthesis-code.pdf} & 模板实现代码(本文档) \\
+% \else
+% \file{fduthesis.pdf} & 中文用户手册(本文档) \\
+% \file{fduthesis-en.pdf} & 英文用户手册 \\
+% \file{fduthesis-code.pdf} & 模板实现代码 \\
+% \fi
% \bottomrule
% \end{tabular}
% \end{table}
@@ -671,24 +595,22 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \centering
%^^A! \begin{tabular}{lp{24em}}
%^^A! \toprule
-%^^A! \textbf{Files} & \textbf{Descriptions} \\
+%^^A! \textbf{Files} & \textbf{Descriptions} \\
%^^A! \midrule
-%^^A! \file{fduthesis.cls} & Document class for Chinese thesis. \\
-%^^A! \file{fduthesis-en.cls} & Document class for English thesis.\\
-%^^A! \file{fduthesis.def} & Configuration parameters file
-%^^A! for \cls{fduthesis}. Please do \emph{not} modify it. \\
-%^^A! \file{fdudoc.cls} & Document class for user guides. \\
-%^^A! \file{fdulogo.sty} & Fudan University's visual identity. \\
-%^^A! \file{fudan-emblem.pdf} & University emblem. \\
-%^^A! \file{fudan-emblem-new.pdf} & University emblem (revised version). \\
-%^^A! \file{fudan-name.pdf} & Figure of university name. \\
-%^^A! \file{README.md} & The brief introduction. \\
-%^^A! \file{fduthesis.pdf} & User's guide in Chinese. \\
-%^^A! \file{fduthesis-en.pdf} & User's guide in English (this
-%^^A! document). \\
-%^^A! \file{fduthesis-code.pdf} & Code implementation. \\
-%^^A! \file{fduthesis-template.tex} & An empty thesis template, and you can
-%^^A! write your thesis based on it. \\
+%^^A! \file{fduthesis.cls} & Document class for Chinese thesis. \\
+%^^A! \file{fduthesis-en.cls} & Document class for English thesis.\\
+%^^A! \file{fduthesis.def} & Configuration parameters file
+%^^A! for \cls{fduthesis}. Please do \emph{not} modify it. \\
+%^^A! \file{fdudoc.cls} & Document class for user guides. \\
+%^^A! \file{fdulogo.sty} & Fudan University's visual identity. \\
+%^^A! \file{fudan-emblem.pdf} & University emblem. \\
+%^^A! \file{fudan-emblem-new.pdf} & University emblem (revised version). \\
+%^^A! \file{fudan-name.pdf} & Figure of university name. \\
+%^^A! \file{README.md} & The brief introduction. \\
+%^^A! \file{fduthesis.pdf} & User's guide in Chinese. \\
+%^^A! \file{fduthesis-en.pdf} & User's guide in English (this
+%^^A! document). \\
+%^^A! \file{fduthesis-code.pdf} & Code implementation. \\
%^^A! \bottomrule
%^^A! \end{tabular}
%^^A! \end{table}
@@ -702,12 +624,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \subsection{Getting started}
%^^A!
%
-% 以下是一份简单的 \TeX{} 文档,它演示了 \cls{fduthesis}
-% 的最基本用法:
+% 以下是一份简单的 \TeX{} 文档,它演示了 \cls{fduthesis} 的最基本用法:
%^^A! Here is a minimal \TeX{} file for \cls{fduthesis}:
%^^A+
-% \begin{latexexample}[deletetexcs={\documentclass},%
-% moretexcs={\chapter},morekeywords={\documentclass},%
+% \begin{latexexample}[deletetexcs={\documentclass},
+% moretexcs={\chapter},morekeywords={\documentclass},
% emph={[2]document}]
% % thesis.tex
% \documentclass{fduthesis}
@@ -722,16 +643,16 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% 按照 \ref{subsec:编译方式}~小节中的方式编译该文档,您应当得到
% 一篇 5 页的文章。当然,这篇文章的绝大部分都是空白的。
-%^^A! Compile this file under the instructions in subsection~%
-%^^A! \ref{subsec:compilation}, you will get a 5-page article.
+%^^A! Compile this file under the instructions in
+%^^A! subsection~\ref{subsec:compilation}, you will get a 5-page article.
%^^A! Of course, most of it will be blank, as you may predicate.
%^^A!
%
% 英文模板可以用类似的方式使用:
%^^A! The English version can be used in the same way:
%^^A+
-% \begin{latexexample}[deletetexcs={\documentclass},%
-% moretexcs={\chapter},morekeywords={\documentclass},%
+% \begin{latexexample}[deletetexcs={\documentclass},
+% moretexcs={\chapter},morekeywords={\documentclass},
% emph={[2]document}]
% % thesis-en.tex
% \documentclass{fduthesis-en}
@@ -811,14 +732,14 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A!
%
% 所谓“模板选项”,指需要在引入文档类的时候指定的选项:
-% \begin{latexexample}[deletetexcs={\documentclass},%
+% \begin{latexexample}[deletetexcs={\documentclass},
% morekeywords={\documentclass}]
% \documentclass(*\oarg{模板选项}*){fduthesis}
% \documentclass(*\oarg{模板选项}*){fduthesis-en}
% \end{latexexample}
%^^A! You can specify some \emph{template options} when loading
%^^A! \cls{fduthesis}:
-%^^A! \begin{latexexample}[deletetexcs={\documentclass},%
+%^^A! \begin{latexexample}[deletetexcs={\documentclass},
%^^A! morekeywords={\documentclass}]
%^^A! \documentclass(*\oarg{options}*){fduthesis}
%^^A! \documentclass(*\oarg{options}*){fduthesis-en}
@@ -966,9 +887,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 选项通常是 \kvopt{\meta{key}}{\meta{value}} 的形式。部分选项的
% \meta{value} 可以省略。对于同一项,后面的设置将会覆盖前面的设置。
% 在下文的说明中,将用\textbf{粗体}表示默认值。
-%^^A! The argument of \cs{fdusetup} is a set of comma-separated option
-%^^A! list. The options usually have the form of \kvopt{\meta{key}}%
-%^^A! {\meta{value}} and in some cases \meta{value} can be omitted.
+%^^A! The argument of \cs{fdusetup} is a set of comma-separated option list.
+%^^A! The options usually have the form of \kvopt{\meta{key}}{\meta{value}}
+%^^A! and in some cases \meta{value} can be omitted.
%^^A! For the same option, the values given later will override the
%^^A! the previous ones. Default values are indicated in
%^^A! \textbf{boldface} in the following descriptions.
@@ -984,7 +905,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A!
%
% 与模板选项相同,布尔型的参数可以省略 \kvopt{\meta{选项}}{true}
-% 中的“|= true|”。
+% 中的“\kvopt{}{true}”。
%^^A! Similar with template options, ``\kvopt{\meta{option}}{true}''
%^^A! can be abbreviated to \opt{\meta{option}} for boolean type.
%^^A!
@@ -995,7 +916,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! sub-options. They can be set by the following two equivalent
%^^A! methods:
%^^A+
-% \begin{latexexample}[morekeywords={\fdusetup},%
+% \begin{latexexample}[morekeywords={\fdusetup},
% emph={[1]style,cjk-font,font-size,info,title,title*,author,author*,department}]
% \fdusetup{
% style = {cjk-font = adobe, font-size = -4},
@@ -1012,7 +933,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 或者
%^^A! or
%^^A+
-% \begin{latexexample}[morekeywords={\fdusetup},%
+% \begin{latexexample}[morekeywords={\fdusetup},
% emph={[1]style,cjk-font,font-size,info,title,title*,author,author*,department}]
% \fdusetup{
% style/cjk-font = adobe,
@@ -1065,13 +986,14 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A!
%
% \begin{table}[ht]
+% \centering
% \begin{threeparttable}
% \caption{西文字体配置}
% \label{tab:font}
-% \centering
+% \small
% \begin{tabular}{ccccc}
% \toprule
-% & \strong{正文字体} & \strong{无衬线字体} & \strong{等宽字体} & \strong{数学字体} \\
+% & \textbf{正文字体} & \textbf{无衬线字体} & \textbf{等宽字体} & \textbf{数学字体} \\
% \midrule
% |garamond| & EB Garamond & Libertinus Sans & LM Mono\tnote{a} & Garamond Math \\
% |libertinus| & Libertinus Serif & Libertinus Sans & LM Mono & Libertinus Math \\
@@ -1085,7 +1007,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \item[a] “LM”是 Latin Modern 的缩写。
% \item[b] “TG”是 TeX Gyre 的缩写。
% \item[c] 本行中,Times New Roman、Arial 和 Courier New 是商业字体,
-% 在 Windows 和 macOS 系统上均默认安装。
+% 不包含在 \TeXLive{} 发行版中,但在 Windows 和 macOS 系统上均默认安装。
% \end{tablenotes}
% \end{threeparttable}
% \end{table}
@@ -1096,7 +1018,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \centering
%^^A! \begin{tabular}{ccccc}
%^^A! \toprule
-%^^A! & \strong{Roman} & \strong{Sans-serif} & \strong{Monospaced} & \strong{Math} \\
+%^^A! & \textbf{Roman} & \textbf{Sans-serif} & \textbf{Monospaced} & \textbf{Math} \\
%^^A! \midrule
%^^A! |garamond| & EB Garamond & Libertinus Sans & LM Mono\tnote{a} & Garamond Math \\
%^^A! |libertinus| & Libertinus Serif & Libertinus Sans & LM Mono & Libertinus Math \\
@@ -1132,24 +1054,18 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \caption{中文字体配置}
% \label{tab:cjk-font}
% \centering
-% \begin{tabular}{cccc}
+% \small
+% \begin{tabular}{ccccc}
% \toprule
-% & \strong{正文字体(宋体)} & \strong{无衬线字体(黑体)} & \strong{等宽字体(仿宋)} \\
+% & \textbf{正文字体(宋体)} & \textbf{无衬线字体(黑体)} & \textbf{等宽字体(仿宋)} & \textbf{楷体} \\
% \midrule
-% \multirow{2}*{|adobe|} & Adobe 宋体 & Adobe 黑体 & Adobe 仿宋 \\
-% & Adobe Song Std & Adobe Heiti Std & Adobe Fangsong Std \\
-% \multirow{2}*{|fandol|} & Fandol 宋体 & Fandol 黑体 & Fandol 仿宋 \\
-% & FandolSong & FandolHei & FandolFang \\
-% \multirow{2}*{|founder|} & 方正书宋 & 方正黑体 & 方正仿宋 \\
-% & FZShuSong-Z01 & FZHei-B01 & FZFangSong-Z02 \\
-% \multirow{2}*{|mac|} & (华文)宋体-简 & (华文)黑体-简 & 华文仿宋 \\
-% & Songti SC & Heiti SC & STFangsong \\
-% \multirow{2}*{|sinotype|} & 华文宋体 & 华文黑体 & 华文仿宋 \\
-% & STSong & STHeiti & STFangsong \\
-% \multirow{2}*{|sourcehan|} & 思源宋体 & 思源黑体 & --- \\
-% & Source Han Serif SC & Source Han Sans SC & --- \\
-% \multirow{2}*{|windows|} & (中易)宋体 & (中易)黑体 & (中易)仿宋 \\
-% & SimSun & SimHei & FangSong \\
+% |adobe| & Adobe 宋体 & Adobe 黑体 & Adobe 仿宋 & Adobe 楷体 \\
+% |fandol| & Fandol 宋体 & Fandol 黑体 & Fandol 仿宋 & Fandol 楷体 \\
+% |founder| & 方正书宋 & 方正黑体 & 方正仿宋 & 方正楷体 \\
+% |mac| & (华文)宋体-简 & (华文)黑体-简 & 华文仿宋 & (华文)楷体-简 \\
+% |sinotype| & 华文宋体 & 华文黑体 & 华文仿宋 & 华文楷体 \\
+% |sourcehan| & 思源宋体 & 思源黑体 & --- & --- \\
+% |windows| & (中易)宋体 & (中易)黑体 & (中易)仿宋 & (中易)楷体 \\
% \bottomrule
% \end{tabular}
% \end{table}
@@ -1159,7 +1075,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \centering
%^^A! \begin{tabular}{cccc}
%^^A! \toprule
-%^^A! & \strong{Roman (song)} & \strong{Sans-serif (hei)} & \strong{Monospaced (fang)} \\
+%^^A! & \textbf{Roman (song)} & \textbf{Sans-serif (hei)} & \textbf{Monospaced (fang)} \\
%^^A! \midrule
%^^A! |adobe| & Adobe Song Std & Adobe Heiti Std & Adobe Fangsong Std \\
%^^A! |fandol| & FandolSong & FandolHei & FandolFang \\
@@ -1210,12 +1126,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
-% 选择 \kvopt{fullwidth-stop}{catcode} 或 \opt{mapping} 后,都会实现
-% 上述效果。有所不同的是,在选择 \opt{catcode} 后,只有^^A
-% \emph{显式的}\FSID 会被替换为\FSFW;但在选择 \opt{mapping} 后,
-% \emph{所有的}\FSID 都会被替换。例如,如果您用宏保存了一些含有^^A
-% \FSID 的文字,那么在选择 \opt{catcode} 时,其中的\FSID 不会被
-% 替换为\FSFW。
+% 选择 \kvopt{fullwidth-stop}{catcode} 或 \opt{mapping} 后,都会实现上述效果。
+% 有所不同的是,在选择 \opt{catcode} 后,只有\emph{显式的}\FSID 会被替换
+% 为\FSFW;但在选择 \opt{mapping} 后,\emph{所有的}\FSID 都会被替换。例如,
+% 如果您用宏保存了一些含有\FSID 的文字,那么在选择 \opt{catcode} 时,其中
+% 的\FSID 不会将被替换为\FSFW。
%^^A! If you choose \kvopt{fullwidth-stop}{catcode}, only
%^^A! \emph{explicit} ``\FSID'' will be replaced by ``\FSFW''; when
%^^A! choosing \kvopt{fullwidth-stop}{mapping}, however, \emph{all}
@@ -1228,8 +1143,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! with \LuaTeX{}, it is equivalent to \opt{catcode}.
%^^A!
%
-% 如果您在选择 \kvopt{fullwidth-stop}{mapping} 后仍需要临时显示^^A
-% \FSID,可以按如下方法操作:
+% 如果您在选择 \kvopt{fullwidth-stop}{mapping} 后仍需要临时显示\FSID,
+% 可以按如下方法操作:
% \begin{latexexample}[moretexcs={\CJKfontspec},emph={[1]Mapping}]
% % 请使用 XeTeX 编译
% % 外侧的花括号表示分组
@@ -1247,12 +1162,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \begin{function}{style/footnote-style}
%^^A 这里奇怪的东西是用来控制对齐的。fdusyntax 会吃掉开头的几个
-%^^A 空格,因此这里用 X 来占位。
+%^^A 空格,因此这里用 . 来占位。
% \begin{fdusyntax}[emph={[1]footnote-style}]
% footnote-style = (*<plain|\\
-% XXXXXX\mbox{}~~~~~~~~~~~~~~~~~libertinus|libertinus*|libertinus-sans|\\
-% XXXXXX\mbox{}~~~~~~~~~~~~~~~~~pifont|pifont*|pifont-sans|pifont-sans*|\\
-% XXXXXX\mbox{}~~~~~~~~~~~~~~~~~xits|xits-sans|xits-sans*>*)
+% ......\mbox{}~~~~~~~~~~~~~~~~~libertinus|libertinus*|libertinus-sans|\\
+% ......\mbox{}~~~~~~~~~~~~~~~~~pifont|pifont*|pifont-sans|pifont-sans*|\\
+% ......\mbox{}~~~~~~~~~~~~~~~~~xits|xits-sans|xits-sans*>*)
% \end{fdusyntax}
% 设置脚注编号样式。西文字体设置会影响其默认取值(见
% 表~\ref{tab:footnote-font})。因此,要使得该选项生效,需将其
@@ -1262,9 +1177,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \begin{function}{style/footnote-style}
%^^A! \begin{fdusyntax}[emph={[1]footnote-style}]
%^^A! footnote-style = (*<plain|\\
-%^^A! XXXX\mbox{}~~~~~~~~~~~~~~~~~libertinus|libertinus*|libertinus-sans|\\
-%^^A! XXXX\mbox{}~~~~~~~~~~~~~~~~~pifont|pifont*|pifont-sans|pifont-sans*|\\
-%^^A! XXXX\mbox{}~~~~~~~~~~~~~~~~~xits|xits-sans|xits-sans*>*)
+%^^A! ....\mbox{}~~~~~~~~~~~~~~~~~libertinus|libertinus*|libertinus-sans|\\
+%^^A! ....\mbox{}~~~~~~~~~~~~~~~~~pifont|pifont*|pifont-sans|pifont-sans*|\\
+%^^A! ....\mbox{}~~~~~~~~~~~~~~~~~xits|xits-sans|xits-sans*>*)
%^^A! \end{fdusyntax}
%^^A! Set the style of footnote numbers. Note that western fonts
%^^A! will affect its default value (see table~\ref{tab:footnote-font}),
@@ -1278,13 +1193,14 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \caption{西文字体与脚注编号样式默认值的对应关系}
% \label{tab:footnote-font}
% \centering
+% \small
% \begin{tabular}{ccccc}
% \toprule
-% \textbf{西文字体设置} &
-% |libertinus| & |lm| & |palatino| & |times| \\
+% \textbf{西文字体设置} &
+% |libertinus| & |lm| & |palatino| & |times| \\
% \midrule
-% \textbf{脚注编号样式默认值} &
-% |libertinus| & |pifont| & |pifont| & |xits| \\
+% \textbf{脚注编号样式默认值} &
+% |libertinus| & |pifont| & |pifont| & |xits| \\
% \bottomrule
% \end{tabular}
% \end{table}
@@ -1295,11 +1211,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \centering
%^^A! \begin{tabular}{ccccc}
%^^A! \toprule
-%^^A! \textbf{Western fonts settings} &
-%^^A! |libertinus| & |lm| & |palatino| & |times| \\
+%^^A! \textbf{Western fonts settings} &
+%^^A! |libertinus| & |lm| & |palatino| & |times| \\
%^^A! \midrule
-%^^A! \textbf{Default value of footnote number style} &
-%^^A! |libertinus| & |pifont| & |pifont| & |xits| \\
+%^^A! \textbf{Default value of footnote number style} &
+%^^A! |libertinus| & |pifont| & |pifont| & |xits| \\
%^^A! \bottomrule
%^^A! \end{tabular}
%^^A! \end{table}
@@ -1322,18 +1238,16 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
-% \begin{function}[added=2017-08-13,updated=2017-12-08]{style/hyperlink-color}
+% \begin{function}[added=2017-08-13,updated=2021-12-27]{style/hyperlink-color}
% \begin{fdusyntax}[emph={[1]hyperlink-color}]
-% hyperlink-color = (*<(default)|classic|elegant|fantasy|material|\\
-% XXXXXX\mbox{}~~~~~~~~~~~~~~~~~~business|science|summer|autumn|graylevel|prl>*)
+% hyperlink-color = (*<(default)|classic|material|graylevel|prl>*)
% \end{fdusyntax}
% 设置超链接颜色。该选项在 \kvopt{hyperlink}{none} 时无效。
% 各选项所代表的颜色见表~\ref{tab:hyperlink-color}。
% \end{function}
-%^^A! \begin{function}[added=2017-08-13,updated=2017-12-08]{style/hyperlink-color}
+%^^A! \begin{function}[added=2017-08-13,updated=2021-12-27]{style/hyperlink-color}
%^^A! \begin{fdusyntax}[emph={[1]hyperlink-color}]
-%^^A! hyperlink-color = (*<(default)|classic|elegant|fantasy|material|\\
-%^^A! XXXX\mbox{}~~~~~~~~~~~~~~~~~~business|science|summer|autumn|graylevel|prl>*)
+%^^A! hyperlink-color = (*<(default)|classic|material|graylevel|prl>*)
%^^A! \end{fdusyntax}
%^^A! Set the color of hyperlinks. It is invalid if
%^^A! \kvopt{hyperlink}{none}. The related colors can be found
@@ -1344,11 +1258,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A+
% \begin{table}[ht]
% \centering
+% \small
%^^A-
% \newcommand\linkcolorexam[3]{^^A
% {\small 图~\textcolor[HTML]{#1}{1-2},
% (\textcolor[HTML]{#1}{3.4})~式} &
-% {\small \textcolor[HTML]{#2}{\texttt{http://g.cn}}} &
+% {\small \textcolor[HTML]{#2}{\texttt{https://g.cn}}} &
% {\small 文献~[\textcolor[HTML]{#3}{1}],
% (\textcolor[HTML]{#3}{Knuth~1986})}}
%^^A! \newcommand\linkcolorexam[3]{%
@@ -1365,47 +1280,27 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \label{tab:hyperlink-color}
% \begin{tabular}{c*{3}{>{\hspace{0.2cm}}c<{\hspace{0.2cm}}}}
% \toprule
-% \textsf{选项} & \textsf{链接} & \textsf{URL} & \textsf{引用} \\
+% \textbf{选项} & \textbf{链接} & \textbf{URL} & \textbf{引用} \\
%^^A! \begin{tabular}{c*{3}{>{\hspace{0.2cm}}c<{\hspace{0.2cm}}}}
%^^A! \toprule
-%^^A! \textsf{Options} & \textsf{Cross references} & \textsf{URL} & \textsf{Citation} \\
+%^^A! \textbf{Options} & \textbf{Cross references} & \textbf{URL} & \textbf{Citation} \\
%^^A+
% \midrule
-% \opt{default} & \linkcolorexam{990000}{0000B2}{007F00} \\
-% \opt{classic} & \linkcolorexam{FF0000}{0000FF}{00FF00} \\
-% \opt{elegant}\tnote{a} & \linkcolorexam{961212}{C31818}{9B764F} \\
-% \opt{fantasy}\tnote{b} & \linkcolorexam{FF4A19}{FF3F94}{934BA1} \\
-% \opt{material}\tnote{c} & \linkcolorexam{E91E63}{009688}{4CAF50} \\
-% \opt{business}\tnote{d} & \linkcolorexam{D14542}{295497}{1F6E43} \\
-% \opt{science}\tnote{e} & \linkcolorexam{CA0619}{389F9D}{FF8920} \\
-% \opt{summer}\tnote{f} & \linkcolorexam{00AFAF}{5F5FAF}{5F8700} \\
-% \opt{autumn}\tnote{f} & \linkcolorexam{D70000}{D75F00}{AF8700} \\
-% \opt{graylevel}\tnote{c} & \linkcolorexam{616161}{616161}{616161} \\
-% \opt{prl}\tnote{g} & \linkcolorexam{2D3092}{2D3092}{2D3092} \\
+% \opt{default} & \linkcolorexam{990000}{0000B2}{007F00} \\
+% \opt{classic} & \linkcolorexam{FF0000}{0000FF}{00FF00} \\
+% \opt{material}\tnote{a} & \linkcolorexam{E91E63}{009688}{4CAF50} \\
+% \opt{graylevel}\tnote{a} & \linkcolorexam{616161}{616161}{616161} \\
+% \opt{prl}\tnote{b} & \linkcolorexam{2D3092}{2D3092}{2D3092} \\
% \bottomrule
% \end{tabular}
% \begin{tablenotes}
%^^A-
-% \item[a] 来自 \href{https://tex.stackexchange.com/}^^A
-% {\TeX{} - \LaTeX{} Stack Exchange 网站}。
-% \item[b] Adobe CC 产品配色。
-% \item[c] 取自 Material 色彩方案
+% \item[a] 取自 Material 色彩方案
% (见 \url{https://material.io/guidelines/style/color.html})。
-% \item[d] Microsoft Office 2016 产品配色。
-% \item[e] 来自 \href{https://www.wolfram.com/}{Wolfram Research 网站}。
-% \item[f] 均取自 Solarized 色彩方案
-% (见 \url{http://ethanschoonover.com/solarized})。
-% \item[g] \textit{Physical Review Letter} 杂志配色。
-%^^A! \item[a] From \href{https://tex.stackexchange.com/}%
-%^^A! {\TeX{} - \LaTeX{} Stack Exchange}.
-%^^A! \item[b] Adobe CC.
-%^^A! \item[c] Material Design color palette
+% \item[b] \textit{Physical Review Letter} 杂志配色。
+%^^A! \item[a] Material Design color palette
%^^A! (See \url{https://material.io/guidelines/style/color.html}).
-%^^A! \item[d] Microsoft Office 2016.
-%^^A! \item[e] From \href{https://www.wolfram.com/}{Wolfram Research website}.
-%^^A! \item[f] Solarized color palette
-%^^A! (See \url{http://ethanschoonover.com/solarized}).
-%^^A! \item[g] \textit{Physical Review Letter} magazine.
+%^^A! \item[b] \textit{Physical Review Letter} magazine.
%^^A+
% \end{tablenotes}
% \end{threeparttable}
@@ -1430,20 +1325,18 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
-% \begin{function}[added=2017-10-28,updated=2018-01-25]^^A
-% {style/bib-style}
+% \begin{function}[added=2017-10-28,updated=2018-01-25]{style/bib-style}
% \begin{fdusyntax}[emph={[1]bib-style}]
% bib-style = (*<author-year|(numerical)|\meta{其他样式}>*)
% \end{fdusyntax}
% 设置参考文献样式。\opt{author-year} 和 \opt{numerical} 分别对应
-% 国家标准 GB/T 7714--2015 \scite{gb-t-7714-2015} 中的著者—出版年制
-% 和顺序编码制。选择 \meta{其他样式} 时,如果 \kvopt{bib-backend}^^A
-% {bibtex},需保证相应的 \file{.bst} 格式文件能被调用;而如果
+% 国家标准 GB/T 7714--2015 \cite{gb-t-7714-2015} 中的著者—出版年制和
+% 顺序编码制。选择 \meta{其他样式} 时,如果 \kvopt{bib-backend}{bibtex},
+% 需保证相应的 \file{.bst} 格式文件能被调用;而如果
% \kvopt{bib-backend}{biblatex},则需保证相应的 \file{.bbx} 格式文件
% 能被调用。
% \end{function}
-%^^A! \begin{function}[added=2017-10-28,updated=2018-01-25]%
-%^^A! {style/bib-style}
+%^^A! \begin{function}[added=2017-10-28,updated=2018-01-25]{style/bib-style}
%^^A! \begin{fdusyntax}[emph={[1]bib-style}]
%^^A! bib-style = (*<author-year|(numerical)|\meta{other style}>*)
%^^A! \end{fdusyntax}
@@ -1547,13 +1440,28 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
+% \begin{function}[added=2021-09-21]{style/declaration-page}
+% \begin{fdusyntax}[emph={[1]declaration-page}]
+% declaration-page = (*\marg{文件}*)
+% \end{fdusyntax}
+% 插入扫描版的声明页 PDF 文档。如果为空(默认),则使用模板预定义的声明页。
+% \end{function}
+%^^A! \begin{function}[added=2021-09-21]{style/declaration-page}
+%^^A! \begin{fdusyntax}[emph={[1]declaration-page}]
+%^^A! declaration-page = (*\marg{file}*)
+%^^A! \end{fdusyntax}
+%^^A! Insert the scanned declaration page PDF file. If empty (default),
+%^^A! then the pre-defined declaration page will be inserted.
+%^^A! \end{function}
+%^^A!
+%
% \begin{function}{\makecoveri,\makecoverii,\makecoveriii}
% 用于手动生成论文封面、指导小组成员名单和声明页。这几个命令不能
% 确保页码的正确编排,因此除非必要,您应当始终使用自动生成的封面。
% \end{function}
%^^A! \begin{function}{\makecoveri,\makecoverii,\makecoveriii}
%^^A! For generating thesis cover, list of instructors and
-%^^A! declaration page manually. These commands cannot ensure
+%^^A! declaration page manually. These commands cannot guarantee
%^^A! the correct page numbers, hence you should always use the
%^^A! auto-generated thesis cover unless necessary.
%^^A! \end{function}
@@ -1610,7 +1518,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! title = (*\marg{title in Chinese}*)
%^^A! title* = (*\marg{title in English}*)
%^^A! \end{fdusyntax}
-%^^A! Title of your thesis. The line width is about \SI{30}{em} by
+%^^A! Title of your thesis. The line width is about \qty{30}{em} by
%^^A! default, but you may break it with |\\| manually.
%^^A! \end{function}
%^^A!
@@ -1810,13 +1718,30 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
+% \begin{function}[added=2021-09-16]{info/jel}
+% \begin{fdusyntax}[emph={[1]jel}]
+% jel = (*\marg{分类号}*)
+% \end{fdusyntax}
+% JEL 分类号,仅适用于部分院系。当被指定时,英文摘要中将仅显示 JEL
+% 分类号,而不再显示中图分类号。
+% \end{function}
+%^^A! \begin{function}[added=2021-09-16]{info/jel}
+%^^A! \begin{fdusyntax}[emph={[1]jel}]
+%^^A! jel = (*\marg{classification codes}*)
+%^^A! \end{fdusyntax}
+%^^A! \textit{Journal of Economic Literature} (JEL) Classification
+%^^A! Code. It's only mandatory for some departments. When specified,
+%^^A! CLC code in the English abstract will be replaced by it.
+%^^A! \end{function}
+%^^A!
+%
% \subsection{正文编写}
%^^A! \subsection{Writing your thesis}
%^^A!
%
% \begin{quotation}
-% 喬孟符(吉)博學多能,以樂府稱。嘗云:「作樂府亦有法,曰^^A
-% \CJKunderdot{鳳頭、豬肚、豹尾}六字是也。」大概起要美麗,中要浩蕩,
+% 喬孟符(吉)博學多能,以樂府稱。嘗云:「作樂府亦有法,
+% 曰\CJKunderdot{鳳頭、豬肚、豹尾}六字是也。」大概起要美麗,中要浩蕩,
% 結要響亮。尤貴在首尾貫穿,意思清新。苟能若是,斯可以言樂府矣。
% \end{quotation}
% \hfill ——陶宗儀《南村輟耕錄·作今樂府法》
@@ -1898,11 +1823,10 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
-% 摘要的最后,会显示关键字列表以及中图分类号(CLC)。
-% 这两项可通过 \cs{fdusetup} 录入,具体
-% 请参阅 \ref{subsubsec:信息录入}~节。
+% 摘要的最后,会显示关键字列表以及中图分类号(CLC)或 JEL 分类号。这两项
+% 可通过 \cs{fdusetup} 录入,具体请参阅 \ref{subsubsec:信息录入}~节。
%^^A! At the end of abstract (both Chinese and English, if available),
-%^^A! keywords list and CLC number will be shown. They can be
+%^^A! keywords list and CLC or JEL code will be shown. They can be
%^^A! specified via command \cs{fdusetup} and you may refer to
%^^A! subsubsection~\ref{subsubsec:information} for more details.
%^^A!
@@ -1919,7 +1843,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{fdusyntax}
% 符号表。可选参数 \meta{列格式说明}与 \LaTeX{} 中标准表格的列格
% 式说明语法一致,默认值为“|lp{7.5cm}|”,即第一列宽度自动调整,
-% 第二列限宽 \SI{7.5}{cm},两列均为左对齐。
+% 第二列限宽 \qty{7.5}{cm},两列均为左对齐。
% \end{function}
%^^A! \begin{function}{notation}
%^^A! \begin{fdusyntax}[emph={[2]notation}]
@@ -1934,7 +1858,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! The optional argument \meta{column format} is the same as
%^^A! in a standard \LaTeX{} table. The default value is
%^^A! ``|lp{7.5cm}|'', which means auto-width for the first column
-%^^A! and fix-width (\SI{7.5}{cm}) for the second; both columns will
+%^^A! and fix-width (\qty{7.5}{cm}) for the second; both columns will
%^^A! be left-aligned.
%^^A! \end{function}
%^^A!
@@ -1960,24 +1884,248 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A!
%
% \begin{function}[updated=2018-01-15]{\footnote}
-% \begin{fdusyntax}[deletetexcs={\footnote},%
-% morekeywords={\footnote}]
+% \begin{fdusyntax}[deletetexcs={\footnote},morekeywords={\footnote}]
% \footnote(*\marg{脚注文字}*)
% \end{fdusyntax}
% 插入脚注。脚注编号样式可利用 \opt{style/footnote-style} 选项控制,
% 具体见 \ref{subsubsec:论文格式}~小节。
% \end{function}
%^^A! \begin{function}[updated=2018-01-15]{\footnote}
-%^^A! \begin{fdusyntax}[deletetexcs={\footnote},%
-%^^A! morekeywords={\footnote}]
+%^^A! \begin{fdusyntax}[deletetexcs={\footnote},morekeywords={\footnote}]
%^^A! \footnote(*\marg{text}*)
%^^A! \end{fdusyntax}
%^^A! Insert a footnote. The style of footnote numbers can be set
-%^^A! with option \opt{style/foot\-note\-style}. See subsubsection~%
-%^^A! \ref{subsubsec:style-and-format} for more details.
+%^^A! with option \opt{style/foot\-note\-style}. See
+%^^A! subsubsection~\ref{subsubsec:style-and-format} for more details.
+%^^A! \end{function}
+%^^A!
+%
+% \begin{function}{\caption}
+% \begin{fdusyntax}[deletetexcs={\caption},morekeywords={\caption}]
+% \caption(*\marg{图表标题}*)
+% \caption(*\oarg{短标题}\marg{长标题}*)
+% \end{fdusyntax}
+% 插入图表标题。可选参数 \meta{短标题} 用于图表目录。在
+% \meta{长标题} 中,您可以进行长达多段的叙述;但 \meta{短标题}
+% 和单独的 \meta{图表标题} 中则不允许分段。
+% \cite{刘海洋2013latex入门}
+% \end{function}
+%^^A! \begin{function}{\caption}
+%^^A! \begin{fdusyntax}[deletetexcs={\caption},morekeywords={\caption}]
+%^^A! \caption(*\marg{caption}*)
+%^^A! \caption(*\oarg{short caption}\marg{long caption}*)
+%^^A! \end{fdusyntax}
+%^^A! Insert the caption of figure or table. The optional argument
+%^^A! \meta{short caption} will be shown in the list of figures/tables.
+%^^A! In \meta{long caption}, you can write descriptions for several
+%^^A! paragraphs, but \meta{short caption} and the single
+%^^A! \meta{caption} will not allow multi-paragraph text (i.e.\
+%^^A! text containing \tn{par}) inside.
%^^A! \end{function}
%^^A!
%
+% 按照排版惯例,建议您将表格的标题放置在绘制表格的命令之前,
+% 而将图片的标题放置在绘图或插图的命令之后。另需注意,
+% \tn{caption} 命令必须放置在浮动体环境(如 \env{table} 和
+% \env{figure})中。
+%^^A! By convention, caption of a table is usually put \emph{before}
+%^^A! the table itself, while for figure it's the opposite.
+%^^A! In addition, command \tn{caption} must be put inside float
+%^^A! environments (e.g.\ \env{table} and \env{figure}).
+%^^A!
+%
+% \paragraph{参考文献引用}
+%^^A! \paragraph{Citations}
+%
+% \begin{function}{\cite}
+% \begin{fdusyntax}[deletetexcs={\cite},morekeywords={\cite}]
+% \cite(*\marg{文献标签}*)
+% \cite(*\oarg{页码}\marg{文献标签}*)
+% \end{fdusyntax}
+% 插入所引用的文献。可选参数 \meta{页码} 可用来标注引文的页码。在不同的
+% 参考文献样式中,引用的样式也不尽相同。根据需要,模板还提供了更多的命令
+% 用来标记引用。顺序编码制和著者—出版年制下的各种引用方式见
+% 表~\ref{tab:citation-numerical} 和表~\ref{tab:citation-author-year}。
+% \end{function}
+%^^A! \begin{function}{\cite}
+%^^A! \begin{fdusyntax}[deletetexcs={\cite},morekeywords={\cite}]
+%^^A! \cite(*\marg{bib key}*)
+%^^A! \cite(*\oarg{page number}\marg{bib key}*)
+%^^A! \end{fdusyntax}
+%^^A! Insert citations. The optional argument \meta{page number} can be
+%^^A! used to indicate the page number of the citation. The citation style
+%^^A! varies among different bibliography styles. More commands are also
+%^^A! provided to mark the citations, which can be found in
+%^^A! table~\ref{tab:citation-numerical} (numerical style) and
+%^^A! \ref{tab:citation-author-year} (author-year style).
+%^^A! \end{function}
+%^^A!
+%
+%^^A+
+% \NewDocumentCommand\verbcite{O{cite}om}{^^A
+% \IfNoValueTF{#2}{^^A
+% \texttt{\textbackslash#1\{#3\}}^^A
+% }{^^A
+% \texttt{\textbackslash#1[#2]\{#3\}}^^A
+% }}
+%^^A-
+%
+% \begin{table}[ht]
+% \caption{顺序编码制下的引用样式} \label{tab:citation-numerical}
+% \centering
+% \small
+% \begin{tabularx}{\textwidth}{cCll}
+% \toprule
+% \textbf{引用方式} &
+% \textbf{排版效果} &
+% \textbf{\kvopt{bib-backend}{bibtex}} &
+% \textbf{\kvopt{bib-backend}{biblatex}} \\
+% \midrule
+% 单篇文献 &
+% 引文\cite{texbook} &
+% \verbcite{texbook} &
+% 同左 \\
+% 多篇文献 &
+% 引文\cite{texbook,companion} &
+% \verbcite{texbook,companion} &
+% 同左 \\
+% 标注页码 &
+% 引文\cite[126--137]{texbook} &
+% \verbcite[cite][126--137]{texbook} &
+% 同左 \\
+% 标注作者 &
+% \citet{texbook}指出 &
+% \verbcite[citet]{texbook} &
+% \verbcite[authornumcite]{texbook} \\
+% 标注作者、页码 &
+% \citet[42]{texbook}指出 &
+% \verbcite[citet][42]{texbook} &
+% \verbcite[authornumcite][42]{texbook} \\
+% 非上标 &
+% 引文{\citestyle{numbers}\cite{texbook}} &
+% \verbcite[parencite]{texbook} &
+% 同左 \\
+% \bottomrule
+% \end{tabularx}
+% \end{table}
+%^^A! \begin{table}[ht]
+%^^A! \caption{Citations in numerical style} \label{tab:citation-numerical}
+%^^A! \centering
+%^^A! \small
+%^^A! \def\C#1{\textcolor{MaterialGreen}{#1}}
+%^^A! \begin{tabularx}{\textwidth}{cCll}
+%^^A! \toprule
+%^^A! \textbf{Styles} &
+%^^A! \textbf{Results} &
+%^^A! \textbf{\kvopt{bib-backend}{bibtex}} &
+%^^A! \textbf{\kvopt{bib-backend}{biblatex}} \\
+%^^A! \midrule
+%^^A! Single &
+%^^A! Text\textsuperscript{[\C1]} &
+%^^A! \verbcite{texbook} &
+%^^A! Same as left \\
+%^^A! Multiple &
+%^^A! Text\textsuperscript{[\C1--\C2]} &
+%^^A! \verbcite{texbook,companion} &
+%^^A! Same as left \\
+%^^A! With page &
+%^^A! Text\textsuperscript{[\C1]126--137} &
+%^^A! \verbcite[cite][126--137]{texbook} &
+%^^A! Same as left \\
+%^^A! With author &
+%^^A! Knuth\textsuperscript{[\C1]} states &
+%^^A! \verbcite[citet]{texbook} &
+%^^A! \verbcite[authornumcite]{texbook} \\
+%^^A! With page and author &
+%^^A! Knuth\textsuperscript{[\C1]42} states &
+%^^A! \verbcite[citet][42]{texbook} &
+%^^A! \verbcite[authornumcite][42]{texbook} \\
+%^^A! No superscript &
+%^^A! Text [\C1] &
+%^^A! \verbcite[parencite]{texbook} &
+%^^A! Same as left \\
+%^^A! \bottomrule
+%^^A! \end{tabularx}
+%^^A! \end{table}
+%^^A!
+%
+% \begin{table}[ht]
+% \caption{著者—出版年制下的引用样式} \label{tab:citation-author-year}
+% \centering
+% \small
+% \def\!{\kern-1.5pt}
+% \begin{tabularx}{\textwidth}{cCll}
+% \toprule
+% \textbf{引用方式} &
+% \textbf{排版效果} &
+% \textbf{\kvopt{bib-backend}{bibtex}} &
+% \textbf{\kvopt{bib-backend}{biblatex}} \\
+% \midrule
+% 单篇文献 &
+% (\citeauthor{texbook}\!, \citeyear{texbook}\!) &
+% \verbcite[citep]{texbook} &
+% \verbcite{texbook} \\
+% 多篇文献 &
+% (\citeauthor{texbook}\!, \citeyear{texbook}\!;
+% \citeauthor{companion}\!, \citeyear{companion}\!) &
+% \verbcite[citep]{texbook,companion} &
+% \verbcite{texbook,companion} \\
+% 标注页码 &
+% (\citeauthor{texbook}\!, \citeyear{texbook}\!)^^A
+% \textsuperscript{126--137} &
+% \verbcite[citep][126--137]{texbook} &
+% \verbcite[cite][126--137]{texbook} \\
+% 标注作者 &
+% \citeauthor{texbook}(\citeyear{texbook}\!) &
+% \verbcite[citet]{texbook} &
+% 同左 \\
+% 标注作者、页码 &
+% \citeauthor{texbook}(\citeyear{texbook}\!)\textsuperscript{42} &
+% \verbcite[citet][42]{texbook} &
+% 同左 \\
+% \bottomrule
+% \end{tabularx}
+% \end{table}
+%^^A! \begin{table}[ht]
+%^^A! \caption{Citations in author-year style} \label{tab:citation-author-year}
+%^^A! \centering
+%^^A! \small
+%^^A! \def\C#1{\textcolor{MaterialGreen}{#1}}
+%^^A! \begin{tabularx}{\textwidth}{cCll}
+%^^A! \toprule
+%^^A! \textbf{Styles} &
+%^^A! \textbf{Results} &
+%^^A! \textbf{\kvopt{bib-backend}{bibtex}} &
+%^^A! \textbf{\kvopt{bib-backend}{biblatex}} \\
+%^^A! \midrule
+%^^A! Single &
+%^^A! (\C{Knuth}, \C{1986}) &
+%^^A! \verbcite[citep]{texbook} &
+%^^A! \verbcite{texbook} \\
+%^^A! Multiple &
+%^^A! (\C{Knuth}, \C{1986}; \C{Mittelbach et al.}, \C{2004}) &
+%^^A! \verbcite[citep]{texbook,companion} &
+%^^A! \verbcite{texbook,companion} \\
+%^^A! With page &
+%^^A! (\C{Knuth}, \C{1986})\textsuperscript{126--137} &
+%^^A! \verbcite[citep][126--137]{texbook} &
+%^^A! \verbcite[cite][126--137]{texbook} \\
+%^^A! With author &
+%^^A! \C{Knuth} (\C{1986}) &
+%^^A! \verbcite[citet]{texbook} &
+%^^A! Same as left \\
+%^^A! With page and author &
+%^^A! \C{Knuth} (\C{1986})\textsuperscript{42} &
+%^^A! \verbcite[citet][42]{texbook} &
+%^^A! Same as left \\
+%^^A! \bottomrule
+%^^A! \end{tabularx}
+%^^A! \end{table}
+%^^A!
+%
+% \paragraph{定理类环境}
+%^^A! \paragraph{Theorem-like environments}
+%
%^^A TODO: \DescribeEnv{proof}
% \begin{function}{axiom,corollary,definition,example,lemma,
% proof,theorem}
@@ -2002,15 +2150,16 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{table}[ht]
% \caption{预定义的数学环境} \label{tab:theorem}
% \centering
-% \begin{tabular}{cccccccc}
+% \small
+% \begin{tabular}{*{8}{c}}
% \toprule
-% \textbf{名称} &
-% \env{axiom} & \env{corollary} & \env{definition} &
-% \env{example} & \env{lemma} & \env{proof} &
-% \env{theorem} \\
+% \textbf{名称} &
+% \env{axiom} & \env{corollary} & \env{definition} & \env{example} &
+% \env{lemma} & \env{proof} & \env{theorem} \\
% \midrule
-% \textbf{含义} &
-% 公理 & 推论 & 定义 & 例 & 引理 & 证明 & 定理 \\
+% \textbf{含义} &
+% 公理 & 推论 & 定义 & 例 &
+% 引理 & 证明 & 定理 \\
% \bottomrule
% \end{tabular}
% \end{table}
@@ -2137,9 +2286,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{fdusyntax}[emph={[1]qed}]
% qed = (*\marg{符号}*)
% \end{fdusyntax}
-% 定理结束标记(即证毕符号)。如果用 \cs{newtheorem} 声明定理,
-% 则默认为空;用 \cs{newtheorem*} 声明,则默认为
-% |\ensuremath{\QED}|,即“$\QED$”。
+% 定理结束标记(即证毕符号)。如果用 \cs{newtheorem} 声明定理,则默认为空;
+% 用 \cs{newtheorem*} 声明,则默认为 |\ensuremath{\QED}|,即“$\QED$”。
% \end{function}
%^^A! \begin{function}{theorem/qed}
%^^A! \begin{fdusyntax}[emph={[1]qed}]
@@ -2155,10 +2303,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{fdusyntax}[emph={[1]counter}]
% counter = (*\marg{计数器}*)
% \end{fdusyntax}
-% 定理计数器,表示定理编号在 \meta{计数器} 的下一级,并会随
-% \meta{计数器} 的变化而清零。\scite{刘海洋2013latex入门}
-% 默认为 |chapter|,表示按章编号。使用 \cs{newtheorem*} 时,
-% 该选项无效。
+% 定理计数器,表示定理编号在 \meta{计数器} 的下一级,并会随 \meta{计数器}
+% 的变化而清零。\cite{刘海洋2013latex入门}默认为 |chapter|,表示按章编号。
+% 使用 \cs{newtheorem*} 时,该选项无效。
% \end{function}
%^^A! \begin{function}{theorem/counter}
%^^A! \begin{fdusyntax}[emph={[1]counter}]
@@ -2171,40 +2318,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{function}
%^^A!
%
-% \begin{function}{\caption}
-% \begin{fdusyntax}[deletetexcs={\caption},morekeywords={\caption}]
-% \caption(*\marg{图表标题}*)
-% \caption(*\oarg{短标题}\marg{长标题}*)
-% \end{fdusyntax}
-% 插入图表标题。可选参数 \meta{短标题} 用于图表目录。在
-% \meta{长标题} 中,您可以进行长达多段的叙述;但 \meta{短标题}
-% 和单独的 \meta{图表标题} 中则不允许分段。
-% \scite{刘海洋2013latex入门}
-% \end{function}
-%^^A! \begin{function}{\caption}
-%^^A! \begin{fdusyntax}[deletetexcs={\caption},morekeywords={\caption}]
-%^^A! \caption(*\marg{caption}*)
-%^^A! \caption(*\oarg{short caption}\marg{long caption}*)
-%^^A! \end{fdusyntax}
-%^^A! Insert the caption of figure or table. The optional argument
-%^^A! \meta{short caption} will be shown in the list of figures/tables.
-%^^A! In \meta{long caption}, you can write descriptions for several
-%^^A! paragraphs, but \meta{short caption} and the single
-%^^A! \meta{caption} will not allow multi-paragraph text (i.e.\
-%^^A! text containing \tn{par}) inside.
-%^^A! \end{function}
-%^^A!
-%
-% 按照排版惯例,建议您将表格的标题放置在绘制表格的命令之前,
-% 而将图片的标题放置在绘图或插图的命令之后。另需注意,
-% \tn{caption} 命令必须放置在浮动体环境(如 \env{table} 和
-% \env{figure})中。
-%^^A! By convention, caption of a table is usually put \emph{before}
-%^^A! the table itself, while for figure it's the opposite.
-%^^A! In addition, command \tn{caption} must be put inside float
-%^^A! environments (e.g.\ \env{table} and \env{figure}).
-%^^A!
-%
% \subsubsection{豹尾}
%^^A! \subsubsection{Back matter}
%^^A!
@@ -2228,9 +2341,9 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 打印参考文献列表。如果 \kvopt{bib-backend}{bibtex},则 \meta{选项}
% 无效,相当于 \tn{bibliography} \texttt{\marg{文献数据库}},其中的
% \meta{文献数据库} 可利用 \opt{style/bib-resource} 选项指定,具体见
-% \ref{subsubsec:论文格式}~小节;而如果 \kvopt{bib-backend}^^A
-% {biblatex},则该命令由 \pkg{biblatex} 宏包直接提供,可用选项请
-% 参阅其文档 \cite{biblatex}。
+% \ref{subsubsec:论文格式}~小节;而如果 \kvopt{bib-backend}{biblatex},
+% 则该命令由 \pkg{biblatex} 宏包直接提供,可用选项请参阅其文档
+% \cite{biblatex}。
% \end{function}
%^^A! \begin{function}[updated=2018-01-25]{\printbibliography}
%^^A! \begin{fdusyntax}[morekeywords={\printbibliography}]
@@ -2238,13 +2351,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \end{fdusyntax}
%^^A! Print the bibliography. When \kvopt{bib-backend}{bibtex}, then
%^^A! \meta{options} is invalid and this command is equivalent to
-%^^A! \tn{bibliography} \texttt{\marg{bib files}}, where
-%^^A! \meta{bib files} should be specified with option
-%^^A! \opt{style/bib-resource} (see subsubsection~%
-%^^A! \ref{subsubsec:style-and-format}). When \kvopt{bib-backend}%
-%^^A! {bibtex}, then \tn{printbibliography} is provided by
-%^^A! \pkg{biblatex} and the available options can be found in its
-%^^A! documentation.
+%^^A! \tn{bibliography} \texttt{\marg{bib files}}, where \meta{bib files}
+%^^A! should be specified with option \opt{style/bib-resource} (see
+%^^A! subsubsection~\ref{subsubsec:style-and-format}). When
+%^^A! \kvopt{bib-backend}{bibtex}, then \tn{printbibliography} is
+%^^A! provided by \pkg{biblatex} and the available options can be
+%^^A! found in its documentation.
%^^A! \end{function}
%^^A!
%
@@ -2258,12 +2370,10 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \item 在任何情况下,本模板都会\emph{显式}调用以下宏包
% (或文档类):
% \begin{itemize}
-% \item \pkg{expl3}、\pkg{xparse}、\pkg{xtemplate} 和
-% \pkg{l3keys2e},用于构建 \LaTeX3 编程环境
-% \scite{source3}。它们分属 \pkg{l3kernel} 和
-% \pkg{l3packages} 宏集。
+% \item \pkg{xtemplate} 和 \pkg{l3keys2e},用于扩展 \LaTeX3 编程环境。
+% 它们属于 \pkg{l3packages} 宏集。
% \item \cls{ctexbook},提供中文排版的通用框架。属于 \CTeX{}
-% 宏集 \scite{CTeX}。
+% 宏集 \cite{CTeX}。
% \item \pkg{amsmath},对 \LaTeX{} 的数学排版功能进行了
% 全面扩展。属于 \AmSLaTeX{} 套件。
% \item \pkg{unicode-math},负责处理 Unicode 编码的
@@ -2282,11 +2392,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \pkg{pifont} 宏包。它属于 \pkg{psnfss} 套件。
% \item 开启 \kvopt{style/bib-backend}{bibtex} 后,会调用
% \pkg{natbib} 宏包,并依赖 \BibTeX{} 程序。参考文献样式由
-% \pkg{gbt7714} 宏包提供 \scite{natbib,gbt7714}。
+% \pkg{gbt7714} 宏包提供 \cite{natbib,gbt7714}。
% \item 开启 \kvopt{style/bib-backend}{biblatex} 后,会调用
% \pkg{biblatex} 宏包,并依赖 \biber{} 程序。参考文献样式由
% \pkg{biblatex-gb7714-2015} 宏包提供
-% \scite{biblatex,biblatex-gb7714-2015}。
+% \cite{biblatex,biblatex-gb7714-2015}。
% \end{itemize}
%^^A! Different compilation methods and options will result in a
%^^A! different packages dependency. Details are as follows:
@@ -2294,9 +2404,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%^^A! \item In any case, \cls{fduthesis} will load the following
%^^A! packages \emph{explicitly}:
%^^A! \begin{itemize}
-%^^A! \item \pkg{expl3}, \pkg{xparse}, \pkg{xtemplate} and
-%^^A! \pkg{l3keys2e}, belong to \pkg{l3kernel} and
-%^^A! \pkg{l3packages} bundles
+%^^A! \item \pkg{xtemplate} and \pkg{l3keys2e}, belong to
+%^^A! \pkg{l3packages} bundle
%^^A! \item \cls{ctexbook}, belongs to \CTeX{} bundle
%^^A! \item \pkg{amsmath}, belongs to \AmSLaTeX{} bundle
%^^A! \item \pkg{unicode-math}
@@ -2336,12 +2445,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \newcommand\urlprefix{\newline\hspace*{\fill}}
% \let\OldUrl=\url
% \renewcommand\url[2][]{{\small\textit{#1}~\OldUrl{#2}}}
-% \newcommand\CTANurl[2][]{{\small\textit{#1}~\href{http://mirror.ctan.org/#2}^^A
-% {\ttfamily CTAN://#2}}}
+% \newcommand\CTANurl[2][]{{^^A
+% \small\textit{#1}~\href{https://mirror.ctan.org/#2}{\texttt{CTAN://#2}}}}
%
% \subsection{图书}
%
-% \bibitem{knuth1986texbook}
+% \bibitem[Knuth(1986)]{texbook}
% \textsc{Knuth D E}.
% \newblock \textit{The \TeX book: Computers \& Typesetting, volume A} [M].
% \newblock Boston: Addison--Wesley Publishing Company, 1986
@@ -2349,47 +2458,48 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \footnote{此代码只可作为学习之用。未经 Knuth 本人同意,您不应当编译此文档。}:]^^A
% {systems/knuth/dist/tex/texbook.tex}
%
-% \bibitem{mittelbach2004latexcompanion}
+% \bibitem[Mittelbach et~al.(2004)]{companion}
% \textsc{Mittelbach F} and \textsc{Goossens M}.
% \newblock \textit{The \LaTeX{} Companion} [M].
% \newblock 2nd ed.
% \newblock Boston: Addison--Wesley Publishing Company, 2004
%
-% \bibitem{胡伟2017latex2e}
+% \bibitem[()]{胡伟2017latex2e}
% 胡伟.
% \newblock \textit{\LaTeXe{} 文类和宏包学习手册} [M].
% \newblock 北京: 清华大学出版社, 2017
%
-% \bibitem{刘海洋2013latex入门}
+% \bibitem[()]{刘海洋2013latex入门}
% 刘海洋.
% \newblock \textit{\LaTeX{} 入门} [M].
% \newblock 北京: 电子工业出版社, 2013
%
% \subsection{标准、规范}
%
-% \bibitem{gb-t-7713.1-2006}
+% \bibitem[()]{gb-t-7713.1-2006}
% 国务院学位委员会办公室, 全国信息与文献标准化技术委员会.
% \newblock \textit{学位论文编写规则: GB/T 7713.1--2006} [S].
% \newblock 北京: 中国标准出版社, 2007
%
-% \bibitem{gb-t-7714-2015}
+% \bibitem[()]{gb-t-7714-2015}
% 全国信息与文献标准化技术委员会.
% \newblock \textit{信息与文献\quad 参考文献著录规则: GB/T 7714--2015} [S].
% \newblock 北京: 中国标准出版社, 2015
%
-% \bibitem{gb-t-15834-2011}
+% \bibitem[()]{gb-t-15834-2011}
% 教育部语言文字信息管理司.
% \newblock \textit{标点符号用法: GB/T 15834--2011} [S/OL].
% \newblock 北京: 中国标准出版社, 2012
% \urlprefix\url{http://www.moe.gov.cn/ewebeditor/uploadfile/2015/01/13/20150113091548267.pdf}
%
-% \bibitem{clreq}
+% \bibitem[()]{clreq}
% W3C.
% \newblock \textit{中文排版需求(Requirements for Chinese Text Layout)} [EB/OL].
-% \newblock (2020-08-17)
+% \newblock W3C Editor's Draft.
+% \newblock (2022-09-01)
% \urlprefix\url{https://w3c.github.io/clreq/}
%
-% \bibitem{复旦大学论文规范}
+% \bibitem[()]{复旦大学论文规范}
% 复旦大学图书馆, 复旦大学研究生院.
% \newblock \textit{复旦大学博士、硕士学位论文规范} [EB/OL].
% \newblock 2017 年 3 月修订版.
@@ -2398,30 +2508,30 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \subsection{宏包、模版}
%
-% \bibitem{source2e}
+% \bibitem[()]{source2e}
% \textsc{Braams J}, \textsc{Carlisle D}, \textsc{Jeffrey A}, et al.
% \newblock \textit{The \LaTeXe{} Sources} [CP/OL].
-% \newblock (2020-02-02)
+% \newblock (2022-06-01)
% \urlprefix\url{https://ctan.org/pkg/latex}
% \urlprefix\CTANurl[源代码:]{macros/latex/base/source2e.pdf}
%
-% \bibitem{CTeX}
+% \bibitem[()]{CTeX}
% \textsc{CTEX.ORG}.
% \newblock \textit{\CTeX{} 宏集手册} [EB/OL].
-% \newblock version 2.5.4,
-% \newblock (2020-08-23)
+% \newblock version 2.5.10,
+% \newblock (2022-07-14)
% \urlprefix\url{https://ctan.org/pkg/ctex}
% \urlprefix\CTANurl[文档及源代码:]{language/chinese/ctex/ctex.pdf}
%
-% \bibitem{xeCJK}
+% \bibitem[()]{xeCJK}
% \textsc{CTEX.ORG}.
% \newblock \textit{\pkg{xeCJK} 宏包} [EB/OL].
-% \newblock version 3.8.5,
-% \newblock (2020-08-23)
+% \newblock version 3.9.1,
+% \newblock (2022-08-05)
% \urlprefix\url{https://ctan.org/pkg/xecjk}
% \urlprefix\CTANurl[文档及源代码:]{macros/xetex/latex/xecjk/xeCJK.pdf}
%
-% \bibitem{natbib}
+% \bibitem[()]{natbib}
% \textsc{Daly P W}.
% \newblock \textit{Natural Sciences Citations and References} [EB/OL].
% \newblock version 8.31b,
@@ -2429,55 +2539,55 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \urlprefix\url{https://ctan.org/pkg/natbib}
% \urlprefix\CTANurl[文档及源代码:]{macros/latex/contrib/natbib/natbib.pdf}
%
-% \bibitem{source3}
+% \bibitem[()]{source3}
% \textsc{The \LaTeX3 Project}.
% \newblock \textit{The \LaTeX3 Sources} [CP/OL].
-% \newblock (2020-08-07)
+% \newblock (2022-08-30)
% \urlprefix\url{https://ctan.org/pkg/l3kernel}
% \urlprefix\CTANurl[源代码:]{macros/latex/contrib/l3kernel/source3.pdf}
%
-% \bibitem{biblatex}
-% \textsc{Lehman P}, \textsc{Kime P}, \textsc{Boruvka A}, et al.
+% \bibitem[()]{biblatex}
+% \textsc{Kime P}, \textsc{Wemheuer M}, \textsc{Lehman P}.
% \newblock \textit{The \pkg{biblatex} Package} [EB/OL].
-% \newblock version 3.15a,
-% \newblock (2020-08-23)
+% \newblock version 3.18b,
+% \newblock (2022-07-12)
% \urlprefix\url{https://ctan.org/pkg/biblatex}
% \urlprefix\CTANurl[文档:]{macros/latex/contrib/biblatex/doc/biblatex.pdf}
%
-% \bibitem{lshort}
+% \bibitem[()]{lshort}
% \textsc{Oetiker T}, \textsc{Partl H}, \textsc{Hyna I}, et al.
% \newblock \textit{The Not So Short Introduction to \LaTeXe{}: Or \LaTeXe{} in 139 minutes} [EB/OL].
-% \newblock version 6.2,
-% \newblock (2018-02-28)
+% \newblock version 6.4,
+% \newblock (2021-03-09)
% \urlprefix\url{https://ctan.org/pkg/lshort-english}
% \urlprefix\CTANurl[文档:]{info/lshort/english/lshort.pdf}
%
-% \bibitem{lshort-zh-cn}
+% \bibitem[()]{lshort-zh-cn}
% \textsc{Oetiker T}, \textsc{Partl H}, \textsc{Hyna I}, et al.
-% \newblock \textit{一份(不太)简短的 \LaTeXe{} 介绍: 或 112 分钟了解 \LaTeXe{}} [EB/OL].
+% \newblock \textit{一份(不太)简短的 \LaTeXe{} 介绍: 或 111 分钟了解 \LaTeXe{}} [EB/OL].
% \newblock \CTeX{} 开发小组, 译.
-% \newblock 原版版本 version 6.2, 中文版本 version 6.02,
-% \newblock (2020-08-03)
+% \newblock 原版版本 version 6.4, 中文版本 version 6.03,
+% \newblock (2021-11-20)
% \urlprefix\url{https://ctan.org/pkg/lshort-zh-cn}
% \urlprefix\CTANurl[文档:]{info/lshort/chinese/lshort-zh-cn.pdf}
%
-% \bibitem{biblatex-gb7714-2015}
+% \bibitem[()]{biblatex-gb7714-2015}
% 胡振震.
% \newblock \textit{符合 GB/T 7714-2015 标准的 biblatex 参考文献样式} [EB/OL].
-% \newblock version 1.0v,
-% \newblock (2020-07-21)
+% \newblock version 1.1j,
+% \newblock (2022-08-29)
% \urlprefix\url{https://ctan.org/pkg/biblatex-gb7714-2015}
% \urlprefix\CTANurl[文档:]{biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf}
%
-% \bibitem{gbt7714}
+% \bibitem[()]{gbt7714}
% 李泽平(\textsc{Zeping L}).
% \newblock \textit{GB/T 7714-2015 \BibTeX{} Style} [EB/OL].
-% \newblock version 2.0.2,
-% \newblock (2020-06-08)
+% \newblock version 2.1.4,
+% \newblock (2022-03-12)
% \urlprefix\url{https://ctan.org/pkg/gbt7714}
% \urlprefix\CTANurl[文档:]{biblio/bibtex/contrib/gbt7714/gbt7714.pdf}
%
-% \bibitem{cquthesis}
+% \bibitem[()]{cquthesis}
% 李振楠.
% \newblock \textit{\textsc{CquThesis}:重庆大学毕业论文 \LaTeX{} 模板} [EB/OL].
% \newblock version 1.50,
@@ -2485,70 +2595,74 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \urlprefix\url{https://ctan.org/pkg/cquthesis}
% \urlprefix\CTANurl[文档及源代码:]{macros/latex/contrib/cquthesis/cquthesis.pdf}
%
-% \bibitem{thuthesis}
+% \bibitem[()]{pkuthss}
+% Casper Ti. Vector.
+% \newblock \textit{北京大学学位论文模版:pkuthss} [EB/OL].
+% \newblock version 1.9.2,
+% \newblock (2022-05-05)
+% \urlprefix\url{https://ctan.org/pkg/pkuthss}
+% \urlprefix\CTANurl[文档及源代码:]{macros/latex/contrib/pkuthss/pkuthss.pdf}
+%
+% \bibitem[()]{thuthesis}
% 清华大学 TUNA 协会.
% \newblock \textit{\textsc{ThuThesis}:清华大学学位论文模板} [EB/OL].
-% \newblock version 6.1.3,
-% \newblock (2020-07-09)
+% \newblock version 7.3.0,
+% \newblock (2022-05-17)
% \urlprefix\url{https://ctan.org/pkg/thuthesis}
% \urlprefix\CTANurl[文档及源代码:]{macros/latex/contrib/thuthesis/thuthesis.pdf}
%
% \emph{以下模版未收录至 CTAN,但仍然保持活跃更新。}
%
-% \bibitem{sjtuthesis}
+% \bibitem[()]{sjtuthesis}
% \textsc{SJTUG}.
% \newblock \textit{上海交通大学学位论文模板} [EB/OL].
-% \newblock version 1.0.0rc7,
-% \newblock (2020-07-31)
+% \newblock version 1.1.1,
+% \newblock (2022-08-04)
% \urlprefix\url{https://github.com/sjtug/SJTUThesis}
% \urlprefix\url[源代码仓库:]{https://github.com/sjtug/SJTUTeX}
%
-% \bibitem{ustcthesis}
+% \bibitem[()]{ustcthesis}
% \textsc{USTC \TeX{} User Group}.
% \newblock \textit{中国科学技术大学学位论文 \LaTeX{} 模板} [EB/OL].
-% \newblock version 3.2.1,
-% \newblock (2020-04-03)
+% \newblock version 3.3.3,
+% \newblock (2022-05-17)
% \urlprefix\url{https://github.com/ustctug/ustcthesis}
%
-% \bibitem{ucasthesis}
+% \bibitem[()]{ucasthesis}
% \textsc{mohuangrui}.
% \newblock \textit{\pkg{ucasthesis} 国科大学位论文 \LaTeX{} 模板} [EB/OL].
-% \newblock (2020-07-28)
+% \newblock (2021-10-29)
% \urlprefix\url{https://github.com/mohuangrui/ucasthesis}
%
% \emph{以下模版现已停止更新。}
%
-% \bibitem{pandoxie2014fduthesislatex}
+% \bibitem[()]{pandoxie2014fduthesislatex}
% \textsc{Pandoxie}.
% \newblock \textit{Fudan University-Latex Template} [EB/OL].
% \newblock (2014-06-07)
% \urlprefix\url{https://github.com/Pandoxie/FDU-Thesis-Latex}
%
-% \bibitem{richard2016fudanthesis}
+% \bibitem[()]{richard2016fudanthesis}
% \textsc{richard}.
% \newblock \textit{复旦大学硕士学位论文模板} [EB/OL].
% \newblock (2016-01-31)
% \urlprefix\url{https://github.com/richarddzh/fudan-thesis}
%
-% \bibitem{数院毕业论文格式}
-% 复旦大学数学科学学院.
-% \newblock \textit{毕业论文格式 tex 版和 word 版} [EB/OL].
-% \urlprefix\url{http://math.fudan.edu.cn/show.aspx?info_lb=664&flag=101&info_id=1816}
-%
-% \bibitem{数院毕业论文格式更新}
+% \bibitem{数院本科毕业论文写作模板}
% 复旦大学数学科学学院.
-% \newblock \textit{毕业论文格式: Word、\TeX{} 模板更新} [EB/OL].
-% \urlprefix\url{http://math.fudan.edu.cn/Show.aspx?info_lb=664&info_id=1855&flag=101}
+% \newblock \textit{2019 春季本科毕业论文写作模板} [EB/OL].
+% \newblock (2019-03-12)
+% \urlprefix\url{https://math.fudan.edu.cn/f3/e1/c30360a324577/page.htm}
%
% \subsection{其他}
%
-% \bibitem{wright2009dtxfile}
+% \bibitem[()]{wright2009dtxfile}
% \textsc{Wright J}.
% \newblock \textit{A model dtx file} [EB/OL].
% \newblock (2009-10-06)
% \urlprefix\url{https://www.texdev.net/2009/10/06/a-model-dtx-file/}
%
-% \bibitem{孔雀计划}
+% \bibitem[()]{孔雀计划}
% 刘庆(\textsc{Eric Q L}).
% \newblock \textit{孔雀计划:中文字体排印的思路} [EB/OL].
% \urlprefix\url{https://thetype.com/kongque/}
@@ -2585,11 +2699,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 以下代码中有一些形如 \textcolor[HTML]{2E3191}{\textsf{<*class>}}
% 的标记,这是 \pkg{DocStrip} 中的“guard”,用来选择性地提取文件。
% “\textsf{*}”和“\textsf{/}”分别表示该部分的开始和结束。不含
-% “\textsf{*}”和“\textsf{/}”的 guard 出现在行号右侧,它们用来确定
+% “\textsf{*}”和“\textsf{/}”的 guard 出现在行号左侧,它们用来确定
% 单独一行代码的归属。这些 guard 的颜色深浅不一,用以明确嵌套关系。
%
% 另有若干形如 \textcolor{MaterialPink}{\textsf{<@@=fdu>}} 的 guard,
-% 它们由 \pkg{l3docstrip} 定义,用来指示名字空间(模块)。
+% 它们用来指示名字空间(模块)。
%
% \subsection{准备}
%
@@ -2598,14 +2712,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%<*class|class-en>
% \end{macrocode}
%
+% \changes{v0.8}{2021/09/15}{同步 \LaTeX{} 2020/10/01,不再显式调用
+% \pkg{expl3} 和 \pkg{xparse} 宏包。}
+% \changes{v0.8}{2022/02/17}{在使用前声明提示信息。}
+%
% 检查 \LaTeX3 编程环境。
% \begin{macrocode}
-\RequirePackage { xparse, xtemplate, l3keys2e }
-\clist_map_inline:nn { expl3, xparse, xtemplate, l3keys2e }
- {
- \@ifpackagelater {#1} { 2018/05/12 }
- { } { \msg_error:nnn { fduthesis } { l3-too-old } {#1} }
- }
+\RequirePackage { xtemplate, l3keys2e }
\msg_new:nnn { fduthesis } { l3-too-old }
{
Package~ "#1"~ is~ too~ old. \\\\
@@ -2613,10 +2726,21 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
"l3kernel"~ and~ "l3packages"~ using~ your~ TeX~ package \\
manager~ or~ from~ CTAN.
}
+\clist_map_inline:nn { xtemplate, l3keys2e }
+ {
+ \@ifpackagelater {#1} { 2020/07/17 }
+ { } { \msg_error:nnn { fduthesis } { l3-too-old } {#1} }
+ }
% \end{macrocode}
%
% 目前 \cls{fduthesis} 仅支持 \XeTeX{} 和 \LuaTeX{}。
% \begin{macrocode}
+\msg_new:nnn { fduthesis } { unsupported-engine }
+ {
+ The~ fduthesis~ class~ requires~ either~ XeTeX~ or~ LuaTeX. \\\\
+ "#1"~ is~ not~ supported~ at~ present.~ You~ must~ change \\
+ your~ typesetting~ engine~ to~ "xelatex"~ or~ "lualatex".
+ }
\sys_if_engine_xetex:F
{
\sys_if_engine_luatex:F
@@ -2625,12 +2749,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
{ \c_sys_engine_str }
}
}
-\msg_new:nnn { fduthesis } { unsupported-engine }
- {
- The~ fduthesis~ class~ requires~ either~ XeTeX~ or~ LuaTeX. \\\\
- "#1"~ is~ not~ supported~ at~ present.~ You~ must~ change \\
- your~ typesetting~ engine~ to~ "xelatex"~ or~ "lualatex".
- }
% \end{macrocode}
%
% \subsubsection{内部变量声明}
@@ -2694,19 +2812,17 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \subsubsection{内部函数}
%
-% \begin{macro}{\cs_generate_variant:cn,
-% \file_input:V,
+% \begin{macro}{\file_input:V,
% \int_to_arabic:v,
% \keys_define:nx,
% \tl_map_inline:xn}
% \begin{macro}[TF]{\tl_if_eq:Vn}
% \LaTeX3{} 函数变体。
% \begin{macrocode}
-\cs_generate_variant:Nn \cs_generate_variant:Nn { cn }
-\cs_generate_variant:Nn \file_input:n { V }
-\cs_generate_variant:Nn \int_to_arabic:n { v }
-\cs_generate_variant:Nn \keys_define:nn { nx }
-\cs_generate_variant:Nn \tl_map_inline:nn { xn }
+\cs_generate_variant:Nn \file_input:n { V }
+\cs_generate_variant:Nn \int_to_arabic:n { v }
+\cs_generate_variant:Nn \keys_define:nn { nx }
+\cs_generate_variant:Nn \tl_map_inline:nn { xn }
\prg_generate_conditional_variant:Nnn \tl_if_eq:nn { Vn } { T, TF }
% \end{macrocode}
% \end{macro}
@@ -2756,6 +2872,18 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
+% \changes{v0.8}{2021/09/15}{统一使用 \LaTeX{} 2020/10/01 新的钩子机制。}
+%
+% \begin{macro}{\@@_gadd_ltxhook:nn}
+% 封装 \LaTeX{} 的钩子管理机制。本模板中的字体加载命令位于
+% |begindocument/before| 钩子中,需确保在 \pkg{xeCJK} 之前执行。
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_gadd_ltxhook:nn #1#2
+ { \hook_gput_code:nnn {#1} { . } {#2} }
+\hook_gset_rule:nnnn { begindocument/before } { . } { < } { xeCJK }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_patch_cmd:Nnn,\@@_appto_cmd:Nn}
% 补丁工具,来自 \pkg{ctexpatch} 宏包。
% \begin{macrocode}
@@ -2783,7 +2911,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\cs_new_protected:Npn \@@_define_fn_style:nn #1#2
{ \tl_const:cn { c_@@_fn_style_ #1 _tl } {#2} }
\cs_new_protected:Npn \@@_define_punct:nn #1#2
- { \tl_const:cn { c_@@_ #1 _tl } { \@@_symbol:n {#2} } }
+ { \tl_const:cn { c_@@_ #1 _tl } {#2} }
% \cs_new_protected:Npn \@@_define_sep:nn #1#2
% { \tl_const:cn { c_@@_ #1 _sep_tl } {#2} }
% \cs_new_protected:Npn \@@_define_format:nn #1#2
@@ -2799,7 +2927,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macro}
%
% \begin{macro}{\@@_msg_new:nn,
-% \@@_error:n,\@@_error:nn,\@@_error:nx,\@@_error:nnn,
+% \@@_error:n,\@@_error:nn,\@@_error:nx,\@@_error:nnn,\@@_error:nnnn
% \@@_warning:n,\@@_warning:nn,\@@_warning:nxx,
% \@@_info:nx}
% 各种信息函数的缩略形式。
@@ -2809,6 +2937,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\cs_new:Npn \@@_error:nn { \msg_error:nnn { fduthesis } }
\cs_new:Npn \@@_error:nx { \msg_error:nnx { fduthesis } }
\cs_new:Npn \@@_error:nnn { \msg_error:nnnn { fduthesis } }
+\cs_new:Npn \@@_error:nnnn { \msg_error:nnnnn { fduthesis } }
\cs_new:Npn \@@_warning:n { \msg_warning:nn { fduthesis } }
\cs_new:Npn \@@_warning:nn { \msg_warning:nnn { fduthesis } }
\cs_new:Npn \@@_warning:nxx { \msg_warning:nnxx { fduthesis } }
@@ -2889,7 +3018,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
unknown .code:n = { \@@_error:n { unknown-option } }
}
\@@_msg_new:nn { unknown-option }
- { Class~ option~ "\l_keys_key_tl"~ is~ unknown. }
+ { Class~ option~ "\l_keys_key_str"~ is~ unknown. }
% \end{macrocode}
%
% 将文档类选项传给 |fdu/option|。
@@ -2900,13 +3029,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 载入参数配置文件。
% \begin{macrocode}
\file_input:n { fduthesis.def }
+\@@_msg_new:nn { load-config-file }
+ { You~ are~ loading~ config~ file~ "#1". }
\tl_if_empty:NF \g_@@_config_tl
{
- \file_input:V \g_@@_config_tl
\@@_info:nx { load-config-file } { \g_@@_config_tl }
+ \file_input:V \g_@@_config_tl
}
-\@@_msg_new:nn { load-config-file }
- { You~ are~ loading~ config~ file~ '#1'. }
% \end{macrocode}
%
% \subsection{载入宏包、文档类}
@@ -2942,17 +3071,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
{ \PassOptionsToPackage #1 }
% \end{macrocode}
%
-% 本模板会在 \pkg{ctexhook} 提供的钩子 \cs{ctex_at_end_preamble:n}
-% 中调用 \pkg{biblatex},而 \pkg{biblatex} 自身又会使用 \pkg{etoolbox}
-% 的钩子 \tn{AtEndPreamble},因此需要在载入 \cls{ctexbook} 之前调用
-% \pkg{etoolbox}。钩子的顺序为:
-% \[ \text{\tn{CTEX@document@left@hook}}
-% \prec \text{\tn{@endpreamblehook}}
-% \prec \text{\texttt{\textbackslash begin\{document\}}}. \]
-% \begin{macrocode}
-\RequirePackage { etoolbox }
-% \end{macrocode}
-%
% 载入 \cls{ctexbook} 文档类。
% 在使用 \XeLaTeX{} 编译时,\cls{ctexbook} 的底层将调用 \pkg{xeCJK}
% 宏包;而在使用 \LuaLaTeX{} 编译时,则将调用 \pkg{LuaTeX-ja} 宏包。
@@ -2980,40 +3098,43 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
}
% \end{macrocode}
%
-% \begin{macro}{\@@_check_package:nnn}
-% 检查过时宏包。
+% \changes{v0.8}{2021/09/16}{只检查 \cls{ctexbook} 和 \pkg{xeCJK} 的版本。}
+%
+% \begin{macro}{\@@_check_package:nnn,\@@_check_class:nnn}
+% 检查过时宏包和文档类。
% \begin{macrocode}
\cs_new_protected:Npn \@@_check_package:nnn #1#2#3
{
\@ifpackagelater {#1} {#2}
- { } { \@@_error:nnn { package-too-old } {#1} {#3} }
+ { } { \@@_error:nnnn { package-too-old } { Package } {#1} {#3} }
+ }
+\cs_new_protected:Npn \@@_check_class:nnn #1#2#3
+ {
+ \@ifclasslater {#1} {#2}
+ { } { \@@_error:nnnn { package-too-old } { Class } {#1} {#3} }
}
\@@_msg_new:nn { package-too-old }
{
- Package~ "#1"~ is~ too~ old. \\
- The~ fduthesis~ class~ only~ supports~ "#1"~ with~ a~ version \\
- higher~ than~ v#2. \\\\
- Please~ update~ an~ up-to-date~ version~ of~ it~ using~ your \\
- TeX~ package~ manager~ or~ from~ CTAN.
+ #1~ "#2"~ is~ too~ old. \\
+ The~ fduthesis~ class~ only~ supports~ "#2" \\
+ with~ a~ version~ higher~ than~ v#3. \\\\
+ Please~ update~ an~ up-to-date~ version~ of~ it \\
+ using~ your~ TeX~ package~ manager~ or~ from~ CTAN.
}
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
-\@@_check_package:nnn { ctex } { 2017/08/07 } { 2.4.10 }
-\@@_check_package:nnn { fontspec } { 2017/09/22 } { 2.6e }
-\@@_check_package:nnn { unicode-math } { 2017/11/18 } { 0.8i }
+\@@_check_class:nnn { ctexbook } { 2021/03/14 } { 2.5.6 }
\sys_if_engine_xetex:T
- { \@@_check_package:nnn { xeCJK } { 2017/08/07 } { 3.5.0 } }
-\sys_if_engine_luatex:T
- { \@@_check_package:nnn { xunicode-addon } { 2018/04/30 } { 3.7.1 } }
+ { \@@_check_package:nnn { xeCJK } { 2020/05/01 } { 3.8.3 } }
% \end{macrocode}
%
% \subsection{页面布局}
%
% 利用 \pkg{geometry} 宏包设置纸张大小、页面边距以及页眉高度。这里,
-% $\SI{2.54}{\centi\meter}=\SI{1}{in}$,
-% $\SI{3.18}{\centi\meter}=\SI{1.25}{in}$。
+% $\qty{2.54}{\centi\meter}=\qty{1}{in}$,
+% $\qty{3.18}{\centi\meter}=\qty{1.25}{in}$。
% \begin{macrocode}
\geometry
{
@@ -3024,7 +3145,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
}
% \end{macrocode}
%
-% 草稿模式下显示页面边框及页眉、页脚线 。
+% 草稿模式下显示页面边框及页眉、页脚线。
% \begin{macrocode}
\bool_if:NT \g_@@_draft_bool { \geometry { showframe } }
% \end{macrocode}
@@ -3097,15 +3218,16 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \@@_setCJKmainfont:nn,
% \@@_setCJKsansfont:nn,
% \@@_setCJKmonofont:nn}
+% \changes{v0.8}{2021/09/15}{展开字体族名称。}
% 用于设置中文字体的辅助函数,来源于 \pkg{xeCJK} 和 \pkg{ctex} 宏包。
% \begin{macrocode}
%<*class>
\cs_new_protected:Npn \@@_setCJKmainfont:nn #1#2
- { \@@_set_family:nnn { \CJKrmdefault } {#2} {#1} }
+ { \@@_set_family:xnn { \CJKrmdefault } {#2} {#1} }
\cs_new_protected:Npn \@@_setCJKsansfont:nn #1#2
- { \@@_set_family:nnn { \CJKsfdefault } {#2} {#1} }
+ { \@@_set_family:xnn { \CJKsfdefault } {#2} {#1} }
\cs_new_protected:Npn \@@_setCJKmonofont:nn #1#2
- { \@@_set_family:nnn { \CJKttdefault } {#2} {#1} }
+ { \@@_set_family:xnn { \CJKttdefault } {#2} {#1} }
% \end{macrocode}
% \end{macro}
%
@@ -3142,7 +3264,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_set_family:nnn,\@@_switch_family:n}
+% \begin{macro}{\@@_set_family:nnn,\@@_set_family:xnn,\@@_switch_family:n}
% 封装 CJK 字体族的设定和切换命令。
% \begin{macrocode}
\sys_if_engine_xetex:TF
@@ -3154,6 +3276,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\cs_new_eq:NN \@@_set_family:nnn \ctex_ltj_set_family:nnn
\cs_new_eq:NN \@@_switch_family:n \ctex_ltj_switch_family:n
}
+\cs_generate_variant:Nn \@@_set_family:nnn { x }
%</class>
% \end{macrocode}
% \end{macro}
@@ -3184,6 +3307,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macro}
%
% \changes{v0.7e}{2019/04/10}{兼容 Libertinus 和 XITS 字体的文件名变动。}
+% \changes{v0.8}{2021/09/15}{判断 Libertinus Sans Bold Oblique 字体是否存在。}
+%
% \begin{macro}{
% \g_@@_font_family_libertinus_serif_tl,
% \g_@@_font_family_libertinus_sans_tl,
@@ -3232,7 +3357,12 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\tl_set:Nn \g_@@_font_style_libertinus_bf_tl { Bold }
\tl_set:Nn \g_@@_font_style_libertinus_it_tl { Italic }
\tl_set:Nn \g_@@_font_style_libertinus_bfit_tl { BoldItalic }
- \tl_set:Nn \g_@@_font_style_libertinus_bfsl_tl { BoldOblique }
+% \end{macrocode}
+% 较新版本中 Libertinus Sans Bold Oblique 字体被移除,需进行额外判断。
+% \begin{macrocode}
+ \fontspec_font_if_exist:nTF { LibertinusSans-BoldOblique.otf }
+ { \tl_set:Nn \g_@@_font_style_libertinus_bfsl_tl { BoldOblique } }
+ { \tl_set:Nn \g_@@_font_style_libertinus_bfsl_tl { Bold } }
}
{
\tl_set:Nn \g_@@_font_family_libertinus_serif_tl { libertinusserif }
@@ -3569,7 +3699,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\@@_warning:n { source-han }
}
\@@_msg_new:nn { source-han }
- { Font~ set~ `sourcehan'~ does~ not~ contain~ kaiti~ and~ fangsong. }
+ { Font~ set~ "sourcehan"~ does~ not~ contain~ kaiti~ and~ fangsong. }
% \end{macrocode}
% \end{macro}
%
@@ -3662,7 +3792,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \subsubsection{句号}
+% \subsubsection{其他设置}
%
% \begin{macro}{style/fullwidth-stop}
% \changes{v0.6}{2017/10/14}{支持类别码和 TECKit 映射两种机制。}
@@ -3702,7 +3832,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
}
% \end{macrocode}
% \end{macro}
-%
% 提示信息。
% \begin{macrocode}
\@@_msg_new:nn { mapping-not-available }
@@ -3713,17 +3842,34 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
%
% \begin{macro}{\@@_set_fullwidth_stop_catcode:}
+% \changes{v0.8}{2021/09/16}{将类别码设置应用于预定义的文本中,并优化实现。}
% 将\FSID 设置为活动符,并定义为句点\FSFW。
% \begin{macrocode}
\cs_new:Npn \@@_set_fullwidth_stop_catcode:
{
- \char_set_active_eq:nN { "3002 } \c_@@_fwid_full_stop_tl
- \char_set_catcode_active:n { "3002 }
+ \char_set_active_eq:NN ^^^^3002 \c_@@_fwid_full_stop_tl
+ \char_set_catcode_active:N ^^^^3002
+ \clist_map_inline:nn
+ { \c_@@_orig_decl_text_tl, \c_@@_auth_decl_text_tl }
+ { \tl_set_rescan:Nno ##1 { } {##1} }
}
%</class>
% \end{macrocode}
% \end{macro}
%
+% \changes{v0.8}{2021/09/15}{允许 \tn{emph} 对中文生效。}
+%
+% 声明 \tn{emph} 样式序列,使得中文强调以楷体显示。
+% \begin{macrocode}
+%<*class>
+\DeclareEmphSequence
+ {
+ \itshape \fdu@kai,
+ \upshape \CJKfamily { \CJKfamilydefault },
+ }
+%</class>
+% \end{macrocode}
+%
% \changes{v0.6}{2017/10/28}{优化 \LuaTeX{} 下希腊字母、西里尔字母和带圈数字的
% 显示(\pkg{ctex} v2.4.11 已默认进行处理)。}
%
@@ -3734,52 +3880,33 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\fancyhf { }
% \end{macrocode}
%
-% \begin{variable}{\l_@@_header_center_mark_tl}
-% 保存中间页眉的文字。正文中设置为空,目录、摘要、符号表等设置为相应标题。
+% \begin{macro}{\@@_fancy_head:nn}
+% 页眉样式。
% \begin{macrocode}
-\tl_new:N \l_@@_header_center_mark_tl
+\cs_new_protected:Npn \@@_fancy_head:nn #1#2
+ {
+ \fancyhead [#1]
+%<class> { \small \fdu@kai \nouppercase {#2} }
+%<class-en> { \small \itshape \nouppercase {#2} }
+ }
% \end{macrocode}
-% \end{variable}
+% \end{macro}
%
% 构建页眉,要在单面或双面下分别设置。
%
-% \cs{fancyhead} 的选项中,\opt{E} 和 \opt{O} 分别表示偶数(even)
-% 和奇数(odd), 而 \opt{L}、\opt{R} 和 \opt{C} 则分别表示左
-% (left)、右(right)和中间(center)。按照通常的排版规则,
-% 在双面模式下,偶数页的中间页眉文字在左,奇数页则在右。单面模式下,
-% 左右页眉都要显示。
+% \cs{fancyhead} 的选项中,\opt{E} 和 \opt{O} 分别表示偶数(even)和奇数(odd), 而 \opt{L}、
+% \opt{R} 和 \opt{C} 则分别表示左(left)、右(right)和中间(center)。按照通常的排版规则,
+% 双面模式下,偶数页的中间页眉文字在左,奇数页则在右;单面模式下,左右页眉都会显示。
% \begin{macrocode}
\bool_if:NTF \g_@@_twoside_bool
-%<*class>
- {
- \fancyhead [ EL ] { \small \nouppercase { \fdu@kai \leftmark } }
- \fancyhead [ OR ] { \small \nouppercase { \fdu@kai \rightmark } }
- }
{
- \fancyhead [ L ] { \small \nouppercase { \fdu@kai \leftmark } }
- \fancyhead [ R ] { \small \nouppercase { \fdu@kai \rightmark } }
- \fancyhead [ C ]
- {
- \small \nouppercase
- { \fdu@kai \l_@@_header_center_mark_tl }
- }
+ \@@_fancy_head:nn { EL } { \leftmark }
+ \@@_fancy_head:nn { OR } { \rightmark }
}
-%</class>
-%<*class-en>
{
- \fancyhead [ EL ] { \small \nouppercase { \itshape \leftmark } }
- \fancyhead [ OR ] { \small \nouppercase { \itshape \rightmark } }
+ \@@_fancy_head:nn { L } { \leftmark }
+ \@@_fancy_head:nn { R } { \rightmark }
}
- {
- \fancyhead [ L ] { \small \nouppercase { \itshape \leftmark } }
- \fancyhead [ R ] { \small \nouppercase { \itshape \rightmark } }
- \fancyhead [ C ]
- {
- \small \nouppercase
- { \itshape \l_@@_header_center_mark_tl }
- }
- }
-%</class-en>
% \end{macrocode}
%
% 构建页脚,用来显示页码。选项 \opt{C} 表示居中(center)。
@@ -3794,8 +3921,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \begin{macro}{\cleardoublepage}
% 重定义 \tn{cleardoublepage},使得偶数页面在没有内容时也不显示页眉页脚,见
-% \url{https://tex.stackexchange.com/a/1683}。最后清空中间页眉,确保正文部分
-% 页眉显示正确。
+% \url{https://tex.stackexchange.com/a/1683}。
% \begin{macrocode}
\RenewDocumentCommand \cleardoublepage { }
{
@@ -3805,7 +3931,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\int_if_odd:nF \c@page
{ \hbox:n { } \thispagestyle { empty } \newpage }
}
- \tl_gset:Nn \l_@@_header_center_mark_tl { }
}
% \end{macrocode}
% \end{macro}
@@ -3891,16 +4016,15 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macro}
%
% \begin{macro}{\@@_chapter_header:n}
-% 单页模式下,目录、摘要、符号表等的页眉中间为相应标题,左右为空。
+% \changes{v0.8}{2022/01/18}{简化单页模式下页眉的实现方式。}
+% 单页模式下,目录、摘要、符号表等的页眉中间为相应标题,左右为空。这里通过居中的
+% \tn{leftmark} 实现。
% \begin{macrocode}
\cs_new_protected:Npn \@@_chapter_header:n #1
{
\bool_if:NTF \g_@@_twoside_bool
{ \markboth {#1} {#1} }
- {
- \markboth { } { }
- \tl_gset:Nn \l_@@_header_center_mark_tl {#1}
- }
+ { \markboth { \hfill #1 \hfill } { } }
}
% \end{macrocode}
% \end{macro}
@@ -4159,7 +4283,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{macro}[int]{\@makefntext}
% \changes{v0.7}{2018/01/18}{简化实现,兼容 \pkg{fancyvrb} 宏包。
% 不再使用悬挂缩进。}
-% 重定义内部脚注文字命令,使脚注编号不使用上标,宽度为 \SI{1.5}{em}。
+% 重定义内部脚注文字命令,使脚注编号不使用上标,宽度为 \qty{1.5}{em}。
% 见 \url{http://tex.stackexchange.com/q/19844} 和
% \url{https://www.zhihu.com/question/53030087}。
% \begin{macrocode}
@@ -4402,12 +4526,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \begin{macro}{\thefigure,\thetable}
% \changes{v0.7}{2018/01/17}{改为可完全展开的命令。}
+% \changes{v0.8}{2021/03/10}{直接调用 \tn{thechapter} 使得附录中的图表编号正确显示。}
% 重定义图表编号。
% \begin{macrocode}
\cs_set:Npn \thefigure
- { \@@_arabic:n { chapter } - \@@_arabic:n { figure } }
+ { \thechapter - \@@_arabic:n { figure } }
\cs_set:Npn \thetable
- { \@@_arabic:n { chapter } - \@@_arabic:n { table } }
+ { \thechapter - \@@_arabic:n { table } }
% \end{macrocode}
% \end{macro}
%
@@ -4424,6 +4549,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \l_@@_info_student_id_tl,
% \l_@@_info_school_id_tl,
% \l_@@_info_clc_tl,
+% \l_@@_info_jel_tl,
% \l_@@_info_instructors_clist,
% \l_@@_info_keywords_clist}
% 封面所需的一些字段。
@@ -4431,7 +4557,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\clist_map_inline:nn
{
title, date, author, supervisor, department, major, student_id,
- school_id, clc
+ school_id, clc, jel
}
{ \tl_new:c { l_@@_info_ #1 _tl } }
\clist_new:N \l_@@_info_instructors_clist
@@ -4554,10 +4680,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{info/clc}
-% 中图分类号。
+% \changes{v0.8}{2021/09/16}{新增 \opt{info/jel} 选项。}
+%
+% \begin{macro}{info/clc,info/jel}
+% 中图分类号和 JEL 分类号。
% \begin{macrocode}
- clc .tl_set:N = \l_@@_info_clc_tl
+ clc .tl_set:N = \l_@@_info_clc_tl,
+ jel .tl_set:N = \l_@@_info_jel_tl
}
% \end{macrocode}
% \end{macro}
@@ -4846,11 +4975,20 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_cover_info:}
+% \begin{macro}{\@@_cover_info:,\l_@@_cover_info_left_width_tl}
+% \changes{v0.8}{2021/09/21}{调整专业学位的封面信息栏。}
% 信息栏。
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_info:
{
+ \tl_set:Nx \l_@@_cover_info_left_width_tl
+ {
+ \int_case:nn { \l_@@_info_degree_type_int }
+ {
+ { 1 } { 6 em }
+ { 2 } { 9 em }
+ }
+ }
\begin{minipage} [ c ] { \textwidth }
\centering \zihao { 4 }
% \end{macrocode}
@@ -4859,7 +4997,11 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\clist_set:Nx \l_@@_tmpa_clist
{
\c_@@_name_department_tl,
- \c_@@_name_major_tl,
+ \int_case:nn { \l_@@_info_degree_type_int }
+ {
+ { 1 } { \c_@@_name_major_tl }
+ { 2 } { \c_@@_name_major_professional_tl }
+ },
\c_@@_name_author_tl,
\c_@@_name_supervisor_tl,
\c_@@_name_date_tl,
@@ -4885,13 +5027,16 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
{
\clist_pop:NN \l_@@_tmpa_clist \l_@@_tmpa_tl
\clist_pop:NN \l_@@_tmpb_clist \l_@@_tmpb_tl
- \@@_spread_box:nn { 6 em } { \l_@@_tmpa_tl }
+ \@@_spread_box:nn
+ { \l_@@_cover_info_left_width_tl }
+ { \l_@@_tmpa_tl }
\c_@@_fwid_colon_tl
\@@_center_box:Vn \l_@@_tmpb_dim { \l_@@_tmpb_tl }
\skip_vertical:n { 1 ex }
}
\end{minipage}
}
+\tl_new:N \l_@@_cover_info_left_width_tl
% \end{macrocode}
% \end{macro}
%
@@ -5082,24 +5227,43 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \subsubsection{绘制封面}
%
-% \begin{macro}{\makecoveri,\makecoverii,\makecoveriii}
-% 使用实例(instance)构建封一、封二、封三。
+% \begin{macro}{\makecoveri}
+% 论文封面(封一)。
% \begin{macrocode}
\NewDocumentCommand \makecoveri { }
{
\thispagestyle { empty }
\UseInstance { fdu / cover } { cover-i-default }
}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\makecoverii}
+% \changes{v0.8}{2021/09/21}{\opt{info/instructors} 为空时不再显示指导小组
+% 成员名单。}
+% 指导小组成员名单(封二)。
+% \begin{macrocode}
\NewDocumentCommand \makecoverii { }
{
\thispagestyle { empty }
- \UseInstance { fdu / cover } { cover-ii-default }
+ \clist_if_empty:NF \l_@@_info_instructors_clist
+ { \UseInstance { fdu / cover } { cover-ii-default } }
}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\makecoveriii}
+% 声明页(封三)。
+% \begin{macrocode}
\NewDocumentCommand \makecoveriii { }
{
\cleardoublepage
- \thispagestyle { empty }
- \UseInstance { fdu / cover } { cover-iii-default }
+ \tl_if_empty:NTF \l_@@_declaration_page_tl
+ {
+ \thispagestyle { empty }
+ \UseInstance { fdu / cover } { cover-iii-default }
+ }
+ { \includepdf { \l_@@_declaration_page_tl } }
}
% \end{macrocode}
% \end{macro}
@@ -5200,23 +5364,40 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
}
% \end{macrocode}
%
+% \begin{variable}{\l_@@_auto_make_cover_bool,\l_@@_declaration_page_tl}
+% \begin{macrocode}
+\bool_new:N \l_@@_auto_make_cover_bool
+\tl_new:N \l_@@_declaration_page_tl
+% \end{macrocode}
+% \end{variable}
+%
% \begin{macro}{style/auto-make-cover}
-% \begin{variable}{\l_@@_auto_make_cover_bool}
% 是否自动生成封面。
% \begin{macrocode}
-\bool_new:N \l_@@_auto_make_cover_bool
\keys_define:nn { fdu / style }
{
- auto-make-cover .bool_set:N = \l_@@_auto_make_cover_bool,
- auto-make-cover .default:n = true
+ auto-make-cover .bool_set:N = \l_@@_auto_make_cover_bool,
+ auto-make-cover .default:n = true,
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v0.8}{2021/09/21}{新增 \opt{style/declaration-page} 选项。}
+%
+% \begin{macro}{style/declaration-page}
+% 设置扫描版的声明页 PDF 文档。
+% \begin{macrocode}
+ declaration-page .code:n =
+ {
+ \tl_set_eq:NN \l_@@_declaration_page_tl \l_keys_value_tl
+ \RequirePackage { pdfpages }
+ },
}
% \end{macrocode}
-% \end{variable}
% \end{macro}
%
% 在 \env{document} 开始位置添加封面以及指导小组成员名单。
% \begin{macrocode}
-\AtBeginDocument
+\ctex_after_end_preamble:n
{
\bool_if:NT \l_@@_auto_make_cover_bool
{
@@ -5229,7 +5410,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% 在 \env{document} 结束位置添加声明页。
% \begin{macrocode}
-\AtEndDocument
+\@@_gadd_ltxhook:nn { enddocument }
{ \bool_if:NT \l_@@_auto_make_cover_bool { \makecoveriii } }
% \end{macrocode}
%
@@ -5317,8 +5498,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{environment}{abstract}
% \begin{environment}{abstract*}
% \changes{v0.7}{2018/03/05}{整理代码。}
-% 摘要环境。在中文模板定义了中英文双语摘要,但在英文模板中则没有
-% 定义中文摘要。
+% 摘要环境。在中文模板定义了中英文双语摘要,但在英文模板中则没有定义中文摘要。
% \begin{macrocode}
\NewDocumentEnvironment { abstract } { }
%<class> { \@@_abstract_begin: } { \@@_abstract_end: }
@@ -5344,9 +5524,10 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macro}
%
% \changes{v0.7d}{2019/03/28}{优化关键字列表的显示。}
+% \changes{v0.8}{2021/12/22}{没有指定 CLC/JEL 分类号时不再显示。}
%
-% \begin{macro}{\@@_abstract_end:,\@@_abstract_en_end:}
-% 摘要正文完成后,输出关键字列表和中图分类号(CLC)。
+% \begin{macro}{\@@_abstract_end:}
+% 摘要正文完成后,输出关键字列表和 CLC/JEL 分类号。
% \begin{macrocode}
%<*class>
\cs_new_protected:Npn \@@_abstract_end:
@@ -5354,25 +5535,45 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\@@_keywords:nNn
{ \sffamily \c_@@_name_keywords_tl \c_@@_fwid_colon_tl }
\l_@@_info_keywords_clist { \c_@@_fwid_semicolon_tl }
- \@@_clc:nn
- { \sffamily \c_@@_name_clc_tl \c_@@_fwid_colon_tl }
- { \l_@@_info_clc_tl }
+ \tl_if_empty:NF \l_@@_info_clc_tl
+ {
+ \@@_clc_jel:nn
+ { \sffamily \c_@@_name_clc_tl \c_@@_fwid_colon_tl }
+ { \l_@@_info_clc_tl }
+ }
}
%</class>
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_abstract_en_end:}
+% 英文摘要中,如果指定了 JEL 分类号,则 CLC 分类号不再显示。
+% \begin{macrocode}
\cs_new_protected:Npn \@@_abstract_en_end:
{
\@@_keywords:nNn
{ \bfseries \c_@@_name_keywords_en_tl \@@_quad: }
\l_@@_info_keywords_en_clist { ; ~ }
- \@@_clc:nn
- { \bfseries \c_@@_name_clc_en_tl \@@_quad: }
- { \l_@@_info_clc_tl }
+ \tl_if_empty:NTF \l_@@_info_jel_tl
+ {
+ \tl_if_empty:NF \l_@@_info_clc_tl
+ {
+ \@@_clc_jel:nn
+ { \bfseries \c_@@_name_clc_en_tl \@@_quad: }
+ { \l_@@_info_clc_tl }
+ }
+ }
+ {
+ \@@_clc_jel:nn
+ { \bfseries \c_@@_name_jel_en_tl \@@_quad: }
+ { \l_@@_info_jel_tl }
+ }
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_keywords:nNn,\@@_keywords_prevdepth:,\@@_clc:nn}
-% 关键字列表前要空一行,使用悬挂缩进;中图分类号不缩进。|\parbox| 之后的间距
+% \begin{macro}{\@@_keywords:nNn,\@@_keywords_prevdepth:,\@@_clc_jel:nn}
+% 关键字列表前要空一行,使用悬挂缩进;分类号不缩进。|\parbox| 之后的间距
% 需要调整,见 \url{https://tex.stackexchange.com/a/34982}。
% \begin{macrocode}
\cs_new_protected:Npn \@@_keywords:nNn #1#2#3
@@ -5386,7 +5587,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\cs_gset:Npx \@@_keywords_prevdepth: { \dim_use:N \tex_prevdepth:D }
}
}
-\cs_new_protected:Npn \@@_clc:nn #1#2
+\cs_new_protected:Npn \@@_clc_jel:nn #1#2
{
\par \tex_prevdepth:D \@@_keywords_prevdepth: \noindent
\group_begin: #1 \group_end:
@@ -5442,8 +5643,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \subsection{参考文献著录与引用}
%
-% \changes{v0.6}{2017/10/27}{支持 \BibTeX{},以实现参考文献的著录
-% 与引用。}
+% \changes{v0.6}{2017/10/27}{支持 \BibTeX{},以实现参考文献的著录与引用。}
% \changes{v0.7}{2018/01/25}{支持 \biber{} 与 \pkg{biblatex}。}
%
% \begin{variable}{\l_@@_bibtex_bool}
@@ -5464,16 +5664,19 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{\l_@@_bib_resource_tl}
+% \begin{variable}{\l_@@_bib_resource_clist}
+% \changes{v0.8}{2021/03/07}{改用 \texttt{clist} 型变量,允许在 \pkg{biblatex}
+% 下使用多个数据源。}
% 保存参考文献数据库列表。
% \begin{macrocode}
-\tl_new:N \l_@@_bib_resource_tl
+\clist_new:N \l_@@_bib_resource_clist
% \end{macrocode}
% \end{variable}
%
% \changes{v0.6}{2017/10/28}{新增 \opt{style/bib-style} 选项。}
-% \changes{v0.7}{2018/01/25}{新增 \opt{style/bib-backend}、\opt{style/cite-style}
-% 和 \opt{style/bib-resource} 选项。}
+% \changes{v0.7}{2018/01/25}{新增 \opt{style/bib-backend}、
+% \opt{style/cite-style} 和 \opt{style/bib-resource} 选项。}
+% \changes{v0.8}{2021/09/20}{直接调用 \pkg{gbt7714} 宏包。}
%
% \begin{macrocode}
\keys_define:nn { fdu / style }
@@ -5506,40 +5709,56 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
\tl_clear:N \l_@@_bib_style_tl
},
bib-style / unknown .code:n =
- { \tl_set_eq:NN \l_@@_bib_style_tl \l_keys_value_tl },
+ {
+ \tl_set_eq:NN \l_@@_bib_style_tl \l_keys_value_tl
+ \tl_clear:N \l_@@_bib_gb_style_tl
+ },
% \end{macrocode}
% \end{macro}
% \begin{macro}{style/cite-style}
+% \changes{v0.8}{2021/09/17}{允许在 \BibTeX{} 下使用。}
% 引用样式。
% \begin{macrocode}
- cite-style .code:n =
- {
- \bool_if:NTF \l_@@_bibtex_bool
- { \@@_warning:n { cite-style-not-available } }
- { \tl_set:Nn \l_@@_cite_style_tl {#1} }
- },
+ cite-style .tl_set:N = \l_@@_cite_style_tl,
% \end{macrocode}
% \end{macro}
% \begin{macro}{style/bib-resource}
% 参考文献数据源。
% \begin{macrocode}
- bib-resource .tl_set:N = \l_@@_bib_resource_tl
+ bib-resource .clist_set:N = \l_@@_bib_resource_clist
}
-\@@_msg_new:nn { cite-style-not-available }
- { Option~ "cite-style"~ is~ not~ available~ in~ BibTeX. }
% \end{macrocode}
% \end{macro}
%
-% 为了保证导言区中的设置能起作用,\pkg{natbib} 或 \pkg{biblatex} 宏包均需要在
-% 导言区末尾载入(仍在 \pkg{hyperref} 之前),并做相关设置。
+% \changes{v0.8}{2021/03/28}{正确使用导言区末尾钩子。}
+%
+% 为了保证导言区中的设置能起作用,\pkg{gbt774}、\pkg{natbib} 或 \pkg{biblatex}
+% 宏包均需要在导言区末尾载入(仍在 \pkg{hyperref} 之前),并做相关设置。
% \begin{macrocode}
\ctex_at_end_preamble:n
{
- \bool_if:NTF \l_@@_bibtex_bool
+ \bool_if:NT \l_@@_bibtex_bool
{
- \RequirePackage [ sort & compress ] { natbib }
+ \tl_if_empty:NTF \l_@@_bib_style_tl
+ {
+ \RequirePackage [ sort & compress ] { gbt7714 }
+ \exp_args:No \bibliographystyle { gbt7714- \l_@@_bib_gb_style_tl }
+ }
+ {
+ \RequirePackage [ sort & compress ] { natbib }
+ \exp_args:NV \bibliographystyle \l_@@_bib_style_tl
+ }
\@@_bibtex_setup:
}
+ }
+% \end{macrocode}
+% \pkg{biblatex} 会写入 |begindocument/before| 钩子,因此需在其之前通过
+% \texttt{env/document/\-begin} 钩子载入 \pkg{biblatex} 宏包。注意这个钩子仅
+% 适用于 |\begin{document}| 的写法,对于 |\document| 命令本身无效。
+% \begin{macrocode}
+\@@_gadd_ltxhook:nn { env/document/begin }
+ {
+ \bool_if:NF \l_@@_bibtex_bool
{
\@@_biblatex_pre_setup:
\RequirePackage { biblatex }
@@ -5552,29 +5771,36 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% 生成参考文献列表。}
% \changes{v0.7d}{2019/03/23}{使参考文献在目录中正常显示。}
% \changes{v0.7e}{2020/08/30}{同步 \pkg{gbt7714} v2.0。}
+% \changes{v0.8}{2021/09/20}{新增不带上标的文内引用命令。}
%
-% \begin{macro}{\@@_bibtex_setup:,\bibsection,\printbibliography}
+% \begin{macro}{\@@_bibtex_setup:,\parencite,\printbibliography}
% \BibTeX{} 相关设置。
% \begin{macrocode}
\cs_new_protected:Npn \@@_bibtex_setup:
{
- \tl_if_empty:NTF \l_@@_bib_style_tl
+% \end{macrocode}
+% 行内引用命令。这里定义比较繁琐,是为了与 \tn{cite} 等命令保持一致。
+% \begin{macrocode}
+ \tl_if_eq:VnTF \l_@@_bib_gb_style_tl { numerical }
{
- \tl_if_eq:VnTF \l_@@_bib_gb_style_tl { numerical }
- {
- \bibliographystyle { gbt7714-numerical }
- \@@_set_cite_style_numerical:
- }
- {
- \tl_if_eq:VnT \l_@@_bib_gb_style_tl { author-year }
- {
- \bibliographystyle { gbt7714-author-year }
- \@@_set_cite_style_author_year:
- \cs_set_eq:NN \cite \citep
- }
- }
+ \exp_args:NNx \DeclareRobustCommand \parencite
+ { \exp_args:No \exp_not:o { \cs:w cite ~ \cs_end: } }
+ \exp_args:Nc \ctex_patch_cmd:Nnn { parencite ~ }
+ { \begingroup }
+ { \begingroup \bibstyle@numbers }
}
- { \exp_args:NV \bibliographystyle \l_@@_bib_style_tl }
+ { \cs_set_eq:NN \parencite \cite }
+% \end{macrocode}
+% 引用样式。
+% \begin{macrocode}
+ \tl_if_empty:NF \l_@@_cite_style_tl
+ { \exp_args:NV \citestyle \l_@@_cite_style_tl }
+% \end{macrocode}
+% 使用 \tn{textendash} “\textendash”作为数字间的连接号。
+% \begin{macrocode}
+ \ctex_patch_cmd:Nnn \NAT@citexnum
+ { - \NAT@penalty }
+ { \textendash \NAT@penalty }
% \end{macrocode}
% 修改参考文献标题。
% \begin{macrocode}
@@ -5584,7 +5810,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{macrocode}
\NewDocumentCommand \printbibliography { o }
{
- \exp_args:NV \bibliography \l_@@_bib_resource_tl
+ \exp_args:NV \bibliography \l_@@_bib_resource_clist
\IfValueT {##1}
{ \@@_warning:nn { invalid-option-in-bibtex } {##1} }
}
@@ -5594,38 +5820,58 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{
-% \@@_biblatex_pre_setup:,
-% \@@_biblatex_post_setup:,
-% \@@_pass_options_to_biblatex:n}
+% \changes{v0.8}{2022/01/08}{补充定义 \tn{addbibresource} 命令以兼容 \pkg{biblatex} 的用法。}
+%
+% \begin{macro}{\addbibresource}
+% 由于 \pkg{biblatex} 在导言区后才载入,需要单独定义添加参考文献数据源的命令以实现兼容。
+% 该命令需要在载入宏包前取消定义。
+% \begin{macrocode}
+\bool_if:NF \l_@@_bibtex_bool
+ {
+ \NewDocumentCommand \addbibresource { m }
+ { \clist_gput_right:Nn \l_@@_bib_resource_clist {#1} }
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_biblatex_pre_setup:,\@@_biblatex_post_setup:}
% \pkg{biblatex} 相关设置。
% \begin{macrocode}
\cs_new_protected:Npn \@@_biblatex_pre_setup:
{
+ \cs_undefine:N \addbibresource
+ \clist_new:N \l_@@_biblatex_options_clist
+ \clist_put_right:Nn \l_@@_biblatex_options_clist { hyperref = manual }
% \end{macrocode}
% 参考文献样式。
% \begin{macrocode}
- \tl_if_empty:NTF \l_@@_bib_style_tl
+ \clist_put_right:Nx \l_@@_biblatex_options_clist
{
- \tl_if_eq:VnTF \l_@@_bib_gb_style_tl { numerical }
- { \@@_pass_options_to_biblatex:n { style = gb7714-2015 } }
+ style =
+ \tl_if_empty:NTF \l_@@_bib_style_tl
{
- \tl_if_eq:VnT \l_@@_bib_gb_style_tl { author-year }
- { \@@_pass_options_to_biblatex:n { style = gb7714-2015ay } }
+ \str_if_eq:VnTF \l_@@_bib_gb_style_tl { numerical }
+ { gb7714-2015 } { gb7714-2015ay }
}
+ { \l_@@_bib_style_tl }
}
- { \@@_pass_options_to_biblatex:n { style = \l_@@_bib_style_tl } }
% \end{macrocode}
% 引用样式。
+% \changes{v0.8}{2021/03/09}{正确调用引用样式。}
% \begin{macrocode}
\tl_if_empty:NF \l_@@_cite_style_tl
- { \@@_pass_options_to_biblatex:n { citestyle = \l_@@_bib_style_tl } }
- \@@_pass_options_to_biblatex:n { backend = biber, hyperref = manual, natbib }
+ {
+ \clist_put_right:Nx \l_@@_biblatex_options_clist
+ { citestyle = \l_@@_cite_style_tl }
+ }
+ \exp_args:NV \PassOptionsToPackage \l_@@_biblatex_options_clist
+ { biblatex }
}
\cs_new_protected:Npn \@@_biblatex_post_setup:
{
- \exp_args:NV \addbibresource \l_@@_bib_resource_tl
+ \clist_map_function:NN \l_@@_bib_resource_clist \addbibresource
\@@_biblatex_allow_url_break:
+ \@@_biblatex_use_en_dash:
% \end{macrocode}
% 修改参考文献标题。
% \begin{macrocode}
@@ -5635,8 +5881,6 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
{ bibliography = { \c_@@_name_bib_en_tl } }
%</class-en>
}
-\cs_new_protected:Npn \@@_pass_options_to_biblatex:n #1
- { \PassOptionsToPackage {#1} { biblatex } }
% \end{macrocode}
% \end{macro}
%
@@ -5652,38 +5896,28 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_set_cite_style_numerical:}
-% 顺序编码制下的引用样式。
-% \begin{macrocode}
-\cs_new:Npn \@@_set_cite_style_numerical:
- {
- \NAT@numberstrue \NAT@supertrue
- \cs_set:Npn \NAT@open { [ }
- \cs_set:Npn \NAT@close { ] }
- \cs_set:Npn \NAT@sep { ,~ }
- }
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\@@_set_cite_style_author_year:}
-% 著者—出版年制下的引用样式。
+% \begin{macro}{\@@_biblatex_use_en_dash:}
+% 使用 \tn{textendash} “\textendash”作为数字间的连接号。
% \begin{macrocode}
-\cs_new:Npn \@@_set_cite_style_author_year:
+\cs_new:Npn \@@_biblatex_use_en_dash:
{
- \NAT@numbersfalse
-%<*class>
- \cs_set_eq:NN \NAT@open \c_@@_fwid_left_paren_tl
- \cs_set_eq:NN \NAT@close \c_@@_fwid_right_paren_tl
- \cs_set_eq:NN \NAT@sep \c_@@_fwid_semicolon_tl
- \cs_set_eq:NN \NAT@aysep \c_@@_fwid_comma_tl
- \cs_set_eq:NN \NAT@yrsep \c_@@_ideo_comma_tl
-%</class>
+ \DefineBibliographyExtras { english }
+ {
+ \cs_set_nopar:Npn \bibrangedash
+ { \textendash \penalty \hyphenpenalty }
+ }
+ \DefineBibliographyExtras { russian }
+ {
+ \cs_set_nopar:Npn \bibrangedash
+ { \textendash \penalty \hyphenpenalty }
+ }
}
% \end{macrocode}
% \end{macro}
%
% \changes{v0.7}{2018/01/25}{同步 \pkg{gbt7714} v1.0,移除有关超链接
% 的额外设置。}
+% \changes{v0.8}{2021/09/20}{不再将著录用符号修改为中文标点符号。}
%
% \subsection{\pkg{hyperref} 相关配置}
%
@@ -5743,34 +5977,31 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
%
% \begin{macro}{style/hyperlink}
+% \changes{v0.8}{2021/12/27}{修复边框不显示的问题;不需要为 \opt{hidelinks} 选项传递参数。}
% 超链接样式。
% \begin{macrocode}
hyperlink .choice:,
hyperlink .value_required:n = true,
- hyperlink / border .code:n = { },
+ hyperlink / border .code:n =
+ { \fdu_hyperref_setup:n { colorlinks = false } },
hyperlink / color .code:n =
- { \fdu_hyperref_setup:n { colorlinks = true } },
+ { \fdu_hyperref_setup:n { colorlinks = true } },
hyperlink / none .code:n =
- { \fdu_hyperref_setup:n { hidelinks = true } },
+ { \fdu_hyperref_setup:n { hidelinks } },
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{style/hyperlink-color}
+% \changes{v0.8}{2021/12/27}{移除不常用的超链接颜色。}
% 超链接颜色。
% \begin{macrocode}
hyperlink-color .choice:,
hyperlink-color .value_required:n = true,
\clist_map_function:nN
{
- { autumn, D70000, D75F00, AF8700 },
- { business, D14542, 295497, 1F6E43 },
{ classic, FF0000, 0000FF, 00FF00 },
{ default, 990000, 0000B2, 007F00 },
- { elegant, 961212, C31818, 9B764F },
- { fantasy, FF4A19, FF3F94, 934BA1 },
{ material, E91E63, 009688, 4CAF50 },
- { science, CA0619, 389F9D, FF8920 },
- { summer, 00AFAF, 5F5FAF, 5F8700 },
{ graylevel, 616161, 616161, 616161 },
{ prl, 2D3092, 2D3092, 2D3092 }
}
@@ -5809,7 +6040,8 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \end{macrocode}
% \end{variable}
%
-% \changes{v0.7e}{2019/04/23}{处理 \pkg{hyperref} 与 \pkg{unicode-math} 的兼容性问题。}
+% \changes{v0.7e}{2019/04/23}{处理 \pkg{hyperref} 与 \pkg{unicode-math}
+% 的兼容性问题。}
%
% 在导言区末尾引入 \pkg{hyperref} 宏包。
% \begin{macrocode}
@@ -5841,8 +6073,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
pdfcreator = \c_@@_name_pdf_creator_tl
}
% \end{macrocode}
-% 将导言区中通过 \cs{fdu_hyperref_setup:n} 进行的设置传入
-% \tn{hypersetup}。
+% 将导言区中通过 \cs{fdu_hyperref_setup:n} 进行的设置传入 \tn{hypersetup}。
% \begin{macrocode}
\exp_args:NV \hypersetup \g_@@_to_hyperref_clist
% \end{macrocode}
@@ -5850,14 +6081,13 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{macrocode}
\fdu_allow_url_break:
% \end{macrocode}
-% 手动开启 \pkg{biblatex} 的 \pkg{hyperref} 支持。
+% 由于 \pkg{hyperref} 在 \pkg{biblatex} 之后调用,所以需要手动开启相关功能。
% \begin{macrocode}
\bool_if:NF \l_@@_bibtex_bool { \BiblatexManualHyperrefOn }
}
% \end{macrocode}
%
-% 在 PDF 字符串中设置 \tn{fdu@kai} 命令为空,以抑制 \pkg{hyperref}
-% 的警告信息。
+% 在 PDF 字符串中设置 \tn{fdu@kai} 命令为空,以抑制 \pkg{hyperref} 的警告信息。
% \begin{macrocode}
\ctex_at_end_package:nn { hyperref }
{
@@ -5965,8 +6195,7 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
%
% \subsubsection{通用配置}
%
-% \begin{variable}{\c_@@_name_simp_tl,\c_@@_name_trad_tl,
-% \c_@@_name_en_tl}
+% \begin{variable}{\c_@@_name_simp_tl,\c_@@_name_trad_tl,\c_@@_name_en_tl}
% 学校名称。
% \begin{macrocode}
\tl_const:Nn \c_@@_name_simp_tl { 复旦大学 }
@@ -5979,14 +6208,14 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{macrocode}
\clist_map_inline:nn
{
- { ideo_comma } { "3001 },
- { ideo_full_stop } { "3002 },
- { fwid_comma } { "FF0C },
- { fwid_full_stop } { "FF0E },
- { fwid_colon } { "FF1A },
- { fwid_semicolon } { "FF1B },
- { fwid_left_paren } { "FF08 },
- { fwid_right_paren } { "FF09 }
+ { ideo_comma } { ^^^^3001 },
+ { ideo_full_stop } { ^^^^3002 },
+ { fwid_comma } { ^^^^ff0c },
+ { fwid_full_stop } { ^^^^ff0e },
+ { fwid_colon } { ^^^^ff1a },
+ { fwid_semicolon } { ^^^^ff1b },
+ { fwid_left_paren } { ^^^^ff08 },
+ { fwid_right_paren } { ^^^^ff09 }
}
{ \@@_define_punct:nn #1 }
% \end{macrocode}
@@ -5997,16 +6226,19 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \centering
% \begin{tabular}{cccc}
% \toprule
-% \textbf{中文名称} & \textbf{英文名称} & \textbf{符号} & \textbf{Unicode} \\
+% \textbf{中文名称} &
+% \textbf{英文名称} &
+% \textbf{符号} &
+% \textbf{Unicode 码位} \\
% \midrule
-% 中文顿号 & Ideographic comma & \symbol{"3001} & U+3001 \\
-% 中文句号 & Ideographic full stop & \symbol{"3002} & U+3002 \\
-% 中文逗号 & Fullwidth comma & \symbol{"FF0C} & U+FF0C \\
-% 全角西文句点 & Fullwidth full stop & \symbol{"FF0E} & U+FF0E \\
-% 中文冒号 & Fullwidth colon & \symbol{"FF1A} & U+FF1A \\
-% 中文分号 & Fullwidth semicolon & \symbol{"FF1B} & U+FF1B \\
-% 中文左圆括号 & Fullwidth left parenthesis & \symbol{"FF08} & U+FF08 \\
-% 中文右圆括号 & Fullwidth right parenthesis & \symbol{"FF09} & U+FF09 \\
+% 中文顿号 & Ideographic comma & ^^^^3001 & U+3001 \\
+% 中文句号 & Ideographic full stop & ^^^^3002 & U+3002 \\
+% 中文逗号 & Fullwidth comma & ^^^^ff0c & U+FF0C \\
+% 全角西文句点 & Fullwidth full stop & ^^^^ff0e & U+FF0E \\
+% 中文冒号 & Fullwidth colon & ^^^^ff1a & U+FF1A \\
+% 中文分号 & Fullwidth semicolon & ^^^^ff1b & U+FF1B \\
+% 中文左圆括号 & Fullwidth left parenthesis & ^^^^ff08 & U+FF08 \\
+% 中文右圆括号 & Fullwidth right parenthesis & ^^^^ff09 & U+FF09 \\
% \bottomrule
% \end{tabular}
% \end{table}
@@ -6014,10 +6246,10 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{variable}{\c_@@_line_spread_fp}
% 行距倍数。行距倍数 $k$ 由下式确定:
% \begin{equation*}
-% \num{1.2} \times k \times \SI{12}{bp} = \SI{20}{pt}.
+% 1.2 \times k \times \qty{12}{bp} = \qty{20}{pt}.
% \end{equation*}
-% 式中,\num{1.2} 是基本行距与文字大小之比,\SI{12}{bp} 是小四号字
-% 的大小,\SI{20}{pt} 是行距固定值。
+% 式中,1.2 是基本行距与文字大小之比,\qty{12}{bp} 是小四号字的大小,
+% \qty{20}{pt} 是行距固定值。
% \begin{macrocode}
\fp_const:Nn \c_@@_line_spread_fp
{ \dim_ratio:nn { 20 pt } { 12 bp } / 1.2 }
@@ -6087,33 +6319,35 @@ Copyright (C) 2017&ndash;2020 by Xiangdong Zeng <xdzeng96@gmail.com>.
% \begin{macrocode}
\clist_map_inline:nn
{
- { secret_level } { 密 \qquad 级 },
- { secret_star } { \textrm { \bigstar } },
- { school_id } { 学校代码 },
- { student_id } { 学 \qquad 号 },
- { department } { 院系 },
- { major } { 专业 },
- { author } { 姓名 },
- { supervisor } { 指导教师 },
- { date } { 完成日期 },
- { instructors } { 指导小组成员 },
- { author_sign } { 作者签名 },
- { supervisor_sign } { 导师签名 },
- { sign_date } { 日期 },
- { toc } { 目 \quad 录 },
- { lof } { 插图目录 },
- { lot } { 表格目录 },
- { bib_en } { Bibliography },
- { pdf_creator } { LaTeX~ with~ fduthesis~ class },
- { orig_decl } { \c_@@_name_simp_tl \\ 学位论文独创性声明 },
- { auth_decl } { \c_@@_name_simp_tl \\ 学位论文使用授权声明 }
+ { secret_level } { 密 \qquad 级 },
+ { secret_star } { \textrm { \bigstar } },
+ { school_id } { 学校代码 },
+ { student_id } { 学 \qquad 号 },
+ { department } { 院系 },
+ { major } { 专业 },
+ { major_professional } { 专业学位类别(领域) },
+ { author } { 姓名 },
+ { supervisor } { 指导教师 },
+ { date } { 完成日期 },
+ { instructors } { 指导小组成员 },
+ { author_sign } { 作者签名 },
+ { supervisor_sign } { 导师签名 },
+ { sign_date } { 日期 },
+ { toc } { 目 \quad 录 },
+ { lof } { 插图目录 },
+ { lot } { 表格目录 },
+ { bib_en } { Bibliography },
+ { pdf_creator } { LaTeX~ with~ fduthesis~ class },
+ { orig_decl } { \c_@@_name_simp_tl \\ 学位论文独创性声明 },
+ { auth_decl } { \c_@@_name_simp_tl \\ 学位论文使用授权声明 }
}
{ \@@_define_name:nn #1 }
\clist_map_inline:nn
{
{ abstract } { 摘 \quad 要 } { Abstract },
{ keywords } { 关键字 } { Keywords: },
- { clc } { 中图分类号 } { CLC~ number: },
+ { clc } { 中图分类号 } { CLC~ code: },
+ { jel } { JEL 分类号 } { JEL~ code: },
{ notation } { 符号表 } { List~ of~ Symbols }
}
{ \@@_define_name:nnn #1 }
diff --git a/macros/latex/contrib/fduthesis/fduthesis.pdf b/macros/latex/contrib/fduthesis/fduthesis.pdf
index 37b0b8ebbf..5d982b15aa 100644
--- a/macros/latex/contrib/fduthesis/fduthesis.pdf
+++ b/macros/latex/contrib/fduthesis/fduthesis.pdf
Binary files differ
diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
index e4fe0bca5a..96ad581523 100644
--- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
+++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
index fa2674ae2b..761c36edaf 100644
--- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
+++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
@@ -1,4 +1,8 @@
-% !TeX TXS-program:compile = txs:///pythonpdfse
+% !TeX TXS-program:compile = txs:///arara
+% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode}
+% arara: pythontex: {rerun: modified} if found('pytxcode', 'PYTHONTEX#py')
+% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('pytxcode', 'PYTHONTEX#py')
+% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass{article}
\usepackage[french]{babel}
@@ -56,8 +60,8 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\PLversion{1.2.4}
-\def\PLdate{2 Septembre 2022}
+\def\PLversion{1.2.5}
+\def\PLdate{3 Septembre 2022}
\tcbset{vignettes/.style={%
nobeforeafter,box align=base,boxsep=0pt,enhanced,sharp corners=all,rounded corners=southeast,%
@@ -882,7 +886,7 @@ Pour \textit{illustrer} un peu les \Cle{clés}, un petit schéma, avec les diff
\newpage
-\section{Code Python \og simple \fg}
+\section{Code Python \og simple \fg}\label{pythonsimple}
\subsection{Introduction}
@@ -2759,7 +2763,7 @@ Quelques \Cle{Clés} sont disponibles pour cette commande, essentiellement pour
\newpage
-\section{Statistiques à deux variables}
+\section{Statistiques à deux variables}\label{statsdeuxvars}
\subsection{Idées}
@@ -3241,6 +3245,127 @@ L'idée principale est de récupérer les variables de la régression linéaire
\newpage
+\section{Boîtes à moustaches}\label{boiteamoustaches}
+
+\subsection{Introduction}
+
+\begin{codeidee}
+L'idée est de proposer une commande, à intégrer dans un environnement \TikZ, pour tracer une boîte à moustaches grâce aux paramètres, saisis par l'utilisateur.
+
+\smallskip
+
+Le code ne calcule pas les paramètres, il ne fait \textit{que} tracer la boîte à moustaches !
+\end{codeidee}
+
+\begin{codetex}[]
+\begin{tikzpicture}
+ \PLboitemoust[parametres={10/15/17/19/20}]
+\end{tikzpicture}
+\end{codetex}
+
+\begin{codeinfo}
+Étant donnée que la commande est intégrée dans un environnement \TikZ, les unités peuvent/doivent donc être précisées, \textit{comme d'habitude}, si besoin.
+\end{codeinfo}
+
+\subsection{Clés et options}
+
+\begin{codecles}
+Quelques \Cle{clés} sont disponibles pour cette commande :
+
+\begin{itemize}
+ \item la clé \Cle{parametres} qui sont sous la forme \Cle{Min/Q1/Med/Q3/Max} ;
+ \item la clé \Cle{couleur} qui est la couleur de la boîte ; \hfill~défaut \Cle{black}
+ \item la clé \Cle{elevation} qui est la position verticale (ordonnée des moustaches) de la boîte ; \hfill~défaut \Cle{1.5}
+ \item la clé \Cle{hauteur} qui est la hauteur de la boîte ; \hfill~défaut \Cle{1}
+ \item la clé \Cle{moyenne} qui est la moyenne (optionnelle) de la série ;
+ \item la clé \Cle{epaisseur} qui est l'épaisseur des traits de la boîte ; \hfill~défaut \Cle{thick}
+ \item la clé \Cle{remplir} qui est la couleur de remplissage de la boîte ; \hfill~défaut \Cle{white}
+ \item le booléen \Cle{affmoyenne} qui permet d'afficher ou non la moyenne (sous forme d'un point) ; \hfill~défaut \Cle{false}
+ \item le booléen \Cle{pointilles} qui permet d'afficher des pointillés au niveau des paramètres ; \hfill~défaut \Cle{false}
+ \item le booléen \Cle{valeurs} qui permet d'afficher les valeurs des paramètres au niveau des abscisses.\hfill~défaut \Cle{false}
+\end{itemize}
+\end{codecles}
+
+\begin{codetex}[]
+\begin{tikzpicture}
+ \PLboitemoust[epaisseur=very thick,parametres={10/15/17/19/20},moyenne=18.5,couleur=blue,affmoyenne,%
+ pointilles,valeurs,hauteur=2.25,elevation=2.75]
+\end{tikzpicture}
+\end{codetex}
+
+\begin{codetex}[listing only]
+%une grille a été rajoutée pour visualiser la "position verticale"
+\begin{center}
+ \begin{tikzpicture}[x=0.1cm]
+ \PLboitemoust[epaisseur=ultra thick,parametres={100/150/170/190/200},couleur=blue]
+ \PLboitemoust[epaisseur=thin,elevation=2.5,parametres={80/100/110/120/150},couleur=red]
+ \PLboitemoust[elevation=4,parametres={100/140/145/160/210},couleur=ForestGreen,remplir=ForestGreen!25]
+\end{tikzpicture}
+\end{center}
+\end{codetex}
+
+\begin{codesortie}
+\begin{center}
+ \begin{tikzpicture}[x=0.1cm]
+ \draw[xstep=10,ystep=0.5,very thin,lightgray] (80,0) grid (210,4.5) ;
+ \foreach \x in {80,90,...,210} \draw[very thin,lightgray] (\x,3pt)--(\x,-3pt) node[below] {\num{\x}} ;
+ \foreach \y in {0,0.5,...,4.5} \draw[very thin,lightgray] ($(210,\y)+(-3pt,0)$)--($(210,\y)+(3pt,0)$) node[right] {\num{\y}} ;
+ \PLboitemoust[epaisseur=ultra thick,parametres={100/150/170/190/200},couleur=blue]
+ \PLboitemoust[epaisseur=thin,elevation=2.5,parametres={80/100/110/120/150},couleur=red]
+ \PLboitemoust[elevation=4,parametres={100/140/145/160/210},couleur=ForestGreen,remplir=ForestGreen!25]
+ \end{tikzpicture}
+\end{center}
+\end{codesortie}
+
+\subsection{Commande pour placer un axe horizontal}
+
+\begin{codeidee}
+L'idée est de proposer, en parallèle de la commande précédente, une commande pour tracer un axe horizontal \og sous \fg{} les éventuelles boîtes à moustaches.
+\end{codeidee}
+
+\begin{codetex}[]
+\begin{tikzpicture}
+ \PLboitemoustaxe[min=10,max=20]
+ \PLboitemoust[parametres={10/15/17/19/20}]
+\end{tikzpicture}
+\end{codetex}
+
+\begin{codetex}[]
+\begin{tikzpicture}
+ \PLboitemoustaxe[min=10,max=20,]
+ \PLboitemoust[parametres={10/15/17/19/20},valeurs,pointilles]
+\end{tikzpicture}
+\end{codetex}
+
+\begin{codecles}
+Quelques \Cle{clés} sont disponibles pour cette commande :
+
+\begin{itemize}
+ \item la clé \Cle{min} qui est la valeur minimale de l'axe horizontal ;
+ \item la clé \Cle{max} qui est la valeur minimale de l'axe horizontal ;
+ \item la clé \Cle{elargir} qui est le pourcentage l'élargissement de l'axe ;\hfill~défaut \Cle{0.1}
+ \item la clé \Cle{epaisseur} qui est l'épaisseur des traits de la boîte ; \hfill~défaut \Cle{thick}
+ \item la clé \Cle{valeurs} qui est la liste (compréhensible en \TikZ) des valeurs à afficher.
+\end{itemize}
+\end{codecles}
+
+\begin{codetex}[]
+\begin{tikzpicture}
+ \PLboitemoustaxe[min=8,max=21,affvaleurs,valeurs={8,9,...,21},elargir=0.02]
+ \PLboitemoust[parametres={10/15/17/19/20},moyenne=18.5,couleur=blue]
+ \PLboitemoust[elevation=2.5,parametres={8/10/11/12/15},couleur=red]
+ \PLboitemoust[elevation=4,parametres={10/14/14.5/16/21},couleur=ForestGreen,remplir=ForestGreen!25]
+\end{tikzpicture}
+\end{codetex}
+
+\begin{codeinfo}
+Le placement des différentes boîtes n'est pas automatique, donc il faut penser à cela avant de se lancer dans le code.
+
+Sachant que la hauteur par défaut est de 1, il est -- a priori -- intéressant de placer les boîtes à des \Cle{élévations} de \num{1} puis \num{2.5} puis \num{4} etc
+\end{codeinfo}
+
+\newpage
+
\section{Conversions binaire/hexadécimal/décimal}
\subsection{Idée}
@@ -3514,7 +3639,7 @@ Les valeurs \Cle{mainlevee=5mm et 0.6pt} donnent des résultats -- à mon sens -
\newpage
-\section{PixelART via un fichier csv, en \TikZ}
+\section{PixelART via un fichier csv, en \TikZ}\label{pixelart}
\subsection{Introduction}
@@ -3845,17 +3970,19 @@ D,-,-,D,-,D,D,F,F,F,F,F,F,D,D,-,-,-,-,D,-,-
\section{Historique}
+{\small \bverb|v1.2.5|~:~~~~Ajout de commandes pour des boîtes à moustaches (page \pageref{boiteamoustaches})
+
{\small \bverb|v1.2.4|~:~~~~Correction de quelques bugs mineurs, et mise à jour de la doc
-{\small \bverb|v1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière
+{\small \bverb|v1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière (page \pageref{pythonsimple})
-{\small \bverb|v1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables
+{\small \bverb|v1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables (page \pageref{statsdeuxvars})
{\small \bverb|v1.2.1|~:~~~~Amélioration de la gestion du csv pour Pixelart
{\small \bverb|v1.2 |~:~~~~Correction d'un méchant bug sur Pixelart
-{\small \bverb|v1.1.9|~:~~~~Pixelart en \TikZ
+{\small \bverb|v1.1.9|~:~~~~Pixelart en \TikZ{} (page \pageref{pixelart})
{\small \bverb|v1.1.8|~:~~~~Style "Mainlevée" basique pour \TikZ
diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee.sty b/macros/latex/contrib/proflycee/tex/ProfLycee.sty
index 96f82b590e..56dda985a4 100644
--- a/macros/latex/contrib/proflycee/tex/ProfLycee.sty
+++ b/macros/latex/contrib/proflycee/tex/ProfLycee.sty
@@ -3,8 +3,9 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2022/09/02 v1.2.4 - Aide pour l'utilisation de LaTeX en lycee]
-% 1.2.4 Correction de queqlues bugs mineurs, et mise à jour de la doc
+\ProvidesPackage{ProfLycee}[2022/09/03 v1.2.5 - Aide pour l'utilisation de LaTeX en lycee]
+% 1.2.5 Ajout d'une commande pour des boites à moustaches, en tikz
+% 1.2.4 Correction de quelques bugs mineurs, et mise à jour de la doc
% 1.2.3 Ajout d'un environnement simplifié pour du code python
% 1.2.2 Ajouts de commandes pour des stats à 2 variables
% 1.2.1 Amélioration de la gestion du csv pour les pixelart
@@ -1966,4 +1967,88 @@
\end{tikzpicture}%
}
+%=============BOITES MOUSTACHES======== OK !!
+\defKV[boiteamoustaches]{%
+ parametres=\def\BaMListe{#1},%
+ couleur=\def\BaMCouleur{#1},%
+ elevation=\def\BaMElevation{#1},%
+ hauteur=\def\BaMHauteur{#1},%
+ moyenne=\def\BaMMoyenne{#1},%
+ epaisseur=\def\BaMEpaisseur{#1},%
+ remplir=\def\BaMRemplissage{#1}
+}
+
+\setKVdefault[boiteamoustaches]{%
+ couleur=black,%
+ elevation=1,%
+ hauteur=1,%
+ affmoyenne=false,%
+ epaisseur=thick,%
+ pointilles=false,%
+ valeurs=false,%
+ remplir=white
+}
+
+\defKV[boiteamoustachesaxe]{%
+ min=\def\BaMAxeMin{#1},%
+ max=\def\BaMAxeMax{#1},%
+ elargir=\def\BaMAxeElarg{#1},%
+ epaisseur=\def\BaMAxeEpaisseur{#1},%
+ valeurs=\def\BaMAxeValeurs{#1}
+}
+
+\setKVdefault[boiteamoustachesaxe]{%
+ elargir=0.05,%
+ epaisseur=thick,%
+ affvaleurs=false
+}
+
+\newcommand\PLboitemoustaxe[1][]{
+ \useKVdefault[boiteamoustachesaxe]
+ \setKV[boiteamoustachesaxe]{#1}
+ \def\BaMaxelargeur{\fpeval{\BaMAxeMax-\BaMAxeMin}}
+ \def\BaMaxexmin{\fpeval{\BaMAxeMin-\BaMAxeElarg*\BaMaxelargeur}}
+ \def\BaMaxexmax{\fpeval{\BaMAxeMax+\BaMAxeElarg*\BaMaxelargeur}}
+ \draw[\BaMAxeEpaisseur,->] (\BaMaxexmin,0) -- (\BaMaxexmax,0) ;
+ \ifboolKV[boiteamoustachesaxe]{affvaleurs}
+ {\foreach \x in \BaMAxeValeurs \draw[\BaMAxeEpaisseur] (\x,3pt)--(\x,-3pt) node[below=3pt] {\x} ;}
+ {}
+}
+
+\newcommand\PLboitemoust[1][]{
+ \useKVdefault[boiteamoustaches]
+ \setKV[boiteamoustaches]{#1}
+ \setsepchar[.]{/}%
+ \readlist*\BaMListeparams\BaMListe%
+ \itemtomacro\BaMListeparams[1]\BaMmin%
+ \itemtomacro\BaMListeparams[2]\BaMqu%
+ \itemtomacro\BaMListeparams[3]\BaMmed%
+ \itemtomacro\BaMListeparams[4]\BaMqt%
+ \itemtomacro\BaMListeparams[5]\BaMmax%
+ \draw[draw,\BaMEpaisseur,\BaMCouleur,fill=\BaMRemplissage] ({\BaMqu},{\BaMElevation-0.5*\BaMHauteur}) rectangle ({\BaMqt},{\BaMElevation+0.5*\BaMHauteur}) ;
+ \draw[\BaMEpaisseur,\BaMCouleur] (\BaMmin,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmin,{\BaMElevation+0.5*\BaMHauteur}) (\BaMmax,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmax,{\BaMElevation+0.5*\BaMHauteur}) (\BaMmed,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmed,{\BaMElevation+0.5*\BaMHauteur});
+ \draw[\BaMEpaisseur,\BaMCouleur] ({\BaMmin},{\BaMElevation})--({\BaMqu},{\BaMElevation}) ({\BaMqt},{\BaMElevation})--({\BaMmax},{\BaMElevation}) ;
+ \ifboolKV[boiteamoustaches]{affmoyenne}
+ {\filldraw[\BaMCouleur] ({\BaMMoyenne},{\BaMElevation}) circle[radius=2.5pt] ;}
+ {}
+ \ifboolKV[boiteamoustaches]{pointilles}
+ {
+ \draw[\BaMEpaisseur,densely dashed] (\BaMmin,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmin,0) ;
+ \draw[\BaMEpaisseur,densely dashed] (\BaMqu,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMqu,0) ;
+ \draw[\BaMEpaisseur,densely dashed] (\BaMmed,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmed,0) ;
+ \draw[\BaMEpaisseur,densely dashed] (\BaMqt,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMqt,0) ;
+ \draw[\BaMEpaisseur,densely dashed] (\BaMmax,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmax,0) ;
+ }
+ {}
+ \ifboolKV[boiteamoustaches]{valeurs}
+ {
+ \filldraw (\BaMmin,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmin}} ;
+ \filldraw (\BaMqu,0) circle[radius=2pt] node[below=4pt] {\num{\BaMqu}} ;
+ \filldraw (\BaMmed,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmed}} ;
+ \filldraw (\BaMqt,0) circle[radius=2pt] node[below=4pt] {\num{\BaMqt}} ;
+ \filldraw (\BaMmax,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmax}} ;
+ }
+ {}
+}
+
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/unbtex/README.md b/macros/latex/contrib/unbtex/README.md
index a66580c6c4..57e2e1affc 100644
--- a/macros/latex/contrib/unbtex/README.md
+++ b/macros/latex/contrib/unbtex/README.md
@@ -1,6 +1,6 @@
# UnBTeX: A class for bachelor, master, and doctoral thesis at the
University of Brasilia (UnB), Brazil.
-Version 1.1.2 2022/07/29
+Version 1.1.3 2022/09/04
Copyright (C) 2021-2022 by Henrique C. Ferreira <hcferreira@unb.br>
@@ -33,6 +33,8 @@ Here is a history of changes:
1.1.2 (2022-07-29):
. Page break in copyright page (ficha catalográfica) has been corrected
. Documentation and comments improvements
+ 1.1.3 (2022-09-04):
+ . Improved compilation time
## Overleaf
diff --git a/macros/latex/contrib/unbtex/unbtex-example.pdf b/macros/latex/contrib/unbtex/unbtex-example.pdf
index bce77235cc..0712a28a2e 100644
--- a/macros/latex/contrib/unbtex/unbtex-example.pdf
+++ b/macros/latex/contrib/unbtex/unbtex-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/unbtex/unbtex-example.tex b/macros/latex/contrib/unbtex/unbtex-example.tex
index 87829c2862..b1fb91a5db 100644
--- a/macros/latex/contrib/unbtex/unbtex-example.tex
+++ b/macros/latex/contrib/unbtex/unbtex-example.tex
@@ -1,7 +1,7 @@
%%
%% UnBTeX: A class for bachelor, master, and doctoral thesis at the
%% University of Brasilia (UnB), Brazil
-%% Version 1.1.2 2022/07/29
+%% Version 1.1.3 2022/09/04
%% Copyright (C) 2021-2022 by Henrique C. Ferreira <hcferreira@unb.br>
%%
%% This class file may be distributed and/or modified under the conditions
@@ -43,7 +43,7 @@
% Pacote para desenho
\usepackage{tikz}
-\usetikzlibrary{shapes,arrows,positioning}
+\usetikzlibrary{external,shapes,arrows,positioning}
% Bibliografia nas normas da ABNT, formato autor-data (Pacote biblatex)
% O formato autor-data facilita a leitura, sobretudo de trabalhos com muitas páginas
diff --git a/macros/latex/contrib/unbtex/unbtex.cls b/macros/latex/contrib/unbtex/unbtex.cls
index 86126d2c0d..a3fde055dd 100644
--- a/macros/latex/contrib/unbtex/unbtex.cls
+++ b/macros/latex/contrib/unbtex/unbtex.cls
@@ -1,7 +1,7 @@
%%
%% UnBTeX: A class for bachelor, master, and doctoral thesis at the
%% University of Brasilia (UnB), Brazil
-%% Version 1.1.2 2022/07/29
+%% Version 1.1.3 2022/09/04
%% Copyright (C) 2021-2022 by Henrique C. Ferreira <hcferreira@unb.br>
%%
%% This class file may be distributed and/or modified under the conditions
@@ -21,7 +21,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{unbtex}[2022/07/29 v1.1.2 Modelo da Universidade de Brasília baseado em abnTeX2]
+\ProvidesClass{unbtex}[2022/09/04 v1.1.3 Modelo da Universidade de Brasília baseado em abnTeX2]
% ---
% Repassa todos os parâmetros a classe abntex2,
@@ -84,7 +84,7 @@
% Cores verde e azul UnB
% http://www.marca.unb.br/arquivosdigitais/files/guia_pratico/guia_pratico.pdf
% ---
-\RequirePackage[dvipsnames]{xcolor}
+\RequirePackage[dvipsnames,table]{xcolor}
\definecolor{verdeunb}{cmyk}{1,0,1,0.2}
\definecolor{azulunb}{cmyk}{1,0.65,0,0.35}
@@ -94,10 +94,9 @@
\renewcommand{\ABNTEXsubsectionfont}{}
% Cores das linhas de todas as tabelas:
-\RequirePackage{tabu}
-\RequirePackage{colortbl}
-\taburulecolor{verdeunb}
\arrayrulecolor{verdeunb}
+
+% Define comando \source
\RequirePackage[font={small}, margin=0cm, justification=centering]{caption}
\newcommand{\source}[1]{\captionsetup{singlelinecheck=false,justification=justified}\caption*{\footnotesize \noindent Fonte: {#1}}}
% ---
diff --git a/macros/texinfo/latest/texinfo.tex b/macros/texinfo/latest/texinfo.tex
index fefff2ed8e..c8c9aadb5f 100644
--- a/macros/texinfo/latest/texinfo.tex
+++ b/macros/texinfo/latest/texinfo.tex
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2022-09-03.12}
+\def\texinfoversion{2022-09-04.08}
%
% Copyright 1985, 1986, 1988, 1990-2022 Free Software Foundation, Inc.
%
@@ -7812,6 +7812,8 @@ might help (with 'rm \jobname.?? \jobname.??s')%
% Print arguments. Use slanted for @def*, typewriter for @deftype*.
\def\defunargs#1{%
\df \ifdoingtypefn \tt \else \sl \fi
+ \ifflagclear{txicodevaristt}{}%
+ {\def\var##1{{\setregularquotes \ttsl ##1}}}%
#1%
}
diff --git a/support/latex2nemeth/README b/support/latex2nemeth/README
index 66524d9de6..a1bac4c0d0 100644
--- a/support/latex2nemeth/README
+++ b/support/latex2nemeth/README
@@ -1,8 +1,10 @@
Latex2Nemeth
============
-Version 1.1
+Version 1.1.1
-====================================
+What's new in version 1.1.1
+-------------------------
+Delimiters \( and \) for inline math mode are now added. Minor corrections and additions.
What's new in version 1.1
-------------------------
diff --git a/support/latex2nemeth/contrib/nemeth2odt b/support/latex2nemeth/contrib/nemeth2odt
index 9777f9322f..9777f9322f 100644..100755
--- a/support/latex2nemeth/contrib/nemeth2odt
+++ b/support/latex2nemeth/contrib/nemeth2odt
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index dfacb93206..37e25c952c 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -13,6 +13,7 @@ $mirrors = {
'https://mirror.bjtu.edu.cn/CTAN/' => 1,
'https://mirrors.aliyun.com/CTAN/' => 1,
'https://mirrors.bfsu.edu.cn/CTAN/' => 1,
+ 'https://mirrors.cloud.tencent.com/CTAN/' => 1,
'https://mirrors.cqu.edu.cn/CTAN/' => 1,
'https://mirrors.hit.edu.cn/CTAN/' => 1,
'https://mirrors.nju.edu.cn/CTAN/' => 1,
@@ -48,6 +49,7 @@ $mirrors = {
'https://cran.asia/tex/' => 1,
'https://ftp.kaist.ac.kr/pub/tex-archive/' => 1,
'https://lab.uklee.pe.kr/tex-archive/' => 1,
+ 'https://mirror.kakao.com/CTAN/' => 1,
'https://mirror.navercorp.com/CTAN/' => 1,
},
'Philippines' => {
@@ -72,7 +74,6 @@ $mirrors = {
'https://mirror.datacenter.by/pub/mirrors/CTAN/' => 1,
},
'Czech Republic' => {
- 'http://ftp.cvut.cz/tex-archive/' => 1,
'https://mirrors.nic.cz/tex-archive/' => 1,
},
'Denmark' => {
@@ -154,6 +155,7 @@ $mirrors = {
'Spain' => {
'https://ctan.fisiquimicamente.com/' => 1,
'https://ctan.javinator9889.com/' => 1,
+ 'https://osl.ugr.es/CTAN/' => 1,
},
'Sweden' => {
'https://ftp.acc.umu.se/mirror/CTAN/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 6bf75a3d84..50ef1bb84d 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2022
-depend revision/64282
+depend revision/64291
name 00texlive.image
category TLCore
-revision 64271
+revision 64287
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -1407,6 +1407,7 @@ runfiles size=12917
tlpkg/tlpsrc/delimseasy.tlpsrc
tlpkg/tlpsrc/delimset.tlpsrc
tlpkg/tlpsrc/delimtxt.tlpsrc
+ tlpkg/tlpsrc/democodetools.tlpsrc
tlpkg/tlpsrc/denisbdoc.tlpsrc
tlpkg/tlpsrc/derivative.tlpsrc
tlpkg/tlpsrc/detex.tlpsrc
@@ -4622,7 +4623,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 64275
+revision 64284
shortdesc TeX Live standalone installer package
longdesc This package defines the files to go into the installer
longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the
@@ -41879,31 +41880,34 @@ catalogue-version 0.1
name bithesis
category Package
-revision 63271
+revision 64286
shortdesc Templates for the Beijing Institute of Technology
relocated 1
longdesc This package establishes a simple and easy-to-use LaTeX
longdesc template for Beijing Institute of Technology dissertations,
longdesc including general undergraduate theses and master theses.
-containersize 10456
-containerchecksum 8470b0d11b0170eb28091e42a4215b162ea96da758fa601caf76ea332eb2b26c11cb4f303c43b098f01894b753057dcacd1f594ea3e3fe1fec299c520486c517
-doccontainersize 339076
-doccontainerchecksum 280d6ee1ee71b5e6c63e5c40df8c2b80c19446f976bc524103badb7d2b6dd2472967942b5de4a98e3d25679ef8ab21d258ff29e303bb4b567347f0dad85884bb
-docfiles size=88
+containersize 19736
+containerchecksum 47d1b04fe5e1db8215b273783068ba03682a5249b472a8c25126b0138f699dafd8a5a9443b07eabe5f3c3cf0921e98672b1fc799f6c8fb5d069e8366992b4447
+doccontainersize 804768
+doccontainerchecksum c18e691ba918a868984a0f0dd220d3d67d61f5b3f072febc883f7381eae3cc201133261e34586200ea86a1d0a14f0bd971224fe8220a176523fe4269175554b2
+docfiles size=206
RELOC/doc/latex/bithesis/README.md details="Readme"
RELOC/doc/latex/bithesis/bithesis.pdf details="Package documentation" language="zh"
RELOC/doc/latex/bithesis/contributing-zh.md
RELOC/doc/latex/bithesis/contributing.md
RELOC/doc/latex/bithesis/dtx-style.sty
-srccontainersize 16756
-srccontainerchecksum 8b84b78e461f730227b3d4fdf5597c0343c145e24e8072ef76f8545320b6b7a3e68739c1d168457d64a01a60ea42437b4337bcc8863f7c370f1f1989e50af070
-srcfiles size=15
+srccontainersize 32072
+srccontainerchecksum 3b92f37a511feead4af5b0724b3b85b102d2a364c72e9f9d1aa16543ee61cded6b05b72be1ded79ead678da5b7746889ac6502a1b9e8570735611f7ef81ec911
+srcfiles size=39
RELOC/source/latex/bithesis/bithesis.dtx
RELOC/source/latex/bithesis/bithesis.ins
-runfiles size=11
+runfiles size=29
RELOC/tex/latex/bithesis/bitart.cls
+ RELOC/tex/latex/bithesis/bitbeamer.cls
RELOC/tex/latex/bithesis/bitbook.cls
RELOC/tex/latex/bithesis/bitgrad.cls
+ RELOC/tex/latex/bithesis/bithesis.cls
+ RELOC/tex/latex/bithesis/bitreport.cls
catalogue-contact-announce https://github.com/BITNP/BIThesis/releases
catalogue-contact-bugs https://github.com/BITNP/BIThesis/issues
catalogue-contact-home https://bithesis.bitnp.net
@@ -41912,7 +41916,7 @@ catalogue-contact-support https://github.com/BITNP/BIThesis/discussions
catalogue-ctan /macros/latex/contrib/bithesis
catalogue-license lppl1.3c
catalogue-topics class dissertation doc-templ chinese
-catalogue-version 2.1.1
+catalogue-version 3.0.0
name bitpattern
category Package
@@ -69485,7 +69489,7 @@ containerchecksum c73220abd1545907a1d8de37cb534d2c6bd2534f1b55f03c069f39f535c326
name collection-latexextra
category Collection
-revision 64271
+revision 64287
shortdesc LaTeX additional packages
relocated 1
longdesc A very large collection of add-on packages for LaTeX.
@@ -69824,6 +69828,7 @@ depend debate
depend decimal
depend decorule
depend delimtxt
+depend democodetools
depend denisbdoc
depend diabetes-logbook
depend diagbox
@@ -70943,8 +70948,8 @@ depend zref-clever
depend zref-vario
depend zwgetfdate
depend zwpagelayout
-containersize 6740
-containerchecksum 2689afcb7d71a850f7e0bdcf053aaaa8d1cc1fd116e00c1a2a5ca38ca0228c9f863c873cadafddf4a6591b885c6ac2c54a92e15773d9e38f5d400bed0bd25198
+containersize 6748
+containerchecksum 3e12fc1339f45dbc90679df48a65b66424f7d3d2ae2d84f467b1e27d80f095e36017cee4f41d99300627b18f5fc98e780e7defd971c38bbcee3032fc035d271b
name collection-latexrecommended
category Collection
@@ -91608,6 +91613,22 @@ catalogue-ctan /macros/latex/exptl/delimtxt
catalogue-license lppl
catalogue-topics foreign-import
+name democodetools
+category Package
+revision 64287
+relocated 1
+containersize 7576
+containerchecksum c1fe6694004d2aec1f8b21f5ebb11ab4c211a1175e221890a87ce9e62cd5fed1d0563c88f5f593f5aced6522cc735e2775ef1157c8f1e598ae0b5c80eca06d68
+doccontainersize 353508
+doccontainerchecksum 66d595eda4d37ec36aabe0fe3194491b52b49ce3aa4776ba8d7f5a41a9083b96efa2bf06519dde7cde25edfeebf5a448276eb19e1fbee341b2eb751650104256
+docfiles size=98
+ RELOC/doc/latex/democodetools/README.md
+ RELOC/doc/latex/democodetools/democodetools.pdf
+ RELOC/doc/latex/democodetools/democodetools.tex
+runfiles size=9
+ RELOC/tex/latex/democodetools/democodelisting.sty
+ RELOC/tex/latex/democodetools/democodetools.sty
+
name denisbdoc
category Package
revision 63589
@@ -118076,28 +118097,27 @@ catalogue-version 0.8
name fduthesis
category Package
-revision 56216
+revision 64288
shortdesc LaTeX thesis template for Fudan University
relocated 1
longdesc This package is a LaTeX thesis template package for Fudan
longdesc University. It can make it easy to write theses both in Chinese
longdesc and English.
-containersize 108324
-containerchecksum c91ca063c73e97947fc36c5d5c33cee2e9e963f9a4c993d209d3c2b0c950ba9a34f928a9e6fb5e3922b2757938651ea8f5eb6014f3878b0ae3f7f9cf4bab91c1
-doccontainersize 1361508
-doccontainerchecksum 1be56ed247773a6a28a17aa0a29446f1e2f63333efbfaa4533fc288a3ef7b2d635c10f36e51d8e1a414cf067155ad9dc109fdd93f5ed83900bc2a5eb5d94e4b4
-docfiles size=381
+containersize 108688
+containerchecksum 3079cca7db2e84dd25f506c3830889cd99e0da7dafc755be7edbb5988e11f82e3364a29d7f52feec6f11b66f87c512a1964a68c4a8caa4974e5fb9b5a7314707
+doccontainersize 1437208
+doccontainerchecksum 4ebccccd35e097c51be947d6edbda44923d30d359e32e792b9de41362eb05fd6d74181316c272dc3fe0ef4e33b612cb5a10835b425eb76f558237900654ca92d
+docfiles size=394
RELOC/doc/latex/fduthesis/README.md details="Readme"
RELOC/doc/latex/fduthesis/fdulogo-example.tex
RELOC/doc/latex/fduthesis/fduthesis-code.pdf details="Code Implementation (Chinese)" language="zh"
RELOC/doc/latex/fduthesis/fduthesis-cover.tex
RELOC/doc/latex/fduthesis/fduthesis-en.pdf details="Package documentation (English)" language="en"
RELOC/doc/latex/fduthesis/fduthesis-en.tex
- RELOC/doc/latex/fduthesis/fduthesis-template.tex
RELOC/doc/latex/fduthesis/fduthesis.pdf details="Package documentation (Chinese)" language="zh"
-srccontainersize 116284
-srccontainerchecksum 73b13aa52c6cc5884b6785a995767e7de161071cb98fa6f695947efce7faafc6a61f1cca5c8cd73edca0216555b96c5f7a72b901bda9aac35df34f5d0b4fbe7a
-srcfiles size=136
+srccontainersize 117208
+srccontainerchecksum 4729ca9455b08e79448d6ab451cf8ee0a7593ffb8339f12507914204d52f24ba15a48c39253344c67d4b4cb88927c7d7cf439821aa2fd54a035fd5703b80a567
+srcfiles size=138
RELOC/source/latex/fduthesis/fduthesis-doc.dtx
RELOC/source/latex/fduthesis/fduthesis-logo.dtx
RELOC/source/latex/fduthesis/fduthesis.dtx
@@ -118117,7 +118137,7 @@ catalogue-contact-repository https://github.com/stone-zeng/fduthesis
catalogue-ctan /macros/latex/contrib/fduthesis
catalogue-license lppl1.3c
catalogue-topics dissertation class chinese latex3
-catalogue-version 0.7e
+catalogue-version 0.8
name featpost
category Package
@@ -172500,7 +172520,7 @@ binfiles arch=x86_64-solaris size=1
name latex2nemeth
category Package
-revision 63796
+revision 64291
shortdesc Convert LaTeX source to Braille with math in Nemeth
longdesc After many failed attempts to transcribe real math notes and
longdesc books to Braille/Nemeth in order to deal with a real situation
@@ -172521,11 +172541,11 @@ longdesc unicode-math package that are represented by the Nemeth code
longdesc are now supported by latex2nemeth. We would like to acknowledge
longdesc support by the TUGfund for this project (TUGfund project 33).
depend latex2nemeth.ARCH
-containersize 7295328
-containerchecksum c7c86ec668d923d69f825a6d37c12f859a784adc91ed1d24f7e19ca50417e003fcb537e5a2b9929205577afbf3ade719013db4d68d296c53b6ebbaaea4e1a2fd
-doccontainersize 735500
-doccontainerchecksum c59d3d8240aeacc346b3121c47d4cbf97cc80d1834f5ec549caa1dcc3cd238b65bd5d434fd8ddf3f2aadf9ded921bb144e4e32a3ee864626960db58d4a090b2d
-docfiles size=327
+containersize 7296520
+containerchecksum 06a0db9c089e231ce0c4321bdbce577e0d06268df413d480f97b1f814e0a31bcbb82912e8bb2030efc71dc3f6f691a4ce1a284a75840e0f92b787c38440b787d
+doccontainersize 730372
+doccontainerchecksum d01ded211e97cd526d475ff16a21d8ac2a88461cd0fbc890550efc12a5cb660e5762c91ffb4d05b84ecd5a5c3e6800366e7adfe942994a0b8f39a2a8449ae678
+docfiles size=326
texmf-dist/doc/support/latex2nemeth/README details="Readme"
texmf-dist/doc/support/latex2nemeth/contrib/nemeth2odt
texmf-dist/doc/support/latex2nemeth/doc/unicode-math-braille.pdf
@@ -172536,14 +172556,14 @@ docfiles size=327
texmf-dist/doc/support/latex2nemeth/examples/mathtest.tex
texmf-dist/doc/support/latex2nemeth/gpl-3.0.txt
texmf-dist/doc/support/latex2nemeth/source.zip
-runfiles size=1992
+runfiles size=1993
texmf-dist/scripts/latex2nemeth/latex2nemeth
texmf-dist/scripts/latex2nemeth/latex2nemeth.jar
catalogue-contact-home http://myria.math.aegean.gr/labs/dt/braille/index-en.html
catalogue-ctan /support/latex2nemeth
catalogue-license gpl3
catalogue-topics cvt-other maths accessible
-catalogue-version 1.1
+catalogue-version 1.1.1
name latex2nemeth.aarch64-linux
category Package
@@ -252454,7 +252474,7 @@ catalogue-version 1.0
name proflycee
category Package
-revision 64281
+revision 64289
shortdesc A LaTeX package for French maths teachers in high school
relocated 1
longdesc This package provides some commands to help French mathematics
@@ -252463,11 +252483,11 @@ longdesc create splines with "derivative control"; \paramCF and \ligneCF
longdesc in order to create an xcas-windows-like; \envconsolepythontex
longdesc and \envcodepythontex to create code presentation and code
longdesc execution with pythontex.
-containersize 15016
-containerchecksum 2859d2c74b631f0c6d285c0cd65265389b0d6745766281bb671633eba569626013c97a1f295db470517018c0c1410dd7bcbc498e51dd0e0652127ea6b974ff54
-doccontainersize 870228
-doccontainerchecksum f9d57dc8e3b78ceca8fedce7cad28210f76843b3f0dd014f3198a6c47440f4f028f0d112871e90e790649b5a1250f73250a50f83e93c719f1d94938120b35d42
-docfiles size=255
+containersize 15648
+containerchecksum c287b997541839235f834390526d533ce15badf4c7c756eeb0a0cd1b5e8f64f9e68f42bb2b1a7a0f8f0239603971d4c98b5ca540118ea19a4b1f738dca1a7b4c
+doccontainersize 884940
+doccontainerchecksum 35e459dd11ea82d21e839ce2fb62bc46450b858d5047dee59c64d4fc24ec6f9ae938fabccb2a25af627de4885f32a065b84698370589f0c9fc76331258504aba
+docfiles size=260
RELOC/doc/latex/proflycee/ProfLycee-doc.pdf details="Package documentation" language="fr"
RELOC/doc/latex/proflycee/ProfLycee-doc.tex
RELOC/doc/latex/proflycee/README.md details="Readme"
@@ -252481,15 +252501,15 @@ docfiles size=255
RELOC/doc/latex/proflycee/pl-doc-stats_d.png
RELOC/doc/latex/proflycee/pl-doc-stats_e.png
RELOC/doc/latex/proflycee/testscript.py
-runfiles size=16
+runfiles size=17
RELOC/tex/latex/proflycee/ProfLycee.sty
catalogue-also profcollege
catalogue-contact-bugs https://github.com/cpierquet/ProfLycee/issues
catalogue-contact-repository https://github.com/cpierquet/ProfLycee
catalogue-ctan /macros/latex/contrib/proflycee
catalogue-license lppl1.3c
-catalogue-topics maths french teaching
-catalogue-version 1.2.4
+catalogue-topics maths french teaching expl3 pgf-tikz
+catalogue-version 1.2.5
name program
category Package
@@ -306894,7 +306914,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 64275
+revision 64284
shortdesc TeX Live infrastructure programs
longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for
longdesc tlmgr to run but still ours. Not included in tlcritical.
@@ -306902,10 +306922,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 113468
-containerchecksum 01111dde9666ae3e436e29a7b47efecd5f9af33bf6435a75d71fde6c53acbb10d526c473c18260960ffb5e9f5c24f414ebcb8f2b9e02a5cf0dc03abb330eef00
-doccontainersize 420648
-doccontainerchecksum 095effaa8119d91420471d2f2c301e27480162589c12b4ae7db624335db859768301a6bddb46ec6cf00def1da932d2034ffd39a4b27c903d664e01861226855b
+containersize 113496
+containerchecksum 248955020433eff4c0ae05eb546526ffecf3284f3049b2c91ebd247c691e9b38ac0f63bf2d7ae971c8302b77ac50c04d25392caea6877bf5301bcb716a5ed9c7
+doccontainersize 420552
+doccontainerchecksum 1e23a052de550cb4162d056778b8687a93e3195f9081b9ff6749d48a2bd34836a799972f144cf59fdc8aa91fa2d0a909f70f2ee617172c5736934bfbd546d272
docfiles size=520
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
@@ -329486,7 +329506,7 @@ catalogue-version 2.1
name unbtex
category Package
-revision 64008
+revision 64290
shortdesc A class for theses at University of Brasilia (UnB)
relocated 1
longdesc This package provides a class based on abnTeX and compatible
@@ -329498,10 +329518,10 @@ longdesc documentation for the class and the comments in the templates
longdesc are all written in Portuguese, the language of the target
longdesc audience.
containersize 5868
-containerchecksum 24bad0dee12eb6f5812f64c83912a618b454fbc0aba44cb3539b410648da18752b16f6153a4a6a35aa70950063d328d2f49440fb414dfb8a4d77a69e19ae822e
-doccontainersize 1441108
-doccontainerchecksum 294937eacc6826bc9b9dc82baa174ca4ee71466a0df14e25ee29d51e28f32a77f593ef0bc8557728c94ef1268df197fe928c6dbb33598d977661b035a7f4e5e1
-docfiles size=423
+containerchecksum 9b0f6ba3287db9dc59ff5823025fb4493858150ba9eeb15facae848780996d039d411a988ee89f654a34b96798df8a5e2d7b6207b913267ed41df33213a42b6d
+doccontainersize 1441748
+doccontainerchecksum a6a9115cb0c3e8af16cc1e8595bd826e15f25647a09db7dff5a775ff857a275528236f3db6e329d258b01d69bacdb279a5c37fd0edbea4533263bbd3c204bd69
+docfiles size=424
RELOC/doc/latex/unbtex/README.md details="Readme"
RELOC/doc/latex/unbtex/unbtex-example.pdf details="Example of use" language="pt-br"
RELOC/doc/latex/unbtex/unbtex-example.tex
@@ -329529,7 +329549,7 @@ runfiles size=5
catalogue-ctan /macros/latex/contrib/unbtex
catalogue-license lppl1.3
catalogue-topics class doc-templ dissertation portuguese-br
-catalogue-version 1.1.2
+catalogue-version 1.1.3
name undergradmath
category Package
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 1bd140c620..129687242f 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-b36c0f713e66e3e7d863d94ade7f7539 texlive.tlpdb
+a39c085ea9145625984dc9110a10b014 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index d1763c8e6a..1372601df5 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-a4161bfb4922b79e022fe29ff734d3277f8447b13fcd1338cdcae8dd46a6b3c0571850f68040ea520520bb8f104b93b48d3aa5541503e54451cdd7f458c56388 texlive.tlpdb
+487a0c97964313f0b2483939c9cc68b3ec3ac4fac80141ce809b84a2c112643fee6a1fb24798fd9eb861dd089741c9392d488b10450acdaab1af59bcb639da73 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 07327d678d..e9428884e4 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJjE+keAAoJEEzhh34ZQ4xwxrEIAJ5VD7ItnTzNhPsivkzNQVTE
-l1K7yfmimFt/Q/i6OHA4fHxRHbrmi0o1MoN7T8+oekRXIPWjJO2n5slj6JoOmKIQ
-gk+GF3N1yBJWChpDf5vQVKVLWOuzAhleMDzVJ9i6MacssSxUDrfKv3XanWEn1xC7
-JDedtAhodKvRta5+f+2VU3LhcJtPH+uSJE77pAHGkCxRGqknJ1QaUfV7wjwgeFYx
-JQRA1xfWBTkgiZFLA+jLpm2zSnIzAzTWN50p/SqxYPHRB9TmrsHTd8+S10j47KHm
-8x46imcFRAwsQc6Mw44D5hZTyMQS/+ylhyRMj2rRcXyTlgmqtfyAoT8X/Tb29i4=
-=vWAb
+iQEcBAEBCgAGBQJjFTpLAAoJEEzhh34ZQ4xwrrgH+QFmwuR/WVb6mjdVNTrTw3FB
+hsRl71PxfMyBHF19SGcvPDLpIV4py2E7uuLD3gCcdn8Re+PCvSYyEHfH7O+/P7Cr
+tki1JI+O0nvEqNEdLAO7Zdv7ZmFPwjqZqH9J/nH7VBcMtwrE3ei6YeM9tzLjCFu8
+rrDREEE4yTeivwBmxwZHDqkZJFd+jpGV5uq3+ozo0QTGXTuod8LoE8+pD8b1DeiB
+Y7cKD9IfmUvg2pJtZWyyFH4tOz5Y/Hejp2FiMI/grokLo26CF89UGFLl7wBqqXTF
+UDdjNLvIU4tUEM8jZkFG7lYJ/QkgGs1R4/YXAhz/+y1RGoXmN0SpzkLcgoIrzB0=
+=XKUC
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index c2894e4b6e..a2fbe38620 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index 1662918d2b..f825a37228 100644
--- a/systems/win32/miktex/tm/packages/next/pr.ini
+++ b/systems/win32/miktex/tm/packages/next/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1662236169
+date=1662322570
lastupd=miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-x64-2.9 miktex-cjkutils-bin-x64-2.9 miktex-console-bin-x64-2.9 miktex-curl-bin-x64-2.9 miktex-cweb-bin-x64-2.9 miktex-devnag-bin-x64-2.9 miktex-doc miktex-dvicopy-bin-x64-2.9 miktex-dvipdfmx-bin-x64-2.9 miktex-dvipng-bin-x64-2.9 miktex-dvips-bin-x64-2.9
-lstdigest=e1b11e7cf9ff8d92c32ccceb885b48ea
+lstdigest=42740554f84b466608325f432b6e63ab
numpkg=5908
relstate=next
-version=8281
+version=8282
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: eiwaKTfBfh9GPvXkZ+i1e9FKtqmU/Ra6duh+Yi23HFDdn0k1dMf9nesKZOI9KILmLnJrbt5P6iOtLWdMdUOXl457OzzlRqHXgQUVe5Ds8EJw+cFgT4mDRiWzK0Wa+kjbCEQXhl03La7Y5kb9g2MIaycLsNisVxyjCg3YCx4W8xryqVb0SZTlY5pdsGgqnDhjTJ8SZy61Mo4J77PsJLAvWjt7y77Pkgyds7FX3t1aeiFXk2xM/7Lo01cDJQlUML6sqCApSwRt0InRRDGn36otHaUIyNpJQKTtabUljzxBhqAoC14O3Own7Dq/PVCjEV1ZNiNddi3Bw+3MvrlKf4ts9g==
+;;;; signature/miktex: vDpvbKoFKoGId0LBE7Gr79uf+FrLo14jYBi3Zb3U6hiLX6ecFQ+XYFMNA5zOyI4jTVCP2N9ct6bUG9vxtSwsv44aBiZnGB81rsjJSPLknSMJlbfy6bvi/LNoNSuykf5IKJa81wdmJS/hKBw7IQglBX4PPshQKvS3X+oE9OurhVTUBrOEAWk3VuW7naxSsMPv9jjRs1s9969HJFixvzvyg/yEvg3w2Mc6qDN6fHM5TCNdwXkPWM8++Mj+B2qvO2lBcrKNF54+JLL5UCcEk8Bwsw7YBfPcWXBtoq1f4Ai2JzMULk31jg0Ul++//7iGAFy3X0e9NUcPdsVMNbdN2+4R8A==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index 0dd6d7d5ac..32e8fc4104 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1662235887
+date=1662322285
lastupd=langnames langnames__doc langnames__source luaquotes luaquotes__doc luaquotes__source markdown markdown__doc markdown__source pdfoverlay pdfoverlay__doc pdfoverlay__source profcollege profcollege__doc profcollege__source pstricks pstricks__doc pstricks__source scripture scripture__doc
-lstdigest=55190fcd14e9a78a5f22b57a726edc46
+lstdigest=a82248026c420fa724df7dcf54072bc9
numpkg=5908
relstate=stable
-version=8281
+version=8282
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: Mg/TU11isDoM1VFIOLE8TU/vhwvr5F60QdvrWvwxQfQNkL+nL9l/X/I0vuJQ4Fzet7bXtTo8x2NDSttqu48ja3KCpculnaz9I0YFCxx4BVnt+piRA8jbdWp2Tt6J2U/s8+m/XEJe7AvsbP8s1IAeItiF4X86Lj1G++DzOTsC4QSsEgYOumx1U58kdW8k9nDU5SLoWFS44h2QALNCALwK+wFH6swADMPcSh4CCbZV2EjZXEp+u9TdQuTrDtVeJku6oXkGTH8cpaBCnn8rrq6db5m4Da++ENT5WMDGY2qu4BWpDrToff2Yzm5iXjNTgsAy74Iibg1EGxKcA7U89NzPxA==
+;;;; signature/miktex: qSNfwStuk30ZLfpcSQeI58xZWg2QlcfdtWt+6OKAUH03Fniq+XPfgbv9T52u1JSrIK7RebBk0a/57t3lVRvbuZoOGJu/DmcOSHqi9d2MpzKlTXdZBZ7wBRRkIKQ7isXlDkiNpdf38rEGuPSQOctYoIniV/ryp9GPIfVmBydT06BQBWLDiE79d3nz/OAmA3AhXqG1B5nn7YsJpf3eMDZ9rF6rxWS0XG4rFal/AJNJje/i3ZsQituBtp8O6RPh/Gft8tT9PHSXDrNoxAEBqF0iOPrhZNETd1xnY8t0MAyJfpobCZ+B2BMQXsLnppy1KPhqv0ozu9rA75JIhr5xBc9JKw==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index cfbde7e8f2..c237cb45df 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2022-09-04-02-02
+2022-09-05-02-02