Definir lista para uso múltiplo

Definir lista para uso múltiplo

Quero redirecionar uma lista predefinida separada por vírgulas várias vezes no documento. Como exemplo mínimo, dê uma olhada no código a seguir que não funciona conforme o esperado:

\documentclass{article}

\usepackage{xparse}

\newcommand*{\listtotestA}{
    A,
    B,
    C
}

\def\listtotestB{
    D,
    E,
    F
}

\ExplSyntaxOn
\NewDocumentCommand \teslist{m}{
    \clist_map_inline:nn{#1}{
        Output: ##1 \\
    }
}
\ExplSyntaxOff

\begin{document}

\teslist{\listtotestA}
\\
\teslist{\listtotestB}

\end{document}

Em vez de

Output: A
Output: B
Output: C

Output: D
Output: E
Output: F

Produz

Output: A,B,C

Output: D,E,F

o que estou perdendo?

Responder1

Uma listofitemsabordagem.

\documentclass{article}

\usepackage{listofitems}

\newcommand*{\listtotestA}{
    A,
    B,
    C
}

\def\listtotestB{
    D,
    E,
    F
}

\newcommand\teslist[1]{%
    \readlist*\mylist{#1}%
    \foreachitem\x\in\mylist{Output: \x\\}%
}

\begin{document}

\noindent\teslist{\listtotestA}

\noindent\teslist{\listtotestB}

\end{document}

insira a descrição da imagem aqui

informação relacionada