From f4aedad08f1d45cfb3aaca3884d9aa56ecf30ce0 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 29 Apr 2024 20:30:29 +0000 Subject: profmaquette (29apr24) git-svn-id: svn://tug.org/texlive/trunk@71128 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/profmaquette/ProfMaquette-doc.pdf | Bin 288571 -> 299331 bytes .../doc/latex/profmaquette/ProfMaquette-doc.zip | Bin 103315 -> 104057 bytes .../tex/latex/profmaquette/ProfMaquette.sty | 240 +++++++++------------ 3 files changed, 104 insertions(+), 136 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.pdf b/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.pdf index 552ebfe62c4..b6afbc2fbbc 100644 Binary files a/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.pdf and b/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.pdf differ diff --git a/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.zip b/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.zip index baedcd57bbf..ef4275d545f 100644 Binary files a/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.zip and b/Master/texmf-dist/doc/latex/profmaquette/ProfMaquette-doc.zip differ diff --git a/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty b/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty index 9d2e501a04f..9564aec94cf 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{2024/04/25}% +\def\filedate{2024/04/28}% \let\PfMfiledate\filedate% -\def\fileversion{0.92}% +\def\fileversion{0.93}% \let\PfMfileversion\fileversion% \ProvidesPackage{ProfMaquette}[\filedate\space v\fileversion\space Maquettage de documents]% @@ -40,12 +40,12 @@ \makeatother %définition des clés \RequirePackage{simplekv}% -\setKVdefault[Boulot]{Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,Epaisseur=0pt,VersSolution=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé +\setKVdefault[Boulot]{Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,Epaisseur=0pt,VersSolution=false,AvecEntrainement=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé \defKV[Boulot]{Colonnes=\setKV[Boulot]{CorrectionColonnes}}% \setKVdefault[Cours]{Couleur=Crimson,Theme=Trace écrite,NomExercice=Exercice}% \setKVdefault[DM]{Numero=1,Date=\today,Classe={},Niveau=3,Code=\jobname}% \setKVdefault[DS]{Numero=1,Date=\today,Classe={},Niveau=3,Code=\jobname,Calculatrice=false,Sujet=A}% -\setKVdefault[Fiche]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}% +\setKVdefault[Fiche]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,}% \setKVdefault[PdT]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}% \setKVdefault[FdR]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}% \setKVdefault[Parcours]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,Vertical=false}% @@ -57,7 +57,7 @@ \setKVdefault[Kholle]{Sujet=1,Numero=1,Date=15,Niveau=TSI-1,Code=\jobname,Lieu=Lycée du Hainaut (Valenciennes),NomEleve=Albert Einstein,CR=false}% \setKVdefault[CAN]{Date=\today,Niveau=6,Duree=9,CoefQ=0.4,CoefR=0.35,CoefJ=0.1}% -\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,TitreSol=false,NonUtilise=false,Profile=false}% +\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,TitreSol=false,NonUtilise=false,Profile=false,PasEntrainement=false}% \defKV[ClesExercices]{TitreSolution=\setKV[ClesExercices]{TitreSol}}% \defKV[ClesExercices]{Source=\setKV[ClesExercices]{AffichageSource}}% \defKV[ClesExercices]{Titre=\setKV[ClesExercices]{AffichageTitre}}% @@ -140,6 +140,8 @@ \setcounter{PfMExo}{0}% \newcounter{PfMExoSol}%Pour repérer les valeurs aléatoires construites automatiquement dans la solution \setcounter{PfMExoSol}{0}% +\newcounter{PfMExoEntrai}%Pour repérer les entrainements +\setcounter{PfMExoEntrai}{0}% \newcounter{PfMCorrigeParcoursPerso}%affichage des solutions ou pas dans le cadre d'un parcours perso \setcounter{PfMCorrigeParcoursPerso}{0}% \newcounter{PfMSOS}%Numéro des SOS dans les parcours fléchés @@ -894,7 +896,7 @@ \]% }% % -%%%% +% %%% Définitions des environnements pour la correction \makeatletter \newwrite\verbatim@out @@ -1039,6 +1041,7 @@ }% \def\PfMTexteDuCorrige{Corrigé de l'exercice} +\def\PfMTexteDeLEntrainement{Automatisme(s) lié(s) à l'exercice} \NewDocumentCommand\PfMAffichageCorrige{}{% \ifboolKV[Boulot]{CAN}{% @@ -1061,6 +1064,43 @@ }% }% }% + +\NewDocumentEnvironment{Entrainement}{}{}{}% + +\makeatletter +\def\EntrainementWrite{% + \@bsphack% + \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.qrc"% + \let\do\@makeother\dospecials% + \catcode`\^^M\active% + \def\verbatim@processline{% + \immediate\write\verbatim@out{\the\verbatim@line}}% + \verbatim@start}% +\def\endEntrainementWrite{\immediate\closeout\verbatim@out\@esphack}% + +\let\Entrainement\EntrainementWrite\let\endEntrainement\endEntrainementWrite% +\makeatother + +\NewDocumentCommand\PfMAffichageEntrainement{}{% + \clearpage + \TikzAutomatismes + \setcounter{PfMExoEntrai}{0}% + \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{% + \refstepcounter{PfMExoEntrai}% + \IfFileExists{\jobname-Ex##1.qrc}{% + \begin{center} + \label{pageentrai-\thePfMMaquette-\thePfMExoEntrai}% + \textbf{\PfMTexteDeLEntrainement\ifnum\thePfMExo=1\relax\else~\ref{page-\thePfMMaquette-##1}\fi}\par\nopagebreak\input{\jobname-Ex##1.qrc}\end{center}}{}% + }% +}% + +\NewDocumentCommand\TikzAutomatismes{}{% + \begin{tcolorbox} + \begin{center} + \Large\sffamily Automatismes% + \end{center} + \end{tcolorbox}% +}% %%%%%%%% BAREME %%%%%%%%%%% %% Bareme \newlength{\brouillon} @@ -1194,7 +1234,18 @@ \node[% fill=tcbcolback,% anchor=center,% - ] at (frame.east){\hyperref[pagesol-\thePfMMaquette-\thePfMExo]{\faKey}};% + ] at ($(frame.north east)!0.25!(frame.south east)$){\hyperref[pagesol-\thePfMMaquette-\thePfMExo]{\faKey}};% + }% + }{}% +}% + +\NewDocumentCommand{\PfMLienVersEntrainement}{}{% + \ifboolKV[Boulot]{AvecEntrainement}{% + \ifboolKV[ClesExercices]{PasEntrainement}{}{% + \node[% + fill=tcbcolback,% + anchor=center,rotate=45% + ] at ($(frame.north east)!0.75!(frame.south east)$){\hyperref[pageentrai-\thePfMMaquette-\thePfMExo]{\faDumbbell}};% }% }{}% }% @@ -1553,6 +1604,8 @@ \PfMAffichageSource% % \PfMLienVersSolution% + % + \PfMLienVersEntrainement% }% }% }% @@ -2025,6 +2078,8 @@ \PfMAffichageSource% % \PfMLienVersSolution% + % + \PfMLienVersEntrainement% }% }% }% @@ -2318,8 +2373,6 @@ \refstepcounter{PfMSection}% \PfMChoixCorrection% \refstepcounter{PfMExo}% - % \setbox\PfMBoxSauvegarde{#3\unskip\unpenalty\unpenalty} -% \setbox\PfMBoxSauvegarde=\vbox{#3} \ifboolKV[Boulot]{CorrigeSeul}{}{% \PfMChoixTitreSolution% \PfMChoixHideItemSolution% @@ -3001,6 +3054,8 @@ \PfMAffichageSource% % Lien vers la solution \PfMLienVersSolution + % Lien vers les entrainements + \PfMLienVersEntrainement }% }% }% @@ -3092,6 +3147,8 @@ \PfMAffichageSource% % \PfMLienVersSolution% + % + \PfMLienVersEntrainement% }% }% }% @@ -3343,6 +3400,12 @@ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% }% +\NewDocumentCommand\PfMAffichageEntrainementColonnes{}{% + \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% + \PfMAffichageEntrainement% + \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% +}% + %%%%%%%%%%%%%%% Debut Maquette %%%%%%% % Environnement englobant le tout. \makeatletter @@ -3377,18 +3440,6 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \clearpage -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% -% \TikzOlympiadesAPMEPCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes% }% }{}% @@ -3436,56 +3487,39 @@ }{} } }% -% \ifboolKV[Boulot]{CorrigeFin}{% -% \AddToHook{env/Maquette/after}[Correction]{% -% \PfMPrepareCorrection{#1}% -% \TikzCANCor{#2}% -% \PfMAffichageCorrectionColonnes% -% }% -% }{}% }{% \ifboolKV[Boulot]{FdR}{% - \ifboolKV[Boulot]{CorrigeSeul}{}{% - \setKV[FdR]{#2}\TikzFdR% - } - \let\exercice\exerciceFdR\let\endexercice\endexerciceFdR% + \ifboolKV[Boulot]{CorrigeSeul}{}{% + \setKV[FdR]{#2}\TikzFdR% + } + \let\exercice\exerciceFdR\let\endexercice\endexerciceFdR% + \ifboolKV[Boulot]{AvecEntrainement}{% + \AddToHook{env/Maquette/end}[Haltere]{% + \PfMAffichageEntrainementColonnes% + }% + }{}% \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzFdRCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes }% }{}% }{% \ifboolKV[Boulot]{Contrat}{% - \ifboolKV[Boulot]{CorrigeSeul}{}{% - \setKV[Contrat]{#2}\TikzContrat% - } - \let\exercice\exerciceContrat\let\endexercice\endexerciceContrat% + \ifboolKV[Boulot]{CorrigeSeul}{}{% + \setKV[Contrat]{#2}\TikzContrat% + } + \let\exercice\exerciceContrat\let\endexercice\endexerciceContrat% + \ifboolKV[Boulot]{AvecEntrainement}{% + \AddToHook{env/Maquette/end}[Haltere]{% + \PfMAffichageEntrainementColonnes% + }% + }{}% \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzContratCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes% }% }{}% @@ -3497,17 +3531,7 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzFicheCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes }% }{}% @@ -3519,17 +3543,7 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzRecapBrevetCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes% }% }{}% @@ -3545,24 +3559,19 @@ }% }{% \ifboolKV[Boulot]{Parcours}{% - \ifboolKV[Boulot]{CorrigeSeul}{}{% - \setKV[Parcours]{#2}\TikzParcours% - } - \let\exercice\exerciceParcours\let\endexercice\endexerciceParcours% + \ifboolKV[Boulot]{CorrigeSeul}{}{% + \setKV[Parcours]{#2}\TikzParcours% + } + \let\exercice\exerciceParcours\let\endexercice\endexerciceParcours% + \ifboolKV[Boulot]{AvecEntrainement}{% + \AddToHook{env/Maquette/end}[Haltere]{% + \PfMAffichageEntrainementColonnes% + }% + }{}% \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzParcoursCor{#2} -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes }% }{}% @@ -3575,17 +3584,7 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzPdTCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes% }% }{}% @@ -3595,17 +3594,9 @@ \setKV[DM]{#2}\TikzDM% } \let\exercice\exerciceDM\let\endexercice\endexerciceDM% -% \let\Exercice\exercice\let\endExercice\endexercice% \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzDMCor{#2}% \PfMAffichageCorrectionColonnes% }% @@ -3617,18 +3608,15 @@ \TikzFiche% }% \let\exercice\exerciceFiche\let\endexercice\endexerciceFiche% - %\let\Exercice\exercice\let\endExercice\endexercice + \ifboolKV[Boulot]{AvecEntrainement}{% + \AddToHook{env/Maquette/end}[Haltere]{% + \PfMAffichageEntrainementColonnes% + }% + }{}% \ifboolKV[Boulot]{CorrigeFin}{% \ifboolKV[Boulot]{CorrigeAll}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1}% -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzFicheCor{#2}% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{% @@ -3680,17 +3668,7 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1} -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzDSCor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes% }% }{}% @@ -3703,17 +3681,7 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \PfMPrepareCorrection{#1} -% \useKVdefault[Boulot]% -% \setKV[Boulot]{#1}% -% \if@Dyslexie -% \setKV[Boulot]{Dys} -% \fi -% \PfMBasculeDys% -% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzIECor{#2}% -% \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% -% \PfMAffichageCorrige% -% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% \PfMAffichageCorrectionColonnes }% }{}% -- cgit v1.2.3