diff options
Diffstat (limited to 'macros/latex/contrib/customenvs')
-rw-r--r-- | macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf | bin | 95687 -> 96017 bytes | |||
-rw-r--r-- | macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex | 19 | ||||
-rw-r--r-- | macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf | bin | 203410 -> 321239 bytes | |||
-rw-r--r-- | macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex | 161 | ||||
-rw-r--r-- | macros/latex/contrib/customenvs/tex/customenvs.sty | 319 |
5 files changed, 481 insertions, 18 deletions
diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf Binary files differindex 49dd9c958e..820109987c 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex index e1bbbe1918..da20b128bc 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex @@ -34,8 +34,8 @@ \usepackage[margin=1.5cm]{geometry} \setlength{\parindent}{0pt} -\def\TPversion{0.1.0} -\def\TPdate{22/10/2023} +\def\TPversion{0.1.1} +\def\TPdate{25/10/2023} \usepackage{tcolorbox} \sethlcolor{lightgray!25} \NewDocumentCommand\MontreCode{ m }{% @@ -111,6 +111,8 @@ \section{History} +\verb|v0.1.1|~:~~~~Skills table (only french for the moment...) + \verb|v0.1.0|~:~~~~Initial version \vspace*{5mm} @@ -121,12 +123,13 @@ \subsection{Idea} -The idea is to propose some classics environments with customizations : +The idea is to propose some classics environments with customizations (some are, for the moment, only in french) : \begin{itemize} \item write in \textit{multicols}, with spacings enhancements ; \item present answers for a \textit{MCQ} ; - \item create a list with \textit{choosen items} (randomly or by numbers). + \item create a list with \textit{choosen items} (randomly or by numbers) ; + \item present a skill table. \end{itemize} \smallskip @@ -143,15 +146,17 @@ Loaded packages are \item \MontreCode{xstring}, \MontreCode{simplekv}, \MontreCode{listofitems}, \MontreCode{randomlist} and \MontreCode{xintexpr} ; \item \MontreCode{enumitem} ; \item \MontreCode{multicol} ; - \item \MontreCode{tabularray}. + \item \MontreCode{tabularray} ; + \item \MontreCode{fontawesome5} ; \end{itemize} -Due to limitations, \MontreCode{enumitem} or \MontreCode{multicol} or \MontreCode{tabularray} can be \textit{un}loaded by \MontreCode{customenvs} (user must load them manually) via options : +Due to limitations, \MontreCode{enumitem}/\MontreCode{multicol}/\MontreCode{tabularray}\MontreCode{fontawesome5} can be \textit{un}loaded by \MontreCode{customenvs} (user must load them manually) via options : \begin{itemize} \item \MontreCode{$\mathtt{\langle}$noenum$\mathtt{\rangle}$} ; \item \MontreCode{$\mathtt{\langle}$nomulticol$\mathtt{\rangle}$} ; - \item \MontreCode{$\mathtt{\langle}$notblr$\mathtt{\rangle}$}. + \item \MontreCode{$\mathtt{\langle}$notblr$\mathtt{\rangle}$} ; + \item \MontreCode{$\mathtt{\langle}$nofa$\mathtt{\rangle}$} ; \end{itemize} \begin{codehigh}[language=latex/latex3,style/main=teal!25,style/code=teal!25] diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf Binary files differindex 8729772ec0..0b7ef6f8b4 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex index 5e610ba0dc..969dde4575 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex @@ -39,8 +39,8 @@ \usepackage[margin=1.5cm]{geometry} \setlength{\parindent}{0pt} -\def\TPversion{0.1.0} -\def\TPdate{22 octobre 2023} +\def\TPversion{0.1.1} +\def\TPdate{25 octobre 2023} \usepackage[most]{tcolorbox} \tcbuselibrary{listingsutf8} \newtcblisting{DemoCode}[1]{% @@ -57,19 +57,19 @@ commentstyle={\itshape\color{gray}}, keywordstyle={\color{blue}},% classoffset=0,% - keywords={usepackage,displaystyle,frac,infty,begin,end,lipsum,centering,par,baselineskip,item,bullet,int,color},% + keywords={usepackage,displaystyle,frac,infty,begin,end,lipsum,centering,par,baselineskip,item,bullet,int,color,NewDocumentCommand},% alsoletter={-},% keywordstyle={\color{blue}},% classoffset=1,% alsoletter={-},% - morekeywords={center,justify},% + morekeywords={center,justify,\LstDeuxNiv,\LstTroisNiv,\LstQuatreNiv,\NoticeDeuxNiv,\NoticeTroisNiv,\NoticeQuatreNiv,\DeuxNivBatterie,\TroisNivBatterie,\QuatreNivBatterie,\DeuxNivSmiley,\TroisNivSmiley,\QuatreNivSmiley,\vcenterfa,\faIcon},% keywordstyle={\color{violet}},% classoffset=2,% alsoletter={-},% - morekeywords={\ReponsesQCM,MultiCols,\CreerListeItems,\ListeChoixItems},% + morekeywords={\ReponsesQCM,MultiCols,\CreerListeItems,\ListeChoixItems,\TableauCompetences},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={Largeur,Filets,EspacesCL,NbCols,Labels,PoliceLabels,EspaceLabels,Swap,Type,CoeffEspVert,EpTrait,Alea},% + morekeywords={Largeur,Filets,EspacesCL,NbCols,Labels,PoliceLabels,EspaceLabels,Swap,Type,CoeffEspVert,EpTrait,Alea,LargeurNivs,Niveaux,NoticeNiveaux,Titre,PolTitre,PolNotice,PolComp,LigneSep,CouleurNotice,CouleurNiveaux,CouleurFond,Note,Notice},% keywordstyle={\color{orange}} },% #1 @@ -149,6 +149,8 @@ \section{Historique} +\verb|v0.1.1|~:~~~~Tableaux de compétences + \verb|v0.1.0|~:~~~~Version initiale \vspace*{5mm} @@ -166,7 +168,8 @@ L'idée est de proposer des commandes ou environnements classiques avec quelques \item \textit{centrer} avec gestion des espacements autour ; \item écrire en \textit{multi-colonnes} avec gestion des espacements autour ; \item mettre en forme des réponses à des \textit{QCM} ; - \item créer une liste avec \textit{choix des items} (de manière aléatoire ou par saisie directe). + \item créer une liste avec \textit{choix des items} (de manière aléatoire ou par saisie directe) ; + \item créer un tableau de \textit{compétences}. \end{itemize} \smallskip @@ -192,15 +195,19 @@ Les packages chargés sont : \item \MontreCode{xstring}, \MontreCode{simplekv}, \MontreCode{listofitems}, \MontreCode{randomlist} et \MontreCode{xintexpr} ; \item \MontreCode{enumitem} ; \item \MontreCode{multicol} ; - \item \MontreCode{tabularray}. + \item \MontreCode{tabularray} ; + \item \MontreCode{xcolor} ; + \item \MontreCode{fontawesome5}. \end{itemize} -À noter que, pour des raisons de compatibilité (ou d'incompatibilité), les packages \MontreCode{enumitem} ou \MontreCode{multicol} ou \MontreCode{tabularray} peuvent ne pas être chargés par \MontreCode{customenvs} (auxquels cas l'utilisateur devra les avoir chargés pour faire fonctionner certains environnements) via les options : +À noter que, pour des raisons de compatibilité (ou d'incompatibilité), les packages \MontreCode{enumitem}/\MontreCode{multicol}/\MontreCode{tabularray}/\MontreCode{xcolor}/\MontreCode{fontawesome5} peuvent ne pas être chargés par \MontreCode{customenvs} (auxquels cas l'utilisateur devra les avoir chargés pour faire fonctionner certains environnements) via les options : \begin{itemize} \item \MontreCode{$\mathtt{\langle}$nonenum$\mathtt{\rangle}$} ; \item \MontreCode{$\mathtt{\langle}$nonmulticol$\mathtt{\rangle}$} ; - \item \MontreCode{$\mathtt{\langle}$nontblr$\mathtt{\rangle}$}. + \item \MontreCode{$\mathtt{\langle}$nontblr$\mathtt{\rangle}$} ; + \item \MontreCode{$\mathtt{\langle}$nonxcolor$\mathtt{\rangle}$} ; + \item \MontreCode{$\mathtt{\langle}$nonfa$\mathtt{\rangle}$}. \end{itemize} \begin{DemoCode}{listing only} @@ -556,4 +563,138 @@ Le dernier argument, optionnel et entre \MontreCode{<...>} correspond à des opt \ListeChoixItems[Type=item]{\malisteditemsb}{ListeItemsB}(7,2,1,5,3)<label=$\bullet$> \end{DemoCode} +\pagebreak + +\section{Tableau de compétences} + +\subsection{Principe et fonctionnement} + +L'idée est de proposer un environnement pour créer un tableau de compétences, via 2/3/4 niveaux : + +\begin{itemize} + \item basé sur \MontreCode{tblr}, qui doit donc être chargé (par défaut il l'est) ; + \item basé sur \MontreCode{xcolor}, qui doit donc être chargé (par défaut il l'est) ; + \item avec personnalisations possibles. +\end{itemize} + +Si \MontreCode{xcolor} est déjà chargé, avec des options particulières, le package peut ne pas le charger, grâce à l'option \MontreCode{nonxcolor}. + +\begin{DemoCode}{listing only} +\TableauCompetences[clés]{listecompétences} +\end{DemoCode} + +\begin{DemoCode}{} +\TableauCompetences{Compétence A § Compétence B} +\end{DemoCode} + +\subsection{Éléments prédéfinis} + +Pour simplifier la saisie de certains paramètres, certaines macros ont été définies en interne, et pourront être utilisées, ou redéfinies si besoin. + +\begin{DemoCode}{listing only} +%patch fa vcenter +\NewDocumentCommand{\vcenterfa}{ O{} m }{$\vcenter{\hbox{\faIcon[#1]{#2}}}$} +%labelnote +\def\LabelNoteComp{Note} +%listeniveaux +\def\LstDeuxNiv{NA § A} +\def\LstTroisNiv{NA § ECA § A} +\def\LstQuatreNiv{NA § PA § ECA § A} +%noticeniveaux +\def\NoticeDeuxNiv{Non acquis § Acquis} +\def\NoticeTroisNiv{Non acquis § En cours d'acquis. § Acquis} +\def\NoticeQuatreNiv{Non acquis § Part. acquis § En cours d'acquis. § Acquis} +\end{DemoCode} + +\begin{DemoCode}{text only} +Niveaux par \og batterie \fg : + +\MontreCode{\textbackslash DeuxNivBatterie} : \DeuxNivBatterie\\ +\MontreCode{\textbackslash TroisNivBatterie} : \TroisNivBatterie \\ +\MontreCode{\textbackslash QuatreNivBatterie} : \QuatreNivBatterie\\ + +Niveaux par \og smiley \fg : + +\MontreCode{\textbackslash DeuxNivSmiley} : \DeuxNivSmiley\\ +\MontreCode{\textbackslash TroisNivSmiley} : \TroisNivSmiley\\ +\MontreCode{\textbackslash QuatreNivSmiley} : \QuatreNivSmiley +\end{DemoCode} + +\pagebreak + +Les \MontreCode{clés} disponibles sont : + +\begin{itemize} + \item \MontreCode{Largeur} : largeur globale du tableau ; \MontreCode{0.95\textbackslash linewidth} par défaut + \item \MontreCode{LargeurNivs} : largeur des colonnes Niv + Note (séparées par \MontreCode{§}) ; \MontreCode{0.75cm § 1.25cm} par défaut + \item \MontreCode{Niveaux} : liste des niveaux (séparés par \MontreCode{§}) ; \MontreCode{NA § ECA § A} par défaut + \item \MontreCode{NoticeNiveaux} : notice des niveaux (séparés par \MontreCode{§}) ; \MontreCode{Non acquis § En cours d'acquisition § Acquis} par défaut ; + \item \MontreCode{Titre} : titre du tableau ; \MontreCode{DS01} par défaut + \item \MontreCode{PolTitre} : police de la 1\up{ere} ligne ; \MontreCode{\textbackslash small\textbackslash sffamily\textbackslash bfseries} par défaut + \item \MontreCode{PolNotice} : police de la notice (dernière ligne) ; \MontreCode{\textbackslash small\textbackslash sffamily\textbackslash bfseries} par défaut + \item \MontreCode{PolComp} : police des lignes des compétences ; \MontreCode{\textbackslash small\textbackslash sffamily} par défaut + \item \MontreCode{LigneSep} : séparation entre les lignes ; \MontreCode{2pt} par défaut + \item \MontreCode{CouleurNotice} : couleur de la notice ; \MontreCode{black} par défaut + \item \MontreCode{CouleurNiveaux} : couleur de la première ligne ; \MontreCode{black} par défaut + \item \MontreCode{CouleurFond} : fond de la première ligne; \MontreCode{lightgray!25} par défaut + \item \MontreCode{Note} : booléen pour afficher la colonne note ; \MontreCode{true} par défaut + \item \MontreCode{Notice} : booléen pour afficher la ligne notice; \MontreCode{true} par défaut. +\end{itemize} + +L'argument, obligatoire et entre \MontreCode{\{...\}} est la liste des compétences, sous la forme \MontreCode{Comp A § Comp B § ...}. + +À noter que les clés \MontreCode{Niveaux} et \MontreCode{NoticeNiveaux} doivent avoir le même nombre d'éléments. + +\subsection{Exemples} + +\begin{DemoCode}{} +%Note + Notice +\TableauCompetences{Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + +\begin{DemoCode}{} +%- Note + Notice +\TableauCompetences[Note=false]{Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + +\begin{DemoCode}{} +%Note - Notice +\TableauCompetences[Notice=false]{Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + +\begin{DemoCode}{} +%- Note - Notice +\TableauCompetences[Note=false,Notice=false]{Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + +\begin{DemoCode}{} +%Personnalisations +\TableauCompetences[Titre=Eval n°01,Niveaux=\TroisNivBatterie]{Utiliser le compas § Utiliser l'équerre}\par +\TableauCompetences[Titre={},Niveaux=\TroisNivSmiley]{Utiliser le compas § Utiliser l'équerre}\par +\TableauCompetences[Largeur=10cm,Notice=false,Titre={},Niveaux=\TroisNivSmiley]{Utiliser le compas § Utiliser l'équerre}\par +\end{DemoCode} + +\begin{DemoCode}{} +%deux niveaux +\TableauCompetences[Niveaux=\LstDeuxNiv,NoticeNiveaux=\NoticeDeuxNiv]{Utiliser le compas § Utiliser l'équerre}\par +\TableauCompetences[Largeur=10cm,Titre={},Niveaux=\DeuxNivBatterie, NoticeNiveaux=\NoticeDeuxNiv]{Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + +\pagebreak + +\begin{DemoCode}{} +%quatre niveaux, personnalisation 'complète' +\def\LabelNoteComp{Appréc.} +\TableauCompetences[% + Largeur=14cm,% + LargeurNivs={1cm§3.5cm},% + Niveaux={N0§N1§N2§N3}, + NoticeNiveaux={Très bof§Bof§Moyen§Bien}, + CouleurNotice=orange,% + CouleurNiveaux=blue,% + PolTitre=\large\ttfamily\itshape\bfseries + ]% + {Utiliser la règle § Utiliser le compas § Utiliser l'équerre} +\end{DemoCode} + \end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/customenvs/tex/customenvs.sty b/macros/latex/contrib/customenvs/tex/customenvs.sty index e444e4e1f0..b58ff0ca36 100644 --- a/macros/latex/contrib/customenvs/tex/customenvs.sty +++ b/macros/latex/contrib/customenvs/tex/customenvs.sty @@ -2,9 +2,10 @@ % licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{customenvs}[2023/10/22 0.1.0 Custom classic environments] +\ProvidesPackage{customenvs}[2023/10/25 0.1.1 Custom classic environments] %====HISTORIQUE +% v 0.1.1 Ajout de tableaux de compétences % v 0.1.0 Version initiale %====OPTIONS FR ET EN @@ -17,10 +18,22 @@ \newif\if@multicol\@multicoltrue% \DeclareOption{nonmulticol}{\@multicolfalse}% \DeclareOption{nomulticol}{\@multicolfalse}% +\newif\if@xcolor\@xcolortrue% +\DeclareOption{nonxcolor}{\@xcolorfalse}% +\DeclareOption{noxcolor}{\@xcolorfalse}% +\newif\if@fa\@fatrue% +\DeclareOption{nonfa}{\@fafalse}% +\DeclareOption{nofa}{\@fafalse}% \DeclareOption*{} \ProcessOptions\relax %====PACKAGES UTILES À CHARGER +\if@xcolor + \RequirePackage{xcolor} +\fi +\if@fa + \RequirePackage{fontawesome5} +\fi \if@enum \RequirePackage{enumitem} \fi @@ -264,6 +277,310 @@ }% } +%====TABLEAU DE COMPÉTENCES +%patch fa vcenter +\NewDocumentCommand{\vcenterfa}{ O{} m }{$\vcenter{\hbox{\faIcon[#1]{#2}}}$} + +%labelnote +\def\LabelNoteComp{Note} +%listeniveaux +\def\LstDeuxNiv{NA § A} +\def\LstTroisNiv{NA § ECA § A} +\def\LstQuatreNiv{NA § PA § ECA § A} +%noticeniveaux +\def\NoticeDeuxNiv{Non acquis § Acquis} +\def\NoticeTroisNiv{Non acquis § En cours d'acquis. § Acquis} +\def\NoticeQuatreNiv{Non acquis § Part. acquis § En cours d'acquis. § Acquis} +%nivparbatteries +\def\DeuxNivBatterie{\vcenterfa[solid]{battery-quarter} § \vcenterfa[solid]{battery-full}} +\def\TroisNivBatterie{\vcenterfa[solid]{battery-quarter} § \vcenterfa[solid]{battery-half} § \vcenterfa[solid]{battery-full}} +\def\QuatreNivBatterie{\vcenterfa[solid]{battery-empty} § \vcenterfa[solid]{battery-quarter} § \vcenterfa[solid]{battery-half} § \vcenterfa[solid]{battery-full}} +%nivparsmileys +\def\DeuxNivSmiley{\vcenterfa[regular]{angry} § \vcenterfa[regular]{smile}} +\def\TroisNivSmiley{\vcenterfa[regular]{angry} § \vcenterfa[regular]{frown} § \vcenterfa[regular]{smile}} +\def\QuatreNivSmiley{\vcenterfa[regular]{angry} § \vcenterfa[regular]{frown} § \vcenterfa[regular]{smile} § \vcenterfa[regular]{grin}} + +% ========================tableau compétences +\defKV[tblcomp]{% + Largeur=\def\COMPETlargeur{#1},% + LargeurNivs=\def\COMPETlargeurs{#1},% + Niveaux=\def\COMPETniveaux{#1},% + NoticeNiveaux=\def\COMPETnoticeniveaux{#1},% + Titre=\def\COMPETtitre{#1},% + PolTitre=\def\COMPETlegende{#1},% + PolComp=\def\COMPETcomp{#1},% + PolNotice=\def\COMPETnotice{#1},% + LigneSep=\def\COMPETsep{#1} +} + +\setKVdefault[tblcomp]{% + Largeur=0.95\linewidth,% + LargeurNivs={0.75cm § 1.25cm},%niv + note + Niveaux={NA § ECA § A},% + NoticeNiveaux={Non acquis § En cours d'acquisition § Acquis},% + Titre=DS01,% + PolTitre=\small\sffamily\bfseries,% + PolNotice=\small\sffamily\bfseries,% + PolComp=\small\sffamily,% + LigneSep=2pt,% + CouleurNotice=black,% + CouleurNiveaux=black,% + CouleurFond=lightgray!25,% + Note=true,% + Notice=true +} + +%pour créer le body du tableau (j'ai encore du mal avec ça...) +\long\def\tblcompaddto#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}} + +\NewDocumentCommand{\TableauCompetences}{ O{} m }{%1=options,2=liste compétences + \useKVdefault[tblcomp]% + \setKV[tblcomp]{#1}% on paramètres les nouvelles clés et on les simplifie + \setsepchar{§}% + \readlist*\ListeCompetences{#2}% + \readlist*\ListeNiveaux{\COMPETniveaux}% + \readlist*\ListeLargeurs{\COMPETlargeurs}% + \readlist*\ListeNoticeNiveaux{\COMPETnoticeniveaux}% + \def\CPtabledatacomp{}% + \xintifboolexpr{\ListeNiveauxlen == 2}%avec 3 niveaux de compétences + {% + \ifboolKV[tblcomp]{Note}% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] & \LabelNoteComp \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} & & & \\} + %creation du tableau note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{2}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen+1\relax}{},% + cell{Z}{1}={c=3}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{2}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen\relax}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} & & \\} + %creation du tableau -note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{2}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{Z}{1}={c=3}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau -note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{2}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + }% + {}% + \xintifboolexpr{\ListeNiveauxlen == 3}%avec 3 niveaux de compétences + {% + \ifboolKV[tblcomp]{Note}% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] & \ListeNiveaux[3] & \LabelNoteComp \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} / {\ListeNiveaux[3]} : {\ListeNoticeNiveaux[3]} & & & & \\} + %creation du tableau note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{3}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen+1\relax}{},% + cell{Z}{1}={c=4}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{3}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen\relax}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] & \ListeNiveaux[3] \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} / {\ListeNiveaux[3]} : {\ListeNoticeNiveaux[3]} & & & \\} + %creation du tableau -note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{3}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{Z}{1}={c=4}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau -note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{3}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + }% + {}% + \xintifboolexpr{\ListeNiveauxlen == 4}%maintenant avec 4 niveaux de compétences + {% + \ifboolKV[tblcomp]{Note}% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] & \ListeNiveaux[3] & \ListeNiveaux[4] & \LabelNoteComp \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & & & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} / {\ListeNiveaux[3]} : {\ListeNoticeNiveaux[3]} / {\ListeNiveaux[4]} : {\ListeNoticeNiveaux[4]} & & & & & \\} + %creation du tableau note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{4}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen+1\relax}{},% + cell{Z}{1}={c=5}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{4}{Q[c,b,\ListeLargeurs[1]]}Q[c,b,\ListeLargeurs[2]]},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp},% + cell{2}{Z}={r=\the\numexpr\ListeCompetenceslen\relax}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + {% + \tblcompaddto\CPtabledatacomp{\COMPETtitre & \ListeNiveaux[1] & \ListeNiveaux[2] & \ListeNiveaux[3] & \ListeNiveaux[4] \\}% + \xintFor* ##1 in {\xintSeq{1}{\ListeCompetenceslen}}\do{% + \tblcompaddto\CPtabledatacomp{\ListeCompetences[\the\numexpr\therownum-1\relax] & & & & \\}% + }% + \ifboolKV[tblcomp]{Notice}% + {% + \tblcompaddto\CPtabledatacomp{{\ListeNiveaux[1]} : {\ListeNoticeNiveaux[1]} / {\ListeNiveaux[2]} : {\ListeNoticeNiveaux[2]} / {\ListeNiveaux[3]} : {\ListeNoticeNiveaux[3]} / {\ListeNiveaux[4]} : {\ListeNoticeNiveaux[4]} & & & & \\} + %creation du tableau -note+notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{4}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Y}={font=\COMPETcomp},% + row{Z}={font=\COMPETnotice,fg=\useKV[tblcomp]{CouleurNotice}},% + cell{Z}{1}={c=5}{} + }% + \CPtabledatacomp + \end{tblr}% + }% + {% + %creation du tableau -note-notice + \begin{tblr}[expand=\CPtabledatacomp]% + {% + width={\COMPETlargeur},% + hlines,vlines,colspec={X[l,b]*{4}{Q[c,b,\ListeLargeurs[1]]}},% + rowsep=\COMPETsep,% + row{1}={font=\COMPETlegende,fg=\useKV[tblcomp]{CouleurNiveaux},bg=\useKV[tblcomp]{CouleurFond}},% + row{2-Z}={font=\COMPETcomp} + }% + \CPtabledatacomp + \end{tblr}% + }% + }% + }% + {}% +} + %%----COMMANDES EN %====QCMs |