diff options
Diffstat (limited to 'macros/latex/contrib/cahierprof/cahierprof-doc.tex')
-rw-r--r-- | macros/latex/contrib/cahierprof/cahierprof-doc.tex | 424 |
1 files changed, 148 insertions, 276 deletions
diff --git a/macros/latex/contrib/cahierprof/cahierprof-doc.tex b/macros/latex/contrib/cahierprof/cahierprof-doc.tex index 6f180bdeee..338ddb0b24 100644 --- a/macros/latex/contrib/cahierprof/cahierprof-doc.tex +++ b/macros/latex/contrib/cahierprof/cahierprof-doc.tex @@ -2,7 +2,8 @@ \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{commandes} -% \usepackage{cahierprof} +\usepackage{tcolorbox} +\usepackage[framemethod=TikZ]{mdframed} \usepackage{minted} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -14,154 +15,167 @@ \title{ cahierprof.sty\\ - Pour créer un cahier du professeur en LaTeX + Un cahier de textes pour les professeurs en \LaTeX{} } \author{ Raphaël Giromini\\ \texttt{raphael.giromini -- at -- gmail.com} } -\date{Version 0.91 -- 12 juillet 2023} +\date{Version 0.92 -- 10 août 2023} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\setminted{frame=single,linenos,numbersep=6pt} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Début du document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} \maketitle -% \begin{resume} -Le package \texttt{cahierprof} permet de créer un cahier du professeur, +\section*{Résumé} +\noindent +Le package \texttt{cahierprof} permet de créer un cahier de texte du professeur, constitué de deux éléments: \begin{itemize} - \item une liste des semaines de cours, à raison d'une semaine par page; - \item un tableau pour les absences et/ou les notes des élèves. + \item un calendrier scolaire annuel (de septembre à juillet) avec une semaine + par par page; + \item un tableau des élèves répartis par classe (pour les absences et/ou les + notes). +\end{itemize} + + +\subsection*{Nouveautés de la version 0.92} +\begin{itemize} + \item Correction de la gestion des années bissextiles. + \item Correction de l'affichage de la semaine lorsque le quantième du lundi + est 29. + \item Création de la commande \mintinline{latex}|\setNombreSemaines| pour + fixer le nombre de semaine à afficher.\\ + Si cette commande n'est pas utilisée, 36 semaines sont affichées par défaut. + \item Création de la commandes \mintinline{latex}|\setRentree| pour configurer + le lundi de la rentrée scolaire. + \item Création des commandes \mintinline{latex}|\setDebut|\texttt{*}, où + \texttt{*} correspond à \texttt{Toussaint}, \texttt{Noel}, \texttt{Hiver} ou + \texttt{Printemps} et gestion automatique de la date de la fin des petites + vacances. + \item Création de la commande \mintinline{latex}|\setLundiPaques| pour + fixer la date du lundi de Pâques et gestion automatique des dates du jeudi + de l'ascension et du lundi de Pentecôte en fonction de la date du lundi de + Pâques.\\ + À noter: jusqu'à l'année 2040, la date du lundi de Pâque est gérée + automatiquement. \end{itemize} -% \end{resume} -\tableofcontents -\section{Liste des semaines de cours -- commande -\texttt{\textbackslash{}EmploiDuTemps}} +\begin{center} + \begin{minipage}{.8\linewidth} + \begin{tcolorbox}[colback=white, colframe=green!75!black] + \tableofcontents + \end{tcolorbox} + \end{minipage} +\end{center} -Le package \texttt{cahierprof} va créer un calendrier; il faut donc commencer -par entrer la date du premier lundi de l'année scolaire, sous la forme: -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -% Le premier lundi de la rentrée scolaire -\setcounter{year}{2023} -\setcounter{month}{9} -\setcounter{day}{4} + +\section{ + Calendrier des semaines de cours -- + commande \texttt{\textbackslash{}EmploiDuTemps} +} +Pour créer un calendrier scolaire hebdomadaire; il faut définir en préambule la +date du premier lundi de l'année scolaire, avec la commande +\mintinline{latex}|\setLundiRentree\{JJ\}\{MM\}\{YYYY\}|, où \texttt{JJ} est +le quantième du mois; \texttt{MM} est le mois et \texttt{YYYY} est l'année. +\begin{minted}{latex} +% Le lundi de la semaine de la rentrée est le 4 septembre 2023 +\setLundiRentree{4}{9}{2023} \end{minted} -La commande \texttt{\textbackslash{}EmploiDuTemps} va permettre de de créer le +La commande \mintinline{latex}|\EmploiDuTemps| va permettre de de créer le tableau de la semaine. Cette commande a un seul argument qui contient la -description d'une semaine type, comme dans l'exemple ci-dessous: -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} +description d'une semaine type (sous la forme d'un \texttt{tabularx}) comme dans +l'exemple ci-dessous: +\begin{minted}{latex} \EmploiDuTemps{ - % & Lundi & Mardi & Mercredi & Jeudi & Vendredi \\ - 8h & & 1G & & & \\ [1.5cm] \hline - 9h & & 2nde & 1STMG & & 1STMG \\ [1.5cm] \hline - 10h & & & 1G & & \\ [1.5cm] \hline - 11h & & & 2nde (A.P.) & & 1G \\ [1.5cm] \hline\hline - 13h30 & & 1G & 2nde & & 2nde \\ [1.5cm] \cline{1-5} - 14h30 & & & Term/1ere & & \\ [1.5cm] \hline - 15h30 & & 1 euro & 2 euro & & T euro \\ [1.5cm] \hline - 16h30 & & & & & \\ [1.5cm] \hline + % & Lundi & Mardi & Mercr. & Jeudi & Vend. \\ + 8h & & 1G & & 1G & \\ [1.5cm] \cline{1-2}\cline{4-6} + 9h & & & 1STMG & 1STMG & \\ [1.5cm] \hline + 10h & 1G & 2nde & 1G & & \\ [1.5cm] \hline + 11h & & & 2nde A.P. & & 1G \\ [1.5cm] \hline\hline + 13h30 & & 1G & & & 2nde \\ [1.5cm] \cline{1-5} + 14h30 & & & 1G (A/B) & & \\ [1.5cm] \hline + 15h30 & & & 2 euro & & \\ [1.5cm] \hline + 16h30 & & & & & \\ [1.5cm] \hline } \end{minted} -Cette commande va générer 37 semaines de cours à compter du premier lundi de +Cette commande va générer 36 semaines de cours à compter du premier lundi de l'année scolaire. -\subsection{Cours bimestriels -- commande \texttt{\textbackslash{}sem}} +Pour afficher un nombre différent de semaines, il faut passer dans le préambule +la commande \mintinline{latex}|\setNombreSemaines{N}|, où \texttt{N} est le +nombre entier de semaines. +\begin{minted}{latex} +% On ne veut que 10 semaines de cours ! +\setNombreSemaines{10} +\end{minted} + +\subsection{Séance bimestrielles -- commande \texttt{\textbackslash{}sem}} -Certains cours sont bimestriels (tous les 15 jours), suivant la parité de la -semaine. Pour cela il existe la commande \texttt{\textbackslash{}sem} qui prend -deux arguments: le cours en semaine impair, puis le cours en semaine pair. +Certaines séances sont bimestriels (tous les 15 jours), suivant la parité de la +semaine. Pour cela il existe la commande \mintinline{latex}|\sem| qui prend +deux arguments: la séance en semaine impair, puis la séance en semaine pair. -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -% L'aide personnalisé en seconde n'a lieu que les semaines paires - \sem{}{2nde (A.P.)} -% En semaine impaire, il y a un cours de terminale et en semaine paire, il y a -% un cours de première - \sem{Term}{1ere} +\begin{minted}{latex} +% L'aide personnalisée en seconde n'a lieu que les semaines impaires +\sem{2nde (A.P.)}{} +% L'aide personnalisée en première est divisée en deux groupes bimestiels. +1G A.P. (Groupe~\sem{A}{B}) \end{minted} \subsection{Gestion des vacances scolaires} Le package \texttt{cahierprof} permet de gérer les vacances scolaires -Les vacances scolaires (de Toussaint, de Noel, d'hiver et de printemps). Pour -l'instant la gestion est un peu pénible. Il faut ajouter \emph{dans le -préambule} les dates de début et de fin de chaque vacances. - -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -% Toussaint -\setcounter{dayToussaint}{21} -\setcounter{monthToussaint}{10} -\setcounter{dayToussaintFin}{6} -\setcounter{monthToussaintFin}{11} -% Noel -\setcounter{dayNoel}{23} -\setcounter{monthNoel}{12} -\setcounter{dayNoelFin}{8} -\setcounter{monthNoelFin}{1} -% Hiver -\setcounter{dayHiver}{10} -\setcounter{monthHiver}{2} -\setcounter{dayHiverFin}{26} -\setcounter{monthHiverFin}{2} -% Printemps -\setcounter{dayPrintemps}{6} -\setcounter{monthPrintemps}{4} -\setcounter{dayPrintempsFin}{22} -\setcounter{monthPrintempsFin}{4} +Les vacances scolaires (de Toussaint, de Noel, d'hiver et de printemps). Chacune +de ces petites vacances dure 15 jours. Selon les zones (et les années) il faut +définir en préambule le premier samedi de chaque vacances. + +\begin{minted}{latex} +% Début de chaque vacances scolaire pour l'année en cours (le samedi). +\setDebutToussaint{21}{10} +\setDebutNoel{23}{12} +\setDebutHiver{10}{2} +\setDebutPrintemps{6}{4} \end{minted} - \subsection{Gestion des jours fériés} -Pour les jours fériés officiels, le package \texttt{cahierprof} va ajouter la -mention $\star$Ferié$\star$ à côté de la date. - -Les jours fériés officiels de l'année sont: -\begin{itemize} - \item Le jour de l'an (1er janvier) - \item Fête du travail (le 1er mai) - \item La Victoire 1945 (le 8 mai) - \item Le jeudi de l'ascension (date variable, 40 jours après le dimanche de - Pâques, entre le 30 avril et le 3 juin).\\ - Cette date est variable et doit être entrée à la main par les commandes - \texttt{thedayAscension} et \texttt{themonthAscension}.\\ - Le pont de l'ascension (le vendredi suivant le jeudi de l'ascension) est - également considéré comme férié) - \item Le lundi de pentecôte, 50 jours après le dimanche de Pâques, entre le - 10 mai et le 13 juin).\\ - Cette date est variable et doit être entrée à la main par les commandes - \texttt{thedayPentecote} et \texttt{themonthPentecote}. - \item La fête nationale (14 juillet) - \item L'assomption (15 août) - \item La toussaint (1er novembre) - \item L'armistice 1914-1918 (11 novembre) - \item Noël (25 décembre) -\end{itemize} - -Les jours fériés à date fixe sont gérés automatiquement, pour les jours fériés à -date variable, il faut donc ajouter dans le préambule: -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -% Lundi de Paques -\setcounter{dayPaques}{1} -\setcounter{monthPaques}{4} -% Ascension -\setcounter{dayAscension}{9} -\setcounter{dayAscensionPont}{10} -\setcounter{monthAscension}{5} -% Lundi de Pentecote -\setcounter{dayPentecote}{20} -\setcounter{monthPentecote}{5} +Les jours fériés sont les jours de fêtes légales énumérés par l’article +L.~3133-1 du code du travail: 1er janvier, lundi de Pâques, 1er mai, 8 mai, +Ascension, lundi de Pentecôte, 14 juillet, Assomption (15 août), Toussaint, 11 +novembre et 25 décembre. Pour ces jours, La date sera sur fond gris et la +mention $\star$Ferié$\star$ sera ajoutée après la date. + +La date du lundi de Pâques est variable chaque l'année, de même pour le jeudi de +l'ascension et le lundi de Pentecôte. L'ascension a lieu 38 jours après le lundi +de Pâques. Par défaut, le vendredi de l'ascension est considéré comme férié. Le +lundi de Pentecôte a lieu 10 jours après le vendredi de l'ascension. + +Dans ce package, la date du lundi de Pâques est définie (jusqu'à l'année +2040) par celle du calendrier grégorien occidental (la date utilisée par +l'éducation nationale). Cependant, si l'on souhaite entrer une autre date, on +peut utiliser dans le préambule la commande +\mintinline{latex}|\setLundiPaques{JJ}{MM}|, où \texttt{JJ} est le jour +et \texttt{MM} est le mois du lundi de Pâques.\\ +Dans tous les cas, les dates de l'ascension et de la Pentecôte sont +automatiquement calculées. + +\begin{minted}{latex} +% Et si le lundi de Pâques était un 17 mars ? +\setLundiPaques{17}{3} \end{minted} -\section{Tableau d'appel et de note des classe -- commande +\section{Tableau d'appel et de notes des classes -- commande \texttt{\textbackslash{}Classe}} -La commande \texttt{\textbackslash{}Classe} permet de générer des tableaux +La commande \mintinline{latex}|\Classe| permet de générer des tableaux d'appels des classes. Cette commande prend trois arguments: \begin{itemize} \item le nom de la classe; @@ -169,182 +183,40 @@ d'appels des classes. Cette commande prend trois arguments: \item la liste des élèves séparés par des virgules. \end{itemize} Par exemple: - -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -% La classe de seconde est vue 4 fois dans la semaine: -\Classe{2nde}{4}{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - ... +\begin{minted}{latex} +% La classe de seconde a 3 séances dans la semaine +\Classe{Seconde}{4}{ + Élève Seconde 1, + Élève Seconde 2, + Élève Seconde 3, + Élève Seconde 4, + Élève Seconde 5 } -% La classe de 1e STMG est vue 2 fois dans la semaine: +% La classe de 1e STMG a 2 séances dans la semaine \Classe{1 STMG}{2}{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - ... + Élève STMG 1, + Élève STMG 2, + Élève STMG 3, + Élève STMG 4, + Élève STMG 5 } \end{minted} -La liste des élèves va créer un fichier \texttt{ListeEleves.tex} avec la liste -(numérotés) de l'ensemble des élèves, réparti par classe. La commande -\texttt{\textbackslash{}ListeElèves} permet d'insérer dans le cahier de texte -cette liste (penser à compiler deux fois). - -\section{Un exemple complet} - -\begin{minted}[frame=single,linenos,numbersep=6pt]{latex} -\documentclass[a4paper,french,10pt]{article} -\usepackage[T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage{babel} -\usepackage{multicol} -\usepackage{cahierprof} +\subsection{Liste des élèves} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% En tête du document -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +La commande \mintinline{latex}|\ListeEleves| va va créer un fichier +\texttt{ListeEleves.tex} avec la liste (numérotés) de l'ensemble des élèves +réparti par classe, puis insérer dans le cahier de texte cette liste (penser à +compiler deux fois). -%%% Les marges de mon document. -\geometry{margin=1.2cm,head=0.6cm,headsep=10pt,foot=.6cm} -% 1er lundi de l'année scolaire (pour le cahier de texte) -\setcounter{year}{2023} -\setcounter{month}{9} -\setcounter{day}{4} - -% Vacances Scolaire pour l'année en cours. -% Toussaint -\setcounter{dayToussaint}{21} -\setcounter{monthToussaint}{10} -\setcounter{dayToussaintFin}{6} -\setcounter{monthToussaintFin}{11} -% Noel -\setcounter{dayNoel}{23} -\setcounter{monthNoel}{12} -\setcounter{dayNoelFin}{8} -\setcounter{monthNoelFin}{1} -% Hiver -\setcounter{dayHiver}{10} -\setcounter{monthHiver}{2} -\setcounter{dayHiverFin}{26} -\setcounter{monthHiverFin}{2} -% Printemps -\setcounter{dayPrintemps}{6} -\setcounter{monthPrintemps}{4} -\setcounter{dayPrintempsFin}{22} -\setcounter{monthPrintempsFin}{4} -% Lundi de Paques -\setcounter{dayPaques}{1} -\setcounter{monthPaques}{4} -% Ascension -\setcounter{dayAscension}{9} -\setcounter{dayAscensionPont}{10} -\setcounter{monthAscension}{5} -% Lundi de Pentecote -\setcounter{dayPentecote}{20} -\setcounter{monthPentecote}{5} - -\title{\scshape Cahier du Professeur} -\author{Un-e excellent-e professeur-e} -\date{2023-2024} +% \begin{minted}{latex} +% % Liste des élèves, sauvée dans le fichier ListeEleves.tex, +% % créée à partir des \Classe{}{}{}. Penser à compiler deux fois. +% \ListeEleves +% \end{minted} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Début du document -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{document} - -%%Page de Garde -\maketitle -\thispagestyle{empty} - -\begin{center} - {\Large - \textsc{Cahier de texte} - } -\end{center} - -\newpage - -% Emploi du temps au format tableau (tabularx). - -\begin{landscape} - \EmploiDuTemps - { -% & Lundi & Mardi & Mercredi & Jeudi & Vendredi \\ - 8h & & 1G & & & \\ [1.5cm] \hline - 9h & & 2nde & 1STMG & & 1STMG \\ [1.5cm] \hline - 10h & & & 1G & & \\ [1.5cm] \hline - 11h & & & \sem{2nde (A.P.)}{} & & 1G \\ [1.5cm] \hline\hline - 13h30 & & 1G & 2nde & & 2nde \\ [1.5cm] \cline{1-5} - 14h30 & & & \sem{Term}{1ere} & & \\ [1.5cm] \hline - 15h30 & & 1 euro & 2 euro & & T euro \\ [1.5cm] \hline - 16h30 & & & & & \\ [1.5cm] \hline - } -\end{landscape} - -\begin{center} - {\Large - \textsc{Appel des classes} - } -\end{center} - -% Liste des élèves, sauvée dans le fichier ListeEleves.tex, créée à partir des -% \Classe{}{}{}. -% Penser à compiler deux fois. - -\ListeEleves - -\newpage - -\tiny - -% Tableau de classe -% \Classe{Nom de la classe}{Nombre de séances dans la semaine}{Liste des élèves -% séparés par une virgule} - -\Classe{Seconde}{3} -{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - Élève 5 -} - -\newpage - -\Classe{1 G}{4} -{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - Élève 5 -} +\section{Un exemple complet} -\newpage +\inputminted{latex}{cahierprof-exemple.tex} -\Classe{1 STMG}{2} -{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - Élève 5 -} -\newpage - -\Classe{2 euro}{1} -{ - Élève 1, - Élève 2, - Élève 3, - Élève 4, - Élève 5 -} -\end{document} -\end{minted} \end{document} |