summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/ctex/back/ctexartutf8.cls13
-rw-r--r--Master/texmf-dist/tex/latex/ctex/back/ctexbookutf8.cls13
-rw-r--r--Master/texmf-dist/tex/latex/ctex/back/ctexcaputf8.sty13
-rw-r--r--Master/texmf-dist/tex/latex/ctex/back/ctexreputf8.cls13
-rw-r--r--Master/texmf-dist/tex/latex/ctex/back/ctexutf8.sty13
-rw-r--r--Master/texmf-dist/tex/latex/ctex/cfg/ctex.cfg4
-rw-r--r--Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-gbk.cfg46
-rw-r--r--Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-utf8.cfg46
-rw-r--r--Master/texmf-dist/tex/latex/ctex/cfg/ctexcap.cfg111
-rw-r--r--Master/texmf-dist/tex/latex/ctex/cfg/ctexopts.cfg.template6
-rw-r--r--Master/texmf-dist/tex/latex/ctex/ctex.sty22
-rw-r--r--Master/texmf-dist/tex/latex/ctex/ctexart.cls29
-rw-r--r--Master/texmf-dist/tex/latex/ctex/ctexbook.cls29
-rw-r--r--Master/texmf-dist/tex/latex/ctex/ctexcap.sty30
-rw-r--r--Master/texmf-dist/tex/latex/ctex/ctexrep.cls29
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-article.def220
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-book.def252
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-caption.def165
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-class.def96
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-common.def385
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-gbk.def28
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-loadclass.def16
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-report.def242
-rw-r--r--Master/texmf-dist/tex/latex/ctex/def/ctex-utf8.def28
-rw-r--r--Master/texmf-dist/tex/latex/ctex/engine/ctex-cct-engine.def82
-rw-r--r--Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-common.def50
-rw-r--r--Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-engine.def69
-rw-r--r--Master/texmf-dist/tex/latex/ctex/engine/ctex-xecjk-engine.def27
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fd17
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fdx62
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fd17
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fdx62
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19rm.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19sf.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c19tt.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c70rm.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c70sf.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fd/c70tt.fd49
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-adobefonts.def7
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-cjkfonts.def11
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-winfonts.def78
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-adobefonts.def19
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-cjkfonts.def7
-rw-r--r--Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def23
-rw-r--r--Master/texmf-dist/tex/latex/ctex/opt/ctex-caption-opts.def11
-rw-r--r--Master/texmf-dist/tex/latex/ctex/opt/ctex-class-opts.def26
-rw-r--r--Master/texmf-dist/tex/latex/ctex/opt/ctex-common-opts.def59
47 files changed, 2770 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ctex/back/ctexartutf8.cls b/Master/texmf-dist/tex/latex/ctex/back/ctexartutf8.cls
new file mode 100644
index 00000000000..7e703145921
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/back/ctexartutf8.cls
@@ -0,0 +1,13 @@
+% ctexartutf8.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexartutf8}
+ [2009/06/26 v0.92 ctexartutf8
+ document class]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexart}}
+\PassOptionsToClass{UTF8}{ctexart}
+\ProcessOptions
+\LoadClass{ctexart}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/back/ctexbookutf8.cls b/Master/texmf-dist/tex/latex/ctex/back/ctexbookutf8.cls
new file mode 100644
index 00000000000..c28b202fb9c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/back/ctexbookutf8.cls
@@ -0,0 +1,13 @@
+% ctexbookutf8.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexbookutf8}
+ [2009/06/26 v0.92 ctexbookutf8
+ document class]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}}
+\PassOptionsToClass{UTF8}{ctexbook}
+\ProcessOptions
+\LoadClass{ctexbook}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/back/ctexcaputf8.sty b/Master/texmf-dist/tex/latex/ctex/back/ctexcaputf8.sty
new file mode 100644
index 00000000000..7ee25a73335
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/back/ctexcaputf8.sty
@@ -0,0 +1,13 @@
+% ctexcaputf8.sty
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{ctexcaputf8}
+ [2009/06/26 v0.92 ctexcaputf8
+ macros package]
+
+\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{ctexcap}}
+\PassOptionsToPackage{UTF8}{ctexcap}
+\ProcessOptions
+\RequirePackage{ctexcap}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/back/ctexreputf8.cls b/Master/texmf-dist/tex/latex/ctex/back/ctexreputf8.cls
new file mode 100644
index 00000000000..8c4d01aad11
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/back/ctexreputf8.cls
@@ -0,0 +1,13 @@
+% ctexreputf8.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexreputf8}
+ [2009/06/26 v0.92 ctexreputf8
+ document class]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexrep}}
+\PassOptionsToClass{UTF8}{ctexrep}
+\ProcessOptions
+\LoadClass{ctexrep}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/back/ctexutf8.sty b/Master/texmf-dist/tex/latex/ctex/back/ctexutf8.sty
new file mode 100644
index 00000000000..7dbbe9a42a9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/back/ctexutf8.sty
@@ -0,0 +1,13 @@
+% ctexutf8.sty
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{ctexutf8}
+ [2009/06/26 v0.92 ctexutf8
+ macros package]
+
+\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{ctex}}
+\PassOptionsToPackage{UTF8}{ctex}
+\ProcessOptions
+\RequirePackage{ctex}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/cfg/ctex.cfg b/Master/texmf-dist/tex/latex/ctex/cfg/ctex.cfg
new file mode 100644
index 00000000000..0feb9f95ec1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/cfg/ctex.cfg
@@ -0,0 +1,4 @@
+% ctex.cfg: for user's customized definitions
+% vim:ft=tex
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-gbk.cfg b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-gbk.cfg
new file mode 100644
index 00000000000..900864986eb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-gbk.cfg
@@ -0,0 +1,46 @@
+% ctexcap-gbk.cfg: default Chinese caption settings
+% vim:ft=tex
+
+%% Chinese captions
+%%
+%% character set: GBK
+%% encoding: EUC
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% caption name
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\CTEX@contentsname{Ŀ¼}
+\def\CTEX@listfigurename{ͼ}
+\def\CTEX@listtablename{}
+
+\def\CTEX@figurename{ͼ}
+\def\CTEX@tablename{}
+
+\def\CTEX@abstractname{ժҪ}
+\def\CTEX@indexname{}
+\def\CTEX@bibname{ο}
+
+\def\CTEX@prepart{}
+\def\CTEX@postpart{}
+\def\CTEX@prechapter{}
+\def\CTEX@postchapter{}
+\def\CTEX@presection{}
+\def\CTEX@postsection{}
+\def\CTEX@presubsection{}
+\def\CTEX@postsubsection{}
+\def\CTEX@presubsubsection{}
+\def\CTEX@postsubsubsection{}
+\def\CTEX@preparagraph{}
+\def\CTEX@postparagraph{}
+\def\CTEX@presubparagraph{}
+\def\CTEX@postsubparagraph{}
+
+\ifCTEX@cls{article}{
+ \def\CTEX@appendixname{}
+}{
+ \def\CTEX@appendixname{¼~}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-utf8.cfg b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-utf8.cfg
new file mode 100644
index 00000000000..f9d39747048
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap-utf8.cfg
@@ -0,0 +1,46 @@
+% ctexcap-utf8.cfg: default Chinese caption settings
+% vim:ft=tex
+
+%% Chinese captions
+%%
+%% character set: UTF-8
+%% encoding: EUC
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% caption name
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\CTEX@contentsname{目录}
+\def\CTEX@listfigurename{插图}
+\def\CTEX@listtablename{表格}
+
+\def\CTEX@figurename{图}
+\def\CTEX@tablename{表}
+
+\def\CTEX@abstractname{摘要}
+\def\CTEX@indexname{索引}
+\def\CTEX@bibname{参考文献}
+
+\def\CTEX@prepart{第}
+\def\CTEX@postpart{部分}
+\def\CTEX@prechapter{第}
+\def\CTEX@postchapter{章}
+\def\CTEX@presection{}
+\def\CTEX@postsection{}
+\def\CTEX@presubsection{}
+\def\CTEX@postsubsection{}
+\def\CTEX@presubsubsection{}
+\def\CTEX@postsubsubsection{}
+\def\CTEX@preparagraph{}
+\def\CTEX@postparagraph{}
+\def\CTEX@presubparagraph{}
+\def\CTEX@postsubparagraph{}
+
+\ifCTEX@cls{article}{
+ \def\CTEX@appendixname{}
+}{
+ \def\CTEX@appendixname{附录~}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap.cfg b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap.cfg
new file mode 100644
index 00000000000..842d54d2e84
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/cfg/ctexcap.cfg
@@ -0,0 +1,111 @@
+% ctexcap.cfg: default Chinese caption settings
+% vim:ft=tex
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% caption by encoding
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifCTEX@GBK
+ \input{ctexcap-gbk.cfg}
+\else
+ \input{ctexcap-utf8.cfg}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% caption number
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\CTEX@thepart{\chinese{part}}
+\def\CTEX@thechapter{\chinese{chapter}}
+
+\def\CTEX@thesection{\thesection}
+\def\CTEX@thesubsection{\thesubsection}
+\def\CTEX@thesubsubsection{\thesubsubsection}
+\def\CTEX@theparagraph{\theparagraph}
+\def\CTEX@thesubparagraph{\thesubparagraph}
+
+\ifCTEX@cls{article}{
+ \def\CTEX@appendixnumber{\@Alph\c@section}
+}{
+ \def\CTEX@appendixnumber{\@Alph\c@chapter}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% caption format
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifCTEX@cls{article}{
+ \def\CTEX@part@format{\centering}
+ \def\CTEX@part@nameformat{\Large\bfseries}
+ \def\CTEX@part@aftername{\quad}
+ \def\CTEX@part@titleformat{\Large\bfseries}
+ \def\CTEX@part@beforeskip{4ex}
+ \def\CTEX@part@afterskip{3ex}
+ \def\CTEX@part@indent{\z@}
+}{
+ \def\CTEX@part@format{\centering}
+ \def\CTEX@part@nameformat{\huge\bfseries}
+ \def\CTEX@part@aftername{\par\vskip 20\p@}
+ \def\CTEX@part@titleformat{\huge\bfseries}
+}
+
+\def\CTEX@chapter@format{\centering}
+\def\CTEX@chapter@nameformat{\huge\bfseries}
+\def\CTEX@chapter@aftername{\quad}
+\def\CTEX@chapter@titleformat{\huge\bfseries}
+\def\CTEX@chapter@beforeskip{50\p@}
+\def\CTEX@chapter@afterskip{40\p@}
+\def\CTEX@chapter@indent{\z@}
+
+\def\CTEX@section@format{\Large\bfseries\centering}
+\def\CTEX@section@aftername{\quad}
+\def\CTEX@section@beforeskip{-3.5ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@section@afterskip{2.3ex \@plus .2ex}
+\def\CTEX@section@indent{\z@}
+
+\def\CTEX@subsection@format{\large\bfseries\flushleft}
+\def\CTEX@subsection@aftername{\quad}
+\def\CTEX@subsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsection@indent{\z@}
+
+\def\CTEX@subsubsection@format{\normalsize\bfseries\flushleft}
+\def\CTEX@subsubsection@aftername{\quad}
+\def\CTEX@subsubsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsubsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsubsection@indent{\z@}
+
+\def\CTEX@paragraph@format{\normalsize\bfseries\flushleft}
+\def\CTEX@paragraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@paragraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@paragraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@paragraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@paragraph@afterskip{-1em}
+\fi
+\def\CTEX@paragraph@indent{\z@}
+
+\def\CTEX@subparagraph@format{\normalsize\bfseries\flushleft}
+\def\CTEX@subparagraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>3
+ \def\CTEX@subparagraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@subparagraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@subparagraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@subparagraph@afterskip{-1em}
+\fi
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@subparagraph@indent{\z@}
+\else
+ \def\CTEX@subparagraph@indent{\parindent}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% other configurations
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\CTEX@caption@delimiter{: }
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/cfg/ctexopts.cfg.template b/Master/texmf-dist/tex/latex/ctex/cfg/ctexopts.cfg.template
new file mode 100644
index 00000000000..bbd8d3afba8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/cfg/ctexopts.cfg.template
@@ -0,0 +1,6 @@
+% ctexopts.cfg.template: set default options
+% vim:ft=tex
+
+\ExecuteOptions{winfonts}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/ctex.sty b/Master/texmf-dist/tex/latex/ctex/ctex.sty
new file mode 100644
index 00000000000..6b3fa1bd34c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/ctex.sty
@@ -0,0 +1,22 @@
+% ctex.sty
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{ctex}
+ [2009/06/26 v0.92 ctex
+ macros package]
+
+\input{ctex-common-opts.def}
+
+\InputIfFileExists{ctexopts.cfg}{}{}
+
+\ProcessOptions
+
+\input{ctex-common.def}
+
+% ctex.cfg should be loaded very last
+\AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctex.cfg}{}{}
+ \makeatother}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/ctexart.cls b/Master/texmf-dist/tex/latex/ctex/ctexart.cls
new file mode 100644
index 00000000000..d0db7cf44a0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/ctexart.cls
@@ -0,0 +1,29 @@
+% ctexart.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexart}
+ [2009/06/26 v0.92 ctexart
+ document class]
+
+\def\CTEX@classtoload{article}
+
+\input{ctex-common-opts.def}
+\input{ctex-caption-opts.def}
+\input{ctex-class-opts.def}
+
+\InputIfFileExists{ctexopts.cfg}{}{}
+
+\input{ctex-loadclass.def}
+
+\input{ctex-common.def}
+\input{ctex-caption.def}
+\input{ctex-class.def}
+\input{ctex-article.def}
+
+% ctex.cfg should be loaded very last
+\AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctex.cfg}{}{}
+ \makeatother}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/ctexbook.cls b/Master/texmf-dist/tex/latex/ctex/ctexbook.cls
new file mode 100644
index 00000000000..4c2f5fadb6b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/ctexbook.cls
@@ -0,0 +1,29 @@
+% ctexbook.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexbook}
+ [2009/06/26 v0.92 ctexbook
+ document class]
+
+\def\CTEX@classtoload{book}
+
+\input{ctex-common-opts.def}
+\input{ctex-caption-opts.def}
+\input{ctex-class-opts.def}
+
+\InputIfFileExists{ctexopts.cfg}{}{}
+
+\input{ctex-loadclass.def}
+
+\input{ctex-common.def}
+\input{ctex-caption.def}
+\input{ctex-class.def}
+\input{ctex-book.def}
+
+% ctex.cfg should be loaded very last
+\AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctex.cfg}{}{}
+ \makeatother}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/ctexcap.sty b/Master/texmf-dist/tex/latex/ctex/ctexcap.sty
new file mode 100644
index 00000000000..8ace4ce4137
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/ctexcap.sty
@@ -0,0 +1,30 @@
+% ctexcap.sty
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{ctexcap}
+ [2009/06/26 v0.92 ctexcap
+ macros package]
+
+\input{ctex-common-opts.def}
+\input{ctex-caption-opts.def}
+
+\InputIfFileExists{ctexopts.cfg}{}{}
+
+\ProcessOptions
+
+\input{ctex-common.def}
+\input{ctex-caption.def}
+
+\@ifundefined{if@mainmatter}{\let\if@mainmatter\iftrue}{}
+
+\ifCTEX@cls{article}{\input{ctex-article.def}}{}
+\ifCTEX@cls{report}{\input{ctex-report.def}}{}
+\ifCTEX@cls{book}{\input{ctex-book.def}}{}
+
+% ctex.cfg should be loaded very last
+\AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctex.cfg}{}{}
+ \makeatother}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/ctexrep.cls b/Master/texmf-dist/tex/latex/ctex/ctexrep.cls
new file mode 100644
index 00000000000..92994593374
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/ctexrep.cls
@@ -0,0 +1,29 @@
+% ctexrep.cls
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{ctexrep}
+ [2009/06/26 v0.92 ctexrep
+ document class]
+
+\def\CTEX@classtoload{report}
+
+\input{ctex-common-opts.def}
+\input{ctex-caption-opts.def}
+\input{ctex-class-opts.def}
+
+\InputIfFileExists{ctexopts.cfg}{}{}
+
+\input{ctex-loadclass.def}
+
+\input{ctex-common.def}
+\input{ctex-caption.def}
+\input{ctex-class.def}
+\input{ctex-report.def}
+
+% ctex.cfg should be loaded very last
+\AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctex.cfg}{}{}
+ \makeatother}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-article.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-article.def
new file mode 100644
index 00000000000..607af578781
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-article.def
@@ -0,0 +1,220 @@
+% ctex-article.def: definitions for article class files
+% vim:ft=tex
+
+\def\CTEX@prepart{Part\space}
+\def\CTEX@prechapter{Chapter\space}
+\def\CTEX@part@format{\raggedright}
+\def\CTEX@part@nameformat{\Large\bfseries}
+\def\CTEX@part@aftername{\par\nobreak}
+\def\CTEX@part@titleformat{\huge\bfseries}
+\def\CTEX@part@beforeskip{4ex}
+\def\CTEX@part@afterskip{3ex}
+\def\CTEX@part@indent{\z@}
+\def\CTEX@chapter@format{\raggedright}
+\def\CTEX@chapter@nameformat{\huge\bfseries}
+\def\CTEX@chapter@aftername{\par\nobreak\vskip 20\p@}
+\def\CTEX@chapter@titleformat{\Huge\bfseries}
+\def\CTEX@chapter@beforeskip{50\p@}
+\def\CTEX@chapter@afterskip{40\p@}
+\def\CTEX@chapter@indent{\z@}
+\def\CTEX@section@format{\Large\bfseries}
+\def\CTEX@section@aftername{\quad}
+\def\CTEX@section@beforeskip{-3.5ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@section@afterskip{2.3ex \@plus .2ex}
+\def\CTEX@section@indent{\z@}
+\def\CTEX@subsection@format{\large\bfseries}
+\def\CTEX@subsection@aftername{\quad}
+\def\CTEX@subsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsection@indent{\z@}
+\def\CTEX@subsubsection@format{\normalsize\bfseries}
+\def\CTEX@subsubsection@aftername{\quad}
+\def\CTEX@subsubsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsubsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsubsection@indent{\z@}
+\def\CTEX@paragraph@format{\normalsize\bfseries}
+\def\CTEX@paragraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@paragraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@paragraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@paragraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@paragraph@afterskip{-1em}
+\fi
+\def\CTEX@paragraph@indent{\z@}
+\def\CTEX@subparagraph@format{\normalsize\bfseries}
+\def\CTEX@subparagraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>3
+ \def\CTEX@subparagraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@subparagraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@subparagraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@subparagraph@afterskip{-1em}
+\fi
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@subparagraph@indent{\z@}
+\else
+ \def\CTEX@subparagraph@indent{\parindent}
+\fi
+\def\CTEX@appendixname{}
+\def\CTEX@appendixnumber{\@Alph\c@section}
+\let\CTEX@save@appendix\appendix
+\renewcommand*\appendix{\CTEX@save@appendix%
+ \gdef\CTEX@presection{\CTEX@appendixname}%
+ \gdef\CTEX@thesection{\CTEX@appendixnumber}%
+ \gdef\CTEX@postsection{}}%
+\renewcommand\part{%
+ \if@noskipsec \leavevmode \fi
+ \par
+ \addvspace{\CTEX@part@beforeskip}%
+ \@afterindentfalse
+ \secdef\@part\@spart}
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{part}%
+ \addcontentsline{toc}{part}{\CTEXthepart\hspace{1em}#1}%
+ \else
+ \addcontentsline{toc}{part}{#1}%
+ \fi
+ {\interlinepenalty \@M
+ \normalfont \parindent \CTEX@part@indent \CTEX@part@format
+ \ifnum \c@secnumdepth >\m@ne
+ \CTEX@partname
+ \fi
+ \CTEX@part@titleformat #2%
+ \markboth{}{}\par}%
+ \nobreak
+ \vskip \CTEX@part@afterskip
+ \@afterheading}
+\def\@spart#1{%
+ {\interlinepenalty \@M
+ \normalfont \parindent \CTEX@part@indent \CTEX@part@format
+ \CTEX@part@titleformat #1\par}%
+ \nobreak
+ \vskip \CTEX@part@afterskip
+ \@afterheading}
+\def\@seccntformat#1{%
+ \@ifundefined{CTEX@#1name}%
+ {\csname the#1\endcsname\quad}%
+ {\csname CTEX@#1name\endcsname}}
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+ \fi
+ \@tempskipa #5\relax
+ \ifdim \@tempskipa>\z@
+ \begingroup
+ #6{%
+ \@hangfrom{\hskip #3\relax\@svsec}%
+ \interlinepenalty \@M
+ \csname CTEX@#1@titleformat\endcsname #8\@@par}%
+ \endgroup
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}%
+ \else
+ \def\@svsechd{%
+ #6{\hskip #3\relax
+ \@svsec \csname CTEX@#1@titleformat\endcsname #8}%
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}}%
+ \fi
+ \@xsect{#5}}
+\def\numberline#1{%
+ \settowidth\@tempdimb{#1\hspace{0.5em}}%
+ \ifdim\@tempdima<\@tempdimb%
+ \@tempdima=\@tempdimb%
+ \fi%
+ \hb@xt@\@tempdima{#1\hfil}}
+\renewcommand\section{\@startsection{section}{1}%
+ {\CTEX@section@indent}%
+ {\CTEX@section@beforeskip}%
+ {\CTEX@section@afterskip}%
+ {\normalfont\CTEX@section@format}}
+\renewcommand\subsection{\@startsection{subsection}{2}%
+ {\CTEX@subsection@indent}%
+ {\CTEX@subsection@beforeskip}%
+ {\CTEX@subsection@afterskip}%
+ {\normalfont\CTEX@subsection@format}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}%
+ {\CTEX@subsubsection@indent}%
+ {\CTEX@subsubsection@beforeskip}%
+ {\CTEX@subsubsection@afterskip}%
+ {\normalfont\CTEX@subsubsection@format}}
+\renewcommand\paragraph{\@startsection{paragraph}{4}%
+ {\CTEX@paragraph@indent}%
+ {\CTEX@paragraph@beforeskip}%
+ {\CTEX@paragraph@afterskip}%
+ {\normalfont\CTEX@paragraph@format}}
+\renewcommand\subparagraph{\@startsection{subparagraph}{5}%
+ {\CTEX@subparagraph@indent}%
+ {\CTEX@subparagraph@beforeskip}%
+ {\CTEX@subparagraph@afterskip}%
+ {\normalfont\CTEX@subparagraph@format}}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\sectionmark##1{%
+ \markboth {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\z@
+ \CTEXthesection\quad %
+ \fi
+ ##1}}{}}%
+ \def\subsectionmark##1{%
+ \markright {%
+ \ifnum \c@secnumdepth >\@ne
+ \CTEXthesubsection\quad %
+ \fi
+ ##1}}}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\sectionmark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \CTEXthesection\quad %
+ \fi
+ ##1}}}}
+\fi
+\pagestyle{headings}
+\@ifundefined{ps@fancy}{}{%
+ \def\ps@fancy{%
+ \@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook
+ \@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}%
+ \@ifundefined{chapter}{\def\sectionmark##1{\markboth
+ {\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \CTEXthesection\quad \fi ##1}}{}}%
+ \def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne
+ \CTEXthesubsection\quad \fi ##1}}}%
+ {\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne
+ \ifCTEX@cls{book}{\if@mainmatter\CTEXthechapter \quad\fi}{\CTEXthechapter \quad}
+ \fi ##1}}{}}%
+ \def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@
+ \CTEXthesection \quad \fi ##1}}}}%
+ \ps@@fancy
+ \gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}%
+ \ifdim\headwidth<0sp
+ \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth
+ \fi}
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-book.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-book.def
new file mode 100644
index 00000000000..557cf127764
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-book.def
@@ -0,0 +1,252 @@
+% ctex-book.def: definitions for book class files
+% vim:ft=tex
+
+\def\CTEX@prepart{Part\space}
+\def\CTEX@prechapter{Chapter\space}
+\def\CTEX@part@format{\centering}
+\def\CTEX@part@nameformat{\huge\bfseries}
+\def\CTEX@part@aftername{\par\vskip 20\p@}
+\def\CTEX@part@titleformat{\Huge\bfseries}
+\def\CTEX@chapter@format{\raggedright}
+\def\CTEX@chapter@nameformat{\huge\bfseries}
+\def\CTEX@chapter@aftername{\par\nobreak\vskip 20\p@}
+\def\CTEX@chapter@titleformat{\Huge\bfseries}
+\def\CTEX@chapter@beforeskip{50\p@}
+\def\CTEX@chapter@afterskip{40\p@}
+\def\CTEX@chapter@indent{\z@}
+\def\CTEX@section@format{\Large\bfseries}
+\def\CTEX@section@aftername{\quad}
+\def\CTEX@section@beforeskip{-3.5ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@section@afterskip{2.3ex \@plus .2ex}
+\def\CTEX@section@indent{\z@}
+\def\CTEX@subsection@format{\large\bfseries}
+\def\CTEX@subsection@aftername{\quad}
+\def\CTEX@subsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsection@indent{\z@}
+\def\CTEX@subsubsection@format{\normalsize\bfseries}
+\def\CTEX@subsubsection@aftername{\quad}
+\def\CTEX@subsubsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsubsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsubsection@indent{\z@}
+\def\CTEX@paragraph@format{\normalsize\bfseries}
+\def\CTEX@paragraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@paragraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@paragraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@paragraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@paragraph@afterskip{-1em}
+\fi
+\def\CTEX@paragraph@indent{\z@}
+\def\CTEX@subparagraph@format{\normalsize\bfseries}
+\def\CTEX@subparagraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>3
+ \def\CTEX@subparagraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@subparagraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@subparagraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@subparagraph@afterskip{-1em}
+\fi
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@subparagraph@indent{\z@}
+\else
+ \def\CTEX@subparagraph@indent{\parindent}
+\fi
+\def\CTEX@appendixname{Appendix\space}
+\def\CTEX@appendixnumber{\@Alph\c@chapter}
+\let\CTEX@save@appendix\appendix
+\renewcommand*\appendix{\CTEX@save@appendix%
+ \gdef\CTEX@prechapter{\CTEX@appendixname}%
+ \gdef\CTEX@thechapter{\CTEX@appendixnumber}%
+ \gdef\CTEX@postchapter{}}%
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >-2\relax
+ \refstepcounter{part}%
+ \addcontentsline{toc}{part}{\CTEXthepart\hspace{1em}#1}%
+ \else
+ \addcontentsline{toc}{part}{#1}%
+ \fi
+ \markboth{}{}%
+ {\interlinepenalty \@M
+ \normalfont \CTEX@part@format
+ \ifnum \c@secnumdepth >-2\relax
+ \CTEX@partname
+ \fi
+ \CTEX@part@titleformat #2\par}%
+ \@endpart}
+\def\@spart#1{%
+ {\interlinepenalty \@M
+ \normalfont \CTEX@part@format
+ \CTEX@part@titleformat #1\par}%
+ \@endpart}
+\def\@chapter[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\CTEXthechapter}%
+ \addcontentsline{toc}{chapter}
+ {\protect\numberline{\CTEXthechapter\hspace{0.3em}}#1}%
+ \else
+ \addcontentsline{toc}{chapter}{#1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{#1}%
+ \fi
+ \chaptermark{#1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{#2}]%
+ \else
+ \@makechapterhead{#2}%
+ \@afterheading
+ \fi}
+\def\@makechapterhead#1{%
+ \vspace*{\CTEX@chapter@beforeskip}%
+ {\normalfont \parindent \CTEX@chapter@indent \CTEX@chapter@format
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \CTEX@chaptername
+ \fi
+ \fi
+ \interlinepenalty\@M
+ \CTEX@chapter@titleformat #1\par\nobreak
+ \vskip \CTEX@chapter@afterskip
+ }}
+\def\@makeschapterhead#1{%
+ \vspace*{\CTEX@chapter@beforeskip}%
+ {\normalfont \parindent \CTEX@chapter@indent \CTEX@chapter@format
+ \interlinepenalty\@M
+ \CTEX@chapter@titleformat #1\par\nobreak
+ \vskip \CTEX@chapter@afterskip
+ }}
+\def\@seccntformat#1{%
+ \@ifundefined{CTEX@#1name}%
+ {\csname the#1\endcsname\quad}%
+ {\csname CTEX@#1name\endcsname}}
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+ \fi
+ \@tempskipa #5\relax
+ \ifdim \@tempskipa>\z@
+ \begingroup
+ #6{%
+ \@hangfrom{\hskip #3\relax\@svsec}%
+ \interlinepenalty \@M
+ \csname CTEX@#1@titleformat\endcsname #8\@@par}%
+ \endgroup
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}%
+ \else
+ \def\@svsechd{%
+ #6{\hskip #3\relax
+ \@svsec \csname CTEX@#1@titleformat\endcsname #8}%
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}}%
+ \fi
+ \@xsect{#5}}
+\def\numberline#1{%
+ \settowidth\@tempdimb{#1\hspace{0.5em}}%
+ \ifdim\@tempdima<\@tempdimb%
+ \@tempdima=\@tempdimb%
+ \fi%
+ \hb@xt@\@tempdima{#1\hfil}}
+\renewcommand\section{\@startsection{section}{1}%
+ {\CTEX@section@indent}%
+ {\CTEX@section@beforeskip}%
+ {\CTEX@section@afterskip}%
+ {\normalfont\CTEX@section@format}}
+\renewcommand\subsection{\@startsection{subsection}{2}%
+ {\CTEX@subsection@indent}%
+ {\CTEX@subsection@beforeskip}%
+ {\CTEX@subsection@afterskip}%
+ {\normalfont\CTEX@subsection@format}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}%
+ {\CTEX@subsubsection@indent}%
+ {\CTEX@subsubsection@beforeskip}%
+ {\CTEX@subsubsection@afterskip}%
+ {\normalfont\CTEX@subsubsection@format}}
+\renewcommand\paragraph{\@startsection{paragraph}{4}%
+ {\CTEX@paragraph@indent}%
+ {\CTEX@paragraph@beforeskip}%
+ {\CTEX@paragraph@afterskip}%
+ {\normalfont\CTEX@paragraph@format}}
+\renewcommand\subparagraph{\@startsection{subparagraph}{5}%
+ {\CTEX@subparagraph@indent}%
+ {\CTEX@subparagraph@beforeskip}%
+ {\CTEX@subparagraph@afterskip}%
+ {\normalfont\CTEX@subparagraph@format}}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markboth {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \CTEXthechapter \quad %
+ \fi
+ \fi
+ ##1}}{}}%
+ \def\sectionmark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\z@
+ \CTEXthesection \quad %
+ \fi
+ ##1}}}}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \CTEXthechapter \quad %
+ \fi
+ \fi
+ ##1}}}}
+\fi
+\pagestyle{headings}
+\@ifundefined{ps@fancy}{}{%
+ \def\ps@fancy{%
+ \@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook
+ \@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}%
+ \@ifundefined{chapter}{\def\sectionmark##1{\markboth
+ {\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \CTEXthesection\quad \fi ##1}}{}}%
+ \def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne
+ \CTEXthesubsection\quad \fi ##1}}}%
+ {\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne
+ \ifCTEX@cls{book}{\if@mainmatter\CTEXthechapter \quad\fi}{\CTEXthechapter \quad}
+ \fi ##1}}{}}%
+ \def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@
+ \CTEXthesection \quad \fi ##1}}}}%
+ \ps@@fancy
+ \gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}%
+ \ifdim\headwidth<0sp
+ \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth
+ \fi}
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-caption.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-caption.def
new file mode 100644
index 00000000000..9dda3fa6285
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-caption.def
@@ -0,0 +1,165 @@
+% ctex-caption.def: definitions only ctexcap.sty and ctex document classes used
+% vim:ft=tex
+
+% Load caption file
+
+\ifCTEX@caption
+ \AtEndOfPackage{%
+ \makeatletter
+ \InputIfFileExists{ctexcap.cfg}{}{%
+ \PackageError{ctex}{%
+ Can't find ctexcap.cfg}{%
+ The english captions are used if you continue.}}
+ \makeatother}
+\fi
+
+% section format
+
+\def\CTEX@defsecformat#1{%
+ \expandafter\def\csname CTEX@pre#1\endcsname{}%
+ \expandafter\def\csname CTEX@post#1\endcsname{}%
+ \expandafter\def\csname CTEX@the#1\endcsname{%
+ \csname the#1\endcsname}%
+ \expandafter\def\csname CTEXthe#1\endcsname{%
+ \csname CTEX@pre#1\endcsname%
+ \csname CTEX@the#1\endcsname%
+ \csname CTEX@post#1\endcsname}%
+ \expandafter\def\csname CTEX@#1@format\endcsname{}%
+ \expandafter\def\csname CTEX@#1@nameformat\endcsname{}%
+ \expandafter\def\csname CTEX@#1@numberformat\endcsname{}%
+ \expandafter\def\csname CTEX@#1@aftername\endcsname{}%
+ \expandafter\def\csname CTEX@#1@titleformat\endcsname{}
+ \expandafter\def\csname CTEX@#1name\endcsname{%
+ \csname CTEX@#1@nameformat\endcsname%
+ \csname CTEX@pre#1\endcsname%
+ \begingroup%
+ \csname CTEX@#1@numberformat\endcsname%
+ \csname CTEX@the#1\endcsname%
+ \endgroup%
+ \csname CTEX@post#1\endcsname%
+ \csname CTEX@#1@aftername\endcsname}%
+ \expandafter\def\csname CTEX@#1@beforeskip\endcsname{}%
+ \expandafter\def\csname CTEX@#1@afterskip\endcsname{}%
+ \expandafter\def\csname CTEX@#1@indent\endcsname{}%
+}
+\CTEX@defsecformat{part}
+\CTEX@defsecformat{chapter}
+\CTEX@defsecformat{section}
+\CTEX@defsecformat{subsection}
+\CTEX@defsecformat{subsubsection}
+\CTEX@defsecformat{paragraph}
+\CTEX@defsecformat{subparagraph}
+
+% Default caption names
+
+\def\CTEX@contentsname{Contents}
+\def\CTEX@listfigurename{List of Figures}
+\def\CTEX@listtablename{List of Tables}
+\def\CTEX@figurename{Figure}
+\def\CTEX@tablename{Table}
+\def\CTEX@abstractname{Abstract}
+\def\CTEX@indexname{Index}
+\def\CTEX@bibname{Bibliography}
+
+\renewcommand*\contentsname{\CTEX@contentsname}
+\renewcommand*\listfigurename{\CTEX@listfigurename}
+\renewcommand*\listtablename{\CTEX@listtablename}
+\renewcommand*\figurename{\CTEX@figurename}
+\renewcommand*\tablename{\CTEX@tablename}
+\@ifundefined{abstractname}{}{
+ \renewcommand*\abstractname{\CTEX@abstractname}}
+\renewcommand*\partname{\CTEX@thepart}
+\@ifundefined{chaptername}{}{
+ \renewcommand*\chaptername{\CTEX@thechapter}}
+\renewcommand*\appendixname{\CTEX@appendixname}
+\renewcommand*\indexname{\CTEX@indexname}
+
+\ifCTEX@cls{article}{
+ \renewcommand*\refname{\CTEX@bibname}
+ }{
+ \renewcommand*\bibname{\CTEX@bibname}
+ }
+
+\def\CTEX@setsecname#1[#2,#3]{%
+ \expandafter\def\csname CTEX@pre#1\endcsname{#2}%
+ \expandafter\def\csname CTEX@post#1\endcsname{\ignorespaces#3}}
+\def\CTEX@setsecnumber#1[#2]{%
+ \expandafter\def\csname CTEX@the#1\endcsname{#2}}
+\def\CTEX@setsecformat#1#2[#3]{%
+ \expandafter\def\csname CTEX@#1@#2\endcsname{#3}}
+\def\CTEX@addsecformat#1#2[#3]{%
+ \expandafter\let\expandafter\reserved@a\csname CTEX@#1@#2\endcsname%
+ \expandafter\expandafter\expandafter\def\expandafter\expandafter%
+ \csname CTEX@#1@#2\endcsname\expandafter{\reserved@a#3}}
+\def\CTEX@defseckey#1{%
+ \CTEX@subkey{#1}{name}{\CTEX@setsecname{#1}[##1]}%
+ \CTEX@subkey{#1}{number}{\CTEX@setsecnumber{#1}[##1]}%
+ \CTEX@subkey{#1}{format}{\CTEX@setsecformat{#1}{format}[##1]}%
+ \CTEX@subkey{#1}{format+}{\CTEX@addsecformat{#1}{format}[##1]}%
+ \CTEX@subkey{#1}{nameformat}{\CTEX@setsecformat{#1}{nameformat}[##1]}%
+ \CTEX@subkey{#1}{nameformat+}{\CTEX@addsecformat{#1}{nameformat}[##1]}%
+ \CTEX@subkey{#1}{numberformat}{\CTEX@setsecformat{#1}{numberformat}[##1]}%
+ \CTEX@subkey{#1}{numberformat+}{\CTEX@addsecformat{#1}{numberformat}[##1]}%
+ \CTEX@subkey{#1}{aftername}{\CTEX@setsecformat{#1}{aftername}[##1]}%
+ \CTEX@subkey{#1}{aftername+}{\CTEX@addsecformat{#1}{aftername}[##1]}%
+ \CTEX@subkey{#1}{titleformat}{\CTEX@setsecformat{#1}{titleformat}[##1]}%
+ \CTEX@subkey{#1}{titleformat+}{\CTEX@addsecformat{#1}{titleformat}[##1]}%
+ \CTEX@subkey{#1}{beforeskip}{\CTEX@setsecformat{#1}{beforeskip}[##1]}%
+ \CTEX@subkey{#1}{afterskip}{\CTEX@setsecformat{#1}{afterskip}[##1]}%
+ \CTEX@subkey{#1}{indent}{\CTEX@setsecformat{#1}{indent}[##1]}%
+}
+\CTEX@defseckey{part}
+\CTEX@defseckey{chapter}
+\CTEX@defseckey{section}
+\CTEX@defseckey{subsection}
+\CTEX@defseckey{subsubsection}
+\CTEX@defseckey{paragraph}
+\CTEX@defseckey{subparagraph}
+\CTEX@subkey{appendix}{name}{\def\CTEX@appendixname{#1}}
+\CTEX@subkey{appendix}{number}{\def\CTEX@appendixnumber{#1}}
+\CTEX@key{contentsname}{\def\CTEX@contentsname{#1}}
+\CTEX@key{listfigurename}{\def\CTEX@listfigurename{#1}}
+\CTEX@key{listtablename}{\def\CTEX@listtablename{#1}}
+\CTEX@key{figurename}{\def\CTEX@figurename{#1}}
+\CTEX@key{tablename}{\def\CTEX@tablename{#1}}
+\CTEX@key{abstractname}{\def\CTEX@abstractname{#1}}
+\CTEX@key{indexname}{\def\CTEX@indexname{#1}}
+\CTEX@key{bibname}{\def\CTEX@bibname{#1}}
+
+% caption delimiter
+
+\def\CTEX@caption@delimiter{: }
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1\CTEX@caption@delimiter #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\CTEX@caption@delimiter #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+\CTEX@key{captiondelimiter}{\CTEX@setcaptiondelimiter{#1}}
+\newcommand*\CTEX@setcaptiondelimiter[1]{%
+ \def\CTEX@caption@delimiter{#1}}
+
+% Change the parindent of verse and quotation to two Chinese characters
+\renewenvironment{verse}
+ {\let\\\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -2\ccwd%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 2\ccwd}%
+ \item\relax}
+ {\endlist}
+\renewenvironment{quotation}
+ {\list{}{\listparindent 2\ccwd%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item\relax}
+ {\endlist}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-class.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-class.def
new file mode 100644
index 00000000000..964692aa770
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-class.def
@@ -0,0 +1,96 @@
+% ctex-class.def: definitions for ctex document class files (not in style files)
+% vim:ft=tex
+
+% font size definitions
+
+\ifCTEX@sfoursize
+ \renewcommand\normalsize{% 12bp
+ \@setfontsize\normalsize{\CTEX@fs@sfour}{\CTEX@fs@sfourskip}%
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+ \normalsize
+ \renewcommand\small{% 10.5bp
+ \@setfontsize\small{\CTEX@fs@five}{\CTEX@fs@fiveskip}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip}
+ \renewcommand\footnotesize{% 9bp
+ \@setfontsize\footnotesize{\CTEX@fs@sfive}{\CTEX@fs@sfiveskip}%
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip}
+ \renewcommand\scriptsize{% 7.5bp
+ \@setfontsize\scriptsize{\CTEX@fs@six}{\CTEX@fs@sixskip}}
+ \renewcommand\tiny{% 6.5bp
+ \@setfontsize\tiny{\CTEX@fs@ssix}{\CTEX@fs@ssixskip}}
+ \renewcommand\large{% 15bp
+ \@setfontsize\large{\CTEX@fs@sthree}{\CTEX@fs@sthreeskip}}
+ \renewcommand\Large{% 18bp
+ \@setfontsize\Large{\CTEX@fs@stwo}{\CTEX@fs@stwoskip}}
+ \renewcommand\LARGE{% 22bp
+ \@setfontsize\LARGE{\CTEX@fs@two}{\CTEX@fs@twoskip}}
+ \renewcommand\huge{% 24bp
+ \@setfontsize\huge{\CTEX@fs@sone}{\CTEX@fs@soneskip}}
+ \renewcommand\Huge{% 26bp
+ \@setfontsize\Huge{\CTEX@fs@one}{\CTEX@fs@oneskip}}
+\fi
+\ifCTEX@fivesize
+ \renewcommand\normalsize{% 10.5bp
+ \@setfontsize\normalsize{\CTEX@fs@five}{\CTEX@fs@fiveskip}%
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+ \normalsize
+ \renewcommand\small{% 9bp
+ \@setfontsize\small{\CTEX@fs@sfive}{\CTEX@fs@sfiveskip}%
+ \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus2\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip}
+ \renewcommand\footnotesize{% 7.5bp
+ \@setfontsize\footnotesize{\CTEX@fs@six}{\CTEX@fs@sixskip}%
+ \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 3\p@ \@plus\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip}
+ \renewcommand\scriptsize{% 6.5bp
+ \@setfontsize\scriptsize{\CTEX@fs@ssix}{\CTEX@fs@ssixskip}}
+ \renewcommand\tiny{% 5.5bp
+ \@setfontsize\tiny{\CTEX@fs@seven}{\CTEX@fs@sevenskip}}
+ \renewcommand\large{% 12bp
+ \@setfontsize\large{\CTEX@fs@sfour}{\CTEX@fs@sfourskip}}
+ \renewcommand\Large{% 15bp
+ \@setfontsize\Large{\CTEX@fs@sthree}{\CTEX@fs@sthreeskip}}
+ \renewcommand\LARGE{% 18bp
+ \@setfontsize\LARGE{\CTEX@fs@stwo}{\CTEX@fs@stwoskip}}
+ \renewcommand\huge{% 22bp
+ \@setfontsize\huge{\CTEX@fs@two}{\CTEX@fs@twoskip}}
+ \renewcommand\Huge{% 26bp
+ \@setfontsize\Huge{\CTEX@fs@one}{\CTEX@fs@oneskip}}
+\fi
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-common.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-common.def
new file mode 100644
index 00000000000..d6d32eac64f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-common.def
@@ -0,0 +1,385 @@
+% ctex-common.def: common definitions for all ctex packages/classes
+% vim:ft=tex
+
+\@ifclassloaded{article}{\def\CTEX@cls@article{}}{}
+\@ifclassloaded{report}{\def\CTEX@cls@report{}}{}
+\@ifclassloaded{book}{\def\CTEX@cls@book{}}{}
+
+% Load some extra packages
+
+\RequirePackage{ifxetex}
+\RequirePackage{keyval}[1999/03/16]
+\ifCTEX@indent
+ \RequirePackage{indentfirst}
+\fi
+\RequirePackage{fix-cm}
+\ifCTEX@fancyhdr
+ \RequirePackage{fancyhdr}
+\fi
+
+% Useful definitions
+
+\DeclareRobustCommand\CTeX{C\kern-.05em\TeX{}}
+\newcommand*\CTEX@key{\define@key{CTEX}}
+\newcommand*\CTEXoptions[1][]{\setkeys{CTEX}{#1}}
+\newcommand*\CTEX@subkey[1]{\define@key{CTEX#1}}
+\newcommand*\CTEXsetup[2][]{\setkeys{CTEX#2}{#1}}
+
+\def\ifCTEX@cls#1{%
+ \expandafter\ifx\csname CTEX@cls@#1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}
+\def\CTEX@replacecommand#1#2#3{%
+ \expandafter\expandafter\expandafter\let\expandafter
+ \csname #1#3\expandafter\endcsname
+ \csname #2#3\endcsname
+ \expandafter\expandafter\expandafter\def\expandafter
+ \csname #2#3\expandafter\endcsname
+ {\csname #1#3\endcsname}}
+
+% Select engine: xetex has the highest priority, if not,
+% then try cct, otherwise we use traditional cjk.
+
+\ifxetex
+ \input{ctex-xecjk-engine.def}
+\else
+ \ifCTEX@cct
+ \input{ctex-cct-engine.def}
+ \else
+ \input{ctex-cjk-engine.def}
+ \fi
+\fi
+
+\AtEndOfPackage{%
+ \makeatletter
+ \ifCTEX@GBK
+ \input{ctex-gbk.def}
+ \else
+ \input{ctex-utf8.def}
+ \fi\makeatother}
+
+\newcommand*\CTEXindent{\CTEXsetfont\parindent2\ccwd}
+\newcommand*\CTEXnoindent{\parindent\z@}
+\ifCTEX@indent
+ \AtBeginDocument{\CTEXindent}
+\fi
+\def\CTEX@spaceChar{\hskip \f@size \p@}
+\def\baselinestretch{1.3}
+
+% About font sizing
+
+\def\CTEX@fs@eight{5.02} \def\CTEX@fs@eightskip{6.02} %八号字 5bp
+\def\CTEX@fs@seven{5.52} \def\CTEX@fs@sevenskip{6.62} %七号字 5.5bp
+\def\CTEX@fs@ssix{6.52} \def\CTEX@fs@ssixskip{7.83} %小六号 6.5bp
+\def\CTEX@fs@six{7.53} \def\CTEX@fs@sixskip{9.03} %六号字 7.5bp
+\def\CTEX@fs@sfive{9.03} \def\CTEX@fs@sfiveskip{10.84} %小五号 9bp
+\def\CTEX@fs@five{10.54} \def\CTEX@fs@fiveskip{12.65} %五号字 10.5bp
+\def\CTEX@fs@sfour{12.05} \def\CTEX@fs@sfourskip{14.45} %小四号 12bp
+\def\CTEX@fs@four{14.05} \def\CTEX@fs@fourskip{16.86} %四号字 14bp
+\def\CTEX@fs@sthree{15.06} \def\CTEX@fs@sthreeskip{18.07} %小三号 15bp
+\def\CTEX@fs@three{16.06} \def\CTEX@fs@threeskip{19.27} %三号字 16bp
+\def\CTEX@fs@stwo{18.07} \def\CTEX@fs@stwoskip{21.68} %小二号 18bp
+\def\CTEX@fs@two{22.08} \def\CTEX@fs@twoskip{26.50} %二号字 22bp
+\def\CTEX@fs@sone{24.09} \def\CTEX@fs@soneskip{28.91} %小一号 24bp
+\def\CTEX@fs@one{26.10} \def\CTEX@fs@oneskip{31.32} %一号字 26bp
+\def\CTEX@fs@szero{36.14} \def\CTEX@fs@szeroskip{43.36} %小初号 36bp
+\def\CTEX@fs@zero{42.16} \def\CTEX@fs@zeroskip{50.59} %初号字 42bp
+\DeclareMathSizes{\CTEX@fs@eight}{\CTEX@fs@eight}{5}{5}
+\DeclareMathSizes{\CTEX@fs@seven}{\CTEX@fs@seven}{5}{5}
+\DeclareMathSizes{\CTEX@fs@ssix}{\CTEX@fs@ssix}{5}{5}
+\DeclareMathSizes{\CTEX@fs@six}{\CTEX@fs@six}{5}{5}
+\DeclareMathSizes{\CTEX@fs@sfive}{\CTEX@fs@sfive}{6}{5}
+\DeclareMathSizes{\CTEX@fs@five}{\CTEX@fs@five}{7}{5}
+\DeclareMathSizes{\CTEX@fs@sfour}{\CTEX@fs@sfour}{8}{6}
+\DeclareMathSizes{\CTEX@fs@four}
+ {\CTEX@fs@four}{\CTEX@fs@five}{\CTEX@fs@six}
+\DeclareMathSizes{\CTEX@fs@sthree}
+ {\CTEX@fs@sthree}{\CTEX@fs@sfour}{\CTEX@fs@sfive}
+\DeclareMathSizes{\CTEX@fs@three}
+ {\CTEX@fs@three}{\CTEX@fs@four}{\CTEX@fs@five}
+\DeclareMathSizes{\CTEX@fs@stwo}
+ {\CTEX@fs@stwo}{\CTEX@fs@sthree}{\CTEX@fs@sfour}
+\DeclareMathSizes{\CTEX@fs@two}
+ {\CTEX@fs@two}{\CTEX@fs@three}{\CTEX@fs@four}
+\DeclareMathSizes{\CTEX@fs@sone}
+ {\CTEX@fs@sone}{\CTEX@fs@stwo}{\CTEX@fs@sthree}
+\DeclareMathSizes{\CTEX@fs@one}
+ {\CTEX@fs@one}{\CTEX@fs@two}{\CTEX@fs@three}
+\DeclareMathSizes{\CTEX@fs@szero}
+ {\CTEX@fs@szero}{\CTEX@fs@sone}{\CTEX@fs@stwo}
+\DeclareMathSizes{\CTEX@fs@zero}
+ {\CTEX@fs@zero}{\CTEX@fs@one}{\CTEX@fs@two}
+\def\CTEX@zihao{}
+\DeclareRobustCommand*\zihao[1]{\def\CTEX@zihao{#1}%
+ \ifnum #11<0%
+ \@tempcnta=-#1
+ \ifcase\@tempcnta%
+ \fontsize\CTEX@fs@szero\CTEX@fs@szeroskip%
+ \or \fontsize\CTEX@fs@sone\CTEX@fs@soneskip%
+ \or \fontsize\CTEX@fs@stwo\CTEX@fs@stwoskip%
+ \or \fontsize\CTEX@fs@sthree\CTEX@fs@sthreeskip%
+ \or \fontsize\CTEX@fs@sfour\CTEX@fs@sfourskip%
+ \or \fontsize\CTEX@fs@sfive\CTEX@fs@sfiveskip%
+ \or \fontsize\CTEX@fs@ssix\CTEX@fs@ssixskip%
+ \else \PackageError{ctex}{%
+ Undefined Chinese font size in command \protect\zihao}{%
+ The old font size is used if you continue.}%
+ \fi%
+ \else%
+ \@tempcnta=#1
+ \ifcase\@tempcnta%
+ \fontsize\CTEX@fs@zero\CTEX@fs@zeroskip%
+ \or \fontsize\CTEX@fs@one\CTEX@fs@oneskip%
+ \or \fontsize\CTEX@fs@two\CTEX@fs@twoskip%
+ \or \fontsize\CTEX@fs@three\CTEX@fs@threeskip%
+ \or \fontsize\CTEX@fs@four\CTEX@fs@fourskip%
+ \or \fontsize\CTEX@fs@five\CTEX@fs@fiveskip%
+ \or \fontsize\CTEX@fs@six\CTEX@fs@sixskip%
+ \or \fontsize\CTEX@fs@seven\CTEX@fs@sevenskip%
+ \or \fontsize\CTEX@fs@eight\CTEX@fs@eightskip%
+ \else \PackageError{ctex}{%
+ Undefined Chinese font size in command \protect\zihao}{%
+ The old font size is used if you continue.}%
+ \fi%
+ \fi%
+ \selectfont\ignorespaces}
+
+% About numbers
+
+\newif\ifCTEX@zero@
+\newif\ifCTEX@previous@
+\newif\ifCTEX@null@
+\newcount\CTEX@q
+\newcount\CTEX@r
+\def\CTEX@appendstring#1#2{%
+ \expandafter\def\expandafter#1\expandafter{#1#2}}
+\def\CTEX@appendnumber#1#2{%
+ \ifcase #2\relax
+ \ifCTEX@null@
+ \CTEX@appendstring{#1}{\CTEX@null}%
+ \else
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \fi
+ \or \CTEX@appendstring{#1}{\CTEX@one}%
+ \or \CTEX@appendstring{#1}{\CTEX@two}%
+ \or \CTEX@appendstring{#1}{\CTEX@three}%
+ \or \CTEX@appendstring{#1}{\CTEX@four}%
+ \or \CTEX@appendstring{#1}{\CTEX@five}%
+ \or \CTEX@appendstring{#1}{\CTEX@six}%
+ \or \CTEX@appendstring{#1}{\CTEX@seven}%
+ \or \CTEX@appendstring{#1}{\CTEX@eight}%
+ \or \CTEX@appendstring{#1}{\CTEX@nine}%
+ \fi}
+\def\CTEX@splitnumber#1{%
+ \CTEX@q #1\relax
+ \CTEX@r #1\relax
+ \divide\CTEX@q \@M
+ \begingroup
+ \multiply\CTEX@q \@M
+ \advance\CTEX@r -\CTEX@q
+ \ifnum\CTEX@r = \z@
+ \xdef\CTEX@low{}%
+ \else
+ \xdef\CTEX@low{\number\CTEX@r}%
+ \fi
+ \endgroup
+ \ifnum\CTEX@q > \z@
+ \CTEX@r \CTEX@q
+ \divide\CTEX@q \@M
+ \begingroup
+ \multiply\CTEX@q \@M
+ \advance\CTEX@r -\CTEX@q
+ \ifnum\CTEX@r = \z@
+ \xdef\CTEX@high{}%
+ \else
+ \xdef\CTEX@high{\number\CTEX@r}%
+ \fi
+ \endgroup
+ \ifnum\CTEX@q > \z@
+ \xdef\CTEX@yi{\number\CTEX@q}%
+ \else
+ \xdef\CTEX@yi{}%
+ \fi
+ \else
+ \xdef\CTEX@high{}%
+ \xdef\CTEX@yi{}%
+ \fi
+}
+\def\CTEX@processnumber#1#2{%
+ \CTEX@zero@false
+ \CTEX@q #2\relax
+ \CTEX@r #2\relax
+ \divide\CTEX@q \@m
+ \ifnum\CTEX@q = \z@
+ \ifCTEX@previous@
+ \CTEX@zero@true
+ \fi
+ \else
+ \ifCTEX@zero@
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \fi
+ \CTEX@appendnumber{#1}{\CTEX@q}%
+ \CTEX@appendstring{#1}{\CTEX@thousand}%
+ \CTEX@previous@true
+ \CTEX@zero@false
+ \fi
+ \multiply\CTEX@q \@m
+ \advance\CTEX@r -\CTEX@q
+ \CTEX@q \CTEX@r
+ \divide\CTEX@q 100\relax
+ \ifnum\CTEX@q = \z@
+ \ifCTEX@previous@
+ \CTEX@zero@true
+ \fi
+ \else
+ \ifCTEX@zero@
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \fi
+ \CTEX@appendnumber{#1}{\CTEX@q}%
+ \CTEX@appendstring{#1}{\CTEX@hundred}%
+ \CTEX@previous@true
+ \CTEX@zero@false
+ \fi
+ \multiply\CTEX@q 100
+ \advance\CTEX@r -\CTEX@q
+ \CTEX@q \CTEX@r
+ \divide \CTEX@q 10\relax
+ \ifnum\CTEX@q = \z@
+ \ifCTEX@previous@
+ \CTEX@zero@true
+ \fi
+ \else
+ \ifCTEX@zero@
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \fi
+ \ifnum\CTEX@q = \@ne
+ \ifCTEX@previous@
+ \CTEX@appendstring{#1}{\CTEX@one}%
+ \fi
+ \else
+ \CTEX@appendnumber{#1}{\CTEX@q}%
+ \fi
+ \CTEX@appendstring{#1}{\CTEX@ten}%
+ \CTEX@previous@true
+ \CTEX@zero@false
+ \fi
+ \multiply\CTEX@q 10
+ \advance\CTEX@r -\CTEX@q
+ \ifnum\CTEX@r = \z@
+ \else
+ \ifCTEX@zero@
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \fi
+ \CTEX@appendnumber{#1}{\CTEX@r}%
+ \CTEX@previous@true
+ \fi}
+\DeclareRobustCommand\CTEXnumber[2]{%
+ \def#1{}%
+ \CTEX@null@false
+ \CTEX@q #2\relax
+ \ifnum\CTEX@q < \z@
+ \multiply\CTEX@q \m@ne
+ \CTEX@appendstring{#1}{\CTEX@minus}%
+ \fi
+ \CTEX@previous@false
+ \CTEX@zero@false
+ \ifnum\CTEX@q = \z@
+ \CTEX@appendstring{#1}{\CTEX@zero}%
+ \else
+ \CTEX@splitnumber{\CTEX@q}%
+ \ifx\CTEX@yi \@empty
+ \else
+ \CTEX@processnumber{#1}{\CTEX@yi}%
+ \CTEX@appendstring{#1}{\CTEX@hundredmillion}%
+ \fi
+ \ifx\CTEX@high \@empty
+ \else
+ \CTEX@processnumber{#1}{\CTEX@high}%
+ \CTEX@appendstring{#1}{\CTEX@tenthousand}%
+ \fi
+ \ifx\CTEX@low \@empty
+ \else
+ \ifx\CTEX@yi \@empty
+ \else
+ \ifx\CTEX@high \@empty
+ \CTEX@appendstring{#1}{\CTEX@zero}% this catches 100002345
+ \fi
+ \fi
+ \CTEX@processnumber{#1}{\CTEX@low}%
+ \fi
+ \fi}
+\def\CTEX@getdigit#1#2\@nil{%
+ \edef\CTEX@tempa{#1}%
+ \edef\CTEX@tempb{#2}}
+\DeclareRobustCommand\CTEXdigits[2]{%
+ \def#1{}%
+ \CTEX@null@true
+ \edef\CTEX@tempa{}%
+ \edef\CTEX@tempb{#2}%
+ \ifx\CTEX@tempb \@empty
+ \else
+ \loop
+ \expandafter\CTEX@getdigit\CTEX@tempb\@nil
+ \CTEX@appendnumber{#1}{\CTEX@tempa}%
+ \ifx\CTEX@tempb \@empty
+ \else
+ \repeat
+ \fi}
+\DeclareRobustCommand\CTEXcounter[1]{%
+ \@ifundefined{c@#1}{}{%
+ \CTEXnumber{\reserved@a}{\@arabic\csname c@#1\endcsname}%
+ \expandafter\expandafter\expandafter\def%
+ \expandafter\expandafter\csname cc@#1\endcsname%
+ \expandafter{\reserved@a}}}
+\AtBeginDocument{%
+ \makeatletter%
+ \@ifundefined{CTEX@save@setcounter}{%
+ \let\CTEX@save@setcounter\setcounter%
+ \def\setcounter#1#2{%
+ \CTEX@save@setcounter{#1}{#2}%
+ \CTEXcounter{#1}}}{}
+ \@ifundefined{CTEX@save@addtocounter}{%
+ \let\CTEX@save@addtocounter\addtocounter%
+ \def\addtocounter#1#2{%
+ \CTEX@save@addtocounter{#1}{#2}%
+ \CTEXcounter{#1}}}{}
+ \@ifundefined{CTEX@save@stepcounter}{%
+ \let\CTEX@save@stepcounter\stepcounter%
+ \def\stepcounter#1{%
+ \CTEX@save@stepcounter{#1}%
+ \CTEXcounter{#1}}}{}
+ \makeatother}
+\def\chinese#1{%
+ \@ifundefined{cc@#1}{\CTEX@null}{\csname cc@#1\endcsname}}
+
+% About caption
+
+\ifCTEX@caption
+ \let\CTEX@save@refstepcounter\refstepcounter
+ \def\refstepcounter#1{\stepcounter{#1}%
+ \protected@edef\@currentlabel
+ {\csname p@#1\endcsname%
+ \@ifundefined{CTEX@the#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEX@the#1\endcsname}%
+ }}%
+\fi
+
+% `today' definitions
+
+\let\CTEX@todayold\today
+\ifCTEX@caption
+ \renewcommand*\today{\CTEX@todaysmall}
+\fi
+\CTEX@key{today}{\CTEX@settoday{#1}}
+\newcommand*\CTEX@settoday[1]{%
+ \@ifundefined{CTEX@today#1}
+ {\PackageError{ctex}{%
+ unknown today format}{%
+ Available today format are "old", "small", and "big".}}
+ {\renewcommand*\today{\csname CTEX@today#1\endcsname}}}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-gbk.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-gbk.def
new file mode 100644
index 00000000000..bfc00a39bf8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-gbk.def
@@ -0,0 +1,28 @@
+% ctex-gbk.def
+% vim:ft=tex
+
+\def\CTEXnullspace{0pt}
+\def\CTEX@null{\kern\CTEXnullspace{}\kern\CTEXnullspace}
+\def\CTEX@zero{}
+\def\CTEX@one{һ}
+\def\CTEX@two{}
+\def\CTEX@three{}
+\def\CTEX@four{}
+\def\CTEX@five{}
+\def\CTEX@six{}
+\def\CTEX@seven{}
+\def\CTEX@eight{}
+\def\CTEX@nine{}
+\def\CTEX@ten{ʮ}
+\def\CTEX@hundred{}
+\def\CTEX@thousand{ǧ}
+\def\CTEX@tenthousand{}
+\def\CTEX@hundredmillion{}
+\def\CTEX@minus{}
+
+\def\CTEX@todaysmall{~\the\year~~\the\month~~\the\day~}
+\def\CTEX@todaybig{%
+ \CJKdigits{\the\year}\CJKnumber{\the\month}\CJKnumber{\the\day}}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-loadclass.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-loadclass.def
new file mode 100644
index 00000000000..99a8bf14d63
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-loadclass.def
@@ -0,0 +1,16 @@
+% ctex-loadclass.def: load standard LaTeX class
+% vim:ft=tex
+
+\ProcessOptions
+
+\ifCTEX@sfoursize
+ \PassOptionsToClass{12pt}%
+ {\CTEX@classtoload}
+\fi
+\ifCTEX@fivesize
+ \PassOptionsToClass{10pt}%
+ {\CTEX@classtoload}
+\fi
+\LoadClass{\CTEX@classtoload}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-report.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-report.def
new file mode 100644
index 00000000000..b64c64990e3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-report.def
@@ -0,0 +1,242 @@
+% ctex-report.def: definitions for report class files
+% vim:ft=tex
+
+\def\CTEX@prepart{Part\space}
+\def\CTEX@prechapter{Chapter\space}
+\def\CTEX@part@format{\centering}
+\def\CTEX@part@nameformat{\huge\bfseries}
+\def\CTEX@part@aftername{\par\vskip 20\p@}
+\def\CTEX@part@titleformat{\Huge\bfseries}
+\def\CTEX@chapter@format{\raggedright}
+\def\CTEX@chapter@nameformat{\huge\bfseries}
+\def\CTEX@chapter@aftername{\par\nobreak\vskip 20\p@}
+\def\CTEX@chapter@titleformat{\Huge\bfseries}
+\def\CTEX@chapter@beforeskip{50\p@}
+\def\CTEX@chapter@afterskip{40\p@}
+\def\CTEX@chapter@indent{\z@}
+\def\CTEX@section@format{\Large\bfseries}
+\def\CTEX@section@aftername{\quad}
+\def\CTEX@section@beforeskip{-3.5ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@section@afterskip{2.3ex \@plus .2ex}
+\def\CTEX@section@indent{\z@}
+\def\CTEX@subsection@format{\large\bfseries}
+\def\CTEX@subsection@aftername{\quad}
+\def\CTEX@subsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsection@indent{\z@}
+\def\CTEX@subsubsection@format{\normalsize\bfseries}
+\def\CTEX@subsubsection@aftername{\quad}
+\def\CTEX@subsubsection@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+\def\CTEX@subsubsection@afterskip{1.5ex \@plus .2ex}
+\def\CTEX@subsubsection@indent{\z@}
+\def\CTEX@paragraph@format{\normalsize\bfseries}
+\def\CTEX@paragraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@paragraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@paragraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@paragraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@paragraph@afterskip{-1em}
+\fi
+\def\CTEX@paragraph@indent{\z@}
+\def\CTEX@subparagraph@format{\normalsize\bfseries}
+\def\CTEX@subparagraph@aftername{\quad}
+\ifnum\c@CTEX@sectiondepth>3
+ \def\CTEX@subparagraph@beforeskip{-3.25ex \@plus -1ex \@minus -.2ex}
+ \def\CTEX@subparagraph@afterskip{1ex \@plus .2ex}
+\else
+ \def\CTEX@subparagraph@beforeskip{3.25ex \@plus1ex \@minus .2ex}
+ \def\CTEX@subparagraph@afterskip{-1em}
+\fi
+\ifnum\c@CTEX@sectiondepth>2
+ \def\CTEX@subparagraph@indent{\z@}
+\else
+ \def\CTEX@subparagraph@indent{\parindent}
+\fi
+\def\CTEX@appendixname{Appendix\space}
+\def\CTEX@appendixnumber{\@Alph\c@chapter}
+\let\CTEX@save@appendix\appendix
+\renewcommand*\appendix{\CTEX@save@appendix%
+ \gdef\CTEX@prechapter{\CTEX@appendixname}%
+ \gdef\CTEX@thechapter{\CTEX@appendixnumber}%
+ \gdef\CTEX@postchapter{}}%
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >-2\relax
+ \refstepcounter{part}%
+ \addcontentsline{toc}{part}{\CTEXthepart\hspace{1em}#1}%
+ \else
+ \addcontentsline{toc}{part}{#1}%
+ \fi
+ \markboth{}{}%
+ {\interlinepenalty \@M
+ \normalfont \CTEX@part@format
+ \ifnum \c@secnumdepth >-2\relax
+ \CTEX@partname
+ \fi
+ \CTEX@part@titleformat #2\par}%
+ \@endpart}
+\def\@spart#1{%
+ {\interlinepenalty \@M
+ \normalfont \CTEX@part@format
+ \CTEX@part@titleformat #1\par}%
+ \@endpart}
+\def\@chapter[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\CTEXthechapter}%
+ \addcontentsline{toc}{chapter}
+ {\protect\numberline{\CTEXthechapter\hspace{0.3em}}#1}%
+ \else
+ \addcontentsline{toc}{chapter}{#1}%
+ \fi
+ \chaptermark{#1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{#2}]%
+ \else
+ \@makechapterhead{#2}%
+ \@afterheading
+ \fi}
+\def\@makechapterhead#1{%
+ \vspace*{\CTEX@chapter@beforeskip}%
+ {\normalfont \parindent \CTEX@chapter@indent \CTEX@chapter@format
+ \ifnum \c@secnumdepth >\m@ne
+ \CTEX@chaptername
+ \fi
+ \interlinepenalty\@M
+ \CTEX@chapter@titleformat #1\par\nobreak
+ \vskip \CTEX@chapter@afterskip
+ }}
+\def\@makeschapterhead#1{%
+ \vspace*{\CTEX@chapter@beforeskip}%
+ {\normalfont \parindent \CTEX@chapter@indent \CTEX@chapter@format
+ \interlinepenalty\@M
+ \CTEX@chapter@titleformat #1\par\nobreak
+ \vskip \CTEX@chapter@afterskip
+ }}
+\def\@seccntformat#1{%
+ \@ifundefined{CTEX@#1name}%
+ {\csname the#1\endcsname\quad}%
+ {\csname CTEX@#1name\endcsname}}
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+ \fi
+ \@tempskipa #5\relax
+ \ifdim \@tempskipa>\z@
+ \begingroup
+ #6{%
+ \@hangfrom{\hskip #3\relax\@svsec}%
+ \interlinepenalty \@M
+ \csname CTEX@#1@titleformat\endcsname #8\@@par}%
+ \endgroup
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}%
+ \else
+ \def\@svsechd{%
+ #6{\hskip #3\relax
+ \@svsec \csname CTEX@#1@titleformat\endcsname #8}%
+ \csname #1mark\endcsname{#7}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\@ifundefined{CTEXthe#1}%
+ {\csname the#1\endcsname}%
+ {\csname CTEXthe#1\endcsname}}%
+ \fi
+ #7}}%
+ \fi
+ \@xsect{#5}}
+\def\numberline#1{%
+ \settowidth\@tempdimb{#1\hspace{0.5em}}%
+ \ifdim\@tempdima<\@tempdimb%
+ \@tempdima=\@tempdimb%
+ \fi%
+ \hb@xt@\@tempdima{#1\hfil}}
+\renewcommand\section{\@startsection{section}{1}%
+ {\CTEX@section@indent}%
+ {\CTEX@section@beforeskip}%
+ {\CTEX@section@afterskip}%
+ {\normalfont\CTEX@section@format}}
+\renewcommand\subsection{\@startsection{subsection}{2}%
+ {\CTEX@subsection@indent}%
+ {\CTEX@subsection@beforeskip}%
+ {\CTEX@subsection@afterskip}%
+ {\normalfont\CTEX@subsection@format}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}%
+ {\CTEX@subsubsection@indent}%
+ {\CTEX@subsubsection@beforeskip}%
+ {\CTEX@subsubsection@afterskip}%
+ {\normalfont\CTEX@subsubsection@format}}
+\renewcommand\paragraph{\@startsection{paragraph}{4}%
+ {\CTEX@paragraph@indent}%
+ {\CTEX@paragraph@beforeskip}%
+ {\CTEX@paragraph@afterskip}%
+ {\normalfont\CTEX@paragraph@format}}
+\renewcommand\subparagraph{\@startsection{subparagraph}{5}%
+ {\CTEX@subparagraph@indent}%
+ {\CTEX@subparagraph@beforeskip}%
+ {\CTEX@subparagraph@afterskip}%
+ {\normalfont\CTEX@subparagraph@format}}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markboth {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \CTEXthechapter \quad %
+ \fi
+ ##1}}{}}%
+ \def\sectionmark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\z@
+ \CTEXthesection \quad %
+ \fi
+ ##1}}}}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \CTEXthechapter \quad %
+ \fi
+ ##1}}}}
+\fi
+\pagestyle{headings}
+\@ifundefined{ps@fancy}{}{%
+ \def\ps@fancy{%
+ \@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook
+ \@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}%
+ \@ifundefined{chapter}{\def\sectionmark##1{\markboth
+ {\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \CTEXthesection\quad \fi ##1}}{}}%
+ \def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne
+ \CTEXthesubsection\quad \fi ##1}}}%
+ {\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne
+ \ifCTEX@cls{book}{\if@mainmatter\CTEXthechapter \quad\fi}{\CTEXthechapter \quad}
+ \fi ##1}}{}}%
+ \def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@
+ \CTEXthesection \quad \fi ##1}}}}%
+ \ps@@fancy
+ \gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}%
+ \ifdim\headwidth<0sp
+ \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth
+ \fi}
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/def/ctex-utf8.def b/Master/texmf-dist/tex/latex/ctex/def/ctex-utf8.def
new file mode 100644
index 00000000000..5b106be224d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/def/ctex-utf8.def
@@ -0,0 +1,28 @@
+% ctex-utf8.def
+% vim:ft=tex
+
+\def\CTEXnullspace{0pt}
+\def\CTEX@null{\kern\CTEXnullspace{}〇\kern\CTEXnullspace}
+\def\CTEX@zero{零}
+\def\CTEX@one{一}
+\def\CTEX@two{二}
+\def\CTEX@three{三}
+\def\CTEX@four{四}
+\def\CTEX@five{五}
+\def\CTEX@six{六}
+\def\CTEX@seven{七}
+\def\CTEX@eight{八}
+\def\CTEX@nine{九}
+\def\CTEX@ten{十}
+\def\CTEX@hundred{百}
+\def\CTEX@thousand{千}
+\def\CTEX@tenthousand{万}
+\def\CTEX@hundredmillion{亿}
+\def\CTEX@minus{-}
+
+\def\CTEX@todaysmall{~\the\year~年~\the\month~月~\the\day~日}
+\def\CTEX@todaybig{%
+ \CJKdigits{\the\year}年\CJKnumber{\the\month}月\CJKnumber{\the\day}日}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/ctex/engine/ctex-cct-engine.def b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cct-engine.def
new file mode 100644
index 00000000000..cd54033ed97
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cct-engine.def
@@ -0,0 +1,82 @@
+% ctex-cct-engine.def: for LaTeX engine with CCT
+% vim:ft=tex
+
+\ifCTEX@cctfont
+ \RequirePackage{cctbase}[2003/04/05]
+\else
+ \RequirePackage[CJK]{cctbase}[2003/04/05]
+\fi
+\ifCTEX@punct
+ \CCTpuncttrue
+\else
+ \CCTpunctfalse
+\fi
+\ifCTEX@fntef
+ \RequirePackage{CCTfntef}
+ \normalem
+\fi
+\ifCTEX@space
+ \AtBeginDocument{\CCTspace}
+\else
+ \AtBeginDocument{\CCTnospace}
+\fi
+\def\CTEXspace{\CCTspace}
+\def\CTEXnospace{\CCTnospace}
+\ifCTEX@cctfont\else
+ \CCTdefziti A song song % 宋体
+ \CCTdefziti B hei song % 黑体
+ \CCTdefziti C kai song % 楷体
+ \CCTdefziti D fs song % 仿宋
+ \CCTdefziti E bs hei % 标宋
+ \CCTdefziti F li hei % 隶书
+ \CCTdefziti G you kai % 幼圆
+ \DeclareRobustCommand*{\songti}{\ziti{A}\relax} % 宋体
+ \DeclareRobustCommand*{\heiti}{\ziti{B}\relax} % 黑体
+ \DeclareRobustCommand*{\kaishu}{\ziti{C}\relax} % 楷书
+ \DeclareRobustCommand*{\fangsong}{\ziti{D}\relax} % 仿宋
+ \DeclareRobustCommand*{\biaosong}{\ziti{E}\relax} % 标宋
+ \DeclareRobustCommand*{\lishu}{\ziti{F}\relax} % 隶书
+ \DeclareRobustCommand*{\youyuan}{\ziti{G}\relax} % 幼圆
+\fi
+\ifx\CCT@set@fontsize\undefined
+ \let\CCT@set@fontsize\oset@fontsize
+\fi
+\let\CTEX@save@set@fontsize\set@fontsize
+\def\set@fontsize#1#2#3{%
+ \CCT@set@fontsize{#1}{#2}{#3}%
+ \zihaoAny{#2}%
+ \CTEXsetfont}
+\let\CTEX@save@ziju\ziju
+\renewcommand*\ziju[1]{% 字距
+ \CTEX@save@ziju{#1}%
+ \CTEXsetfont}
+\newcommand*\CTEXsetfont{%
+ \ifdim\parindent=0pt\else\parindent2\ccwd\fi}
+\ifCTEX@fntef
+ \def\CTEXunderdot{\CCTunderdot}
+ \def\CTEXunderline{\CCTunderline}
+ \def\CTEXunderdblline{\CCTunderdblline}
+ \def\CTEXunderwave{\CCTunderwave}
+ \def\CTEXsout{\CCTsout}
+ \def\CTEXxout{\CCTxout}
+ \def\CTEXfilltwosides{\CCTfilltwosides}
+ \def\endCTEXfilltwosides{\endCCTfilltwosides}
+ \CTEX@replacecommand{CTEX}{CCT}{underdotbasesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underdotsep}
+ \CTEX@replacecommand{CTEX}{CCT}{underlinebasesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underlinesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underdbllinebasesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underdbllinesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underwavebasesep}
+ \CTEX@replacecommand{CTEX}{CCT}{underwavesepa}
+ \CTEX@replacecommand{CTEX}{CCT}{underwavesep}
+ \CTEX@replacecommand{CTEX}{CCT}{southeight}
+ \CTEX@replacecommand{CTEX}{CCT}{xoutheight}
+ \CTEX@replacecommand{CTEX}{CCT}{underdotcolor}
+ \CTEX@replacecommand{CTEX}{CCT}{underwavecolor}
+ \CTEX@replacecommand{CTEX}{CCT}{underlinecolor}
+ \CTEX@replacecommand{CTEX}{CCT}{underdbllinecolor}
+ \CTEX@replacecommand{CTEX}{CCT}{soutcolor}
+ \CTEX@replacecommand{CTEX}{CCT}{xoutcolor}
+\fi
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-common.def b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-common.def
new file mode 100644
index 00000000000..3f76fe44d4a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-common.def
@@ -0,0 +1,50 @@
+% ctex-cjk-common.def: common definitions shared by cjk-engine and xecjk-engine
+% vim:ft=tex
+
+\ifCTEX@fntef
+ \RequirePackage{CJKfntef}
+ \normalem
+\fi
+
+\def\CTEXspace{\CJKspace}
+\def\CTEXnospace{\CJKnospace}
+
+\let\CTEX@save@set@fontsize\set@fontsize
+\def\set@fontsize#1#2#3{%
+ \CTEX@save@set@fontsize{#1}{#2}{#3}%
+ \CTEXsetfont}
+\newcommand*\ziju[1]{% 字距
+ \settowidth\@tempdima{\CTEX@spaceChar}%
+ \renewcommand{\CJKglue}{\hskip #1\@tempdima\@plus.08\baselineskip\relax}%
+ \CTEXsetfont} % is it a good definition?
+\newdimen\ccwd % 字宽
+\newcommand*\CTEXsetfont{%
+ \settowidth\ccwd{\CTEX@spaceChar\CJKglue}%
+ \ifdim\parindent=0pt\else\parindent2\ccwd\fi}
+\ifCTEX@fntef
+ \def\CTEXunderdot{\CJKunderdot}
+ \def\CTEXunderline{\CJKunderline}
+ \def\CTEXunderdblline{\CJKunderdblline}
+ \def\CTEXunderwave{\CJKunderwave}
+ \def\CTEXsout{\CJKsout}
+ \def\CTEXxout{\CJKxout}
+ \def\CTEXfilltwosides{\CJKfilltwosides}
+ \def\endCTEXfilltwosides{\endCJKfilltwosides}
+ \CTEX@replacecommand{CTEX}{CJK}{underdotbasesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underdotsep}
+ \CTEX@replacecommand{CTEX}{CJK}{underlinebasesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underlinesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underdbllinebasesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underdbllinesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underwavebasesep}
+ \CTEX@replacecommand{CTEX}{CJK}{underwavesep}
+ \CTEX@replacecommand{CTEX}{CJK}{southeight}
+ \CTEX@replacecommand{CTEX}{CJK}{underdotcolor}
+ \CTEX@replacecommand{CTEX}{CJK}{underwavecolor}
+ \CTEX@replacecommand{CTEX}{CJK}{underlinecolor}
+ \CTEX@replacecommand{CTEX}{CJK}{underdbllinecolor}
+ \CTEX@replacecommand{CTEX}{CJK}{soutcolor}
+ \CTEX@replacecommand{CTEX}{CJK}{xoutcolor}
+\fi
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-engine.def b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-engine.def
new file mode 100644
index 00000000000..ab3ebad6e3a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/engine/ctex-cjk-engine.def
@@ -0,0 +1,69 @@
+% ctex-cjk-engine.def: for LaTeX engine with CJK
+% vim:ft=tex
+
+\ifCTEX@GBK
+ \RequirePackage{CJK}[2003/03/28]
+\else
+ \RequirePackage{CJKutf8}[2003/03/28]
+\fi
+\RequirePackage{CJKnumb}[2003/03/28]
+
+\ifCTEX@punct
+ \RequirePackage{CJKpunct}[2009/05/06]
+\fi
+
+\AtEndOfPackage{\CJK@makeActive}
+
+\ifCTEX@space
+ \ifCTEX@GBK
+ \def\CTEX@beginCJK{\begin{CJK}{GBK}{rm}}
+ \else
+ \def\CTEX@beginCJK{\begin{CJK}{UTF8}{rm}}
+ \fi
+ \def\CTEX@endCJK{\clearpage\end{CJK}}
+\else
+ \ifCTEX@GBK
+ \def\CTEX@beginCJK{\begin{CJK*}{GBK}{rm}\CJKtilde}
+ \else
+ \def\CTEX@beginCJK{\begin{CJK*}{UTF8}{rm}\CJKtilde}
+ \fi
+ \def\CTEX@endCJK{\clearpage\end{CJK*}}
+\fi
+
+\let\CTEX@begindocumenthook\@begindocumenthook
+\let\CTEX@enddocumenthook\@enddocumenthook
+\def\AtBeginDocument{\g@addto@macro\CTEX@begindocumenthook}
+\def\AtEndDocument{\g@addto@macro\CTEX@enddocumenthook}
+\def\@begindocumenthook{\CTEX@begindocumenthook\CTEX@beginCJK}
+\def\@enddocumenthook{\CTEX@endCJK\CTEX@enddocumenthook}
+
+\input{ctex-cjk-common.def}
+
+\providecommand*\CTEX@rm@family{}
+\providecommand*\CTEX@sf@family{}
+\providecommand*\CTEX@tt@family{}
+
+\ifCTEX@nofonts
+ \renewcommand*\CTEX@rm@family{gbsn}
+ \renewcommand*\CTEX@sf@family{gbsn}
+ \renewcommand*\CTEX@tt@family{gbsn}
+\else
+ \ifCTEX@cjkfonts
+ \input{ctex-cjk-cjkfonts.def}
+ \else\ifCTEX@winfonts
+ \input{ctex-cjk-winfonts.def}
+ \else\ifCTEX@adobefonts
+ \input{ctex-cjk-adobefonts.def}
+ \fi\fi\fi
+\fi
+
+\let\CTEX@save@rmfamily\rmfamily
+\renewcommand*\rmfamily{\CTEX@save@rmfamily\CJKfamily{\CTEX@rm@family}}
+\let\CTEX@save@sffamily\sffamily
+\renewcommand*\sffamily{\CTEX@save@sffamily\CJKfamily{\CTEX@sf@family}}
+\let\CTEX@save@ttfamily\ttfamily
+\renewcommand*\ttfamily{\CTEX@save@ttfamily\CJKfamily{\CTEX@tt@family}}
+\let\CTEX@save@normalfont\normalfont
+\renewcommand*\normalfont{\CTEX@save@normalfont\CJKfamily{\CTEX@rm@family}}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/engine/ctex-xecjk-engine.def b/Master/texmf-dist/tex/latex/ctex/engine/ctex-xecjk-engine.def
new file mode 100644
index 00000000000..2ccbf1d2dba
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/engine/ctex-xecjk-engine.def
@@ -0,0 +1,27 @@
+% ctex-xecjk-engine.def: for XeTeX engine with xeCJK
+% vim:ft=tex
+
+\CTEX@GBKfalse % XeTeX always use UTF-8 as default encoding
+
+\RequirePackage[BoldFont,CJKnumber]{xeCJK}
+\defaultfontfeatures{Mapping=tex-text}
+
+\ifCTEX@punct
+ \punctstyle{quanjiao}
+\else
+ \punctstyle{plain}
+\fi
+
+\input{ctex-cjk-common.def}
+
+\ifCTEX@nofonts\else
+ \ifCTEX@cjkfonts
+ \input{ctex-xecjk-cjkfonts.def}
+ \else\ifCTEX@winfonts
+ \input{ctex-xecjk-winfonts.def}
+ \else\ifCTEX@adobefonts
+ \input{ctex-xecjk-adobefonts.def}
+ \fi\fi\fi
+\fi
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fd b/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fd
new file mode 100644
index 00000000000..290f1c9d1ea
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fd
@@ -0,0 +1,17 @@
+%% c19gbsn.fd
+\ProvidesFile{c19gbsn.fd}[2009/05/11 4.8.2]
+
+
+% simplified Chinese characters
+%
+% character set: GBK
+% font encoding: CJK (standard)
+
+% Arphic PL TrueType font AR PL SungtiL GB / BousungEG-Light-GB
+
+\DeclareFontFamily{C10}{gbsn}{\hyphenchar \font\m@ne}
+
+\DeclareFontShape{C10}{gbsn}{m}{n}{<-> CJK * gbsnlp}{\CJKnormal}
+\DeclareFontShape{C10}{gbsn}{bx}{n}{<-> CJKb * gbsnlp}{\CJKbold}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fdx b/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fdx
new file mode 100644
index 00000000000..25b455d4808
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19gbsn.fdx
@@ -0,0 +1,62 @@
+%% c19gbsn.fdx
+\ProvidesFile{c19gbsn.fdx}[2009/05/11 4.8.2]
+
+
+\CJKvdef{fullheight}{1em}
+\CJKvdef{height}{.88em}
+\CJKvdef{offset}{.5em}
+\CJKvdef{simpleoffset}{-.1em}
+
+\CJKvdef{m/n/01/1}{\raise .15em \hbox to 1em {\kern -.15em \CJKsymbol{1}\hss}}
+\CJKvdef{m/n/01/2}{\raise .15em \hbox to 1em {\kern -.15em \CJKsymbol{2}\hss}}
+\CJKvdef{m/n/01/17}{\CJKsymbolsimple{17}}
+\CJKvdef{m/n/01/18}{\CJKsymbolsimple{18}}
+\CJKvdef{m/n/01/19}{\CJKsymbolsimple{19}}
+\CJKvdef{m/n/01/20}{\CJKsymbolsimple{20}}
+\CJKvdef{m/n/01/21}{\CJKsymbolsimple{21}}
+\CJKvdef{m/n/01/22}{\CJKsymbolsimple{22}}
+\CJKvdef{m/n/01/23}{\CJKsymbolsimple{23}}
+\CJKvdef{m/n/01/24}{\CJKsymbolsimple{24}}
+\CJKvdef{m/n/01/25}{\CJKsymbolsimple{25}}
+\CJKvdef{m/n/01/26}{\CJKsymbolsimple{26}}
+\CJKvdef{m/n/01/27}{\CJKsymbolsimple{27}}
+\CJKvdef{m/n/01/28}{\CJKsymbolsimple{28}}
+\CJKvdef{m/n/01/29}{\CJKsymbolsimple{29}}
+\CJKvdef{m/n/01/30}{\CJKsymbolsimple{30}}
+\CJKvdef{m/n/01/195}{\CJKsymbolsimple{195}}
+\CJKvdef{m/n/01/196}{\CJKsymbolsimple{196}}
+\CJKvdef{m/n/01/199}{
+ \raise .25em \hbox to 1em {\kern -.35em \CJKsymbol{199}\hss}}
+\CJKvdef{m/n/01/201}{
+ \raise .25em \hbox to 1em {\kern -.35em \CJKsymbol{201}\hss}}
+\CJKvdef{m/n/01/246}{\CJKsymbolsimple{246}}
+\CJKvdef{m/n/01/248}{\CJKsymbolsimple{248}}
+\CJKvdef{m/n/02/22}{\CJKsymbolsimple{22}}
+\CJKvdef{m/n/02/24}{\CJKsymbolsimple{24}}
+
+\CJKvlet{bx/n/01/1}{m/n/01/1}
+\CJKvlet{bx/n/01/2}{m/n/01/2}
+\CJKvlet{bx/n/01/17}{m/n/01/17}
+\CJKvlet{bx/n/01/18}{m/n/01/18}
+\CJKvlet{bx/n/01/19}{m/n/01/19}
+\CJKvlet{bx/n/01/20}{m/n/01/20}
+\CJKvlet{bx/n/01/21}{m/n/01/21}
+\CJKvlet{bx/n/01/22}{m/n/01/22}
+\CJKvlet{bx/n/01/23}{m/n/01/23}
+\CJKvlet{bx/n/01/24}{m/n/01/24}
+\CJKvlet{bx/n/01/25}{m/n/01/25}
+\CJKvlet{bx/n/01/26}{m/n/01/26}
+\CJKvlet{bx/n/01/27}{m/n/01/27}
+\CJKvlet{bx/n/01/28}{m/n/01/28}
+\CJKvlet{bx/n/01/29}{m/n/01/29}
+\CJKvlet{bx/n/01/30}{m/n/01/30}
+\CJKvlet{bx/n/01/195}{m/n/01/195}
+\CJKvlet{bx/n/01/196}{m/n/01/196}
+\CJKvlet{bx/n/01/199}{m/n/01/199}
+\CJKvlet{bx/n/01/201}{m/n/01/201}
+\CJKvlet{bx/n/01/246}{m/n/01/246}
+\CJKvlet{bx/n/01/248}{m/n/01/248}
+\CJKvlet{bx/n/02/22}{m/n/02/22}
+\CJKvlet{bx/n/02/24}{m/n/02/24}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fd b/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fd
new file mode 100644
index 00000000000..3f579ea4844
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fd
@@ -0,0 +1,17 @@
+%% c19gkai.fd
+\ProvidesFile{c19gkai.fd}[2009/05/11 4.8.2]
+
+
+% simplified Chinese characters
+%
+% character set: GBK
+% font encoding: CJK (standard)
+
+% Arphic PL TrueType font AR PL KaitiM GB / GBZenKai-Medium
+
+\DeclareFontFamily{C10}{gkai}{\hyphenchar \font\m@ne}
+
+\DeclareFontShape{C10}{gkai}{m}{n}{<-> CJK * gkaimp}{\CJKnormal}
+\DeclareFontShape{C10}{gkai}{bx}{n}{<-> CJKb * gkaimp}{\CJKbold}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fdx b/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fdx
new file mode 100644
index 00000000000..9462027bd64
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19gkai.fdx
@@ -0,0 +1,62 @@
+%% c19gkai.fdx
+\ProvidesFile{c19gkai.fdx}[2009/05/11 4.8.2]
+
+
+\CJKvdef{fullheight}{1em}
+\CJKvdef{height}{.88em}
+\CJKvdef{offset}{.5em}
+\CJKvdef{simpleoffset}{-.1em}
+
+\CJKvdef{m/n/01/1}{\raise .15em \hbox to 1em {\kern -.15em \CJKsymbol{1}\hss}}
+\CJKvdef{m/n/01/2}{\raise .15em \hbox to 1em {\kern -.15em \CJKsymbol{2}\hss}}
+\CJKvdef{m/n/01/17}{\CJKsymbolsimple{17}}
+\CJKvdef{m/n/01/18}{\CJKsymbolsimple{18}}
+\CJKvdef{m/n/01/19}{\CJKsymbolsimple{19}}
+\CJKvdef{m/n/01/20}{\CJKsymbolsimple{20}}
+\CJKvdef{m/n/01/21}{\CJKsymbolsimple{21}}
+\CJKvdef{m/n/01/22}{\CJKsymbolsimple{22}}
+\CJKvdef{m/n/01/23}{\CJKsymbolsimple{23}}
+\CJKvdef{m/n/01/24}{\CJKsymbolsimple{24}}
+\CJKvdef{m/n/01/25}{\CJKsymbolsimple{25}}
+\CJKvdef{m/n/01/26}{\CJKsymbolsimple{26}}
+\CJKvdef{m/n/01/27}{\CJKsymbolsimple{27}}
+\CJKvdef{m/n/01/28}{\CJKsymbolsimple{28}}
+\CJKvdef{m/n/01/29}{\CJKsymbolsimple{29}}
+\CJKvdef{m/n/01/30}{\CJKsymbolsimple{30}}
+\CJKvdef{m/n/01/195}{\CJKsymbolsimple{195}}
+\CJKvdef{m/n/01/196}{\CJKsymbolsimple{196}}
+\CJKvdef{m/n/01/199}{
+ \raise .25em \hbox to 1em {\kern -.35em \CJKsymbol{199}\hss}}
+\CJKvdef{m/n/01/201}{
+ \raise .25em \hbox to 1em {\kern -.35em \CJKsymbol{201}\hss}}
+\CJKvdef{m/n/01/246}{\CJKsymbolsimple{246}}
+\CJKvdef{m/n/01/248}{\CJKsymbolsimple{248}}
+\CJKvdef{m/n/02/22}{\CJKsymbolsimple{22}}
+\CJKvdef{m/n/02/24}{\CJKsymbolsimple{24}}
+
+\CJKvlet{bx/n/01/1}{m/n/01/1}
+\CJKvlet{bx/n/01/2}{m/n/01/2}
+\CJKvlet{bx/n/01/17}{m/n/01/17}
+\CJKvlet{bx/n/01/18}{m/n/01/18}
+\CJKvlet{bx/n/01/19}{m/n/01/19}
+\CJKvlet{bx/n/01/20}{m/n/01/20}
+\CJKvlet{bx/n/01/21}{m/n/01/21}
+\CJKvlet{bx/n/01/22}{m/n/01/22}
+\CJKvlet{bx/n/01/23}{m/n/01/23}
+\CJKvlet{bx/n/01/24}{m/n/01/24}
+\CJKvlet{bx/n/01/25}{m/n/01/25}
+\CJKvlet{bx/n/01/26}{m/n/01/26}
+\CJKvlet{bx/n/01/27}{m/n/01/27}
+\CJKvlet{bx/n/01/28}{m/n/01/28}
+\CJKvlet{bx/n/01/29}{m/n/01/29}
+\CJKvlet{bx/n/01/30}{m/n/01/30}
+\CJKvlet{bx/n/01/195}{m/n/01/195}
+\CJKvlet{bx/n/01/196}{m/n/01/196}
+\CJKvlet{bx/n/01/199}{m/n/01/199}
+\CJKvlet{bx/n/01/201}{m/n/01/201}
+\CJKvlet{bx/n/01/246}{m/n/01/246}
+\CJKvlet{bx/n/01/248}{m/n/01/248}
+\CJKvlet{bx/n/02/22}{m/n/02/22}
+\CJKvlet{bx/n/02/24}{m/n/02/24}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19rm.fd b/Master/texmf-dist/tex/latex/ctex/fd/c19rm.fd
new file mode 100644
index 00000000000..481dd8d23a2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19rm.fd
@@ -0,0 +1,49 @@
+%% c19rm.fd
+%%
+%% This is file `c19rm.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,rm')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c19rm.fd}
+ [2007/05/06 v0.8a ctex
+ font definition file]
+
+%% Chinese characters (extension of GB 2312)
+%%
+%% character set: GBK
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C19}{rm}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C19}{rm}{m}{n}{<-> CJK * gbksong}{}
+\DeclareFontShape{C19}{rm}{b}{n}{<-> CJK * gbkhei}{}
+\DeclareFontShape{C19}{rm}{bx}{n}{<-> CJK * gbkhei}{}
+\DeclareFontShape{C19}{rm}{m}{sl}{<-> CJK * gbksongsl}{}
+\DeclareFontShape{C19}{rm}{b}{sl}{<-> CJK * gbkheisl}{}
+\DeclareFontShape{C19}{rm}{bx}{sl}{<-> CJK * gbkheisl}{}
+\DeclareFontShape{C19}{rm}{m}{it}{<-> CJK * gbkkai}{}
+\DeclareFontShape{C19}{rm}{b}{it}{<-> CJKb * gbkkai}{\CJKbold}
+\DeclareFontShape{C19}{rm}{bx}{it}{<-> CJKb * gbkkai}{\CJKbold}
+\endinput
+%%
+%% End of file `c19rm.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19sf.fd b/Master/texmf-dist/tex/latex/ctex/fd/c19sf.fd
new file mode 100644
index 00000000000..c3071ff2e87
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19sf.fd
@@ -0,0 +1,49 @@
+%% c19sf.fd
+%%
+%% This is file `c19sf.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,sf')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c19sf.fd}
+ [2007/05/06 v0.8a ctex
+ font definition file]
+
+%% Chinese characters (extension of GB 2312)
+%%
+%% character set: GBK
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C19}{sf}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C19}{sf}{m}{n}{<-> CJK * gbkyou}{}
+\DeclareFontShape{C19}{sf}{b}{n}{<-> CJKb * gbkyou}{\CJKbold}
+\DeclareFontShape{C19}{sf}{bx}{n}{<-> CJKb * gbkyou}{\CJKbold}
+\DeclareFontShape{C19}{sf}{m}{sl}{<-> CJK * gbkyousl}{}
+\DeclareFontShape{C19}{sf}{b}{sl}{<-> CJKb * gbkyousl}{\CJKbold}
+\DeclareFontShape{C19}{sf}{bx}{sl}{<-> CJKb * gbkyousl}{\CJKbold}
+\DeclareFontShape{C19}{sf}{m}{it}{<-> CJK * gbkyou}{}
+\DeclareFontShape{C19}{sf}{b}{it}{<-> CJKb * gbkyou}{\CJKbold}
+\DeclareFontShape{C19}{sf}{bx}{it}{<-> CJKb * gbkyou}{\CJKbold}
+\endinput
+%%
+%% End of file `c19sf.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c19tt.fd b/Master/texmf-dist/tex/latex/ctex/fd/c19tt.fd
new file mode 100644
index 00000000000..d02ee63bdd8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c19tt.fd
@@ -0,0 +1,49 @@
+%% c19tt.fd
+%%
+%% This is file `c19tt.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,tt')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c19tt.fd}
+ [2007/05/06 v0.8a ctex
+ font definition file]
+
+%% Chinese characters (extension of GB 2312)
+%%
+%% character set: GBK
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C19}{tt}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C19}{tt}{m}{n}{<-> CJK * gbkfs}{}
+\DeclareFontShape{C19}{tt}{b}{n}{<-> CJKb * gbkfs}{\CJKbold}
+\DeclareFontShape{C19}{tt}{bx}{n}{<-> CJKb * gbkfs}{\CJKbold}
+\DeclareFontShape{C19}{tt}{m}{sl}{<-> CJK * gbkfssl}{}
+\DeclareFontShape{C19}{tt}{b}{sl}{<-> CJKb * gbkfssl}{\CJKbold}
+\DeclareFontShape{C19}{tt}{bx}{sl}{<-> CJKb * gbkfssl}{\CJKbold}
+\DeclareFontShape{C19}{tt}{m}{it}{<-> CJK * gbkfs}{}
+\DeclareFontShape{C19}{tt}{b}{it}{<-> CJKb * gbkfs}{\CJKbold}
+\DeclareFontShape{C19}{tt}{bx}{it}{<-> CJKb * gbkfs}{\CJKbold}
+\endinput
+%%
+%% End of file `c19tt.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c70rm.fd b/Master/texmf-dist/tex/latex/ctex/fd/c70rm.fd
new file mode 100644
index 00000000000..1c0ef069ddf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c70rm.fd
@@ -0,0 +1,49 @@
+%% c70rm.fd
+%%
+%% This is file `c70rm.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,rm')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c70rm.fd}
+ [2007/05/06 v0.8a ctexutf8
+ font definition file]
+
+%% Chinese characters
+%%
+%% character set: UTF8
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C70}{rm}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C70}{rm}{m}{n}{<-> CJK * unisong}{}
+\DeclareFontShape{C70}{rm}{b}{n}{<-> CJK * unihei}{}
+\DeclareFontShape{C70}{rm}{bx}{n}{<-> CJK * unihei}{}
+\DeclareFontShape{C70}{rm}{m}{sl}{<-> CJK * unisongsl}{}
+\DeclareFontShape{C70}{rm}{b}{sl}{<-> CJK * uniheisl}{}
+\DeclareFontShape{C70}{rm}{bx}{sl}{<-> CJK * uniheisl}{}
+\DeclareFontShape{C70}{rm}{m}{it}{<-> CJK * unikai}{}
+\DeclareFontShape{C70}{rm}{b}{it}{<-> CJKb * unikai}{\CJKbold}
+\DeclareFontShape{C70}{rm}{bx}{it}{<-> CJKb * unikai}{\CJKbold}
+\endinput
+%%
+%% End of file `c70rm.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c70sf.fd b/Master/texmf-dist/tex/latex/ctex/fd/c70sf.fd
new file mode 100644
index 00000000000..b5f8da3e91c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c70sf.fd
@@ -0,0 +1,49 @@
+%% c70sf.fd
+%%
+%% This is file `c70sf.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,sf')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c70sf.fd}
+ [2007/05/06 v0.8a ctexutf8
+ font definition file]
+
+%% Chinese characters
+%%
+%% character set: UTF8
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C70}{sf}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C70}{sf}{m}{n}{<-> CJK * uniyou}{}
+\DeclareFontShape{C70}{sf}{b}{n}{<-> CJKb * uniyou}{\CJKbold}
+\DeclareFontShape{C70}{sf}{bx}{n}{<-> CJKb * uniyou}{\CJKbold}
+\DeclareFontShape{C70}{sf}{m}{sl}{<-> CJK * uniyousl}{}
+\DeclareFontShape{C70}{sf}{b}{sl}{<-> CJKb * uniyousl}{\CJKbold}
+\DeclareFontShape{C70}{sf}{bx}{sl}{<-> CJKb * uniyousl}{\CJKbold}
+\DeclareFontShape{C70}{sf}{m}{it}{<-> CJK * uniyou}{}
+\DeclareFontShape{C70}{sf}{b}{it}{<-> CJKb * uniyou}{\CJKbold}
+\DeclareFontShape{C70}{sf}{bx}{it}{<-> CJKb * uniyou}{\CJKbold}
+\endinput
+%%
+%% End of file `c70sf.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fd/c70tt.fd b/Master/texmf-dist/tex/latex/ctex/fd/c70tt.fd
new file mode 100644
index 00000000000..0e9933d9a9e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fd/c70tt.fd
@@ -0,0 +1,49 @@
+%% c70tt.fd
+%%
+%% This is file `c70tt.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ctex.dtx (with options: `fd,tt')
+%%
+%% This is a generated file.
+%%
+%% Copyright 2003-2006
+%% CTEX.ORG and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the ctex package project.
+%% -----------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% 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.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This is the font definition file of the ctex package with LaTeX2e.
+%%
+\ProvidesFile{c70tt.fd}
+ [2007/05/06 v0.8a ctexutf8
+ font definition file]
+
+%% Chinese characters
+%%
+%% character set: UTF8
+%% font encoding: CJK (extended)
+
+\DeclareFontFamily{C70}{tt}{\hyphenchar \font\m@ne}
+\DeclareFontShape{C70}{tt}{m}{n}{<-> CJK * unifs}{}
+\DeclareFontShape{C70}{tt}{b}{n}{<-> CJKb * unifs}{\CJKbold}
+\DeclareFontShape{C70}{tt}{bx}{n}{<-> CJKb * unifs}{\CJKbold}
+\DeclareFontShape{C70}{tt}{m}{sl}{<-> CJK * unifssl}{}
+\DeclareFontShape{C70}{tt}{b}{sl}{<-> CJKb * unifssl}{\CJKbold}
+\DeclareFontShape{C70}{tt}{bx}{sl}{<-> CJKb * unifssl}{\CJKbold}
+\DeclareFontShape{C70}{tt}{m}{it}{<-> CJK * unifs}{}
+\DeclareFontShape{C70}{tt}{b}{it}{<-> CJKb * unifs}{\CJKbold}
+\DeclareFontShape{C70}{tt}{bx}{it}{<-> CJKb * unifs}{\CJKbold}
+\endinput
+%%
+%% End of file `c70tt.fd'.
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-adobefonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-adobefonts.def
new file mode 100644
index 00000000000..168d4a69d4f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-adobefonts.def
@@ -0,0 +1,7 @@
+% ctex-cjk-adobefonts.def: Adobe 的 CJK 字体设置,为 Adobe 的四套字体
+% vim:ft=tex
+
+% 目前不可用
+\input{ctex-cjk-winfonts.def}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-cjkfonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-cjkfonts.def
new file mode 100644
index 00000000000..7441c883f56
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-cjkfonts.def
@@ -0,0 +1,11 @@
+% ctex-cjk-cjkfonts.def: CJKfonts 的 CJK 字体设置,文鼎的两套字体
+% vim:ft=tex
+
+\renewcommand*\CTEX@rm@family{gbsn}
+\renewcommand*\CTEX@sf@family{gbsn}
+\renewcommand*\CTEX@tt@family{gbsn}
+
+\newcommand*{\songti}{\CJKfamily{gbsn}} % 宋体
+\newcommand*{\kaishu}{\CJKfamily{gkai}} % 楷书
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-winfonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-winfonts.def
new file mode 100644
index 00000000000..12e956cf7cd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-cjk-winfonts.def
@@ -0,0 +1,78 @@
+% ctex-cjk-winfonts.def: Windows 的 CJK 字体设置,默认为 CTeX 套装的六种字体
+% vim:ft=tex
+
+\renewcommand*\CTEX@rm@family{rm}
+\renewcommand*\CTEX@sf@family{sf}
+\renewcommand*\CTEX@tt@family{tt}
+
+\ifCTEX@punct
+% see also: c19rm.fd
+ \CJKpunctmapfamily{C19}{rm}{m}{n}{song}
+ \CJKpunctmapfamily{C19}{rm}{b}{n}{hei}
+ \CJKpunctmapfamily{C19}{rm}{bx}{n}{hei}
+ \CJKpunctmapfamily{C19}{rm}{m}{sl}{song}
+ \CJKpunctmapfamily{C19}{rm}{b}{sl}{hei}
+ \CJKpunctmapfamily{C19}{rm}{bx}{sl}{hei}
+ \CJKpunctmapfamily{C19}{rm}{m}{it}{kai}
+ \CJKpunctmapfamily{C19}{rm}{b}{it}{kei}
+ \CJKpunctmapfamily{C19}{rm}{bx}{it}{kai}
+% see also: c19sf.fd
+ \CJKpunctmapfamily{C19}{sf}{m}{n}{you}
+ \CJKpunctmapfamily{C19}{sf}{b}{n}{you}
+ \CJKpunctmapfamily{C19}{sf}{bx}{n}{you}
+ \CJKpunctmapfamily{C19}{sf}{m}{sl}{you}
+ \CJKpunctmapfamily{C19}{sf}{b}{sl}{you}
+ \CJKpunctmapfamily{C19}{sf}{bx}{sl}{you}
+ \CJKpunctmapfamily{C19}{sf}{m}{it}{you}
+ \CJKpunctmapfamily{C19}{sf}{b}{it}{you}
+ \CJKpunctmapfamily{C19}{sf}{bx}{it}{you}
+% see also: c19tt.fd
+ \CJKpunctmapfamily{C19}{tt}{m}{n}{fs}
+ \CJKpunctmapfamily{C19}{tt}{b}{n}{fs}
+ \CJKpunctmapfamily{C19}{tt}{bx}{n}{fs}
+ \CJKpunctmapfamily{C19}{tt}{m}{sl}{fs}
+ \CJKpunctmapfamily{C19}{tt}{b}{sl}{fs}
+ \CJKpunctmapfamily{C19}{tt}{bx}{sl}{fs}
+ \CJKpunctmapfamily{C19}{tt}{m}{it}{fs}
+ \CJKpunctmapfamily{C19}{tt}{b}{it}{fs}
+ \CJKpunctmapfamily{C19}{tt}{bx}{it}{fs}
+% see also: c70rm.fd
+ \CJKpunctmapfamily{C70}{rm}{m}{n}{song}
+ \CJKpunctmapfamily{C70}{rm}{b}{n}{hei}
+ \CJKpunctmapfamily{C70}{rm}{bx}{n}{hei}
+ \CJKpunctmapfamily{C70}{rm}{m}{sl}{song}
+ \CJKpunctmapfamily{C70}{rm}{b}{sl}{hei}
+ \CJKpunctmapfamily{C70}{rm}{bx}{sl}{hei}
+ \CJKpunctmapfamily{C70}{rm}{m}{it}{kai}
+ \CJKpunctmapfamily{C70}{rm}{b}{it}{kei}
+ \CJKpunctmapfamily{C70}{rm}{bx}{it}{kai}
+% see also: c70sf.fd
+ \CJKpunctmapfamily{C70}{sf}{m}{n}{you}
+ \CJKpunctmapfamily{C70}{sf}{b}{n}{you}
+ \CJKpunctmapfamily{C70}{sf}{bx}{n}{you}
+ \CJKpunctmapfamily{C70}{sf}{m}{sl}{you}
+ \CJKpunctmapfamily{C70}{sf}{b}{sl}{you}
+ \CJKpunctmapfamily{C70}{sf}{bx}{sl}{you}
+ \CJKpunctmapfamily{C70}{sf}{m}{it}{you}
+ \CJKpunctmapfamily{C70}{sf}{b}{it}{you}
+ \CJKpunctmapfamily{C70}{sf}{bx}{it}{you}
+% see also: c70tt.fd
+ \CJKpunctmapfamily{C70}{tt}{m}{n}{fs}
+ \CJKpunctmapfamily{C70}{tt}{b}{n}{fs}
+ \CJKpunctmapfamily{C70}{tt}{bx}{n}{fs}
+ \CJKpunctmapfamily{C70}{tt}{m}{sl}{fs}
+ \CJKpunctmapfamily{C70}{tt}{b}{sl}{fs}
+ \CJKpunctmapfamily{C70}{tt}{bx}{sl}{fs}
+ \CJKpunctmapfamily{C70}{tt}{m}{it}{fs}
+ \CJKpunctmapfamily{C70}{tt}{b}{it}{fs}
+ \CJKpunctmapfamily{C70}{tt}{bx}{it}{fs}
+\fi
+
+\newcommand*{\songti}{\CJKfamily{song}} % 宋体
+\newcommand*{\heiti}{\CJKfamily{hei}} % 黑体
+\newcommand*{\kaishu}{\CJKfamily{kai}} % 楷书
+\newcommand*{\fangsong}{\CJKfamily{fs}} % 仿宋
+\newcommand*{\lishu}{\CJKfamily{li}} % 隶书
+\newcommand*{\youyuan}{\CJKfamily{you}} % 幼圆
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-adobefonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-adobefonts.def
new file mode 100644
index 00000000000..d3af98f1225
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-adobefonts.def
@@ -0,0 +1,19 @@
+% ctex-xecjk-adobefonts.def: Adobe 的 xeCJK 字体设置,为 Adobe 的四套字体
+% vim:ft=tex
+
+\setCJKmainfont[BoldFont=Adobe Heiti Std,ItalicFont=Adobe Kaiti Std]
+ {Adobe Song Std}
+\setCJKsansfont{Adobe Heiti Std}
+\setCJKmonofont{Adobe Fangsong Std}
+
+\setCJKfamilyfont{song}{Adobe Song Std}
+\setCJKfamilyfont{hei}{Adobe Heiti Std}
+\setCJKfamilyfont{fs}{Adobe Fangsong Std}
+\setCJKfamilyfont{kai}{Adobe Kaiti Std}
+
+\newcommand*{\songti}{\CJKfamily{song}} % 宋体
+\newcommand*{\heiti}{\CJKfamily{hei}} % 黑体
+\newcommand*{\kaishu}{\CJKfamily{kai}} % 楷书
+\newcommand*{\fangsong}{\CJKfamily{fs}} % 仿宋
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-cjkfonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-cjkfonts.def
new file mode 100644
index 00000000000..e1c67b5714f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-cjkfonts.def
@@ -0,0 +1,7 @@
+% ctex-xecjk-cjkfonts.def: CJKfonts 的 xeCJK 字体设置,文鼎的两套字体
+% vim:ft=tex
+
+% 暂缺
+\input{ctex-xecjk-adobefonts.def}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def
new file mode 100644
index 00000000000..638e23df611
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def
@@ -0,0 +1,23 @@
+% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体
+% vim:ft=tex
+
+\setCJKmainfont[BoldFont={SimHei},ItalicFont={[simkai.ttf]}]
+ {SimSun}
+\setCJKsansfont{YouYuan}
+\setCJKmonofont{[simfang.ttf]}
+
+\setCJKfamilyfont{song}{SimSun}
+\setCJKfamilyfont{hei}{SimHei}
+\setCJKfamilyfont{kai}{[simkai.ttf]}
+\setCJKfamilyfont{fs}{[simfang.ttf]}
+\setCJKfamilyfont{li}{LiSu}
+\setCJKfamilyfont{you}{YouYuan}
+
+\newcommand*{\songti}{\CJKfamily{song}} % 宋体
+\newcommand*{\heiti}{\CJKfamily{hei}} % 黑体
+\newcommand*{\kaishu}{\CJKfamily{kai}} % 楷书
+\newcommand*{\fangsong}{\CJKfamily{fs}} % 仿宋
+\newcommand*{\lishu}{\CJKfamily{li}} % 隶书
+\newcommand*{\youyuan}{\CJKfamily{you}} % 幼圆
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/opt/ctex-caption-opts.def b/Master/texmf-dist/tex/latex/ctex/opt/ctex-caption-opts.def
new file mode 100644
index 00000000000..4f91d9ac8b7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/opt/ctex-caption-opts.def
@@ -0,0 +1,11 @@
+% ctex-caption.opt: options just for ctexcap.sty and document classes
+% vim:ft=tex
+
+% section depths
+
+\newcounter{CTEX@sectiondepth}
+\setcounter{CTEX@sectiondepth}{2}
+\DeclareOption{sub3section}{\setcounter{CTEX@sectiondepth}{3}}
+\DeclareOption{sub4section}{\setcounter{CTEX@sectiondepth}{4}}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/opt/ctex-class-opts.def b/Master/texmf-dist/tex/latex/ctex/opt/ctex-class-opts.def
new file mode 100644
index 00000000000..7e43247b92e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/opt/ctex-class-opts.def
@@ -0,0 +1,26 @@
+% ctex-class.opt: options for ctex class files
+% vim:ft=tex
+
+% font size
+
+\newif\ifCTEX@sfoursize \CTEX@sfoursizefalse
+\DeclareOption{cs4size}{\CTEX@sfoursizetrue\CTEX@fivesizefalse}
+\newif\ifCTEX@fivesize \CTEX@fivesizetrue
+\DeclareOption{c5size}{\CTEX@fivesizetrue\CTEX@sfoursizefalse}
+
+\DeclareOption{10pt}{%
+ \CTEX@sfoursizefalse\CTEX@fivesizefalse%
+ \PassOptionsToClass{\CurrentOption}%
+ {\CTEX@classtoload}}
+\DeclareOption{11pt}{%
+ \CTEX@sfoursizefalse\CTEX@fivesizefalse%
+ \PassOptionsToClass{\CurrentOption}%
+ {\CTEX@classtoload}}
+\DeclareOption{12pt}{%
+ \CTEX@sfoursizefalse\CTEX@fivesizefalse%
+ \PassOptionsToClass{\CurrentOption}%
+ {\CTEX@classtoload}}
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}%
+ {\CTEX@classtoload}}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/ctex/opt/ctex-common-opts.def b/Master/texmf-dist/tex/latex/ctex/opt/ctex-common-opts.def
new file mode 100644
index 00000000000..c9ef2d9d1d2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ctex/opt/ctex-common-opts.def
@@ -0,0 +1,59 @@
+% ctex-common.opt: options for all ctex packages/classes
+% vim:ft=tex
+
+% encoding
+\newif\ifCTEX@GBK \CTEX@GBKtrue
+\DeclareOption{GBK}{\CTEX@GBKtrue}
+\DeclareOption{UTF8}{\CTEX@GBKfalse}
+
+% fonts
+\newif\ifCTEX@nofonts \CTEX@nofontsfalse
+\newif\ifCTEX@cjkfonts \CTEX@cjkfontstrue
+\newif\ifCTEX@winfonts \CTEX@winfontsfalse
+\newif\ifCTEX@adobefonts \CTEX@adobefontsfalse
+\DeclareOption{nofonts}{\CTEX@nofontstrue
+ \CTEX@cjkfontsfalse
+ \CTEX@winfontsfalse
+ \CTEX@adobefontsfalse}
+\DeclareOption{cjkfonts}{\CTEX@cjkfontstrue
+ \CTEX@nofontsfalse
+ \CTEX@winfontsfalse
+ \CTEX@adobefontsfalse}
+\DeclareOption{winfonts}{\CTEX@winfontstrue
+ \CTEX@cjkfontsfalse
+ \CTEX@nofontsfalse
+ \CTEX@adobefontsfalse}
+\DeclareOption{adobefonts}{\CTEX@adobefontstrue
+ \CTEX@cjkfontsfalse
+ \CTEX@nofontsfalse
+ \CTEX@winfontsfalse}
+
+\newif\ifCTEX@cct \CTEX@cctfalse
+\DeclareOption{CCT}{\CTEX@ccttrue}
+
+\newif\ifCTEX@cctfont \CTEX@cctfontfalse
+\DeclareOption{CCTfont}{\CTEX@ccttrue\CTEX@cctfonttrue}
+
+\newif\ifCTEX@punct \CTEX@puncttrue
+\DeclareOption{punct}{\CTEX@puncttrue}
+\DeclareOption{nopunct}{\CTEX@punctfalse}
+
+\newif\ifCTEX@space \CTEX@spacefalse
+\DeclareOption{space}{\CTEX@spacetrue}
+\DeclareOption{nospace}{\CTEX@spacefalse}
+
+\newif\ifCTEX@caption \CTEX@captiontrue
+\DeclareOption{nocap}{\CTEX@captionfalse}
+\DeclareOption{cap}{\CTEX@captiontrue}
+
+\newif\ifCTEX@indent \CTEX@indenttrue
+\DeclareOption{noindent}{\CTEX@indentfalse}
+\DeclareOption{indent}{\CTEX@indenttrue}
+
+\newif\ifCTEX@fancyhdr \CTEX@fancyhdrfalse
+\DeclareOption{fancyhdr}{\CTEX@fancyhdrtrue}
+
+\newif\ifCTEX@fntef \CTEX@fnteffalse
+\DeclareOption{fntef}{\CTEX@fnteftrue}
+
+\endinput