diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty | 456 |
1 files changed, 254 insertions, 202 deletions
diff --git a/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty b/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty index 714e745a63a..e69c5c8b3e3 100644 --- a/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty +++ b/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty @@ -2,9 +2,9 @@ % licence : Released under the LaTeX Project Public License v1.3c % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e}% -\def\filedate{2023/11/01}% +\def\filedate{2023/11/09}% \let\PfMfiledate\filedate% -\def\fileversion{0.65}% +\def\fileversion{0.75}% \let\PfMfileversion\fileversion% \ProvidesPackage{ProfMaquette}[\filedate\space v\fileversion\space Maquettage de documents]% @@ -275,51 +275,51 @@ }% %% -%\newcounter{Melquestions}% -%\newcounter{Comptequestions}% +\newcounter{Melquestions}% +\newcounter{Comptequestions}% % -%\NewDocumentEnvironment{Enumelange}{o+b}{% -% \setcounter{Melquestions}{0}% -% \setsepchar{\item}% -% \readlist*\ListeTest{#2}% -% \IfNoValueTF{#1}{% -% \ChoixAleaMultiMix{\ListeTestlen}{1}{\ListeTestlen}{0}{\ListeShuffleA}% -% \xdef\MelangeValeurTotale{\ListeTestlen}% -% }{% -% \ChoixAleaMultiMix{#1}{1}{\ListeTestlen}{0}{\ListeShuffleA}% -% \xdef\MelangeValeurTotale{#1}% -% }% -% \ExporteListe{ListeShuffle}{\ListeShuffleA}% -% \setsepchar{,}\ignoreemptyitems% -% \readlist*\ListeNumQ{\ListeShuffleA}% -% \setcounter{Comptequestions}{1}% -% \begin{enumerate} -% \loop% -% \setcounter{Melquestions}{\ListeNumQ[\theComptequestions]}% -% \item \ListeTest[\theMelquestions]% -% \stepcounter{Comptequestions}% -% \ifnum\theComptequestions<\numexpr\MelangeValeurTotale+1% -% \repeat% -% \end{enumerate} -%}{}% - -%\NewDocumentEnvironment{Enumelangesol}{b}{% -% \setcounter{Melquestions}{0}% -% \setsepchar{\item}% -% \readlist*\ListeTest{#1}% -% \RestoreListe{ListeShuffle}% -% \setsepchar{,}\ignoreemptyitems% -% \readlist*\ListeNumQ{\ListeShuffle}% -% \setcounter{Comptequestions}{1}% -% \begin{enumerate} -% \loop% -% \setcounter{Melquestions}{\ListeNumQ[\theComptequestions]}% -% \item \ListeTest[\theMelquestions]% -% \stepcounter{Comptequestions}% -% \ifnum\theComptequestions<\numexpr\ListeNumQlen+1% -% \repeat% -% \end{enumerate} -%}{}% +\NewDocumentEnvironment{Enumelange}{o+b}{% + \setcounter{Melquestions}{0}% + \setsepchar{\item}% + \readlist*\ListeTest{#2}% + \IfNoValueTF{#1}{% + \ChoixAleaMultiMix{\ListeTestlen}{1}{\ListeTestlen}{0}{\ListeShuffleA}% + \xdef\MelangeValeurTotale{\ListeTestlen}% + }{% + \ChoixAleaMultiMix{#1}{1}{\ListeTestlen}{0}{\ListeShuffleA}% + \xdef\MelangeValeurTotale{#1}% + }% + \ExporteListe{ListeShuffle}{\ListeShuffleA}% + \setsepchar{,}\ignoreemptyitems% + \readlist*\ListeNumQ{\ListeShuffleA}% + \setcounter{Comptequestions}{1}% + \begin{enumerate} + \loop% + \setcounter{Melquestions}{\ListeNumQ[\theComptequestions]}% + \item \ListeTest[\theMelquestions]% + \stepcounter{Comptequestions}% + \ifnum\theComptequestions<\numexpr\MelangeValeurTotale+1% + \repeat% + \end{enumerate} +}{}% + + \NewDocumentEnvironment{Enumelangesol}{b}{% + \setcounter{Melquestions}{0}% + \setsepchar{\item}% + \readlist*\ListeTest{#1}% + \RestoreListe{ListeShuffle}% + \setsepchar{,}\ignoreemptyitems% + \readlist*\ListeNumQ{\ListeShuffle}% + \setcounter{Comptequestions}{1}% + \begin{enumerate} + \loop% + \setcounter{Melquestions}{\ListeNumQ[\theComptequestions]}% + \item \ListeTest[\theMelquestions]% + \stepcounter{Comptequestions}% + \ifnum\theComptequestions<\numexpr\ListeNumQlen+1% + \repeat% + \end{enumerate} +}{}% % Définitions pour les compétences \NewDocumentCommand\Competences{O{3}m}{% @@ -931,13 +931,13 @@ \xdef\PfMListeExerciceFdR{\csname \Alph{PfMMaquette}FdRtrue\endcsname}% \ifcsname \Alph{PfMMaquette}FdRstop\endcsname \xdef\PfMListeExerciceFdRStop{\csname \Alph{PfMMaquette}FdRstop\endcsname}% - \else - \xdef\PfMListeExerciceFdRStop{} - \fi + \else% + \xdef\PfMListeExerciceFdRStop{}% + \fi% % On ajoute un stop au dernier exercice \xdef\PfMListeExerciceFdRStop{\PfMListeExerciceFdRStop,\FdRTotalExo}% -% Liste Exos : \PfMListeExerciceFdR\\ -% Liste Stop : \PfMListeExerciceFdRStop\\ + %Liste Exos : \PfMListeExerciceFdR\\ + %Liste Stop : \PfMListeExerciceFdRStop\\ \BuildRouteTikz{\FdRTotalExo}{\PfMListeExerciceFdR}{\PfMListeExerciceFdRStop}% }% }% @@ -947,12 +947,12 @@ \setsepchar{,}\ignoreemptyitems% \readlist*\ListeRetiensExo{#2}% \readlist*\ListeRetiensStop{#3}% - \reademptyitems -% Les exos retenus : \showitems\ListeRetiensExo[]\\ -% Les exos stop : \showitems\ListeRetiensStop[]\\ + \reademptyitems% + %Les exos retenus : \showitems\ListeRetiensExo[]\\ + %Les exos stop : \showitems\ListeRetiensStop[]\\ \xdef\LongueurA{\ListeRetiensExolen}% \xdef\LongueurB{\fpeval{\ListeRetiensStoplen-1}}% - \xdef\PfMFooExoIncrustes{} + \xdef\PfMFooExoIncrustes{}% \xintFor* ##1 in{\xintSeq{1}{#1}}\do{% \xdef\RetiensExclus{0}% \xintFor* ##2 in {\xintSeq{1}{\LongueurA}}\do{% @@ -960,11 +960,18 @@ }% \xintifboolexpr{\RetiensExclus>0}{}{\xdef\PfMFooExoIncrustes{\PfMFooExoIncrustes,##1}}% }% - \setsepchar{,}\ignoreemptyitems% - \readlist*\ListeRetiensExclus{\PfMFooExoIncrustes}% - \xdef\LongueurC{\ListeRetiensExcluslen}% + %%%%%%%%%% + %PfMFooExoIncrustes : \PfMFooExoIncrustes\\% + \ifx\bla\PfMFooExoIncrustes\bla% + \xdef\LongueurC{0}% + \else% + \setsepchar{,}\ignoreemptyitems% + \readlist*\ListeRetiensExclus{\PfMFooExoIncrustes}% + \xdef\LongueurC{\ListeRetiensExcluslen}% + \fi% + %%%%%%%%%%%%%%%%%%%% % portion 1 -% Portion 1 :\\ + % Portion 1 :\\ \xdef\ListeRoute{}% \xdef\ListeRouteExclus{}% \xdef\NBExo{0}\xdef\NBExoSup{0}% @@ -975,9 +982,12 @@ \xdef\NBExo{\fpeval{\NBExo+1}}\xdef\ListeRoute{\ListeRoute,\ListeRetiensExo[##1]}% }% }% - \xintFor* ##1 in{\xintSeq{1}{\LongueurC}}\do{% - \xintifboolexpr{\ListeRetiensExclus[##1]>\ListeRetiensStop[1]}{}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##1]}}% - }% + \ifnum\LongueurC=0\relax + \else + \xintFor* ##1 in{\xintSeq{1}{\LongueurC}}\do{% + \xintifboolexpr{\ListeRetiensExclus[##1]>\ListeRetiensStop[1]}{}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##1]}}% + }% + \fi \xintifboolexpr{\NBExoSup==\NBExo}{}{% \xintifboolexpr{\NBExoSup>\NBExo}{% \xintFor* ##1 in{\xintSeq{1}{\fpeval{\NBExoSup-\NBExo}}}\do{% @@ -991,21 +1001,24 @@ }% \xdef\ListeRoute{\ListeRoute,0}%0 pour le symbole stop \xdef\ListeRouteExclus{\ListeRouteExclus,0}%0 pour le symbole stop -% Route Basse : \ListeRoute\\ -% Route Haute : \ListeRouteExclus\\ + %Route Basse P1 : \ListeRoute\\ + %Route Haute P1 : \ListeRouteExclus\\ % portions centrales -% Portions centrales :\\ - \xintifboolexpr{\ListeRetiensStoplen>2}{% - \xintFor* ##1 in{\xintSeq{1}{\fpeval{\LongueurB-1}}}\do{% - \xdef\NBExo{0}\xdef\NBExoSup{0} - \xintFor* ##2 in{\xintSeq{1}{\LongueurA}}\do{% - \xintifboolexpr{\ListeRetiensExo[##2]<\fpeval{\ListeRetiensStop[##1]+1} || \ListeRetiensExo[##2]>\ListeRetiensStop[\fpeval{##1+1}]}{}{\xdef\NBExo{\fpeval{\NBExo+1}}\xdef\ListeRoute{\ListeRoute,\ListeRetiensExo[##2]}% - }% - }% - \xintFor* ##2 in{\xintSeq{1}{\LongueurC}}\do{% - \xintifboolexpr{\ListeRetiensExclus[##2]<\fpeval{\ListeRetiensStop[##1]+1} || \ListeRetiensExclus[##2]>\ListeRetiensStop[\fpeval{##1+1}]}{}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##2]}% - }%% - }% + % Portions centrales :\\ + \xintifboolexpr{\ListeRetiensStoplen>2}{% + \xintFor* ##1 in{\xintSeq{1}{\fpeval{\LongueurB-1}}}\do{% + \xdef\NBExo{0}\xdef\NBExoSup{0}% + \xintFor* ##2 in{\xintSeq{1}{\LongueurA}}\do{% + \xintifboolexpr{\ListeRetiensExo[##2]<\fpeval{\ListeRetiensStop[##1]+1} || \ListeRetiensExo[##2]>\ListeRetiensStop[\fpeval{##1+1}]}{}{\xdef\NBExo{\fpeval{\NBExo+1}}\xdef\ListeRoute{\ListeRoute,\ListeRetiensExo[##2]}% + }% + }% + \ifnum\LongueurC=0\relax + \else + \xintFor* ##2 in{\xintSeq{1}{\LongueurC}}\do{% + \xintifboolexpr{\ListeRetiensExclus[##2]<\fpeval{\ListeRetiensStop[##1]+1} || \ListeRetiensExclus[##2]>\ListeRetiensStop[\fpeval{##1+1}]}{}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##2]}% + }%% + }% + \fi \xintifboolexpr{\NBExoSup==\NBExo}{}{% \xintifboolexpr{\NBExoSup>\NBExo}{% \xintFor* ##3 in{\xintSeq{1}{\fpeval{\NBExoSup-\NBExo}}}\do{% @@ -1019,38 +1032,43 @@ }% \xdef\ListeRoute{\ListeRoute,0}\xdef\ListeRouteExclus{\ListeRouteExclus,0}% }% - }{}% + }{}% + %Route Basse P2 : \ListeRoute\\ + %Route Haute P2 : \ListeRouteExclus\\ % portion finale -% Portion fin \\ - \xintifboolexpr{\ListeRetiensStoplen>1}{% - \xdef\NBExo{0}\xdef\NBExoSup{0}% - \xintFor* ##1 in{\xintSeq{1}{\LongueurA}}\do{% - \xintifboolexpr{\ListeRetiensExo[##1]>\fpeval{\ListeRetiensStop[\ListeRetiensStoplen-1]}}{\xdef\NBExo{\fpeval{\NBExo+1}}\xdef\ListeRoute{\ListeRoute,\ListeRetiensExo[##1]}{}% - }% - }% - \xintFor* ##1 in{\xintSeq{1}{\LongueurC}}\do{% - \xintifboolexpr{\ListeRetiensExclus[##1]>\fpeval{\ListeRetiensStop[\ListeRetiensStoplen-1]}}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##1]}{}% - }% - }% - \xintifboolexpr{\NBExoSup==\NBExo}{}{ - \xintifboolexpr{\NBExoSup>\NBExo}{% - \xintFor* ##1 in{\xintSeq{1}{\fpeval{\NBExoSup-\NBExo}}}\do{% - \xdef\ListeRoute{\ListeRoute,-1}%0 pour l'écart - }% - }{% - \xintFor* ##1 in{\xintSeq{1}{\fpeval{\NBExo-\NBExoSup}}}\do{% - \xdef\ListeRouteExclus{\ListeRouteExclus,-1}%0 pour l'écart - }% - }% - }% - \xdef\ListeRoute{\ListeRoute,0}%0 pour le symbole stop - \xdef\ListeRouteExclus{\ListeRouteExclus,0}%0 pour le symbole stop - }{}% - \setsepchar{,}\ignoreemptyitems + % Portion fin \\ + \xintifboolexpr{\ListeRetiensStoplen>1}{% + \xdef\NBExo{0}\xdef\NBExoSup{0}% + \xintFor* ##1 in{\xintSeq{1}{\LongueurA}}\do{% + \xintifboolexpr{\fpeval{\ListeRetiensExo[##1]}>\fpeval{\ListeRetiensStop[\ListeRetiensStoplen-1]}}{\xdef\NBExo{\fpeval{\NBExo+1}}\xdef\ListeRoute{\ListeRoute,\ListeRetiensExo[##1]}}{}% + }% + \ifnum\LongueurC=0\relax + \else + \xintFor* ##1 in{\xintSeq{1}{\LongueurC}}\do{% + \xintifboolexpr{\ListeRetiensExclus[##1]>\fpeval{\ListeRetiensStop[\ListeRetiensStoplen-1]}}{\xdef\NBExoSup{\fpeval{\NBExoSup+1}}\xdef\ListeRouteExclus{\ListeRouteExclus,\ListeRetiensExclus[##1]}}{}% + }% + \fi + \xintifboolexpr{\NBExoSup==\NBExo}{}{% + \xintifboolexpr{\NBExoSup>\NBExo}{% + \xintFor* ##1 in{\xintSeq{1}{\fpeval{\NBExoSup-\NBExo}}}\do{% + \xdef\ListeRoute{\ListeRoute,-1}%0 pour l'écart + }% + }{% + \xintFor* ##1 in{\xintSeq{1}{\fpeval{\NBExo-\NBExoSup}}}\do{% + \xdef\ListeRouteExclus{\ListeRouteExclus,-1}%0 pour l'écart + }% + }% + }% + \xdef\ListeRoute{\ListeRoute,0}%0 pour le symbole stop + \xdef\ListeRouteExclus{\ListeRouteExclus,0}%0 pour le symbole stop + }{}% + %Route Basse P3 : \ListeRoute\\ + %Route Haute P3 : \ListeRouteExclus\\ + \setsepchar{,}\ignoreemptyitems% \readlist*\ListeRouteBasse{\ListeRoute}% \readlist*\ListeRouteHaute{\ListeRouteExclus}% -% Liste Route : \showitems\ListeRouteBasse[]\\ -% Liste Exclus : \showitems\ListeRouteHaute[] + %Liste Route : \showitems\ListeRouteBasse[]\\ + %Liste Exclus : \showitems\ListeRouteHaute[]\\ \begin{tikzpicture} \coordinate (A-0) at (-\PfMLargeurSchemaFdR,0); \coordinate (A-1) at (0,0);% @@ -1060,20 +1078,86 @@ \coordinate[xshift=\PfMLargeurSchemaFdR] (B-##1) at (B-\fpeval{##1-1});% }% \coordinate[xshift=\PfMLargeurSchemaFdR] (A-\fpeval{\ListeRouteBasselen+1}) at (A-\ListeRouteBasselen);% - %Route haute - \xintFor* ##1 in{\xintSeq{1}{\ListeRouteHautelen}}\do{% - \xintifboolexpr{\ListeRouteHaute[##1]<0}{% - \draw[] (B-##1) to (B-\fpeval{##1+1}); - }{% - \xintifboolexpr{\ListeRouteHaute[##1]==0}{% - \draw (B-##1) to (A-##1);% - }{% - \draw[] (B-##1) to (B-\fpeval{##1+1}); - \draw[fill=white](B-##1) circle (\PfMRayonSchemaFdR) node{\ref{page-\thePfMMaquette-\ListeRouteHaute[##1]}};% - } - }% - }% - % Route basse + % Route haute + % Correct ! + %\xintFor* ##1 in{\xintSeq{1}{\ListeRouteHautelen}}\do{% + % \xintifboolexpr{\ListeRouteHaute[##1]<0}{% + % \draw[red] (B-##1) to (B-\fpeval{##1+1}); + % }{% + % \xintifboolexpr{\ListeRouteHaute[##1]==0}{% + % \draw (B-##1) to (A-##1);% + % }{% + % \draw[blue] (B-##1) to (B-\fpeval{##1+1}); + % \draw[fill=white](B-##1) circle (\PfMRayonSchemaFdR) node{\ref{page-\thePfMMaquette-\ListeRouteHaute[##1]}}; + % }% + % }% + %}% + %% Fin Correct ! + \xdef\RetiensLesZeros{0}% + \xdef\RetiensLeDepart{0}% + \xdef\RetiensLesReponses{0}% + \xdef\RetiensNonAffichees{0}% + \xdef\RetiensEtage{0} + \xintFor* ##1 in{\xintSeq{1}{\ListeRouteHautelen}}\do{% + \xintifboolexpr{\ListeRouteHaute[##1]==0}{% + \xdef\RetiensEtage{\fpeval{\RetiensEtage+1}}% + \xdef\RetiensLesReponses{\fpeval{\RetiensLesReponses+1}}% + \xintFor* ##2 in{\xintSeq{\fpeval{\RetiensLeDepart+1}}{\fpeval{\RetiensLeDepart+\RetiensLesReponses}}}\do{% + \xintifboolexpr{\ListeRouteHaute[##2]<0}{% + \xdef\RetiensNonAffichees{\fpeval{\RetiensNonAffichees+1}} + }{}% + } + %\node at (0,\RetiensEtage) {Il y a \RetiensNonAffichees fois le nombre -1.}; + % On affiche + \xintifboolexpr{\fpeval{\RetiensLesReponses-1}==\RetiensNonAffichees}{% +% % + }{% + \xintFor* ##2 in{\xintSeq{\fpeval{\RetiensLeDepart+1}}{\fpeval{\RetiensLeDepart+\RetiensLesReponses}}}\do{ + \xintifboolexpr{\ListeRouteHaute[##2]<0}{% + \draw (B-##2) to (B-\fpeval{##2+1});% + }{% + \xintifboolexpr{\ListeRouteHaute[##2]==0}{% + %\xintifboolexpr{\fpeval{\RetiensLesReponses-1}==\RetiensNonAffichees}{}{ + \draw (B-##2) to (A-##2);% + %} + }{% + \draw[] (B-##2) to (B-\fpeval{##2+1});% + \draw[fill=white](B-##2) circle (\PfMRayonSchemaFdR) node{\ref{page-\thePfMMaquette-\ListeRouteHaute[##2]}};% + }% + }% + }% + }% + % + \xdef\RetiensLeDepart{\fpeval{\RetiensLeDepart+\RetiensLesReponses}} + \xdef\RetiensLesReponses{0}% + \xdef\RetiensNonAffichees{0}% + }{\xdef\RetiensLesReponses{\fpeval{\RetiensLesReponses+1}}% + }% + }% + %Il y a \RetiensLesReponses fois le nombre -1.\par + %\xintifboolexpr{\RetiensLesReponses==\fpeval{\RetiensLeDepart+1+\RetiensLesZeros}}{% + % \xdef\RetiensLeDepart{\RetiensLeDepart+\RetiensLesZeros}% + % \xdef\RetiensLesZeros{0}% + %}{ + % \xintFor* ##2 in{\xintSeq{\fpeval{\RetiensLeDepart+1}}{\fpeval{\RetiensLeDepart+\RetiensLesZeros}}}\do{ + % \xintifboolexpr{\ListeRouteHaute[##2]<0}{% + % \draw[red] (B-##2) to (B-\fpeval{##2+1}); + % }{% + % \xintifboolexpr{\ListeRouteHaute[##2]==0}{% + % \draw (B-##2) to (A-##2);% + % }{% + % \draw[blue] (B-##2) to (B-\fpeval{##2+1}); + % \draw[fill=white](B-##2) circle (\PfMRayonSchemaFdR) node{\ref{page-\thePfMMaquette-\ListeRouteHaute[##2]}}; + % }% + % }% + % }% + % \xdef\RetiensLeDepart{\RetiensLeDepart+\RetiensLesZeros}% + % \xdef\RetiensLesZeros{0}% + %}{% + % \xdef\RetiensLesZeros{\fpeval{\RetiensLesZeros+1}}% + %} + %}% + % Route basse \foreach\i in{1,...,\fpeval{\ListeRouteBasselen}}{% \draw[line width=1pt] (A-\fpeval{\i-1}) -- (A-\i);% }% @@ -1455,30 +1539,14 @@ }{\endtcolorbox% } -\newenvironment{exerciceFicheold}[1][]{% - \setcounter{PfMAlea}{0}% - \setcounter{PfMNbLogo}{1}% - \useKVdefault[ClesExercices]% - \setKV[ClesExercices]{#1}% - \colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}% - \colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}% - \setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}% - \refstepcounter{PfMSection}% - \PfMChoixCorrection% - \refstepcounter{PfMExo}% - \tcolorbox[% - tikzfiche, - label is label, - label=page-\thePfMMaquette-\thePfMExo - ] -}{\endtcolorbox% -} - -\NewDocumentEnvironment{exerciceFichenewold}{o+b}{% +\NewDocumentEnvironment{exerciceFiche}{so+b}{% \setcounter{PfMAlea}{0}% \setcounter{PfMNbLogo}{1}% \useKVdefault[ClesExercices]% - \setKV[ClesExercices]{#1}% + \setKV[ClesExercices]{#2}% + \IfBooleanTF{#1}{% + \setKV[ClesExercices]{Numerote=false}% + }{}% \colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}% \colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}% \setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}% @@ -1490,77 +1558,81 @@ label is label, label=page-\thePfMMaquette-\thePfMExo ] - #2 + #3 \endtcolorbox% }{} -\NewDocumentEnvironment{exerciceFiche}{so+b}{% +\NewDocumentEnvironment{exerciceDS}{so+b}{% \setcounter{PfMAlea}{0}% - \setcounter{PfMNbLogo}{1}% \useKVdefault[ClesExercices]% \setKV[ClesExercices]{#2}% \IfBooleanTF{#1}{% \setKV[ClesExercices]{Numerote=false}% }{}% - \colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}% - \colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}% - \setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}% \refstepcounter{PfMSection}% \PfMChoixCorrection% \refstepcounter{PfMExo}% + \immediate\write\@auxout{% + \string\opcopy{\thePfMExo}{TotalExo}% + } + \ifboolKV[ClesExercices]{BaremeTotal}{% + \immediate\write\@auxout{% + \string\opcopy{0}{total\the\c@PfMSection-\the\c@PfMExo}% + }}{} \tcolorbox[% - tikzfiche, + tikzds, label is label, label=page-\thePfMMaquette-\thePfMExo ] #3 \endtcolorbox% -}{} +}{}% -\NewDocumentEnvironment{exerciceDS}{so+b}{% +\NewDocumentEnvironment{ExerciceRecapBrevet}{so+b}{% \setcounter{PfMAlea}{0}% \useKVdefault[ClesExercices]% \setKV[ClesExercices]{#2}% + \IfBooleanTF{#1}{% + \setKV[ClesExercices]{Numerote=false}% + }{}% + \colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}% + \colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}% \refstepcounter{PfMSection}% \PfMChoixCorrection% \refstepcounter{PfMExo}% - \immediate\write\@auxout{% - \string\opcopy{\thePfMExo}{TotalExo}% - } \ifboolKV[ClesExercices]{BaremeTotal}{% \immediate\write\@auxout{% \string\opcopy{0}{total\the\c@PfMSection-\the\c@PfMExo}% - }}{} + }% + }{}% \tcolorbox[% - tikzds, + tikzrecapbrevet, label is label, label=page-\thePfMMaquette-\thePfMExo ] - #3 -\endtcolorbox% -}{}% +}{\endtcolorbox% +} -\newenvironment{exerciceDSold}[1][]{% +\newenvironment{ExerciceRecapBrevetold}[1][]{% \setcounter{PfMAlea}{0}% \useKVdefault[ClesExercices]% \setKV[ClesExercices]{#1}% \refstepcounter{PfMSection}% \PfMChoixCorrection% \refstepcounter{PfMExo}% - \immediate\write\@auxout{% - \string\opcopy{\thePfMExo}{TotalExo}% - } \ifboolKV[ClesExercices]{BaremeTotal}{% \immediate\write\@auxout{% \string\opcopy{0}{total\the\c@PfMSection-\the\c@PfMExo}% - }}{} + }% + }{}% \tcolorbox[% - tikzds, + tikzrecapbrevet, label is label, label=page-\thePfMMaquette-\thePfMExo ] }{\endtcolorbox% -}% +} + \makeatother %%% Recap Brevet %%% Style Brevet @@ -1594,26 +1666,6 @@ } \makeatletter -\newenvironment{ExerciceRecapBrevet}[1][]{% - \setcounter{PfMAlea}{0}% - \useKVdefault[ClesExercices]% - \setKV[ClesExercices]{#1}% - \refstepcounter{PfMSection}% - \PfMChoixCorrection% - \refstepcounter{PfMExo}% - \ifboolKV[ClesExercices]{BaremeTotal}{% - \immediate\write\@auxout{% - \string\opcopy{0}{total\the\c@PfMSection-\the\c@PfMExo}% - }% - }{}% - \tcolorbox[% - tikzrecapbrevet, - label is label, - label=page-\thePfMMaquette-\thePfMExo - ] -}{\endtcolorbox% -} - \tcbset{% tikzrecapbrevet/.style={% before skip=1em,% @@ -2120,7 +2172,7 @@ fill=ColExoFiche, anchor=west, xshift=\kvtcb@leftlower, - ] at (frame.north west){\bfseries\sffamily \useKV[Fiche]{NomExercice} \ifboolKV[ClesExercices]{Numerote}{\thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}}; + ] at (frame.north west){\bfseries\sffamily\useKV[Fiche]{NomExercice}\ifboolKV[ClesExercices]{Numerote}{ \thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{\useKV[ClesExercices]{Titre}}{}}; %% \ifboolKV[ClesExercices]{Calculatrice}{}{\node[fill=ColExoFiche,anchor=west,xshift=(\thePfMNbLogo*2.5+(\thePfMNbLogo-1)*20)*1pt] at (A.east) {\cancel{\faCalculator}};\stepcounter{PfMNbLogo}} \ifboolKV[ClesExercices]{Oral}{\node[fill=ColExoFiche,anchor=west,xshift=(\thePfMNbLogo*2.5+(\thePfMNbLogo-1)*20)*1pt] at (A.east) {\faBullhorn};\stepcounter{PfMNbLogo}}{} @@ -2282,7 +2334,7 @@ },interior engine=empty, }, fonttitle=\bfseries\sffamily, - title=Exercice \thePfMExo \ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}, + title=Exercice\ifboolKV[ClesExercices]{Numerote}{ \thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}, overlay unbroken and first={% \ifboolKV[ClesExercices]{AffichageSource}{% \node[ @@ -2606,21 +2658,21 @@ \ifboolKV[Boulot]{DS}{% \setKV[DS]{#2}\TikzDS \let\exercice\exerciceDS\let\endexercice\endexerciceDS% - %\ifboolKV[Boulot]{BaremeComplet}{% - % \begin{center} - % \TableauRecapitulatif - % \end{center} - %}{}% - %\ifboolKV[Boulot]{CorrigeFin}{% - % \AddToHook{env/Maquette/after}[Correction]{% - % \setKV[Boulot]{#1}% - % \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% - % \TikzDSCor{#2}% - % \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% - % \PfMAffichageCorrige% - % \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% - % }% - %}{}% + \ifboolKV[Boulot]{BaremeComplet}{% + \begin{center} + \TableauRecapitulatif + \end{center} + }{}% + \ifboolKV[Boulot]{CorrigeFin}{% + \AddToHook{env/Maquette/after}[Correction]{% + \setKV[Boulot]{#1}% + \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% + \TikzDSCor{#2}% + \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% + \PfMAffichageCorrige% + \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% + }% + }{}% }{% \ifboolKV[Boulot]{IE}{% \setKV[IE]{#2}\TikzIE% @@ -3142,4 +3194,4 @@ \extract{\NbVehiculesINSEE}{1}{\DieselVehiculesINSEE}% \extract{\NbVehiculesINSEE}{1}{\KmEssenceVehiculesINSEE}% \extract{\NbVehiculesINSEE}{1}{\KmDieselVehiculesINSEE}% - }
\ No newline at end of file + } |