texlive[68323] Master/texmf-dist: proflycee (19sep23)

commits+karl at tug.org commits+karl at tug.org
Tue Sep 19 22:05:54 CEST 2023


Revision: 68323
          https://tug.org/svn/texlive?view=revision&revision=68323
Author:   karl
Date:     2023-09-19 22:05:54 +0200 (Tue, 19 Sep 2023)
Log Message:
-----------
proflycee (19sep23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
    trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
    trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pyluatex.pdf
    trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.pdf
    trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.tex
    trunk/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
    trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-listings.tex
    trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
    trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
    trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex

Modified: trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -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.7.4}
-\def\PLdate{3 septembre 2023}
+\def\PLversion{2.7.5}
+\def\PLdate{19 septembre 2023}
 \usepackage{amsfonts}
 \usepackage{ProfLycee}
 \useproflyclib{piton,minted,pythontex,ecritures}
@@ -144,12 +144,12 @@
 		keywordstyle={\color{violet}},%
 		classoffset=2,%
 		alsoletter={-},%
-		morekeywords={\ResolutionApprochee,\SolutionTVI,\CalculTermeRecurrence,\ToileRecurrence,\SolutionSeuil,\IntegraleApprochee,\GrilleTikz,\AxesTikz,\AxexTikz,\AxeyTikz,\FenetreTikz,\FenetreSimpleTikz,\DeclareFonctionTikz,\CourbeTikz,\OrigineTikz,\SplineTikz,\TangenteTikz,\MiniSchemaSignes,\MiniSchemaSignesTkzTab,\IntegraleApprocheeTikz,\CartoucheCapytale,\PaveTikz,\TetraedreTikz,\CercleTrigo,\AffPoint,\AffVecteur,\TrouveEqCartPlan,\TrouveEqParamDroite,\TrouveEqCartDroite,\TrouveNorme,\TrouveDistancePtPlan,\EquationReduite,\CalculsRegLin,\PointsRegLin,\NuagePointsTikz,\PointMoyenTikz,\BoiteMoustaches,\BoiteMoustachesAxe,\Histogramme,\CalcBinomP,\CalcBinomC,\BinomP,\BinomC,\CalcPoissP,\CalcPoissC,\PoissonP,\PoissonC,\CalcGeomP,\CalcGeomC,\GeomP,\GeomC,\CalcHypergeomP,\CalcHypergeomP,\HypergeomP,\HypergeomC,\CalcNormC,\NormaleC,\CalcExpoC,\ExpoC,\ArbreProbasTikz,\LoiNormaleGraphe,\LoiExpoGraphe,\NbAlea,\VarNbAlea,\TirageAleatoireEntiers,\Arrangement,\Combinaison,\ConversionDecBin,\ConversionBinHex,\ConversionVersDec,\ConversionBaseDix,\ConversionDepuisBaseDix,\PresentationPGCD,\EquationDiophantienne,\ConversionFraction,\SimplificationRacine,\EcritureEnsemble,\EcritureTrinome,\MesurePrincipale,\LigneTrigo,\SudoMaths,\FonctionRepartTikz,\IntervalleFF,\IntervalleFO,\IntervalleOF,\IntervalleOO,\RepereOij,\RepereOuv,\RepereOijk,\ReperePlan,\RepereEspace,\jfalg,\jfexp,\LoiNormale,\LoiBinomiale,\LoiPoisson,\LoiExpo,\LoiUnif,\Courbe,\Suite,\CoordPtPl,\CoordPtEsp,\CoordVecPl,\CoordVecEsp,\MatDeux,\Vecteur,\Esper,\Varianc,\EcType,\dx,\Integrale,\Modulo,\Arrondi
+		morekeywords={\ResolutionApprochee,\SolutionTVI,\CalculTermeRecurrence,\ToileRecurrence,\SolutionSeuil,\IntegraleApprochee,\GrilleTikz,\AxesTikz,\AxexTikz,\AxeyTikz,\FenetreTikz,\FenetreSimpleTikz,\DeclareFonctionTikz,\CourbeTikz,\OrigineTikz,\SplineTikz,\TangenteTikz,\MiniSchemaSignes,\MiniSchemaSignesTkzTab,\IntegraleApprocheeTikz,\CartoucheCapytale,\PaveTikz,\TetraedreTikz,\CercleTrigo,\AffPoint,\AffVecteur,\TrouveEqCartPlan,\TrouveEqParamDroite,\TrouveEqCartDroite,\TrouveNorme,\TrouveDistancePtPlan,\EquationReduite,\CalculsRegLin,\PointsRegLin,\NuagePointsTikz,\PointMoyenTikz,\BoiteMoustaches,\BoiteMoustachesAxe,\Histogramme,\CalcBinomP,\CalcBinomC,\BinomP,\BinomC,\CalcPoissP,\CalcPoissC,\PoissonP,\PoissonC,\CalcGeomP,\CalcGeomC,\GeomP,\GeomC,\CalcHypergeomP,\CalcHypergeomP,\HypergeomP,\HypergeomC,\CalcNormC,\NormaleC,\CalcExpoC,\ExpoC,\ArbreProbasTikz,\LoiNormaleGraphe,\LoiExpoGraphe,\NbAlea,\VarNbAlea,\TirageAleatoireEntiers,\Arrangement,\Combinaison,\ConversionDecBin,\ConversionBinHex,\ConversionVersDec,\ConversionBaseDix,\ConversionDepuisBaseDix,\PresentationPGCD,\EquationDiophantienne,\ConversionFraction,\SimplificationRacine,\EcritureEnsemble,\EcritureTrinome,\MesurePrincipale,\LigneTrigo,\SudoMaths,\FonctionRepartTikz,\IntervalleFF,\IntervalleFO,\IntervalleOF,\IntervalleOO,\RepereOij,\RepereOuv,\RepereOijk,\ReperePlan,\RepereEspace,\jfalg,\jfexp,\LoiNormale,\LoiBinomiale,\LoiPoisson,\LoiExpo,\LoiUnif,\Courbe,\Suite,\CoordPtPl,\CoordPtEsp,\CoordVecPl,\CoordVecEsp,\MatDeux,\Vecteur,\Esper,\Varianc,\EcType,\dx,\Integrale,\Modulo,\Arrondi,\CodePythonLstFichier,\CodePythonLstFichierAlt,\colorlet
 		},%
 		keywordstyle={\color{CouleurVertForet}},%
 		classoffset=3,%
 		alsoletter={-},%
-		morekeywords={minimum-decimal-digits,scale,nonamssymb,build,Precision,Intervalle,Variable,NomFct,NomSol,va,vb,Stretch,Balayage,Calculatrice,Majuscule,No,UNo,NomSuite,Simple,Exact,Conclusion,Sens,ResultatBrut,Methode,NbSubDiv,AffFormule,Expr,Signe,Variables,Affp,Affs,Epaisseur,Police,ElargirOx,ElargirOy,Labelx,Labely,AffLabel,PosLabelx,PosLabely,EchelleFleche,TypeFleche,PosGrad,HautGrad,AffGrad,AffOrigine,Annee,Trigo,Dfrac,Style,Coeffs,AffPoints,TaillePoints,xl,xr,Code,Racines,Largeur,Hauteur,Cadre,Fct,Nom,PosLabel,DecalLabel,TailleLabel,AffTermes,RemplirbOpacite,CouleurRemplissage,Lignes,Gobble,Alignement,Filigrane,BarreTitre,CouleurNombres,Centre,EspacementVertical,Label,Titre,Profondeur,Angle,Fuite,Sommets,Math,Aff,Plein,Cube,Alpha,Beta,Rayon,Marge,TailleValeurs,TailleAngles,CouleurFond,Decal,MoinsPi,AffAngles,AffTraits,AffValeurs,Equationcos,Equationsin,sin,cos,AffTraitsEq,CouleurSol,OptionCoeffs,SimplifCoeffs,Facteur,OptionCoeffs,Reel,Oppose,Rgras,SimplifCoeffs,VectDirecteur,NomCoeffa,NomCoeffb,NomCoeffr,NomCoeffrd,NomXmin,NomXmax,Ox,Oy,xg,yg,AffNom,Elevation,Moyenne,AffMoyenne,Pointilles,Valeurs,Elargir,Min,Max,DebutOx,FinOx,ListeCouleurs,ElargirX,ElargirY,LabelX,LabelY,GradX,GradY,AffEffectifs,PosEffectifs,Opacite,AffBornes,GrilleV,PoliceAxes,PoliceEffectifs,EpaisseurTraits,Unite,EspaceNiveau,EspaceFeuille,Type,PoliceProbas,InclineProbas,Fleche,StyleTrait,EpaisseurTrait,CouleurAire,CouleurCourbe,AfficheM,AfficheCadre,ValMin,ValMax,NbVal,Sep,Tri,Repetition,Notation,NotationAncien,Formule,AffBase,Details,BaseDep,Zeros,DecalH,DecalV,Noeud,Rect,CouleurRes,DecalRect,Rectangle,CouleurResultat,AfficheConclusion,AfficheDelimiteurs,Lettre,Inconnues,Entier,Cadres,PresPGCD,Mathpunct,Option,Alea,Anegatif,Crochets,Brut,Etapes,Epaisseurg,CouleurCase,CouleurTexte,NbSubCol,NbLig,NbCol,Legendes,PoliceLeg,ListeLegV,ListeLegH,DecalLegende,Couleur,Uno,Grille,ExtraGrilleY,PosLegende,Pointilles,Extremite,Frac},%
+		morekeywords={minimum-decimal-digits,scale,nonamssymb,build,Precision,Intervalle,Variable,NomFct,NomSol,va,vb,Stretch,Balayage,Calculatrice,Majuscule,No,UNo,NomSuite,Simple,Exact,Conclusion,Sens,ResultatBrut,Methode,NbSubDiv,AffFormule,Expr,Signe,Variables,Affp,Affs,Epaisseur,Police,ElargirOx,ElargirOy,Labelx,Labely,AffLabel,PosLabelx,PosLabely,EchelleFleche,TypeFleche,PosGrad,HautGrad,AffGrad,AffOrigine,Annee,Trigo,Dfrac,Style,Coeffs,AffPoints,TaillePoints,xl,xr,Code,Racines,Largeur,Hauteur,Cadre,Fct,Nom,PosLabel,DecalLabel,TailleLabel,AffTermes,RemplirbOpacite,CouleurRemplissage,Lignes,Gobble,Alignement,Filigrane,BarreTitre,CouleurNombres,Centre,EspacementVertical,Label,Titre,Profondeur,Angle,Fuite,Sommets,Math,Aff,Plein,Cube,Alpha,Beta,Rayon,Marge,TailleValeurs,TailleAngles,CouleurFond,Decal,MoinsPi,AffAngles,AffTraits,AffValeurs,Equationcos,Equationsin,sin,cos,AffTraitsEq,CouleurSol,OptionCoeffs,SimplifCoeffs,Facteur,OptionCoeffs,Reel,Oppose,Rgras,SimplifCoeffs,VectDirecteur,NomCoeffa,NomCoeffb,NomCoeffr,NomCoeffrd,NomXmin,NomXmax,Ox,Oy,xg,yg,AffNom,Elevation,Moyenne,AffMoyenne,Pointilles,Valeurs,Elargir,Min,Max,DebutOx,FinOx,ListeCouleurs,ElargirX,ElargirY,LabelX,LabelY,GradX,GradY,AffEffectifs,PosEffectifs,Opacite,AffBornes,GrilleV,PoliceAxes,PoliceEffectifs,EpaisseurTraits,Unite,EspaceNiveau,EspaceFeuille,Type,PoliceProbas,InclineProbas,Fleche,StyleTrait,EpaisseurTrait,CouleurAire,CouleurCourbe,AfficheM,AfficheCadre,ValMin,ValMax,NbVal,Sep,Tri,Repetition,Notation,NotationAncien,Formule,AffBase,Details,BaseDep,Zeros,DecalH,DecalV,Noeud,Rect,CouleurRes,DecalRect,Rectangle,CouleurResultat,AfficheConclusion,AfficheDelimiteurs,Lettre,Inconnues,Entier,Cadres,PresPGCD,Mathpunct,Option,Alea,Anegatif,Crochets,Brut,Etapes,Epaisseurg,CouleurCase,CouleurTexte,NbSubCol,NbLig,NbCol,Legendes,PoliceLeg,ListeLegV,ListeLegH,DecalLegende,Couleur,Uno,Grille,ExtraGrilleY,PosLegende,Pointilles,Extremite,Frac,PremLigne},%
 		keywordstyle={\color{orange!75!black}}
 		}
 	}
