Referentiels/latex/macros_formations.sty

330 lines
12 KiB
TeX

\NeedsTeXFormat{LaTeX2e}[1999/01/01]
\ProvidesPackage{macros_formations}[2021/03/28]
% Déclaration des options
% *********************************************************************
%% Option noir et blanc
%\newif\if@noiretblanc \@noiretblancfalse
%\DeclareOption{noiretblanc}{\@noiretblanctrue}
% Option mots-cles (affichage des mots-cles)
\newif\if@motscles \@motsclesfalse
\DeclareOption{motscles}{\@motsclestrue}
\DeclareOption*{}%% Ne rien faire quand une option est inconnue
\ProcessOptions
% ******************************************
% Intitulés standards des niveaux
% ******************************************
\def\niveauA{Niveau 1} % Novice
\def\niveauB{Niveau 2} % Interm\'{e}diaire}
\def\niveauC{Niveau 3} % Comp\'{e}tent}
% **************************************
% Variables globales
% **************************************
\newcounter{cptsemestre} %
\newcounter{cptR} %
\newcounter{cptsae}
\xdef\comploop{A,B,C} % Les compétences de la ressource
\xdef\acloop{A,B,C,D,E,F} % Les contenus (rarement plus de 15)
\xdef\contenuloop{A,B,C,D,E,F,G,H,I,J} % Les contenus (rarement plus de 10)
\xdef\ressourcesaeloop{A,B,C,D,E,F,G,H,I,J}
% ****************************************
% La spécialité
% ****************************************
\def\specialite#1{\def\specialitename{#1}}
% ****************************************
% Semestre (numéroté avec \cptsemestre)
% ****************************************
% \nouveausemestre{}
\def\nouveausemestre#1{
\addtocounter{cptsemestre}{1} % Incrémente le compteur de semestre
\setcounter{cptR}{0} % RAZ du compteur de ressource total
\setcounter{cptsae}{0}
\def\currentsemestre{\Alph{cptsemestre}} % Lettre du semestre courant : A=1, B=2, ...
\newcounter{cptR\currentsemestre} % le compteur des ressources dans le semestre
\newcounter{cptS\currentsemestre} % le compteur des sae dans le semestre
\expandafter\def\csname semestrename\currentsemestre\endcsname{Semestre \arabic{cptsemestre}}
\expandafter\def\csname semestrenumero\currentsemestre\endcsname{\arabic{cptsemestre}}
}
%*****************************
% Ressources
% ****************************
% ****************************
% Déclaration de la ressource :
% \nouvelleressource{code_ressource}{intitule_ressource}
\def\nouvelleressource#1#2{
\addtocounter{cptR}{1} % Ajoute une ressource (tous semestres confondu)
\addtocounter{cptR\currentsemestre}{1} % Ajoute une ressource au semestre
\def\currentRressource{\currentsemestre\Alph{cptR}} % Ressource RAA = A pour semestre 1 puis A pour ressource n°1
\expandafter\xdef\csname Rcode\currentRressource\endcsname{#1} % code
\expandafter\xdef\csname Rname\currentRressource\endcsname{#2} % nom/intitule
\expandafter\xdef\csname Rsem\currentRressource\endcsname{\csname semestrenumero\currentsemestre\endcsname} % nom du semestre
\newcounter{cptRcomp\currentRressource} % le compteur de compétences rattachées à la ressource
\newcounter{cptRsae\currentRressource} % Le compteur de sae
\newcounter{cptRprerequis\currentRressource}
}
% ****************************
% Ajout des heures à la ressource courante
\def\ajoutRheures#1#2{
\expandafter\xdef\csname Rtraining\currentRressource\endcsname{#1} % heures de formation encadrées
\expandafter\xdef\csname Rtp\currentRressource\endcsname{#2} % heures de projet
}
% ****************************
% Ajout du descriptif (ancrage professionnel)
\def\ajoutRancrage#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Rancrage\currentRressource\endcsname{\noexpand #1} % descriptif
\endgroup
}
% ****************************
% Ajout des contenus
\def\ajoutRcontenudetaille#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Rcontenu\currentRressource\endcsname{\noexpand #1} % liste de contenu
\endgroup
}
% ****************************
% Ajout des compétences
% \ajoutcompetence{nom_competence}{niveau}
\def\ajoutRcompetence#1#2{
\addtocounter{cptRcomp\currentRressource}{1} % le compteur de la comp dans la ressource
\xdef\currentRcomp{\Alph{cptRcomp\currentRressource}} % La lettre de la comp dans la ressource
\expandafter\xdef\csname Rcomp\currentRressource\currentRcomp\endcsname{#1} % le nom de la comp
\expandafter\xdef\csname Rniveau\currentRressource\currentRcomp\endcsname{#2} % le nom de la comp
\newcounter{cptRac\currentRressource\currentRcomp} % le compteur d'ac pour la compétence rattachées à la ressource
}
% ****************************
% Ajout d'un coeff éventuel aux compétences
\def\ajoutRcoeff#1{
\expandafter\xdef\csname Rcoeff\currentRressource\currentRcomp\endcsname{#1} % le nom de la comp
}
% ****************************
% Ajout d'AC aux compétences
\def\ajoutRac#1#2{
\addtocounter{cptRac\currentRressource\currentRcomp}{1} % le compteur de l'ac pour la comp dans la ressource
\xdef\currentRac{\Alph{cptRac\currentRressource\currentRcomp}} % La lettre de l'ac pour la comp dans la ressource
\expandafter\xdef\csname Raccode\currentRressource\currentRcomp\currentRac\endcsname{#1} % le nom de la comp
\begingroup\let\+\relax
\expandafter\gdef\csname Racname\currentRressource\currentRcomp\currentRac\endcsname{#2} % le nom de la comp
\endgroup
}
% ****************************
% Ajout des SAE
\def\ajoutRsae#1#2{
\addtocounter{cptRsae\currentRressource}{1} % le compteur de la sae dans la ressource
\xdef\currentRsae{\Alph{cptRsae\currentRressource}} % La lettre
%\expandafter\xdef\csname Rlinkcode\currentRressource\currentRsae\endcsname{#1}
\expandafter\xdef\csname Rsaecode\currentRressource\currentRsae\endcsname{#1} %
\expandafter\xdef\csname Rsaename\currentRressource\currentRsae\endcsname{#2} %
}
% ****************************
% Ajout des prerequis
%% pré-requis autre qu'une ressource (ex: A2-B1 en anglais)
\def\ajoutRprerequislycee#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Rprerequislycee\currentRressource\endcsname{#1} % descriptif
\endgroup
}
\def\ajoutRprerequis#1#2{
\addtocounter{cptRprerequis\currentRressource}{1} % le compteur du prerequis dans la ressource
\xdef\currentprerequis{\Alph{cptRprerequis\currentRressource}} % La lettre
\expandafter\xdef\csname Rprerequiscode\currentRressource\currentprerequis\endcsname{#1} %
\expandafter\xdef\csname Rprerequisname\currentRressource\currentprerequis\endcsname{#2} %
}
% ****************************
% Ajout des mots-clés
\def\ajoutRmotscles#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Rmotscles\currentRressource\endcsname{#1} % descriptif
\endgroup
}
% **********************************************
% Déclaration d'une SAé
% **********************************************
% ****************************
% Déclaration de la saé :
% \nouvellesae{code_sae}{intitule_sae}
\def\nouvellesae#1#2{
\addtocounter{cptsae}{1} % Ajoute une ressource (tous semestres confondu)
\addtocounter{cptS\currentsemestre}{1} % Ajoute une ressource au semestre
\def\currentSsae{\currentsemestre\Alph{cptsae}} % Ressource RAA = A pour semestre 1 puis A pour ressource n°1
%\expandafter\xdef\csname Slinkcode\currentSsae\endcsname{\currentSsae}
\expandafter\xdef\csname Scode\currentSsae\endcsname{#1} % code
\expandafter\xdef\csname Sname\currentSsae\endcsname{#2} % nom/intitule
\expandafter\xdef\csname Ssem\currentSsae\endcsname{\csname semestrenumero\currentsemestre\endcsname} % nom du semestre
\newcounter{cptScomp\currentSsae} % le compteur de compétences rattachées à la ressource
\newcounter{cptSressource\currentSsae} % Le compteur de ressources dans la SAé
\newcounter{cptSexemple\currentSsae} % Le compteur d'exemples d'une SAE
}
% ****************************
% Ajout des heures à la saé courante
\def\ajoutSheures#1#2#3{
\expandafter\xdef\csname Straining\currentSsae\endcsname{#1} % heures de formation encadrées
\expandafter\xdef\csname Stp\currentSsae\endcsname{#2} % heures de tp
\expandafter\xdef\csname Sprojet\currentSsae\endcsname{#3} % heures de projet
}
% ****************************
% Ajout du descriptif (description des objectifs)
\def\ajoutSdescription#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Sdescriptif\currentSsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% ****************************
% Ajout des compétences
% \ajoutcompetence{nom_competence}{niveau}
\def\ajoutScompetence#1#2{
\addtocounter{cptScomp\currentSsae}{1} % le compteur de la comp dans la ressource
\xdef\currentScomp{\Alph{cptScomp\currentSsae}} % La lettre de la comp dans la ressource
\expandafter\xdef\csname Scomp\currentSsae\currentScomp\endcsname{#1} % le nom de la comp
\expandafter\xdef\csname Sniveau\currentSsae\currentScomp\endcsname{#2} % le nom de la comp
\newcounter{cptSac\currentSsae\currentScomp} % le compteur d'ac pour la compétence rattachées à la ressource
}
% ****************************
% Ajout d'un coeff éventuel aux compétences
\def\ajoutScoeff#1{
\expandafter\xdef\csname Scoeff\currentSsae\currentScomp\endcsname{#1} % le nom de la comp
}
% ****************************
% Ajout d'AC aux compétences
\def\ajoutSac#1#2{
\addtocounter{cptSac\currentSsae\currentScomp}{1} % le compteur de l'ac pour la comp dans la ressource
\xdef\currentSac{\Alph{cptSac\currentSsae\currentScomp}} % La lettre de l'ac pour la comp dans la ressource
\expandafter\xdef\csname Saccode\currentSsae\currentScomp\currentSac\endcsname{#1} % le nom de la comp
\begingroup\let\+\relax
\expandafter\gdef\csname Sacname\currentSsae\currentScomp\currentSac\endcsname{#2} % le nom de la comp
\endgroup
}
% ****************************
% Ajout des ressources mobilisées par l'étudiant
\def\ajoutSressources#1#2{
\addtocounter{cptSressource\currentSsae}{1} % le compteur de la sae dans la ressource
\xdef\currentSressource{\Roman{cptSressource\currentSsae}} % La lettre
\expandafter\xdef\csname Sressourcecode\currentSsae\currentSressource\endcsname{#1} %
\expandafter\xdef\csname Sressourcename\currentSsae\currentSressource\endcsname{#2} %
}
% ****************************
% Ajout des livrables
\def\ajoutSlivrables#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Slivrables\currentSsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% ****************************
% Ajout des mots-clés
\def\ajoutSmotscles#1{
\begingroup\let\+\relax
\expandafter\gdef\csname Smotscles\currentSsae\endcsname{#1} % mots-clés
\endgroup
}
% *********************************************
% Exemples de SAE
% *********************************************
\def\nouvelexemple#1{
\addtocounter{cptSexemple\currentSsae}{1} % Ajoute un exemple (tous semestres confondu)
\def\currentESsae{\currentSsae\Alph{cptSexemple\currentSsae}} %
\expandafter\xdef\csname ESsae\currentESsae\endcsname{\csname Sname\currentSsae\endcsname} % nom de la SAE
\begingroup\let\+\relax
\expandafter\gdef\csname ESname\currentESsae\endcsname{#1} % nom/intitule
\endgroup
\expandafter\xdef\csname EScode\currentESsae\endcsname{\csname Scode\currentSsae\endcsname} % le code de la SAE
\expandafter\xdef\csname EScodeE\currentESsae\endcsname{\currentESsae} % le code de l'exemple
\expandafter\xdef\csname ESnumero\currentESsae\endcsname{\arabic{cptSexemple\currentSsae}} % le code de l'exemple
% \expandafter\xdef\csname ESsem\currentESsae\endcsname{\csname semestrenumero\currentsemestre\endcsname} % nom du semestre
}
% La description
\def\ajoutESdescription#1{
\begingroup\let\+\relax
\expandafter\gdef\csname ESdescription\currentESsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% Les formes pédagogique
\def\ajoutESformes#1{
\begingroup\let\+\relax
\expandafter\gdef\csname ESformes\currentESsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% La problématique
\def\ajoutESproblematique#1{
\begingroup\let\+\relax
\expandafter\gdef\csname ESproblematique\currentESsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% La modalité
\def\ajoutESmodalite#1{
\begingroup\let\+\relax
\expandafter\gdef\csname ESmodalite\currentESsae\endcsname{\noexpand #1} % descriptif
\endgroup
}
% *************************************
\definecolor{colormotscle}{RGB}{120, 185, 235}
\def\motscles#1{
\if@motscles
\small \textcolor{colormotscle}{(#1)}
\fi
}