summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/easybook/easybook.tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-01-14 03:00:53 +0000
committerNorbert Preining <norbert@preining.info>2024-01-14 03:00:53 +0000
commit897aab75a208680c8bb84f43e5da36abb2f47322 (patch)
tree4910bd73f457bb9036581bfd7692baf160b61490 /macros/latex/contrib/easybook/easybook.tex
parent65fecaf48c4ed6505cb45447a2d7cf1b9d933e3a (diff)
CTAN sync 202401140300
Diffstat (limited to 'macros/latex/contrib/easybook/easybook.tex')
-rw-r--r--macros/latex/contrib/easybook/easybook.tex183
1 files changed, 95 insertions, 88 deletions
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index feb54cec19..9f4f1d91c8 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -11,7 +11,7 @@
{
cs => violet,
option => Green,
- cnltx => NavyBlue,
+ cnltx => DarkBlue,
link => DeepPink,
module => FireBrick,
beginend => FireBrick,
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024F,
- date = 2024/01/10,
+ version = v2024G,
+ date = 2024/01/13,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi@163.com,
@@ -40,20 +40,20 @@
}
\KOMAoptions{numbers = noenddot}
\setfootnoterule[0.5pt]{0.4\columnwidth}
-\addtokomafont{headsepline}{\color{NavyBlue}}
-\addtokomafont{footnoterule}{\color{NavyBlue}}
+\addtokomafont{headsepline}{\color{DarkBlue}}
+\addtokomafont{footnoterule}{\color{DarkBlue}}
\addtokomafont{section}{\normalfont\sffamily}
\addtokomafont{subsection}{\normalfont\sffamily}
\addtokomafont{subsubsection}{\normalfont\sffamily}
\DeclareTOCStyleEntry[entryformat = \sffamily]{default}{section}
\DeclareFieldFormat[book]{title}{\textsf{#1}}
\geometry{margin = 1in,marginparwidth = 0.6in}
-\SetEnumitemValue{label}{smallbullet}{\small\color{NavyBlue}\textbullet}
+\SetEnumitemValue{label}{smallbullet}{\small\color{DarkBlue}\textbullet}
\setlist{nosep,topsep = \smallskipamount,labelsep = 0.5em}
\setlist[1]{labelindent = \parindent}
\setlist[itemize,1]{label = smallbullet,leftmargin = *}
\setcounter{tocdepth}{2}
-\SetTblrInner[talltblr]{hline{1,Z} = {0.8pt,NavyBlue}}
+\SetTblrInner[talltblr]{hline{1,Z} = {0.8pt,DarkBlue}}
\SetTblrTemplate{caption}{empty}
\DefTblrTemplate{remark-sep}{default}{\space}
\SetTblrStyle{remark}{font = \small\normalfont}
@@ -144,7 +144,7 @@
baselinestretch = 1.2,
gobble = 2,
fontsize = \small,
- rulecolor = \color{NavyBlue},
+ rulecolor = \color{DarkBlue},
framerule = 0.5pt,
frame = single,
framesep = 6pt
@@ -253,7 +253,7 @@
\subsection{基本选项}
\begin{options}
\opt{draft}
- 开启草稿模式会加快编译速度,表现有显示页面边框、行溢出的地方显示黑色方块、图片变成占位方框、显示当前日期和关闭超链接渲染。不使用绘图宏包及依赖于 \pkg*{tcolorbox} 宏包的盒子环境也会增快编译速度,详情见\ref{subsec:box}。
+ 开启草稿模式会加快编译速度,表现有显示页面边框、行溢出的地方显示黑色方块、图片变成占位方框、显示当前日期和关闭超链接渲染。不使用绘图宏包及依赖 \pkg*{tcolorbox} 宏包的盒子环境也会增快编译速度,详情见\ref{subsec:box}。
\opt{newline}\dtag
部分和章标题的样式为另起一行,符合一般英文书籍的习惯。
\keychoice{scheme}{\fbox{chinese},plain}\dtag
@@ -263,9 +263,9 @@
\keychoice{paper}{\fbox{a4paper},b5paper,c5paper,letterpaper,other paper}
文档页面尺寸选项将参数交给 \pkg*{geometry} 宏包处理,可使用它支持的所有标准纸张规格。
\keyval{config}{配置文件列表}\dtag
- 载入用户配置的文件名列表,文件列表以花括号包裹并以英文逗号分隔。文件名应包含如 \code{tex}、\code{def} 或 \code{cfg} 等扩展名。若配置文件不在当前文件夹则文件名需要包含路径。
+ 载入用户配置的文件名列表,文件列表以花括号包裹并以英文逗号分隔。文件名应包含如 \code{tex}、\code{def} 或 \code{cfg} 等扩展名。若配置文件不在当前文件夹则文件名需要包含路径,即 \code{path/file.cfg}。
\keychoice{floatpage}{true,\fbox{false}}
- 开启这个选项后浮动环境 \env*{table} 和 \env*{figure} 的比例参数会使用默认值。关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
+ 开启这个选项后浮动环境 \env{table} 和 \env{figure} 的比例参数会使用默认值。关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
\keychoice{theorem}{\fbox{true},false}
是否提供定理功能支持。选项开启时定理样式模块生效,此时会载入 \pkg*{amsthm} 和 \pkg*{thmtools} 宏包。
\end{options}
@@ -291,7 +291,7 @@
remark{\ding{72}} = \code{times*} 方案为 \textsf{windows} 系统的预置字体。
]{
colspec = @{}*{4}{c}@{},
- hline{2} = {0.5pt,NavyBlue},
+ hline{2} = {0.5pt,DarkBlue},
row{1} = {font = \sffamily},
column{1} = {cmd = \code}
}{
@@ -328,7 +328,7 @@
\insertalltblr
{
colspec = @{}*{5}{c}@{},
- hline{3} = {0.5pt,NavyBlue},
+ hline{3} = {0.5pt,DarkBlue},
row{1,3} = {font = \sffamily,belowsep = 0pt},
row{2,4} = {cmd = \module*}
}{
@@ -433,7 +433,7 @@
\begin{options}
\keychoice{linktype}{\fbox{edge},colors,none}
超链接类型。\code{edge} 使超链接形式为边框,\code{colors} 使超链接字体为彩色,\code{none} 关闭超链接边框与颜色,此时 \option{linkcolor} 选项无效。
- \keychoice{linkcolor}{fresh,cutepink,\fbox{navyblue},crimson}
+ \keychoice{linkcolor}{fresh,cutepink,\fbox{DarkBlue},crimson}
超链接颜色样式。预置了四种超链接颜色风格。为使相关颜色能够正确显示,选项 \option{linkcolor} 应当在 \option{linktype} 前使用。
\begin{commands}
\command{DeclareLinkColor}[\splitmarg{风格名称,颜色1,颜色2,颜色3}]
@@ -452,7 +452,7 @@
\keyval{line}{数值}
正文行距因子。行距因子初始值为 \code{1.354}(相当于 \textsf{Word} 的1.25倍行距),如果设置了文类或 \pkg*{ctex} 宏包的全局行距选项 \option*{linespread} 则初始值设为它的值。
\keyval{table}{数值}\Default{1.354}
- 表格内容行距因子。对传统表格 \env*{tabular} 和 \env*{tabularx} 等环境以及 \pkg*{tabularray} 宏包的 \env{tblr} 环境生效,同时 \env{tblr} 也自带有 \option*{stretch} 选项设置行距系数。
+ 表格内容行距因子。对传统表格 \env{tabular} 和 \env{tabularx} 等环境以及 \pkg*{tabularray} 宏包的 \env{tblr} 环境生效,同时 \env{tblr} 也自带有 \option*{stretch} 选项设置行距系数。
\keyval{math}{数值}\Default{1.354}
数学环境的行距因子,包含了 \pkg*{amsmath} 和 \pkg*{mathtools} 宏包提供的公式环境。
\keyval{caption-figure}{数值}\Default{1.2}
@@ -509,7 +509,7 @@
\keyval{citestyle}{标注风格}
标注参考文献的风格。后端为 \code{bibtex} 时可使用 \option{super}(数字上标标注,默认)或 \option{numbers}(数字标注)等 \pkg*{natbib} 宏包带有的标注风格,后端为 \code{biblatex} 时可使用 \pkg*{biblatex} 宏包支持的标注风格。
\keyval{datafile}{数据库列表}
- 参考文献数据库的文件名列表,文件列表以花括号包裹并以英文逗号分隔。使用 \hologo{biber} 处理时要带有 \code{bib} 后缀,若参考文献文件不在当前文件夹则文件名需要包含路径。不设置参考文献数据库名时 \module*{bibset} 模块中的选项会失效,即不自动载入 \pkg*{natbib} 或 \pkg*{biblatex} 宏包,此时需要手动载入相关宏包配置参考文献。
+ 参考文献数据库的文件名列表,文件列表以花括号包裹并以英文逗号分隔。使用 \hologo{biber} 处理时文件名要带 \code{bib} 扩展名,若参考文献文件不在当前文件夹则文件名需要包含路径,即 \code{path/file.bib}。不设置参考文献数据库名时 \module*{bibset} 模块中的选项会失效,即不自动载入 \pkg*{natbib} 或 \pkg*{biblatex} 宏包,此时需要手动载入相关宏包配置参考文献。
\end{options}
\begin{commands}
@@ -519,17 +519,17 @@
\begin{options}
\keychoice*{heading}{bibliography,subbibliography,\fbox{bibintoc},subbibintoc}
- 参考文献通常有一个章标题或者节标题,该选项选择由 \cs*{defbibheading} 定义的标题名。
- \keyval*{title}{参考文献标题名}
+ 参考文献通常有一个章标题或者节标题,该选项选择由 \cs{defbibheading} 定义的标题名。
+ \keyval{title}{参考文献标题名}
如果标题定义支持的话,该选项覆盖由 \option*{heading} 选项提供的缺省标题名。
- \keyval*{prenote}{参考文献前注}
- 该选项选择由 \cs*{defbibnote} 所定义的前注,缺省状态下不打印任何前注。
- \keyval*{section}{整数}\Default{0}
+ \keyval{prenote}{参考文献前注}
+ 该选项选择由 \cs{defbibnote} 所定义的前注,缺省状态下不打印任何前注。
+ \keyval{section}{整数}\Default{0}
只打印在指定文节中引用的条目。该参考文献节从1开始编号,所有在 \env*{refsection} 环境外给出的引用标记为第零节。
- \keyval*{type}{条目类型}
+ \keyval{type}{条目类型}
指定条目的打印类型。
- \keyval*{filter}{过滤器名}
- 使用由 \cs*{defbibfilter} 定义的 \option*{filter} 来过滤条目。
+ \keyval{filter}{过滤器名}
+ 使用由 \cs{defbibfilter} 定义的 \option*{filter} 来过滤条目。
可能在一些情况下您希望更加灵活地设置参考文献或有更多需求,下面举一个在导言区手动配置 \pkg*{biblatex} 宏包并使一个条目输出双语对照文献的例子:
\begin{ctexexam}
@@ -544,20 +544,22 @@
\subsection[定理样式]{定理样式\smodule{thmset}}
\label{subsec:theorem of style}
-模块 \module*{thmset} 由 \pkg*{thmtools} 宏包提供支持,主要提供了定理声明和样式声明两个命令。定理声明命令使用的定理样式由样式声明命令提供,文档类预置了一个定理样式 \code{default}。
+模块 \module*{thmset} 由 \pkg*{thmtools} 宏包提供支持,主要提供了定理环境和样式声明两个命令。定理环境声明命令 \cs{declaretheorem} 使用的定理样式由样式声明命令 \cs{declaretheoremstyle} 提供,文档类预置了一个定理样式 \code{default},但未定义任何定理环境。
\begin{commands}
\command{declaretheorem}[\oarg{键值列表1}\marg{环境名}\oarg{键值列表2}]
定理环境声明命令。可选参数的 \meta{键值列表1} 与 \meta{键值列表2} 等效,其中常用的选项如下:
\begin{options}
- \keyval*{name}{定理名}
+ \keyval{name}{定理名}
定理环境的标题名称,默认为英文首字母大写的环境名。
- \keychoice*{numbered}{no,yes,unless unique}
+ \keychoice{numbered}{no,yes,unless unique}
定理可以被编号、不被编号或者只有在文档中多次出现时才被编号。
- \keychoice*{within}{chapter,section,empty,counter}
+ \keychoice{within}{chapter,section,empty,counter}
定理编号跟随的计数器。当计数器值递增时定理编号会从零开始,通常这是一个章节计数器。
- \keyval*{numberlike}{计数器}
+ \keyval{numberlike}{计数器}
定理将使用此 \meta{计数器} 进行编号,通常这是另一个定理环境的名称。
- \keyval*{style}{定理样式}
+ \keyval{qed}{证毕符号}
+ 证毕符号。位于定理段落末尾行的右侧边缘,可以设置成 \cs{qedsymbol} 默认是空心方块。
+ \keyval{style}{定理样式}
选项的值为使用 \cs{declaretheoremstyle} 命令新定义的定理样式。
使用 \cs{declaretheorem} 命令以\ref{exam:new theorem sty} 中的定理样式 \code{fancy} 新建一个定理环境猜想,然后用一个基于 \pkg*{tcolorbox} 宏包的预置彩色盒子 \env{easyboxi} 增加背景:
@@ -614,10 +616,10 @@
\begin{options}\noitemsep
\keyval{headruleskip}{页眉线间距}\Default*{0pt}
\keyval{footruleskip}{页脚线间距}\Default*{3.5pt}
- \kvsplit*{hdivide}{左边距,页面文本宽度,右边距}\default{}
- \kvsplit*{hmargin}{左边距,右边距}\default{}
- \keyval*{textheight}{页面文本高度}\default{}
- \keychoice*{nofoot}{true,\fbox{false}}
+ \kvsplit{hdivide}{左边距,页面文本宽度,右边距}\default{}
+ \kvsplit{hmargin}{左边距,右边距}\default{}
+ \keyval{textheight}{页面文本高度}\default{}
+ \keychoice{nofoot}{true,\fbox{false}}
\begin{ctexexam}
\ebgeoset
{
@@ -671,8 +673,8 @@
\end{commands}
\begin{commands}\noitemsep
- \command*{markboth}[\marg{左页标题标记}\marg{右页标题标记}]\default{}
- \command*{markright}[\marg{右页标题标记}]\default{}
+ \command{markboth}[\marg{左页标题标记}\marg{右页标题标记}]\default{}
+ \command{markright}[\marg{右页标题标记}]\default{}
\command{markdouble}[\marg{双页标题标记}]
这三个命令用于手动设置当前页标题标记,特殊情况下可以使用它们定义与标题不同的页眉页脚标记。上述标记命令内容的选项便是基于这三个命令。其中 \cs{markdouble} 根据是否是双面打印设置相应标记。如果是单面打印,则 \meta{左页标题标记} 无效。
\end{commands}
@@ -698,7 +700,7 @@
\ebhdrset{footnotetype = {hang,bottom}}
\end{ctexexam}
\keyval{fnfirstindent}{刚性长度}\Default{0.8em}
- 每个脚注首段的首行缩进(选项 \option*{hang} 为整体缩进),等于长度 \cs{fnfirstindent} 的值。
+ 每个脚注首段的首行缩进(悬挂缩进 \code{hang} 为整段缩进),等于长度 \cs{fnfirstindent} 的值。
\keyval{fnafterindent}{刚性长度}\Default{2em}
每个脚注第二段及之后段落的首行缩进,等于长度 \cs{fnafterindent} 的值。
\keyval{fnparskip}{弹性长度}\Default{0ex plus .1ex}
@@ -732,13 +734,13 @@
\keychoice{fnmarktext-num}{\fbox{plain},pifont,pifont*,pisans,pisans*,short num}
同时设定脚注正文标记编号 \option{fnmark-num} 与脚注内容标记编号 \option{fntext-num} 的类型。目前脚注编号类型选项对于迷你页环境 \env*{minipage} 无效,其中的脚注保持默认英文字母的编号类型。
\keychoice{fnmark-vmove}{fixed length,match}\Default{0pt}
- 脚注正文标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{spvmove} 全局的值。
+ 脚注正文标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{spvmove} 全局的值。
\keychoice{fnmark-hmove}{fixed length,match}\Default{0pt}
- 脚注正文标记的水平偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{sphmove} 全局的值。
+ 脚注正文标记的水平偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{sphmove} 全局的值。
\keychoice{fntext-vmove}{fixed length,match}\Default{0pt}
- 脚注内容标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{spvmove} 全局的值。
+ 脚注内容标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{spvmove} 全局的值。
\keychoice{fnmarktext-format}{format code,match}
- 默认脚注标记的格式,选项 \code{match} 可以匹配 \option*{spcmd} 全局的值。一般配合 \keyis{fnmarktext-num}{plain} 原生编号形式使用,例如用 \pkg*{circledtext} 宏包的带圈字符命令 \cs*{circledtext} 给脚注标记添加圆圈:
+ 默认脚注标记的格式,选项 \code{match} 可以匹配 \option{spcmd} 全局的值。一般配合 \keyis{fnmarktext-num}{plain} 原生编号形式使用,例如用 \pkg*{circledtext} 宏包的带圈字符命令 \cs{circledtext} 给脚注标记添加圆圈:
\begin{ctexexam}
\usepackage{circledtext}
\circledtextset{resize = real,width = 0.5em}
@@ -765,7 +767,7 @@
\defdownfntmark{\notminipage{\textcolor{blue}{\thedownfootnote}}{}}
\end{ctexexam}
\keychoice{fncustom-format}{format code,match}
- 单独设定自定义脚注标记的格式,选项 \code{match} 可以匹配 \option*{spcmd} 全局的值。自定义脚注内容和正文标记的命令与用法可以见下方和\ref{exam:custom footnote markers} 的介绍。
+ 单独设定自定义脚注标记的格式,选项 \code{match} 可以匹配 \option{spcmd} 全局的值。自定义脚注内容和正文标记的命令与用法可以见下方和\ref{exam:custom footnote markers} 的介绍。
\begin{commands}\noitemsep
\command{Footnote}[\oarg{内容标记}\marg{正文标记}\marg{脚注文本}]\default{}
\command{Footnotetext}[\marg{内容标记}\marg{脚注文本}]\default{}
@@ -776,26 +778,26 @@
\end{ctexexam}
\end{commands}
\keychoice{fnboth-format}{format code,match}
- 同时设定默认脚注标记 \option{fnmarktext-format} 和自定义脚注标记 \option{fncustom-format} 的格式。两种脚注标记匹配上标格式 \option*{spcmd} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
+ 同时设定默认脚注标记 \option{fnmarktext-format} 和自定义脚注标记 \option{fncustom-format} 的格式。两种脚注标记匹配上标格式 \option{spcmd} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
\keyval{fnpara-format}{格式代码}
脚注内容的格式。在此设置字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注内容。
\kvsplit{fntext-code}{前代码,后代码}
- 可以用 \meta{前代码} 与 \meta{后代码} 额外增加脚注内容标记前后的代码。也可以只有前部分,\meta{前代码} 中最后一个格式命令可以带有一个参数接受脚注内容标记。由于脚注标记处于水平模式,一般用于在脚注内容标记与脚注首行间插入一点距离,或与脚注正文标记的格式稍有不同。
+ 可以用 \meta{前代码} 与 \meta{后代码} 额外增加脚注内容标记前后的代码。也可以只有前部分,\meta{前代码} 中最后一个格式命令可以带有一个参数接受脚注内容标记。由于脚注标记处于水平模式,可以配合盒子命令设置脚注内容标记的对齐方式,或在标记与脚注首行间插入一点距离。
\begin{ctexexam}
\ebhdrset
{
- footnotetype = flush,
- fntext-code = {,\enskip}
+ footnotetype = hang,
+ fntext-code = {\hspace{1em}\llap,\enskip}
}
\end{ctexexam}
\end{options}
\subsection[目录样式]{目录样式\smodule{tocset}}
\label{subsec:catalog style}
-模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。默认包括 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 二级路径,而使用 \module*{float} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{条目名}的路径,其它选项则处于 \module*{tocset} 一级路径下。目前支持标准的论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
+模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。默认包括 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 条目名的键路径,而使用 \module*{float} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{条目名}的路径,其它选项则处于 \module*{tocset} 键路径下。目前支持多数学术论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
\begin{options}
\keyval{tocformat}{条目格式}\dtag
- 目录中各级别条目的格式。可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
+ 目录中各类型条目的格式。可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
\keyval{tocformat+}{条目格式}\dtag
与选项 \option{tocformat} 用法一样,只是在已有的格式命令后附加代码。
\keyval{tocindent}{刚性长度}\dtag
@@ -804,10 +806,10 @@
引导线选项 \option{tocrule} 中一般可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制引导线。
\begin{commands}
\command{tocrule}[\sarg\harg\oarg{引导点间距}\darg{放大因子}\marg{引导点}\oarg{页码格式}]
- 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。带有 \harg{} 号的命令不添加引导线后的目录页码。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
+ 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。命令带 \harg{} 号参数不添加目录页码,此时无格式的页码被保存在 \cs{thecontentspage} 命令中,可以配合盒子命令设置不同的页码左右间距和对齐方式。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
\end{commands}
\keyval{tocafter}{距离命令}\dtag\Default{\cs*{hspace}\Marg{1em}}
- 目录条目编号与标题间的代码,默认为插入 \code{1em} 横向距离。
+ 目录条目标签与标题间的代码,默认为插入 \code{1em} 横向距离。
\keyval{tocbelow}{距离命令}\dtag\newtag%
在目录条目下方执行的代码,可以插入垂直距离等命令。
\keyval{tocline}{条目定义}\dtag[\textcolor{red}{\ding{73}}]
@@ -815,35 +817,37 @@
\begin{ctexexam}
\ctexset
{
- chapter =
+ chapter =
{
- tocformat = \addvspace{8pt}\large,
- tocindent = 1.5em,
- tocrule = \tocrule[0.6pc](1.1){.}[\zihao{5}],
- tocline = \CTEXnumberline{#1}#2
- }
+ tocformat = \addvspace{8pt}\large,
+ tocindent = 1.5em,
+ tocrule = \tocrule[0.6pc](1.1){.}[\zihao{5}],
+ tocline = \CTEXnumberline{#1}#2
+ },
+ section/tocrule = \tocrule-{}\makebox[1cm]{\rlap{\thecontentspage}}
}
\end{ctexexam}
\end{options}
\begin{commands}
\command{RegisterTocName}[\marg{条目名}]\newtag%
- 给名称为 \meta{条目名} 的浮动环境注册设置目录样式的选项,选项前有符号 \ding{73} 表示在注册后可用。
+ 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,需要注意新类型的条目注册后选项初始值\textbf{均为空}。
\command{contentsuse}[\marg{条目名}\marg{扩展名}]
- 激活名称为 \meta{条目名} 的浮动环境目录定制功能,它使用的目录文件后缀为 \meta{扩展名}。需要在激活条目后再使用命令 \cs{RegisterTocName} 注册选项。
+ 激活条目类型名称为 \meta{条目名} 的目录定制功能,它使用的目录文件后缀为 \meta{扩展名}。需要在激活条目后再使用命令 \cs{RegisterTocName} 注册选项。
\command{DeclareFloatList}[\marg{条目名}\marg{扩展名}]\newtag%
- 声明一个浮动环境题注的目录命令 \cs*{listof}\meta{条目名}\code{\textcolor{cs}{s}},并且支持\ref{subsec:directory command} 中图表目录命令的机制。使用这个命令要确保将条目加入目录的机制已经存在,推荐搭配 \pkg*{newfloat} 宏包创建新的浮动环境。选项前有红色符号 \textcolor{red}{\ding{73}}(仍包含黑色符号选项的性质)表示在声明后可用。下面举一个声明算法环境和题注目录的例子:
+ 声明一种条目类型的目录命令 \cs*{listof}\meta{条目名}\code{\textcolor{cs}{s}},并且支持\ref{subsec:directory command} 中图表目录命令的机制。使用这个命令要确保将条目加入目录的机制已经存在,例如搭配 \pkg*{newfloat} 宏包创建新的浮动环境。选项前有红色符号 \textcolor{red}{\ding{73}}(仍包含黑色符号选项的性质)表示在声明后可用。下面举一个声明算法环境和对应题注目录的例子:
\begin{ctexexam}
\usepackage{newfloat}
\DeclareFloatingEnvironment[
fileext = loa,
- listname = 算法清单
+ listname = 算法清单,
+ name = 算法
]{algorithm}
\DeclareFloatList{algorithm}{loa}
\listofalgorithms[multoc] % 在正文中输出双栏算法目录
\end{ctexexam}
\command{listnumberline}[\marg{条目名}]
- 在图表等浮动环境目录中插入条目标签和编号,默认标签可以由格式命令 \cs{labelformat} 设置。注意其中 \meta{条目名} 需要用对应名称\textbf{显式指定}。
+ 在图表等浮动环境的题注目录中插入条目标签,默认标签的名字可以由格式命令 \cs{labelformat} 设置。注意其中 \meta{条目名} 需要用对应名称\textbf{显式指定}。
\begin{ctexexam}
\ctexset
{
@@ -855,23 +859,23 @@
\begin{options}
\keychoice{hang}{\fbox{true},false}
- 悬挂缩进选项 \option{hang} 使目录条目为悬挂缩进形式。缩进距离为条目编号及其与标题间距的长度和。这个选项对所有条目名同时生效。
+ 悬挂缩进选项 \option{hang} 使目录条目为悬挂缩进形式。缩进距离为条目标签及其与标题内容间距的长度和。通常情况下会统一设置条目标题是否悬挂缩进,因此这个选项被设计为对所有类型条目生效。
\keyval{lolskip}{弹性长度}\Default{10pt}
代码目录中每章第一个条目上方增加的垂直距离。与 \CTeX 的表格和图片目录中每章间的条目距离选项 \option*{lotskip} 和 \option*{lofskip} 类似,在 \cls*{article} 模式中此选项失效。
\keyval{between}{代码钩子}\dtag[\textcolor{red}{\ding{73}}]
- 目录标题与内容间的钩子(作用于标题下方间距之后),一般插入负的垂直距离代码用于抵消目录首行额外的垂直间距。一级路径此选项对应文档主目录的钩子,二级路径为浮动环境的 \meta{条目名}。
+ 目录标题与条目内容间的钩子(作用于标题下方间距之后),一般插入负的垂直距离代码用于抵消目录首行额外的垂直间距。除了条目名的键路径外,此选项也可用于 \module*{tocset} 路径中,表示章节标题目录标题代码钩子。
\keyval{bibetween}{代码钩子}\newtag%
- 与选项 \option{between} 类似,是位于一级路径的英文文档主目录(如果启用)代码钩子。
+ 与选项 \option{between} 类似,是英文章节标题目录(如果启用)标题代码钩子。
\keychoice{dotalign}{\fbox{true},false}
引导线选项 \option{dotalign} 可以使目录引导线右端对齐并与页码保持一定间距,否则会与页码相连。
\keyval{pagenumwd}{刚性长度}\Default{1.55em}
目录条目页码的宽度。开启 \option{dotalign} 选项时宽度越大引导线与页码的距离就越大。
\keyval{tocafter-every}{距离命令}\Default{\cs*{hspace}\Marg{1em}}
- 统一设置所有级别条目编号与标题间的代码。
+ 统一设置所有类型条目编号与标题间的代码(仅支持上述预注册的条目)。
\keyval{tocindent-every}{刚性长度}
- 统一设置所有级别条目的左边缩进。
+ 统一设置所有类型条目的左边缩进(仅支持上述预注册的条目)。
\keyval{tocrule-every}{引导线命令}
- 统一设置所有级别的目录引导线样式。
+ 统一设置所有类型的目录引导线样式(仅支持上述预注册的条目)。
\end{options}
\section{环境和命令}
@@ -894,10 +898,10 @@
\label{subsec:directory command}
\begin{commands}
\command{tableofcontents}[\sarg\oarg{键值列表}\darg{代码钩子}]
- 文档主目录命令,支持中英文双语标题目录输出。带有星号参数不输出目录条目上方的标题。\meta{代码钩子} 是当方案 \keyis{plan}{both} 时中文与英文目录之间执行的代码,可以插入目录样式和换页等命令。
+ 章节标题目录命令,支持中英文双语标题目录输出。带有星号参数不输出目录条目上方的标题。\meta{代码钩子} 是当输出方案 \keyis{plan}{both} 时中文与英文目录之间执行的代码,可以插入设置目录样式和换页等命令。
\begin{options}
\keychoice{plan}{\fbox{cn},bi,both}\newtag[Exp]%
- 文档主目录的输出方案。\code{cn} 只输出中文目录,\code{bi} 只输出英文目录。\code{both} 同时连续输出中文和英文目录,需要与双语目录标题命令 \cs{bichapter} 等或双语标题选项 \option{title} 配合使用。
+ 章节标题目录的输出方案。\code{cn} 只输出中文目录,\code{bi} 只输出英文目录。\code{both} 同时连续输出中文和英文目录,需要与双语目录标题命令 \cs{bichapter} 等或双语标题选项 \option{title} 配合使用。
\keyval{bicontentsname}{英文目录标题}\Default{Contents}\newtag%
英文目录的标题,为通用接口命令 \cs*{ctexset} 的选项。
\end{options}
@@ -921,7 +925,7 @@
\kvsplit{title}{中文目录标题,英文目录标题}
用于更改目录的双语标题。标题之间用一个英文逗号分开,对主目录来说前部分为中文目录标题,后部分为英文目录标题,对图表和代码目录来说后部分则是加入英文目录的条目。也可以只有一部分,表示中文目录的标题。
\keychoice{bilist}{mix,\fbox{new}}
- 确定文档主目录中双语标题列表的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则在新建的英文目录中输出英文标题。
+ 确定章节标题目录中双语标题条目的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则在新建的英文目录中输出英文标题。
\keyval{format}{目录标题格式}
设置目录标题的格式,在标题级别为 \code{chapter} 或者 \cls*{article} 模式且标题级别为 \code{section} 时有效。
\keyval{aftertitle}{标题后代码}
@@ -997,16 +1001,16 @@
\subsection{公式}
\begin{environments}\noitemsep
- \environment*{equation}\default{}
- \environment*{multline}\default{}
- \environment*{gather}\default{}
- \environment*{align}
- \pkg*{amsmath} 宏包提供了一系列行间数学环境,它们可以排布各种对齐或不对齐的公式组。\env*{multline} 环境用于一行无法放下的长公式,\env*{gather} 环境用于每行居中的公式组,\env*{align} 环境用于多列对齐的公式组。还有例如 \pkg*{mathtools} 等对数学功能进行扩展的宏包,提供了更全面的数学命令与环境。
+ \environment{equation}\default{}
+ \environment{multline}\default{}
+ \environment{gather}\default{}
+ \environment{align}
+ \pkg*{amsmath} 宏包提供了一系列行间数学环境,它们可以排布各种对齐或不对齐的公式组。\env{multline} 环境用于一行无法放下的长公式,\env{gather} 环境用于每行居中的公式组,\env{align} 环境用于多列对齐的公式组。还有例如 \pkg*{mathtools} 等对数学功能进行扩展的宏包,提供了更全面的数学命令与环境。
\end{environments}
\subsection{表格}
\begin{environments}\noitemsep
- \environment*{tabular}[\marg{列格式}]\default{}
+ \environment{tabular}[\marg{列格式}]\default{}
\environment{tblr}[\marg{键值列表}]
\pkg*{tabularray} 是一个强大且全面的表格宏包,不依赖其它表格宏包所以同时使用不会产生冲突。不仅提供了各种传统表格宏包的功能,还实现了用键值列表方式简便地设置表格样式。具体用法可见宏包的说明文档,下面演示一个 \env{tblr} 表格的用法:
\begin{ctexexam}
@@ -1046,9 +1050,9 @@
\end{commands}
\begin{environments}\noitemsep
- \environment*{enumerate}[\oarg{键值列表}]\default{}
- \environment*{itemize}[\oarg{键值列表}]\default{}
- \environment*{description}[\oarg{键值列表}]
+ \environment{enumerate}[\oarg{键值列表}]\default{}
+ \environment{itemize}[\oarg{键值列表}]\default{}
+ \environment{description}[\oarg{键值列表}]
已为三种列表各自预置了三个级别。同种列表或不同种列表间的不同级别可相互嵌套,可以使用短编号的形式,带有星号的环境为行内列表。默认列表标签与标准文档类一致,下面举几个更改列表标签以及其它格式的例子:
\begin{ctexexam}
\setlist*{wide = 0em} % 取消所有列表的左边距
@@ -1072,7 +1076,7 @@
\subsection{代码}
\begin{commands}
- \command*{lstdefinestyle}[\marg{代码风格}\marg{键值列表}]
+ \command{lstdefinestyle}[\marg{代码风格}\marg{键值列表}]
代码抄录宏包 \pkg*{listings} 的代码风格定义命令,提供大量选项对代码样式进行高度定制。可以根据需要的代码语言和样式定义多种风格,默认使用的 \meta{代码风格} 为 \code{lst-latex}。
\command{lstinline}[\oarg{键值列表}\marg{行内代码}]
行内代码抄录命令。较原生的 \cs*{verb} 命令有较大改进,具有代码语言和样式支持。
@@ -1080,7 +1084,7 @@
\begin{environments}
\environment{lstlisting}[\oarg{键值列表}]
- 行间代码抄录环境。支持多种语言库,默认使用 \code{LaTeX} 代码语言,可使用 \meta{键值列表} 局部修改代码样式。另外还提供了 \cs*{lstnewenvironment} 命令包装自定义名称的代码环境。
+ 行间代码抄录环境。支持多种语言库,默认使用 \code{LaTeX} 代码语言,可使用 \meta{键值列表} 局部修改代码样式。另外还提供了 \cs{lstnewenvironment} 命令包装自定义名称的代码环境。
\begin{ctexexam}
\lstdefinestyle{lst-pascal}
{
@@ -1098,7 +1102,7 @@
\begin{options}\noitemsep
\keyval{lstlistlistingname}{代码目录标题名}\default{}
\keyval{lstlistingname}{代码题注标题名}
- 代码目录名与代码环境题注名选项 \option*{lstlistlistingname} 和 \option*{lstlistingname} 用法与 \CTeX 使用手册标题汉化一节类似,可以看作对这节的扩展。
+ 代码目录名与代码环境题注名选项 \option{lstlistlistingname} 和 \option{lstlistingname} 用法与 \CTeX 使用手册标题汉化一节类似,可以看作对这节的扩展。
\end{options}
\subsection{盒子}
@@ -1146,7 +1150,7 @@
\command{eboxi}[\oarg{颜色名}\marg{内容}\oarg{配置选项}]
行内盒子命令 \cs{eboxi} 具有模糊边缘类似高亮的效果。
\command{eboxii}[\oarg{颜色名}\marg{内容}\oarg{配置选项}]
- 行内盒子命令 \cs{eboxii} 则有直角边缘和四周框线,效果类似带颜色的 \cs*{fbox} 盒子。
+ 行内盒子命令 \cs{eboxii} 则有直角边缘和四周框线,效果类似带背景色的 \cs*{fbox} 盒子。
\end{commands}
\section{扩展功能}
@@ -1302,7 +1306,7 @@
\command{uline}[\marg{下划直线}]\default{}
\command{uuline}[\marg{下划双直线}]\default{}
\command{uwave}[\marg{下划波浪线}]
- \pkg*{ulem} 宏包提供了多种下划线命令,可以重新定义 \cs*{ULthickness} 命令控制下划线的粗细。下划线的深度由 \cs*{ULdepth} 控制,默认值 \cs*{maxdimen} 是一个允许深度根据当前字体变化的特殊标志,当然也可以使用 \cs*{setlength} 设定为指定深度。
+ \pkg*{ulem} 宏包提供了多种下划线命令,可以重新定义 \cs{ULthickness} 命令控制下划线的粗细。下划线的深度由 \cs{ULdepth} 控制,默认值 \cs*{maxdimen} 是一个允许深度根据当前字体变化的特殊标志,当然也可以使用 \cs*{setlength} 设定为指定深度。
\end{commands}
\appendix
@@ -1312,7 +1316,7 @@
\begin{version}[v = 1.46,date = 2022/01/12]
\added
\item 增加定义脚注正文和内容标记格式的命令 \cs{defupfntmark} 和 \cs{defdownfntmark}。
- \item 新增文档主目录中双语标题列表的输出排列方式选项 \option{bilist}。
+ \item 新增章节标题目录中双语标题条目的输出排列方式选项 \option{bilist}。
\end{version}
\begin{version}[v = 1.55,date = 2022/01/28]
\added
@@ -1330,13 +1334,16 @@
\end{version}
\begin{version}[v = 1.636,date = 2022/03/03]
\added
- \item \cs*{tableofcontents} 命令增加输出方案选项 \option{plan},不再使用 \parg{} 参数输出英文目录。
+ \item \cs{tableofcontents} 命令增加输出方案选项 \option{plan},不再使用 \parg{} 参数输出英文目录。
\item 增加英文主文档目录钩子选项 \option{bibetween}。
\end{version}
\shortversion{v = 1.638,date = 2022/03/04,changes = 增加目录条目样式选项注册命令 \cs{RegisterTocName}。}
\shortversion{v = 1.644,date = 2022/03/10,changes = 增加浮动环境目录声明命令 \cs{DeclareFloatList} 配合 \pkg*{caption} 宏包。}
- \shortversion{v = 1.682,date = 2022/05/01,changes = 将迷你页判断命令 \cs*{notminipage} 改为被保护命令兼容 \pkg*{circledtext} 宏包。}
- \shortversion{v = 2024F,date = 2024/01/10,changes = 核对依赖宏包的更新改动,优化使用手册的内容细节。}
+ \shortversion{v = 1.682,date = 2022/05/01,changes = 将迷你页判断命令 \cs{notminipage} 改为被保护命令兼容 \pkg*{circledtext} 宏包。}
+ \begin{version}[v = 2024G,date = 2024/01/13,simple]
+ \item 核对依赖宏包的更新改动,优化使用手册的内容细节。
+ \item 修复图表题注目录中条目标签编号的计数器值显示错误问题。
+ \end{version}
\end{changelog}
\nocite{*}