@@ -694,22 +694,22 @@
 
 \begin{PresCodeTexPL}{listing only}
 %présentation de code Python
-\begin{CodePythonLst}(*)[largeur]{commandes tcbox}...\end{CodePythonLst}
-\begin{CodePythonLstAlt}(*)[largeur]{commandes tcbox}...\end{CodePythonLstAlt}
+\begin{CodePythonLst}(*)[clés]{commandes tcbox}...\end{CodePythonLst}
+\begin{CodePythonLstAlt}(*)[clés]{commandes tcbox}...\end{CodePythonLstAlt}
 %:=librairie piton
-\begin{CodePiton}[options piton]{commandes tcbox}...\end{CodePiton}
-\begin{PitonConsole}<Clés>{commandes tcbox}...\end{PitonConsole}
+\begin{CodePiton}[options piton]{commandes tcbox}<1ère ligne>...\end{CodePiton}
+\begin{PitonConsole}<clés>{commandes tcbox}...\end{PitonConsole}
 %:=librairie pythontex
-\begin{CodePythontex}[options]{}...\end{CodePythontex}
-\begin{CodePythontexAlt}[options]{}...\end{CodePythontexAlt}
+\begin{CodePythontex}[clés]{commandes tcbox}...\end{CodePythontex}
+\begin{CodePythontexAlt}[clés]{commandes tcbox}...\end{CodePythontexAlt}
 \begin{ConsolePythontex}[options]{}...\end{ConsolePythontex}
 %:=librairie minted
-\begin{CodePythonMinted}(*)[largeur]{commandes tcbox}...\end{CodePythonMinted}
-\begin{CodePythonMintedAlt}(*)[largeur]{commandes tcbox}...\end{CodePythonMintedAlt}
+\begin{CodePythonMinted}(*)[clés]{commandes tcbox}...\end{CodePythonMinted}
+\begin{CodePythonMintedAlt}(*)[largeur][clés]{commandes tcbox}...\end{CodePythonMintedAlt}
 
 %présentation de pseudocode
-\begin{PseudoCode}(*)[largeur]{commandes tcbox}...\end{PseudoCode}
-\begin{PseudoCodeAlt}(*)[largeur]{commandes tcbox}...\end{PseudoCodeAlt}
+\begin{PseudoCode}(*)[clés]{commandes tcbox}...\end{PseudoCode}
+\begin{PseudoCodeAlt}(*)[largeur][clés]{commandes tcbox}...\end{PseudoCodeAlt}
 \end{PresCodeTexPL}
 
 \begin{PresCodeTexPL}{listing only}
@@ -2791,6 +2791,36 @@
 
 \part{Présentation de codes}
 
