From c5b0b7223927e0d1ed15233367e14940f33d044a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 30 Jul 2021 20:15:57 +0000 Subject: projlib (30jul21) git-svn-id: svn://tug.org/texlive/trunk@60118 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/projlib/ProjLib.dtx | 592 +++++++++++---------- 1 file changed, 324 insertions(+), 268 deletions(-) (limited to 'Master/texmf-dist/source/latex/projlib/ProjLib.dtx') diff --git a/Master/texmf-dist/source/latex/projlib/ProjLib.dtx b/Master/texmf-dist/source/latex/projlib/ProjLib.dtx index 59be20a95ba..583e08f3cbc 100644 --- a/Master/texmf-dist/source/latex/projlib/ProjLib.dtx +++ b/Master/texmf-dist/source/latex/projlib/ProjLib.dtx @@ -18,47 +18,47 @@ % %<*ProjLib> \ProvidesPackage{ProjLib} - [2021/07/27 The collective interface of ProjLib toolkit] + [2021/07/30 The collective interface of ProjLib toolkit] % % %<*PJLauthor> \ProvidesPackage{PJLauthor} - [2021/07/27 Enhanced author information block] + [2021/07/30 Enhanced author information block] % % %<*PJLdate> \ProvidesPackage{PJLdate} - [2021/07/27 Convert yyyy-mm-dd to normal datetime format] + [2021/07/30 Convert yyyy-mm-dd to normal datetime format] % % %<*PJLdraft> \ProvidesPackage{PJLdraft} - [2021/07/27 Some useful macros for the draft stage] + [2021/07/30 Some useful macros for the draft stage] % % %<*PJLlang> \ProvidesPackage{PJLlang} - [2021/07/27 Multi-language configuration] + [2021/07/30 Multi-language configuration] % % %<*PJLlogo> \ProvidesPackage{PJLlogo} - [2021/07/27 The ProjLib logo] + [2021/07/30 The ProjLib logo] % % %<*PJLmath> \ProvidesPackage{PJLmath} - [2021/07/27 Useful math macros and shortcuts] + [2021/07/30 Useful math macros and shortcuts] % % %<*PJLpaper> \ProvidesPackage{PJLpaper} - [2021/07/27 Paper style configuration] + [2021/07/30 Paper style configuration] % % %<*PJLthm> \ProvidesPackage{PJLthm} - [2021/07/27 Theorem setup and configuration] + [2021/07/30 Theorem setup and configuration] % % %# 下面两行引入宏包的代码是所有文件共用的。 @@ -1005,269 +1005,269 @@ %%================================ %# 常见代数结构的捷径 %# Shortcuts for commonly used algebraic structures -\def\N{\ensuremath{\mathbb{N}}} -\def\Z{\ensuremath{\mathbb{Z}}} -\def\Q{\ensuremath{\mathbb{Q}}} -\def\R{\ensuremath{\mathbb{R}}} -\def\C{\ensuremath{\mathbb{C}}} -\def\F{\ensuremath{\mathbb{F}}} -\def\A{\ensuremath{\mathbb{A}}} +\providecommand{\N}{\ensuremath{\mathbb{N}}} +\providecommand{\Z}{\ensuremath{\mathbb{Z}}} +\providecommand{\Q}{\ensuremath{\mathbb{Q}}} +\providecommand{\R}{\ensuremath{\mathbb{R}}} +\providecommand{\C}{\ensuremath{\mathbb{C}}} +\providecommand{\F}{\ensuremath{\mathbb{F}}} +\providecommand{\A}{\ensuremath{\mathbb{A}}} %# mathbb 的捷径 %# Shortcuts for blackboard bold face -\def\bb#1{\ensuremath{\mathbb{#1}}} -\def\bbA{\ensuremath{\mathbb{A}}} -\def\bbB{\ensuremath{\mathbb{B}}} -\def\bbC{\ensuremath{\mathbb{C}}} -\def\bbD{\ensuremath{\mathbb{D}}} -\def\bbE{\ensuremath{\mathbb{E}}} -\def\bbF{\ensuremath{\mathbb{F}}} -\def\bbG{\ensuremath{\mathbb{G}}} -\def\bbH{\ensuremath{\mathbb{H}}} -\def\bbI{\ensuremath{\mathbb{I}}} -\def\bbJ{\ensuremath{\mathbb{J}}} -\def\bbK{\ensuremath{\mathbb{K}}} -\def\bbL{\ensuremath{\mathbb{L}}} -\def\bbM{\ensuremath{\mathbb{M}}} -\def\bbN{\ensuremath{\mathbb{N}}} -\def\bbO{\ensuremath{\mathbb{O}}} -\def\bbP{\ensuremath{\mathbb{P}}} -\def\bbQ{\ensuremath{\mathbb{Q}}} -\def\bbR{\ensuremath{\mathbb{R}}} -\def\bbS{\ensuremath{\mathbb{S}}} -\def\bbT{\ensuremath{\mathbb{T}}} -\def\bbU{\ensuremath{\mathbb{U}}} -\def\bbV{\ensuremath{\mathbb{V}}} -\def\bbW{\ensuremath{\mathbb{W}}} -\def\bbX{\ensuremath{\mathbb{X}}} -\def\bbY{\ensuremath{\mathbb{Y}}} -\def\bbZ{\ensuremath{\mathbb{Z}}} +\providecommand{\bb}[1]{\ensuremath{\mathbb{#1}}} +\providecommand{\bbA}{\ensuremath{\mathbb{A}}} +\providecommand{\bbB}{\ensuremath{\mathbb{B}}} +\providecommand{\bbC}{\ensuremath{\mathbb{C}}} +\providecommand{\bbD}{\ensuremath{\mathbb{D}}} +\providecommand{\bbE}{\ensuremath{\mathbb{E}}} +\providecommand{\bbF}{\ensuremath{\mathbb{F}}} +\providecommand{\bbG}{\ensuremath{\mathbb{G}}} +\providecommand{\bbH}{\ensuremath{\mathbb{H}}} +\providecommand{\bbI}{\ensuremath{\mathbb{I}}} +\providecommand{\bbJ}{\ensuremath{\mathbb{J}}} +\providecommand{\bbK}{\ensuremath{\mathbb{K}}} +\providecommand{\bbL}{\ensuremath{\mathbb{L}}} +\providecommand{\bbM}{\ensuremath{\mathbb{M}}} +\providecommand{\bbN}{\ensuremath{\mathbb{N}}} +\providecommand{\bbO}{\ensuremath{\mathbb{O}}} +\providecommand{\bbP}{\ensuremath{\mathbb{P}}} +\providecommand{\bbQ}{\ensuremath{\mathbb{Q}}} +\providecommand{\bbR}{\ensuremath{\mathbb{R}}} +\providecommand{\bbS}{\ensuremath{\mathbb{S}}} +\providecommand{\bbT}{\ensuremath{\mathbb{T}}} +\providecommand{\bbU}{\ensuremath{\mathbb{U}}} +\providecommand{\bbV}{\ensuremath{\mathbb{V}}} +\providecommand{\bbW}{\ensuremath{\mathbb{W}}} +\providecommand{\bbX}{\ensuremath{\mathbb{X}}} +\providecommand{\bbY}{\ensuremath{\mathbb{Y}}} +\providecommand{\bbZ}{\ensuremath{\mathbb{Z}}} %# mathcal 的捷径 %# Shortcuts for calligraphic shape -\def\mc#1{\ensuremath{\mathcal{#1}}} -\def\mcA{\ensuremath{\mathcal{A}}} -\def\mcB{\ensuremath{\mathcal{B}}} -\def\mcC{\ensuremath{\mathcal{C}}} -\def\mcD{\ensuremath{\mathcal{D}}} -\def\mcE{\ensuremath{\mathcal{E}}} -\def\mcF{\ensuremath{\mathcal{F}}} -\def\mcG{\ensuremath{\mathcal{G}}} -\def\mcH{\ensuremath{\mathcal{H}}} -\def\mcI{\ensuremath{\mathcal{I}}} -\def\mcJ{\ensuremath{\mathcal{J}}} -\def\mcK{\ensuremath{\mathcal{K}}} -\def\mcL{\ensuremath{\mathcal{L}}} -\def\mcM{\ensuremath{\mathcal{M}}} -\def\mcN{\ensuremath{\mathcal{N}}} -\def\mcO{\ensuremath{\mathcal{O}}} -\def\mcP{\ensuremath{\mathcal{P}}} -\def\mcQ{\ensuremath{\mathcal{Q}}} -\def\mcR{\ensuremath{\mathcal{R}}} -\def\mcS{\ensuremath{\mathcal{S}}} -\def\mcT{\ensuremath{\mathcal{T}}} -\def\mcU{\ensuremath{\mathcal{U}}} -\def\mcV{\ensuremath{\mathcal{V}}} -\def\mcW{\ensuremath{\mathcal{W}}} -\def\mcX{\ensuremath{\mathcal{X}}} -\def\mcY{\ensuremath{\mathcal{Y}}} -\def\mcZ{\ensuremath{\mathcal{Z}}} - -\def\cal#1{\ensuremath{\mathcal{#1}}} -\def\calA{\ensuremath{\mathcal{A}}} -\def\calB{\ensuremath{\mathcal{B}}} -\def\calC{\ensuremath{\mathcal{C}}} -\def\calD{\ensuremath{\mathcal{D}}} -\def\calE{\ensuremath{\mathcal{E}}} -\def\calF{\ensuremath{\mathcal{F}}} -\def\calG{\ensuremath{\mathcal{G}}} -\def\calH{\ensuremath{\mathcal{H}}} -\def\calI{\ensuremath{\mathcal{I}}} -\def\calJ{\ensuremath{\mathcal{J}}} -\def\calK{\ensuremath{\mathcal{K}}} -\def\calL{\ensuremath{\mathcal{L}}} -\def\calM{\ensuremath{\mathcal{M}}} -\def\calN{\ensuremath{\mathcal{N}}} -\def\calO{\ensuremath{\mathcal{O}}} -\def\calP{\ensuremath{\mathcal{P}}} -\def\calQ{\ensuremath{\mathcal{Q}}} -\def\calR{\ensuremath{\mathcal{R}}} -\def\calS{\ensuremath{\mathcal{S}}} -\def\calT{\ensuremath{\mathcal{T}}} -\def\calU{\ensuremath{\mathcal{U}}} -\def\calV{\ensuremath{\mathcal{V}}} -\def\calW{\ensuremath{\mathcal{W}}} -\def\calX{\ensuremath{\mathcal{X}}} -\def\calY{\ensuremath{\mathcal{Y}}} -\def\calZ{\ensuremath{\mathcal{Z}}} +\providecommand{\mc}[1]{\ensuremath{\mathcal{#1}}} +\providecommand{\mcA}{\ensuremath{\mathcal{A}}} +\providecommand{\mcB}{\ensuremath{\mathcal{B}}} +\providecommand{\mcC}{\ensuremath{\mathcal{C}}} +\providecommand{\mcD}{\ensuremath{\mathcal{D}}} +\providecommand{\mcE}{\ensuremath{\mathcal{E}}} +\providecommand{\mcF}{\ensuremath{\mathcal{F}}} +\providecommand{\mcG}{\ensuremath{\mathcal{G}}} +\providecommand{\mcH}{\ensuremath{\mathcal{H}}} +\providecommand{\mcI}{\ensuremath{\mathcal{I}}} +\providecommand{\mcJ}{\ensuremath{\mathcal{J}}} +\providecommand{\mcK}{\ensuremath{\mathcal{K}}} +\providecommand{\mcL}{\ensuremath{\mathcal{L}}} +\providecommand{\mcM}{\ensuremath{\mathcal{M}}} +\providecommand{\mcN}{\ensuremath{\mathcal{N}}} +\providecommand{\mcO}{\ensuremath{\mathcal{O}}} +\providecommand{\mcP}{\ensuremath{\mathcal{P}}} +\providecommand{\mcQ}{\ensuremath{\mathcal{Q}}} +\providecommand{\mcR}{\ensuremath{\mathcal{R}}} +\providecommand{\mcS}{\ensuremath{\mathcal{S}}} +\providecommand{\mcT}{\ensuremath{\mathcal{T}}} +\providecommand{\mcU}{\ensuremath{\mathcal{U}}} +\providecommand{\mcV}{\ensuremath{\mathcal{V}}} +\providecommand{\mcW}{\ensuremath{\mathcal{W}}} +\providecommand{\mcX}{\ensuremath{\mathcal{X}}} +\providecommand{\mcY}{\ensuremath{\mathcal{Y}}} +\providecommand{\mcZ}{\ensuremath{\mathcal{Z}}} + +\providecommand{\cal}[1]{\ensuremath{\mathcal{#1}}} +\providecommand{\calA}{\ensuremath{\mathcal{A}}} +\providecommand{\calB}{\ensuremath{\mathcal{B}}} +\providecommand{\calC}{\ensuremath{\mathcal{C}}} +\providecommand{\calD}{\ensuremath{\mathcal{D}}} +\providecommand{\calE}{\ensuremath{\mathcal{E}}} +\providecommand{\calF}{\ensuremath{\mathcal{F}}} +\providecommand{\calG}{\ensuremath{\mathcal{G}}} +\providecommand{\calH}{\ensuremath{\mathcal{H}}} +\providecommand{\calI}{\ensuremath{\mathcal{I}}} +\providecommand{\calJ}{\ensuremath{\mathcal{J}}} +\providecommand{\calK}{\ensuremath{\mathcal{K}}} +\providecommand{\calL}{\ensuremath{\mathcal{L}}} +\providecommand{\calM}{\ensuremath{\mathcal{M}}} +\providecommand{\calN}{\ensuremath{\mathcal{N}}} +\providecommand{\calO}{\ensuremath{\mathcal{O}}} +\providecommand{\calP}{\ensuremath{\mathcal{P}}} +\providecommand{\calQ}{\ensuremath{\mathcal{Q}}} +\providecommand{\calR}{\ensuremath{\mathcal{R}}} +\providecommand{\calS}{\ensuremath{\mathcal{S}}} +\providecommand{\calT}{\ensuremath{\mathcal{T}}} +\providecommand{\calU}{\ensuremath{\mathcal{U}}} +\providecommand{\calV}{\ensuremath{\mathcal{V}}} +\providecommand{\calW}{\ensuremath{\mathcal{W}}} +\providecommand{\calX}{\ensuremath{\mathcal{X}}} +\providecommand{\calY}{\ensuremath{\mathcal{Y}}} +\providecommand{\calZ}{\ensuremath{\mathcal{Z}}} %# mathfrak 的捷径 %# Shortcuts for Fraktur shape -\def\mf#1{\ensuremath{\mathfrak{#1}}} -\def\mfa{\ensuremath{\mathfrak{a}}} -\def\mfb{\ensuremath{\mathfrak{b}}} -\def\mfc{\ensuremath{\mathfrak{c}}} -\def\mfd{\ensuremath{\mathfrak{d}}} -\def\mfe{\ensuremath{\mathfrak{e}}} -\def\mff{\ensuremath{\mathfrak{f}}} -\def\mfg{\ensuremath{\mathfrak{g}}} -\def\mfh{\ensuremath{\mathfrak{h}}} -\def\mfi{\ensuremath{\mathfrak{i}}} -\def\mfj{\ensuremath{\mathfrak{j}}} -\def\mfk{\ensuremath{\mathfrak{k}}} -\def\mfl{\ensuremath{\mathfrak{l}}} -\def\mfm{\ensuremath{\mathfrak{m}}} -\def\mfn{\ensuremath{\mathfrak{n}}} -\def\mfo{\ensuremath{\mathfrak{o}}} -\def\mfp{\ensuremath{\mathfrak{p}}} -\def\mfq{\ensuremath{\mathfrak{q}}} -\def\mfr{\ensuremath{\mathfrak{r}}} -\def\mfs{\ensuremath{\mathfrak{s}}} -\def\mft{\ensuremath{\mathfrak{t}}} -\def\mfu{\ensuremath{\mathfrak{u}}} -\def\mfv{\ensuremath{\mathfrak{v}}} -\def\mfw{\ensuremath{\mathfrak{w}}} -\def\mfx{\ensuremath{\mathfrak{x}}} -\def\mfy{\ensuremath{\mathfrak{y}}} -\def\mfz{\ensuremath{\mathfrak{z}}} -\def\mfA{\ensuremath{\mathfrak{A}}} -\def\mfB{\ensuremath{\mathfrak{B}}} -\def\mfC{\ensuremath{\mathfrak{C}}} -\def\mfD{\ensuremath{\mathfrak{D}}} -\def\mfE{\ensuremath{\mathfrak{E}}} -\def\mfF{\ensuremath{\mathfrak{F}}} -\def\mfG{\ensuremath{\mathfrak{G}}} -\def\mfH{\ensuremath{\mathfrak{H}}} -\def\mfI{\ensuremath{\mathfrak{I}}} -\def\mfJ{\ensuremath{\mathfrak{J}}} -\def\mfK{\ensuremath{\mathfrak{K}}} -\def\mfL{\ensuremath{\mathfrak{L}}} -\def\mfM{\ensuremath{\mathfrak{M}}} -\def\mfN{\ensuremath{\mathfrak{N}}} -\def\mfO{\ensuremath{\mathfrak{O}}} -\def\mfP{\ensuremath{\mathfrak{P}}} -\def\mfQ{\ensuremath{\mathfrak{Q}}} -\def\mfR{\ensuremath{\mathfrak{R}}} -\def\mfS{\ensuremath{\mathfrak{S}}} -\def\mfT{\ensuremath{\mathfrak{T}}} -\def\mfU{\ensuremath{\mathfrak{U}}} -\def\mfV{\ensuremath{\mathfrak{V}}} -\def\mfW{\ensuremath{\mathfrak{W}}} -\def\mfX{\ensuremath{\mathfrak{X}}} -\def\mfY{\ensuremath{\mathfrak{Y}}} -\def\mfZ{\ensuremath{\mathfrak{Z}}} - -\def\frak#1{\ensuremath{\mathfrak{#1}}} -\def\fraka{\ensuremath{\mathfrak{a}}} -\def\frakb{\ensuremath{\mathfrak{b}}} -\def\frakc{\ensuremath{\mathfrak{c}}} -\def\frakd{\ensuremath{\mathfrak{d}}} -\def\frake{\ensuremath{\mathfrak{e}}} -\def\frakf{\ensuremath{\mathfrak{f}}} -\def\frakg{\ensuremath{\mathfrak{g}}} -\def\frakh{\ensuremath{\mathfrak{h}}} -\def\fraki{\ensuremath{\mathfrak{i}}} -\def\frakj{\ensuremath{\mathfrak{j}}} -\def\frakk{\ensuremath{\mathfrak{k}}} -\def\frakl{\ensuremath{\mathfrak{l}}} -\def\frakm{\ensuremath{\mathfrak{m}}} -\def\frakn{\ensuremath{\mathfrak{n}}} -\def\frako{\ensuremath{\mathfrak{o}}} -\def\frakp{\ensuremath{\mathfrak{p}}} -\def\frakq{\ensuremath{\mathfrak{q}}} -\def\frakr{\ensuremath{\mathfrak{r}}} -\def\fraks{\ensuremath{\mathfrak{s}}} -\def\frakt{\ensuremath{\mathfrak{t}}} -\def\fraku{\ensuremath{\mathfrak{u}}} -\def\frakv{\ensuremath{\mathfrak{v}}} -\def\frakw{\ensuremath{\mathfrak{w}}} -\def\frakx{\ensuremath{\mathfrak{x}}} -\def\fraky{\ensuremath{\mathfrak{y}}} -\def\frakz{\ensuremath{\mathfrak{z}}} -\def\frakA{\ensuremath{\mathfrak{A}}} -\def\frakB{\ensuremath{\mathfrak{B}}} -\def\frakC{\ensuremath{\mathfrak{C}}} -\def\frakD{\ensuremath{\mathfrak{D}}} -\def\frakE{\ensuremath{\mathfrak{E}}} -\def\frakF{\ensuremath{\mathfrak{F}}} -\def\frakG{\ensuremath{\mathfrak{G}}} -\def\frakH{\ensuremath{\mathfrak{H}}} -\def\frakI{\ensuremath{\mathfrak{I}}} -\def\frakJ{\ensuremath{\mathfrak{J}}} -\def\frakK{\ensuremath{\mathfrak{K}}} -\def\frakL{\ensuremath{\mathfrak{L}}} -\def\frakM{\ensuremath{\mathfrak{M}}} -\def\frakN{\ensuremath{\mathfrak{N}}} -\def\frakO{\ensuremath{\mathfrak{O}}} -\def\frakP{\ensuremath{\mathfrak{P}}} -\def\frakQ{\ensuremath{\mathfrak{Q}}} -\def\frakR{\ensuremath{\mathfrak{R}}} -\def\frakS{\ensuremath{\mathfrak{S}}} -\def\frakT{\ensuremath{\mathfrak{T}}} -\def\frakU{\ensuremath{\mathfrak{U}}} -\def\frakV{\ensuremath{\mathfrak{V}}} -\def\frakW{\ensuremath{\mathfrak{W}}} -\def\frakX{\ensuremath{\mathfrak{X}}} -\def\frakY{\ensuremath{\mathfrak{Y}}} -\def\frakZ{\ensuremath{\mathfrak{Z}}} +\providecommand{\mf}[1]{\ensuremath{\mathfrak{#1}}} +\providecommand{\mfa}{\ensuremath{\mathfrak{a}}} +\providecommand{\mfb}{\ensuremath{\mathfrak{b}}} +\providecommand{\mfc}{\ensuremath{\mathfrak{c}}} +\providecommand{\mfd}{\ensuremath{\mathfrak{d}}} +\providecommand{\mfe}{\ensuremath{\mathfrak{e}}} +\providecommand{\mff}{\ensuremath{\mathfrak{f}}} +\providecommand{\mfg}{\ensuremath{\mathfrak{g}}} +\providecommand{\mfh}{\ensuremath{\mathfrak{h}}} +\providecommand{\mfi}{\ensuremath{\mathfrak{i}}} +\providecommand{\mfj}{\ensuremath{\mathfrak{j}}} +\providecommand{\mfk}{\ensuremath{\mathfrak{k}}} +\providecommand{\mfl}{\ensuremath{\mathfrak{l}}} +\providecommand{\mfm}{\ensuremath{\mathfrak{m}}} +\providecommand{\mfn}{\ensuremath{\mathfrak{n}}} +\providecommand{\mfo}{\ensuremath{\mathfrak{o}}} +\providecommand{\mfp}{\ensuremath{\mathfrak{p}}} +\providecommand{\mfq}{\ensuremath{\mathfrak{q}}} +\providecommand{\mfr}{\ensuremath{\mathfrak{r}}} +\providecommand{\mfs}{\ensuremath{\mathfrak{s}}} +\providecommand{\mft}{\ensuremath{\mathfrak{t}}} +\providecommand{\mfu}{\ensuremath{\mathfrak{u}}} +\providecommand{\mfv}{\ensuremath{\mathfrak{v}}} +\providecommand{\mfw}{\ensuremath{\mathfrak{w}}} +\providecommand{\mfx}{\ensuremath{\mathfrak{x}}} +\providecommand{\mfy}{\ensuremath{\mathfrak{y}}} +\providecommand{\mfz}{\ensuremath{\mathfrak{z}}} +\providecommand{\mfA}{\ensuremath{\mathfrak{A}}} +\providecommand{\mfB}{\ensuremath{\mathfrak{B}}} +\providecommand{\mfC}{\ensuremath{\mathfrak{C}}} +\providecommand{\mfD}{\ensuremath{\mathfrak{D}}} +\providecommand{\mfE}{\ensuremath{\mathfrak{E}}} +\providecommand{\mfF}{\ensuremath{\mathfrak{F}}} +\providecommand{\mfG}{\ensuremath{\mathfrak{G}}} +\providecommand{\mfH}{\ensuremath{\mathfrak{H}}} +\providecommand{\mfI}{\ensuremath{\mathfrak{I}}} +\providecommand{\mfJ}{\ensuremath{\mathfrak{J}}} +\providecommand{\mfK}{\ensuremath{\mathfrak{K}}} +\providecommand{\mfL}{\ensuremath{\mathfrak{L}}} +\providecommand{\mfM}{\ensuremath{\mathfrak{M}}} +\providecommand{\mfN}{\ensuremath{\mathfrak{N}}} +\providecommand{\mfO}{\ensuremath{\mathfrak{O}}} +\providecommand{\mfP}{\ensuremath{\mathfrak{P}}} +\providecommand{\mfQ}{\ensuremath{\mathfrak{Q}}} +\providecommand{\mfR}{\ensuremath{\mathfrak{R}}} +\providecommand{\mfS}{\ensuremath{\mathfrak{S}}} +\providecommand{\mfT}{\ensuremath{\mathfrak{T}}} +\providecommand{\mfU}{\ensuremath{\mathfrak{U}}} +\providecommand{\mfV}{\ensuremath{\mathfrak{V}}} +\providecommand{\mfW}{\ensuremath{\mathfrak{W}}} +\providecommand{\mfX}{\ensuremath{\mathfrak{X}}} +\providecommand{\mfY}{\ensuremath{\mathfrak{Y}}} +\providecommand{\mfZ}{\ensuremath{\mathfrak{Z}}} + +\providecommand{\frak}[1]{\ensuremath{\mathfrak{#1}}} +\providecommand{\fraka}{\ensuremath{\mathfrak{a}}} +\providecommand{\frakb}{\ensuremath{\mathfrak{b}}} +\providecommand{\frakc}{\ensuremath{\mathfrak{c}}} +\providecommand{\frakd}{\ensuremath{\mathfrak{d}}} +\providecommand{\frake}{\ensuremath{\mathfrak{e}}} +\providecommand{\frakf}{\ensuremath{\mathfrak{f}}} +\providecommand{\frakg}{\ensuremath{\mathfrak{g}}} +\providecommand{\frakh}{\ensuremath{\mathfrak{h}}} +\providecommand{\fraki}{\ensuremath{\mathfrak{i}}} +\providecommand{\frakj}{\ensuremath{\mathfrak{j}}} +\providecommand{\frakk}{\ensuremath{\mathfrak{k}}} +\providecommand{\frakl}{\ensuremath{\mathfrak{l}}} +\providecommand{\frakm}{\ensuremath{\mathfrak{m}}} +\providecommand{\frakn}{\ensuremath{\mathfrak{n}}} +\providecommand{\frako}{\ensuremath{\mathfrak{o}}} +\providecommand{\frakp}{\ensuremath{\mathfrak{p}}} +\providecommand{\frakq}{\ensuremath{\mathfrak{q}}} +\providecommand{\frakr}{\ensuremath{\mathfrak{r}}} +\providecommand{\fraks}{\ensuremath{\mathfrak{s}}} +\providecommand{\frakt}{\ensuremath{\mathfrak{t}}} +\providecommand{\fraku}{\ensuremath{\mathfrak{u}}} +\providecommand{\frakv}{\ensuremath{\mathfrak{v}}} +\providecommand{\frakw}{\ensuremath{\mathfrak{w}}} +\providecommand{\frakx}{\ensuremath{\mathfrak{x}}} +\providecommand{\fraky}{\ensuremath{\mathfrak{y}}} +\providecommand{\frakz}{\ensuremath{\mathfrak{z}}} +\providecommand{\frakA}{\ensuremath{\mathfrak{A}}} +\providecommand{\frakB}{\ensuremath{\mathfrak{B}}} +\providecommand{\frakC}{\ensuremath{\mathfrak{C}}} +\providecommand{\frakD}{\ensuremath{\mathfrak{D}}} +\providecommand{\frakE}{\ensuremath{\mathfrak{E}}} +\providecommand{\frakF}{\ensuremath{\mathfrak{F}}} +\providecommand{\frakG}{\ensuremath{\mathfrak{G}}} +\providecommand{\frakH}{\ensuremath{\mathfrak{H}}} +\providecommand{\frakI}{\ensuremath{\mathfrak{I}}} +\providecommand{\frakJ}{\ensuremath{\mathfrak{J}}} +\providecommand{\frakK}{\ensuremath{\mathfrak{K}}} +\providecommand{\frakL}{\ensuremath{\mathfrak{L}}} +\providecommand{\frakM}{\ensuremath{\mathfrak{M}}} +\providecommand{\frakN}{\ensuremath{\mathfrak{N}}} +\providecommand{\frakO}{\ensuremath{\mathfrak{O}}} +\providecommand{\frakP}{\ensuremath{\mathfrak{P}}} +\providecommand{\frakQ}{\ensuremath{\mathfrak{Q}}} +\providecommand{\frakR}{\ensuremath{\mathfrak{R}}} +\providecommand{\frakS}{\ensuremath{\mathfrak{S}}} +\providecommand{\frakT}{\ensuremath{\mathfrak{T}}} +\providecommand{\frakU}{\ensuremath{\mathfrak{U}}} +\providecommand{\frakV}{\ensuremath{\mathfrak{V}}} +\providecommand{\frakW}{\ensuremath{\mathfrak{W}}} +\providecommand{\frakX}{\ensuremath{\mathfrak{X}}} +\providecommand{\frakY}{\ensuremath{\mathfrak{Y}}} +\providecommand{\frakZ}{\ensuremath{\mathfrak{Z}}} %# mathscr 的捷径 %# Shortcuts for script shape -\def\ms#1{\ensuremath{\mathscr{#1}}} -\def\msA{\ensuremath{\mathscr{A}}} -\def\msB{\ensuremath{\mathscr{B}}} -\def\msC{\ensuremath{\mathscr{C}}} -\def\msD{\ensuremath{\mathscr{D}}} -\def\msE{\ensuremath{\mathscr{E}}} -\def\msF{\ensuremath{\mathscr{F}}} -\def\msG{\ensuremath{\mathscr{G}}} -\def\msH{\ensuremath{\mathscr{H}}} -\def\msI{\ensuremath{\mathscr{I}}} -\def\msJ{\ensuremath{\mathscr{J}}} -\def\msK{\ensuremath{\mathscr{K}}} -\def\msL{\ensuremath{\mathscr{L}}} -\def\msM{\ensuremath{\mathscr{M}}} -\def\msN{\ensuremath{\mathscr{N}}} -\def\msO{\ensuremath{\mathscr{O}}} -\def\msP{\ensuremath{\mathscr{P}}} -\def\msQ{\ensuremath{\mathscr{Q}}} -\def\msR{\ensuremath{\mathscr{R}}} -\def\msS{\ensuremath{\mathscr{S}}} -\def\msT{\ensuremath{\mathscr{T}}} -\def\msU{\ensuremath{\mathscr{U}}} -\def\msV{\ensuremath{\mathscr{V}}} -\def\msW{\ensuremath{\mathscr{W}}} -\def\msX{\ensuremath{\mathscr{X}}} -\def\msY{\ensuremath{\mathscr{Y}}} -\def\msZ{\ensuremath{\mathscr{Z}}} - -\def\scr#1{\ensuremath{\mathscr{#1}}} -\def\scrA{\ensuremath{\mathscr{A}}} -\def\scrB{\ensuremath{\mathscr{B}}} -\def\scrC{\ensuremath{\mathscr{C}}} -\def\scrD{\ensuremath{\mathscr{D}}} -\def\scrE{\ensuremath{\mathscr{E}}} -\def\scrF{\ensuremath{\mathscr{F}}} -\def\scrG{\ensuremath{\mathscr{G}}} -\def\scrH{\ensuremath{\mathscr{H}}} -\def\scrI{\ensuremath{\mathscr{I}}} -\def\scrJ{\ensuremath{\mathscr{J}}} -\def\scrK{\ensuremath{\mathscr{K}}} -\def\scrL{\ensuremath{\mathscr{L}}} -\def\scrM{\ensuremath{\mathscr{M}}} -\def\scrN{\ensuremath{\mathscr{N}}} -\def\scrO{\ensuremath{\mathscr{O}}} -\def\scrP{\ensuremath{\mathscr{P}}} -\def\scrQ{\ensuremath{\mathscr{Q}}} -\def\scrR{\ensuremath{\mathscr{R}}} -\def\scrS{\ensuremath{\mathscr{S}}} -\def\scrT{\ensuremath{\mathscr{T}}} -\def\scrU{\ensuremath{\mathscr{U}}} -\def\scrV{\ensuremath{\mathscr{V}}} -\def\scrW{\ensuremath{\mathscr{W}}} -\def\scrX{\ensuremath{\mathscr{X}}} -\def\scrY{\ensuremath{\mathscr{Y}}} -\def\scrZ{\ensuremath{\mathscr{Z}}} +\providecommand{\ms}[1]{\ensuremath{\mathscr{#1}}} +\providecommand{\msA}{\ensuremath{\mathscr{A}}} +\providecommand{\msB}{\ensuremath{\mathscr{B}}} +\providecommand{\msC}{\ensuremath{\mathscr{C}}} +\providecommand{\msD}{\ensuremath{\mathscr{D}}} +\providecommand{\msE}{\ensuremath{\mathscr{E}}} +\providecommand{\msF}{\ensuremath{\mathscr{F}}} +\providecommand{\msG}{\ensuremath{\mathscr{G}}} +\providecommand{\msH}{\ensuremath{\mathscr{H}}} +\providecommand{\msI}{\ensuremath{\mathscr{I}}} +\providecommand{\msJ}{\ensuremath{\mathscr{J}}} +\providecommand{\msK}{\ensuremath{\mathscr{K}}} +\providecommand{\msL}{\ensuremath{\mathscr{L}}} +\providecommand{\msM}{\ensuremath{\mathscr{M}}} +\providecommand{\msN}{\ensuremath{\mathscr{N}}} +\providecommand{\msO}{\ensuremath{\mathscr{O}}} +\providecommand{\msP}{\ensuremath{\mathscr{P}}} +\providecommand{\msQ}{\ensuremath{\mathscr{Q}}} +\providecommand{\msR}{\ensuremath{\mathscr{R}}} +\providecommand{\msS}{\ensuremath{\mathscr{S}}} +\providecommand{\msT}{\ensuremath{\mathscr{T}}} +\providecommand{\msU}{\ensuremath{\mathscr{U}}} +\providecommand{\msV}{\ensuremath{\mathscr{V}}} +\providecommand{\msW}{\ensuremath{\mathscr{W}}} +\providecommand{\msX}{\ensuremath{\mathscr{X}}} +\providecommand{\msY}{\ensuremath{\mathscr{Y}}} +\providecommand{\msZ}{\ensuremath{\mathscr{Z}}} + +\providecommand{\scr}[1]{\ensuremath{\mathscr{#1}}} +\providecommand{\scrA}{\ensuremath{\mathscr{A}}} +\providecommand{\scrB}{\ensuremath{\mathscr{B}}} +\providecommand{\scrC}{\ensuremath{\mathscr{C}}} +\providecommand{\scrD}{\ensuremath{\mathscr{D}}} +\providecommand{\scrE}{\ensuremath{\mathscr{E}}} +\providecommand{\scrF}{\ensuremath{\mathscr{F}}} +\providecommand{\scrG}{\ensuremath{\mathscr{G}}} +\providecommand{\scrH}{\ensuremath{\mathscr{H}}} +\providecommand{\scrI}{\ensuremath{\mathscr{I}}} +\providecommand{\scrJ}{\ensuremath{\mathscr{J}}} +\providecommand{\scrK}{\ensuremath{\mathscr{K}}} +\providecommand{\scrL}{\ensuremath{\mathscr{L}}} +\providecommand{\scrM}{\ensuremath{\mathscr{M}}} +\providecommand{\scrN}{\ensuremath{\mathscr{N}}} +\providecommand{\scrO}{\ensuremath{\mathscr{O}}} +\providecommand{\scrP}{\ensuremath{\mathscr{P}}} +\providecommand{\scrQ}{\ensuremath{\mathscr{Q}}} +\providecommand{\scrR}{\ensuremath{\mathscr{R}}} +\providecommand{\scrS}{\ensuremath{\mathscr{S}}} +\providecommand{\scrT}{\ensuremath{\mathscr{T}}} +\providecommand{\scrU}{\ensuremath{\mathscr{U}}} +\providecommand{\scrV}{\ensuremath{\mathscr{V}}} +\providecommand{\scrW}{\ensuremath{\mathscr{W}}} +\providecommand{\scrX}{\ensuremath{\mathscr{X}}} +\providecommand{\scrY}{\ensuremath{\mathscr{Y}}} +\providecommand{\scrZ}{\ensuremath{\mathscr{Z}}} %%================================ %% General symbols @@ -1393,18 +1393,25 @@ %# 不编号定理类环境 %# Do not number theorem-like environments \DeclareBoolOption[false]{nothmnum} +%# 指定如何编号定理类环境 +%# Number theorem-like environments With ... +\DeclareStringOption{thmnum}[PJL@thmnum@default] %# 草稿模式或快速模式 %# Draft mode or fast mode \DeclareBoolOption[false]{draft} \DeclareBoolOption[false]{fast} %# 引用的名称将随当前语言的不同而改变 %# Reference name will change with the current language -\DeclareBoolOption[false]{regionalref} +\DeclareBoolOption[true]{regionalref} +\DeclareBoolOption[false]{originalref} %# 处理选项 %# Process options \ProcessKeyvalOptions*\relax %# 下面的代码设定了选项之间的关系 %# The following code sets the relationship between options +\if@PJLthm@originalref + \@PJLthm@regionalreffalse +\fi \if@PJLthm@draft \@PJLthm@fasttrue \fi @@ -1952,8 +1959,22 @@ }{ \newaliascnt{PJLthm@highest}{section} } +%# 按照 thmnum 决定定理类环境如何编号 +%# Number the theorem-like environment with respect to thmnum +\NewDocumentCommand{\CreateTheorem@thmnum}{m}{ + \expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ + \CreateTheorem{#1} + }{ + \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ + \CreateTheorem{#1} + }{ + \CreateTheorem{#1}<\@PJLthm@thmnum> + } + } +} %# 建立定理类环境 %# Setup theorem-like environments +\AtEndPreamble{ \if@PJLthm@nothms\else \if@PJLthm@nothmnum \CreateTheorem*{theorem} @@ -1966,7 +1987,7 @@ \CreateTheorem*{fact} \CreateTheorem*{conjecture} \else -\CreateTheorem{theorem} +\CreateTheorem@thmnum{theorem} \CreateTheorem{lemma}[theorem] \CreateTheorem{proposition}[theorem] \CreateTheorem{corollary}[theorem] @@ -2026,14 +2047,27 @@ \CreateTheorem*{remark} \CreateTheorem*{observation} \else -\CreateTheorem{remark} -\CreateTheorem{observation} +\CreateTheorem@thmnum{remark} +\CreateTheorem@thmnum{observation} \fi \CreateTheorem*{remark*} \CreateTheorem*{observation*} \fi +} -\numberwithin{equation}{PJLthm@highest} +%# 按照 thmnum 决定公式如何编号 +%# Number the equations with respect to thmnum +\expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ +% thmnum is not used. + \numberwithin{equation}{PJLthm@highest} +}{ + \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ +% thmnum is used, with no value. + }{ +% thmnum is used, with value \@PJLthm@thmnum. + \numberwithin{equation}{\@PJLthm@thmnum} + } +} %# 一些 cref 的本地化 %# Some localization of cref @@ -2137,11 +2171,14 @@ \DeclareBoolOption[false]{amsfashion} \DeclareBoolOption[false]{nothms} \DeclareBoolOption[false]{nothmnum} -\DeclareBoolOption[false]{regionalref} +\DeclareStringOption{thmnum}[PJL@thmnum@default] +\DeclareBoolOption[true]{regionalref} +\DeclareBoolOption[false]{originalref} \DeclareBoolOption[false]{useosf} \DeclareBoolOption[false]{palatino} \DeclareBoolOption[false]{times} \DeclareBoolOption[false]{garamond} +\DeclareBoolOption[false]{noto} \DeclareBoolOption[false]{biolinum} %# 处理选项 %# Process options @@ -2149,6 +2186,9 @@ %# 下面的代码设定了选项之间的关系 %# The following code sets the relationship between options +\if@ProjLib@originalref + \@ProjLib@regionalreffalse +\fi \if@ProjLib@draft \@ProjLib@fasttrue \fi @@ -2167,8 +2207,15 @@ \if@ProjLib@nothmnum \PassOptionsToPackage{nothmnum}{PJLthm} \fi -\if@ProjLib@regionalref - \PassOptionsToPackage{regionalref}{PJLthm} +\expandafter\ifstrempty\expandafter{\@ProjLib@thmnum}{}{ + \expandafter\ifstrequal\expandafter{\@ProjLib@thmnum}{PJL@thmnum@default}{ + \PassOptionsToPackage{thmnum}{PJLthm} + }{ + \PassOptionsToPackage{thmnum=\@ProjLib@thmnum}{PJLthm} + } +} +\if@ProjLib@regionalref\else + \PassOptionsToPackage{originalref}{PJLthm} \fi %# 加载不默认载入的组件 @@ -2228,6 +2275,15 @@ \PJLsetlinespacing{\setstretch{1.00}} \fi +\if@ProjLib@noto + \if@ProjLib@useosf + \PassOptionsToPackage{oldstyle}{notomath} + \fi + \RequirePackage{anyfontsize} + \RequirePackage{notomath} + \PJLsetlinespacing{\setstretch{1.00}} +\fi + \if@ProjLib@biolinum % \RequirePackage{amssymb} % \RequirePackage{mathpazo} -- cgit v1.2.3