egreg9″ post=92828
Sarebbe interessante scrivere la versione LaTeX3 del comando.
R.
Eccola! 🙂
`
\documentclass{book}
\usepackage{xparse}
\ExplSyntaxOn
\NewDocumentCommand{\insertchap}{ m m }
{
\sblindo_insertchap:nn { #1 } { #2 }
}
\cs_new_protected:Npn \sblindo_insertchap:nn #1 #2
{
\clist_map_inline:nn { #2 }
{
\sblindo_input_range:nn { #1 } { ##1 }
}
}
\cs_new_protected:Npn \sblindo_input_range:nn #1 #2
{
\seq_set_split:Nnn \l_sblindo_range_seq { – } { #2 }
\int_compare:nTF { \seq_count:N \l_sblindo_range_seq = 1 }
{
\sblindo_input:n { #1 \sblindo_pad:n { #2 } }
}
{
\int_step_inline:nnnn
{ \seq_item:Nn \l_sblindo_range_seq { 1 } } % start
{ 1 } % step
{ \seq_item:Nn \l_sblindo_range_seq { 2 } } % end
{ \sblindo_input:n { #1 \sblindo_pad:n { ##1 } } } % input
}
}
\cs_new:Npn \sblindo_pad:n #1
{
\int_compare:nT { #1 < 10 } { 0 } \int_to_arabic:n { #1 }
}
\cs_new:Npn \sblindo_input:n #1 { \par #1 }
\ExplSyntaxOff
\begin{document}
\insertchap{capitolo}{1-3,5,7-11}
\end{document}
`
Nella versione finale si sostituisca [tt]\sblindo_input:n[/tt] con [tt]\file_input:n[/tt]. Qui si suppone che i capitoli siano al massimo 99, con numerazione a due cifre. La modifica per il caso senza 0 iniziale è facile. Il primo argomento di [tt]\insertchap[/tt] è il prefisso comune.
Ciao
Enrico[/quote]
Bellissimo ed elegante.
W LaTeX3
W Enrico.
R.
Ps. perfetto per implementare l'inclusione di un insieme di fotografie...