+\section{Précautions}\label{codenumlignes}
+
+\begin{tipblock}
+L'idée est de proposer des environnements pour présenter du code :
+
+\begin{itemize}
+	\item \textsf{Python} ;
+	\item \textsf{PseudoCode}.
+\end{itemize}
+
+Dans la mesure du possible (mis à part pour certains points avec l'utilisation des packages \ctex{piton} et \ctex{pythontex}), les environnements seront composés :
+
+\begin{itemize}
+	\item dans une boîte \ctex{tcolorbox} ;
+	\item de deux styles :\ctex{CodeXXXX} ou \ctex{CodeXXXXAlt} ;
+	\item de clés pour paramétrer la \Cle{Largeur} et le début de la numérotation \Cle{PremLigne} ;
+	\item d'une version étoilée pour ne pas numérotée les lignes ;
+	\item d'options éventuelles à donner en langage \ctex{tcolorbox}.
+\end{itemize}
+\vspace*{-\baselineskip}\leavevmode
+\end{tipblock}
+
+\begin{warningblock}
+Avec la mise à jour \cmaj{2.7.5} et la possibilité de modifier la numérotation des lignes, certains environnements ont vu leur fonctionnement légèrement modifié, donc il est conseillé d'être prudent avec les nouvelles spécificités.
+
+\smallskip
+
+Il est prévu, à plus ou moyen terme, d'uniformiser le fonctionnement de tous les environnements, mais cela demande de reprendre une bonne partie du code.
+\end{warningblock}
+
 \section{Code Python \og simple \fg{} via le package listings}\label{pythonsimple}
 
 \subsection{Introduction}
@@ -2820,13 +2850,13 @@
 \end{tipblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonLst}(*)[largeur]{commandes tcbox}
+\begin{CodePythonLst}(*)[clés]{commandes tcbox}
 ...
 \end{CodePythonLst}
 \end{PresCodeTexPL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonLstAlt}(*)[largeur]{commandes tcbox}
+\begin{CodePythonLstAlt}(*)[clés]{commandes tcbox}
 ...
 \end{CodePythonLstAlt}
 \end{PresCodeTexPL}
@@ -2836,7 +2866,7 @@
 
 \begin{itemize}
 	\item la version \textit{étoilée} qui permet de ne pas afficher les numéros de lignes ;
-	\item le premier argument (\textit{optionnel}), concerne la \Cle{largeur} de la \ctex{tcbox} ;\hfill{}défaut \Cle{\textbackslash linewidth}
+	\item le premier argument (\textit{optionnel}), comprend la clé \Cle{Largeur} de la \ctex{tcbox} (\Cle{\textbackslash linewidth} par défaut) et la clé \Cle{PremLigne} (\Cle{1} par défaut) ;
 	\item le second argument (\textit{obligatoire}), concerne des \Cle{options} de la \ctex{tcbox} en \textit{langage tcolorbox}, comme l'alignement.
 \end{itemize}
 \vspace*{-\baselineskip}\leavevmode
@@ -2843,7 +2873,7 @@
 \end{cautionblock}
 
 \begin{warningblock}
-Les environnements \ctex{DeclareTCBListing} créés par \ctex{tcolorbox} et \ctex{listings} ne sont pas compatibles avec les options \Cle{gobble} (pour supprimer les tabulations d'environnement), donc il faut bien penser à \og aligner \fg{} le code à gauche, pour éviter des tabulations non esthétiques !
+Les environnements créés par \ctex{tcolorbox} et \ctex{listings} ne sont pas compatibles avec les options \Cle{gobble} (pour supprimer les tabulations d'environnement), donc il faut bien penser à \og aligner \fg{} le code à gauche, pour éviter des tabulations non esthétiques !
 \end{warningblock}
 
 \subsection{Insertion via un fichier \og externe \fg}
@@ -2855,7 +2885,7 @@
 
 \smallskip
 
-Si cette méthode est utilisée, il ne faut oublier de charger le package \ctex{scontents}.
+Si cette méthode est utilisée, il ne faut oublier de charger le package \ctex{scontents}, et être attentif à la syntaxe.
 \end{tipblock}
 
 \begin{PresCodeTexPL}{listing only}
@@ -2867,7 +2897,7 @@
 \subsection{Exemples}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonLst}{} %les {}, même vides, sont nécessaires (bug avec # sinon !)
+\begin{CodePythonLst}{} %les {}, même vides, peuvent être nécessaires (bug avec # sinon !)
 #environnement par défaut
 nb = int(input("Saisir un entier positif"))
 if (nb %7 == 0) :
@@ -2893,8 +2923,26 @@
 \end{PresCodeSortiePL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonLstAlt}*[0.75\linewidth]{flush right}
-#largeur de 50%, sans numéro, et aligné à droite
+\begin{CodePythonLst}[PremLigne=10]{}
+nb = int(input("Saisir un entier positif"))
+if (nb %7 == 0) :
+	print(f"{nb} est bien divisible par 7")
+#endif
+\end{CodePythonLst}
+\end{PresCodeTexPL}
+
+\begin{PresCodeSortiePL}{text only}
+\begin{CodePythonLst}[PremLigne=10]{}
+nb = int(input("Saisir un entier positif"))
+if (nb %7 == 0) :
+	print(f"{nb} est bien divisible par 7")
+#endif
+\end{CodePythonLst}
+\end{PresCodeSortiePL}
+
+\begin{PresCodeTexPL}{listing only}
+\begin{CodePythonLstAlt}*[Largeur=0.75\linewidth]{flush right}
+#largeur de 75%, sans numéro, et aligné à droite
 nb = int(input("Saisir un entier Python positif"))
 if (nb %7 == 0) :
 	print(f"{nb} est bien divisible par 7")
@@ -2906,7 +2954,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeSortiePL}{text only}
-\begin{CodePythonLstAlt}*[0.75\linewidth]{flush right}
+\begin{CodePythonLstAlt}*[Largeur=0.75\linewidth]{flush right}
 #largeur de 50%, sans numéro, et aligné à droite
 nb = int(input("Saisir un entier Python positif"))
 if (nb %7 == 0) :
@@ -3012,6 +3060,8 @@
 Depuis la version \ctex{0.99} de \ctex{piton}, \Cle{break-lines} est disponible et activée dans \ctex{ProfLycee}.
 
 Depuis la version \ctex{1.0} de \ctex{piton}, \Cle{tabs-auto-gobble} est disponible et activée dans \ctex{ProfLycee}.
+
+Depuis la version \ctex{2.2a} de \ctex{piton}, des options pour \Cle{line-numbers} sont disponibles.
 \end{noteblock}
 
 \begin{warningblock}
@@ -3029,7 +3079,7 @@
 \subsection{Présentation de code Python}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePiton}[options]{options tcbox}
+\begin{CodePiton}[options]{options tcbox}<option line-numbers>
 ...
 \end{CodePiton}
 \end{PresCodeTexPL}
@@ -3063,7 +3113,7 @@
 \end{noteblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePiton}{}
+\begin{CodePiton}{} %pour éviter un bug avec le caractère #
 #environnement piton avec numéros de ligne, pleine largeur, style moderne
 def arctan(x,n=10):
 	if x < 0:
@@ -3087,8 +3137,8 @@
 \end{CodePiton}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePiton}[Style=Classique,Filigrane]{}
-#environnement piton avec numéros, style classique, filigrane
+\begin{CodePiton}[Style=Classique,Filigrane]{}<start=10>
+#environnement piton avec numéros (début=10), style classique, filigrane
 def arctan(x,n=10):
 	if x < 0:
 		return -arctan(-x) #> (appel récursif)
@@ -3099,7 +3149,7 @@
 \end{CodePiton}
 \end{PresCodeTexPL}
 
-\begin{CodePiton}[Style=Classique,Filigrane]{}
+\begin{CodePiton}[Style=Classique,Filigrane]{}<start=10>
 #environnement piton avec numéros, style classique, filigrane
 def arctan(x,n=10):
 	if x < 0:
@@ -3223,13 +3273,13 @@
 \end{tipblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythontex}[options]{} %les {} vides sont nécessaires
+\begin{CodePythontex}[clés]{} %les {} vides sont nécessaires
 ...
 \end{CodePythontex}
 \end{PresCodeTexPL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythontexAlt}[options]{} %les {} vides sont nécessaires
+\begin{CodePythontexAlt}[clés]{} %les {} vides sont nécessaires
 	...
 \end{CodePythontexAlt}
 \end{PresCodeTexPL}
@@ -3239,7 +3289,7 @@
 
 \begin{itemize}
 	\item \Cle{Largeur} : largeur de la \textit{tcbox} ;\hfill{}défaut \Cle{\textbackslash linewidth}
-	\item \Cle{Centre} : booléen pour centrer ou non la \textit{tcbox} ;\hfill{}défaut \Cle{false}
+	\item \Cle{PremLigne} : numéro initial des lignes ; \hfill{}défaut \Cle{1}
 	\item \Cle{TaillePolice} : taille des caractères ;\hfill{}défaut \Cle{\textbackslash footnotesize}
 	\item \Cle{EspacementVertical} : option (\textit{stretch}) pour l'espacement entre les lignes ;\hfill{}défaut \Cle{1}
 	\item \Cle{Lignes} : booléen pour afficher ou non les numéros de ligne.\hfill{}défaut \Cle{true}
@@ -3294,13 +3344,13 @@
 \end{warningblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonMinted}(*)[largeur]{options}
+\begin{CodePythonMinted}(*)[clés]{options tcbox}
 ...
 \end{CodePythonMinted}
 \end{PresCodeTexPL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonMintedAlt}(*)[largeur]{options}
+\begin{CodePythonMintedAlt}(*)[clés]{options tcbox}
 ...
 \end{CodePythonMintedAlt}
 \end{PresCodeTexPL}
@@ -3310,7 +3360,7 @@
 
 \begin{itemize}
 	\item la version \textit{étoilée} qui permet de ne pas afficher les numéros de lignes ;
-	\item le 1\up{er} argument \textit{optionnel} concerne la \Cle{largeur} de la \ctex{tcbox} ;\hfill{}défaut \Cle{12cm}
+	\item le 1\up{er} argument (\textit{optionnel}), comprend la clé \Cle{Largeur} de la \ctex{tcbox} (\Cle{\textbackslash linewidth} par défaut) et la clé \Cle{PremLigne} (\Cle{1} par défaut) ;
 	\item le 2\up{nd} argument \textit{obligatoire} concerne les \Cle{options} de la \ctex{tcbox} en \textit{langage tcbox}.\hfill{}défaut \Cle{vide}
 \end{itemize}
 \vspace*{-\baselineskip}\leavevmode
@@ -3317,7 +3367,7 @@
 \end{cautionblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonMinted}[13cm]{center}
+\begin{CodePythonMinted}[Largeur=13cm,PremLigne=10]{center}
 	#environnement Python(minted) centré avec numéros, de largeur 13cm
 	def f(x) :
 		return x**2
@@ -3325,7 +3375,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeSortiePL}{text only}
-\begin{CodePythonMinted}[13cm]{center}
+\begin{CodePythonMinted}[Largeur=13cm,PremLigne=10]{center}
 	#environnement Python(minted) centré avec numéros
 	def f(x) :
 		return x**2
