summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-05-14 20:14:04 +0000
committerKarl Berry <karl@freefriends.org>2021-05-14 20:14:04 +0000
commit21813d5f1f8535663b9f8c75dd5c013a41982552 (patch)
tree5776553ff3bd64f9b86034c03ea9e27381fb5dd2 /Master/texmf-dist/tex
parentaddf7c02e26bbdd9ec7eec8b4b7ee7954fbfb7aa (diff)
easybook (14may21)
git-svn-id: svn://tug.org/texlive/trunk@59197 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/easybook/easybook.cls156
1 files changed, 83 insertions, 73 deletions
diff --git a/Master/texmf-dist/tex/latex/easybook/easybook.cls b/Master/texmf-dist/tex/latex/easybook/easybook.cls
index bd59841b3b9..7ce44e4e202 100644
--- a/Master/texmf-dist/tex/latex/easybook/easybook.cls
+++ b/Master/texmf-dist/tex/latex/easybook/easybook.cls
@@ -13,7 +13,7 @@
%% https://creativecommons.org/licenses/by/4.0/legalcode
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplClass{easybook}{2021/05/12}{1.25h}{beta}
+\ProvidesExplClass{easybook}{2021/05/14}{1.25i}{beta}
\cs_generate_variant:Nn \eb_ctex_define:nn { nx }
\cs_generate_variant:Nn \int_to_arabic:n { v }
@@ -138,9 +138,10 @@
\seq_map_inline:Nn \c__eb_options_path_seq
{
\ctex_define:n { #1 .meta:nn = { ctex/#1 } {##1} }
- \cs_new:cpn {#1} ##1 { \keys_set:nn {ctex/#1} {##1} }
+ \cs_new:cpn {#1} ##1 { \keys_set:nn { ctex/#1 } {##1} }
}
\keys_define:nn { } { ctex/link .inherit:n = ctex/refset }
+\cs_set_eq:NN \link \refset
\ctex_define:n
{
link .meta:nn = { ctex/link } {#1},
@@ -472,7 +473,7 @@
\cs_new:Npn \eb_upper_number_mark_bool:nn #1#2
{
\bool_if:NT \l__eb_uppercase_bool
- { \text_uppercase:n } { \use:c { eb_fancyhf_#1_mark:n } {#2} }
+ { \text_uppercase:n } {\use:c { eb_fancyhf_#1_mark:n } {#2}}
}
\cs_new:Npn \eb@number@markdouble #1#2
{
@@ -568,7 +569,7 @@
{
\hbox:n
{
- \tl_if_eq:NnT \l__eb_fnmark_position_tl {super}
+ \tl_if_eq:NnT \l__eb_fnmark_position_tl { super }
{ \textsuperscript }{\@thefnmark}
\tl_use:N \l__eb_fnmark_after_tl
}
@@ -614,9 +615,10 @@
{ \int_use:N #1 }
}
-\seq_const_from_clist:Nn \c__eb_toc_headings_level_seq
- { part,chapter,section,subsection,list }
-\seq_map_inline:Nn \c__eb_toc_headings_level_seq
+\contentsuse{lstlisting}{lol}
+\seq_const_from_clist:Nn \c__eb_toc_heading_level_seq
+ { part,chapter,section,subsection,figure,table,lstlisting }
+\cs_new_protected:Npn \eb_toc_assign_keys:n #1
{
\ctex_define:n { tocset/#1 .meta:nn = { ctex/tocset/#1 } {##1} }
\eb_ctex_define:nn { tocset }
@@ -630,6 +632,46 @@
#1/rule .tl_set:c = l__eb_toc_#1_rule_tl,
#1/numsep .tl_set:c = eb@toc@#1@numsep
}
+ \seq_if_in:NnF \c__eb_toc_heading_level_seq { subsection }
+ {
+ \eb_ctex_define:nn { tocset }
+ { #1/belowoffset .dim_set:c = l__eb_toc_#1_offset_dim }
+ }
+ \seq_pop:NN \c__eb_toc_heading_level_seq \l_tmpa_tl
+ \titlecontents{#1}
+ [\use:c { l__eb_toc_#1_indent_tl }]
+ {\use:c { l__eb_toc_#1_format_tl }}
+ {
+ \ifbool{eb@titletoc@hang@fix}
+ {
+ \contentspush
+ {
+ \bool_if:NT \l__eb_toc_number_color_bool
+ { \color{ctex@toc@number} }
+ \thecontentslabel
+ \hspace{\use:c { eb@toc@#1@numsep }}
+ }
+ }{}
+ }{}
+ {\use:c { l__eb_toc_#1_rule_tl }}
+ }
+\seq_map_function:NN
+\c__eb_toc_heading_level_seq \eb_toc_assign_keys:n
+
+\seq_const_from_clist:Nn \c__eb_toc_list_meta_keys_seq
+ { format,format+,format~+,indent,rule,numsep,belowoffset }
+\ctex_define:n { tocset/list .meta:nn = { ctex/tocset/list } {#1} }
+\seq_map_inline:Nn \c__eb_toc_list_meta_keys_seq
+ {
+ \eb_ctex_define:nn { tocset }
+ {
+ list/#1 .meta:n =
+ {
+ figure/#1 = ##1,
+ table/#1 = ##1,
+ lstlisting/#1 = ##1
+ }
+ }
}
\cs_new:Npn \EbNumberline #1
@@ -643,11 +685,8 @@
\newbool{eb@titletoc@hang@fix}
\eb_ctex_define:nn { tocset }
{
- list/lolskip .skip_set:N = \l__eb_toc_lolskip_skip,
- list/lolskip .initial:n = 0.8pc,
- list/belowoffset .dim_set:N = \l__eb_toc_listoffset_dim,
- list/belowoffset .initial:n =
- { \bool_if:NTF \l__eb_class_book_bool { 0pc } { 0.15pc } },
+ lolskip .skip_set:N = \l__eb_toc_lolskip_skip,
+ lolskip .initial:n = 0.8pc,
belowoffset .dim_set:N = \l__eb_toc_offset_dim,
belowoffset .initial:n =
@@ -657,21 +696,21 @@
{
\figurename\space #1
\notbool{eb@titletoc@hang@fix}
- {\hspace{\eb@toc@list@numsep}}{}
+ {\hspace{\eb@toc@figure@numsep}}{}
},
tocline-tab .cs_set:Np = \eb@labelname@lot #1,
tocline-tab .initial:n =
{
\tablename\space #1
\notbool{eb@titletoc@hang@fix}
- {\hspace{\eb@toc@list@numsep}}{}
+ {\hspace{\eb@toc@table@numsep}}{}
},
tocline-lst .tl_set:N = \eb@labelname@lol,
tocline-lst .initial:n =
{
\lstlistingname\space\thelstlisting
\notbool{eb@titletoc@hang@fix}
- {\hspace{\eb@toc@list@numsep}}{}
+ {\hspace{\eb@toc@lstlisting@numsep}}{}
},
line-align .bool_set:N = \l__eb_toc_line_align_bool,
line-align .default:n = true,
@@ -726,6 +765,18 @@
list/rule = #1
}
}
+
+\NewDocumentCommand{\tocrule}{sO{0.7pc}D(){1.2}mO{}}
+ {
+ \normalsize\normalfont
+ \titlerule*[#2]{\scalebox{#3}{#4}}#5
+ \IfBooleanTF{#1}
+ {\thecontentspage}
+ {
+ \bool_if:NTF \l__eb_toc_line_align_bool
+ { \contentspage } { \thecontentspage }
+ }
+ }
\ctex_set:nn { tocset }
{
part/format = \addvspace{1pc}\sffamily\large,
@@ -746,53 +797,12 @@
{ \bool_if:NTF \l__eb_class_book_bool { 3.8\ccwd } { 1.4\ccwd } },
subsection/rule = \tocrule{$\cdot$},
- list/format = \addvspace{0.2pc},
- list/indent = 0\ccwd,
- list/rule = \tocrule{$\cdot$}
- }
-
-\NewDocumentCommand{\tocrule}{sO{0.7pc}D(){1.2}mO{}}
- {
- \normalsize\normalfont
- \titlerule*[#2]{\scalebox{#3}{#4}}#5
- \IfBooleanTF{#1}
- {\thecontentspage}
- {
- \bool_if:NTF \l__eb_toc_line_align_bool
- { \contentspage } { \thecontentspage }
- }
- }
-\cs_new_protected:Npn \eb_titlecontents_set:nn #1#2
- {
- \titlecontents{#1}
- [\use:c { l__eb_toc_#2_indent_tl }]
- {\use:c { l__eb_toc_#2_format_tl }}
- {
- \ifbool{eb@titletoc@hang@fix}
- {
- \contentspush
- {
- \bool_if:NT \l__eb_toc_number_color_bool
- { \color{ctex@toc@number} }
- \thecontentslabel
- \hspace{\use:c { eb@toc@#2@numsep }}
- }
- }{}
- }{}
- {\use:c { l__eb_toc_#2_rule_tl }}
- }
-\contentsuse{lstlisting}{lol}
-\clist_map_inline:nn
- {
- { part } { part },
- { chapter } { chapter },
- { section } { section },
- { subsection } { subsection },
- { figure } { list },
- { table } { list },
- { lstlisting } { list }
+ list/format = \addvspace{0.2pc},
+ list/indent = 0\ccwd,
+ list/rule = \tocrule{$\cdot$},
+ list/belowoffset =
+ { \bool_if:NTF \l__eb_class_book_bool { 0pc } { 0.15pc } }
}
- { \eb_titlecontents_set:nn #1 }
\prop_new:N \l__eb_label_name_prop
\prop_set_from_keyval:Nn \l__eb_label_name_prop
@@ -1009,7 +1019,7 @@
\IfValueT{#3}{\keys_set:nn { eb/listoc } {#3}}
\eb_multoc_pre_bool:
\eb_title_number_intoc_bool:nn {#2} {#1}
- \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_listoffset_dim
+ \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_figure_offset_dim
\vspace*{\dim_use:N \l__eb_toc_offset_dim}
\@starttoc{lof}
\eb_multoc_post_bool:
@@ -1022,7 +1032,7 @@
\IfValueT{#3}{\keys_set:nn { eb/listoc } {#3}}
\eb_multoc_pre_bool:
\eb_title_number_intoc_bool:nn {#2} {#1}
- \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_listoffset_dim
+ \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_table_offset_dim
\vspace*{\dim_use:N \l__eb_toc_offset_dim}
\@starttoc{lot}
\eb_multoc_post_bool:
@@ -1035,7 +1045,7 @@
\IfValueT{#3}{\keys_set:nn { eb/listoc } {#3}}
\eb_multoc_pre_bool:
\eb_title_number_intoc_bool:nn {#2} {#1}
- \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_listoffset_dim
+ \dim_add:NV \l__eb_toc_offset_dim \l__eb_toc_lstlisting_offset_dim
\vspace*{\dim_use:N \l__eb_toc_offset_dim}
\@starttoc{lol}
\eb_multoc_post_bool:
@@ -1801,16 +1811,16 @@
\bool_set_false:N \l__eb_toc_number_color_bool
\eb_ctex_define:nn { refset }
{
- hyperlink .choice:,
- hyperlink/edge .code:n = { },
- hyperlink/none .code:n = \eb_put_hyperref:n { hidelinks },
- hyperlink/various .code:n =
+ linktype .choice:,
+ linktype/edge .code:n = { },
+ linktype/none .code:n = \eb_put_hyperref:n { hidelinks },
+ linktype/various .code:n =
{
\bool_set_true:N \l__eb_toc_number_color_bool
\eb_put_hyperref:n { colorlinks }
},
- hyperlink .default:n = edge,
- hyperlink .initial:n = edge,
+ linktype .value_required:n = true,
+ linktype .initial:n = edge,
linktoc .choice:,
linktoc/unknown .code:n =
@@ -1825,9 +1835,9 @@
}
}
},
- linktoc .default:n = all,
- linktoc .initial:n = all,
- unknown .code:n =
+ linktoc .default:n = all,
+ linktoc .initial:n = all,
+ unknown .code:n =
{
\eb_put_hyperref:x
{