Historique des modifications [retour]
cliquez ici pour masquer/afficher la révision 2
mineure

19 Sep '20, 20:30

Pathe's gravatar image

Pathe
7.6k49210252

expl3, expl3 : passer une sequence séquence comme argument

voici Voici un ecm ECM : \documentclass{article} \usepackage{xparse} \ExplSyntaxOn \cs_new:Nn \SetOp_reunion_seq:N { \seq_use:Nn #1 {*} } \cs_new:Nn \SetOp_reunion:n { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \SetOp_reunion_seq:N \g_tmpa_seq } \cs_new:Nn \SetOp_simplify_reunion:n { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \seq_remove_duplicates:N \g_tmpa_seq \g_tmpa_seq } \NewDocumentCommand{\reunion}{ }{ \SetOp_reunion:n } \NewDocumentCommand{\simplifierreunion}{ m } { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \seq_remove_duplicates:N \g_tmpa_seq \seq_use:Nn \g_tmpa_seq {*} } \ExplSyntaxOff \begin{document} \reunion{A} \qquad \reunion{A, B} \qquad \reunion{A, B, C} \simplifierreunion{A, B, B, C, A} \end{document} La commande `\simplifierreunion` fonctionne comme je veux veux, mais j'aurais voulu pourvoir réutiliser le résultat de `\SetOp_simplify_reunion:n` comme argument de `\SetOp_reunion_seq:N` mais et je ne vois pas comment faire. Toutes mes tentatives se soldent par un échec :( :(
cliquez ici pour masquer/afficher la révision 1

19 Sep '20, 18:03

Le%20TeXnicien%20de%20surface's gravatar image

Le TeXnicien de surface
2.1k914

expl3, passer une sequence comme argument

voici un ecm \documentclass{article} \usepackage{xparse} \ExplSyntaxOn \cs_new:Nn \SetOp_reunion_seq:N { \seq_use:Nn #1 {*} } \cs_new:Nn \SetOp_reunion:n { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \SetOp_reunion_seq:N \g_tmpa_seq } \cs_new:Nn \SetOp_simplify_reunion:n { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \seq_remove_duplicates:N \g_tmpa_seq \g_tmpa_seq } \NewDocumentCommand{\reunion}{ }{ \SetOp_reunion:n } \NewDocumentCommand{\simplifierreunion}{ m } { \seq_gset_from_clist:Nn \g_tmpa_seq {#1} \seq_remove_duplicates:N \g_tmpa_seq \seq_use:Nn \g_tmpa_seq {*} } \ExplSyntaxOff \begin{document} \reunion{A} \qquad \reunion{A, B} \qquad \reunion{A, B, C} \simplifierreunion{A, B, B, C, A} \end{document} La commande `\simplifierreunion` fonctionne comme je veux mais j'aurais voulu pourvoir réutiliser le résultat de `\SetOp_simplify_reunion:n` comme argument de `\SetOp_reunion_seq:N` mais je ne vois pas comment faire. Toutes mes tentatives se soldent par un échec :(

C'est votre première visite ici ? Consultez la FAQ !

×