summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/easybook
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-01-30 03:00:53 +0000
committerNorbert Preining <norbert@preining.info>2022-01-30 03:00:53 +0000
commit7ee4987532f1c1d25e5a2683ae21b7c298d103b5 (patch)
tree1276be1a24746987c860b5730e708194234c4a10 /macros/latex/contrib/easybook
parent2df1fd0d0099108f6d3d3e58dce35a3d2e185d4f (diff)
CTAN sync 202201300300
Diffstat (limited to 'macros/latex/contrib/easybook')
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx6
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin575298 -> 575448 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex63
3 files changed, 37 insertions, 32 deletions
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 81156d1337..96361bc5d9 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2022/01/28}{1.54}
+\ProvidesExplClass{easybook}{2022/01/28}{1.55}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -305,7 +305,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2022/01/28}{1.54}
+\ProvidesExplPackage{easybase}{2022/01/28}{1.55}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -2343,7 +2343,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/28}{1.54}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/28}{1.55}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index bd4402b691..17a61f687d 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index f6323022a7..2660944146 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -21,7 +21,7 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.54,
+ version = v1.55,
date = 2022/01/28,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
@@ -33,7 +33,7 @@
},
arg-format = \normalfont\small\itshape,
abstract-format = \small,
- module-sep = \,$\Rightarrow$\,,
+ module-sep = \,\raisebox{-1pt}{\ding{224}}\,,
title-format = \huge\sffamily
}
\KOMAoptions{headsepline = 0.5pt,numbers = noenddot}
@@ -64,6 +64,7 @@
\cnltx@isvalue
\IfBooleanTF{#2}{#4}{\splitmarg{#4}}
}
+ \cnltx@checkdefault{\hfill\newline}
}
% Traversal output parameters
\newcommand{\splitmeta}[2][\code{,}]
@@ -85,13 +86,17 @@
\newcommand{\spemmeta}{\splitmeta[\code{|}]}
\newsplitarg[\spemmeta]{\spemcoarg}{[}{]}
\newcommand{\harg}{\textcolor{argument}{\code{-}}}
-% Default value adds a flag to distinguish options
-\RenewDocumentCommand{\Default}{st-m}
+% A tag that distinguishes the options for different paths
+\NewDocumentCommand{\dtag}{O{\ding{73}}}
{
- \null\hfill
- \llap{\code{#3}\IfBooleanT{#1}{*}}
- \IfBooleanF{#2}{\newline}
+ \begingroup
+ \reversemarginpar
+ \marginnote{\hfill\llap{#1}}
+ \endgroup
+ \cnltx@checkdefault{\hfill\newline}
}
+% Use a separate module margin marker to prevent overlap
+\newcommand{\smodule}{\cnltx@module@text{}}
\newcommand{\noitemsep}{\setlength{\itemsep}{0ex}}
\newcommand{\insertblr}[2]
{
@@ -224,9 +229,9 @@
\section{文档类选项}
\label{sec:document class options}
-文档类选项应当在使用 \cls*{easybook} 文档类或 \pkg*{easybase} 宏包(部分支持)时载入,可见\ref{subsec:basic usage} 的例子。默认值后带有星号的选项表示文档类与宏包都适用,否则只可用于文档类。除了下面列举的选项以外,还支持标准和 C\TeX 文档类的选项。
+文档类选项应当在使用 \cls*{easybook} 文档类或 \pkg*{easybase} 宏包(部分支持)时载入,可见\ref{subsec:basic usage} 的例子。选项前带有 \ding{73} 符号表示文档类与宏包都适用,否则只可用于文档类。除了下面列举的选项以外,还支持标准和 C\TeX 文档类的选项。
\begin{options}
- \opt{draft}\Default*{}
+ \opt{draft}\dtag
开启草稿模式会加快编译速度,表现有显示页面边框、行溢出的地方显示黑色方块、图片变成占位方框、显示当前日期和关闭超链接渲染。不使用绘图宏包及依赖于 \pkg*{tcolorbox} 宏包的盒子环境也会增快编译速度,详情见\ref{subsec:box}。
\opt{newline}
部分和章标题的样式为另起一行,符合一般英文书籍的习惯。
@@ -234,13 +239,13 @@
文档主题方案选项 \option{scheme} 扩展了 C\TeX 文档类中同名选项原有的作用范围,选项值 \code{plain} 可使各类标题变为英文形式。包括章节标题、图表标题和定理名等。
\opt{enmode}
同时开启 \option{newline} 和 \keyis-{scheme}{plain} 选项以符合英文原生风格。
- \keychoice{paper}{a4paper,b5paper,c5paper,letterpaper,other paper}\Default*{a4paper}
+ \keychoice{paper}{a4paper,b5paper,c5paper,letterpaper,other paper}\dtag\Default{a4paper}
文档页面尺寸选项将参数交给 \pkg*{geometry} 宏包处理,可使用它支持的所有标准纸张规格。
\keyval-{config}{配置文件列表}
载入用户配置的文件名列表,文件列表以花括号包裹并以英文逗号分隔。文件名应包含如 \code{tex}、\code{def} 或 \code{cfg} 等扩展名。若配置文件不在当前文件夹则文件名需要包含路径。
- \keybool{floatpage}\Default*{false}
+ \keybool{floatpage}\dtag\Default{false}
开启这个选项后浮动环境 \env*{table} 和 \env*{figure} 的比例参数会使用默认值,关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
- \keybool{theorem}\Default*{true}
+ \keybool{theorem}\dtag\Default{true}
是否提供定理功能支持。选项开启时定理样式模块生效,此时会载入 \pkg*{amsthm} 和 \pkg*{thmtools} 宏包。
\end{options}
@@ -287,11 +292,11 @@
\subsection{\textsf{article} 模式}
\begin{options}
- \keychoice{class}{book,article}\Default*{book}
+ \keychoice{class}{book,article}\dtag\Default{book}
使用 \cls*{easybook} 文档类可以有两种模式,默认为 \cls*{book} 模式。选用 \code{article} 会变为 \code{oneside} 单面排版,同时使文档编号、结构等与标准 \cls*{article} 文档类的特性相似,可用于短篇幅的文章,不需要再使用 \cs*{chapter} 命令。此时\ref{sec:document command} 中目录命令的 \option{chapter} 选项会失效,将以 \code{section} 标题级别输出目录。如果使用 \cls*{ctexart} 配合 \pkg*{easybase} 宏包,则选项值 \code{book} 会失效。
- \opt{book}\Default*{}
+ \opt{book}\dtag
开启 \cls*{book} 书籍模式,与 \keyis*-{class}{book} 等效。
- \opt{article}\Default*{}
+ \opt{article}\dtag
开启 \cls*{article} 文章模式,与 \keyis*-{class}{article} 等效。
\end{options}
@@ -334,7 +339,7 @@
使当前目录没有 \code{chapter} 或 \code{section} 级别的标题,仅输出目录原始内容。
\keyval-{multoc}{整数}\Default{2}
与 \module*{style} 模块的 \option{multoc} 选项具有相同的效果,但是具有优先性且可单独设置不同类型目录的排版栏数。\meta{整数} 为目录栏数,不指定栏数值则默认为双栏。
- \kvsplit{title}{中文目录标题,英文目录标题}\newline
+ \kvsplit{title}{中文目录标题,英文目录标题}
用于更改目录的标题。标题之间用一个英文逗号分开,也可以只有一部分,表示中文目录的标题。当设置了英文目录标题时,英文目录标题将会自动加入文档主目录 \cs*{tableofcontents}\parg{} 命令。
\keychoice{bilist}{mix,new}\Default{new}
确定文档主目录中双语标题列表的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则新建一个英文目录输出英文标题。
@@ -667,7 +672,7 @@
定理环境前的间距,使用 \pkg*{tcolorbox} 的盒子环境包装后被覆盖。
\keyval-{spacebelow}{弹性长度}
定理环境后的间距,使用 \pkg*{tcolorbox} 的盒子环境包装后被覆盖。
- \kvsplit-{notebraces}{\marg{左括号}\marg{右括号}}\newline
+ \kvsplit-{notebraces}{\marg{左括号}\marg{右括号}}
设置定理题注两边的括号,两个必选参数分别代表左括号和右括号。
\keyval-{headformat}{标题排列}
定理标题各组成元素的位置排列和格式。定理标题由定理名、编号和题注组成,\meta{标题排列} 中命令 \cs*{NAME}、\cs*{NUMBER} 和 \cs*{NOTE} 分别代表定理名、编号和题注。
@@ -691,12 +696,12 @@
\label{subsec:page margins}
模块 \module*{geoset} 会将除了前两个附加的选项交给页面尺寸宏包 \pkg*{geometry} 处理,并且支持它的键值列表,预置的页面尺寸与 \cls*{Word} 的默认值接近。下面列举几种代表性选项,其它选项可查阅宏包帮助文档。当在此设置纸张规格时,会覆盖文类选项 \option{paper} 的设置。
\begin{options}\noitemsep
- \keyval-{headruleskip}{页眉线间距}\Module{geoset}\Default-{0pt}
- \keyval-{footruleskip}{页脚线间距}\Default-{3.5pt}
+ \keyval-{headruleskip}{页眉线间距}\Module{geoset}\Default*{0pt}
+ \keyval-{footruleskip}{页脚线间距}\Default*{3.5pt}
\kvsplit*{hdivide}{左边距,页面文本宽度,右边距}
\kvsplit*{hmargin}{左边距,右边距}
\keyval*-{textheight}{页面文本高度}\default{}
- \keybool*{nofoot}\Default-{false}
+ \keybool*{nofoot}\Default*{false}
\begin{ctexexam}
\ebgeoset
{
@@ -857,7 +862,7 @@
同时设定默认脚注标记 \option{fnmate-form} 和自定义脚注标记 \option{fncust-form} 的格式。两种脚注标记匹配上标格式 \option*{spcmd} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
\keyval-{fnpara-form}{格式代码}
脚注内容的格式,在此设置字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注内容。
- \kvsplit{fntext-code}{前代码,后代码}\newline
+ \kvsplit{fntext-code}{前代码,后代码}
可以用 \meta{前代码} 与 \meta{后代码} 额外增加脚注内容标记前后的代码,也可以只有前部分,\meta{前代码} 中最后一个格式命令可以带有一个参数接受脚注内容标记。由于脚注标记处于水平模式,一般用于在脚注内容标记与脚注首行间插入一点距离,或与脚注正文标记的格式稍有不同。
\begin{ctexexam}
\ebhdrset
@@ -870,19 +875,19 @@
\subsection{目录样式}
\label{subsec:catalog style}
-模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。模块或扩展包括了 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 二级路径,而使用 \module*{list} 路径可以统一设置图片、表格和代码目录的样式。默认值后带有星号的选项支持所有相应\textbf{标题级别}的路径,其它选项则处于 \module*{tocset} 路径下。目前支持标准的论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
+模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。模块或扩展包括了 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 二级路径,而使用 \module*{list} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{标题级别}的路径,其它选项则处于 \module*{tocset} 路径下。目前支持标准的论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
\begin{options}
- \keyval-{tocformat}{条目格式}\Module{tocset}\Default*{}
+ \keyval-{tocformat}{条目格式}\dtag\smodule{tocset}
目录中各级别条目的格式,可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
- \keyval-{tocformat+}{条目格式}\Default*{}
+ \keyval-{tocformat+}{条目格式}\dtag
与 \option{tocformat} 用法一样,只是在已有的格式命令后附加代码。
- \keyval-{tocindent}{刚性长度}\Default*{}
+ \keyval-{tocindent}{刚性长度}\dtag
各级别目录中的标题左边缩进距离,通常标题级别越低缩进越大。
- \keyval-{tocrule}{目录引导线命令}\Default*{}
+ \keyval-{tocrule}{目录引导线命令}\dtag
引导线选项 \option{tocrule} 中一般可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制引导线。
- \keyval-{tocafter}{距离命令}\Default*{\cs*{hspace}\Marg{1em}}
+ \keyval-{tocafter}{距离命令}\dtag\Default{\cs*{hspace}\Marg{1em}}
在各级别目录中标签与标题间的代码,默认为插入 \code{1em} 横向距离。
- \keyval-{tocline}{目录中的标题}\Default*{}
+ \keyval-{tocline}{目录中的标题}\dtag
这个选项扩展了图片、表格或代码加入目录的题注。选项中参数 \code{\#1} 代表相应题注编号 \cs*{the}\meta{计数器} 的值,参数 \code{\#2} 代表相应题注内容。
\begin{ctexexam}[labelref = exam:list command usage]
\ctexset
@@ -1252,7 +1257,7 @@
\item 增加定义脚注正文和内容标记格式的命令 \cs{defupfntmark} 和 \cs{defdownfntmark}。
\item 新增文档主目录中双语标题列表的输出排列方式选项 \option{bilist}。
\end{version}
- \begin{version}[v = 1.54,date = 2022/01/28]
+ \begin{version}[v = 1.55,date = 2022/01/28]
\added
\item 新增文类选项 \option{theorem} 用于提供定理功能支持。
\deprecated