From bdafc07360a98b693982369cce21a73afef5e3d7 Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Tue, 29 Jun 2021 03:01:11 +0000
Subject: CTAN sync 202106290301

---
 macros/latex/contrib/easybook/easybook.dtx | 102 +++++++++++++----------------
 1 file changed, 46 insertions(+), 56 deletions(-)

(limited to 'macros/latex/contrib/easybook/easybook.dtx')

diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index ee03bbced6..0d8603b04b 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -28,7 +28,7 @@
 %
 % \title{\sffamily easybook 文档类手册}
 % \author{瞿毅}
-% \date{2021/06/26\hskip\ccwd\relax v1.26l\thanks{\url{https://gitee.com/texl3/easybook}}}
+% \date{2021/06/28\hskip\ccwd\relax v1.26m\thanks{\url{https://gitee.com/texl3/easybook}}}
 %
 % \maketitle
 % \begin{abstract}
@@ -157,7 +157,7 @@
 %   floatpage = <true|(false)>
 % \end{syntax}
 % 开启这个选项后浮动环境 \env{table} 和 \env{figure} 的比例参数会使用默认值，关闭它则尽可能避免出现浮动页，使图表环境与正文段落更加紧凑，减少多余的空白版面。
-% \changes{v1.26l}{2021/06/15}{增加浮动环境比例参数选项 \opt{floatpage}。}
+% \changes{v1.26m}{2021/06/15}{增加浮动环境比例参数选项 \opt{floatpage}。}
 % \end{function}
 %
 % \subsection{article 模式}
@@ -191,7 +191,7 @@
 %   \tn{listoftables*+}\oarg{键值列表}
 %   \tn{listoflstlistings*+}\oarg{键值列表}
 % \end{syntax}
-% \tn{listoffigures} 命令输出图片目录，\tn{listoftables} 输出表格目录，\tn{listoflstlistings} 输出代码目录。带有星号的目录命令不将标题添加进主文档目录，带有+号的目录命令可以使当前标题编号。\tn{tableofcontents+} 与其它命令不同是用于输出双语目录，需要与双语目录标题命令 \tn{bichapter} 等或设置图片、表格和代码等英文目录的标题配合使用，附加代码是中文与英文目录之间的代码，可以插入目录样式和换页等命令。可选参数的键值列表如下：
+% \tn{listoffigures} 命令输出图片目录，\tn{listoftables} 输出表格目录，\tn{listoflstlistings} 输出代码目录。带有星号的目录命令不将标题添加进主文档目录，带有+号的目录命令可以使当前标题编号。\tn{tableofcontents+} 的+号含义则是输出双语目录，需要与双语目录标题命令 \tn{bichapter} 等或设置图片、表格和代码等英文目录的标题配合使用，附加代码是中文与英文目录之间的代码，可以插入目录样式和换页等命令。可选参数的 \meta{键值列表} 如下：
 % \changes{v1.25}{2021/05/05}{命令 \tn{tableofcontents} 可以输出双语目录。}
 % \end{function}
 %
@@ -239,7 +239,7 @@
 %   \tn{EBeforeAddBitoc*}\marg{加入目录英文标题前的代码}
 % \end{syntax}
 % \tn{appendix} 命令后的章节标题变为附录形式。英文目录中附录标题的格式用可选参数修改，英文附录目录前名字默认为 Appendix\tn{space}，后名字默认为空，名字之间用一个半角逗号分开，也可以只有一部分，表示英文附录目录前名字。英文附录目录数字输出命令默认为 \tn{Alph}\{chapter\}。
-% \changes{v1.26l}{2021/06/13}{增加调整英文目录格式的钩子 \tn{EBeforeAddBitoc}。}
+% \changes{v1.26m}{2021/06/13}{增加调整英文目录格式的钩子 \tn{EBeforeAddBitoc}。}
 % \end{function}
 %
 % \tn{EBeforeAddBitoc} 是一个作用于局部范围的英文目录钩子，可以插入标题或目录设置的命令改变英文目录中标题的显示格式，也可以覆盖上述的目录前后名字和编号等设置，带有星号的命令会重置之前的代码，放置在导言区或 \tn{bichapter} 等命令前生效。
@@ -247,16 +247,17 @@
 % \subsection{上标和下标}
 % \begin{function}[added = 2021-06-26]{\super,\sub,\supersub,\textsuperscript,\textsubscript}
 % \begin{syntax}
-%   \tn{super*}\oarg{垂直偏移}\parg{格式代码}\marg{内容}\oarg{水平偏移}
-%   \tn{sub*}\oarg{垂直偏移}\parg{格式代码}\marg{内容}\oarg{水平偏移}
-%   \tn{supersub*}\oarg{script sep}\oarg{对齐方式}\parg{上标代码}
+%   \tn{super*}\oarg{垂直偏移}[<高度>,<深度>]\parg{格式代码}\marg{内容}\oarg{水平偏移}
+%   \tn{sub*}\oarg{垂直偏移}[<高度>,<深度>]\parg{格式代码}\marg{内容}\oarg{水平偏移}
+%   \tn{supersub*}\oarg{上下标间距}\oarg{对齐方式}\parg{上标代码}
 %   \          \marg{上标内容}\marg{下标内容}
 %   \          \oarg{水平偏移}\parg{下标代码}
 % \end{syntax}
 % 上标和下标的功能来自 \pkg{spbmark} 宏包，\tn{super}、\tn{sub} 和 \tn{supersub} 三个命令可以用于输出上标和下标。它们根据当前处于文本模式还是数学模式来匹配相应的模式，或者可以使用它们的星号变体命令来强制使用数学模式。也可以使用键值列表对偏移量进行全局设置，详情见小节 \ref{subsec:style}。
+% \changes{v1.26m}{2021/06/28}{增加可以调整相对位置和格式的上标和下标命令 \tn{super}、\tn{sub} 和 \tn{supersub}。}
 % \end{function}
 %
-% 垂直和水平偏移默认值都是0pt，\meta{对齐方式} 的参数与 \opt{supersubalign} 相同。\meta{格式代码} 用于格式化上标和下标，可以插入字体或颜色等命令。代码中的最后一个命令可以接受一个为上标或下标的参数。\tn{textsuperscript} 和 \tn{textsubscript} 命令已被重新定义并且分别等价于 \tn{super} 和 \tn{sub}，如果您需要使用它们的原始定义创建新命令，则可以使用 \tn{spb@textsuperscript@save} 和 \tn{spb@textsubscript@save} 命令。
+% 垂直和水平偏移默认值都是0 pt，\meta{对齐方式} 的参数与 \opt{supersubalign} 相同。\meta{格式代码} 用于格式化上标和下标，可以插入字体或颜色等命令。代码中的最后一个命令可以接受一个为上标或下标的参数。\tn{textsuperscript} 和 \tn{textsubscript} 命令已被重新定义并且分别等价于 \tn{super} 和 \tn{sub}，如果您需要使用它们的原始定义创建新命令，则可以使用 \tn{spb@textsuperscript@save} 和 \tn{spb@textsubscript@save} 命令。
 %
 % \section{接口选项}
 % \label{sec:interface options}
@@ -509,7 +510,7 @@
 % 文档类已预置8个定理环境，环境名及对应的定理标题名见小节 \ref{subsec:theorem}，如果需要新的定理标题名或定理样式可使用这两个命令，由 \pkg{thmtools} 提供支持，用法与它的同名命令一致。
 % \changes{v1.23}{2021/03/12}{重新定义了新定理环境命令 \tn{newtheorem}。}
 % \changes{v1.24}{2021/04/25}{增加定义定理环境命令 \tn{EBNewTheorem}。}
-% \changes{v1.26l}{2021/06/15}{定义新定理环境的命令调整为 \tn{declaretheorem}。}
+% \changes{v1.26m}{2021/06/15}{定义新定理环境的命令调整为 \tn{declaretheorem}。}
 % \end{function}
 %
 % \begin{optdesc}
@@ -615,7 +616,7 @@
 %   \tn{markrule}\oarg{长度|(\tn{textwidth})}\parg{颜色名}\marg{线宽|(0.75pt)}[<上间距>+<下间距>]
 % \end{syntax}
 % 命令 \tn{easyhead} 和 \tn{easyfoot} 的使用方法与 \tn{fancyhead} 和 \tn{fancyfoot} 完全相同，它们需要在 \opt{head-foot} 选项中使用，设置的是一个名为 \opt{fancy} 的页面风格。\pkg{fancyhdr} 将页眉页脚分成了左中右和奇数页（odd）、偶数页（even）共12个部分，可选参数中E、O代表偶数、奇数，L、C、R代表左、中、右部分。单面打印时，含有偶数的选项无效。
-% \changes{v1.26l}{2021/06/14}{增加页眉页脚的横线绘制命令 \tn{markrule}。}
+% \changes{v1.26m}{2021/06/14}{增加页眉页脚的横线绘制命令 \tn{markrule}。}
 % \end{function}
 %
 % 命令 \tn{markrule} 用于绘制页眉页脚横线，长度默认为页面文本区的宽度，上下间距为横线与上下方部件的间距，带有长度单位，间距长度之间用+号分开，若只有一部分则表示上间距，这个命令也可以在正文中绘制横线。下面举一个设置页眉内容的例子：
@@ -1108,7 +1109,7 @@
 %<*class>
 \NeedsTeXFormat{LaTeX2e}[2020/10/01]
 \RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2021/06/26}{1.26l}{beta}
+\ProvidesExplClass{easybook}{2021/06/28}{1.26m}{beta}
 
 \bool_set_false:N \l__eb_compile_draft_bool
 \bool_set_false:N \l__eb_title_newline_bool
@@ -1355,7 +1356,7 @@
 %<*package>
 \NeedsTeXFormat{LaTeX2e}[2020/10/01]
 \RequirePackage{etoolbox}
-\ProvidesExplPackage{easybase}{2021/06/26}{1.26l}{beta}
+\ProvidesExplPackage{easybase}{2021/06/28}{1.26m}{beta}
 
 \cs_generate_variant:Nn \eb_ctex_define:nn { nx }
 \cs_generate_variant:Nn \int_to_arabic:n { v }
@@ -1659,6 +1660,26 @@
     \tl_if_novalue:nF {#5} { \vspace*{#5} }
     \group_end:
   }
+\cs_new:Npn \eb_fnmark_counter_pifont:N #1
+  { \ding{\int_eval:n { 171 + #1 }} }
+\cs_new:Npn \eb_fnmark_counter_pifont_neg:N #1
+  { \ding{\int_eval:n { 181 + #1 }} }
+\cs_new:Npn \eb_fnmark_counter_pifont_sans:N #1
+  { \ding{\int_eval:n { 191 + #1 }} }
+\cs_new:Npn \eb_fnmark_counter_pifont_sans_neg:N #1
+  { \ding{\int_eval:n { 201 + #1 }} }
+\cs_new:Npn \eb_footnote_counter:N #1
+  {
+    \str_case:VnF \l__eb_fnmark_number_choice_tl
+      {
+        { plain } { \int_use:N #1 }
+        { pifont } { \eb_fnmark_counter_pifont:N #1 }
+        { pifont* } { \eb_fnmark_counter_pifont_neg:N #1 }
+        { pifont-sans } { \eb_fnmark_counter_pifont_sans:N #1 }
+        { pifont-sans* } { \eb_fnmark_counter_pifont_sans_neg:N #1 }
+      }
+      { \int_use:N #1 }
+  }
 \eb_ctex_define:nn { hdrset }
   {
     head-foot .tl_set:N   = \l__eb_fancyhf_content_tl,
@@ -1786,18 +1807,19 @@
     \dim_set:Nn \footnotesep { \dim_use:N \box_ht:N \strutbox }
     \bool_if:NT \l__eb_chap_counter_withpart_bool
       { \counterwithin*{chapter}{part} }
-    \str_case:Vn \l__eb_foot_counter_parent_choice_tl
-      {
-        { part }
-        {
-          \counterwithout*{footnote}{chapter}
-          \counterwithin*{footnote}{part}
-        }
-        { page }
-        {
-          \counterwithout*{footnote}{chapter}
-          \counterwithin*{footnote}{page}
-        }
+    \str_case:VnF \l__eb_foot_counter_parent_choice_tl
+      {
+        { part } { \use_i:nn }
+        { page } { \use_ii:nn }
+      }
+      { \use_none:nn }
+      {
+        \counterwithout*{footnote}{chapter}
+        \counterwithin*{footnote}{part}
+      }
+      {
+        \counterwithout*{footnote}{chapter}
+        \counterwithin*{footnote}{page}
       }
     \bool_if:NTF \l__eb_footnote_hang_bool
       { \booltrue{FN@hangfoot} }
@@ -1841,38 +1863,6 @@
 \cs_set:Npn \thefootnote { \eb_footnote_counter:N \c@footnote }
 \cs_set:Npn \thempfootnote { \eb_alph:n { mpfootnote } }
 
-\cs_new_protected:Npn \eb_fnmark_number_set:nn #1#2
-  { \tl_const:cn { c__eb_fnmark_number_#1_tl } {#2} }
-\clist_map_inline:nn
-  {
-    { plain } { plain },
-    { pifont } { pifont },
-    { pifont_neg } { pifont* },
-    { pifont_sans } { pifont-sans },
-    { pifont_sans_neg } { pifont-sans* }
-  }
-  { \eb_fnmark_number_set:nn #1 }
-\cs_new:Npn \eb_fnmark_counter_pifont:N #1
-  { \ding{\int_eval:n { 171 + #1 }} }
-\cs_new:Npn \eb_fnmark_counter_pifont_neg:N #1
-  { \ding{\int_eval:n { 181 + #1 }} }
-\cs_new:Npn \eb_fnmark_counter_pifont_sans:N #1
-  { \ding{\int_eval:n { 191 + #1 }} }
-\cs_new:Npn \eb_fnmark_counter_pifont_sans_neg:N #1
-  { \ding{\int_eval:n { 201 + #1 }} }
-\cs_new:Npn \eb_footnote_counter:N #1
-  {
-    \str_case:VnF \l__eb_fnmark_number_choice_tl
-      {
-        { plain } { \int_use:N #1 }
-        { pifont } { \eb_fnmark_counter_pifont:N #1 }
-        { pifont* } { \eb_fnmark_counter_pifont_neg:N #1 }
-        { pifont-sans } { \eb_fnmark_counter_pifont_sans:N #1 }
-        { pifont-sans* } { \eb_fnmark_counter_pifont_sans_neg:N #1 }
-      }
-      { \int_use:N #1 }
-  }
-
 \contentsuse{lstlisting}{lol}
 \seq_const_from_clist:Nn \c__eb_toc_heading_level_seq
   { part,chapter,section,subsection,figure,table,lstlisting }
-- 
cgit v1.2.3

