summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-05-22 03:05:17 +0000
committerNorbert Preining <norbert@preining.info>2023-05-22 03:05:17 +0000
commitaaab1b0cf810d8f8df45d972eb51da24a0114047 (patch)
treece163b5286c1960439c0f182f803164e1e028eeb /macros/latex/contrib
parentacbf029eb7f81c05b715461ab1ce2ab7e4f6ce09 (diff)
CTAN sync 202305220305
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdfbin1025814 -> 1032138 bytes
-rw-r--r--macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex270
-rw-r--r--macros/latex/contrib/proflycee/tex/ProfLycee.sty14
-rw-r--r--macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex6
-rw-r--r--macros/latex/contrib/proflycee/tex/proflycee-tools-geom.tex233
5 files changed, 361 insertions, 162 deletions
diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
index a03368df85..f2128d1c2c 100644
--- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
+++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
index a7c22f749d..c3162621d8 100644
--- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
+++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
@@ -5,8 +5,8 @@
% arara: lualatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass[a4paper,french,11pt]{article}
-\def\PLversion{2.6.4}
-\def\PLdate{19 mai 2023}
+\def\PLversion{2.6.5}
+\def\PLdate{20 mai 2023}
\usepackage{amsfonts}
\usepackage{ProfLycee}
\useproflyclib{piton,minted,pythontex}
@@ -330,7 +330,6 @@
{\deblst} calculer les lignes trigonométriques d'angles \og classiques \fg{} \\
{\deblst} résoudre une équation diophantienne \og classique \fg{} \\
{\deblst} travailler avec un peu de géométrie analytique \\
-
{\deblst} \ldots}
~
@@ -398,6 +397,7 @@ L'utilisateur est libre de charger ses autres {packages} utiles et habituels, ai
Le {package} \ctex{ProfLycee} charge et utilise les {packages} :
\begin{itemize}
+ \item \ctex{mathtools}, \ctex{amssymb} ;
\item \ctex{xcolor} avec l' option \textsf{[table,svgnames]} ;
\item \ctex{tikz}, \ctex{pgf}, \ctex{pgffor}, \ctex{nicefrac}, \ctex{nicematrix} ;
\item \ctex{tcolorbox} avec l'option \textsf{[most]} ;
@@ -431,7 +431,9 @@ J'ai utilisé les {packages} de C. Tellechea, je vous conseille d'aller jeter un
...
\end{PresCodeTexPL}
-\subsection{Librairies, option du package}\label{librairies}
+\pagebreak
+
+\subsection{Librairies}\label{librairies}
\begin{warningblock}
\cmaj{2.5.0} Le package fonctionne désormais avec un système de \clib{librairies}, qui utilisent et chargent des packages spécifiques, avec des compilations particulières, donc l'utilisateur utilisera un système de chargement similaire à celui de \textsf{tcolorbox} ou \textsf{tikz}, dans le préambule, et une fois le package appelé.
@@ -484,6 +486,26 @@ L'option \Cle{build} charge certains packages (librairies \clib{minted} et \clib
\vspace*{-\baselineskip}\leavevmode
\end{noteblock}
+\subsection{Gestion des fontes}\label{amssymb}
+
+\begin{warningblock}
+\cmaj{2.6.5} Sous \hologo{XeLaTeX} \& \hologo{LuaLaTeX}, \ctex{ProfLycee} utilisant le package \ctex{mathtools}, il est nécessaire de placer l'appel à \ctex{ProfLycee} {\em avant} l'appel des fontes.
+
+\smallskip
+
+Sous \hologo{XeLaTeX} \& \hologo{LuaLaTeX}, certaines fontes (par exemple \textsf{fourier-otf}) redéfinissent les fontes générées par le package \ctex{amssymb} et peuvent provoquer un \og warning \fg{} au mieux, une erreur de compilation au pire.
+
+\smallskip
+
+Pour cela, on pourra appeler \ctex{ProfLycee} avec l'option \Cle{nonamssymb} (idée reprise de \ctex{ProfCollege}).
+\end{warningblock}
+
+\begin{PresCodeTexPL}{listing only}
+\documentclass{article}
+\usepackage[noamssymb]{ProfLycee}
+\usepackage{fourier-otf}
+\end{PresCodeTexPL}
+
\pagebreak
\section{Compléments}
@@ -3832,6 +3854,16 @@ Les valeurs \Cle{mainlevee=5mm et 0.6pt} donnent des résultats -- à mon sens -
\part{Outils pour la géométrie analytique}
+\section{Conseils d'utilisation}
+
+\begin{warningblock}
+\cmaj{2.6.5} Il est conseillé d'utiliser \hologo{LuaLaTeX} pour les commandes (vectorielles) de géométrie analytique, même s'il est toutefois possible d'utiliser \hologo{pdfLaTeX}.
+
+\smallskip
+
+Il est possible que les simplifications demandées (coefficients entiers, ou premiers entre eux) ne donnent pas entière satisfaction, donc prudence sur l'utilisation de celles-ci (ce sont des tests et retours de \textit{bugs} qui montreront les limites des commandes).
+\end{warningblock}
+
\section{Affichage de coordonnées}\label{affcoord}
\subsection{Idée}
@@ -3861,7 +3893,7 @@ Dans cette partie liée à la géométrie analytique, j'ai choisi de saisir les
\begin{itemize}
\item avec le séparateur \ctex{,} pour les points ;
- \item avec le séparateur \ctex{;} pour les vecteurs.
+ \item avec le séparateur \ctex{;}.
\end{itemize}
De ce fait, le code \textit{sait} s'il est face à un point ou à un vecteur, et adapte sa méthode de calcul en conséquence !
@@ -3881,7 +3913,11 @@ Concernant les arguments des commandes :
\item \Cle{dec} : pour la forme décimale (brute) ;
\item \Cle{dec=k} : pour la forme décimale à $10^{-k}$.
\end{itemize}
- Il est possible de spécifier des formatages différents en utilisant une \textit{liste} sous la forme \Cle{f1,f2} ou \Cle{f1,f2,f3} ;
+ Il est possible de spécifier des formatages différents en utilisant une \textit{liste} sous la forme :
+ \begin{itemize}
+ \item \Cle{f1,f2} ou \Cle{f1,f2,f3} pour les points ;
+ \item \Cle{f1;f2} ou \Cle{f1;f2;f3} ;
+ \end{itemize}
\item l'argument \textit{optionnel} et entre \ctex{<...>} (uniquement pour les vecteurs !) permet de spécifier des options de type \textit{nicematrix} ;
\item l'argument obligatoire, et entre \ctex{\{...\}} est quant à lui la liste des coordonnées, en ligne et au format \textit{naturel xint}.
\end{itemize}
@@ -4110,6 +4146,66 @@ Une équation cartésienne de la droite $\mathcal{D}$ passant par les points $\A
\newpage
+\section{Norme d'un vecteur, distance entre deux points}\label{normevect}
+
+\subsection{Idée et commande}
+
+\begin{tipblock}
+\cmaj{2.6.5} L'idée est de proposer une commande pour déterminer la distance entre deux points, ou la norme d'un vecteur :
+
+\begin{itemize}
+ \item en donnant le vecteur ;
+ \item en donnant deux points.
+\end{itemize}
+\vspace*{-\baselineskip}\leavevmode
+\end{tipblock}
+
+\begin{PresCodeTexPL}{listing only}
+%Avec le vecteur
+\TrouveNorme(vecteur)
+%Avec deux points
+\TrouveNorme(point 1)(point 2)
+\end{PresCodeTexPL}
+
+\begin{noteblock}
+Le résultat étant souvent écrit à l'aide d'une racine carrée, le code se charge de simplifier le résultat sous la forme $\frac{a\sqrt{n}}{b}$.
+
+Dans le cas où les coordonnées ne seraient pas rationnelles, le résultat risque de ne pas être conforme à celui attendu.
+\end{noteblock}
+
+\subsection{Clés et arguments}
+
+\begin{cautionblock}
+Concernant les arguments de cette commande :
+
+\begin{itemize}
+ \item les séparateurs \ctex{,} ou \ctex{;} permettent de spécifier point ou vecteur pour les arguments 1 et 2.
+\end{itemize}
+\vspace*{-\baselineskip}\leavevmode
+\end{cautionblock}
+
+\begin{PresCodePL}{}
+La distance $AB$ avec $A\AffPoint(-5,2)$ et $B\AffPoint(4,-3)$ vaut
+$d =\displaystyle\TrouveNorme(-5,2)(4,-3)$
+\end{PresCodePL}
+
+\begin{PresCodePL}{}
+La distance $AB$ avec $A\AffPoint(2,1,2)$ et $B\AffPoint(-4,1,1)$ vaut
+$d =\displaystyle\TrouveNorme(2,1,2)(-4,1,1)$
+\end{PresCodePL}
+
+\begin{PresCodePL}{}
+La norme de $\AffVecteur(2;4)$ vaut
+$d =\displaystyle\TrouveNorme(2;4)$
+\end{PresCodePL}
+
+\begin{PresCodePL}{}
+La norme de $\AffVecteur[d;d;n](2;4;0.5)$ vaut
+$d =\displaystyle\TrouveNorme(2;4;0.5)$
+\end{PresCodePL}
+
+\newpage
+
\section{Distance d'un point à un plan}\label{distptplan}
\subsection{Idée et commande}
@@ -7049,6 +7145,10 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
\part{Historique}
+{\small \bverb|v 2.6.5|~:~~~~Ajout d'une option \Cle{noamssymb} pour éviter de charger \textsf{amssymb} (page \pageref{amssymb})
+
+{\small \bverb| |~:~~~~Ajout d'une commande pour la distance entre deux points (page \pageref{normevect})}
+
{\small \bverb|v 2.6.4|~:~~~~Résolution d'une équation diophantienne $ax+by=c$ (page \pageref{eqdioph})
{\small \bverb| |~:~~~~Correction de bugs mineurs
@@ -7057,15 +7157,15 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
{\small \bverb|v 2.6.3|~:~~~~Ajout d'une commande pour déterminer une équation réduite (page \pageref{eqreduite})
-{\small \bverb|v 2.6.2|~:~~~~Ajout d'une clé [AffTraitsEq] pour les équations trigo (page \pageref{cercletrigo})
+{\small \bverb|v 2.6.2|~:~~~~Ajout d'une clé \Cle{AffTraitsEq} pour les équations trigo (page \pageref{cercletrigo})
{\small \bverb|v 2.6.1|~:~~~~Ajout de commandes pour du calcul intégral (pages \pageref{calcintegr} et \pageref{integrtikz})
-{\small \bverb|v 2.6.0|~:~~~~Ajout d'une clé [Brut] pour les mesures principales + correction d'un bug} + Refonte de la doc
+{\small \bverb|v 2.6.0|~:~~~~Ajout d'une clé \Cle{Brut} pour les mesures principales + correction d'un bug} + Refonte de la doc
{\small \bverb| |~:~~~~Commande calcul ligne trigo (pages \pageref{mesureprincipale} et \pageref{lignestrigo})
-{\small \bverb|v 2.5.9|~:~~~~Ajout clé [CouleurNombres] pour \textsf{Piton} (v1.5 mini) (page \pageref{pythonpiton})
+{\small \bverb|v 2.5.9|~:~~~~Ajout clé \Cle{CouleurNombres} pour \textsf{Piton} (v1.5 mini) (page \pageref{pythonpiton})
{\small \bverb|v 2.5.8|~:~~~~Ajout d'un style \textsf{Alt} pour les codes (pages \pageref{pythonsimple} et \pageref{pytminted})
@@ -7075,7 +7175,7 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
{\small \bverb|v 2.5.6|~:~~~~Ajout d'une clé \Cle{Trigo} pour l'axe $(Ox)$ (page \pageref{reperagetikz})
-{\small \bverb|v 2.5.5|~:~~~~Externalisation de la fenêtre XCas (dans la package \textsf{FentreCas})
+{\small \bverb|v 2.5.5|~:~~~~Externalisation de la fenêtre XCas (dans le package \textsf{FentreCas})
{\small \bverb|v 2.5.4|~:~~~~Modification des calculs (via \textsf{xint}) en combinatoire (page \pageref{combinatoire})
@@ -7093,7 +7193,7 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
{\small \bverb|v 2.1.8|~:~~~~Suppression des commandes de PixelArt, désormais dans le package \textsf{PixelArtTikz}
-{\small \bverb|v 2.1.7|~:~~~~Ajout d'une clé \textsf{Math} pour les sommets des figures de l'espace (pages \pageref{pave} et \pageref{tetra})
+{\small \bverb|v 2.1.7|~:~~~~Ajout d'une clé \Cle{Math} pour les sommets des figures de l'espace (pages \pageref{pave} et \pageref{tetra})
{\small \bverb|v 2.1.6|~:~~~~Correction d'un bug lié au chargement de \textsf{hvlogos}, remplacé par \textsf{hologo}
@@ -7134,79 +7234,79 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
{\small \bverb|v 2.0.0|~:~~~~Refonte du code source avec modification des commandes, et de la documentation}
\hrulefill
-
-{\small \bverb|v 1.3.7|~:~~~~Commandes pour du code python via piton, en compilation \hologo{LuaLaTeX} (page \pageref{pythonpiton})
-
-{\small \bverb| |~:~~~~Corrections et modifications mineures de la documentation
-
-{\small \bverb|v 1.3.6|~:~~~~Présentation de l'algorithme d'Euclide pour le PGCD (page \pageref{prespgcd})
-
-{\small \bverb| |~:~~~~Affichage d'un trinôme par coefficients, aléatoires ou non (page \pageref{trinome})
-
-{\small \bverb|v 1.3.5|~:~~~~Correction d'un bug avec la loi géométrique (page \pageref{calcprobas})
-
-{\small \bverb|v 1.3.4|~:~~~~Ajout de petits schémas, en \TikZ{}, de lois normales et exponentielles (page \pageref{schemasprobas})
-
-{\small \bverb| |~:~~~~Calculs de probas avec les lois géométriques et hypergéométriques (page \pageref{calcprobas})
-
-{\small \bverb|v 1.3.3|~:~~~~Ajout d'un environnement pour des arbres de probas classiques, en \TikZ{} (page \pageref{arbresprobas})
-
-{\small \bverb|v 1.3.2|~:~~~~Correction d'un bug sur les conversions bintohex avec lualatex (page \pageref{conversions})
-
-{\small \bverb|v 1.3.1|~:~~~~Ajout d'une option pour ne pas afficher les bordures des corrections de pixelart
-
-{\small \bverb|v 1.3.0|~:~~~~Commande pour présenter une conversion depuis la base 10 (page \pageref{convrestes})
-
-{\small \bverb|v 1.2.9|~:~~~~Correction des commandes avec \textsf{simplekv}
-
-{\small \bverb|v 1.2.7|~:~~~~Ajout de commandes pour des calculs de probabilités (page \pageref{calcprobas})
-
-{\small \bverb|v 1.2.6|~:~~~~Ajout d'un environnement pour des SudoMaths (page \pageref{sudomaths})
-
-{\small \bverb|v 1.2.5|~:~~~~Ajout de commandes pour des boîtes à moustaches (page \pageref{boiteamoustaches})
-
-{\small \bverb|v 1.2.4|~:~~~~Correction de quelques bugs mineurs, et mise à jour de la doc
-
-{\small \bverb|v 1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière (page \pageref{pythonsimple})
-
-{\small \bverb|v 1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables (page \pageref{statsdeuxvars})
-
-{\small \bverb|v 1.2.1|~:~~~~Amélioration de la gestion du csv pour Pixelart
-
-{\small \bverb|v 1.1.9|~:~~~~Pixelart en \TikZ{}
-
-{\small \bverb|v 1.1.8|~:~~~~Style "Mainlevée" basique pour \TikZ (page \pageref{mainlevee})
-
-{\small \bverb|v 1.1.7|~:~~~~Conversions bin/hex/dec (basées sur \textsf{xintbinhex}) avec quelques détails (page \pageref{conversions})
-
-{\small \bverb|v 1.1.6|~:~~~~Commande pour déterminer les paramètres d'une régression linéaire par moindres carrés (page \pageref{reglin})
-
-{\small \bverb|v 1.1.5|~:~~~~Ajout de deux commandes pour, en \TikZ, créer des petits schémas \og de signe \fg{} (page \pageref{aidesigne})
-
-{\small \bverb|v 1.1.4|~:~~~~Ajout d'une commande pour, en \TikZ, créer facilement un cercle trigo avec \textit{options} (page \pageref{cercletrigo})
-
-{\small \bverb|v 1.1.3|~:~~~~Ajout des commandes pour fractions, ensembles et récurrence (pages \pageref{convfrac}, \pageref{ensembles} et \pageref{recurr})
-
-{\small \bverb|v 1.1.1|~:~~~~Modification mineure de l'environnement calcul formel, avec prise de charge de la taille du texte
-
-{\small \bverb|v 1.1.0|~:~~~~Ajout d'une commande pour créer des tétraèdres (avec nœuds) en \TikZ{} (page \pageref{tetra})
-
-{\small \bverb|v 1.0.9|~:~~~~Ajout d'une commande pour créer des pavés droits (avec nœuds) en \TikZ{} (page \pageref{pave})
-
-{\small \bverb|v 1.0.8|~:~~~~Ajout d'une commande pour créer des cartouches de lien "comme capytale" (page \pageref{capytale})
-
-{\small \bverb|v 1.0.7|~:~~~~Ajout d'une option \textsf{build} pour placer certains fichiers auxiliaires dans un répertoire externe
-
-{\small \bverb|v 1.0.6|~:~~~~Ajout d'une option \textsf{nominted} pour ne pas charger (pas besoin de compiler avec \textsf{shell-escape})
-
-{\small \bverb|v 1.0.5|~:~~~~Ajout d'un environnement pour Python (\textsf{minted}) (page \pageref{pytminted})
-
-{\small \bverb|v 1.0.4|~:~~~~Ajout des environnements pour Terminal (win, osx, unix) (page \pageref{terms})
-
-{\small \bverb|v 1.0.3|~:~~~~Ajout des environnements pour PseudoCode (page \pageref{pseudocode})
-
-{\small \bverb|v 1.0.2|~:~~~~Ajout des environnements pour Python (\textsf{pythontex}) (page \pageref{pythontex})
-
-{\small \bverb|v 1.0 |~:~~~~Version initiale}
+%
+%{\small \bverb|v 1.3.7|~:~~~~Commandes pour du code python via piton, en compilation \hologo{LuaLaTeX} (page \pageref{pythonpiton})
+%
+%{\small \bverb| |~:~~~~Corrections et modifications mineures de la documentation
+%
+%{\small \bverb|v 1.3.6|~:~~~~Présentation de l'algorithme d'Euclide pour le PGCD (page \pageref{prespgcd})
+%
+%{\small \bverb| |~:~~~~Affichage d'un trinôme par coefficients, aléatoires ou non (page \pageref{trinome})
+%
+%{\small \bverb|v 1.3.5|~:~~~~Correction d'un bug avec la loi géométrique (page \pageref{calcprobas})
+%
+%{\small \bverb|v 1.3.4|~:~~~~Ajout de petits schémas, en \TikZ{}, de lois normales et exponentielles (page \pageref{schemasprobas})
+%
+%{\small \bverb| |~:~~~~Calculs de probas avec les lois géométriques et hypergéométriques (page \pageref{calcprobas})
+%
+%{\small \bverb|v 1.3.3|~:~~~~Ajout d'un environnement pour des arbres de probas classiques, en \TikZ{} (page \pageref{arbresprobas})
+%
+%{\small \bverb|v 1.3.2|~:~~~~Correction d'un bug sur les conversions bintohex avec lualatex (page \pageref{conversions})
+%
+%{\small \bverb|v 1.3.1|~:~~~~Ajout d'une option pour ne pas afficher les bordures des corrections de pixelart
+%
+%{\small \bverb|v 1.3.0|~:~~~~Commande pour présenter une conversion depuis la base 10 (page \pageref{convrestes})
+%
+%{\small \bverb|v 1.2.9|~:~~~~Correction des commandes avec \textsf{simplekv}
+%
+%{\small \bverb|v 1.2.7|~:~~~~Ajout de commandes pour des calculs de probabilités (page \pageref{calcprobas})
+%
+%{\small \bverb|v 1.2.6|~:~~~~Ajout d'un environnement pour des SudoMaths (page \pageref{sudomaths})
+%
+%{\small \bverb|v 1.2.5|~:~~~~Ajout de commandes pour des boîtes à moustaches (page \pageref{boiteamoustaches})
+%
+%{\small \bverb|v 1.2.4|~:~~~~Correction de quelques bugs mineurs, et mise à jour de la doc
+%
+%{\small \bverb|v 1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière (page \pageref{pythonsimple})
+%
+%{\small \bverb|v 1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables (page \pageref{statsdeuxvars})
+%
+%{\small \bverb|v 1.2.1|~:~~~~Amélioration de la gestion du csv pour Pixelart
+%
+%{\small \bverb|v 1.1.9|~:~~~~Pixelart en \TikZ{}
+%
+%{\small \bverb|v 1.1.8|~:~~~~Style "Mainlevée" basique pour \TikZ (page \pageref{mainlevee})
+%
+%{\small \bverb|v 1.1.7|~:~~~~Conversions bin/hex/dec (basées sur \textsf{xintbinhex}) avec quelques détails (page \pageref{conversions})
+%
+%{\small \bverb|v 1.1.6|~:~~~~Commande pour déterminer les paramètres d'une régression linéaire par moindres carrés (page \pageref{reglin})
+%
+%{\small \bverb|v 1.1.5|~:~~~~Ajout de deux commandes pour, en \TikZ, créer des petits schémas \og de signe \fg{} (page \pageref{aidesigne})
+%
+%{\small \bverb|v 1.1.4|~:~~~~Ajout d'une commande pour, en \TikZ, créer facilement un cercle trigo avec \textit{options} (page \pageref{cercletrigo})
+%
+%{\small \bverb|v 1.1.3|~:~~~~Ajout des commandes pour fractions, ensembles et récurrence (pages \pageref{convfrac}, \pageref{ensembles} et \pageref{recurr})
+%
+%{\small \bverb|v 1.1.1|~:~~~~Modification mineure de l'environnement calcul formel, avec prise de charge de la taille du texte
+%
+%{\small \bverb|v 1.1.0|~:~~~~Ajout d'une commande pour créer des tétraèdres (avec nœuds) en \TikZ{} (page \pageref{tetra})
+%
+%{\small \bverb|v 1.0.9|~:~~~~Ajout d'une commande pour créer des pavés droits (avec nœuds) en \TikZ{} (page \pageref{pave})
+%
+%{\small \bverb|v 1.0.8|~:~~~~Ajout d'une commande pour créer des cartouches de lien "comme capytale" (page \pageref{capytale})
+%
+%{\small \bverb|v 1.0.7|~:~~~~Ajout d'une option \textsf{build} pour placer certains fichiers auxiliaires dans un répertoire externe
+%
+%{\small \bverb|v 1.0.6|~:~~~~Ajout d'une option \textsf{nominted} pour ne pas charger (pas besoin de compiler avec \textsf{shell-escape})
+%
+%{\small \bverb|v 1.0.5|~:~~~~Ajout d'un environnement pour Python (\textsf{minted}) (page \pageref{pytminted})
+%
+%{\small \bverb|v 1.0.4|~:~~~~Ajout des environnements pour Terminal (win, osx, unix) (page \pageref{terms})
+%
+%{\small \bverb|v 1.0.3|~:~~~~Ajout des environnements pour PseudoCode (page \pageref{pseudocode})
+%
+%{\small \bverb|v 1.0.2|~:~~~~Ajout des environnements pour Python (\textsf{pythontex}) (page \pageref{pythontex})
+%
+%{\small \bverb|v 1.0 |~:~~~~Version initiale}
\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee.sty b/macros/latex/contrib/proflycee/tex/ProfLycee.sty
index 89b82dd10c..d07d2975a2 100644
--- a/macros/latex/contrib/proflycee/tex/ProfLycee.sty
+++ b/macros/latex/contrib/proflycee/tex/ProfLycee.sty
@@ -3,7 +3,8 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2023/05/19 2.6.4 Aide pour l'utilisation de LaTeX en lycee]
+\ProvidesPackage{ProfLycee}[2023/05/20 2.6.5 Aide pour l'utilisation de LaTeX en lycee]
+% 2.6.5 Ajout d'une option[noamssymb] pour éviter les clashs avec fourier (merci PfC) + Corections de bugs + Bug avec ; et pdflatex (utlisation de | à la place !)
% 2.6.4 Correction d'un dysfonctionnement avec les racines (oubli du \num) + Equation diophantienne ax+by=c + Eq cartésiennes (plan & droite) + Corrections de bugs mineurs
% 2.6.3 Ajout d'une commande pour rédiger l'obtention de l'équation affine d'une droite passant par deux points
% 2.6.2 Correction de commandes pour la pseudo3d + nouvelle clé pour la trigo
@@ -46,14 +47,21 @@
% 2.0.1 Chargement de piton uniquement si lua...
% 2.0.0 Refonte des commandes, des options, et de la documentation !!!
+%------Mathtools
+\RequirePackage{mathtools}
+
%------Option(s)
\newif\if@build \@buildfalse
-\DeclareOption{build}{\@buildtrue}
+\newif\if@loadamssymb \@loadamssymbtrue
+\DeclareOption{build}{\@buildtrue}%
+\DeclareOption{nonamssymb}{\@loadamssymbfalse}%
\DeclareOption*{}
\ProcessOptions\relax
%------Packages utiles
-\RequirePackage{mathtools}
+\if@loadamssymb
+ \RequirePackage{amssymb}
+\fi
\RequirePackage[table,svgnames]{xcolor}%Gestion des couleurs
\RequirePackage{tikz}
\RequirePackage{tkz-tab}
diff --git a/macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex b/macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex
index 42e9264e5d..5980ef9000 100644
--- a/macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex
+++ b/macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex
@@ -322,7 +322,7 @@
}
%%===Équations diophantiennes
-\RequirePackage{cancel}
+\RequirePackage[thicklines]{cancel}%comme PfC
\NewDocumentCommand\AffCoeffDioph{ m }{%
\xintifboolexpr{#1 < 0}%
{\left( \num{#1} \right)}%
@@ -418,8 +418,8 @@
& \num{\AAA} & \left( \XXX \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpU*\CCC}}} \right)& \AffCoeffDioph{\BBB} & \left( \YYY \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpV*\CCC}}} \right) & 0\\
\end{array}}
\]%
- \xdef\TmpPartieA{\XXX \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpU*\CCC}}}}%
- \xdef\TmpPartieB{\YYY \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpV*\CCC}}}}%
+ \def\TmpPartieA{\XXX \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpU*\CCC}}}}%
+ \def\TmpPartieB{\YYY \mathcolor{\CouleurSolEDioph}{\AffCoeffDiophSign{\xinteval{-\TmpV*\CCC}}}}%
%
On en déduit que $\num{\AAA} \times \underbrace{\left( \TmpPartieA \right)}_{\text{entier}} = \num{\xinteval{-\BBB}} \times \left( \TmpPartieB \right)$, et donc que $\num{\AAA} \mid \num{\xinteval{-\BBB}} \times \left( \TmpPartieB \right)$.\par\smallskip
Or \num{\xinteval{abs(\AAA)}} et \num{\xinteval{abs(\BBB)}} sont premiers entre eux, donc d'après le théorème de Gauss, on a $\num{\AAA} \mid \TmpPartieB$.\par
diff --git a/macros/latex/contrib/proflycee/tex/proflycee-tools-geom.tex b/macros/latex/contrib/proflycee/tex/proflycee-tools-geom.tex
index 1758c015fd..b274d1a6ec 100644
--- a/macros/latex/contrib/proflycee/tex/proflycee-tools-geom.tex
+++ b/macros/latex/contrib/proflycee/tex/proflycee-tools-geom.tex
@@ -137,6 +137,8 @@
%%Equations Cartésiennes + Affichages coordonnées
\RequirePackage{nicematrix}
+%\RequirePackage{ifpdf}
+
\NewDocumentCommand\AffCoeffSgn{ s O{} m m D<>{} }{%
\IfStrEq{#5}{}%si argument vide, on convertit en fraction
{%
@@ -159,7 +161,7 @@
}%
%sinon on met en brut
{%
- #3#4
+ #3#4%
}%
}
@@ -173,19 +175,19 @@
{%
\IfBooleanTF{#1}{}{+}%
\xintifboolexpr{\xinteval{#3} == 1}%
- {#3}%
+ {+1}%
{+\ConversionFraction[#2]{#3}}%
}%
{%
\xintifboolexpr{\xinteval{#3} == -1}%
- {#3\relax}%
+ {-1}%
{\ConversionFraction[#2]{#3}}%
} %
}%
}%
%sinon on met en brut
{%
- #3
+ #3%
}%
}
@@ -200,7 +202,14 @@
Facteur=1
}
-\NewDocumentCommand\TrouveEqCartPlan{ O{} r() r() d() }{%test commande générique avec VP ou PPP ou PVV
+\NewDocumentCommand\TrouveEqCartPlan{ }{%
+ \begingroup
+ \catcode`\;12
+ \TrouveEqCartPlanAux
+}
+
+\NewDocumentCommand\TrouveEqCartPlanAux{ O{} r() r() d() }{%test commande générique avec VP ou PPP ou PVV
+ \endgroup
\restoreKV[eqcartplan]% revenir au valeurs par défaut
\setKV[eqcartplan]{#1}% lit les arguments optionnels
\IfNoValueTF{#4}%c'est Vect+Point
@@ -327,11 +336,45 @@
Facteur=1
}
-\NewDocumentCommand\TrouveEqCartDroite{ O{} r() r() }{%vect/point ou point/point
+\NewDocumentCommand\TrouveEqCartDroite{ }{%
+ \begingroup
+ \catcode`\;12
+ \TrouveEqCartDroiteAux
+}
+
+\NewDocumentCommand\TrouveEqCartDroiteAux{ O{} r() r() }{%vect/point ou point/point
+ \endgroup
\restoreKV[eqcartdroite]% revenir au valeurs par défaut
\setKV[eqcartdroite]{#1}% lit les arguments optionnels
%on teste si c'est point/point
- \IfSubStr{#2}{;}%c'est vecteur+point, sinon c'est point+point
+ \IfSubStr{#2}{,}%c'est point+point, sinon c'est vecteur+point
+ {%
+ \setsepchar{,}\readlist*\CoordPtA{#2}%
+ \setsepchar{,}\readlist*\CoordPtB{#3}%
+ \itemtomacro\CoordPtA[1]\xpta%
+ \itemtomacro\CoordPtA[2]\ypta%
+ \itemtomacro\CoordPtB[1]\xptb%
+ \itemtomacro\CoordPtB[2]\yptb%
+ \xdef\vecnx{((\xptb)-(\xpta))}%
+ \xdef\vecny{((\yptb)-(\ypta))}%
+ %calculs
+ \xdef\coeffd{((\xpta)*(\vecny)-(\ypta)*(\vecnx))}%
+ \xdef\PPCMDenom{\xinteval{lcm([\xintDenominator{\xintIrr{\xinteval{\vecnx}}},\xintDenominator{\xintIrr{\xinteval{\vecny}}},\xintDenominator{\xintIrr{\xinteval{\coeffd}}}])}}%
+ \xdef\PGCDsiEntiers{1}%
+ \xintifboolexpr{\xinteval{isint(\vecnx)}*\xinteval{isint(\vecny)}*\xinteval{isint(\coeffd)} == 1}%tous les coeffs sont entiers
+ {%
+ \xdef\PGCDsiEntiers{\xinteval{gcd([\xinteval{\vecnx},\xinteval{\vecny},\xinteval{\coeffd}])}}%
+ }%
+ {}%
+ %affichages
+ \ifboolKV[eqcartdroite]{SimplifCoeffs}%
+ {%
+ \AffCoeffSgn*[\eqcartdteformat]{-\vecny*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{x} \AffCoeffSgn[\eqcartdteformat]{\vecnx*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers} = 0%
+ }%
+ {%
+ \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecnx)}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{(\coeffd)} = 0%
+ }%
+ }
{%
\setsepchar{;}\readlist*\CoordVec{#2}%
\setsepchar{,}\readlist*\CoordPt{#3}%
@@ -359,56 +402,36 @@
{%
\ifboolKV[eqcartdroite]{VectDirecteur}%
{%
- \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecnx)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers} = 0%
+ \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecnx)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{(\coeffd)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)} = 0%
}%
{%
- \AffCoeffSgn*[\eqcartdteformat]{(\vecnx)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecny)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers} = 0%
+ \AffCoeffSgn*[\eqcartdteformat]{(\vecnx)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecny)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{(\coeffd)*(\eqcartdtefact)*(\PPCMDenom)/(\PGCDsiEntiers)} = 0%
}%
}%
{%
\ifboolKV[eqcartdroite]{VectDirecteur}%
{%
- \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)}{x} \AffCoeffSgn[\eqcartdteformat]{\vecnx}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd} = 0%
+ \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)}{x} \AffCoeffSgn[\eqcartdteformat]{\vecnx}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{(\coeffd)} = 0%
}%
{%
- \AffCoeffSgn*[\eqcartdteformat]{\vecnx}{x} \AffCoeffSgn[\eqcartdteformat]{\vecny}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd} = 0%
+ \AffCoeffSgn*[\eqcartdteformat]{\vecnx}{x} \AffCoeffSgn[\eqcartdteformat]{\vecny}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{(\coeffd)} = 0%
}%
}%
- }%
- {%
- \setsepchar{,}\readlist*\CoordPtA{#2}%
- \setsepchar{,}\readlist*\CoordPtB{#3}%
- \itemtomacro\CoordPtA[1]\xpta%
- \itemtomacro\CoordPtA[2]\ypta%
- \itemtomacro\CoordPtB[1]\xptb%
- \itemtomacro\CoordPtB[2]\yptb%
- \xdef\vecnx{((\xptb)-(\xpta))}%
- \xdef\vecny{((\yptb)-(\ypta))}%
- %calculs
- \xdef\coeffd{((\xpta)*(\vecny)-(\ypta)*(\vecnx))}%
- \xdef\PPCMDenom{\xinteval{lcm([\xintDenominator{\xintIrr{\xinteval{\vecnx}}},\xintDenominator{\xintIrr{\xinteval{\vecny}}},\xintDenominator{\xintIrr{\xinteval{\coeffd}}}])}}%
- \xdef\PGCDsiEntiers{1}%
- \xintifboolexpr{\xinteval{isint(\vecnx)}*\xinteval{isint(\vecny)}*\xinteval{isint(\coeffd)} == 1}%tous les coeffs sont entiers
- {%
- \xdef\PGCDsiEntiers{\xinteval{gcd([\xinteval{\vecnx},\xinteval{\vecny},\xinteval{\coeffd}])}}%
- }%
- {}%
- %affichages
- \ifboolKV[eqcartdroite]{SimplifCoeffs}%
- {%
- \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecnx)*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd*(\eqcartdtefact)*\PPCMDenom/\PGCDsiEntiers} = 0%
- }%
- {%
- \AffCoeffSgn*[\eqcartdteformat]{-(\vecny)}{x} \AffCoeffSgn[\eqcartdteformat]{(\vecnx)}{y} \AffCoeffSgnSimpl*[\eqcartdteformat]{\coeffd} = 0%
- }%
- }%
+ }%%
+}
+
+\NewDocumentCommand\AffVecteur{ }{%
+ \begingroup
+ \catcode`\;12
+ \AffVecteurAux
}
-\NewDocumentCommand\AffVecteur{ O{d} D<>{} r() }{%
+\NewDocumentCommand\AffVecteurAux{ O{d} D<>{} r() }{%
+ \endgroup
\setsepchar{;}\readlist*\CoordVec{#3}%
\xintifboolexpr{\CoordVeclen == 2}%
{%
- \IfSubStr{#1}{;}%si l'option est globale...
+ \IfSubStr{#1}{;}%
{%
\setsepchar{;}\readlist*\OptVec{#1}%
\itemtomacro\OptVec[1]\optvecx%
@@ -423,23 +446,23 @@
}%
{}%
\xintifboolexpr{\CoordVeclen == 3}%
- {%
- \IfSubStr{#1}{;}%si l'option est globale...
- {%
- \setsepchar{;}\readlist*\OptVec{#1}%
- \itemtomacro\OptVec[1]\optvecx%
- \itemtomacro\OptVec[2]\optvecy%
- \itemtomacro\OptVec[3]\optvecz%
- }%
- {%
- \xdef\optvecx{#1}\xdef\optvecy{#1}\xdef\optvecz{#1}%
- }%
- \itemtomacro\CoordVec[1]\vecx%
- \itemtomacro\CoordVec[2]\vecy%
- \itemtomacro\CoordVec[3]\vecz%
- \begin{pNiceMatrix}[#2] \ConversionFraction[\optvecx]{\vecx} \\ \ConversionFraction[\optvecy]{\vecy} \\ \ConversionFraction[\optvecz]{\vecz} \end{pNiceMatrix}%
- }%
- {}%
+ {%
+ \IfSubStr{#1}{;}%
+ {%
+ \setsepchar{;}\readlist*\OptVec{#1}%
+ \itemtomacro\OptVec[1]\optvecx%
+ \itemtomacro\OptVec[2]\optvecy%
+ \itemtomacro\OptVec[3]\optvecz%
+ }%
+ {%
+ \xdef\optvecx{#1}\xdef\optvecy{#1}\xdef\optvecz{#1}%
+ }%
+ \itemtomacro\CoordVec[1]\vecx%
+ \itemtomacro\CoordVec[2]\vecy%
+ \itemtomacro\CoordVec[3]\vecz%
+ \begin{pNiceMatrix}[#2] \ConversionFraction[\optvecx]{\vecx} \\ \ConversionFraction[\optvecy]{\vecy} \\ \ConversionFraction[\optvecz]{\vecz} \end{pNiceMatrix}%
+ }%
+ {}%
}
\NewDocumentCommand\AffPoint{ O{d} r() }{%
@@ -509,21 +532,18 @@
\restmp%
}
-\NewDocumentCommand\TrouveEqParamDroite{ O{} r() r() }{%vect/point ou point/point
+\NewDocumentCommand\TrouveEqParamDroite{ }{%
+ \begingroup
+ \catcode`\;12
+ \TrouveEqParamDroiteAux
+}
+
+\NewDocumentCommand\TrouveEqParamDroiteAux{ O{} r() r() }{%vect/point ou point/point
+ \endgroup
\restoreKV[eqparamdroite]% revenir au valeurs par défaut
\setKV[eqparamdroite]{#1}% lit les arguments optionnels
%on teste si c'est point/point
- \IfSubStr{#2}{;}%c'est vecteur+point, sinon c'est point+point
- {%
- \setsepchar{;}\readlist*\CoordVec{#2}%
- \setsepchar{,}\readlist*\CoordPt{#3}%
- \itemtomacro\CoordVec[1]\vecdirx%
- \itemtomacro\CoordVec[2]\vecdiry%
- \itemtomacro\CoordVec[3]\vecdirz%
- \itemtomacro\CoordPt[1]\xpta%
- \itemtomacro\CoordPt[2]\ypta%
- \itemtomacro\CoordPt[3]\zpta%
- }%
+ \IfSubStr{#2}{,}%c'est point+point, sinon c'est vecteur+point
{%
\setsepchar{,}\readlist*\CoordPtA{#2}%
\setsepchar{,}\readlist*\CoordPtB{#3}%
@@ -545,6 +565,16 @@
\xdef\vecdirz{((\zptb)-(\zpta))}%
}%
}%
+ {%
+ \setsepchar{;}\readlist*\CoordVec{#2}%
+ \setsepchar{,}\readlist*\CoordPt{#3}%
+ \itemtomacro\CoordVec[1]\vecdirx%
+ \itemtomacro\CoordVec[2]\vecdiry%
+ \itemtomacro\CoordVec[3]\vecdirz%
+ \itemtomacro\CoordPt[1]\xpta%
+ \itemtomacro\CoordPt[2]\ypta%
+ \itemtomacro\CoordPt[3]\zpta%
+ }%
\ifboolKV[eqparamdroite]{Aligne}%
{%
\left\lbrace\begin{array}{@{\,}l@{\;=\;}l@{\;}r}
@@ -564,7 +594,14 @@
}%
}
-\NewDocumentCommand\TrouveDistancePtPlan{ r() r() d() }{%pt+vect+pt
+\NewDocumentCommand\TrouveDistancePtPlan{ }{%
+ \begingroup
+ \catcode`\;12
+ \TrouveDistancePtPlanAux
+}
+
+\NewDocumentCommand\TrouveDistancePtPlanAux{ r() r() d() }{%pt+vect+pt
+ \endgroup
\IfNoValueTF{#3}%c'est Point + Equation // sinon c'est point + vectnorm + point
{%
\StrDel{#2}{=0}[\tmpeq]%
@@ -624,4 +661,58 @@
\SimplificationRacine{\restmp}%
}
+\NewDocumentCommand\TrouveNorme{ }{%
+ \begingroup
+ \catcode`\;12
+ \TrouveNormeAux
+}
+
+\NewDocumentCommand\TrouveNormeAux{ r() d() }{%pt+vect+pt
+ \endgroup
+ \IfNoValueTF{#2}%c'est Vecteur // sinon c'est point point
+ {%
+ \setsepchar{;}\readlist*\CoordVec{#1}%
+ \xintifboolexpr{\CoordVeclen == 2}%
+ {%
+ \itemtomacro\CoordVec[1]\xveca%
+ \itemtomacro\CoordVec[2]\yveca%
+ \xdef\restmp{(\xveca)**2+(\yveca)**2}%
+ }
+ {}%
+ \xintifboolexpr{\CoordVeclen == 3}%%
+ {%
+ \itemtomacro\CoordVec[1]\xveca%
+ \itemtomacro\CoordVec[2]\yveca%
+ \itemtomacro\CoordVec[3]\zveca%
+ \xdef\restmp{(\xveca)**2+(\yveca)**2+(\zveca)**2}%
+ }%
+ {}%
+ }%
+ {%
+ \setsepchar{,}\readlist*\CoordPtA{#1}%
+ \setsepchar{,}\readlist*\CoordPtB{#2}%
+ \xintifboolexpr{\CoordPtAlen == 2}%
+ {%
+ \itemtomacro\CoordPtA[1]\xa%
+ \itemtomacro\CoordPtA[2]\ya%
+ \itemtomacro\CoordPtB[1]\xb%
+ \itemtomacro\CoordPtB[2]\yb%
+ \xdef\restmp{((\xb)-(\xa))**2+((\yb)-(\ya))**2}%
+ }%
+ {}
+ \xintifboolexpr{\CoordPtAlen == 3}%
+ {%
+ \itemtomacro\CoordPtA[1]\xa%
+ \itemtomacro\CoordPtA[2]\ya%
+ \itemtomacro\CoordPtA[3]\za%
+ \itemtomacro\CoordPtB[1]\xb%
+ \itemtomacro\CoordPtB[2]\yb%
+ \itemtomacro\CoordPtB[3]\zb%
+ \xdef\restmp{((\xb)-(\xa))**2+((\yb)-(\ya))**2+((\zb)-(\za))**2}
+ }%
+ {}%
+ }%
+ \SimplificationRacine{\restmp}%
+}
+
\endinput \ No newline at end of file