summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-02-08 21:00:49 +0000
committerKarl Berry <karl@freefriends.org>2023-02-08 21:00:49 +0000
commit35670eff73db8009e4de2e843b88932510f90879 (patch)
tree49ec13b5a64b7e85b44fdd5ac1942b6593db2e56 /Master/texmf-dist
parentca1d8bda0868015697b3b464a86275bd18d84ce3 (diff)
proflycee (8feb23)
git-svn-id: svn://tug.org/texlive/trunk@65759 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdfbin803833 -> 807448 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex317
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_a.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_a.png)bin10939 -> 10939 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_b.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_b.png)bin10804 -> 10804 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_c.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_c.png)bin7252 -> 7252 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_d.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_d.png)bin7380 -> 7380 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_e.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_e.png)bin9965 -> 9965 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_f.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_f.png)bin7670 -> 7670 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_a.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_a.png)bin9278 -> 9278 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_b.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_b.png)bin13958 -> 13958 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c.png)bin11759 -> 11759 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c2.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c2.png)bin9989 -> 9989 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_d.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_d.png)bin7316 -> 7316 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_e.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_e.png)bin9599 -> 9599 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_a.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-solve_a.png)bin5226 -> 5226 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_b.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-solve_b.png)bin9215 -> 9215 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_c.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-solve_c.png)bin10175 -> 10175 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_d.png (renamed from Master/texmf-dist/doc/latex/proflycee/pl-solve_d.png)bin10145 -> 10145 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty492
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex48
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex67
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex129
22 files changed, 489 insertions, 564 deletions
diff --git a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
index 4a221bb6761..5bc213607fc 100644
--- a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
+++ b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
index 59bb65280f3..3d4e3e92402 100644
--- a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
+++ b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
@@ -4,11 +4,11 @@
% arara: lualatex: {shell: yes, synctex: no, interaction: batchmode}
% arara: lualatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
-\documentclass{article}
-\def\PLversion{2.1.9}
-\def\PLdate{4 Février 2023}
-\usepackage[pythontex]{ProfLycee}
-\usepackage{mathtools}
+\documentclass[a4paper,french,11pt]{article}
+\def\PLversion{2.5.0}
+\def\PLdate{8 Février 2023}
+\usepackage{ProfLycee}
+\useproflyclib{piton,minted,pythontex}
\usepackage{lualatex-math}
\usepackage{luatexbase}
\usepackage[math-style=french,bold-style=ISO]{fourier-otf}
@@ -20,6 +20,7 @@
\sisetup{locale=FR}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
+\usepackage{tabularray}
\usepackage{multicol}
%fancy
\fancyhf{}
@@ -29,7 +30,22 @@
\rfoot{\hyperlink{matoc}{\small\faArrowAltCircleUp[regular]}}
\usepackage{graphics}
-\usepackage{hvlogos}
+\usepackage{hologo}
+\providecommand\tikzlogo{Ti\textit{k}Z}
+\providecommand\TeXLive{\TeX{}Live\xspace}
+\providecommand\PSTricks{\textsf{PSTricks}\xspace}
+\let\pstricks\PSTricks
+\let\TikZ\tikzlogo
+\newcommand\TableauDocumentation{%
+ \begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily}}
+ {\huge \LaTeX} & & & & &\\
+ & {\huge \hologo{pdfLaTeX}} & & & & \\
+ & & {\huge \hologo{LuaLaTeX}} & & & \\
+ & & & {\huge \TikZ} & & \\
+ & & & & {\huge \TeXLive} & \\
+ & & & & & {\huge \hologo{MiKTeX}} \\
+ \end{tblr}
+}
\usepackage{simplekv}
\usepackage{menukeys}
\let\tab\relax
@@ -45,7 +61,7 @@
\hypersetup{pdfborder=0 0 0}
\usepackage{geometry}
\geometry{margin=1.5cm}
-\usepackage[french]{babel}
+\usepackage{babel}
\usepackage{newverbs}
\newverbcommand{\pverb}{\color{purple}}{}
\newverbcommand{\rverb}{\color{red}}{}
@@ -71,6 +87,16 @@
}
}
+\tcbset{vignettelib/.style={%
+ fontupper={\vphantom{pf}\footnotesize\ttfamily},
+ vignettes,%
+ colframe=ForestGreen,coltitle=white,colback=white,%
+ overlay={\begin{tcbclipinterior}%
+ \fill[fill=green!25]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{ForestGreen}{\scalebox{0.85}[0.75]{\textbf{LIB}}}}} ($(interior.north west)+(5pt,0pt)$);%
+ \end{tcbclipinterior}}
+ }
+}
+
\tcbset{vignetteMaJ/.style={%
fontupper={\vphantom{pf}\footnotesize\ttfamily},
vignettes,%
@@ -107,6 +133,11 @@
{\tcbox[vignetteMaJ]{#1}\xspace}%
}
+%petite vignette màj
+\newcommand\clib[1]{%
+ {\tcbox[vignettelib]{#1}\xspace}%
+}
+
%gestion de la fenêtre v2 directement dans le tikzpicture
\tikzset{%
xmin/.store in=\xmin,xmin/.default=-5,xmin=-5,
@@ -206,12 +237,12 @@
\thispagestyle{empty}
-{\sffamily{\bfseries Résumé} : Quelques commandes pour faciliter l'utilisation de \LaTeX{} pour les enseignants de mathématiques en lycée.}
+{\sffamily{\bfseries Résumé} : Quelques commandes pour faciliter l'utilisation de \LaTeX{} pour les mathématiques, au lycée.}
\medskip
{\small\noindent%
-{\deblst} résoudre, de manière approchée, des équations \\
+{\deblst} résoudre, de manière approchée, des équations\\
{\deblst} tracer \textit{facilement} des repères/grilles/courbes\\
{\deblst} tracer des courbes \textit{lisses} avec gestion des extrema et des dérivées\\
{\deblst} simuler une fenêtre de logiciel de calcul formel, une console d'exécution \\
@@ -225,7 +256,6 @@
{\deblst} travailler sur les statistiques à deux variables (algébriques et graphiques) \\
{\deblst} convertir entre bin/dec/hex avec détails \\
{\deblst} présenter un calcul de PGCD \\
-%{\deblst} créer un pixelart avec correction éventuelle \\
{\deblst} effectuer des calculs de probas (lois binomiale, exponentielle, de Poisson, normale) \\
{\deblst} créer des arbres de probas \og classiques \fg \\
{\deblst} générer des listes d'entiers aléatoires (avec ou sans répétitions)\\
@@ -236,7 +266,7 @@
\hfill{}\textsl{Merci à Anne pour ses retours et sa relecture !}
-\hfill{}\textsl{Merci à Christophe pour ses retours et ses éclairages !}
+\hfill{}\textsl{Merci à Christophe et Denis pour leurs retours et éclairages !}
\hfill{}\textsl{Merci aux membres du groupe \faFacebook{} du \og Coin \LaTeX{} \fg{} pour leur aide et leurs idées !}
@@ -246,14 +276,7 @@
\medskip
-\begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily\LARGE}}
- {\LaTeX} & & & & &\\
- & {\pdfLaTeX} & & & & \\
- & & {\LuaLaTeX} & & & \\
- & & & {\TikZ} & & \\
- & & & & {\TeXLive} & \\
- & & & & & {\MiKTeX} \\
-\end{tblr}
+\TableauDocumentation
\medskip
@@ -285,7 +308,7 @@ On peut le voir comme un (maigre) complément à \ctex{ProfCollege}, et je préc
\medskip
-Il se charge, dans le préambule, par \ctex{\textbackslash usepackage\{ProfLycee\}}. Il charge quelques {packages} utiles, mais j'ai fait le choix de laisser l'utilisateur gérer ses autres {packages}, comme notamment \ctex{amssymb} qui peut poser souci en fonction de la \textit{position} de son chargement.
+Il se charge, dans le préambule, par \ctex{\textbackslash usepackage\{ProfLycee\}}. Il charge des {packages} utiles, mais j'ai fait le choix de laisser l'utilisateur gérer ses autres {packages}, comme notamment \ctex{amssymb} qui peut poser souci en fonction de la \textit{position} de son chargement.
L'utilisateur est libre de charger ses autres {packages} utiles et habituels, ainsi que ses \textsf{polices} et \textsf{encodages} habituels !
\end{codeidee}
@@ -296,10 +319,10 @@ Le {package} \ctex{ProfLycee} charge les {packages} :
\begin{itemize}
\item \ctex{xcolor} avec les options \textsf{[table,svgnames]} ;
\item \ctex{tikz}, \ctex{pgf}, \ctex{pgffor} ;
+ \item \ctex{tcolorbox} avec l'option \textsf{[most]} ;
\item \ctex{xparse}, \ctex{xstring}, \ctex{simplekv}, \ctex{xinttools} ;
\item \ctex{listofitems}, \ctex{xintexpr} , \ctex{xintbinhex}, \ctex{xintgcd} ;
- \item \ctex{tabularray}, \ctex{fontawesome5}, \ctex{tcolorbox}, \ctex{randomlist}, \ctex{fancyvrb}, \ctex{csvsimple} ;
- \item \ctex{piton} (uniquement si compilation en \LuaLaTeX{} !) et \ctex{pythontex}.
+ \item \ctex{tabularray}, \ctex{fontawesome5}, \ctex{randomlist}, \ctex{fancyvrb}.
\end{itemize}
\end{codeinfo}
@@ -315,7 +338,6 @@ J'ai utilisé les {packages} de C. Tellechea, je vous conseille d'aller jeter un
\usepackage{ProfLycee}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
-\usepackage[french]{babel}
...
\end{codetex}
@@ -324,55 +346,49 @@ J'ai utilisé les {packages} de C. Tellechea, je vous conseille d'aller jeter un
\documentclass{article}
\usepackage{ProfLycee}
\usepackage{fontspec}
-\usepackage[french]{babel}
...
\end{codetex}
-\subsection{Options du package}
+\subsection{Librairies, option du package}\label{librairies}
\begin{codeattention}
-\cmaj{2.0.0} Une compilation \textsf{shell-escape} est recommandée pour l'utilisation de \ctex{ProfLycee}, notamment pour le package \ctex{minted} et la coloration syntaxique de code.
-
-Cependant, si vous ne \underline{souhaitez pas} charger (et utiliser) \ctex{minted} vous pouvez charger le package \ctex{ProfLycee} avec l'option \Cle{nonshellescape}.
+\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é.
\end{codeattention}
\begin{codetex}[listing only]
-...
-\usepackage[nonshellescape]{ProfLycee}
-%package <minted> et librairie <minted> non chargés
-...
+\usepackage{ProfLycee}
+\useproflyclib{...,...}
\end{codetex}
-\begin{codeattention}
-\cmaj{2.1.0} Le package\ctex{pythontex} nécessitant une chaîne de compilation particulière, j'ai décidé de le mettre en \textit{option}.
-
-Pour utiliser le package \ctex{pythontex} et utiliser les commandes qui lui sont liées, il faut désormais charger \ctex{ProfLycee} avec l'option \Cle{pythontex}.
-\end{codeattention}
+\begin{codeinfo}
+Les librairies disponibles seront indiquées dans les sections spécifiques. Pour le moment, il existe :
-\begin{codetex}[listing only]
-...
-\usepackage[pythontex]{ProfLycee}
-...
-\end{codetex}
+\begin{itemize}
+ \item \clib{piton} (page \pageref{pythonpiton}) ;
+ \item \clib{minted} (page \pageref{pytminted}) ;
+ \item \clib{pythontex} (page \pageref{pythontex}).
+\end{itemize}
+\end{codeinfo}
\begin{codeinfo}
-En compilant (notamment avec les packages \ctex{minted} et \ctex{pythontex}) on peut spécifier des répertoires particuliers pour les (ou des) fichiers auxiliaires.
+En compilant (notamment avec les librairies \clib{minted} et \clib{pythontex}) on peut spécifier des répertoires particuliers pour les (ou des) fichiers auxiliaires.
-Avec l'option \Cle{build}, l'utilisateur a la possibilité de placer les fichiers temporaires de \ctex{minted} et \ctex{pythontex} dans un répertoire \menu{build} du répertoire courant.
+Avec l'option \Cle{build}, l'utilisateur a la possibilité de placer les fichiers temporaires de \clib{minted} et \clib{pythontex} dans un répertoire \menu{build} du répertoire courant.
\smallskip
-Dans ce cas il vaut mieux créer au préalable le répertoire \menu{build} avant de compiler un fichier !
+Dans ce cas il faut créer au préalable le répertoire \menu{build} avant de compiler un fichier, pour éviter toute erreur !
\end{codeinfo}
\begin{codetex}[listing only]
...
\usepackage[build]{ProfLycee}
+\useproflyclib{...}
...
\end{codetex}
\begin{codeinfo}
-Les options précédentes sont cumulables, et, pour info, elles conditionnent le chargement des {packages} avec les options :
+L'option \Cle{build} charge certains packages (librairies \clib{minted} et \clib{pythontex}) avec les options :
\begin{itemize}
\item \ctex{\textbackslash setpythontexoutputdir\{./build/pythontex-files-\textbackslash jobname\}}
@@ -380,38 +396,31 @@ Les options précédentes sont cumulables, et, pour info, elles conditionnent le
\end{itemize}
\end{codeinfo}
-\begin{codetex}[listing only]
-...
-%chargement de ProfLycee sans minted, et avec pythontex
-\usepackage[pythontex,nonshellescape]{ProfLycee}
-...
-\end{codetex}
-
\pagebreak
\section{Compléments}
-\subsection{Changements à partir de la version 2 !!}
-
-\begin{codeattention}
-\cmaj{2.0.0} Pour des raisons pratiques, les commandes et environnements disponibles dans \ctex{ProfLycee} ont été renommés, pour utiliser des noms plus génériques et explicites.
-
-La nomenclature des \Cle{clés} a été également revue, avec -- dans la grande majorité des cas -- une majuscule en début.
-
-\smallskip
-
-Je préfère faire ces ajustements tant que le package est assez \textit{jeune} !
-\end{codeattention}
-
-\begin{codeattention}
-\cmaj{2.0.0} L'ancienne version (qui ne sera mise à jour !!) du package \ctex{ProfLycee} est toutefois encore disponible, pour une migration en douceur, elle est désormais accessible sous le nom \ctex{ProfLycee-old}, et la documentation est également encore disponible.
-\end{codeattention}
-
-\begin{codetex}[listing only]
-...
-\usepackage[options]{ProfLycee-old} %nouveautés non disponibles par contre...
-...
-\end{codetex}
+%\subsection{Changements à partir de la version 2 !!}
+%
+%\begin{codeattention}
+%\cmaj{2.0.0} Pour des raisons pratiques, les commandes et environnements disponibles dans \ctex{ProfLycee} ont été renommés, pour utiliser des noms plus génériques et explicites.
+%
+%La nomenclature des \Cle{clés} a été également revue, avec -- dans la grande majorité des cas -- une majuscule en début.
+%
+%\smallskip
+%
+%Je préfère faire ces ajustements tant que le package est assez \textit{jeune} !
+%\end{codeattention}
+%
+%\begin{codeattention}
+%\cmaj{2.0.0} L'ancienne version (qui ne sera mise à jour !!) du package \ctex{ProfLycee} est toutefois encore disponible, pour une migration en douceur, elle est désormais accessible sous le nom \ctex{ProfLycee-old}, et la documentation est également encore disponible.
+%\end{codeattention}
+%
+%\begin{codetex}[listing only]
+%...
+%\usepackage[options]{ProfLycee-old} %nouveautés non disponibles par contre...
+%...
+%\end{codetex}
\subsection{Le système de \og clés/options \fg}
@@ -423,7 +432,7 @@ L'idée est de conserver -- autant que faire se peut -- l'idée de \Cle{Clés} q
\item définies (en majorité) par défaut pour chaque commande.
\end{itemize}
-Pour certaines commandes, le système de \Cle{Clés} pose quelques soucis, de ce fait le fonctionnement est plus \textit{basique} avec un système d'\textsf{arguments} \textit{optionnels} (entre \textsf{[\ldots]}) ou \textit{obligatoires} (entre \textsf{\{\ldots\}}).
+Pour certaines commandes, le système de \Cle{Clés} pose quelques soucis, de ce fait le fonctionnement est plus \textit{basique} avec un système d'\textsf{arguments} \textit{optionnels} (souvent entre \textsf{[\ldots]}) ou \textit{obligatoires} (souvent entre \textsf{\{\ldots\}}).
\smallskip
@@ -470,8 +479,6 @@ Les \textsf{clés} ou \textsf{options} seront présentées dans des \textsf{boî
À noter que certaines commandes disponibles sont liées à un environnement \ctex{tikzpicture}, elles ne sont pas autonomes mais permettent de conserver -- en parallèle -- toute commande liée à \TikZ{} !
\end{codeinfo}
-\pagebreak
-
\subsection{Compilateur(s)}
\begin{codeinfo}
@@ -479,18 +486,15 @@ Le package \ctex{ProfLycee} est compatible avec les compilateurs classiques : \t
\smallskip
-En ce qui concerne les codes \textsf{python}, il faudra :
+En ce qui concerne les codes \textsf{librairies}, il faudra :
\begin{itemize}
- \item compiler en chaîne \textsf{(xxx)latex + pythontex + (xxx)latex} pour les environnements avec \ctex{pythontex} ;
- \item compiler avec \textsf{shell-escape} (ou \textsf{write18}) pour les environnements avec \ctex{minted}.
+ \item \clib{pythontex} : compiler en chaîne \textsf{(xxx)latex + pythontex + (xxx)latex} ;
+ \item \clib{minted} : compiler avec \textsf{shell-escape} (ou \textsf{write18}) ;
+ \item \clib{piton} : compiler en \hologo{LuaLaTeX} et \textsf{shell-escape} (ou \textsf{write18}).
\end{itemize}
\end{codeinfo}
-\begin{codeattention}
-Certains commandes ou environnements nécessitent une compilation spécifique, qui sera indiquée clairement dans la documentation !
-\end{codeattention}
-
\subsection{Problèmes éventuels\ldots}
\begin{codeinfo}
@@ -511,8 +515,6 @@ En dehors de cela, ce sont des tests multiples et variés qui permettront de dé
\vfill
-%\hfill{\Huge $\leftrightsquigarrow$ Bonne(s) découverte(s) $\leftrightsquigarrow$}\hfill~
-
\hfill\tikz \draw (0,0) node[above right=0pt,inner sep=0pt,outer sep=0pt,rotate=25,scale=4] {$\leftrightsquigarrow$ Bonne(s) découverte(s) $\leftrightsquigarrow$} ;\hfill~
\vfill
@@ -556,7 +558,7 @@ Elles sont présentées de manière \textit{succincte}, mais elles sont présent
\TangenteTikz[options]{liste}
%schémas pour le signe affine/trinôme, dans un environnement tikz
-\MiniSchemaSignes(*)[clés]<options tikzpicture>
+\MiniSchemaSignes(*)[clés]<options tikz>
\MiniSchemaSignesTkzTab[options]{numligne}[échelle][décalage horizontal]
\end{codetex}
@@ -567,12 +569,13 @@ Elles sont présentées de manière \textit{succincte}, mais elles sont présent
%présentation de code Python
\begin{CodePythonLst}(*)[largeur]{commandes tcbox}...\end{CodePythonLst}
+%:=librairie piton
\begin{CodePiton}[options]...\end{CodePiton}
-\begin{CodePythontex}[options]...\end{CodePythontex} %avec l'option [pythontex]
-\begin{CodePythonMinted}(*)[largeur][options]...\end{CodePythonMinted}
-
-%console Python avec l'option [pythontex]
+%:=librairie pythontex
+\begin{CodePythontex}[options]...\end{CodePythontex}
\begin{ConsolePythontex}[options]...\end{ConsolePythontex}
+%:=librairie minted
+\begin{CodePythonMinted}(*)[largeur][options]...\end{CodePythonMinted}
%présentation de pseudocode
\begin{PseudoCode}(*)[largeur][options]...\end{PseudoCode}
@@ -856,7 +859,9 @@ On s'intéresse à $g(x)=\num{1,5}$ avec $g(x)=\ln(x)$.
On s'intéresse à $g(x)=\num{1,5}$ avec $g(x)=\ln(x)$ sur l'intervalle $\left[3;5\right]$.
\ResolutionApprochee[Intervalle=3:5]{log(x)=1.5}[SolLn]
-\SolutionTVI[Balayage,Stretch=1.5,va={\SolLnd},vb={\SolLne},NomFct=g,Precision=4,NomSol={x_0}]{log(x)}{1.5}.
+\SolutionTVI%
+ [Balayage,Stretch=1.5,va={\SolLnd},vb={\SolLne},
+ NomFct=g,Precision=4,NomSol={x_0}]{log(x)}{1.5}.
\end{codetex}
\begin{codeinfo}
@@ -975,7 +980,7 @@ on obtient le tableau de valeurs suivant :
\begin{tabular}{c|c}
$n$ & $u_n$ \\ \hline
1 & 2 \\
- \xintFor* #1 in {\xintSeq{2}{8}} \do {#1 & \CalculTermeRecurrence[No=1,UNo=2,N=#1]{1+(1+x**2)/(1+x)} \\}
+ \xintFor* #1 in {\xintSeq{2}{7}} \do {#1 & \CalculTermeRecurrence[No=1,UNo=2,N=#1]{1+(1+x**2)/(1+x)} \\}
\end{tabular}\\
\SolutionSeuil[Precision=4,No=1,UNo=2,Simple]{1+(1+x**2)/(1+x)}{10} (Ainsi $u_n > 10$ à partir de $n=\the\CompteurSeuil$)
@@ -1626,7 +1631,7 @@ On obtient le résultat suivant (avec les éléments rajoutés utiles à la comp
\begin{codeidee}
L'idée est d'obtenir une commande pour tracer (en \TikZ) un petit schéma pour \textit{visualiser} le signe d'une fonction affine ou d'un trinôme.
-Le code est très largement inspiré de celui du package \ctex{tnsana} même si la philosophie est légèrement différente.
+Le code est largement inspiré de celui du package \ctex{tnsana} même si la philosophie est un peu différente.
\smallskip
@@ -1645,9 +1650,7 @@ Comme pour les autres commandes \TikZ, l'idée est de laisser la possibilité à
\begin{codetex}[listing only]
\begin{tikzpicture}[<options>]
- ...
\MiniSchemaSignes[clés]
- ...
\end{tikzpicture}
\end{codetex}
@@ -1662,7 +1665,7 @@ Comme pour les autres commandes \TikZ, l'idée est de laisser la possibilité à
\smallskip
-Le premier argument, \textit{optionnel} et entre \ctex{[...]}, contient les \Cle{Clés} sont disponibles pour cette commande :
+Le premier argument, \textit{optionnel} et entre \textsf{[...]}, contient les \Cle{Clés} sont disponibles pour cette commande :
\begin{itemize}
\item la clé \Cle{Code} qui permet de définir le type d'expression (voir en-dessous) ;\hfill{}défaut \Cle{da+}
@@ -1673,7 +1676,7 @@ Le premier argument, \textit{optionnel} et entre \ctex{[...]}, contient les \Cle
\item un booléen \Cle{Cadre} qui affiche un cadre autour du schéma.\hfill{}défaut \Cle{true}
\end{itemize}
-Le second argument, \textit{optionnel} et entre \ctex{<...>}, permet de spécifier (pour la commande \textit{étoilée}), des options à passer à l'environnement \ctex{tikzpicture}.
+Le second argument, \textit{optionnel} et entre \textsf{<...>}, permet de spécifier (pour la commande \textit{étoilée}), des options à passer à l'environnement \ctex{tikzpicture}.
\end{codecles}
\begin{codecles}
@@ -1840,7 +1843,7 @@ Plusieurs \Cle{arguments} (optionnels) sont disponibles :
\item la clé \Cle{No} qui est l'indice initial ;\hfill{}défaut \Cle{0}
\item la clé \Cle{Uno} qui est la valeur du terme initial ;\hfill{}défaut \Cle{vide}
\item la clé \Cle{Nb} qui est le nombre de termes à construire ;\hfill{}défaut \Cle{5}
- \item la clé \Cle{PosLabel} qui correspond au placement des labels par rapport à l'axe des abscisses ;\hfill{}défaut \Cle{below}
+ \item la clé \Cle{PosLabel} qui est le placement des labels par rapport à l'axe $(Ox)$ ;\hfill{}défaut \Cle{below}
\item la clé \Cle{DecalLabel} qui correspond au décalage des labels par rapport aux abscisses ;\hfill{}défaut \Cle{6pt}
\item la clé \Cle{TailleLabel} qui correspond à la taille des labels ;\hfill{}défaut \Cle{small}
\item un booléen \Cle{AffTermes} qui permet d'afficher les termes de la suite sur l'axe $(Ox)$.\hfill{}défaut \Cle{true}
@@ -2294,7 +2297,15 @@ def trace_parabole_tableaux():
\subsection{Introduction}
\begin{codeinfo}
-\cmaj{2.0.0} Le package \ctex{piton} (compatible uniquement avec une compilation en \LuaLaTeX{} !) permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}.
+\cmaj{2.5.0} Cette section nécessite de charger la \textsf{librairie} \clib{piton} dans le préambule.
+\end{codeinfo}
+
+\begin{codetex}[listing only]
+\useproflyclib{piton}
+\end{codetex}
+
+\begin{codeinfo}
+\cmaj{2.0.0} La \textsf{librairie} \clib{piton} (qui charge \ctex{piton}, est compatible uniquement avec \hologo{LuaLaTeX} !) permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}.
\smallskip
@@ -2302,17 +2313,17 @@ En \textit{partenariat} avec \ctex{tcolorbox}, on peut avoir une présentation d
\smallskip
-\cmaj{2.0.2} Depuis la version \ctex{0.95} du package \ctex{piton}, \Cle{left-margin=auto} est disponible et activée dans \ctex{ProfLycee}.
+\cmaj{2.0.2} Depuis la version \ctex{0.95} de \ctex{piton}, \Cle{left-margin=auto} est disponible et activée dans \ctex{ProfLycee}.
-\cmaj{2.1.2} Depuis la version \ctex{0.99} du package \ctex{piton}, \Cle{break-lines} est disponible et activée dans \ctex{ProfLycee}.
+\cmaj{2.1.2} Depuis la version \ctex{0.99} de \ctex{piton}, \Cle{break-lines} est disponible et activée dans \ctex{ProfLycee}.
-\cmaj{2.1.3} Depuis la version \ctex{1.0} du package \ctex{piton}, \Cle{tabs-auto-gobble} est disponible et activée dans \ctex{ProfLycee}.
+\cmaj{2.1.3} Depuis la version \ctex{1.0} de \ctex{piton}, \Cle{tabs-auto-gobble} est disponible et activée dans \ctex{ProfLycee}.
\end{codeinfo}
\begin{codeattention}
-Le package \ctex{piton} nécessite donc obligatoirement l’emploi de \LuaLaTeX{} !
+Le package \ctex{piton} nécessite donc obligatoirement l’emploi de \hologo{LuaLaTeX} !
-\cmaj{2.0.1} Ce package n'est chargé que si la compilation détectée est en \LuaLaTeX{} !
+\cmaj{2.0.1} Ce package n'est chargé que si la compilation détectée est en \hologo{LuaLaTeX} !
\end{codeattention}
\subsection{Présentation de code Python}
@@ -2320,7 +2331,6 @@ Le package \ctex{piton} nécessite donc obligatoirement l’emploi de \LuaLaTeX{
\begin{codetex}[listing only]
\begin{CodePiton}[options]
...
-...
\end{CodePiton}
\end{codetex}
@@ -2333,7 +2343,7 @@ Plusieurs \Cle{clés} sont disponibles :
\begin{itemize}
\item la clé booléenne \Cle{Lignes} pour afficher ou non les numéros de lignes ; \hfill{}défaut \Cle{true}
- \item \cmaj{2.1.3} la clé booléenne \Cle{Gobble} pour activer les options liées au \textsf{gobble} (v1.0 du package !) ; \hfill{}défaut \Cle{true}
+ \item \cmaj{2.1.3} la clé booléenne \Cle{Gobble} pour activer les options liées au \textsf{gobble} ; \hfill{}défaut \Cle{true}
\item la clé \Cle{Largeur} qui correspond à la largeur de la \ctex{tcbox} ; \hfill{}défaut \Cle{\textbackslash linewidth}
\item la clé \Cle{TaillePolice} pour la taille des caractères ; \hfill{}défaut \Cle{\textbackslash footnotesize}
\item la clé \Cle{Alignement} qui paramètre l'alignement de la \ctex{tcbox}. \hfill{}défaut \Cle{center}
@@ -2366,34 +2376,21 @@ def arctan(x,n=10):
\end{CodePiton}
\end{codesortie}
-\pagebreak
-
\begin{codetex}[listing only]
-\begin{CodePiton}[Lignes=false,Largeur=15cm]
-#sans numéro, de largeur 15cm
-def f(x) :
- return x**2
-\end{CodePiton}
-
\begin{CodePiton}[Alignement=flush right,Largeur=13cm]
-#avec numéros, de largeur 13cm, aligné à droite
def f(x) :
return x**2
\end{CodePiton}
\begin{CodePiton}[Alignement=flush left,Largeur=11cm]
-#avec numéros, de largeur 11cm, aligné à gauche
def f(x) :
return x**2
\end{CodePiton}
-Avec des indentations d'environnement :
-
-\begin{itemize}
+\begin{itemize} %Avec des indentations d'environnement :
\item On essaye avec un \texttt{itemize} :
- \begin{CodePiton}[Largeur=7cm]
- #avec numéros, de largeur 7cm, centré
+ \begin{CodePiton}[Largeur=9cm]
def f(x) :
return x**2
\end{CodePiton}
@@ -2401,12 +2398,6 @@ Avec des indentations d'environnement :
\end{codetex}
\begin{codesortie}
-\begin{CodePiton}[Lignes=false,Largeur=15cm]
-#sans numéro, de largeur 15cm
-def f(x) :
- return x**2
-\end{CodePiton}
-
\begin{CodePiton}[Alignement=flush right,Largeur=13cm]
#avec numéros, de largeur 13cm, aligné à droite
def f(x) :
@@ -2422,8 +2413,8 @@ def f(x) :
\begin{itemize}
\item On essaye avec un \texttt{itemize} :
- \begin{CodePiton}[Largeur=7cm]
- #avec numéros, de largeur 7cm, centré
+ \begin{CodePiton}[Largeur=9cm]
+ #avec numéros, de largeur 9cm, centré
def f(x) :
return x**2
\end{CodePiton}
@@ -2434,10 +2425,23 @@ def f(x) :
\section{Code \& Console Python, via les packages Pythontex ou Minted}
+\subsection{Librairies}
+
+\begin{codeinfo}
+\cmaj{2.5.0} Cette section nécessite de charger les librairies \clib{minted} et/ou \clib{pythontex} dans le préambule.
+\end{codeinfo}
+
+\begin{codetex}[listing only]
+\useproflyclib{minted}
+\useproflyclib{pythontex}
+%ou
+\useproflyclib{minted,pythontex}
+\end{codetex}
+
\subsection{Introduction}
\begin{codeidee}
-Le {package} \ctex{pythontex} permet d'insérer et d'exécuter du code Python. On peut :
+\cmaj{2.5.0} La \textsf{librairie} \clib{pythontex} permet d'insérer et d'exécuter du code Python. On peut :
\begin{itemize}
\item présenter du code Python ;
@@ -2449,8 +2453,6 @@ Le {package} \ctex{pythontex} permet d'insérer et d'exécuter du code Python. O
\begin{codeattention}
\textbf{Attention : }il faut dans ce cas une compilation en plusieurs étapes, comme par exemple \textsf{pdflatex puis pythontex puis pdflatex} !
-\cmaj{2.1.0} Il faut de plus penser à charger le package avec l'option \Cle{pythontex}.
-
Voir par exemple \url{http://lesmathsduyeti.fr/fr/informatique/latex/pythontex/} !
\end{codeattention}
@@ -2520,6 +2522,8 @@ Comme précédemment, des \Cle{Clés} qui permettent de \textit{légèrement} mo
\begin{codeinfo}
Pour celles et ceux qui ne sont pas à l'aise avec le {package} \ctex{pythontex} et notamment sa spécificité pour compiler, il existe le {package} \ctex{minted} qui permet de présenter du code, et notamment Python.
+
+\cmaj{2.5.0} C'est donc la \textsf{librairie} \clib{minted} qu'il faudra charger.
\end{codeinfo}
\begin{codeattention}
@@ -2537,8 +2541,8 @@ Plusieurs \Cle{arguments} (optionnels) sont disponibles :
\begin{itemize}
\item la version \textit{étoilée} qui permet de ne pas afficher les numéros de lignes ;
- \item le premier argument optionnel concerne la \Cle{largeur} de la \ctex{tcbox} ;\hfill{}défaut \Cle{12cm}
- \item le second argument optionnel concerne les \Cle{options} de la \ctex{tcbox} en \textit{langage tcolorbox}.\hfill{}défaut \Cle{vide}
+ \item le 1\up{er} argument \textit{optionnel} concerne la \Cle{largeur} de la \ctex{tcbox} ;\hfill{}défaut \Cle{12cm}
+ \item le 2\up{nd} argument \textit{optionnel} concerne les \Cle{options} de la \ctex{tcbox} en \textit{langage tcbox}.\hfill{}défaut \Cle{vide}
\end{itemize}
\end{codecles}
@@ -2577,11 +2581,9 @@ Plusieurs \Cle{arguments} (optionnels) sont disponibles :
\subsection{Console d'exécution Python}
\begin{codeidee}
-\ctex{pythontex} permet également de \textit{simuler} (en exécutant également !) du code python dans une \textit{console}.
+\ctex{pythontex} permet également de \textit{simuler} (en exécutant également !) du code python dans une \textit{console}, avec la \textsf{librairie} \clib{pythontex} du coup !
C'est l'environnement \ctex{ConsolePythontex} qui permet de le faire.
-
-\cmaj{2.1.0} Il ne faut donc pas oublier de charger le package \ctex{ProfLycee} avec l'option \Cle{pythontex}.
\end{codeidee}
\begin{codetex}[listing only]
@@ -3444,7 +3446,7 @@ L'idée est que cette macro calcule et stocke les paramètres dans des variables
\item en calculs \textit{purs} ;
\item dans un environnement \TikZ{} via \textsf{pgfplots} ou bien en \textit{natif} ;
\item dans un environnement \PSTricks{} ;
- \item dans un environnement \METAPOST{} (à vérifier quand même) ;
+ \item dans un environnement \hologo{METAPOST} (à vérifier quand même) ;
\item \ldots
\end{itemize}
\end{codeidee}
@@ -3860,14 +3862,14 @@ Cette commande permet de tracer une grille principale et/ou une grille secondair
\begin{codetex}[listing only]
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\GrilleTikz
\end{tikzpicture}
~~
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\GrilleTikz[Affp=false][][orange,densely dotted]
@@ -3877,14 +3879,14 @@ Cette commande permet de tracer une grille principale et/ou une grille secondair
\begin{codesortie}
\hfill~
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\GrilleTikz
\end{tikzpicture}
~~
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\GrilleTikz[Affp=false][][orange,densely dotted]
@@ -3929,14 +3931,14 @@ Cette commande permet de tracer les axes, avec des \Cle{clés} :
\begin{codesortie}
\hfill~
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\AxesTikz
\end{tikzpicture}
~~
\begin{tikzpicture}%
- [x=0.35cm,y=0.07cm,%
+ [x=0.3cm,y=0.06cm,%
Ox=1992,xmin=1992,xmax=2012,xgrille=2,xgrilles=1,%
Oy=1640,ymin=1640,ymax=1730,ygrille=10,ygrilles=5]
\AxesTikz%
@@ -4030,7 +4032,7 @@ Il existe, de manière marginale, quelques commandes complémentaires qui ne ser
% \PLorigine[<options>]
%\end{codetex}
-\subsection{Interactions avec PLreglin}
+\subsection{Interactions avec CalculsRegLin}
\begin{codetex}[listing only]
%...code tikz
@@ -4094,8 +4096,8 @@ Cette commande permet de rajouter le point moyen du nuage, calculé par la comma
\item \Cle{Taille}, taille du point moyen ; \hfill~défaut \Cle{4pt}
\item \Cle{Couleur}, couleur du point moyen ; \hfill~défaut \Cle{red}
\item \Cle{Style} parmi \Cle{o} (rond) ou \Cle{x} (croix) ou \Cle{+} (plus) ; \hfill~défaut \Cle{o}
- \item \Cle{xg}, abscisse du point moyen, récupérable via \ctex{PLRegLin} ; \hfill~défaut \Cle{\textbackslash{}LXmoy}
- \item \Cle{yg}, ordonnée du point moyen, récupérable via \ctex{PLRegLin} ; \hfill~défaut \Cle{\textbackslash{}LYmoy}
+ \item \Cle{xg}, abscisse du point moyen, récupérable via \ctex{CalculsRegLin} ; \hfill~défaut \Cle{\textbackslash{}LXmoy}
+ \item \Cle{yg}, ordonnée du point moyen, récupérable via \ctex{CalculsRegLin} ; \hfill~défaut \Cle{\textbackslash{}LYmoy}
\item \Cle{Nom}, label du point moyen ; \hfill~défaut \Cle{G}
\item \Cle{Pos} qui est la position du label par rapport au point ; \hfill~défaut \Cle{above}
\item \Cle{Decal} qui est l'éloignement de la position du label par rapport au point ; \hfill~défaut \Cle{0pt}
@@ -4971,6 +4973,7 @@ Peu de paramétrage pour ces commandes qui permettent de calculer $A_n^p$ et $C_
\begin{itemize}
\item les versions étoilées ne formatent pas le résultat grâce à \ctex{\textbackslash num} de \ctex{sinuitx} ;
+ \item le booléen \Cle{Notation} pour avoir la notation au début ; \hfill~défaut \Cle{false}
\item le booléen \Cle{Formule} permet de présenter la formule avant le résultat ; \hfill~défaut \Cle{false}
\item le premier argument, \textit{obligatoire}, est la valeur de $p$ ;
\item le second argument, \textit{obligatoire}, est la valeur de $n$.
@@ -4978,19 +4981,21 @@ Peu de paramétrage pour ces commandes qui permettent de calculer $A_n^p$ et $C_
\end{codecles}
\begin{codetex}[]
-On a $A_{20}^3=\Arrangement*{3}{20}$ en non formaté, et $A_{20}^3=\Arrangement{3}{20}$ en formaté.
+On a $A_{20}^3=\Arrangement*{3}{20}$ en non formaté,
+et $\Arrangement[Notation]{3}{20}$ en formaté avec la notation au début.
\end{codetex}
\begin{codetex}[]
-On a $C_{20}^3=\Combinaison*{3}{20}$ en non formaté, et $C_{20}^3=\Combinaison{3}{20}$ en formaté.
+On a $\displaystyle\binom{20}{3}=\Combinaison*{3}{20}$ en non formaté,~
+et $\displaystyle\Combinaison[Notation]{3}{20}$ en formaté avec la notation au début.
\end{codetex}
\begin{codetex}[]
-On a $A_{20}^3=\Arrangement[Formule]{3}{20}$.
+On a $\displaystyle\Arrangement[Notation,Formule]{3}{20}$.
\end{codetex}
\begin{codetex}[]
-On a $C_{20}^3=\displaystyle\Combinaison[Formule]{3}{20}$.
+On a $\displaystyle\Combinaison[NotationAncien,Formule]{3}{20}$. %ancienne notation FR
\end{codetex}
\newpage
@@ -6217,6 +6222,10 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
\part{Historique}
+{\small \bverb|v 2.5.0|~:~~~~Système de \textsf{librairies} pour certains packages/commandes (page \pageref{librairies})
+
+{\small \bverb|v 2.2.0|~:~~~~Ajout d'une clé \Cle{Notation} pour les arrangements et combinaisons (page \pageref{combinatoire})
+
{\small \bverb|v 2.1.9|~:~~~~Correction d'un bug (et ajout d'une version étoilée) pour les petits schémas \og de signe \fg{} (page \pageref{aidesigne})
{\small \bverb|v 2.1.8|~:~~~~Suppression des commandes de PixelArt, désormais dans le package \textsf{PixelArtTikz}
@@ -6257,13 +6266,13 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0
{\small \bverb|v 2.0.2|~:~~~~Option \textsf{left-margin=auto} pour le package \textsf{piton} (page \pageref{pythonpiton})
-{\small \bverb|v 2.0.1|~:~~~~Chargement du package \textsf{piton} uniquement si compilation en \LuaLaTeX{} (page \pageref{pythonpiton})
+{\small \bverb|v 2.0.1|~:~~~~Chargement du package \textsf{piton} uniquement si compilation en \hologo{LuaLaTeX} (page \pageref{pythonpiton})
{\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 \LuaLaTeX{} (page \pageref{pythonpiton})
+{\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
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_a.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_a.png
index ee2a607de39..ee2a607de39 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_a.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_a.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_b.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_b.png
index 6eb00e138ba..6eb00e138ba 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_b.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_b.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_c.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_c.png
index 78a8fee25d9..78a8fee25d9 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_c.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_c.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_d.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_d.png
index a4020e0f097..a4020e0f097 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_d.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_d.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_e.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_e.png
index be1ff2c03cc..be1ff2c03cc 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_e.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_e.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_f.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_f.png
index 7778d450fbc..7778d450fbc 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-probas_f.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-probas_f.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_a.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_a.png
index 5c059871407..5c059871407 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_a.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_a.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_b.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_b.png
index 90dce1c0ce3..90dce1c0ce3 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_b.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_b.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c.png
index d7fecfb3e7d..d7fecfb3e7d 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c2.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c2.png
index 74e1b905e0c..74e1b905e0c 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_c2.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_c2.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_d.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_d.png
index b9821f36c40..b9821f36c40 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_d.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_d.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_e.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_e.png
index c2de13f5543..c2de13f5543 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-doc-stats_e.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-doc-stats_e.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-solve_a.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_a.png
index d1baeb62fff..d1baeb62fff 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-solve_a.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_a.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-solve_b.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_b.png
index 3059e3d7e0d..3059e3d7e0d 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-solve_b.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_b.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-solve_c.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_c.png
index 9d325571989..9d325571989 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-solve_c.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_c.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/proflycee/pl-solve_d.png b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_d.png
index b929432bb79..b929432bb79 100644
--- a/Master/texmf-dist/doc/latex/proflycee/pl-solve_d.png
+++ b/Master/texmf-dist/doc/latex/proflycee/graphics/pl-solve_d.png
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
index f8a0b9f0aa9..c65512f9e37 100644
--- a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
+++ b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
@@ -3,7 +3,9 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2023/02/04 2.1.9 Aide pour l'utilisation de LaTeX en lycee]
+\ProvidesPackage{ProfLycee}[2023/02/08 2.5.0 Aide pour l'utilisation de LaTeX en lycee]
+% 2.5.0 Passage à des libraires via \useproflyclib
+% 2.2.0 Ajout de clés [Notation] pour les arrangements et combinaisons
% 2.1.9 Correction d'un bug avec les MiniSchémas + version étoilée
% 2.1.8 Suppression des pixelarts, désormais dans le package "PixelArtTikz" !
% 2.1.7 Option booléenne Math pour les figures pave/tetraèdre
@@ -23,55 +25,10 @@
% 2.0.2 Ajout de l'option auto-margin sur piton
% 2.0.1 Chargement de piton uniquement si lua...
% 2.0.0 Refonte des commandes, des options, et de la documentation !!!
-% ------------------------------------------------------------------
-% 1.3.7 Ajout d'un environnement simplifié pour du code python via piton
-% 1.3.6 Ajout d'un "générateur" de trinômes (ou mise en forme basique)
-% 1.3.5 Correction de bugs sur les calculs de probas (loi géométrique)
-% 1.3.4 Ajout des calculs de probas geométriques et hypergeometriques + petits schémas probas
-% 1.3.3 Ajout de commandes pour des arbres de probas classiques, en tikz
-% 1.3.2 Correction d'une commande liée à la conversion bintohex (suppression clé trait)
-% 1.3.1 Ajout d'une option pour ne pas afficher les bords des cases en pixelart
-% 1.3.0 Ajout d'une commande pour mettre en forme une conversion depuis la base 10
-% 1.2.9 Correction d'une incompatibilité avec simplekv (clés vides...)
-% 1.2.8 Correction de l'oubli d'une librairie tikz et remise en forme de la documentation
-% 1.2.7 Calculs de probas pour des lois classiques
-% 1.2.6 Ajout d'un environnement tikz pour des sudomaths personnalisés
-% 1.2.5 Ajout d'une commande pour des boites à moustaches, en tikz
-% 1.2.4 Correction de quelques bugs mineurs, et mise à jour de la doc
-% 1.2.3 Ajout d'un environnement simplifié pour du code python
-% 1.2.2 Ajouts de commandes pour des stats à 2 variables
-% 1.2.1 Amélioration de la gestion du csv pour les pixelart
-% 1.2 Correction d'un méchant bug avec pixelart, erf...
-% 1.1.9 Commande pour du pixelart en tikz (avec option csvii pour compatibilité)
-% 1.1.8 Ajout d'un style mainlevee pour tikz
-% 1.1.7 Ajout de commandes pour des conversions bin/dec/hex
-% 1.1.6 Ajout d'une commande pour déterminer les paramètres d'un régression linéaire par moindres carrés
-% 1.1.5 Ajout de commandes pour "visualiser" le signe de ax+b ou de ax2+bx+c (cf tnsana !)
-% 1.1.4 Ajout d'une commande cercletrigoPL pour, en \TikZ, créer facilement un cercle trigo avec options
-% 1.1.3 Ajout d'une commande ensemble pour créer un ensemble à partir d'une liste
-% 1.1.2 Modifs mineures
-% 1.1.1 Modification mineure de l'environnement CF, avec prise de charge de la taille du texte !
-% 1.1.0 Ajout d'une commande tetraPL pour un tetraèdre dans un environnement TikZ
-% 1.0.9 Ajout d'une commande pavePL pour un pave droit dans un environnement TikZ
-% 1.0.8 Ajout d'une commande liencapytale pour créer un cartouche "comme sur capytale"
-% 1.0.7 Option [build] pour placer les fichiers temporaires dans un répertoire build (désactivée par défaut)
-% 1.0.6 Option [nominted] pour éviter de charger minted & nettoyage amssymb
-% 1.0.5 Environnement code python avec minted
-% 1.0.4 Environnement pour simuler terminal windows & linux
-% 1.0.3 Environnement pour présenter du pseudocode
-% 1.0.2 Environnement pour présenter du code python (avec pythontex)
-% 1.0.1 Modif mineure du chargement de xcolor (compatibilité avec d'autres packages notamment...)
-% 1.0 Version initiale
%------Option(s)
-\newif\if@nonshellescape \@nonshellescapefalse
-\DeclareOption{nonshellescape}{\@nonshellescapetrue}
\newif\if@build \@buildfalse
\DeclareOption{build}{\@buildtrue}
-\newif\if@pythontex \@pythontexfalse
-\DeclareOption{pythontex}{\@pythontextrue}
-%\newif\if@csvii \@csviifalse
-%\DeclareOption{csvii}{\@csviitrue}
\DeclareOption*{}
\ProcessOptions\relax
@@ -82,7 +39,6 @@
\RequirePackage{tkz-tab}
\RequirePackage{pgf,pgffor}
\RequirePackage{ifthen}
-%\RequirePackage{xparse}
\RequirePackage{xkeyval}
\RequirePackage{xstring}
\RequirePackage{xintexpr}
@@ -92,25 +48,18 @@
\RequirePackage{simplekv}
\RequirePackage{listofitems}
\RequirePackage{tabularray}
-%\RequirePackage{hvlogos}
\RequirePackage{hologo}
\RequirePackage{fancyvrb}
\RequirePackage{siunitx} %test avec v3
\sisetup{%
locale=FR,output-decimal-marker={,},%
- mode = match, propagate-math-font = true,%
- reset-math-version = false, reset-text-family = false,%
- reset-text-series = false, reset-text-shape = false,%
- text-family-to-math = true, text-series-to-math = true,%
- group-minimum-digits=4%
+ mode=match,propagate-math-font=true,%
+ reset-math-version=false,reset-text-family=false,%
+ reset-text-series=false,reset-text-shape=false,%
+ text-family-to-math=true,text-series-to-math=true,%
+ group-minimum-digits=4
}%
\RequirePackage{fontawesome5}
-%\if@csvii
-% \RequirePackage[legacy]{csvsimple}
-%\else
-% \RequirePackage{expl3}
-% \RequirePackage[l3]{csvsimple}
-%\fi
%librairies tikz
\usetikzlibrary{calc}
\usetikzlibrary{decorations}
@@ -125,28 +74,35 @@
%divers
\RequirePackage{iftex}
-%python
-\if@pythontex
- \RequirePackage[gobble=auto]{pythontex}
- \setpythontexlistingenv{pythont} %pour ne pas télescoper lstlistings (?)
- \if@build
- \setpythontexoutputdir{./build/pythontex-files-\jobname} %essai de modif pythontex répertoire build
- \fi
-\fi
-
-%shellescape
-\if@nonshellescape
- %on ne charge pas minted et la librairie tcbox
-\else
- \if@build
- %on charge minted avec le répertoire build
- \RequirePackage[outputdir=build]{minted}
- \fi
- %on charge minted via la librairie tcbox
- \tcbuselibrary{minted}
-\fi
+%%------LIBRAIRIES/BIBIOTHÈQUES
+\newcommand\useproflyclib[1]{%ajout d'une commande "librairie" pour charger des modules
+ \IfSubStr{#1}{piton}%
+ {%
+ \input{proflycee-tools-piton.tex}
+ }%
+ {}%
+ \IfSubStr{#1}{minted}%
+ {%
+ \if@build
+ \RequirePackage[outputdir=build]{minted} %on charge minted avec le répertoire build
+ \fi
+ \tcbuselibrary{minted} %on charge minted via la librairie tcbox
+ \input{proflycee-tools-minted.tex}
+ }%
+ {}%
+ \IfSubStr{#1}{pythontex}%
+ {%
+ \RequirePackage[gobble=auto]{pythontex}
+ \setpythontexlistingenv{pythont} %pour ne pas télescoper lstlistings (?)
+ \if@build
+ \setpythontexoutputdir{./build/pythontex-files-\jobname} %essai de modif pythontex répertoire build
+ \fi
+ \input{proflycee-tools-pythontex.tex}
+ }%
+ {}%
+}
-%-----------PRESENTATIONDECODES--------------
+%%------PRESENTATIONDECODES
\NewTCBListing{PresentationCode}{ O{ForestGreen} m }{%
sharp corners=downhill,enhanced,arc=12pt,skin=bicolor,%
colback=#1!5!white,colframe=#1!75!black,colbacklower=White,%
@@ -163,9 +119,9 @@
#2
}
-%---------------SPLINES----------------------
-%------commande utile pour extraire des infos d'une liste
-\newcommand\extractcoeff[2]{% #1=liste & #2=numero
+%%------SPLINES
+%commande utile pour extraire des infos d'une liste
+\newcommand\extractcoeff[2]{%1=liste,2=numero
\setsepchar{§}%
\readlist*\lcoeffs{#1}
\ifnum \lcoeffslen=1
@@ -179,7 +135,7 @@
\fi
}
-%------splines en tikz avec ..controls
+%splines en tikz avec ..controls
\defKV[spline]{%
Epaisseur=\def\SPLepaisseur{#1},%
Couleur=\def\SPLcouleur{#1},%
@@ -244,7 +200,7 @@
{}
}
-%------tangente(s) en TikZ, avec point/dérivée ou liste points/dérivées
+%tangente(s) en TikZ, avec point/dérivée ou liste points/dérivées
\defKV[tgte]{%
Epaisseur=\def\TGTepaisseur{#1},%
Couleur=\def\TGTcouleur{#1},%
@@ -274,7 +230,7 @@
\draw[line width=\TGTepaisseur,\TGTcouleur,domain=\TGTDEB:\TGTFIN,\TGTstyle] plot (\x,{\fprimea*(\x-\xa)+\ya}) ;%
}
-%----------------FENÊTRE CALCUL FORMEL
+%%------FENÊTRE CALCUL FORMEL
\newcommand\CFchap{\textasciicircum}
\newcounter{CFnum}
%def des clés
@@ -305,7 +261,7 @@
\useKVdefault[paramfenxcas]%
\setKV[paramfenxcas]{#1}% on paramètres les nouvelles clés et on les simplifie
}
-%def des clés
+
\defKV[paramlgxcas]{%
HautCmd=\def\CFhle{#1},%
HautRes=\def\CFhlr{#1}
@@ -379,163 +335,7 @@
{}
}
-\if@pythontex
-%=========CONSOLEPYTHON=========== OK !!
-\defKV[envpythonconsole]{%
- Largeur=\def\CSPYlargeur{#1},%
- Centre=\testboolKV{#1}
- {\def\hookcenterpre{\begin{center}}\def\hookcenterpost{\end{center}}}
- {\def\hookcenterpre{\begin{flushleft}}\def\hookcenterpost{\end{flushleft}}},%
- TaillePolice=\def\CSPYfonte{#1},%
- EspacementVertical=\def\CSPYstretch{#1}
-}
-
-\setKVdefault[envpythonconsole]{%
- Largeur=\linewidth,%
- Centre=true,%
- Label=true,%
- TaillePolice=\footnotesize,%
- EspacementVertical=1
-}
-
-\newenvironment{ConsolePythontex}[1][]{%
- \useKVdefault[envpythonconsole]%
- \setKV[envpythonconsole]{#1}% on paramètres les nouvelles clés et on les simplifie
- \VerbatimEnvironment
- \hookcenterpre
- \begin{minipage}{\CSPYlargeur}
- \ifboolKV[envpythonconsole]{Label}%si label
- {\begin{pyconsole}[][%
- framesep=3mm,frame=single,fontsize=\CSPYfonte,framerule=1pt,rulecolor=\color{ForestGreen},label={[\scriptsize Début de la console python]\scriptsize Fin de la console python},baselinestretch=\CSPYstretch]}%
- {\begin{pyconsole}[][%
- framesep=3mm,frame=single,fontsize=\CSPYfonte,framerule=1pt,rulecolor=\color{ForestGreen},baselinestretch=\CSPYstretch]}
- }
- {
- \end{pyconsole}
- \end{minipage}
- \hookcenterpost
-}
-
-%=========CODEPYTHONTEX=========== OK!!
-\defKV[envpythonverb]{%
- Largeur=\def\CODPYlargeur{#1},%
- TaillePolice=\def\CODPYfonte{#1},%
- EspacementVertical=\def\CODPYstretch{#1},%
- Centre=\testboolKV{#1}
- {\def\verbcenterpre{\begin{center}}\def\verbcenterpost{\end{center}}}
- {\def\verbcenterpre{}\def\verbcenterpost{}}
-}
-
-\setKVdefault[envpythonverb]{%
- Largeur=\linewidth,%
- Centre=true,%
- Lignes=true,%
- TaillePolice=\footnotesize,%
- EspacementVertical=1
-}
-
-\tcbset{stylepythontex/.style={%
- enhanced,boxrule=1.25pt,%
- sharp corners=downhill,arc=12pt,
- before skip=12pt,after skip=12pt,%
- top=10pt,bottom=1mm,rightupper=4pt,%leftupper=25pt,
- attach boxed title to top right={yshift=-\tcboxedtitleheight},
- boxed title style={
- size=small,colback=ForestGreen!25,boxrule=1.25pt,
- colframe=Green,boxsep=1.25pt,
- sharp corners=downhill,
- arc=12pt,
- top=2pt,bottom=1pt,left=6pt,right=6pt
- },
- fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
- title={\scriptsize\faPython}\:Code Python\vphantom{p},
- watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
- }
-}
-
-\tcbset{stylepythonnolineos/.style={%
- stylepythontex,leftupper=10pt,
- colframe=Green,colback=ForestGreen!5,%
-% fontlower=\small,%
- before upper=\renewcommand\theFancyVerbLine{\scriptsize\ttfamily\color{Gray}\arabic{FancyVerbLine}}
- }
-}
-
-\tcbset{stylepythonlineos/.style={%
- stylepythontex,leftupper=25pt,
- colframe=Green,colback=ForestGreen!5,%
-% fontlower=\small,%
- before upper=\renewcommand\theFancyVerbLine{\scriptsize\ttfamily\color{Gray}\arabic{FancyVerbLine}}
- }
-}
-
-\newtcolorbox{tcpythontexcode}[1][\linewidth]{%
- width=#1,stylepythonlineos
-}
-
-\newtcolorbox{tcpythontexcodeno}[1][\linewidth]{%
- width=#1,stylepythonnolineos
-}
-
-\newenvironment{CodePythontex}[1][]{%
- \useKVdefault[envpythonverb]%
- \setKV[envpythonverb]{#1}% on paramètres les nouvelles clés et on les simplifie
- \VerbatimEnvironment
- \verbcenterpre
- \ifboolKV[envpythonverb]{Lignes}%si lignes=true
- {\begin{tcpythontexcode}[\CODPYlargeur]}
- {\begin{tcpythontexcodeno}[\CODPYlargeur]}
- \ifboolKV[envpythonverb]{Lignes}%si lignes=true
- {\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,numbersep=10pt,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
- {\begin{pyverbatim}[][numbers=none,numbersep=0pt,fontsize=\CODPYfonte,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
- }
- {
- \end{pyverbatim}
- \ifboolKV[envpythonverb]{Lignes}%si lignes=true
- {\end{tcpythontexcode}}
- {\end{tcpythontexcodeno}}
- \verbcenterpost
-}
-\fi
-
-%=========PYTHONMINTED========= OK !!
-\tcbset{pytmintedno/.style={%
- listing engine=minted,minted style=colorful,
- minted language=python,listing only,
- minted options={tabsize=4,fontsize=\footnotesize,autogobble},
- }
-}
-
-\tcbset{pytminted/.style={%
- listing engine=minted,minted style=colorful,
- minted language=python,listing only,
- minted options={tabsize=4,fontsize=\footnotesize,autogobble,xleftmargin=16pt,linenos,numbersep=10pt},
- }
-}
-
-\DeclareTCBListing{CodePythonMinted}{ s O{12cm} O{} }{% étoilée sans numéro, taille puis options...
- \IfBooleanTF{#1}{pytmintedno}{pytminted},
- enhanced,width=#2,#3,
- colframe=Green,colback=ForestGreen!5,%
- boxrule=1.25pt,
- sharp corners=downhill,arc=12pt,
- before skip=12pt,after skip=12pt,%
- leftupper=8pt,top=10pt,bottom=4pt,rightupper=4pt,%
- attach boxed title to top right={yshift=-\tcboxedtitleheight},
- boxed title style={
- size=small,colback=ForestGreen!25,boxrule=1.25pt,
- colframe=Green,boxsep=1.25pt,
- sharp corners=downhill,
- arc=12pt,
- top=2pt,bottom=1pt,left=6pt,right=6pt
- },
- fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
- title={\scriptsize\faPython}\:Code Python\vphantom{y},
- watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
- before upper=\renewcommand{\theFancyVerbLine}{\scriptsize\ttfamily\color{Green}\arabic{FancyVerbLine}}
-}
-
-%=======STYLE ALGO LST========= OK !
+%%------STYLE ALGO LST
\ifluatex
\tcbuselibrary{listings}
\lstdefinelanguage{langnat}{%
@@ -586,7 +386,7 @@
}
\fi
-%=======PYTHONLISTINGS========= OK !!
+%%------PYTHONLISTINGS
\tcbset{stylepythonlst/.style={%
enhanced,boxrule=1.25pt,%
leftupper=10pt,
@@ -629,63 +429,10 @@
\NewTCBInputListing{\CodePythonLstFichier}{ s O{\linewidth} m m }{
\IfBooleanTF{#1}{stylepythonlstnolineos}{stylepythonlstlineos},
width=#2,#3,
- listing file={#4}}
-
-%=========PYTHONPITON========== OK !!
-\defKV[envpiton]{%
- Largeur=\def\CODPITlargeur{#1},%
- Alignement=\def\CODPITalign{#1},%
- TaillePolice=\def\CODPITfonte{#1}
-}
-
-\setKVdefault[envpiton]{%
- Largeur=\linewidth,%
- Alignement=center,%
- Lignes=true,%
- Gobble=true,%
- TaillePolice=\footnotesize
+ listing file={#4}
}
-\tcbset{stylepiton/.style={%
- enhanced,boxrule=1.25pt,%
- sharp corners=downhill,arc=12pt,
- before skip=12pt,after skip=12pt,%
- top=10pt,bottom=1mm,rightupper=4pt,%leftupper=25pt,
- attach boxed title to top right={yshift=-\tcboxedtitleheight},
- boxed title style={
- size=small,colback=ForestGreen!25,boxrule=1.25pt,
- colframe=Green,boxsep=1.25pt,
- sharp corners=downhill,
- arc=12pt,
- top=2pt,bottom=1pt,left=6pt,right=6pt
- },
- fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
- title={\scriptsize\faPython}\:Code Python\vphantom{p},
- watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
- }
-}
-
-\ifluatex
- \RequirePackage{piton}
- \NewPitonEnvironment{CodePiton}{ O{} }%
- {%
- \useKVdefault[envpiton]%
- \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie
- \ifboolKV[envpiton]{Lignes}%si lignes=true
- {\PitonOptions{left-margin=auto,all-line-numbers}}%
- {}%
- \ifboolKV[envpiton]{Gobble}%si gobble=true
- {\PitonOptions{tabs-auto-gobble}}%
- {}%
- \PitonOptions{break-lines,indent-broken-lines}%
- \begin{tcolorbox}[stylepiton,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontupper=\CODPITfonte,fontlower=\CODPITfonte,\CODPITalign]
- }%
- {%
- \end{tcolorbox}%
- }%
-\fi
-
-%=========PSEUDOCODE=========== OK !!
+%%------PSEUDOCODE
%language pseudocode listings
\lstdefinestyle{pseudocodePL}{%
language=langnat,
@@ -768,7 +515,7 @@
}
}
-%============FakeTerm=========== OK !!
+%%------FakeTerm
%couleurs (inspirées par termsim !)
\definecolor{PLmpurple}{RGB}{48,10,36}
\definecolor{PLmgray}{RGB}{70,72,67}
@@ -912,14 +659,14 @@
width=#1,#3
}
-%============CartoucheCapytale========= OK !!
+%%------CartoucheCapytale
\definecolor{vertcapyt}{rgb}{0.0,0.5,0.0}
%\definecolor{vertcapyt}{HTML}{008000}
\DeclareTotalTCBox{\CartoucheCapytale}{ s O{} m }
{enhanced,size=fbox,on line,arc=3pt,colback=vertcapyt,colframe=vertcapyt,fontupper=\IfBooleanTF{#1}{\ttfamily}{\sffamily}\bfseries,colupper=white}%
{#3#2~{\scriptsize\faLink}}
-%============PaveDroitTikZ============= OK !!
+%%------PaveDroitTikZ
\defKV[paramspave]{%
Largeur=\xdef\PFPaveLg{#1},%
Profondeur=\xdef\PFPavePf{#1},%
@@ -990,7 +737,7 @@
(\PaveD)--(\PaveH) ;}
}
-%============TétraèdreTikZ============= OK !!
+%%------TétraèdreTikZ
\defKV[paramstetra]{%
Largeur=\xdef\PFTetraLg{#1},%
Profondeur=\xdef\PFTetraPf{#1},%
@@ -1040,7 +787,7 @@
{\draw[dashed,\PFTetraThick] (\TetraA)--(\TetraC) ;}
}
-%============EnsembleList============== OK !!
+%%------EnsembleList
\defKV[kvensemble]{%
Sep=\def\PLenssep{#1},%
Option=\def\PLensopt{#1}
@@ -1056,11 +803,11 @@
\useKVdefault[kvensemble]%
\setKV[kvensemble]{#1}%
\ifboolKV[kvensemble]{Mathpunct}%
- {\left\lbrace \PLensopt{} \mathpunct{} \StrSubstitute{#2}{/}{\mathpunct{}{\PLenssep}\mathpunct{}} \mathpunct{} \right\rbrace}%
+ {\left\lbrace \PLensopt{} \mathpunct{} \StrSubstitute{#2}{/}{\mathpunct{}{\PLenssep}\mathpunct{}} \right\rbrace}%
{\left\lbrace \PLensopt{} \StrSubstitute{#2}{/}{{\PLenssep}} \right\rbrace}
}
-%===============SimplFrac============== OK !!
+%%------SimplFrac
\DeclareDocumentCommand\ConversionFraction{ O{} m }{% argument optionnel [d ou t] puis argument mandataire {calcul ou fraction}
\def\calculargument{\xintPRaw{\xintIrr{\xinteval{#2}}}}%on calcule et on transforme en A/B
\IfSubStr{\calculargument}{/}%on teste si le symbole / apparaît
@@ -1075,7 +822,7 @@
}%
}
-%================CabWeb================ OK !!
+%%------CabWeb
\defKV[webrecurr]{%
Fct=\def\PLRecurfct{#1},%
Nom=\def\PLRecurnom{#1},%
@@ -1097,7 +844,6 @@
TailleLabel=\small
}
-%\newcommand\recurr[1][]{%
\NewDocumentCommand\ToileRecurrence{ O{} O{thick,color=magenta} O{dotted} }{
%<clés> + <style cabweb> + <style supplémentaire pointillés>
\useKVdefault[webrecurr]%
@@ -1126,7 +872,7 @@
}
}
-%================CercleTrigo=========== OK !!
+%%------CercleTrigo
\defKV[cercletrigo]{%
Rayon=\def\PLcerclerayon{#1},%
Epaisseur=\def\PLcerclethick{#1},%
@@ -1256,7 +1002,7 @@
{}
}
-%==================AideTds============= OK !!
+%%------AideTds
\defKV[aidetds]{%
Code=\def\tdsparam{#1},%
Couleur=\def\tdscouleur{#1},%
@@ -1357,7 +1103,6 @@
}
\NewDocumentCommand\MiniSchemaSignes{ s O{} D<>{} }{%
-%\newcommand\MiniSchemaSignes[1][]{%
\useKVdefault[aidetds]
\setKV[aidetds]{#2}
%simplification des codes
@@ -1439,7 +1184,7 @@
\path (ZZZ.east) + (#4,0) pic[right,scale=#3,every node/.style={scale=#3}] {code={\MiniSchemaSignes[#1]}} ;
}
-%=============RegressionLinéaire======= OK !!
+%%------RegressionLinéaire
%calcul des paramètres
\defKV[coeffreglin]{%
NomCoeffa=\def\RegLinCoeffa{#1},%
@@ -1535,7 +1280,7 @@
\foreach \i in {1,2,...,\LNB} {\filldraw[\RegLinNuageCouleur] ({\LX[\i]-\RegLinNuageOx},{\LY[\i]-\RegLinNuageOy}) circle[radius=\RegLinNuageTaille] ;}
}
-%=============ConversionsBases========= OK !!
+%%------ConversionsBases
%dec->bin avec blocs de 4 chiffres
\setKVdefault[CONVDECBIN]{%
AffBase=true
@@ -1551,10 +1296,6 @@
{\num{#3}\ifboolKV[CONVDECBIN]{AffBase}{_{10}}{}=\num[digit-group-size=4,minimum-integer-digits=\nbgrp]{\resbrut}\ifboolKV[CONVDECBIN]{AffBase}{_{2}}{}}
}
-%bin->hexa avec blocs de 4 chiffres
-%\defKV[CONVBINHEX]{%
-% trait=\def\epcrochet{#1}
-%}
\setKVdefault[CONVBINHEX]{%
%trait=0.5pt,%
AffBase=true,%
@@ -1717,87 +1458,13 @@
\num{\convertbasetobasedix{#2}{#3}}\ifboolKV[CONVTODEC]{AffBase}{_{10}}{}%
}
-%==============MainLevée TikZ========== OK !!
+%%------MainLevée TikZ
\tikzset{%
mainlevee/.style args={#1et#2}{decorate,decoration={random steps,segment length=#1,amplitude=#2}},
mainlevee/.default={5mm et 0.6pt}
}
-%%==============PixelArt TikZ=========== OK !! :=> vers le package PixelArtTikz !!
-%\defKV[pixelarttkz]{%
-% Codes=\def\PATlettres{#1},%
-% Couleurs=\def\PATcouleurs{#1},%
-% Symboles=\def\PATchiffres{#1},%
-% Style=\def\PATtaille{#1}
-%}
-%
-%\setKVdefault[pixelarttkz]{%
-% Style=\scriptsize,%
-% Correction=false,%
-% Symb=false,%
-% BordCases=true
-%}
-%
-%\newcommand\PixelArtTikz[2][]{%
-% \useKVdefault[pixelarttkz]
-% \setKV[pixelarttkz]{#1}
-% %affichage du corrigé
-% \ifboolKV[pixelarttkz]{Correction}
-% {%
-% \csvloop{file=#2,no head,command={%
-% \foreach \l [count=\n] in \csvline {%
-% \StrDel{\l}{ }[\l]
-% \setsepchar{,}
-% \readlist*\LCPA\PATcouleurs
-% \StrPosition{\PATlettres}{\l}[\pixcnt]%
-% \xintifboolexpr{\pixcnt>0}%
-% {%
-% \itemtomacro\LCPA[\pixcnt]\pixcol%
-% \ifboolKV[pixelarttkz]{BordCases}%
-% {\draw[fill=\pixcol] ({\n-0.5},{-\thecsvrow+0.5}) rectangle ({\n+0.5},{-\thecsvrow-0.5}) ;}%
-% {\filldraw[\pixcol] ({\n-0.5},{-\thecsvrow+0.5}) rectangle ({\n+0.5},{-\thecsvrow-0.5}) ;}%
-% %
-% }%
-% {}
-% }
-% }
-% }
-% }
-% {%
-% \ifboolKV[pixelarttkz]{Symb}
-% {%affichage du pixelart versions chiffres si besoin
-% \csvloop{file=#2,no head,command={%
-% \foreach \l [count=\n] in \csvline {%
-% \StrDel{\l}{ }[\l]
-% \setsepchar{,}
-% \readlist*\LCNA\PATchiffres
-% \StrPosition{\PATlettres}{\l}[\pixpos]%
-% \xintifboolexpr{\pixpos>0}%
-% {%
-% \itemtomacro\LCNA[\pixpos]\pixchf%
-% \draw ({\n-0.5},{-\thecsvrow+0.5}) rectangle ({\n+0.5},{-\thecsvrow-0.5}) node[inner sep=0,midway,font=\PATtaille] {\pixchf} ;%
-% }
-% {}%
-% }
-% }
-% }
-% }
-% {%affichage du pixelart versions lettres ou chiffres simples (<=9)
-% \csvloop{file=#2,no head,command={%
-% \foreach \l [count=\n] in \csvline {%
-% \StrDel{\l}{ }[\l]
-% \IfSubStr{\PATlettres}{\l}%
-% {%
-% \draw ({\n-0.5},{-\thecsvrow+0.5}) rectangle ({\n+0.5},{-\thecsvrow-0.5}) node[inner sep=0,midway,font=\PATtaille] {\l};}
-% {}
-% }
-% }
-% }
-% }
-% }
-%}
-
-%=========STATS2VAR=========
+%%------STATS2VAR
%variables directement dans tikzpicture
\tikzset{%
Ox/.store in=\axexOx,Ox/.default=0,Ox=0,%essai
@@ -2159,7 +1826,7 @@
\end{tikzpicture}%
}
-%=============BOITES MOUSTACHES======== OK !!
+%%------BOITES MOUSTACHES
\defKV[boiteamoustaches]{%
Couleur=\def\BaMCouleur{#1},%
Elevation=\def\BaMElevation{#1},%
@@ -2242,7 +1909,7 @@
{}
}
-%================SUDOMATHS============= OK !!
+%%------SUDOMATHS
\defKV[PLTIKZSUDOM]{%
CouleurTexte=\def\PLSMcoultexte{#1},%
Epaisseur=\def\PLSMepf{#1},%
@@ -2369,7 +2036,7 @@
\end{tikzpicture}
}
-%================LOISPROBAS============ OK !!
+%%------LOISPROBAS
%calculs "simples"
\newcommand\CalcBinomP[3]{%npk
\xintFloatToDecimal{\xintfloateval{binomial(#1,#3)*#2^#3*(1-#2)^(#1-#3)}}
@@ -2599,7 +2266,7 @@
}
}
-%===============CONVFROMDEC============ OK !!
+%%------CONVFROMDEC
\newcommand\PLnoeud[2]{\tikz[remember picture,baseline=(#1.base)]\node[shape=rectangle,inner sep=0pt](#1){#2};}
\ExplSyntaxOn
\newcommand\convertbasedixtobase[2]{%
@@ -2658,7 +2325,7 @@
}{}%
}
-%===============ARBRESPROBAS=========== OK !!
+%%------ARBRESPROBAS
\defKV[PLTIKZARBRE]{%
Unite=\def\PLAPunite{#1},%
EspaceNiveau=\def\PLAPespniv{#1},%
@@ -3056,7 +2723,7 @@
\end{tikzpicture}
}
-%==============SCHEMASPROBAS============= OK!
+%%------SCHEMASPROBAS
%densites utiles
\def\densnorm#1{1/(sqrt(2*pi))*exp(-0.5*(#1*#1))}
\def\densexpo#1{exp(-#1)}
@@ -3131,7 +2798,7 @@
\end{tikzpicture}
}
-%===============TRINOMEALEA============== OK!
+%%------TRINOMEALEA
\setKVdefault[trinomealea]{%
Alea=false,%
Anegatif=true
@@ -3171,7 +2838,7 @@
}
-%=================PRESPGCD=============== OK!
+%%------PRESPGCD
\DeclareMathOperator{\PLpgcd}{PGCD}
\defKV[prespgcd]{%
Couleur=\def\PLPGCDCouleur{#1},%
@@ -3234,7 +2901,7 @@
}{}%
}
-%================TVISOLUTION============= OK!
+%%------TVISOLUTION
\defKV[dichoto]{%
NomFct=\def\DHTnomfct{#1},%
va=\def\DHTva{#1},%
@@ -3271,7 +2938,7 @@
}%
}
-%=================CALCSRECUR============= OK!
+%%------CALCSRECUR
\NewDocumentCommand\CalculInterneTermeRecurrence{ m m m m }{%pas forcément utile
\xintdeffloatfunc varfctrecur(x) := #1 ;%
\xdef\vartmp{#3}%
@@ -3423,7 +3090,7 @@
}%
}
-%=================ALEATOIRES============= OK!
+%%------ALEATOIRES
\ExplSyntaxOn
\NewDocumentCommand\TriListeCroiss{m}
{
@@ -3502,7 +3169,7 @@
\StrSubstitute{#2}{,}{\TAEEsep}[#2]%on change le séparateur si besoin
}
-%================SIMPLIFRACINES============ OK!
+%%------SIMPLIFRACINES
\DeclareDocumentCommand\SimplificationRacine{ m }{% argument mandataire {calcul ou fraction}
\xdef\calculargument{\xintIrr{\xinteval{#1}}}%
\IfEndWith{\calculargument}{/1}%
@@ -3544,7 +3211,7 @@
}%
}
-%================MESUREPPALE============= OK!
+%%------MESUREPPALE
\setKVdefault[MesurePpale]{%
Crochets=false,
d=false
@@ -3594,7 +3261,7 @@
}%
}
-%================DICHOTOMIE============== OK!
+%%------DICHOTOMIE
\defKV[SolDichoto]{%
Precision=\xdef\DICHOTOstep{#1},%
Intervalle=\xdef\DICHOTOinterv{#1},%
@@ -3636,13 +3303,16 @@
\expandafter\def\csname#3a\endcsname{\fpeval{round(\varvalm,\DICHOTOstep)}}%
}
-%=================aNp/Cnp================ OK!
+%%------aNp/Cnp
\setKVdefault[anpCnp]{%
- Formule=false
+ Formule=false,%
+ Notation=false,%
+ NotationAncien=false
}
\NewDocumentCommand\Arrangement{ s O{} m m }{%
\useKVdefault[anpCnp]%
\setKV[anpCnp]{#2}%
+ \ifboolKV[anpCnp]{Notation}{A_{#4}^{#3}=}{}%
\ifboolKV[anpCnp]{Formule}{\frac{#4!}{\inteval{#4-#3}!}=}{}%
\IfBooleanTF{#1}%
{\fpeval{fact(#4)/fact(#4-#3)}}%non formaté
@@ -3651,6 +3321,8 @@
\NewDocumentCommand\Combinaison{ s O{} m m }{%
\useKVdefault[anpCnp]%
\setKV[anpCnp]{#2}%
+ \ifboolKV[anpCnp]{Notation}{\binom{#4}{#3} =}{}%
+ \ifboolKV[anpCnp]{NotationAncien}{C_{#4}^{#3}=}{}%
\ifboolKV[anpCnp]{Formule}{\frac{#4!}{#3! \times \inteval{#4-#3}!}=}{}%
\IfBooleanTF{#1}%
{\fpeval{fact(#4)/(fact(#3)*fact(#4-#3))}}%non formaté
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
new file mode 100644
index 00000000000..028199ee6d7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
@@ -0,0 +1,48 @@
+% proflycee-tools-minted.tex
+% Copyright 2023 Cédric Pierquet
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+
+%%------PYTHONMINTED
+\tcbset{pytmintedno/.style={%
+ listing engine=minted,minted style=colorful,
+ minted language=python,listing only,
+ minted options={tabsize=4,fontsize=\footnotesize,autogobble},
+ }
+}
+
+\tcbset{pytminted/.style={%
+ listing engine=minted,minted style=colorful,
+ minted language=python,listing only,
+ minted options={tabsize=4,fontsize=\footnotesize,autogobble,xleftmargin=16pt,linenos,numbersep=10pt},
+ }
+}
+
+\DeclareTCBListing{CodePythonMinted}{ s O{12cm} O{} }{% étoilée sans numéro, taille puis options...
+ \IfBooleanTF{#1}{pytmintedno}{pytminted},
+ enhanced,width=#2,#3,
+ colframe=Green,colback=ForestGreen!5,%
+ boxrule=1.25pt,
+ sharp corners=downhill,arc=12pt,
+ before skip=12pt,after skip=12pt,%
+ leftupper=8pt,top=10pt,bottom=4pt,rightupper=4pt,%
+ attach boxed title to top right={yshift=-\tcboxedtitleheight},
+ boxed title style={
+ size=small,colback=ForestGreen!25,boxrule=1.25pt,
+ colframe=Green,boxsep=1.25pt,
+ sharp corners=downhill,
+ arc=12pt,
+ top=2pt,bottom=1pt,left=6pt,right=6pt
+ },
+ fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
+ title={\scriptsize\faPython}\:Code Python\vphantom{y},
+ watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
+ before upper=\renewcommand{\theFancyVerbLine}{\scriptsize\ttfamily\color{Green}\arabic{FancyVerbLine}}
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
new file mode 100644
index 00000000000..5e97e82cc1f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
@@ -0,0 +1,67 @@
+% proflycee-tools-piton.tex
+% Copyright 2023 Cédric Pierquet
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+
+\RequirePackage{iftex}
+
+%%------PYTHONPITON
+\defKV[envpiton]{%
+ Largeur=\def\CODPITlargeur{#1},%
+ Alignement=\def\CODPITalign{#1},%
+ TaillePolice=\def\CODPITfonte{#1}
+}
+
+\setKVdefault[envpiton]{%
+ Largeur=\linewidth,%
+ Alignement=center,%
+ Lignes=true,%
+ Gobble=true,%
+ TaillePolice=\footnotesize
+}
+
+\tcbset{stylepiton/.style={%
+ enhanced,boxrule=1.25pt,%
+ sharp corners=downhill,arc=12pt,
+ before skip=12pt,after skip=12pt,%
+ top=10pt,bottom=1mm,rightupper=4pt,%leftupper=25pt,
+ attach boxed title to top right={yshift=-\tcboxedtitleheight},
+ boxed title style={
+ size=small,colback=ForestGreen!25,boxrule=1.25pt,
+ colframe=Green,boxsep=1.25pt,
+ sharp corners=downhill,
+ arc=12pt,
+ top=2pt,bottom=1pt,left=6pt,right=6pt
+ },
+ fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
+ title={\scriptsize\faPython}\:Code Python\vphantom{p},
+ watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50
+ }
+}
+
+\ifluatex
+\RequirePackage{piton}
+\NewPitonEnvironment{CodePiton}{ O{} }%
+{%
+ \useKVdefault[envpiton]%
+ \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie
+ \ifboolKV[envpiton]{Lignes}%si lignes=true
+ {\PitonOptions{left-margin=auto,all-line-numbers}}%
+ {}%
+ \ifboolKV[envpiton]{Gobble}%si gobble=true
+ {\PitonOptions{tabs-auto-gobble}}%
+ {}%
+ \PitonOptions{break-lines,indent-broken-lines}%
+ \begin{tcolorbox}[stylepiton,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontupper=\CODPITfonte,fontlower=\CODPITfonte,\CODPITalign]
+}%
+{%
+ \end{tcolorbox}%
+}
+\fi
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex
new file mode 100644
index 00000000000..a27acf32489
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex
@@ -0,0 +1,129 @@
+% proflycee-tools-pythontex.tex
+% Copyright 2023 Cédric Pierquet
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+
+%%------CONSOLEPYTHON
+\defKV[envpythonconsole]{%
+ Largeur=\def\CSPYlargeur{#1},%
+ Centre=\testboolKV{#1}
+ {\def\hookcenterpre{\begin{center}}\def\hookcenterpost{\end{center}}}
+ {\def\hookcenterpre{\begin{flushleft}}\def\hookcenterpost{\end{flushleft}}},%
+ TaillePolice=\def\CSPYfonte{#1},%
+ EspacementVertical=\def\CSPYstretch{#1}
+}
+
+\setKVdefault[envpythonconsole]{%
+ Largeur=\linewidth,%
+ Centre=true,%
+ Label=true,%
+ TaillePolice=\footnotesize,%
+ EspacementVertical=1
+}
+
+\newenvironment{ConsolePythontex}[1][]
+{%
+ \useKVdefault[envpythonconsole]%
+ \setKV[envpythonconsole]{#1}% on paramètres les nouvelles clés et on les simplifie
+ \VerbatimEnvironment
+ \hookcenterpre
+ \begin{minipage}{\CSPYlargeur}
+ \ifboolKV[envpythonconsole]{Label}%si label
+ {\begin{pyconsole}[][%
+ framesep=3mm,frame=single,fontsize=\CSPYfonte,framerule=1pt,rulecolor=\color{ForestGreen},label={[\scriptsize Début de la console python]\scriptsize Fin de la console python},baselinestretch=\CSPYstretch]}%
+ {\begin{pyconsole}[][%
+ framesep=3mm,frame=single,fontsize=\CSPYfonte,framerule=1pt,rulecolor=\color{ForestGreen},baselinestretch=\CSPYstretch]}
+}%
+{%
+ \end{pyconsole}
+ \end{minipage}
+ \hookcenterpost
+}
+
+%=========CODEPYTHONTEX=========== OK!!
+\defKV[envpythonverb]{%
+ Largeur=\def\CODPYlargeur{#1},%
+ TaillePolice=\def\CODPYfonte{#1},%
+ EspacementVertical=\def\CODPYstretch{#1},%
+ Centre=\testboolKV{#1}
+ {\def\verbcenterpre{\begin{center}}\def\verbcenterpost{\end{center}}}
+ {\def\verbcenterpre{}\def\verbcenterpost{}}
+}
+
+\setKVdefault[envpythonverb]{%
+ Largeur=\linewidth,%
+ Centre=true,%
+ Lignes=true,%
+ TaillePolice=\footnotesize,%
+ EspacementVertical=1
+}
+
+\tcbset{stylepythontex/.style={%
+ enhanced,boxrule=1.25pt,%
+ sharp corners=downhill,arc=12pt,
+ before skip=12pt,after skip=12pt,%
+ top=10pt,bottom=1mm,rightupper=4pt,%leftupper=25pt,
+ attach boxed title to top right={yshift=-\tcboxedtitleheight},
+ boxed title style={
+ size=small,colback=ForestGreen!25,boxrule=1.25pt,
+ colframe=Green,boxsep=1.25pt,
+ sharp corners=downhill,
+ arc=12pt,
+ top=2pt,bottom=1pt,left=6pt,right=6pt
+ },
+ fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
+ title={\scriptsize\faPython}\:Code Python\vphantom{p},
+ watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
+ }
+}
+
+\tcbset{stylepythonnolineos/.style={%
+ stylepythontex,leftupper=10pt,
+ colframe=Green,colback=ForestGreen!5,%
+ before upper=\renewcommand\theFancyVerbLine{\scriptsize\ttfamily\color{Gray}\arabic{FancyVerbLine}}
+ }
+}
+
+\tcbset{stylepythonlineos/.style={%
+ stylepythontex,leftupper=25pt,
+ colframe=Green,colback=ForestGreen!5,%
+ % fontlower=\small,%
+ before upper=\renewcommand\theFancyVerbLine{\scriptsize\ttfamily\color{Gray}\arabic{FancyVerbLine}}
+ }
+}
+
+\newtcolorbox{tcpythontexcode}[1][\linewidth]{%
+ width=#1,stylepythonlineos
+}
+
+\newtcolorbox{tcpythontexcodeno}[1][\linewidth]{%
+ width=#1,stylepythonnolineos
+}
+
+\newenvironment{CodePythontex}[1][]
+{%
+ \useKVdefault[envpythonverb]%
+ \setKV[envpythonverb]{#1}% on paramètres les nouvelles clés et on les simplifie
+ \VerbatimEnvironment
+ \verbcenterpre
+ \ifboolKV[envpythonverb]{Lignes}%si lignes=true
+ {\begin{tcpythontexcode}[\CODPYlargeur]}
+ {\begin{tcpythontexcodeno}[\CODPYlargeur]}
+ \ifboolKV[envpythonverb]{Lignes}%si lignes=true
+ {\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,numbersep=10pt,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
+ {\begin{pyverbatim}[][numbers=none,numbersep=0pt,fontsize=\CODPYfonte,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
+}%
+{%
+ \end{pyverbatim}
+ \ifboolKV[envpythonverb]{Lignes}%si lignes=true
+ {\end{tcpythontexcode}}
+ {\end{tcpythontexcodeno}}
+ \verbcenterpost
+}
+
+\endinput