summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/kantlipsum
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-07-23 20:57:56 +0000
committerKarl Berry <karl@freefriends.org>2019-07-23 20:57:56 +0000
commit8eaa9a04c65e9be9a95c628900ee62eb9db112eb (patch)
treea304f618f14c807ad3bba1c78a392c03393daf23 /Master/texmf-dist/tex/latex/kantlipsum
parente9c08d82a34034086b6e0f1fa65e6ff838f61707 (diff)
kantlipsum (23jul19)
git-svn-id: svn://tug.org/texlive/trunk@51710 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/kantlipsum')
-rw-r--r--Master/texmf-dist/tex/latex/kantlipsum/kantlipsum.sty84
1 files changed, 63 insertions, 21 deletions
diff --git a/Master/texmf-dist/tex/latex/kantlipsum/kantlipsum.sty b/Master/texmf-dist/tex/latex/kantlipsum/kantlipsum.sty
index 0cf8247ca35..f58e0243f32 100644
--- a/Master/texmf-dist/tex/latex/kantlipsum/kantlipsum.sty
+++ b/Master/texmf-dist/tex/latex/kantlipsum/kantlipsum.sty
@@ -6,20 +6,20 @@
%%
%% kantlipsum.dtx (with options: `package')
%% ---------------------------------------------------------------
-%% The kantlipsum package --- Generate text in Kant's style
+%% The kantlipsum package --- Generate text in Kantian style
%% Maintained by Enrico Gregorio
%% E-mail: enrico DOT gregorio AT univr DOT it
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
-\RequirePackage{expl3}[2017/11/14]
+\RequirePackage{expl3}[2019/07/01]
\RequirePackage{xparse}
\ProvidesExplPackage
{kantlipsum}
- {2017/11/16}
- {0.7}
+ {2019/07/23}
+ {0.8}
{Generate text in Kantian style}
-\@ifpackagelater { expl3 } { 2017/11/14 }
+\@ifpackagelater { expl3 } { 2019/07/01 }
{ }
{
\PackageError { kantlipsum } { Support~package~expl3~too~old }
@@ -43,7 +43,12 @@
}
\DeclareOption{ numbers }
- { \cs_set_protected:Nn \__kgl_number:n { #1\nobreak\enspace\textbullet\nobreak\enspace } }
+ {
+ \cs_set_protected:Nn \__kgl_number:n
+ {
+ #1\nobreak\enspace\textbullet\nobreak\enspace
+ }
+ }
\bool_new:N \g__kgl_makeindex_bool
\bool_gset_false:N \g__kgl_makeindex_bool
@@ -64,29 +69,31 @@
\int_new:N \l__kgl_end_int
\seq_new:N \g__kgl_pars_seq
\seq_new:N \g__kgl_words_seq
-\NewDocumentCommand{\kant}{s>{\SplitArgument{1}{-}}O{1-7}}
+\seq_new:N \l__kgl_sentences_seq
+\NewDocumentCommand{\kant}
+ {
+ s
+ >{\SplitArgument{1}{-}}O{1-7}
+ >{\SplitArgument{1}{-}}o}
{
\group_begin:
\IfBooleanTF{#1}
{ \cs_set_eq:NN \__kgl_par: \__kgl_star: }
{ \cs_set_eq:NN \__kgl_par: \__kgl_nostar: }
- \__kgl_process:nn #2
- \__kgl_print:
+ \IfNoValueTF{#3}
+ { \__kgl_process:nn #2 \__kgl_print: }
+ { \__kgl_process:nnnn #2 #3 \tl_use:N \l_tmpa_tl }
\group_end:
}
-\NewDocumentCommand{\kantdef}{mm}
+\NewDocumentCommand{\kantdef}
+ {
+ m
+ m
+ >{\SplitArgument{1}{-}}O{1-50}
+ }
{
\group_begin:
- \cs_set_eq:NN \__kgl_number:n \use_none:n
- \cs_set_eq:NN \__kgl_par: \prg_do_nothing:
- \cs_if_exist:NTF #1
- {
- \msg_error:nnn {kantlipsum} {already-defined} {#1}
- }
- {
- \tl_set:Nx \l_tmpa_tl { \seq_item:Nn \g__kgl_pars_seq {#2} }
- \cs_new:Npx #1 { \l_tmpa_tl }
- }
+ \__kgl_define:nnnn {#1} {#2} #3
\group_end:
}
\cs_new_protected:Nn \__kgl_process:nn
@@ -96,6 +103,13 @@
{ \int_set:Nn \l__kgl_end_int {#1} }
{ \int_set:Nn \l__kgl_end_int {#2} }
}
+\cs_new_protected:Nn \__kgl_process:nnnn
+ {
+ \tl_set:Nx \l_tmpa_tl { \seq_item:Nn \g__kgl_pars_seq {#1} }
+ \tl_if_novalue:nTF {#4}
+ { \__kgl_extract:nnV {#3} {#3} \l_tmpa_tl }
+ { \__kgl_extract:nnV {#3} {#4} \l_tmpa_tl }
+ }
\cs_new_protected:Nn \__kgl_print:
{
\int_step_function:nnnN
@@ -115,6 +129,34 @@
{ \seq_gput_right:Nn \g__kgl_pars_seq {#1\__kgl_par:} }
\cs_new_protected:Nn \__kgl_newword:n
{ \seq_gput_right:Nn \g__kgl_words_seq {#1} }
+\cs_new_protected:Nn \__kgl_define:nnnn
+ {
+ \cs_set_eq:NN \__kgl_number:n \use_none:n
+ \cs_set_eq:NN \__kgl_par: \prg_do_nothing:
+ \cs_if_exist:NTF #1
+ {
+ \msg_error:nnn {kantlipsum} {already-defined} {#1}
+ }
+ {
+ \tl_set:Nx \l_tmpa_tl { \seq_item:Nn \g__kgl_pars_seq {#2} }
+ \tl_if_novalue:nTF {#4}
+ { \__kgl_extract:nnV {#3} {#3} \l_tmpa_tl }
+ { \__kgl_extract:nnV {#3} {#4} \l_tmpa_tl }
+ \cs_new:Npx #1 { \l_tmpa_tl }
+ }
+ }
+\cs_new_protected:Nn \__kgl_extract:nnn
+ {
+ \seq_set_split:Nnn \l__kgl_sentences_seq { . } {#3}
+ \seq_clear:N \l_tmpa_seq
+ \seq_indexed_map_inline:Nn \l__kgl_sentences_seq
+ {
+ \int_compare:nT { #1 <= ##1 <= #2 }
+ {\seq_put_right:Nn \l_tmpa_seq { ##2 } }
+ }
+ \tl_set:Nx \l_tmpa_tl { \seq_use:Nn \l_tmpa_seq { .~ }. }
+ }
+\cs_generate_variant:Nn \__kgl_extract:nnn { nnV }
\group_begin:
\char_set_catcode_space:n {`\ }
\__kgl_newpara:n {As any dedicated reader can clearly see, the Ideal of
@@ -3191,7 +3233,7 @@ whole content of philosophy.}
\group_end:
\msg_info:nnx {kantlipsum} {how-many}
{ \int_eval:n {\seq_count:N \g__kgl_pars_seq} }
-%% Copyright (C) 2011-2017 by
+%% Copyright (C) 2011-2019 by
%% Enrico Gregorio
%% enrico DOT gregorio AT univr DOT it
%%