summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/easybook/easybook.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-04-25 03:01:05 +0000
committerNorbert Preining <norbert@preining.info>2024-04-25 03:01:05 +0000
commit8c332d190fc87f5943debba153cad209c0f8952e (patch)
tree2dfcbedcfb35c6225af07ec323b508f94f29d3d2 /macros/latex/contrib/easybook/easybook.dtx
parenta1bae2c92d8b9b9cbd26c71b0feb7abd276e5993 (diff)
CTAN sync 202404250301
Diffstat (limited to 'macros/latex/contrib/easybook/easybook.dtx')
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx162
1 files changed, 89 insertions, 73 deletions
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index b6c3eceaaa..08b7136aac 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/04/23}{2024ax}
+\ProvidesExplClass{easybook}{2024/04/24}{2024az}
{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/23}{2024ax}
+\ProvidesExplPackage{easybase}{2024/04/24}{2024az}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -310,6 +310,7 @@
\cs_generate_variant:Nn \ctex_define:nn { nx }
\cs_generate_variant:Nn \eb_set_hyperref:n { x }
\cs_generate_variant:Nn \eb_at_begin_environment:nn { on }
+\cs_generate_variant:Nn \tl_if_novalue:nF { V }
\cs_set_protected:Npn \ctex_define:nn #1
{ \keys_define:nn { ctex/#1 } }
@@ -373,7 +374,7 @@
{\IfFileExists{#2.sty}{\RequirePackage{#2}[#3]}{}}
{\IfFileExists{#2.sty}{\RequirePackage[#1]{#2}[#3]}{}}
}
-\cs_new_protected:Npn \LoadPackage #1
+\cs_new_protected:Npn \ebloadpackage #1
{
\int_compare:nTF { \clist_count:n {#1} <= 1 }
{ \RequirePackage }
@@ -433,14 +434,20 @@
\seq_set_from_clist:Nn \l__eb_module_paths_seq
{
- style,subfont,spread,
- bibset,thmset,tocset,
- hdrset,refset,geoset,float
+ tools,font,spread,
+ bib,thmt,toc,
+ hdr,ref,geo,float
}
\seq_map_inline:Nn \l__eb_module_paths_seq
{
\ctex_define:n { #1 .meta:nn = { ctex/#1 } {##1} }
- \cs_new_protected:cpn { eb#1 } ##1 { \ctex_set:nn {#1} {##1} }
+ \cs_new_protected:cpn { eb#1set } ##1 { \ctex_set:nn {#1} {##1} }
+ }
+\RenewDocumentCommand{\ctexset}{om}
+ {
+ \IfValueTF{#1}
+ {\ctex_set:nn {#1} {#2}}
+ {\ctex_set:n {#2}}
}
\bool_until_do:nn
{ \int_compare_p:nNn { \seq_count:N \l__eb_module_paths_seq } < { 8 } }
@@ -481,7 +488,7 @@
The~'\string\chapter'\ command~will~not~be~used.
}
-\LoadPackage
+\ebloadpackage
{
[text]{spbmark},
[normalem]{ulem},
@@ -525,7 +532,7 @@
\eb@tag@brackets@right
}
}
-\ctex_define:nn { style }
+\ctex_define:nn { tools }
{
multoc .int_set:N = \l__eb_toc_columns_int,
multoc .default:n = 2,
@@ -554,20 +561,20 @@
marginparsep = 8pt,
marginparwidth = 2.54cm
}
-\ctex_define:nn { geoset }
+\cs_new:Npn \eb_unknown_kv_handle:
+ {
+ \str_use:N \l_keys_key_str
+ \tl_if_novalue:VF \l_keys_value_tl
+ { = {\exp_not:V \l_keys_value_tl} }
+ }
+\ctex_define:nn { geo }
{
headruleskip .tl_set:N = \headruleskip,
headruleskip .initial:n = 0pt,
footruleskip .tl_set:N = \footruleskip,
footruleskip .initial:n = 3.5pt,
- unknown .code:n =
- {
- \exp_args:Nx \geometry
- {
- \str_use:N \l_keys_key_str
- \tl_if_empty:NF \l_keys_value_tl { = \exp_not:n { {#1} } }
- }
- }
+ unknown .code:n = \exp_args:Nx \geometry { \eb_unknown_kv_handle: },
+ unknown .default:V = \c_novalue_tl
}
\cs_new_protected:Npn \blankpagestyle #1
@@ -628,7 +635,7 @@
{ none* } { \text_lowercase:n }
}
}
-\ctex_define:nn { hdrset }
+\ctex_define:nn { hdr }
{
chap-mark .cs_set:Np = \eb@mark@chapter@whole #1,
chap-mark .initial:n =
@@ -710,7 +717,7 @@
\providecommand{\kaishu}{\itshape}
}
-\ctex_define:nn { style }
+\ctex_define:nn { tools }
{
fntnumwith .choices:nn =
{ part,page,chapter }
@@ -866,7 +873,7 @@
\tl_new:N \l__eb_fnmarktext_format_tl
\tl_new:N \l__eb_fncustom_format_tl
\clist_new:N \l__eb_footnote_value_clist
-\ctex_define:nn { hdrset }
+\ctex_define:nn { hdr }
{
fnfirstindent .tl_set:N = \fnfirstindent,
fnfirstindent .initial:n = 1em,
@@ -907,7 +914,7 @@
fntext-num/unknown .code:n = \eb_fnmarktext_short_label_set:Nn \thefootnote {#1},
fnmarktext-num .meta:n = { fntext-num = #1,fnmark-num = #1 },
fnmarktext-num .initial:n = plain,
- unknown .code:n = \eb_msg_deprecated_option:n { hdrset }
+ unknown .code:n = \eb_msg_deprecated_option:n { hdr }
}
\eb_at_end_preamble:n
@@ -1033,7 +1040,7 @@
{ \reset@font }
{
\setspread{\eb@spread@footnote}
- \eb@subfont@footnote
+ \eb@font@footnote
}
}
\cs_set_eq:NN \eb@@makefntext \@makefntext
@@ -1150,7 +1157,7 @@
{ \tl_clear:N \l__eb_fnmarktext_format_tl }
}
\bool_if:NF \l__eb_fnmarktext_format_match_bool { \spbset{spcmd = { }} }
- \eb@subfont@footnote
+ \eb@font@footnote
}
\cs_new_protected:Npn \defupfntmark #1
{ \cs_set:Npn \@makefnmark { \hbox:n {#1} } }
@@ -1241,7 +1248,7 @@
\@addtoreset{#3}{#5}
\IfBooleanF{#1}
{
- \exp_args:Nc \cs_gset:Npn { the#3 }
+ \cs_gset:cpn { the#3 }
{ \use:c { the#5 }#4#2{#3} }
}
}
@@ -1255,20 +1262,21 @@
\cs_set:Npn \thebisection { \eb_section_counter_prefix:n { bi } }
\cs_set:Npn \thebisubsection { \thebisection.\@arabic\c@bisubsection }
\cs_set:Npn \thesection { \eb_section_counter_prefix:n { } }
-\tl_new:N \eb@before@addbitoc@hook
-\NewDocumentCommand{\BeforeAddBitoc}{sm}
+\tl_new:N \eb@before@bitocline@hook
+\NewDocumentCommand{\BeforeAddtoBitoc}{sm}
{
\IfBooleanTF{#1}
- {\tl_gset:Nn \eb@before@addbitoc@hook {#2}}
- {\tl_gput_right:Nn \eb@before@addbitoc@hook {#2}}
+ {\tl_gset:Nn \eb@before@bitocline@hook {#2}}
+ {\tl_gput_right:Nn \eb@before@bitocline@hook {#2}}
}
+\cs_set_eq:NN \BeforeAddBitoc \BeforeAddtoBitoc
\cs_new_protected:Npn \CTEX@addbitocline #1#2
{
\group_begin:
\def\CTEX@prechapter{\CTEX@prebichapter}
\def\CTEX@thechapter{\CTEX@bichapter@number}
\def\CTEX@postchapter{\CTEX@postbichapter}
- \eb@before@addbitoc@hook
+ \eb@before@bitocline@hook
\tl_if_eq:NnTF \g__eb_bilist_permute_value_tl { mix }
{ \addcontentsline{toc}{#1} }
{ \addcontentsline{tec}{#1} }
@@ -1332,7 +1340,7 @@
}
}
-\ctex_define:nn { style }
+\ctex_define:nn { tools }
{
hyphen-figure .tl_set:N = \l__eb_hyphen_figure_tl,
hyphen-table .tl_set:N = \l__eb_hyphen_table_tl,
@@ -1344,7 +1352,7 @@
hyphen-listing = #1,hyphen-equation = #1
},
hyphen-every .initial:n = .,
- unknown .code:n = \eb_msg_deprecated_option:n { style }
+ unknown .code:n = \eb_msg_deprecated_option:n { tools }
}
\eb_seq_map_inline:nn
{ figure,table,lstlisting,equation }
@@ -1613,7 +1621,7 @@
{
\IfBooleanT{#1}
{
- \ctex_set:nn { tocset } { between = { },bibetween = { } }
+ \ctex_set:nn { toc } { between = { },bibetween = { } }
\tl_set:Nn \l__eb_toc_tmpa_tl {*}
\tl_set:Nn \l__eb_toc_tmpb_tl
{
@@ -1646,7 +1654,7 @@
\eb_seq_map_inline:nn
{ tocafter,tocindent,tocrule }
{
- \ctex_define:nn { tocset }
+ \ctex_define:nn { toc }
{
#1-every .code:n =
{
@@ -1659,7 +1667,7 @@
}
}
}
-\ctex_define:nn { tocset }
+\ctex_define:nn { toc }
{
lolskip .skip_set:N = \eb@toc@lol@skip,
lolskip .initial:n = 10pt,
@@ -1675,7 +1683,7 @@
hang .initial:n = true,
pagenumwd .code:n = \contentsmargin{#1},
pagenumwd .initial:n = 1.55em,
- unknown .code:n = \eb_msg_deprecated_option:n { tocset }
+ unknown .code:n = \eb_msg_deprecated_option:n { toc }
}
\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
{
@@ -1771,7 +1779,7 @@
\ctex_assign_heading_name:nn { biappendix } {#1}
\bool_if:NTF \l__eb_class_mode_book_bool
{
- \eb_preto_cmd:nn { eb@before@addbitoc@hook }
+ \eb_preto_cmd:nn { eb@before@bitocline@hook }
{
\def\CTEX@prechapter{\CTEX@prebiappendix}
\def\CTEX@thechapter{#2}
@@ -1797,40 +1805,40 @@
}
}
-\ctex_define:nn { subfont }
+\ctex_define:nn { font }
{
- caption-table .tl_set:N = \l__eb_subfont_caption_table_tl,
- caption-figure .tl_set:N = \l__eb_subfont_caption_figure_tl,
- caption-listing .tl_set:N = \l__eb_subfont_caption_listing_tl,
+ caption-table .tl_set:N = \l__eb_font_caption_table_tl,
+ caption-figure .tl_set:N = \l__eb_font_caption_figure_tl,
+ caption-listing .tl_set:N = \l__eb_font_caption_listing_tl,
caption-every .meta:n =
{
caption-table = #1,caption-figure = #1,
caption-listing = #1
},
caption-every .initial:n = \sffamily\small,
- footnote .tl_set:N = \eb@subfont@footnote,
+ footnote .tl_set:N = \eb@font@footnote,
marginpar .tl_set:N = \marginfont,
marginpar .initial:n = \footnotesize,
- unknown .code:n = \eb_msg_deprecated_option:n { subfont }
+ unknown .code:n = \eb_msg_deprecated_option:n { font }
}
-\cs_new_protected:Npn \addtosubfont #1#2
+\cs_new_protected:Npn \ebaddtofont #1#2
{
\str_case:nnF {#1}
{
{ table }
- { \tl_put_right:Nn \l__eb_subfont_caption_table_tl {#2} }
+ { \tl_put_right:Nn \l__eb_font_caption_table_tl {#2} }
{ figure }
- { \tl_put_right:Nn \l__eb_subfont_caption_figure_tl {#2} }
+ { \tl_put_right:Nn \l__eb_font_caption_figure_tl {#2} }
{ listing }
- { \tl_put_right:Nn \l__eb_subfont_caption_listing_tl {#2} }
+ { \tl_put_right:Nn \l__eb_font_caption_listing_tl {#2} }
{ every }
{
- \tl_put_right:Nn \l__eb_subfont_caption_table_tl {#2}
- \tl_put_right:Nn \l__eb_subfont_caption_figure_tl {#2}
- \tl_put_right:Nn \l__eb_subfont_caption_listing_tl {#2}
+ \tl_put_right:Nn \l__eb_font_caption_table_tl {#2}
+ \tl_put_right:Nn \l__eb_font_caption_figure_tl {#2}
+ \tl_put_right:Nn \l__eb_font_caption_listing_tl {#2}
}
}
- { \tl_put_right:cn { l__eb_subfont_#1_tl } {#2} }
+ { \tl_put_right:cn { l__eb_font_#1_tl } {#2} }
}
\ctex_define:nn { spread }
{
@@ -1892,7 +1900,7 @@
\DeclareCaptionFont{eb@#1@font}
{
\setspread{\fp_use:c { l__eb_spread_caption_#1_fp }}
- \tl_use:c { l__eb_subfont_caption_#1_tl }
+ \tl_use:c { l__eb_font_caption_#1_tl }
}
}
\captionsetup
@@ -1975,7 +1983,7 @@
\SetEnumitemValue{ref}{enumii}{\arabic{enumi}.\alph*}
\SetEnumitemValue{ref}{enumiii}{\arabic{enumi}.\alph{enumii}.\roman*}
\setlist{nosep,labelsep = 0.5em,listparindent = \parindent}
-\setlist[1]{leftmargin = *,align = left,mode = unboxed}
+\setlist[1]{leftmargin = *,align = left}
\setlist[itemize,1]{label = bullet}
\setlist[itemize,2]{label = endash}
\setlist[itemize,3]{label = asterisk}
@@ -2070,8 +2078,12 @@
\cs_set_eq:NN \eb@declaretheoremsyle@save \declaretheoremstyle
\RenewDocumentCommand{\declaretheoremstyle}{O{}mO{}}
{\eb@declaretheoremsyle@save[#1,#3]{#2}}
- \ctex_define:nn { thmset }
- { unknown .code:n = \eb_msg_deprecated_option:n { thmset } }
+ \ctex_define:nn { thmt }
+ {
+ loeskip .skip_set:N = \eb@thmt@loe@skip,
+ loeskip .initial:n = 10pt,
+ unknown .code:n = \eb_msg_deprecated_option:n { thmt }
+ }
\declaretheoremstyle{default}[
spaceabove = 0ex plus .1ex,
spacebelow = 0ex plus .1ex,
@@ -2086,7 +2098,17 @@
\cs_undefine:N \proof
\DeclareFloatList{theorem}{loe}
\eb_preto_cmd:nn { listoftheorems }
- { \def\contentsline #1 {\use:c { thmt@contentsline@#1 }{#1}} }
+ {
+ \group_begin:
+ \def\contentsline #1 {\use:c { thmt@contentsline@#1 }{#1}}
+ }
+ \eb_appto_cmd:nn { listoftheorems } { \group_end: }
+ \eb_preto_cmd:nn { @chapter }
+ {
+ \skip_if_eq:nnF { \eb@thmt@loe@skip } { \c_zero_skip }
+ { \addtocontents{loe}{\protect\addvspace{\skip_use:N \eb@thmt@loe@skip}} }
+ }
+ \def\thmtlo@chaptervspacehack{}
\def\thmtname{\thmt@thmname}
\def\thmtenvname{\thmt@envname}
\def\thmtnote{\thmt@shortoptarg}
@@ -2095,7 +2117,7 @@
\def\thmtifnote #1#2
{
\tl_if_empty:NTF \thmt@shortoptarg
- { \protect\thmtformatoptarg{#2} }
+ {#2}
{ \protect\thmtformatoptarg{#1} }
}
\NewDocumentCommand{\settheoremtocline}{smm}
@@ -2153,7 +2175,7 @@
{ \file_if_exist_input:n { eb-tcolorbox.cfg } }
\bool_set_true:N \l__eb_backend_bibtex_bool
-\ctex_define:nn { bibset }
+\ctex_define:nn { bib }
{
backend .choice:,
backend .value_required:n = true,
@@ -2165,7 +2187,7 @@
datafile .clist_set:N = \l__eb_bib_datafile_clist,
bititle .tl_set:N = \eb@bib@bitoc@title,
bititle .initial:n = Bibliography,
- unknown .code:n = \eb_msg_deprecated_option:n { bibset }
+ unknown .code:n = \eb_msg_deprecated_option:n { bib }
}
\cs_new_protected:Npn \eb_bibtex_natbib_set:
@@ -2294,9 +2316,9 @@
\cs_new_protected:Npn \eb_define_theme_color:n #1
{ \definecolorset{HTML}{ctex@}{}{frame,#1;emph,#1;verb,#1} }
\cs_new_protected:Npn \DeclareLinkColor #1
- { \ctex_define:nx { refset } { \eb_link_color_set:n {#1} } }
+ { \ctex_define:nx { ref } { \eb_link_color_set:n {#1} } }
\cs_new_protected:Npn \DeclareThemeColor #1
- { \ctex_define:nx { style } { \eb_theme_color_set:n {#1} } }
+ { \ctex_define:nx { tools } { \eb_theme_color_set:n {#1} } }
\cs_new_protected:Npn \eb_color_assign_cmd_set:nn #1#2
{
\cs_new:cpn { eb_#2_color_set:n } ##1
@@ -2316,7 +2338,7 @@
{ color } { theme }
}
{ \eb_color_assign_cmd_set:nn #1 }
-\ctex_define:nx { refset }
+\ctex_define:nx { ref }
{
linkcolor .choice:,
linkcolor .value_required:n = true,
@@ -2331,7 +2353,7 @@
linkcolor .initial:n = navyblue,
linkcolor-every .code:n = \eb_define_link_color:n { \exp_not:n {#1} }
}
-\ctex_define:nx { style }
+\ctex_define:nx { tools }
{
color .choice:,
color .value_required:n = true,
@@ -2361,7 +2383,7 @@
{ \eb_set_hyperref:n { colorlinks } }
\cs_new_protected:Npn \eb_link_toc_put:n #1
{ \eb_set_hyperref:n { linktoc = #1 } }
-\ctex_define:nn { refset }
+\ctex_define:nn { ref }
{
linktype .choice:,
linktype .value_required:n = true,
@@ -2374,14 +2396,8 @@
linktoc .value_required:n = true,
linktoc/unknown .code:n = \eb_link_toc_put:n {#1},
linktoc .initial:n = all,
- unknown .code:n =
- {
- \eb_set_hyperref:x
- {
- \str_use:N \l_keys_key_str
- \tl_if_empty:NF \l_keys_value_tl { = \exp_not:n { {#1} } }
- }
- }
+ unknown .code:n = \eb_set_hyperref:x { \eb_unknown_kv_handle: },
+ unknown .default:V = \c_novalue_tl
}
\cs_new_protected:Npn \eb_allow_url_break:
@@ -2463,7 +2479,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/23}{2024ax}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/04/24}{2024az}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2