@@ -3333,7 +3383,7 @@
 \end{PresCodeSortiePL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{CodePythonMintedAlt}*[0.8\linewidth]{}
+\begin{CodePythonMintedAlt}*[Largeur=0.8\linewidth]{}
 	#environnement Python(minted), style alt, sans numéro, de largeur 0.8\linewidth
 	def f(x) :
 		return x**2
@@ -3341,7 +3391,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeSortiePL}{text only}
-\begin{CodePythonMintedAlt}*[0.8\linewidth]{}
+\begin{CodePythonMintedAlt}*[Largeur=0.8\linewidth]{}
 	#environnement Python(minted), style alt, sans numéro, 0.8\linewidth
 	def f(x) :
 		return x**2
@@ -3357,7 +3407,7 @@
 \end{tipblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{ConsolePythontex}[options]{} %les {} vides sont nécessaires
+\begin{ConsolePythontex}[clés]{} %les {} vides sont nécessaires
 ...
 \end{ConsolePythontex}
 \end{PresCodeTexPL}
@@ -3446,7 +3496,7 @@
 \end{warningblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{PseudoCode}(*)[largeur]{options tcbox}
+\begin{PseudoCode}(*)[clés]{options tcbox}
 %attention à l'indentation, gobble ne fonctionne pas...
 ...
 \end{PseudoCode}
@@ -3453,7 +3503,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{PseudoCodeAlt}(*)[largeur]{options tcbox}
+\begin{PseudoCodeAlt}(*)[clés]{options tcbox}
 %attention à l'indentation, gobble ne fonctionne pas...
 ...
 \end{PseudoCodeAlt}
@@ -3464,7 +3514,8 @@
 
 \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 1\up{er} argument (\textit{optionnel}), comprend la clé \Cle{Largeur} de la \ctex{tcbox} (\Cle{\textbackslash linewidth} par défaut) et la clé \Cle{PremLigne} (\Cle{1} par défaut) ;
+	\item \cmaj{2.7.5} une clé booléenne \Cle{Couleur} est également disponible pour mettre en évidence trois niveaux (elles peuvent être redéfinies) de mots clés en pseudo-code (\Cle{false} par défaut) ;
 	\item \cmaj{2.5.8} l'argument obligatoire entre \ctex{\{...\}} concerne les \Cle{options} de la \ctex{tcbox}.
 \end{itemize}
 \vspace*{-\baselineskip}\leavevmode
@@ -3492,7 +3543,7 @@
 \end{PresCodeSortiePL}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{PseudoCodeAlt}[15cm]{center} %centré, de largeur 15cm
+\begin{PseudoCodeAlt}[Largeur=15cm,PremLigne=7,Couleur]{center} %centré, de largeur 15cm
 List = [...]          # à déclarer au préalable
 n = longueur(List)
 Pour i allant de 0 à n-1 Faire
@@ -3502,7 +3553,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeSortiePL}{text only}
-\begin{PseudoCodeAlt}[15cm]{center}
+\begin{PseudoCodeAlt}[Largeur=15cm,PremLigne=7,Couleur]{center}
 List = [...]          # à déclarer au préalable
 n = longueur(List)
 Pour i allant de 0 à n-1 Faire
@@ -3516,9 +3567,16 @@
 \begin{warningblock}
 À l'instar de packages existants, la \textit{philosophie} ici est de laisser l'utilisateur gérer \textit{son} langage pseudo-code.
 
-J'ai fait le choix de ne pas définir des \textsf{mots clés} à mettre en valeur car cela reviendrait à \textit{imposer} des choix ! Donc ici, pas de coloration syntaxique ou de mise en évidence de mots clés, uniquement un formatage basique !
+J'ai fait le choix de ne pas forcément définir des \textsf{mots clés} à mettre en valeur car cela reviendrait à \textit{imposer} des choix ! Donc ici, pas de coloration syntaxique (uniquement via la clé \Cle{Couleur}) ou de mise en évidence de mots clés, uniquement un formatage basique !
 \end{warningblock}
 
+\begin{PresCodeTexPL}{listing only}
+%couleurs par défaut des mots clés, modifiables si besoin
+\colorlet{MotsClesPseudoCodeA}{blue!75}
+\colorlet{MotsClesPseudoCodeB}{green!50!black}
+\colorlet{MotsClesPseudoCodeChaine}{red!75}
+\end{PresCodeTexPL}
+
 \begin{noteblock}
 Le style \ctex{listings} utilisé par la commande a l'option \Cle{mathescape} activée, et accessible grâce aux délimiteurs \Cle{(*...*)}.
 
@@ -3526,7 +3584,7 @@
 \end{noteblock}
 
 \begin{PresCodeTexPL}{listing only}
-\begin{PseudoCode}*[12cm]{}
+\begin{PseudoCode}*[Largeur=12cm]{} % pour éviter un bug avec #
 #Utilisation du mode mathescape
 Afficher (*\og*) .........(*\fg*)
 m = (*$\tfrac{\texttt{1}}{\texttt{2}}$*)
@@ -3534,7 +3592,7 @@
 \end{PresCodeTexPL}
 
 \begin{PresCodeSortiePL}{text only}
-\begin{PseudoCode}*[12cm]{}
+\begin{PseudoCode}*[Largeur=12cm]{}
 #Utilisation du mode mathescape
 Afficher (*\og*) .........(*\fg*)
 m = (*$\tfrac{\texttt{1}}{\texttt{2}}$*)
@@ -7679,8 +7737,10 @@
 
 \part{Historique}
 
-{\small \bverb|v 2.7.4|~:~~~~Ajout de macros pour des écritures mathématiques classiques (\pageref{ecrituresmath})}
+{\small \bverb|v 2.7.5|~:~~~~Possibilités de numéroter les lignes des codes à une autre valeur que 1 (page \pageref{codenumlignes})
 
+{\small \bverb|v 2.7.4|~:~~~~Ajout de macros pour des écritures mathématiques classiques (page \pageref{ecrituresmath})}
+
 {\small \bverb|v 2.7.3|~:~~~~Correction de la couleur de bordures vertes pour les codes python}
 
 {\small \bverb|v 2.7.2|~:~~~~\textsf{xcolor} n'est plus chargé par défaut (option \textsf{[xcolor]} pour le charger)
@@ -7687,7 +7747,7 @@
 
 {\small \bverb|v 2.7.1|~:~~~~Chargement de \textsf{tcolorbox} par librairies (au lieu de \textsf{[most]})
 
-{\small \bverb|v 2.7.0|~:~~~~Ajout de la clé \Cle{Frac} pour les axes verticaux (\pageref{reperagetikz})
+{\small \bverb|v 2.7.0|~:~~~~Ajout de la clé \Cle{Frac} pour les axes verticaux (page \pageref{reperagetikz})
 
 {\small \bverb|       |~:~~~~Fonction de répartition discrète (\pageref{fctrepart})
 

Modified: trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pyluatex.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/doc/latex/proflycee/ProfLycee-exemples-pythontex.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -5,7 +5,7 @@
 % arara: lualatex: {shell: no, synctex: yes, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
 
 \documentclass[french,a4paper,10pt]{article}
-\def\PLver{2.7.3}
+\def\PLver{2.7.5}
 \usepackage[margin=1.5cm]{geometry}
 \usepackage{ProfLycee}
 \useproflyclib{pythontex}
@@ -58,7 +58,7 @@
 
 {\small \begin{codehigh}
 %Sortie avec Style=Classique, Largeur=10cm, centré
-\begin{CodePythontexAlt}[Largeur=10cm,Centre]{}
+\begin{CodePythontexAlt}[Largeur=10cm,Centre,PremLigne=10]{}
 def valeur_absolue(x):
     "Renvoie la valeur absolue de x"
     #le petit test qui va bien
@@ -69,7 +69,7 @@
 \end{CodePythontexAlt}
 \end{codehigh}}
 
-\begin{CodePythontexAlt}[Largeur=10cm,Centre]{}
+\begin{CodePythontexAlt}[Largeur=10cm,Centre,PremLigne=10]{}
 def valeur_absolue(x):
 	"Renvoie la valeur absolue de x"
 	#le petit test qui va bien

Modified: trunk/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty	2023-09-19 20:05:54 UTC (rev 68323)
@@ -3,7 +3,8 @@
 % or later, see http://www.latex-project.org/lppl.txtf
 
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2023/09/03 2.7.4 Aide pour l'utilisation de LaTeX en lycee]
+\ProvidesPackage{ProfLycee}[2023/09/19 2.7.5 Aide pour l'utilisation de LaTeX en lycee]
+% 2.7.5	Ajout d'options pour les environnements de code (piton + listings)
 % 2.7.4	Ajout de commandes pour des écritures mathématiques (avec librairie ?)
 % 2.7.3	Correction de la couleur de bordures vertes pour les codes python
 % 2.7.2	Modification du chargement de xcolor pour éviter les clash errors (couleurs adaptées du coup), passage en option (test)

Modified: trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-listings.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-listings.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-listings.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -8,6 +8,7 @@
 % and version 1.3 or later is part of all distributions of LaTeX
 % version 2005/12/01 or later.
 
+%2.7.5	Ajout de clés pour PythonLst + Couleurs optionnelles pour PseudoCode
 %2.7.3	Correction de la couleur des bordures
 %2.5.8	Styles alternatifs + Modification marges
 
@@ -100,11 +101,56 @@
 	}
 }
 
-\NewTCBListing{CodePythonLst}{ s O{\linewidth} m }{% * off pour numéros de lignes + {largeur} + <options tcbox>
-	\IfBooleanTF{#1}{stylepythonlstnolineos}{stylepythonlstlineos},
-	width=#2,#3
+%test v3 avec simplekv
+\defKV[CodePythonLst]{%
+	Largeur=\def\CodePythonLstLarg{#1},%
+	PremLigne=\def\CodePythonLstFirstLine{#1}
 }
 
+\setKVdefault[CodePythonLst]{%
+	Largeur=\linewidth,%
+	PremLigne=1
+}
+
+\NewDocumentEnvironment{CodePythonLst}{ s O{} m }%nouvelle version avec clés listings
+{%
+	\useKVdefault[CodePythonLst]%
+	\setKV[CodePythonLst]{#2}% on paramètres les nouvelles clés et on les simplifie
+	\IfBooleanTF{#1}%
+		{%
+			\tcblisting{stylepythonlst,listing options={style=PLpython,xleftmargin=0pt,numbers=none},width=\CodePythonLstLarg,#3}
+		}%
+		{%
+			\tcblisting{stylepythonlst,listing options={style=PLpython,xleftmargin=16pt,numbers=left,firstnumber=\CodePythonLstFirstLine},width=\CodePythonLstLarg,#3}
+		}%
+}%
+{%
+	\endtcblisting%
+}
+
+%\NewTCBListing{CodePythonLst}{ s O{\linewidth} m !D<>{1} }{% * off pour numéros de lignes + {largeur} + <options tcbox>
+%	enhanced,boxrule=1.25pt,%
+%	left=0.6em,
+%	sharp corners=downhill,arc=12pt,
+%	before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
+%	top=\baselineskip,bottom=1mm,right=5mm,
+%	attach boxed title to top right={yshift=-\tcboxedtitleheight},
+%	boxed title style={
+%		size=small,colback=CouleurVertForet!25,boxrule=1.25pt,
+%		colframe=CouleurVertForet,boxsep=1.25pt,
+%		sharp corners=downhill,
+%		arc=12pt,
+%		top=2pt,bottom=1pt,left=6pt,right=6pt
+%	},
+%	colframe=CouleurVertForet,colback=CouleurVertForet!5,%
+%	fonttitle=\color{CouleurVertForet}\itshape\ttfamily\footnotesize,
+%	title={\scriptsize\faPython}\:Code Python\vphantom{p},
+%	watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
+%	listing only,listing engine=listings,
+%	\IfBooleanTF{#1}{stylepythonlstnolineos}{stylepythonlstlineos},
+%	width=#2,#3
+%}
+
 \NewTCBInputListing{\CodePythonLstFichier}{ s O{\linewidth} m m }{
 	\IfBooleanTF{#1}{stylepythonlstnolineos}{stylepythonlstlineos},
 	width=#2,#3,
@@ -143,8 +189,28 @@
 	}
 }
 
-\NewTCBListing{CodePythonLstAlt}{ s O{\linewidth} m }{% * off pour numéros de lignes + {options keys} + <options tcbox>
-	\IfBooleanTF{#1}{StylPythonBno}{StylPythonByes},width=#2,#3
+\NewDocumentEnvironment{CodePythonLstAlt}{ s O{} m }%nouvelle version avec clés listings
+{%
+	\useKVdefault[CodePythonLst]%
+	\setKV[CodePythonLst]{#2}% on paramètres les nouvelles clés et on les simplifie
+	\IfBooleanTF{#1}%
+	{%
+		\tcblisting{StylPythonB,
+			listing options={style=PLpython,xleftmargin=0pt,numbers=none},width=\CodePythonLstLarg,#3}
+	}%
+	{%
+		\tcblisting{StylPythonB,
+			listing options={style=PLpython,xleftmargin=16pt,numbers=left,firstnumber=\CodePythonLstFirstLine},%
+			underlay={%
+				\begin{tcbclipinterior}
+					\draw[draw=none,fill=lightgray!25] (interior.south west) rectangle ([xshift=1.3em]interior.north west) ;
+				\end{tcbclipinterior}%
+			},
+			width=\CodePythonLstLarg,#3}
+	}%
+}%
+{%
+	\endtcblisting%
 }
 
 \NewTCBInputListing{\CodePythonLstFichierAlt}{ s O{\linewidth} m m }{
@@ -153,6 +219,27 @@
 	listing file={#4}
 }
 
+% \NewDocumentEnvironment{CodePythonLstFichierAlt}{ s O{\linewidth} m m  }%nouvelle version avec option listings
+% {%
+	% \IfBooleanTF{#1}%
+		% {%
+			% \tcblisting{StylPythonB,listing options={style=PLpython,xleftmargin=0pt,numbers=none},width=#2,#3,listing file={#4}}
+		% }%
+		% {%
+			% \tcblisting{StylPythonB,
+			% listing options={style=PLpython,xleftmargin=16pt,numbers=left},%
+			% underlay={%
+				% \begin{tcbclipinterior}
+					% \draw[draw=none,fill=lightgray!25] (interior.south west) rectangle ([xshift=1.3em]interior.north west) ;
+				% \end{tcbclipinterior}%
+			% },
+			% width=#2,#3,listing file={#4}}
+		% }%
+% }%
+% {%
+	% \endtcblisting%
+% }
+
 %%------PSEUDOCODE
 %language pseudocode listings
 \lstdefinestyle{pseudocodePL}{%
@@ -159,8 +246,8 @@
 	language         = langnat,
 	basicstyle       = \footnotesize\ttfamily,
 	numberstyle      = \scriptsize\ttfamily\color{gray},
-	keywordstyle     = \bfseries,
-	stringstyle      = \color{red!75},
+	%keywordstyle     = \bfseries,
+	%stringstyle      = \color{red!75},
 	keepspaces       = true,
 	tabsize          = 4,
 	numbersep        = 10pt,
@@ -175,8 +262,8 @@
 	language         = langnat,
 	basicstyle       = \footnotesize\ttfamily,
 	numberstyle      = \scriptsize\ttfamily\color{gray},
-	keywordstyle     = \bfseries,
-	stringstyle      = \color{red!75},
+	%keywordstyle     = \bfseries,
+	%stringstyle      = \color{red!75},
 	keepspaces       = true,
 	tabsize          = 4,
 	numbersep        = 10pt,
@@ -186,6 +273,17 @@
 	escapeinside     = {(*}{*)}
 }
 
+\defKV[CodePseudoCodeLst]{%
+	Largeur=\def\CodePseudoCodeLstLarg{#1},%
+	PremLigne=\def\CodePseudoCodeLstFirstLine{#1}
+}
+
+\setKVdefault[CodePseudoCodeLst]{%
+	Largeur=\linewidth,%
+	PremLigne=1,%
+	Couleur=false
+}
+
 %style tcbox pseudocode avec bannière hautdroite
 \tcbset{stylepseudocodePL/.style={%
 	enhanced,boxrule=1.25pt,sharp corners=downhill,arc=12pt,
@@ -210,38 +308,108 @@
 	\newcommand\algomathttPL[1]{\mathtt{#1}}
 \fi
 
-\DeclareTCBListing{PseudoCode}{ s O{12cm} m }{% étoilée sans numéro, <taille> puis option...
-	width=#2,#3,
-	stylepseudocodePL,
-	listing only,listing engine=listings,
-	listing options={
-		style=\IfBooleanTF{#1}{pseudocodenoPL}{pseudocodePL},%version étoilée sans numéro de lignes
-		aboveskip=0pt,belowskip=0pt,
-		columns=fullflexible,
-		literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
-		{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
-		{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
-		{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
-		{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
-		{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
-		{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
-		{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
-		{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
-		{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
-		{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
-		{€}{{\texteuro}}1 {£}{{\pounds}}1%
-		{=}{\textleftarrow}1 {==}{=}1%
-		{*}{$\algomathttPL{\times}$}{1}%
-	}
+\colorlet{MotsClesPseudoCodeA}{blue!75}
+\colorlet{MotsClesPseudoCodeB}{green!50!black}
+\colorlet{MotsClesPseudoCodeChaine}{red!75}
+
+\NewDocumentEnvironment{PseudoCode}{ s O{} m }%nouvelle version avec clés listings
+{%
+	\useKVdefault[CodePseudoCodeLst]%
+	\setKV[CodePseudoCodeLst]{#2}% on paramètres les nouvelles clés et on les simplifie
+	%en fonction de la couleur ??
+	\ifboolKV[CodePseudoCodeLst]{Couleur}%
+		{%
+			\tcblisting{width=\CodePseudoCodeLstLarg,#3,
+				stylepseudocodePL,
+				listing only,listing engine=listings,
+				listing options={
+					style=\IfBooleanTF{#1}{pseudocodenoPL}{pseudocodePL},%version étoilée sans numéro de lignes
+					aboveskip=0pt,belowskip=0pt,
+					columns=fullflexible,firstnumber=\CodePseudoCodeLstFirstLine,%
+					stringstyle=\color{MotsClesPseudoCodeChaine},
+					classoffset=0,%
+					keywords={Pour,Fonction,Début,allant,Fin,Si,alors,Sinon,SinonSi,FinSi,FinPour,FinTantQue,TantQue},%
+					keywordstyle=\color{MotsClesPseudoCodeA},%
+					classoffset=1,%
+					morekeywords={Afficher,Retourner,Saisir},%
+					keywordstyle=\color{MotsClesPseudoCodeB},%
+					literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+					{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+					{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+					{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+					{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+					{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+					{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+					{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+					{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+					{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+					{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+					{€}{{\texteuro}}1 {£}{{\pounds}}1%
+					{=}{\textleftarrow}1 {==}{=}1%
+					{*}{$\algomathttPL{\times}$}{1}%
+			}}
+		}%
+		{%
+			\tcblisting{width=\CodePseudoCodeLstLarg,#3,
+				stylepseudocodePL,
+				listing only,listing engine=listings,
+				listing options={
+					style=\IfBooleanTF{#1}{pseudocodenoPL}{pseudocodePL},%version étoilée sans numéro de lignes
+					aboveskip=0pt,belowskip=0pt,
+					columns=fullflexible,firstnumber=\CodePseudoCodeLstFirstLine,%
+					literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+					{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+					{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+					{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+					{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+					{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+					{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+					{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+					{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+					{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+					{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+					{€}{{\texteuro}}1 {£}{{\pounds}}1%
+					{=}{\textleftarrow}1 {==}{=}1%
+					{*}{$\algomathttPL{\times}$}{1}%
+			}}
+		}%
+}%
+{%
+	\endtcblisting%
 }
 
+% \DeclareTCBListing{PseudoCode}{ s O{12cm} m D<>{} }{% étoilée sans numéro, [taille] puis {option tcbox} puis <options listings>...
+	% width=#2,#3,
+	% stylepseudocodePL,
+	% listing only,listing engine=listings,
+	% listing options={
+		% style=\IfBooleanTF{#1}{pseudocodenoPL}{pseudocodePL},%version étoilée sans numéro de lignes
+		% aboveskip=0pt,belowskip=0pt,
+		% columns=fullflexible,#4,%
+		% literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+		% {ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+		% {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+		% {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+		% {ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+		% {Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+		% {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+		% {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+		% {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+		% {ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+		% {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+		% {€}{{\texteuro}}1 {£}{{\pounds}}1%
+		% {=}{\textleftarrow}1 {==}{=}1%
+		% {*}{$\algomathttPL{\times}$}{1}%
+	% }
+% }
+
 %style tcbox pseudocode v2
 \lstdefinestyle{pseudocodePLalt}{%
 	language         = langnat,
 	basicstyle       = \footnotesize\ttfamily,
 	numberstyle      = \scriptsize\ttfamily\color{gray},
-	keywordstyle     = \bfseries,
-	stringstyle      = \color{red!75},
+	%keywordstyle     = \bfseries,
+	%stringstyle      = \color{red!75},
 	keepspaces       = true,
 	tabsize          = 4,
 	xleftmargin      = 1.5em,
@@ -255,8 +423,8 @@
 	language         = langnat,
 	basicstyle       = \footnotesize\ttfamily,
 	numberstyle      = \scriptsize\ttfamily\color{gray},
-	keywordstyle     = \bfseries,
-	stringstyle      = \color{red!75},
+	%keywordstyle     = \bfseries,
+	%stringstyle      = \color{red!75},
 	keepspaces       = true,
 	tabsize          = 4,
 	numbers          = none,
@@ -288,32 +456,100 @@
 	}
 }
 
-\DeclareTCBListing{PseudoCodeAlt}{ s O{12cm} m }{% étoilée sans numéro, <taille> puis option...
-	width=#2,#3,
-	stylepseudocodePLalt,
-	listing only,listing engine=listings,
-	\IfBooleanTF{#1}{}{stylepseudocodePLaltlines},
-	listing options={
-		style=\IfBooleanTF{#1}{pseudocodenoPLalt}{pseudocodePLalt},%version étoilée sans numéro de lignes
-		aboveskip=2pt,belowskip=2pt,
-		columns=fullflexible,
-		literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
-		{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
-		{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
-		{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
-		{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
-		{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
-		{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
-		{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
-		{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
-		{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
-		{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
-		{€}{{\texteuro}}1 {£}{{\pounds}}1%
-		{=}{\textleftarrow}1 {==}{=}1%
-		{*}{$\algomathttPL{\times}$}{1}%
-	}
+\NewDocumentEnvironment{PseudoCodeAlt}{ s O{} m }%nouvelle version avec clés listings
+{%
+	\useKVdefault[CodePseudoCodeLst]%
+	\setKV[CodePseudoCodeLst]{#2}% on paramètres les nouvelles clés et on les simplifie
+	%différence ssuivant [Couleur]
+	\ifboolKV[CodePseudoCodeLst]{Couleur}%
+	{%
+		\tcblisting{width=\CodePseudoCodeLstLarg,#3,
+			stylepseudocodePLalt,
+			listing only,listing engine=listings,
+			\IfBooleanTF{#1}{}{stylepseudocodePLaltlines},
+			listing options={
+				style=\IfBooleanTF{#1}{pseudocodenoPLalt}{pseudocodePLalt},%version étoilée sans numéro de lignes
+				aboveskip=2pt,belowskip=2pt,
+				columns=fullflexible,firstnumber=\CodePseudoCodeLstFirstLine,
+				stringstyle=\color{MotsClesPseudoCodeChaine},
+				classoffset=0,%
+				keywords={Pour,Fonction,Début,allant,Fin,Si,alors,Sinon,SinonSi,FinSi,FinPour,FinTantQue,TantQue},%
+				keywordstyle=\color{MotsClesPseudoCodeA},%
+				classoffset=1,%
+				morekeywords={Afficher,Retourner,Saisir},%
+				keywordstyle=\color{MotsClesPseudoCodeB},%
+				literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+				{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+				{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+				{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+				{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+				{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+				{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+				{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+				{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+				{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+				{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+				{€}{{\texteuro}}1 {£}{{\pounds}}1%
+				{=}{\textleftarrow}1 {==}{=}1%
+				{*}{$\algomathttPL{\times}$}{1}%
+		}}
+	}%
+	{%
+		\tcblisting{width=\CodePseudoCodeLstLarg,#3,
+			stylepseudocodePLalt,
+			listing only,listing engine=listings,
+			\IfBooleanTF{#1}{}{stylepseudocodePLaltlines},
+			listing options={
+				style=\IfBooleanTF{#1}{pseudocodenoPLalt}{pseudocodePLalt},%version étoilée sans numéro de lignes
+				aboveskip=2pt,belowskip=2pt,
+				columns=fullflexible,firstnumber=\CodePseudoCodeLstFirstLine,
+				literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+				{ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+				{è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+				{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+				{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+				{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+				{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+				{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+				{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+				{ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+				{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+				{€}{{\texteuro}}1 {£}{{\pounds}}1%
+				{=}{\textleftarrow}1 {==}{=}1%
+				{*}{$\algomathttPL{\times}$}{1}%
+		}}
+	}%
+}%
+{%
+	\endtcblisting%
 }
 
+% \DeclareTCBListing{PseudoCodeAlt}{ s O{12cm} m D<>{} }{% étoilée sans numéro, [taille] puis {option tcbox} puis <options listings>...
+	% width=#2,#3,
+	% stylepseudocodePLalt,
+	% listing only,listing engine=listings,
+	% \IfBooleanTF{#1}{}{stylepseudocodePLaltlines},
+	% listing options={
+		% style=\IfBooleanTF{#1}{pseudocodenoPLalt}{pseudocodePLalt},%version étoilée sans numéro de lignes
+		% aboveskip=2pt,belowskip=2pt,
+		% columns=fullflexible,#4,
+		% literate={é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1% 
+		% {ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1%
+		% {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1%
+		% {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1%
+		% {ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1%
+		% {Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1%
+		% {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1%
+		% {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1%
+		% {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1%
+		% {ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1%
+		% {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1%
+		% {€}{{\texteuro}}1 {£}{{\pounds}}1%
+		% {=}{\textleftarrow}1 {==}{=}1%
+		% {*}{$\algomathttPL{\times}$}{1}%
+	% }
+% }
+
 %%------PRESENTATIONDECODES CLASSIQUES
 \NewTCBListing{PresentationCode}{ O{CouleurVertForet} m }{%
 	sharp corners=downhill,enhanced,arc=12pt,skin=bicolor,%

Modified: trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -8,11 +8,23 @@
 % and version 1.3 or later is part of all distributions of LaTeX
 % version 2005/12/01 or later.
 
+% 2.7.5	Argument optionnel pour les numéros de lignes + changement déclaration environnements
 %2.7.3	Correction de la couleur des bordures
 %2.5.8	Style alternatif + Modification marges
 
 %%------PYTHONMINTED
 
+%clés
+\defKV[CodePythonMinted]{%
+	Largeur=\def\CodePythonMintedLarg{#1},%
+	PremLigne=\def\CodePythonMintedPremLigne{#1}
+}
+
+\setKVdefault[CodePythonMinted]{%
+	Largeur=\linewidth,%
+	PremLigne=1
+}
+
 %v1
 \tcbset{pytmintedno/.style={%
 	listing engine=minted,minted style=colorful,
@@ -28,28 +40,72 @@
 	}
 }
 
-\DeclareTCBListing{CodePythonMinted}{ s O{12cm} m }{% étoilée sans numéro, taille puis options...
-	\IfBooleanTF{#1}{pytmintedno}{pytminted},
-	enhanced,width=#2,#3,
-	colframe=CouleurVertForet,colback=CouleurVertForet!5,%
-	boxrule=1.25pt,
-	sharp corners=downhill,arc=12pt,
-	before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
-	left=0.6em,top=\baselineskip,bottom=2mm,right=5mm,%
-	attach boxed title to top right={yshift=-\tcboxedtitleheight},
-	boxed title style={
-		size=small,colback=CouleurVertForet!25,boxrule=1.25pt,
-		colframe=CouleurVertForet,boxsep=1.25pt,
-		sharp corners=downhill,
-		arc=12pt,
-		top=2pt,bottom=1pt,left=6pt,right=6pt
-	},
-	fonttitle=\color{CouleurVertForet}\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{darkgray}\arabic{FancyVerbLine}}
+\NewDocumentEnvironment{CodePythonMinted}{ s O{} m }%nouvelle version avec option minted
+{%
+	\useKVdefault[CodePythonMinted]%
+	\setKV[CodePythonMinted]{#2}%
+	\IfBooleanTF{#1}%
+		{%
+			\tcblisting{listing engine=minted,minted style=colorful,minted language=python,listing only,minted options={tabsize=4,fontsize=\footnotesize,autogobble},enhanced,width=\CodePythonMintedLarg,#3,colframe=CouleurVertForet,colback=CouleurVertForet!5,boxrule=1.25pt,sharp corners=downhill,arc=12pt,before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
+			left=0.6em,top=\baselineskip,bottom=2mm,right=5mm,%
+			attach boxed title to top right={yshift=-\tcboxedtitleheight},
+			boxed title style={
+				size=small,colback=CouleurVertForet!25,boxrule=1.25pt,
+				colframe=CouleurVertForet,boxsep=1.25pt,
+				sharp corners=downhill,
+				arc=12pt,
+				top=2pt,bottom=1pt,left=6pt,right=6pt
+			},
+			fonttitle=\color{CouleurVertForet}\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{darkgray}\arabic{FancyVerbLine}}
+			}
+		}%
+		{%
+			\tcblisting{listing engine=minted,minted style=colorful,minted language=python,listing only,minted options={tabsize=4,fontsize=\footnotesize,autogobble,xleftmargin=16pt,linenos,numbersep=10pt,firstnumber=\CodePythonMintedPremLigne},,enhanced,width=\CodePythonMintedLarg,#3,colframe=CouleurVertForet,colback=CouleurVertForet!5,boxrule=1.25pt,sharp corners=downhill,arc=12pt,before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
+			left=0.6em,top=\baselineskip,bottom=2mm,right=5mm,%
+			attach boxed title to top right={yshift=-\tcboxedtitleheight},
+			boxed title style={
+				size=small,colback=CouleurVertForet!25,boxrule=1.25pt,
+				colframe=CouleurVertForet,boxsep=1.25pt,
+				sharp corners=downhill,
+				arc=12pt,
+				top=2pt,bottom=1pt,left=6pt,right=6pt
+			},
+			fonttitle=\color{CouleurVertForet}\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{darkgray}\arabic{FancyVerbLine}}
+			}
+		}%
+}%
+{%
+	\endtcblisting%
 }
 
+% \DeclareTCBListing{CodePythonMinted}{ s O{12cm} m }{% étoilée sans numéro, taille puis options...
+	% \IfBooleanTF{#1}{pytmintedno}{pytminted},
+	% enhanced,width=#2,#3,
+	% colframe=CouleurVertForet,colback=CouleurVertForet!5,%
+	% boxrule=1.25pt,
+	% sharp corners=downhill,arc=12pt,
+	% before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
+	% left=0.6em,top=\baselineskip,bottom=2mm,right=5mm,%
+	% attach boxed title to top right={yshift=-\tcboxedtitleheight},
+	% boxed title style={
+		% size=small,colback=CouleurVertForet!25,boxrule=1.25pt,
+		% colframe=CouleurVertForet,boxsep=1.25pt,
+		% sharp corners=downhill,
+		% arc=12pt,
+		% top=2pt,bottom=1pt,left=6pt,right=6pt
+	% },
+	% fonttitle=\color{CouleurVertForet}\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{darkgray}\arabic{FancyVerbLine}}
+% }
+
 %v2
 \tcbset{pytmintedaltno/.style={%
 	listing engine=minted,minted style=colorful,
@@ -70,19 +126,29 @@
 	}
 }
 
-\DeclareTCBListing{CodePythonMintedAlt}{ s O{12cm} m }{% étoilée sans numéro, taille puis options...
-	\IfBooleanTF{#1}{pytmintedaltno}{pytmintedalt},
-	width=#2,#3,
-	enhanced,boxrule=0.75pt,colframe=darkgray!50!black,%
-	sharp corners,top=0mm,bottom=0mm,left=0.2em,right=5mm,%
-	before skip=0.5\baselineskip,after skip=0.5\baselineskip,%
-	colback=white,
-	fontupper=\footnotesize,fontlower=\footnotesize,%
-	watermark text={\faPython},watermark opacity=0.25,watermark zoom=0.50,%
-	title={{\scriptsize\faCode} Code Python},
-	lefttitle=0.4em,
-	fonttitle=\bfseries\footnotesize\sffamily,colbacktitle=darkgray!50!black,%
-	before upper=\renewcommand{\theFancyVerbLine}{\scriptsize\ttfamily\color{darkgray}\arabic{FancyVerbLine}}
+\NewDocumentEnvironment{CodePythonMintedAlt}{ s O{} m }%nouvelle version avec option minted
+{%
+	\useKVdefault[CodePythonMinted]%
+	\setKV[CodePythonMinted]{#2}%
+	\IfBooleanTF{#1}%
+		{%
+			\tcblisting{listing engine=minted,minted style=colorful,minted language=python,listing only,minted options={tabsize=4,fontsize=\footnotesize,autogobble},width=\CodePythonMintedLarg,#3,enhanced,boxrule=0.75pt,colframe=darkgray!50!black,sharp corners,top=0mm,bottom=0mm,left=0.2em,right=5mm,before skip=0.5\baselineskip,after skip=0.5\baselineskip,colback=white,fontupper=\footnotesize,fontlower=\footnotesize,watermark text={\faPython},watermark opacity=0.25,watermark zoom=0.50,title={{\scriptsize\faCode} Code Python},lefttitle=0.4em,fonttitle=\bfseries\footnotesize\sffamily,colbacktitle=darkgray!50!black,before upper=\renewcommand{\theFancyVerbLine}{\scriptsize\ttfamily\color{darkgray}\arabic{FancyVerbLine}}}
+		}%
+		{%
+			\tcblisting{listing engine=minted,minted style=colorful,
+				minted language=python,listing only,
+				minted options={tabsize=4,fontsize=\footnotesize,autogobble,xleftmargin=16pt,linenos,numbersep=10pt,firstnumber=\CodePythonMintedPremLigne},
+				underlay={%
+					\begin{tcbclipinterior}
+						\draw[draw=none,fill=lightgray!25] (interior.south west) rectangle ([xshift=1.3em]interior.north west) ;
+					\end{tcbclipinterior}%
+					},
+				width=\CodePythonMintedLarg,#3,enhanced,boxrule=0.75pt,colframe=darkgray!50!black,sharp corners,top=0mm,bottom=0mm,left=0.2em,right=5mm,before skip=0.5\baselineskip,after skip=0.5\baselineskip,colback=white,fontupper=\footnotesize,fontlower=\footnotesize,watermark text={\faPython},watermark opacity=0.25,watermark zoom=0.50,title={{\scriptsize\faCode} Code Python},lefttitle=0.4em,fonttitle=\bfseries\footnotesize\sffamily,colbacktitle=darkgray!50!black,before upper=\renewcommand{\theFancyVerbLine}{\scriptsize\ttfamily\color{darkgray}\arabic{FancyVerbLine}}
+			}
+		}%
+}%
+{%
+	\endtcblisting%
 }
 
 \endinput
\ No newline at end of file

Modified: trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -8,6 +8,7 @@
 % and version 1.3 or later is part of all distributions of LaTeX
 % version 2005/12/01 or later.
 
+%2.7.5	Ajout d'un argument optionnel pour commencer les codes python à un numéro de ligne différent de 1
 %2.7.3	Correction de la couleur des bordures
 %2.6.9	Amalioration de la gestion des style := intégration directe dans la tcbox !
 %2.5.9	Ajout d'une clé pour la couleur des nombres
@@ -85,7 +86,7 @@
 %==Création de la boîte (essai v2 ?)
 \ifluatex
 \RequirePackage{piton}
-\NewPitonEnvironment{CodePiton}{ O{} m }%
+\NewPitonEnvironment{CodePiton}{ O{} m D<>{} }%
 {%
 	\tcbset{reset}
 	\useKVdefault[envpiton]%
@@ -93,7 +94,7 @@
 	%------les styles piton
 	\SetPitonStyle{ Number = \color{\CODPITcolnb} }%
 	\ifboolKV[envpiton]{Lignes}%si lignes=true
-		{\PitonOptions{left-margin=0.75em,all-line-numbers}}%left-margin=auto,
+		{\PitonOptions{left-margin=0.75em,all-line-numbers,line-numbers={#3}}}%left-margin=auto,
 		{}%
 	\ifboolKV[envpiton]{Gobble}%si gobble=true
 		{\PitonOptions{tabs-auto-gobble}}%
@@ -135,10 +136,10 @@
 		}
 		{}%
 	%on crée la boîte
-	\begin{tcolorbox}[stylebase,filigrane,cadre,titre]
+	\tcolorbox[stylebase,filigrane,cadre,titre]
 }%
 {%
-	\end{tcolorbox}%
+	\endtcolorbox%
 }
 \fi
 

Modified: trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex	2023-09-19 20:05:43 UTC (rev 68322)
+++ trunk/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-pythontex.tex	2023-09-19 20:05:54 UTC (rev 68323)
@@ -8,6 +8,7 @@
 % and version 1.3 or later is part of all distributions of LaTeX
 % version 2005/12/01 or later.
 
+%2.7.5	Argument optionnel pour commencer la numérotation à une autre ligne que 1
 %2.7.3	Correction de la couleur des bordures
 %2.5.8	Style alternatif + Modification marges + Modification arguments
 
@@ -51,6 +52,7 @@
 %=========CODEPYTHONTEX=========== OK!!
 \defKV[envpythonverb]{%
 	Largeur=\def\CODPYlargeur{#1},%
+	PremLigne=\def\CODPYpremligne{#1},%
 	TaillePolice=\def\CODPYfonte{#1},%
 	EspacementVertical=\def\CODPYstretch{#1}
 %	Centre=\testboolKV{#1}
@@ -60,6 +62,7 @@
 
 \setKVdefault[envpythonverb]{%
 	Largeur=\linewidth,%
+	PremLigne=1,%
 %	Centre=false,%
 	Lignes=true,%
 	TaillePolice=\footnotesize,%
@@ -117,7 +120,7 @@
 		{\begin{tcpythontexcode}[\CODPYlargeur]{#2}}
 		{\begin{tcpythontexcodeno}[\CODPYlargeur]{#2}}
 	\ifboolKV[envpythonverb]{Lignes}%si lignes=true
-		{\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,numbersep=0.75em,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
+		{\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,firstnumber=\CODPYpremligne,numbersep=0.75em,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
 		{\begin{pyverbatim}[][numbers=none,numbersep=0pt,fontsize=\CODPYfonte,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
 }%
 {%
@@ -175,7 +178,7 @@
 		{\begin{tcpythontexcodealt}[\CODPYlargeur]{#2}}
 		{\begin{tcpythontexcodenoalt}[\CODPYlargeur]{#2}}
 	\ifboolKV[envpythonverb]{Lignes}%si lignes=true
-		{\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,numbersep=0.75em,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
+		{\begin{pyverbatim}[][fontsize=\CODPYfonte,numbers=left,firstnumber=\CODPYpremligne,numbersep=0.75em,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
 		{\begin{pyverbatim}[][numbers=none,numbersep=0pt,fontsize=\CODPYfonte,commandchars=\\\{\},mathescape,baselinestretch=\CODPYstretch]}
 }%
 {%



More information about the tex-live-commits mailing list.