diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/projlib/ProjLib-doc-cn.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/projlib/ProjLib-doc-cn.tex | 648 |
1 files changed, 0 insertions, 648 deletions
diff --git a/Master/texmf-dist/doc/latex/projlib/ProjLib-doc-cn.tex b/Master/texmf-dist/doc/latex/projlib/ProjLib-doc-cn.tex deleted file mode 100644 index 7ebbafdb8be..00000000000 --- a/Master/texmf-dist/doc/latex/projlib/ProjLib-doc-cn.tex +++ /dev/null @@ -1,648 +0,0 @@ -\documentclass[allowbf,puretext]{lebhart} - -%%================================ -%% Import toolkit -%%================================ -\usepackage{ProjLib} -\usepackage{longtable} % breakable tables -\usepackage{hologo} % more TeX logo -\usepackage{multicol} -\setlength{\columnsep}{2em} -\setlength{\columnseprule}{.75pt} -\def\columnseprulecolor{\color{gray!55}} - -\UseLanguage{Chinese} - -%%================================ -%% For typesetting code -%%================================ -\usepackage{listings} -\definecolor{lightergray}{gray}{0.99} -\lstset{language=[LaTeX]TeX, - keywordstyle=\color{maintheme}, - basicstyle=\ttfamily, - commentstyle=\color{forestgreen}\ttfamily, - stringstyle=\rmfamily, - showstringspaces=false, - breaklines=true, - frame=lines, - backgroundcolor=\color{lightergray}, - flexiblecolumns=true, - escapeinside={(*}{*)}, - % numbers=left, - numberstyle=\scriptsize, stepnumber=1, numbersep=5pt, - % firstnumber=last, -} -\providecommand{\meta}[1]{$\langle${\normalfont\itshape#1}$\rangle$} -\lstset{moretexcs=% - {color,NameTheorem,CreateTheorem,proofideanameCN,proofideanameEN,proofideanameFR,cref,dnf,needgraph,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,TheDate,PLdate,PJLdate,ProjLib, - mathfrak,mf,frak,mfA,mathbb,bb,N,Z,Q,R,C,F,A,mathcal,mc,cal,mathscr,ms,scr, - abs,norm,injection,surjection,bijection,legendre,tlegendre,dlegendre,pmod - } -} -\lstnewenvironment{code}% -{\setkeys{lst}{columns=fullflexible,keepspaces=true}}{} -\lstnewenvironment{code*}% -{\setkeys{lst}{numbers=left,columns=fullflexible,keepspaces=true}}{} - -%%================================ -%% tip -%%================================ -\newenvironment{tip}[1][提示]{% - \begin{tcolorbox}[breakable, - enhanced, - width = \textwidth, - colback = paper, colbacktitle = paper, - colframe = gray!50, boxrule=0.2mm, - coltitle = black, - fonttitle = \sffamily, - attach boxed title to top left = {yshift=-\tcboxedtitleheight/2, xshift=.5cm}, - boxed title style = {boxrule=0pt, colframe=paper}, - before skip = 0.3cm, - after skip = 0.3cm, - top = 3mm, - bottom = 3mm, - title={\scshape\sffamily #1}]% -}{\end{tcolorbox}} - -%%================================ -%% Names -%%================================ -\providecommand{\ProjLibPackage}{\mbox{\textsf{ProjLib}}} -\providecommand{\PJLauthor}{\mbox{\textsf{PJLauthor}}} -\providecommand{\PJLdatePackage}{\mbox{\textsf{PJLdate}}} -\providecommand{\PJLdraft}{\mbox{\textsf{PJLdraft}}} -\providecommand{\PJLlang}{\mbox{\textsf{PJLlang}}} -\providecommand{\PJLlogo}{\mbox{\textsf{PJLlogo}}} -\providecommand{\PJLmath}{\mbox{\textsf{PJLmath}}} -\providecommand{\PJLpaper}{\mbox{\textsf{PJLpaper}}} -\providecommand{\PJLthm}{\mbox{\textsf{PJLthm}}} - -%%================================ -%% Main text -%%================================ -\begin{document} - -\title{\ProjLib{} 工具集\\[.3\baselineskip]\normalsize 使用指南} -\author{许锦文} -\thanks{对应版本.~~\texttt{\ProjLib{}~2021/12/16}} -\email{\href{mailto:ProjLib@outlook.com}{ProjLib@outlook.com}} -\date{2021年12月,巴黎} - -\maketitle - -\begin{abstract} - \ProjLib{} 工具集之设计目的为简化 \LaTeX{} 文档撰写前的准备工作。只需要加载 \ProjLibPackage{},多语言设置就已准备就绪,定理类环境已被设置好可供直接使用,并且引入了一系列辅助功能。 -\end{abstract} - -\begin{multicols}{2} - \small - \tableofcontents -\end{multicols} - -\medskip - -\section*{开始之前} -\addcontentsline{toc}{section}{开始之前} - -为了使用这套工具集,你需要: -\begin{itemize} - \item 安装一个尽可能新版本的 TeX Live 或 MikTeX 套装,并确保 \texttt{projlib} 被正确安装在你的 \TeX 封装中。 - \item 熟悉 \LaTeX{} 的基本使用方式,并且知道如何用 \hologo{pdfLaTeX}、\hologo{XeLaTeX} 或 \hologo{LuaLaTeX} 编译你的文档。 -\end{itemize} - -\section{简介} - -\ProjLib{} 这一名称可以看成是英文 Project Library (项目库) 或法文 Projet Libre (自由项目) 的缩写 (作者更喜欢法文的全称)。其主要目的是提供多语言支持和带有智能引用的定理类环境。除此之外,还附加了一些额外功能,如支持作者附加信息、未完成标记、数学符号与捷径等。 - -\ProjLib{} 工具箱由主宏包 \ProjLibPackage{} 以及一系列由“PJL”缩写开头的内部组件构成。你可以通过下一节的使用实例来了解它的使用方式。 - -\section{使用示例} - -\subsection{如何加载} - -加载 \ProjLib{} 工具箱十分容易,只需要在导言部分加入这一行即可: - -\begin{code} -\usepackage{ProjLib} -\end{code} - -\begin{tip}[注意事项] - 由于其内部使用了 \textsf{cleveref},\ProjLibPackage{} 需要放在 \textsf{varioref}、\textsf{hyperref} 的后面。 -\end{tip} - -\subsection{一篇完整的文档示例} - -首先来看一段完整的示例。 - -\begin{code*} -\documentclass{article} -\usepackage[a4paper,margin=.75in]{geometry} -\usepackage[hidelinks]{hyperref} -\usepackage[palatino]{ProjLib} % Load the toolkit and use font Palatino - -\UseLanguage{French} % Use French from here - -\begin{document} - -\title{(*\meta{title}*)} -\author{(*\meta{author}*)} -\date{\PLdate{2022-04-01}} - -\maketitle - -\begin{abstract} - (*\meta{abstract text}*) \dnf<(*\meta{some hint}*)> -\end{abstract} - -\section{Un théorème} - -\begin{theorem}\label{thm:abc} - Ceci est un théorème. -\end{theorem} - -Référence du théorème: \cref{thm:abc} % It is recommended to use clever reference - -\end{document} -\end{code*} - -\bigskip - -如果你觉得这个例子有些复杂,不要担心。现在我们来一点点地观察这个例子。 - -\clearpage -\subsubsection{初始化部分} - -\begin{code} -\documentclass{article} -\usepackage[a4paper,margin=.75in]{geometry} -\usepackage[hidelinks]{hyperref} -\usepackage[palatino]{ProjLib} -\end{code} - -在标准文档类中,通常只需简要设置页面尺寸、超链接,再载入 \ProjLibPackage{},即可直接开始写作。这里使用了 \ProjLibPackage{} 的 \texttt{palatino} 字体选项。关于 \ProjLibPackage{} 的所有可用选项,可以参阅下一节。 - -当然,你也可以使用 \textsf{amsart} 文档类,设置是相同的。 - -\subsubsection{设定语言} - -\begin{code} -\UseLanguage{French} -\end{code} - -这一行表明文档中将使用法语(如果你的文章中只出现英语,那么可以不需要设定语言)。你也可以在文章中间用同样的方式再次切换语言。支持的语言包括简体中文、繁体中文、日文、英语、法语、德语、西班牙语、葡萄牙语、巴西葡萄牙语、俄语\footnote{不过,你需要自行引入相应语言的支持与字体。例如,对于中文,你可能需要载入 \textsf{ctex} 宏包并设置字体。作为补充,你可以尝试作者的 \textsf{einfart} 或 \textsf{lebhart} 文档类,其中相应的设置都已经完成了,详细资料可以通过 \lstinline|texdoc minimalist| 或 \lstinline|texdoc colorist| 获知。}。 - -对于这一命令的详细说明以及更多相关命令,可以参考后面关于多语言支持的小节。 - -\subsubsection{标题与作者信息} - -\begin{code} -\title{(*\meta{title}*)} -\author{(*\meta{author}*)} -\date{\PLdate{2022-04-01}} -\end{code} - -这一部分是标题和作者信息块。这个例子中给出的是最基本的形式,事实上你还可以这样写: -\begin{code} -\author{(*\meta{author 1}*)} -\address{(*\meta{address 1}*)} -\email{(*\meta{email 1}*)} -\author{(*\meta{author 2}*)} -\address{(*\meta{address 2}*)} -\email{(*\meta{email 2}*)} -... -\end{code} - -另外,如果开启 \AmS{} 风格,那么文章中还可以采用 \AmS{} 文档类的写法 (此时原始的写法也是成立的)。为此,引入 \ProjLibPackage{} 时应该加入 \texttt{amsfashion} 选项\footnote{由于这一选项会修改\LaTeX{} 的一些内部指令,有可能与一些宏包或文档类发生冲突,因此没有默认启用。}: -\begin{code} -\usepackage[amsfashion,palatino]{ProjLib} -\end{code} -而相应地,你也就可以使用这些命令: -\begin{code} -\dedicatory{(*\meta{dedicatory}*)} -\subjclass{*****} -\keywords{(*\meta{keywords}*)} -\end{code} -另外,这种情况下,也可以允许摘要出现在 \lstinline|\maketitle| 的前面,如同在 \AmS{} 文档类中所要求的那样: -\begin{code} -\begin{abstract} - (*\meta{abstract text}*) -\end{abstract} -\maketitle -\end{code} - -\subsubsection{未完成标记} -\begin{code} -\dnf<(*\meta{some hint}*)> -\end{code} -当你有一些地方尚未完成的时候,可以用这条指令标记出来,它在草稿阶段格外有用。 - -\subsubsection{定理类环境} -\begin{code} -\begin{theorem}\label{thm:abc} - Ceci est un théorème. -\end{theorem} -Référence du théorème: \cref{thm:abc} -\end{code} - -常见的定理类环境可以直接使用。在引用的时候,建议采用智能引用 \lstinline|\cref{|\meta{label}\lstinline|}|——这样就不必每次都写上相应环境的名称了。 - -\clearpage -\section{主宏包的选项} - -\ProjLibPackage{} 提供下列选项以供选择: -\begin{itemize} - \item \texttt{draft} 或 \texttt{fast} - \begin{itemize} - \item 快速模式。功能会适当缩减,但能够提高编译速度,建议在撰写阶段使用。 - \end{itemize} - \item \texttt{palatino}、\texttt{times}、\texttt{garamond}、\texttt{noto}、\texttt{biolinum} ~$|$~ \texttt{useosf} - \begin{itemize} - \item 字体选项。顾名思义,会加载相应名称的字体。 - \item \texttt{useosf} 选项用来启用“旧式”数字。 - \end{itemize} - \item \texttt{nothms}、\texttt{delaythms}、\texttt{nothmnum}、\texttt{thmnum} 或 \texttt{thmnum=}\meta{counter}、\texttt{complexname}、\texttt{simplename}、\texttt{regionalref}、\texttt{originalref} - \begin{itemize} - \item 来自用于设置定理类环境的组件 \PJLthm{} 的选项,详细信息请参阅有关这一宏包的小节。 - \end{itemize} - \item \texttt{author} - \begin{itemize} - \item 加载用于增强作者信息块的组件 \PJLauthor{}。关于其详细功能,请参阅有关该宏包的小节。 - \end{itemize} - \item \texttt{amsfashion} - \begin{itemize} - \item 允许 \AmS{} 文档类的写法。此时 \texttt{author} 选项会被自动开启。 - \end{itemize} -\end{itemize} -另外,还有一些组件的参数可以作为文档类的全局参数传递,例如 \texttt{EN} / \texttt{english} / \texttt{English}、\texttt{CN} / \texttt{chinese} / \texttt{Chinese} 等语言选项 (来自 \PJLlang{}),\texttt{paperstyle} 和 \texttt{preview} 等纸张选项 (来自 \PJLpaper{})。详细信息可以参阅对应的小节。 - -\clearpage - -\section{具体组件} - -\subsection{主要功能} - -\subsubsection{PJLlang:多语言支持} - -\PJLlang{} 提供了多语言支持,包括简体中文、繁体中文、英文、法文、德文、日文、俄文 (其中中文、日文、俄文需要相应的 \TeX{} 引擎与字体支持)。 - -\medskip -\PJLlang{} 提供语言选项,这些选项的名称有三种,分别是缩写(如 \texttt{EN})、小写(如 \texttt{english})、首字母大写(如 \texttt{English})。具体的选项名称可以参见下文的 \meta{language name}。其中,第一个指定的语言 \meta{first language} 会被作为默认语言,相当于在文档开头指定 \lstinline|\UseLanguage{|\meta{first language}\lstinline|}|。 - -\begin{tip} - 为了提高编译速度,建议使用语言选项,并将其作为全局参数传递。这样,只会对指定语言进行设置,节省了 \TeX{} 内存,从而能显著提高编译速度。 -\end{tip} - -\medskip -在文档中,可以通过下列命令来选定语言: -\begin{itemize} - \item \lstinline|\UseLanguage{|\meta{language name}\lstinline|}|,用于指定语言,在其后将使用对应的语言设定。 - \begin{itemize} - \item 既可以用于导言部分,也可以用于正文部分。在不指定语言时,默认选定 “English”。 - \end{itemize} - \item \lstinline|\UseOtherLanguage{|\meta{language name}\lstinline|}{|\meta{content}\lstinline|}|,用指定的语言的设定排版 \meta{content}。 - \begin{itemize} - \item 相比较 \lstinline|\UseLanguage|,它不会对行距进行修改,因此中西文字混排时能够保持行距稳定。 - \end{itemize} -\end{itemize} - -\medskip -\meta{language name} 有下列选择 (不区分大小写,如 \texttt{French} 或 \texttt{french} 均可): -\begin{itemize}\setstretch{1.15} - \item 简体中文:\texttt{CN}、\texttt{Chinese}、\texttt{SChinese} 或 \texttt{SimplifiedChinese} - \item 繁体中文:\texttt{TC}、\texttt{TChinese} 或 \texttt{TraditionalChinese} - \item 英语:\texttt{EN} 或 \texttt{English} - \item 法语:\texttt{FR} 或 \texttt{French} - \item 德语:\texttt{DE}、\texttt{German} 或 \texttt{ngerman} - \item 意大利语:\texttt{IT} 或 \texttt{Italian} - \item 葡萄牙语:\texttt{PT} 或 \texttt{Portuguese} - \item 巴西葡萄牙语:\texttt{BR} 或 \texttt{Brazilian} - \item 西班牙语:\texttt{ES} 或 \texttt{Spanish} - \item 日语:\texttt{JP} 或 \texttt{Japanese} - \item 俄语:\texttt{RU} 或 \texttt{Russian} -\end{itemize} - -\medskip -另外,还可以通过下面的方式来填加相应语言的设置: -\begin{itemize} - \item \lstinline|\AddLanguageSetting{|\meta{settings}\lstinline|}| - \begin{itemize} - \item 向所有支持的语言增加设置 \meta{settings}。 - \end{itemize} - \item \lstinline|\AddLanguageSetting(|\meta{language name}\lstinline|){|\meta{settings}\lstinline|}| - \begin{itemize} - \item 向指定的语言 \meta{language name} 增加设置 \meta{settings}。 - \end{itemize} -\end{itemize} -例如,\lstinline|\AddLanguageSetting(German){\color{orange}}| 可以让所有德语以橙色显示(当然,还需要再加上 \lstinline|\AddLanguageSetting{\color{black}}| 来修正其他语言的颜色)。 - -\subsubsection{PJLthm:带有智能引用与多语言支持的定理类环境} - -\PJLthm{} 提供定理类环境的设置。它支持下列选项: -\begin{itemize} - \item \texttt{nothms} - \begin{itemize} - \item 不设定定理类环境。如果你希望使用自己的定理样式,可以使用这一选项。 - \end{itemize} - \item \texttt{delaythms} - \begin{itemize} - \item 将定理类环境设定推迟到导言结尾。如果你希望定理类环境跟随自定义计数器编号,则应考虑这一选项。 - \end{itemize} - \item \texttt{nothmnum}、\texttt{thmnum} 或 \texttt{thmnum=}\meta{counter} - \begin{itemize} - \item 使定理类环境均不编号 / 按照 1、2、3 顺序编号 / 在 \meta{counter} 内编号。其中 \meta{counter} 应该是自带的计数器 (如 \texttt{subsection}) 或在导言部分自定义的计数器 (在启用 \texttt{delaythms} 选项的情况下)。在没有使用任何选项的情况下将按照 \texttt{chapter} (书) 或 \texttt{section} (文章) 编号。 - \end{itemize} - \item \texttt{complexname}、\texttt{simplename} - \begin{itemize} - \item 对于预设的定理名称,使用详细版本(默认)或简易版本。详细版本包含单复数的差别,并且在可能的情况下加入了定冠词;简易版本则统一采用单个单词的名称,不区分单复数。 - \end{itemize} - \item \texttt{regionalref}、\texttt{originalref} - \begin{itemize} - \item 在智能引用时,定理类环境的名称是否随当前语言而变化。默认为 \texttt{regionalref},即引用时采用当前语言对应的名称;例如,在中文语境中引用定理类环境时,无论原环境处在什么语境中,都将使用名称“定理、定义……”。若启用 \texttt{originalref},则引用时会始终采用定理类环境所处语境下的名称;例如,在英文语境中书写的定理,即使稍后在中文语境下引用时,仍将显示为 Theorem。 - \item 在 \texttt{fast} 模式下,\texttt{originalref} 将不起作用。 - \end{itemize} -\end{itemize} - -预设的定理类环境包括:\texttt{assumption}、\texttt{axiom}、\texttt{conjecture}、\texttt{convention}、\texttt{corollary}、\texttt{definition}、\texttt{definition-proposition}、\texttt{definition-theorem}、\texttt{example}、\texttt{exercise}、\texttt{fact}、\texttt{hypothesis}、\texttt{lemma}、\texttt{notation}、\texttt{observation}、\texttt{problem}、\texttt{property}、\texttt{proposition}、\texttt{question}、\texttt{remark}、\texttt{theorem},以及相应带有星号 \lstinline|*| 的无编号版本。它们在显示时会依据当前语言而变化,例如在中文语境下 \texttt{theorem} 会显示为“定理”,而在英文语境下则会显示为“Theorem”。关于如何选定语言,请参阅关于 \PJLlang{} 的小节。 - -\begin{tip} - 在引用定理类环境时,建议使用智能引用 \lstinline|\cref{|\meta{label}\lstinline|}|。这样就不必每次都写上相应环境的名称了。 -\end{tip} - -\medskip -若需要定义新的定理类环境,首先要定义这个环境在所用语言下的名称。有两种方式: -\begin{itemize} - \item 简易设置:\lstinline|\NameTheorem[|\meta{language name}\lstinline|]{|\meta{name of environment}\lstinline|}{|\meta{name string}\lstinline|}| - \begin{itemize} - \item 这种方式只设置单独的显示名称,智能引用等名称与之取为相同(特别地,以这种方式设置时智能引用名称将不区分单复数)。当不指定 \meta{language name}时,会将该名称设置为所有支持语言下的名称。另外,带星号与不带星号的同名环境共用一个名称,因此 \lstinline|\NameTheorem{envname*}| 与 \lstinline|\NameTheorem{envname}| 效果相同。 - \end{itemize} - \item 详细设置(推荐): -\begin{code} -\NameTheorem{(*\meta{name of environment}*)}{ - (*\meta{language name 1}*)={ - name=(*\meta{Name}*), - crefname={(*\meta{name}*)}{(*\meta{names}*)}, - Crefname={(*\meta{Name}*)}{(*\meta{Names}*)}, - autorefname=(*\meta{name}*), - theoremheading=(*\meta{Name}*), - }, - (*\meta{language name 2}*)={...}, -} -\end{code} -或 -\begin{code} -\NameTheorem[(*\meta{language name}*)]{(*\meta{name of environment}*)}{ - name=(*\meta{Name}*), - crefname={(*\meta{name}*)}{(*\meta{names}*)}, - Crefname={(*\meta{Name}*)}{(*\meta{Names}*)}, - autorefname=(*\meta{name}*), - theoremheading=(*\meta{Name}*), -} -\end{code} - \begin{itemize} - \item 这种方式可以具体设置各个名称。当不指定 \meta{language name}时,将允许使用完整界面;在指定语言时则只设定相应语言。同样,带星号与不带星号的同名环境共用一个名称,因此 \lstinline|\NameTheorem{envname*}| 与 \lstinline|\NameTheorem{envname}| 效果相同。 - \end{itemize} -\end{itemize} - -\begin{tip} - 除此以外,你也可以在定义相应的定理类环境时为之命名,可以参见后文对 \lstinline|\CreateTheorem| 的说明。 -\end{tip} - -\bigskip -然后,用下面五种方式之一定义这一环境: -\begin{itemize} - \item \lstinline|\CreateTheorem*{|\meta{name of environment}\lstinline|}| - \begin{itemize} - \item 定义不编号的环境 \meta{name of environment} - \end{itemize} - \item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}| - \begin{itemize} - \item 定义编号环境 \meta{name of environment},按顺序编号 - \end{itemize} - \item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}[|\meta{numbered like}\lstinline|]| - \begin{itemize} - \item 定义编号环境 \meta{name of environment},与 \meta{numbered like} 计数器共用编号 - \end{itemize} - \item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}<|\meta{numbered within}\lstinline|>| - \begin{itemize} - \item 定义编号环境 \meta{name of environment},在 \meta{numbered within} 计数器内编号 - \end{itemize} - \item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}(|\meta{existed environment}\lstinline|)|\\ - \lstinline|\CreateTheorem*{|\meta{name of environment}\lstinline|}(|\meta{existed environment}\lstinline|)| - \begin{itemize} - \item 将 \meta{name of environment} 与 \meta{existed environment} 或 \meta{existed environment}\lstinline|*| 等同。 - \item 这种方式通常在两种情况下比较有用: - \begin{enumerate} - \item 希望定义更简洁的名称。例如,使用 \lstinline|\CreateTheorem{thm}(theorem)|,便可以直接用名称 \texttt{thm} 来撰写定理。 - \item 希望去除某些环境的编号。例如,使用 \lstinline|\CreateTheorem{remark}(remark*)|,便可以去除 \texttt{remark} 环境的编号。 - \end{enumerate} - \end{itemize} -\end{itemize} - -\begin{tip} - 其内部使用了 \textsf{amsthm},因此传统的 \texttt{theoremstyle} 对其也是适用的,只需在相关定义前标明即可。 -\end{tip} - -\bigskip -你也可以在定义定理类环境的同时为之命名,只需要在之后再加入一组括号进行设置: -\begin{code} -\CreateTheorem{(*\meta{name of environment}*)}{ - (*\meta{language name 1}*)={ - name=(*\meta{Name}*), - crefname={(*\meta{name}*)}{(*\meta{names}*)}, - Crefname={(*\meta{Name}*)}{(*\meta{Names}*)}, - autorefname=(*\meta{name}*), - theoremheading=(*\meta{Name}*), - }, - (*\meta{language name 2}*)={...}, -} -\end{code} - -\NameTheorem[CN]{proofidea}{思路} -\CreateTheorem*{proofidea*} -\CreateTheorem{proofidea}<subsection> - -\bigskip -下面提供一个例子。这三行代码: -\begin{code} -\NameTheorem[CN]{proofidea}{思路} -\CreateTheorem*{proofidea*} -\CreateTheorem{proofidea}<subsection> -\end{code} -可以分别定义不编号的环境 \lstinline|proofidea*| 和编号的环境 \lstinline|proofidea| (在 subsection 内编号),它们支持在简体中文语境中使用,效果如下所示 (具体样式与所在的文档类有关) : - -\begin{proofidea*} - \lstinline|proofidea*| 环境。 -\end{proofidea*} - -\begin{proofidea} - \lstinline|proofidea| 环境。 -\end{proofidea} - -\medskip -当然,你也可以使用更加精细的名称: -\begin{code} -\NameTheorem{proofidea}{ - CN = { - name = 思路, - crefname = {思路}{思路}, - Crefname = {思路}{思路}, - } -} -\CreateTheorem*{proofidea*} -\CreateTheorem{proofidea}<subsection> -\end{code} -或者在定义时设置名称(对于 \lstinline|proofidea*| 与 \lstinline|proofidea| 只需要设置一次即可): -\begin{code} -\CreateTheorem*{proofidea*} -\CreateTheorem{proofidea}<subsection>{ - CN = { - name = 思路, - crefname = {思路}{思路}, - Crefname = {思路}{思路}, - } -} -\end{code} - - -\subsection{次要功能} - -\subsubsection{PJLauthor:增强的作者信息块} - -\PJLauthor{} 提供了 \lstinline|\address|、\lstinline|\curraddr|、\lstinline|\email| 命令,并且允许输入多组用户信息。标准的输入方式是这样的: -\begin{code} -\author{(*\meta{author 1}*)} -\address{(*\meta{address 1}*)} -\email{(*\meta{email 1}*)} -\author{(*\meta{author 2}*)} -\address{(*\meta{address 2}*)} -\email{(*\meta{email 2}*)} -... -\end{code} -其中 \lstinline|\address|、\lstinline|\curraddr|、\lstinline|\email| 的相互顺序是不重要的。 - -\medskip -另外,你可以通过选项 \texttt{amsfashion} 以使用 \AmS{} 方式写作。具体来说,效果为: -\begin{itemize} - \item 提供 \lstinline|\dedicatory|、\lstinline|\keywords| 及 \lstinline|\subjclass| 命令 - \item \lstinline|\thanks| 可以写在 \lstinline|\author| 之外 - \item \lstinline|abstract| 环境可以放在 \lstinline|\maketitle| 的前面 -\end{itemize} - -\begin{tip}[注意] - 这些功能只在标准文档类中启用。在 \AmS{} 文档类中,\PJLauthor{} 不会起到任何效果。 -\end{tip} - -\subsubsection{PJLdate:智能日期处理} - -\PJLdatePackage{} 提供了 \lstinline|\TheDate|\meta{yyyy-mm-dd} 命令,以将 \meta{yyyy-mm-dd} 转换为当前语言的日期格式显示。例如,在当前的中文语境下,\lstinline|\TheDate{2022-04-01}| 会被显示为“\TheDate{2022-04-01}”,而在英文语境下则会被显示为“\UseOtherLanguage{English}{\TheDate{2022-04-01}}”。 - -关于如何选定语言,请参阅关于 \PJLlang{} 的小节。 - -\subsubsection{PJLdraft:未完成标记} - -\PJLdraft{} 提供了下列命令: -\begin{itemize}\setstretch{1.15} - \item \lstinline|\dnf| 或 \lstinline|\dnf<...>|。效果为:\dnf~或 \dnf<...>。\\其提示文字与当前语言相对应,例如,在法语模式下将会显示为 \UseOtherLanguage{French}{\dnf}。 - \item \lstinline|\needgraph| 或 \lstinline|\needgraph<...>|。效果为:\needgraph~或 \needgraph<...>其提示文字与当前语言相对应,例如,在法语模式下将会显示为 \UseOtherLanguage{French}{\needgraph} -\end{itemize} - -关于如何选定语言,请参阅关于 \PJLlang{} 的小节。 - -\subsubsection{PJLlogo:\texorpdfstring{\ProjLib{} 图标}{ProjLib 图标}} - -\PJLlogo{} 提供了 \lstinline|\ProjLib| 命令用于绘制 Logo,效果为:\ProjLib{}。它与普通的文字指令效果类似,可以用于不同的字号: - -\vspace{-0.5\baselineskip} -\begin{center} - \begin{tabular}{ll} - \lstinline|\tiny|:& {\tiny\ProjLib}\\ - \lstinline|\scriptsize|:& {\scriptsize\ProjLib}\\ - \lstinline|\footnotesize|:& {\footnotesize\ProjLib}\\ - \lstinline|\normalsize|:& {\normalsize\ProjLib}\\ - \lstinline|\large|:& {\large\ProjLib}\\ - \lstinline|\Large|:& {\Large\ProjLib}\\ - \lstinline|\LARGE|:& {\LARGE\ProjLib}\\ - \lstinline|\huge|:& {\huge\ProjLib}\\ - \lstinline|\Huge|:& {\Huge\ProjLib} - \end{tabular} -\end{center} - -\subsubsection{PJLmath:数学符号与捷径} - -\PJLmath{} 提供下列捷径: -\begin{enumerate}[label=\roman*)] - \item \lstinline|\mathfrak{|$\cdot$\lstinline|}| $\longrightarrow$ \lstinline|\mf|$\cdot$ 或 \lstinline|\frak|$\cdot$。例如,\lstinline|\mfA| (或 \lstinline|\mf{A}|) 与 \lstinline|\mathfrak{A}| 效果相同. 这对大写、小写字母都有效:\vspace{-\baselineskip} - \begin{align*} - \mfa\mfb\mfc\mfd\mfe\mff\mfg\mfh\mfi\mfj\mfk\mfl\mfm\mfn&\mfo\mfp\mfq\mfr\mfs\mft\mfu\mfv\mfw\mfx\mfy\mfz\\ - \mfA\mfB\mfC\mfD\mfE\mfF\mfG\mfH\mfI\mfJ\mfK\mfL\mfM\mfN&\mfO\mfP\mfQ\mfR\mfS\mfT\mfU\mfV\mfW\mfX\mfY\mfZ - \end{align*} - \item \lstinline|\mathbb{|$\cdot$\lstinline|}| \( \longrightarrow \) \lstinline|\bb|$\cdot$。这只针对大写字母或数字 \( 1 \). - \begin{equation*} - \bbA\bbB\bbC\bbD\bbE\bbF\bbG\bbH\bbI\bbJ\bbK\bbL\bbM\bbN\bbO\bbP\bbQ\bbR\bbS\bbT\bbU\bbV\bbW\bbX\bbY\bbZ\bb1 - \end{equation*} - 对于常见的代数结构有这些特殊命令:\lstinline|\N|, \lstinline|\Z|, \lstinline|\Q|, \lstinline|\R|, \lstinline|\C|, \lstinline|\F|, \lstinline|\A|. - \[ - \N\Z\Q\R\C\F\A - \] - \item \lstinline|\mathcal{|$\cdot$\lstinline|}| \( \longrightarrow \) \lstinline|\mc|$\cdot$ 或 \lstinline|\cal|$\cdot$。这只针对大写字母。 - \begin{equation*} - \mcA\mcB\mcC\mcD\mcE\mcF\mcG\mcH\mcI\mcJ\mcK\mcL\mcM\mcN\mcO\mcP\mcQ\mcR\mcS\mcT\mcU\mcV\mcW\mcX\mcY\mcZ - \end{equation*} - \item \lstinline|\mathscr{|$\cdot$\lstinline|}| \( \longrightarrow \) \lstinline|\ms|$\cdot$ 或 \lstinline|\scr|$\cdot$。这只针对大写字母。 - \begin{equation*} - \msA\msB\msC\msD\msE\msF\msG\msH\msI\msJ\msK\msL\msM\msN\msO\msP\msQ\msR\msS\msT\msU\msV\msW\msX\msY\msZ - \end{equation*} -\end{enumerate} - -另外,\PJLmath{} 还提供了一些 \LaTeX{} 中未自带的符号。 - -\begin{longtable}[l]{ p{4cm} p{6cm} p{6cm} } -\lstinline|\abs| & \lstinline|\abs{a}| $\rightarrow \abs{a}$ & 绝对值符号 \\ -\lstinline|\norm| & \lstinline|\norm{a}| $\rightarrow \norm{a}$ & 范数符号 \\ -\lstinline|\injection| & \lstinline|\injection| $\rightarrow ~\injection$ & 表示单射的箭头符号 \\ -\lstinline|\surjection| & \lstinline|\surjection| $\rightarrow ~\surjection$ & 表示满射的箭头符号 \\ -\lstinline|\bijection| & \lstinline|\bijection| $\rightarrow ~\bijection$ & 表示双射的箭头符号 \\ -\end{longtable} - -这些捷径和符号是以一种安全的方式定义的,它们不会与已有的命令或你自己定义的命令相冲突。因此即使你用不到这些捷径或符号,也不用担心它们的存在会带来错误。 - -\subsubsection{PJLpaper:纸张设置} - -\PJLpaper{} 主要用于调节纸张颜色。它支持下列选项: - -\begin{itemize} - \item \texttt{paperstyle = \meta{paper style name}} - \begin{itemize} - \item 设定纸张色彩样式。\meta{paper style name} 可供选择的选项有:\texttt{yellow}、\texttt{dark} 与 \texttt{nord}。 - \end{itemize} - \item \texttt{yellowpaper}、\texttt{darkpaper}、\texttt{nordpaper} - \begin{itemize} - \item 设定纸张色彩样式。效果与相应名称的 \texttt{paperstyle} 相同。 - \end{itemize} - \item \texttt{preview} - \begin{itemize} - \item 预览模式,将会把 pdf 文件的白边去掉以方便阅读。 - \end{itemize} -\end{itemize} - -为了使用的方便,建议把这些选项作为文档类的全局参数,这样对于文档的纸张设定一目了然。 - -\clearpage - -\section{目前存在的问题} - -\begin{itemize}[itemsep=.6em] - \item \PJLauthor{} 仍然处于初步阶段,在很多方面还远远比不上相对成熟的 \textsf{authblk}。 - \item \PJLlang{}:针对 \textsf{polyglossia} 的设置仍然存在许多问题,因此现在主要功能都是通过 \textsf{babel} 实现的。 - \item \PJLpaper{} 的 \texttt{preview} 功能主要是通过 \textsf{geometry} 宏包实现的,因此在 \textsc{\textsf{Koma}} 文档类中效果不好。 - \item \PJLthm{} 对于定理类环境的编号与样式设定目前还无法由用户更改。 - \item \PJLthm{}:智能引用针对所有 \PJLlang{} 已支持语言的本地化尚不完整,主要是中文、日文与俄文。 - \item 错误处理功能不完善,在出现一些问题时没有相应的错误提示。 - \item 代码中仍有许多可优化之处,有些部分耗时过长,特别是 \PJLthm{} 对定理类环境的定义。 -\end{itemize} - -\end{document} -\endinput -%% -%% End of file `ProjLib-doc-cn.tex'. |