texlive[71016] Master/texmf-dist: easybook (20apr24)
commits+karl at tug.org
commits+karl at tug.org
Sat Apr 20 21:26:20 CEST 2024
Revision: 71016
https://tug.org/svn/texlive?view=revision&revision=71016
Author: karl
Date: 2024-04-20 21:26:20 +0200 (Sat, 20 Apr 2024)
Log Message:
-----------
easybook (20apr24)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/easybook/easybook.pdf
trunk/Master/texmf-dist/doc/latex/easybook/easybook.tex
trunk/Master/texmf-dist/source/latex/easybook/easybook.dtx
trunk/Master/texmf-dist/tex/latex/easybook/easybase.sty
trunk/Master/texmf-dist/tex/latex/easybook/easybook.cls
trunk/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
Modified: trunk/Master/texmf-dist/doc/latex/easybook/easybook.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/easybook/easybook.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/easybook/easybook.tex 2024-04-20 19:26:11 UTC (rev 71015)
+++ trunk/Master/texmf-dist/doc/latex/easybook/easybook.tex 2024-04-20 19:26:20 UTC (rev 71016)
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024ar,
- date = 2024/04/02,
+ version = v2024as,
+ date = 2024/04/19,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi at 163.com,
@@ -113,6 +113,7 @@
\IfBooleanF{#1}{\cnltx at checkdefault{\hfill\newline}}
}
\newnote{\newtag}[1][New]{\fbox{#1}}
+\newnote{\newtagv}[2][New]{#1\\#2}
% Multi-row values alignment when there are many choices
\newcommand{\leftfillchoice}[2]
{
@@ -831,6 +832,8 @@
\command{tocrule}[\sarg\harg\oarg{引导点间距}\darg{放大因子}\marg{引导点}\oarg{页码格式}]
生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。命令带 \harg{} 号参数不添加目录页码,此时无格式的页码被保存在 \cs{thecontentspage} 命令中,可以配合盒子命令设置不同的页码左右间距和对齐方式。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
\end{commands}
+ \keyval{toclabel}{标题标签格式}\dtag\newtagv{2024as}%
+ 目录中各类型条目标题标签的格式,可与 \option{tocline} 选项联用设置标题。其中参数 \code{\#1} 代表标签的编号 \cs{thecontentslabel},参数 \code{\#2} 代表 \meta{条目名}。
\keyval{tocafter}{距离命令}\dtag\Default{\cs*{hspace}\Marg{1em}}
目录条目标签与标题间的代码,默认为插入 \code{1em} 横向距离。
\keyval{tocbelow}{距离命令}\dtag
@@ -847,14 +850,23 @@
tocrule = \tocrule[0.6pc](1.1){.}[\zihao{5}],
tocline = \CTEXnumberline{#1}#2
},
- section/tocrule = \tocrule-{}\makebox[1cm]{\rlap{\thecontentspage}}
+ section/toclabel = \contentspush{#1\hspace{0.5em}},
+ section/tocrule = \tocrule-{}\makebox[1cm]{\rlap{\thecontentspage}}
}
\end{ctexexam}
\end{options}
\begin{commands}
- \command{RegisterTocName}[\marg{条目名}]
- 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,新类型的条目注册后选项初始值与图表条目相同。
+ \command{RegisterTocName}[\sarg\marg{条目名}]
+ 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,新类型的条目注册后选项初始值与图表条目相同。带有星号参数的命令使注册目录的条目形成一个段落,此时多出下面三个选项可用:
+ \begin{options}
+ \keyval{tocbegin}{开始代码}\dtag\newtagv{2024as}%
+ 当前级别目录条目第一个标题前的代码,仅在存在更高级别的条目时有效。
+ \keyval{tocsep}{中间代码}\dtag\Default{\Marg{.—}}\newtagv{2024as}%
+ 当前级别目录条目每个标题之间的代码。
+ \keyval{tocend}{结束代码}\dtag\Default{\Marg{.}}\newtagv{2024as}%
+ 当前级别目录条目最后一个标题后的代码。
+ \end{options}
\command{contentsuse}[\marg{条目名}\marg{扩展名}]
激活条目类型名称为 \meta{条目名} 的目录定制功能,它使用的目录文件后缀为 \meta{扩展名}。需要在激活条目后再使用命令 \cs{RegisterTocName} 注册选项。
\command{DeclareFloatList}[\marg{条目名}\marg{扩展名}]
@@ -869,7 +881,7 @@
\DeclareFloatList{algorithm}{loa}
\listofalgorithms[multoc] % 在正文中输出双栏算法目录
\end{ctexexam}
- \command{AllotCaptionExt}[\marg{条目名}\marg{扩展名}]\newtag%
+ \command{AllotCaptionExt}[\marg{条目名}\marg{扩展名}]
给条目类型名称为 \meta{条目名} 的标题分配目录文件 \meta{扩展名},注意 \meta{扩展名} 需要被定义在 \cs*{ext@}\meta{条目名} 命令中才有效(\pkg*{caption} 宏包的默认定义形式)。可以使不同的 \meta{条目名} 共享一个目录:
\begin{ctexexam}
\AllotCaptionExt{table}{lof}
@@ -1421,6 +1433,13 @@
\item 新增目录文件扩展名分配命令 \cs{AllotCaptionExt}。
\end{version}
\shortversion{v = 2024aq,date = 2022/03/31,changes = 修复命令 \cs{ebifbitoc} 用于条目缩进选项 \option{tocindent} 失效的问题。}
+ \begin{version}[v = 2024as,date = 2024/04/19]
+ \changed
+ \item 目录条目样式注册命令 \cs{RegisterTocName} 增加星号参数,支持设置段落型目录。
+ \added
+ \item 新增目录条目标题标签设置的选项 \option{toclabel}。
+ \item 新增段落型目录条目附加代码的选项 \option{tocbegin}、\option{tocsep} 和 \option{tocend}。
+ \end{version}
\end{changelog}
\nocite{*}
Modified: trunk/Master/texmf-dist/source/latex/easybook/easybook.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/easybook/easybook.dtx 2024-04-20 19:26:11 UTC (rev 71015)
+++ trunk/Master/texmf-dist/source/latex/easybook/easybook.dtx 2024-04-20 19:26:20 UTC (rev 71016)
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/04/02}{2024ar}
+\ProvidesExplClass{easybook}{2024/04/19}{2024as}
{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/02}{2024ar}
+\ProvidesExplPackage{easybase}{2024/04/19}{2024as}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1519,19 +1519,6 @@
\seq_put_right:Nn \c__ctex_headings_seq { figure }
\seq_put_right:Nn \c__ctex_headings_seq { lstlisting }
\seq_remove_duplicates:N \c__ctex_headings_seq
-\cs_new_protected:Npn \eb_toc_entry_if_hang:n #1
- {
- \bool_if:NTF \l__eb_toc_entry_hang_bool
- { \contentspush }
- { \use:n }
- {
- \bool_if:NTF \l__eb_toc_number_color_bool
- { \textcolor{ctex at toc@number} }
- { \use:n }
- { \thecontentslabel }
- \tl_use:c { l__eb_toc_#1_after_tl }
- }
- }
\cs_new_protected:Npn \eb_toc_format_define:n #1
{
\ctex_define:n
@@ -1541,30 +1528,71 @@
#1/tocformat+ .code:n = \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1},
#1/tocformat~+ .code:n = \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1},
#1/tocindent .tl_set:c = l__eb_toc_#1_indent_tl,
+ #1/toclabel .cs_set:cp = { eb_toc_entry_#1:nnn } ##1##2##3,
#1/tocrule .tl_set:c = l__eb_toc_#1_rule_tl,
#1/tocafter .tl_set:c = l__eb_toc_#1_after_tl,
- #1/tocbelow .tl_set:c = l__eb_toc_#1_below_tl
+ #1/tocbelow .tl_set:c = l__eb_toc_#1_below_tl,
+ #1/tocbegin .meta:n = { #1/tocbelow = {##1} },
+ #1/tocsep .tl_set:c = l__eb_toc_#1_sep_tl,
+ #1/tocend .tl_set:c = l__eb_toc_#1_end_tl
}
}
-\cs_new_protected:Npn \eb_toc_format_initial:n #1
+\tl_new:N \l_eb_tmpa_tl
+\tl_new:N \l_eb_tmpb_tl
+\cs_new_protected:Npn \eb_toc_format_initial:nn #1#2
{
- \titlecontents{#1}
- [\tl_use:c { l__eb_toc_#1_indent_tl }]
- {\tl_use:c { l__eb_toc_#1_format_tl }}
- {\eb_toc_entry_if_hang:n {#1}}{}
- {\tl_use:c { l__eb_toc_#1_rule_tl }}
- [\tl_use:c { l__eb_toc_#1_below_tl }]
- \ctex_set:nn {#1}
+ \exp_last_unbraced:Nx
+ \use:n
{
+ \exp_not:N
+ \titlecontents
+ \tl_use:N \l_eb_tmpa_tl
+ \exp_not:n
+ {
+ {#2}
+ [\tl_use:c { l__eb_toc_#2_indent_tl }]
+ {\tl_use:c { l__eb_toc_#2_format_tl }}
+ {\use:c { eb_toc_entry_#2:nnn } { \thecontentslabel } {#2} {#1}}{}
+ {\tl_use:c { l__eb_toc_#2_rule_tl }}
+ [\tl_use:c { l__eb_toc_#2_below_tl }]
+ }
+ \exp_not:o { \l_eb_tmpb_tl }
+ }
+ \ctex_set:nn {#2}
+ {
tocindent = 0em,
- tocrule = \tocrule{$\cdot$},
- tocafter = \hspace{1em}
+ tocrule = \IfBooleanTF{#1}{,~\thecontentspage}{\tocrule{$\cdot$}},
+ toclabel =
+ {
+ \bool_if:NTF \l__eb_toc_entry_hang_bool
+ { \IfBooleanTF{##3}{\use:n}{\contentspush} }
+ { \use:n }
+ {
+ \bool_if:NTF \l__eb_toc_number_color_bool
+ { \textcolor{ctex at toc@number} }
+ { \use:n }
+ { ##1 }
+ \tl_use:c { l__eb_toc_##2_after_tl }
+ }
+ },
+ tocafter = \hspace{1em},
+ tocsep = .—,
+ tocend = .
}
}
-\cs_new_protected:Npn \RegisterTocName #1
+\NewDocumentCommand{\RegisterTocName}{sm}
{
- \eb_toc_format_define:n {#1}
- \eb_toc_format_initial:n {#1}
+ \IfBooleanT{#1}
+ {
+ \tl_set:Nn \l_eb_tmpa_tl {*}
+ \tl_set:Nn \l_eb_tmpb_tl
+ {
+ [\tl_use:c { l__eb_toc_#2_sep_tl }]
+ [\tl_use:c { l__eb_toc_#2_end_tl }]
+ }
+ }
+ \eb_toc_format_define:n {#2}
+ \eb_toc_format_initial:nn {#1} {#2}
}
\seq_map_function:NN
\c__ctex_headings_seq \RegisterTocName
@@ -2392,7 +2420,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/02}{2024ar}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/19}{2024as}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
Modified: trunk/Master/texmf-dist/tex/latex/easybook/easybase.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/easybook/easybase.sty 2024-04-20 19:26:11 UTC (rev 71015)
+++ trunk/Master/texmf-dist/tex/latex/easybook/easybase.sty 2024-04-20 19:26:20 UTC (rev 71016)
@@ -20,7 +20,7 @@
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2024/04/02}{2024ar}
+\ProvidesExplPackage{easybase}{2024/04/19}{2024as}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1242,19 +1242,6 @@
\seq_put_right:Nn \c__ctex_headings_seq { figure }
\seq_put_right:Nn \c__ctex_headings_seq { lstlisting }
\seq_remove_duplicates:N \c__ctex_headings_seq
-\cs_new_protected:Npn \eb_toc_entry_if_hang:n #1
- {
- \bool_if:NTF \l__eb_toc_entry_hang_bool
- { \contentspush }
- { \use:n }
- {
- \bool_if:NTF \l__eb_toc_number_color_bool
- { \textcolor{ctex at toc@number} }
- { \use:n }
- { \thecontentslabel }
- \tl_use:c { l__eb_toc_#1_after_tl }
- }
- }
\cs_new_protected:Npn \eb_toc_format_define:n #1
{
\ctex_define:n
@@ -1264,30 +1251,71 @@
#1/tocformat+ .code:n = \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1},
#1/tocformat~+ .code:n = \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1},
#1/tocindent .tl_set:c = l__eb_toc_#1_indent_tl,
+ #1/toclabel .cs_set:cp = { eb_toc_entry_#1:nnn } ##1##2##3,
#1/tocrule .tl_set:c = l__eb_toc_#1_rule_tl,
#1/tocafter .tl_set:c = l__eb_toc_#1_after_tl,
- #1/tocbelow .tl_set:c = l__eb_toc_#1_below_tl
+ #1/tocbelow .tl_set:c = l__eb_toc_#1_below_tl,
+ #1/tocbegin .meta:n = { #1/tocbelow = {##1} },
+ #1/tocsep .tl_set:c = l__eb_toc_#1_sep_tl,
+ #1/tocend .tl_set:c = l__eb_toc_#1_end_tl
}
}
-\cs_new_protected:Npn \eb_toc_format_initial:n #1
+\tl_new:N \l_eb_tmpa_tl
+\tl_new:N \l_eb_tmpb_tl
+\cs_new_protected:Npn \eb_toc_format_initial:nn #1#2
{
- \titlecontents{#1}
- [\tl_use:c { l__eb_toc_#1_indent_tl }]
- {\tl_use:c { l__eb_toc_#1_format_tl }}
- {\eb_toc_entry_if_hang:n {#1}}{}
- {\tl_use:c { l__eb_toc_#1_rule_tl }}
- [\tl_use:c { l__eb_toc_#1_below_tl }]
- \ctex_set:nn {#1}
+ \exp_last_unbraced:Nx
+ \use:n
{
+ \exp_not:N
+ \titlecontents
+ \tl_use:N \l_eb_tmpa_tl
+ \exp_not:n
+ {
+ {#2}
+ [\tl_use:c { l__eb_toc_#2_indent_tl }]
+ {\tl_use:c { l__eb_toc_#2_format_tl }}
+ {\use:c { eb_toc_entry_#2:nnn } { \thecontentslabel } {#2} {#1}}{}
+ {\tl_use:c { l__eb_toc_#2_rule_tl }}
+ [\tl_use:c { l__eb_toc_#2_below_tl }]
+ }
+ \exp_not:o { \l_eb_tmpb_tl }
+ }
+ \ctex_set:nn {#2}
+ {
tocindent = 0em,
- tocrule = \tocrule{$\cdot$},
- tocafter = \hspace{1em}
+ tocrule = \IfBooleanTF{#1}{,~\thecontentspage}{\tocrule{$\cdot$}},
+ toclabel =
+ {
+ \bool_if:NTF \l__eb_toc_entry_hang_bool
+ { \IfBooleanTF{##3}{\use:n}{\contentspush} }
+ { \use:n }
+ {
+ \bool_if:NTF \l__eb_toc_number_color_bool
+ { \textcolor{ctex at toc@number} }
+ { \use:n }
+ { ##1 }
+ \tl_use:c { l__eb_toc_##2_after_tl }
+ }
+ },
+ tocafter = \hspace{1em},
+ tocsep = .—,
+ tocend = .
}
}
-\cs_new_protected:Npn \RegisterTocName #1
+\NewDocumentCommand{\RegisterTocName}{sm}
{
- \eb_toc_format_define:n {#1}
- \eb_toc_format_initial:n {#1}
+ \IfBooleanT{#1}
+ {
+ \tl_set:Nn \l_eb_tmpa_tl {*}
+ \tl_set:Nn \l_eb_tmpb_tl
+ {
+ [\tl_use:c { l__eb_toc_#2_sep_tl }]
+ [\tl_use:c { l__eb_toc_#2_end_tl }]
+ }
+ }
+ \eb_toc_format_define:n {#2}
+ \eb_toc_format_initial:nn {#1} {#2}
}
\seq_map_function:NN
\c__ctex_headings_seq \RegisterTocName
Modified: trunk/Master/texmf-dist/tex/latex/easybook/easybook.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/easybook/easybook.cls 2024-04-20 19:26:11 UTC (rev 71015)
+++ trunk/Master/texmf-dist/tex/latex/easybook/easybook.cls 2024-04-20 19:26:20 UTC (rev 71016)
@@ -20,7 +20,7 @@
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/04/02}{2024ar}
+\ProvidesExplClass{easybook}{2024/04/19}{2024as}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
Modified: trunk/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
===================================================================
--- trunk/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg 2024-04-20 19:26:11 UTC (rev 71015)
+++ trunk/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg 2024-04-20 19:26:20 UTC (rev 71016)
@@ -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/02}{2024ar}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/19}{2024as}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
More information about the tex-live-commits
mailing list.