summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2024-04-26 21:26:13 +0000
committerKarl Berry <karl@freefriends.org>2024-04-26 21:26:13 +0000
commit3a637df91b4adc6a95c103f3ae90448ab649c2b6 (patch)
tree9077f6ab04f9f65d65b378c79cb13b409f7fdbb5
parente05223a39d1747bc8d39427c21b583dfd68e27f6 (diff)
easybook (26apr24)
git-svn-id: svn://tug.org/texlive/trunk@71085 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/easybook/easybook.pdfbin639763 -> 641249 bytes
-rw-r--r--Master/texmf-dist/doc/latex/easybook/easybook.tex37
-rw-r--r--Master/texmf-dist/source/latex/easybook/easybook.dtx75
-rw-r--r--Master/texmf-dist/tex/latex/easybook/easybase.sty71
-rw-r--r--Master/texmf-dist/tex/latex/easybook/easybook.cls2
-rw-r--r--Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg2
6 files changed, 115 insertions, 72 deletions
diff --git a/Master/texmf-dist/doc/latex/easybook/easybook.pdf b/Master/texmf-dist/doc/latex/easybook/easybook.pdf
index eb2bc6422e6..b2ead2bd49b 100644
--- a/Master/texmf-dist/doc/latex/easybook/easybook.pdf
+++ b/Master/texmf-dist/doc/latex/easybook/easybook.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/easybook/easybook.tex b/Master/texmf-dist/doc/latex/easybook/easybook.tex
index a00aeb12d0f..5bb03558434 100644
--- a/Master/texmf-dist/doc/latex/easybook/easybook.tex
+++ b/Master/texmf-dist/doc/latex/easybook/easybook.tex
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024az,
- date = 2024/04/24,
+ version = v2024bb,
+ date = 2024/04/26,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi@163.com,
@@ -53,7 +53,7 @@
\setlist[1]{labelindent = \parindent}
\setlist[itemize,1]{label = smallbullet,leftmargin = *}
\setcounter{tocdepth}{2}
-\SetTblrInner[longtblr]{hline{1,Z} = {1pt,DarkBlue}}
+\SetTblrInner[longtblr]{columns = c,hline{1,Z} = {1pt,DarkBlue}}
\SetTblrOuter[longtblr]{presep = \bigskipamount,postsep = \bigskipamount}
\DefTblrTemplate{caption-tag}{default}{表\thetable}
\DefTblrTemplate{caption-sep}{default}{\quad}
@@ -242,7 +242,6 @@
\begin{longtblr}
[caption = 依赖的宏包清单,label = table:package list]
{
- colspec = *{5}{c},
cells = {cmd = \pkg*},
cell{1}{3,4} = PaleTurquoise,
cell{2}{5} = PaleTurquoise,
@@ -294,18 +293,15 @@
\setCJKmonofont{FangSong}
\newCJKfontfamily[song]\songti{SimSun}
\end{ctexexam}
-\end{options}
-
-\begin{options}
\keychoice{font}{noto,times,times*,ebgaramond,libertine,palatino,\fbox{auto}}\dtag
预置的英文字体相关配置方案如\ref{table:english font} 所示。这些字体已经包含在了 \hologo{TeXLive} 发行版中,所以通常不需要再专门安装。如果您想使用其它英文字体,可以使用 \pkg*{fontspec} 宏包的相关命令进行设置。
\begin{longtblr}
[
caption = 英文字体预设方案,
label = table:english font,
- remark{\ding{72}} = \code{times*} 方案为 \textsf{windows} 系统的预置字体。
+ remark{\ding{72}} = \code{times*} 方案为 \textsf{windows} 系统的预置字体。,
+ postsep = \bigskipamount-\itemsep
]{
- colspec = @{}*{4}{c}@{},
hline{2} = {0.5pt,DarkBlue},
row{1} = {font = \sffamily},
column{1} = {cmd = \code}
@@ -318,9 +314,6 @@
palatino & TG Pagella & Libertinus Sans & LM Mono \\
libertine & Libertinus Serif & Libertinus Sans & LM Mono
\end{longtblr}
-\end{options}
-
-\begin{options}
\keychoice{mathfont}{\fbox{times},noto,notosans,nc,ncf,stix2,charter,ebgaramond,libertine}\dtag
\leftfillchoice{mathfont}{minion,garamondx,baskervaldx,baskerville,none} \\
选择合适的数学字体,将会加载 \pkg*{newtxmath} 和 \pkg*{bm} 宏包。使用选项 \code{none} 时可以使用 \pkg*{unicode-math} 等其它数学字体宏包定义字体。
@@ -344,12 +337,11 @@
\begin{longtblr}
[caption = 模块功能和名称清单,label = table:module List]
{
- colspec = @{}*{5}{c}@{},
hline{3} = {0.5pt,DarkBlue},
- row{1,3} = {font = \sffamily,belowsep = 0pt},
+ row{1,3} = {font = \sffamily},
row{2,4} = {cmd = \module*}
}
- \hyperref[subsec:tools]{工具} & \hyperref[subsec:font]{字体} & \hyperref[subsec:spread]{行距} & \hyperref[subsec:hyperlinks]{超链接} & \hyperref[subsec:reference]{参考文献} \\
+ \hyperref[subsec:tools]{工具} & \hyperref[subsec:font]{部件字体} & \hyperref[subsec:spread]{行距} & \hyperref[subsec:hyperlinks]{超链接} & \hyperref[subsec:reference]{参考文献} \\
tools & font & spread & ref & bib \\
\hyperref[subsec:theorem]{定理} & \hyperref[subsec:page margins]{页面尺寸} & \hyperref[subsec:header and footer]{页眉页脚} & \hyperref[subsec:catalog]{目录} & \\
thmt & geo & hdr & toc &
@@ -499,7 +491,7 @@
行间公式与下面正文间的额外距离。
\end{options}
-\subsection[其它字体]{其它字体\smodule{font}}
+\subsection[部件字体]{部件字体\smodule{font}}
\label{subsec:font}
\begin{options}
\keyval{caption-table}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
@@ -639,8 +631,8 @@
\begin{commands}\noitemsep
\command{listoftheorems}[\sarg\oarg{键值列表}]\default{}
\item\key{listoftheorems}{定理目录标题名}
- \command{settheoremtocline}[\sarg\marg{环境名}\marg{标题定义}]\newtagv{2024az}%
- 对 \pkg*{thmtools} 宏包的定理环境目录命令 \cs{listoftheorems} 进行了兼容调整,\ref{subsec:directory command} 和\ref{subsec:catalog} 中的选项机制均可用,但标题定义选项 \option{tocline} 较为特殊,需用 \cs{settheoremtocline} 命令单独设置。在 \meta{标题定义} 中有三个命令 \cs{thmtname}、\cs{thmtenvname} 和 \cs{thmtnote} 分别代表定理名、定理环境名和题注用于排版目录条目。
+ \command{settheoremtocline}[\sarg\marg{环境名}\marg{标题定义}]\newtagv{2024bb}%
+ 对 \pkg*{thmtools} 宏包的定理环境目录命令 \cs{listoftheorems} 进行了适配调整,\ref{subsec:directory command} 和\ref{subsec:catalog} 中的选项机制均可用,但标题定义选项 \option{tocline} 较为特殊,需用 \cs{settheoremtocline} 命令单独设置。在 \meta{标题定义} 中有三个命令 \cs{thmtname}、\cs{thmtenvname} 和 \cs{thmtnote} 分别代表定理名、定理环境名和题注用于排版目录条目。
\end{commands}
\begin{commands}
@@ -872,10 +864,10 @@
\keyval{tocindent}{刚性长度}\dtag
目录条目左边的缩进距离,通常标题级别越低缩进越大。如果是段落型目录,仅在当前条目级别为段落中最高时有效。
\keyval{tocrule}{引导线命令}\dtag
- 引导线选项 \option{tocrule} 中一般可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制引导线。
+ 目录条目的引导线和页码。引导线可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制(同时输出页码),如果是一般不需要引导线的段落型目录,可以使用 \cs{thecontentspage} 命令输出页码。
\begin{commands}
\command{tocrule}[\sarg\harg\oarg{引导点间距}\darg{放大因子}\marg{引导点}\oarg{页码格式}]
- 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。命令带 \harg{} 号参数不添加目录页码,此时无格式的页码被保存在 \cs{thecontentspage} 命令中,可以配合盒子命令设置不同的页码左右间距和对齐方式。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
+ 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。命令带 \harg{} 号参数不输出目录页码,此时无格式的页码被保存在 \cs{thecontentspage} 命令中,可以配合盒子命令设置不同的页码左右间距和对齐方式。\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数用于接受页码。
\end{commands}
\keyval{toclabel}{标题标签定义}\dtag\newtagv{2024as}%
目录中各类型条目标题标签的定义,可与 \option{tocline} 选项联用设置标题。其中参数 \code{\#1} 代表标签的编号 \cs{thecontentslabel},参数 \code{\#2} 代表 \meta{条目名}。定义最后的命令可带有一个参数,用于接受标题内容,一些特殊情况例如需要将标题内容放在标签后,可以通过定义命令实现:
@@ -907,7 +899,7 @@
\begin{commands}
\command{RegisterTocName}[\sarg\marg{条目名}]\newtagv[Changed]{2024as}%
- 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,新类型的条目注册后选项初始值与图表条目相同。带有星号参数的命令使注册目录的条目形成一个段落,此时多出下面三个选项可用:
+ 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,新类型的条目注册后默认格式与图表条目相同。这个命令可以重复使用,会重置目录条目为默认格式。带有星号参数的命令使注册目录的条目形成一个段落,此时多出下面三个选项可用:
\begin{options}
\keyval{tocbegin}{开始代码}\dtag\newtagv{2024as}%
当前级别目录条目第一个标题前的代码,仅在存在更高级别的条目时有效。
@@ -996,6 +988,7 @@
\subsection{目录命令}
\label{subsec:directory command}
+\easybook{} 改进了标准文档类中定制性较低的章节标题和图表标题目录命令。现在目录命令带有可选参数用于设置标题格式和栏数等,并且与标准文档类不同的是目录命令可在正文中\textbf{重复}使用。更多目录命令的创建和样式设置可参考\ref{subsec:catalog}。
\begin{commands}
\command{tableofcontents}[\sarg\oarg{键值列表}\darg{代码钩子}]
章节标题目录命令,支持中英文双语标题目录输出。带有星号参数不输出目录条目上方的标题。\meta{代码钩子} 是当输出方案 \keyis{plan}{both} 时中文与英文目录之间执行的代码,可以插入设置目录样式和换页等命令。
@@ -1509,7 +1502,7 @@
\item 新增段落型目录条目附加代码的选项 \option{tocbegin}、\option{tocsep} 和 \option{tocend}。
\end{version}
\shortversion{v = 2024aw,date = 2022/04/22,changes = 新增新建章节标题命令 \cs{NewTitleCommand} 和 \cs{NewTitleEntryCommand}。}
- \shortversion{v = 2024az,date = 2022/04/24,changes = 增加对 \pkg*{thmtools} 宏包定理环境目录 \cs{listoftheorems} 的支持。}
+ \shortversion{v = 2024bb,date = 2022/04/26,changes = 增加对 \pkg*{thmtools} 宏包定理环境目录 \cs{listoftheorems} 的支持。}
\end{changelog}
\nocite{*}
diff --git a/Master/texmf-dist/source/latex/easybook/easybook.dtx b/Master/texmf-dist/source/latex/easybook/easybook.dtx
index 08b7136aac3..2a60d8894fa 100644
--- a/Master/texmf-dist/source/latex/easybook/easybook.dtx
+++ b/Master/texmf-dist/source/latex/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/04/24}{2024az}
+\ProvidesExplClass{easybook}{2024/04/26}{2024bb}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
@@ -297,7 +297,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2024/04/24}{2024az}
+\ProvidesExplPackage{easybase}{2024/04/26}{2024bb}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1204,7 +1204,7 @@
\l__eb_fnmarktext_format_tl \l__eb_fncustom_format_tl
}
}
-\NewDocumentCommand{\Footnote}{O{#2}mm}
+\NewDocumentCommand{\Footnote}{O{#2}m+m}
{
\group_begin:
\eb_fncustom_format_initial:
@@ -1470,7 +1470,7 @@
{ \par }
}
}
-\cs_new_protected:Npn \eb_toc_float_list_parse:nnnnn #1#2#3#4#5
+\cs_new_protected:Npn \eb_toc_list_struct_parse:nnnnn #1#2#3#4#5
{
\group_begin:
\tl_set_eq:Nc \eb@toc@title { list#4name }
@@ -1491,7 +1491,7 @@
\cs_new_protected:Npn \DeclareFloatList #1#2
{
\exp_args:Nc \DeclareDocumentCommand { listof#1s }{st+o}
- {\eb_toc_float_list_parse:nnnnn {##1} {##2} {##3} {#1} {#2}}
+ {\eb_toc_list_struct_parse:nnnnn {##1} {##2} {##3} {#1} {#2}}
\ctex_define:n
{
#1 .meta:nn = { ctex/#1 } {##1},
@@ -1538,7 +1538,7 @@
\bool_if:NT \l__eb_toc_plan_cn_bool
{
\IfBooleanF{#1}{\eb@toc@title@level{\eb@toc@title}{}}
- \eb_toc_if_title_between_hook:nn {#1} { main }
+ \eb_toc_if_title_between_hook:nn {#1} { title }
\eb_toc_start_multi_column_ext:n { toc }#4
}
\bool_if:NT \l__eb_toc_plan_bi_bool
@@ -1546,7 +1546,7 @@
\tl_if_eq:NnF \g__eb_bilist_permute_value_tl { mix }
{
\IfBooleanF{#1}{\eb@toc@title@level{\eb@bitoc@title}{}}
- \eb_toc_if_title_between_hook:nn {#1} { bimain }
+ \eb_toc_if_title_between_hook:nn {#1} { bititle }
\eb_toc_start_multi_column_ext:n { tec }
}
}
@@ -1667,13 +1667,30 @@
}
}
}
+\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
+ {
+ \normalsize\normalfont
+ \titlerule*[#3]{\IfValueTF{#4}{\scalebox{#4}{#5}}{#5}}#6
+ {
+ \IfBooleanF{#2}
+ {
+ \IfBooleanTF{#1}
+ {\thecontentspage}
+ {
+ \bool_if:NTF \l__eb_toc_dot_align_bool
+ { \contentspage }
+ { \thecontentspage }
+ }
+ }
+ }
+ }
\ctex_define:nn { toc }
{
lolskip .skip_set:N = \eb@toc@lol@skip,
lolskip .initial:n = 10pt,
- between .tl_set:N = \l__eb_toc_main_between_hook_tl,
+ between .tl_set:N = \l__eb_toc_title_between_hook_tl,
between .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
- bibetween .tl_set:N = \l__eb_toc_bimain_between_hook_tl,
+ bibetween .tl_set:N = \l__eb_toc_bititle_between_hook_tl,
bibetween .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
dotalign .bool_set:N = \l__eb_toc_dot_align_bool,
dotalign .default:n = true,
@@ -1685,23 +1702,27 @@
pagenumwd .initial:n = 1.55em,
unknown .code:n = \eb_msg_deprecated_option:n { toc }
}
-\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
+
+\NewHookWithArguments{starttoc/after}{1}
+\AddToHookWithArguments{starttoc/after}[aux]
{
- \normalsize\normalfont
- \titlerule*[#3]{\IfValueTF{#4}{\scalebox{#4}{#5}}{#5}}#6
+ \ifbool{@filesw}
{
- \IfBooleanF{#2}
- {
- \IfBooleanTF{#1}
- {\thecontentspage}
- {
- \bool_if:NTF \l__eb_toc_dot_align_bool
- { \contentspage }
- { \thecontentspage }
- }
- }
+ \tl_if_exist:cF { tf@#1 }
+ {\iow_new:c { tf@#1 }\iow_open:cn { tf@#1 } { \jobname.#1 }}
}
+ {}
+ }
+\cs_set:Npn \@starttoc #1
+ {
+ \group_begin:
+ \file_if_exist_input:n { \jobname.#1 }
+ \UseHookWithArguments{starttoc/after}{1}{#1}
+ \boolfalse{@nobreak}
+ \group_end:
}
+\AtEndDocument{\iow_now:Nn \@mainaux { \RemoveFromHook{starttoc/after}[aux] }}
+
\cs_set_eq:NN \eb@ctexsetii \ctex_set:nn
\cs_new_protected:Npn \SetTocStyle #1#2#3
{
@@ -1716,6 +1737,7 @@
}
\msg_new:nnn { easybase } { undefined-toc-style }
{ The~contents~style~'#1'~of~'#2'~is~not~defined. }
+
\ctex_set:n
{
part =
@@ -1823,7 +1845,7 @@
}
\cs_new_protected:Npn \ebaddtofont #1#2
{
- \str_case:nnF {#1}
+ \str_case:nn {#1}
{
{ table }
{ \tl_put_right:Nn \l__eb_font_caption_table_tl {#2} }
@@ -1837,8 +1859,11 @@
\tl_put_right:Nn \l__eb_font_caption_figure_tl {#2}
\tl_put_right:Nn \l__eb_font_caption_listing_tl {#2}
}
+ { footnote }
+ { \tl_put_right:Nn \eb@font@footnote {#2} }
+ { marginpar }
+ { \tl_put_right:Nn \marginfont {#2} }
}
- { \tl_put_right:cn { l__eb_font_#1_tl } {#2} }
}
\ctex_define:nn { spread }
{
@@ -2479,7 +2504,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/24}{2024az}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/26}{2024bb}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/Master/texmf-dist/tex/latex/easybook/easybase.sty b/Master/texmf-dist/tex/latex/easybook/easybase.sty
index c54b6421415..2486ba13d9e 100644
--- a/Master/texmf-dist/tex/latex/easybook/easybase.sty
+++ b/Master/texmf-dist/tex/latex/easybook/easybase.sty
@@ -20,7 +20,7 @@
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2024/04/24}{2024az}
+\ProvidesExplPackage{easybase}{2024/04/26}{2024bb}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -927,7 +927,7 @@
\l__eb_fnmarktext_format_tl \l__eb_fncustom_format_tl
}
}
-\NewDocumentCommand{\Footnote}{O{#2}mm}
+\NewDocumentCommand{\Footnote}{O{#2}m+m}
{
\group_begin:
\eb_fncustom_format_initial:
@@ -1193,7 +1193,7 @@
{ \par }
}
}
-\cs_new_protected:Npn \eb_toc_float_list_parse:nnnnn #1#2#3#4#5
+\cs_new_protected:Npn \eb_toc_list_struct_parse:nnnnn #1#2#3#4#5
{
\group_begin:
\tl_set_eq:Nc \eb@toc@title { list#4name }
@@ -1214,7 +1214,7 @@
\cs_new_protected:Npn \DeclareFloatList #1#2
{
\exp_args:Nc \DeclareDocumentCommand { listof#1s }{st+o}
- {\eb_toc_float_list_parse:nnnnn {##1} {##2} {##3} {#1} {#2}}
+ {\eb_toc_list_struct_parse:nnnnn {##1} {##2} {##3} {#1} {#2}}
\ctex_define:n
{
#1 .meta:nn = { ctex/#1 } {##1},
@@ -1261,7 +1261,7 @@
\bool_if:NT \l__eb_toc_plan_cn_bool
{
\IfBooleanF{#1}{\eb@toc@title@level{\eb@toc@title}{}}
- \eb_toc_if_title_between_hook:nn {#1} { main }
+ \eb_toc_if_title_between_hook:nn {#1} { title }
\eb_toc_start_multi_column_ext:n { toc }#4
}
\bool_if:NT \l__eb_toc_plan_bi_bool
@@ -1269,7 +1269,7 @@
\tl_if_eq:NnF \g__eb_bilist_permute_value_tl { mix }
{
\IfBooleanF{#1}{\eb@toc@title@level{\eb@bitoc@title}{}}
- \eb_toc_if_title_between_hook:nn {#1} { bimain }
+ \eb_toc_if_title_between_hook:nn {#1} { bititle }
\eb_toc_start_multi_column_ext:n { tec }
}
}
@@ -1390,13 +1390,30 @@
}
}
}
+\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
+ {
+ \normalsize\normalfont
+ \titlerule*[#3]{\IfValueTF{#4}{\scalebox{#4}{#5}}{#5}}#6
+ {
+ \IfBooleanF{#2}
+ {
+ \IfBooleanTF{#1}
+ {\thecontentspage}
+ {
+ \bool_if:NTF \l__eb_toc_dot_align_bool
+ { \contentspage }
+ { \thecontentspage }
+ }
+ }
+ }
+ }
\ctex_define:nn { toc }
{
lolskip .skip_set:N = \eb@toc@lol@skip,
lolskip .initial:n = 10pt,
- between .tl_set:N = \l__eb_toc_main_between_hook_tl,
+ between .tl_set:N = \l__eb_toc_title_between_hook_tl,
between .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
- bibetween .tl_set:N = \l__eb_toc_bimain_between_hook_tl,
+ bibetween .tl_set:N = \l__eb_toc_bititle_between_hook_tl,
bibetween .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
dotalign .bool_set:N = \l__eb_toc_dot_align_bool,
dotalign .default:n = true,
@@ -1408,23 +1425,27 @@
pagenumwd .initial:n = 1.55em,
unknown .code:n = \eb_msg_deprecated_option:n { toc }
}
-\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
+
+\NewHookWithArguments{starttoc/after}{1}
+\AddToHookWithArguments{starttoc/after}[aux]
{
- \normalsize\normalfont
- \titlerule*[#3]{\IfValueTF{#4}{\scalebox{#4}{#5}}{#5}}#6
+ \ifbool{@filesw}
{
- \IfBooleanF{#2}
- {
- \IfBooleanTF{#1}
- {\thecontentspage}
- {
- \bool_if:NTF \l__eb_toc_dot_align_bool
- { \contentspage }
- { \thecontentspage }
- }
- }
+ \tl_if_exist:cF { tf@#1 }
+ {\iow_new:c { tf@#1 }\iow_open:cn { tf@#1 } { \jobname.#1 }}
}
+ {}
+ }
+\cs_set:Npn \@starttoc #1
+ {
+ \group_begin:
+ \file_if_exist_input:n { \jobname.#1 }
+ \UseHookWithArguments{starttoc/after}{1}{#1}
+ \boolfalse{@nobreak}
+ \group_end:
}
+\AtEndDocument{\iow_now:Nn \@mainaux { \RemoveFromHook{starttoc/after}[aux] }}
+
\cs_set_eq:NN \eb@ctexsetii \ctex_set:nn
\cs_new_protected:Npn \SetTocStyle #1#2#3
{
@@ -1439,6 +1460,7 @@
}
\msg_new:nnn { easybase } { undefined-toc-style }
{ The~contents~style~'#1'~of~'#2'~is~not~defined. }
+
\ctex_set:n
{
part =
@@ -1546,7 +1568,7 @@
}
\cs_new_protected:Npn \ebaddtofont #1#2
{
- \str_case:nnF {#1}
+ \str_case:nn {#1}
{
{ table }
{ \tl_put_right:Nn \l__eb_font_caption_table_tl {#2} }
@@ -1560,8 +1582,11 @@
\tl_put_right:Nn \l__eb_font_caption_figure_tl {#2}
\tl_put_right:Nn \l__eb_font_caption_listing_tl {#2}
}
+ { footnote }
+ { \tl_put_right:Nn \eb@font@footnote {#2} }
+ { marginpar }
+ { \tl_put_right:Nn \marginfont {#2} }
}
- { \tl_put_right:cn { l__eb_font_#1_tl } {#2} }
}
\ctex_define:nn { spread }
{
diff --git a/Master/texmf-dist/tex/latex/easybook/easybook.cls b/Master/texmf-dist/tex/latex/easybook/easybook.cls
index 76926ae746e..cff9c43d8f1 100644
--- a/Master/texmf-dist/tex/latex/easybook/easybook.cls
+++ b/Master/texmf-dist/tex/latex/easybook/easybook.cls
@@ -20,7 +20,7 @@
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/04/24}{2024az}
+\ProvidesExplClass{easybook}{2024/04/26}{2024bb}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
diff --git a/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg b/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
index 2df24f8bd55..c2c9aed2f91 100644
--- a/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
+++ b/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
@@ -18,7 +18,7 @@
%% LaTeX version 2005/12/01 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/24}{2024az}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/26}{2024bb}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2