summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-02-16 21:18:00 +0000
committerKarl Berry <karl@freefriends.org>2022-02-16 21:18:00 +0000
commit4f7782c045c8ec12175a97e5b11b8f3e1195d52f (patch)
treedde0e2ab25c471735f1a0a054699c047becb27e1
parent5c5a82189b9d4d1a5554e0fc3f12012797cc46d4 (diff)
proflycee (16feb22)
git-svn-id: svn://tug.org/texlive/trunk@62045 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdfbin362084 -> 426042 bytes
-rw-r--r--Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex452
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty292
3 files changed, 551 insertions, 193 deletions
diff --git a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf
index 28ebf75edbe..e5c9cd11562 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 c328b4035f2..b513bc9a738 100644
--- a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
+++ b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex
@@ -1,6 +1,5 @@
-% !TeX TXS-program:compile = txs:///pythonpdfse
-
\documentclass{article}
+\usepackage[french]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[upright]{fourier}
@@ -8,9 +7,7 @@
\renewcommand\ttdefault{lmtt}
\usepackage[scaled=0.875]{cabin}
\usepackage{ProfLycee}
-\usepackage[most]{tcolorbox}
\usetikzlibrary{hobby}
-\usepackage[french]{babel}
\usepackage{siunitx}
\usepackage{graphics}
\usepackage{hvlogos}
@@ -21,40 +18,6 @@
\usepackage{hyperref}
\hypersetup{pdfborder=0 0 0}
-\usepackage{listings}
-
-\lstset{%
- classoffset = 0,%
- language = [LaTeX]TeX,%
- basicstyle = \ttfamily,%
- breaklines = true,%
- commentstyle =\color{gray},%
- columns=fullflexible,%
- keepspaces,
- frame=tb,%
- %texcsstyle=*\color{blue},%pour colorer la contre-oblique
- alsoletter={\\},%
- keywordstyle=\color{blue},%
- emph=[1]{tkz,ProfLycee,ProfCollege},%
- emphstyle=[1]{\color{blue}},%
- emph=[3]{beamer},%
- emphstyle=[3]{\color{red}},%
- classoffset=1,%
- keywords={Ecran},%
- keywordstyle=\color{green},%
- classoffset=0,%
- literate=*{[}{{\textcolor{orange}{[}}}{1}
- {]}{{\textcolor{orange}{]}}}{1}
- {\{}{\textcolor{amber}{\{}}{1}
- {\}}{\textcolor{amber}{\}}}{1}
- {\&}{\textcolor{red}{\&}}{1}
- {\\[}{{\textcolor{purple}{\textbackslash[}}}{2}
- {\\]}{{\textcolor{purple}{\textbackslash]}}}{2}
- {$}{{\textcolor{purple}{\$}}}{1}%$
- {_}{{\textcolor{purple}{\_}}}{1}%
- {^}{{\textcolor{purple}{\^{}}}}{1}%,
-}
-
\usepackage{minted}
\sisetup{locale=FR}
\usepackage{geometry}
@@ -172,7 +135,7 @@
{\ttfamily c pierquet -- at -- outlook . fr}
\end{tabular}
}
-\date{Version 1.0.2 -- 13 Février 2022}
+\date{Version 1.0.5 -- 16 Février 2022}
\newcommand\Cle[1]{{\bfseries\sffamily\textlangle #1\textrangle}}
@@ -189,7 +152,7 @@
\noindent Quelques commandes (dans des environnements \TikZ) pour faciliter l'utilisation
de \LaTeX{} pour les enseignants de mathématiques en lycée.\\
-\bigskip
+\newpage
\tableofcontents
@@ -205,7 +168,20 @@ On peut le voir comme un (maigre) complément à \ctex{ProfCollege}, et je préc
\medskip
-L'idée est donc de conserver l'idée de \Cle{Clés} qui sont :
+Il se charge, dans le préambule, par \ctex{\textbackslash usepackage\{ProfLycee\}}.
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
+\documentclass{article}
+\usepackage[french]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{ProfLycee}
+...
+\end{minted}
+
+\medskip
+
+L'idée est de conserver l'idée de \Cle{Clés} qui sont :
%
\begin{itemize}
\item modifiables ;
@@ -633,7 +609,7 @@ Ainsi, le code :
\paramCF[titre=true,couleurcmd=olive,couleurres=orange]
\ligneCF{COMMANDE 1}{RÉSULTAT 1}
\ligneCF{\texttt{(x+1)\chap2}}{$\mathtt{x^2+2x+1}$}
- \ligneCF[HC=1,HR=1]{\textsf{Dérivée[(x+5)*exp(-0.1*x)]}}{$\mathsf{\rightarrow (0.5-0.1*x)*exp(-0.1*x)}$}
+ \ligneCF[hc=1,hr=1.25]{\textsf{Dérivée[(x+5)*exp(-0.1*x)]}}{$\mathsf{\rightarrow (0.5-0.1*x)*exp(-0.1*x)}$}
\end{tikzpicture}
\end{minted}
@@ -705,7 +681,13 @@ Le \textsf{package} \ctex{pythontex} permet d'insérer et d'exécuter du code Py
\item charger du code python, et éventuellement l'utiliser dans la console.
\end{itemize}
-\subsection{Présentation de code Python}
+\medskip
+
+\textbf{Attention : }il faut dans ce cas une compilation en plusieurs parties, comme par exemple \textsf{pdflatex puis pythontex puis pdflatex} !
+
+Voir par exemple \url{http://lesmathsduyeti.fr/fr/informatique/latex/pythontex/} !
+
+\subsection{Présentation de code Python via pythontex}
L'environnement \ctex{\textbackslash envcodepythontex} (chargé par \ctex{ProfLycee}, avec l'option \textit{autogobble}) permet de présenter du code python, dans une \ctex{colorbox} avec un style particulier.
@@ -763,6 +745,70 @@ produira :
\newpage
+\subsection{Présentation de code Python via minted}
+
+Pour celles et ceux qui ne sont pas à l'aise avec le \textsf{package} \ctex{pythontex} et notamment sa spécificité pour compiler, il existe le \textsf{package} \ctex{minted} qui permet de présenter du code, et notamment python (il nécessite quand même une compilation avec l'option \ctex{--shell-escape} ou \ctex{-write18}).
+
+\medskip
+
+L'environnement \ctex{\textbackslash envcodepythonminted} permet de présenter du code python, dans une \ctex{colorbox} avec un style (\textit{minted}) particulier.
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
+\begin{envcodepythonminted}(*)[largeur][options]
+...
+\end{envcodepythonminted}
+\end{minted}
+
+Plusieurs \Cle{arguments} (optionnels) sont disponibles :
+
+\begin{itemize}
+ \item la version \textit{étoilée} qui permet de 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}
+\end{itemize}
+
+\medskip
+
+Ainsi le code :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{envcodepythonminted}[12cm][center]
+ #environnement Python(minted) centré avec numéros, de largeur 12cm
+ def f(x) :
+ return x**2
+\end{envcodepythonminted}
+\end{minted}
+
+produira :
+
+\begin{envcodepythonminted}[12cm][center]
+ #environnement Python(minted) centré avec numéros
+ def f(x) :
+ return x**2
+\end{envcodepythonminted}
+
+\medskip
+
+Et le code :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{envcodepythonminted}*[0.8\linewidth][]
+ #environnement Python(minted) sans numéro, de largeur 0.8\linewidth
+ def f(x) :
+ return x**2
+\end{envcodepythonminted}
+\end{minted}
+
+produira :
+
+\begin{envcodepythonminted}*[0.8\linewidth][]
+ #environnement Python(minted) sans numéro, de largeur 0.8\linewidth
+ def f(x) :
+ return x**2
+\end{envcodepythonminted}
+
+\newpage
+
\subsection{Console d'exécution Python}
\ctex{pythontex} permet également de \textit{simuler} (en exécutant également !) du code python dans une \textit{console}.
@@ -833,157 +879,183 @@ Cela peut donner -- en tout cas -- des idées de personnalisation en ayant une b
\newpage
+\section{Pseudo-Code}
+
+\subsection{Introduction}
+
+Le \textsf{package} \ctex{listings} permet d'insérer et de présenter du code, et avec \ctex{tclorobx} on peut obtenir une présentation similaire à celle du code Python. Pour le moment la \textit{philosophie} de la commande est un peu différente de celle du code python, avec son système de \Cle{Clés}, car l'environnement \ctex{tcblisting} est un peu différente\ldots
+
+\subsection{Présentation de Pseudo-Code}
+
+L'environnement \ctex{\textbackslash envpseudocode} (chargé par \ctex{ProfLycee} permet de présenter du (pseudo-code) dans une \ctex{tcolorbox}.
+
+\smallskip
+
+De plus, le package \ctex{listings} avec \ctex{tcolorbox} ne permet pas de gérer le paramètre \textit{autogobble}, donc il faudra être vigilant quant à la position du code (pas de tabulation en fait\ldots)
+
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
+\begin{envpseudocode}(*)[largeur][options]
+%attention à l'indentation, gobble ne fonctionne pas...
+...
+\end{envpseudocode}
+\end{minted}
+
+Plusieurs \Cle{arguments} (optionnels) sont disponibles :
+
+\begin{itemize}
+ \item la version \textit{étoilée} qui permet de 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}
+\end{itemize}
+
+\medskip
+
+Ainsi le code :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{envpseudocode}
+%non centré, de largeur par défaut (12cm) avec lignes
+List = [...] # à déclarer au préalable
+n = longueur(List)
+Pour i allant de 0 à n-1 Faire
+ Afficher(List[i])
+FinPour
+\end{envpseudocode}
+\end{minted}
+
+produira :
+
+\begin{envpseudocode}
+List = [...] # à déclarer au préalable
+n = longueur(List)
+Pour i allant de 0 à n-1 Faire
+ Afficher(List[i])
+FinPour
+\end{envpseudocode}
+
+\medskip
+
+Et le code :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{envpseudocode}*[15cm][center]
+%centré, de largeur 15cm sans ligne
+List = [...] # à déclarer au préalable
+n = longueur(List)
+Pour i allant de 0 à n-1 Faire
+ Afficher(List[i])
+FinPour
+\end{envpseudocode}
+\end{minted}
+
+produira :
+
+\begin{envpseudocode}*[15cm][center]
+List = [...] # à déclarer au préalable
+n = longueur(List)
+Pour i allant de 0 à n-1 Faire
+ Afficher(List[i])
+FinPour
+\end{envpseudocode}
+
+\newpage
+
+\section{Terminal Windows/UNiX/OSX}
+
+\subsection{Introduction}
+
+L'idée des \textsf{commandes} suivantes est de permettre de simuler des fenêtres de \textsf{Terminal}, que ce soit pour Windows, Ubuntu ou OSX.
+
+\smallskip
+
+Le \textsf{contenu} est géré par le package \ctex{listings}, sans langage particulier, et donc sans coloration syntaxique particulière.
+
+\smallskip
+
+Comme pour le pseudo-code, pas d'\textsf{autogobble}, donc commandes à aligner à gauche !
+
+\subsection{Commandes}
+
+Les (trois) environnements disponibles sont :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{PLtermwin}[largeur]{titre=...}[options]
+...
+
+\begin{PLtermunix}[largeur]{titre=...}[options]
+...
+
+\begin{PLtermosx}[largeur]{titre=...}[options]
+...
+\end{minted}
+
+Peu d'options pour ces commandes :
+
+\begin{itemize}
+ \item le premier, optionnel, est la \Cle{largeur} de la \ctex{tcbox} ;\hfill{}défaut \Cle{\textbackslash linewidth}
+ \item le deuxième, mandataire, permet de spécifier le titre par la clé \Cle{titre}.\hfill{}défaut \Cle{Terminal Windows/UNiX/OSX}
+ \item le troisième, optionnel, concerne les \Cle{options} de la \ctex{tcbox} en \textit{langage tcolorbox}.\hfill{}défaut \Cle{vide}
+\end{itemize}
+
+\medskip
+
+Ainsi le code :
+
+\begin{minted}[frame=lines,framesep=2mm,bgcolor=lightgray!5,fontsize=\footnotesize,tabsize=4]{tex}
+\begin{PLtermwin}[15cm]{} %largeur 15cm avec titre par défaut
+Microsoft Windows [version 10.0.22000.493]
+(c) Microsoft Corporation. Tous droits réservés.
+
+C:\Users\test>ping -c 2ctan.org
+Envoi d'une requête 'ping' sur ctan.org [5.35.249.60] avec 32 octets de données :
+\end{PLtermwin}
+
+\begin{PLtermunix}[12cm]{titre=Terminal Ubuntu}[center] %12cm, avec titre modifié et centré
+test@DESKTOP:~$ ping -c 2 ctan.org
+PING ctan.org (5.35.249.60) 56(84) bytes of data.
+\end{PLtermunix}
+
+\begin{PLtermosx}[0.5\linewidth]{titre=Terminal MacOSX}[flush right] %1/2-largeur et titre modifié et droite
+[test@server]$ ping -c 2 ctan.org
+PING ctan.org (5.35.249.60) 56(84) bytes of data.
+\end{PLtermosx}
+\end{minted}
+
+produira :
+
+\begin{PLtermwin}[15cm]{}
+Microsoft Windows [version 10.0.22000.493]
+(c) Microsoft Corporation. Tous droits réservés.
+
+C:\Users\test>ping -c 2ctan.org
+Envoi d'une requête 'ping' sur ctan.org [5.35.249.60] avec 32 octets de données :
+\end{PLtermwin}
+
+\begin{PLtermunix}[12cm]{titre=Terminal Ubuntu}[center]
+test@DESKTOP:~$ ping -c 2 ctan.org
+PING ctan.org (5.35.249.60) 56(84) bytes of data.
+\end{PLtermunix}
+
+\begin{PLtermosx}[0.5\linewidth]{titre=Terminal MacOSX}[flush right]
+[test@server]$ ping -c 2 ctan.org
+PING ctan.org (5.35.249.60) 56(84) bytes of data.
+\end{PLtermosx}
+
+\newpage
+
\section{Historique}
-{\small \bverb|v1.0.2| : Ajout des environnements pour Python
+{\small \bverb|v1.0.5| : Ajout d'un environnement pour Python (minted)
-{\small \bverb|v1.0.1| : Modification mineure liée au chargement de \ctex{xcolor}
+{\small \bverb|v1.0.4| : Ajout des environnements pour Terminal (win, osx, unix)
-{\small \bverb|v1.0 | : Version initiale}
+{\small \bverb|v1.0.3| : Ajout des environnements pour PseudoCode
-%\newpage
-%
-%\section{Codes du package splinetikz.sty}
-%
-%\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
-%\NeedsTeXFormat{LaTeX2e}
-%\ProvidesPackage{splinetikz}[2022/02/10 - v1.0 - Splines cubiques, en TikZ]
-%
-%%------Packages utiles
-%\RequirePackage[dvipsnames,table]{xcolor}
-%\RequirePackage{tikz}
-%\RequirePackage{pgf,pgffor,pgfplots}
-%\pgfplotsset{compat=1.18}
-%\RequirePackage{ifthen}
-%\RequirePackage{xkeyval}
-%\RequirePackage{xfp}
-%\RequirePackage{xstring}
-%\RequirePackage{simplekv}
-%\RequirePackage{listofitems}
-%\RequirePackage{xintexpr}
-%\usetikzlibrary{decorations.pathreplacing}
-%\usetikzlibrary{decorations.markings}
-%\usetikzlibrary{arrows.meta}
-%\end{minted}
-%
-%\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
-%%------commande utile pour extraire des infos d'une liste
-%\newcommand\extractcoeff[2]{% #1=liste & #2=numero
-% \setsepchar{§}%
-% \readlist\lcoeffs{#1}
-% \ifnum \lcoeffslen=1
-% \def\COEFFA{#1}
-% \def\COEFFB{#1}
-% \else
-% \itemtomacro\lcoeffs[#2]\COEFF
-% \IfSubStr{\COEFF}{/}%
-% {\StrCut{\COEFF}{/}{\COEFFA}{\COEFFB}}%
-% {\def\COEFFA{\COEFF}\def\COEFFB{\COEFF}}
-% \fi
-%}
-%\end{minted}
-%
-%\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2]{tex}
-%%------tangente(s) en TikZ, avec point/dérivée ou liste points/dérivées
-%\defKV[tgte]{%
-% liste=\def\TGTliste{#1},%
-% width=\def\TGTepaisseur{#1},%
-% couleur=\def\TGTcouleur{#1},%
-% xl=\def\TGTXL{#1},%
-% xr=\def\TGTXR{#1},%
-% style=\def\TGTstyle{#1},%
-% point=\def\TGTnumpt{#1}
-%}
-%
-%\setKVdefault[tgte]{
-% liste=,%
-% width=1.25pt,%
-% couleur=red,%
-% xl=0.5,xr=0.5,%
-% style=,%
-% point=1
-%}
-%
-%\newcommand\tangentetikz[1][]{%
-% \useKVdefault[tgte]%
-% \setKV[tgte]{#1}% on paramètres les nouvelles clés et on les simplifie
-% \setsepchar[.]{§./}%
-% \readlist\TGTlistepoints\TGTliste
-% \itemtomacro\TGTlistepoints[\TGTnumpt,1]\xa
-% \itemtomacro\TGTlistepoints[\TGTnumpt,2]\ya
-% \itemtomacro\TGTlistepoints[\TGTnumpt,3]\fprimea
-% \def\TGTDEB{\fpeval{\xa-\TGTXL}}\def\TGTFIN{\fpeval{\xa+\TGTXR}}%
-% \draw[line width=\TGTepaisseur,\TGTcouleur,domain=\TGTDEB:\TGTFIN,\TGTstyle] plot (\x,{\fprimea*(\x-\xa)+\ya}) ;%
-%}
-%\end{minted}
-%
-%\begin{minted}[frame=lines,framesep=2mm,bgcolor=LightGray,fontsize=\footnotesize,tabsize=2,breaklines]{tex}
-%%------splines en tikz avec ..controls
-%\defKV[spline]{%
-% liste=\def\SPLliste{#1},%
-% width=\def\SPLepaisseur{#1},%
-% couleur=\def\SPLcouleur{#1},%
-% coeffs=\def\SPLcoeffs{#1},%
-% couleurpoints=\def\SPLcouleurpoints{#1},%
-% taillepoints=\def\SPLtaillepoints{#1},%
-% style=\def\SPLstyle{#1}
-%}
-%
-%\setKVdefault[spline]{%
-% liste=,%
-% width=1.25pt,%
-% couleur=red,%
-% coeffs=3,%
-% couleurpoints=black,%
-% taillepoints=2pt,%
-% affpoints=false,%
-% style=
-%}
-%
-%\newcommand\splinetikz[1][]{%
-% \useKVdefault[spline]
-% \setKV[spline]{#1}% on paramètres les nouvelles clés et on les simplifie
-% %on lit la liste des points/nbderivés et on stocke dans \listepoints
-% \setsepchar[.]{§./}
-% \readlist\SPLlistepoints\SPLliste
-% \def\SPLnbsplines{\inteval{\SPLlistepointslen-1}}
-% %si uniquement deux points, pas de boucle...
-% \ifnum \SPLlistepointslen=2
-% %extraction des coeffs de compensation
-% \extractcoeff{\SPLcoeffs}{1}
-% %extraction des coordonnées
-% \itemtomacro\SPLlistepoints[1,1]\xa
-% \itemtomacro\SPLlistepoints[1,2]\ya
-% \itemtomacro\SPLlistepoints[1,3]\fprimea
-% \itemtomacro\SPLlistepoints[2,1]\xb
-% \itemtomacro\SPLlistepoints[2,2]\yb
-% \itemtomacro\SPLlistepoints[2,3]\fprimeb
-% \draw[line width=\SPLepaisseur,\SPLcouleur,\SPLstyle] (\xa,\ya) ..controls +({atan \fprimea}:{(\xb-\xa)/\COEFFA}) and +({-180 + atan \fprimeb}:{(\xb-\xa)/\COEFFA}).. (\xb,\yb) ;%
-% %sinon on construit bout par bout !
-% \else
-% \foreach \i in {1,2,...,\SPLnbsplines}{
-% %extraction des coeffs de compensation
-% \extractcoeff{\SPLcoeffs}{\i}
-% \def\j{\inteval{\i+1}}
-% \itemtomacro\SPLlistepoints[\i,1]\xa
-% \itemtomacro\SPLlistepoints[\i,2]\ya
-% \itemtomacro\SPLlistepoints[\i,3]\fprimea
-% \itemtomacro\SPLlistepoints[\j,1]\xb
-% \itemtomacro\SPLlistepoints[\j,2]\yb
-% \itemtomacro\SPLlistepoints[\j,3]\fprimeb
-% \draw[line width=\SPLepaisseur,\SPLcouleur,\SPLstyle] (\xa,\ya) ..controls +({atan \fprimea}:{(\xb-\xa)/\COEFFA}) and +({-180 + atan \fprimeb}:{(\xb-\xa)/\COEFFB}).. (\xb,\yb) ;%
-% }
-% \fi
-% \ifboolKV[spline]{affpoints}%on affiche les points de contrôle
-% {%
-% \foreach \i in {1,2,...,\SPLlistepointslen}{%
-% \itemtomacro\SPLlistepoints[\i,1]\xa
-% \itemtomacro\SPLlistepoints[\i,2]\ya
-% \filldraw[\SPLcouleurpoints] (\xa,\ya) circle[radius=\SPLtaillepoints] ;%
-% }
-% }
-% {}
-%}
-%\end{minted}
+{\small \bverb|v1.0.2| : Ajout des environnements pour Python (pythontex)
+
+{\small \bverb|v1.0.1| : Modification mineure liée au chargement de \ctex{xcolor}
+
+{\small \bverb|v1.0 | : Version initiale}
\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
index ceaf2ef1911..89388888687 100644
--- a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
+++ b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
@@ -3,22 +3,29 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2022/02/13 - v1.0.2 - Aide pour l'utilisation de LaTeX en lycée]
+\ProvidesPackage{ProfLycee}[2022/02/16 - v1.0.5 - Aide pour l'utilisation de LaTeX en lycée]
+% 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
%------Packages utiles
\RequirePackage[table,svgnames]{xcolor}%Gestion des couleurs
+\RequirePackage{amssymb}
\RequirePackage{tikz}
\RequirePackage{pgf,pgffor}
\RequirePackage{ifthen}
+\RequirePackage{environ}
+\RequirePackage{xparse}
\RequirePackage{xkeyval}
\RequirePackage{xfp}
\RequirePackage{xstring}
\RequirePackage{simplekv}
\RequirePackage{listofitems}
\RequirePackage{xintexpr}
+\RequirePackage{tabularray}
\RequirePackage{fontawesome5}
%librairies tikz
\usetikzlibrary{calc}
@@ -248,7 +255,6 @@
{}
}
-
%=========CONSOLEPYTHON=========== OK !!
\defKV[envpythonconsole]{%
largeur=\def\CSPYlargeur{#1},%
@@ -309,7 +315,7 @@
top=2pt,bottom=1pt,left=6pt,right=6pt
},
fonttitle=\color{ForestGreen}\itshape\ttfamily\footnotesize,
- title={\scriptsize\faPython}\:Code Python\vphantom{/},
+ title={\scriptsize\faPython}\:Code Python\vphantom{p},
watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50,
}
}
@@ -358,4 +364,284 @@
\verbcenterpost
}
+%=========PYTHONMINTED========= OK !!
+\tcbuselibrary{minted}
+
+\tcbset{pytmintedno/.style={%
+ listing engine=minted,minted style=colorful,
+ minted language=python,listing only,
+ minted options={tabsize=4,fontsize=\small,autogobble},
+ }
+}
+
+\tcbset{pytminted/.style={%
+ listing engine=minted,minted style=colorful,
+ minted language=python,listing only,
+ minted options={tabsize=4,fontsize=\small,autogobble,xleftmargin=16pt,linenos,numbersep=10pt},
+ }
+}
+
+\DeclareTCBListing{envcodepythonminted}{ s O{12cm} O{} }{% étoilée sans numéro, taille puis option...
+ \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}}
+}
+
+%=========PSEUDOCODE=========== OK !!
+\ifluatex
+ \tcbuselibrary{listings}
+ \lstdefinelanguage{langnat}{%
+ keywords={},
+ inputencoding=utf8,
+ comment=[l]{}}
+\else
+ \tcbuselibrary{listingsutf8}
+ \lstdefinelanguage{langnat}{%
+ keywords={},
+ inputencoding=utf8/latin1,
+ comment=[l]{}}
+\fi
+
+%language pseudocode listings
+\lstdefinestyle{pseudocodePL}{%
+ language=langnat,
+ basicstyle=\footnotesize\ttfamily,
+ numberstyle=\scriptsize\ttfamily\color{gray},
+ keywordstyle=\bfseries,
+ stringstyle=\color{red!75},
+ keepspaces=true,
+ tabsize=4,numbersep=10pt,
+ xleftmargin=14pt,
+ numbers=left,
+ morestring=[b]",
+ showstringspaces=false,
+ %showtabs=false,
+ escapeinside={(*}{*)}
+}
+
+\lstdefinestyle{pseudocodenoPL}{%
+ language=langnat,
+ basicstyle=\footnotesize\ttfamily,
+ numberstyle=\scriptsize\ttfamily\color{gray},
+ keywordstyle=\bfseries,
+ stringstyle=\color{red!75},
+ keepspaces=true,
+ tabsize=4,numbersep=10pt,
+ numbers=none,
+ showstringspaces=false,
+ morestring=[b]",
+ %showtabs=true,
+ escapeinside={(*}{*)}
+}
+
+%style tcbox pseudocode avec bannière hautdroite
+\tcbset{stylepseudocodePL/.style={%
+ %fontupper=\small\sffamily,%
+ enhanced,boxrule=1.25pt,sharp corners=downhill,arc=12pt,
+ before skip=12pt,after skip=12pt,leftupper=10pt,top=8pt,bottom=2pt,rightupper=4pt,%
+ attach boxed title to top right={yshift=-\tcboxedtitleheight},
+ boxed title style={
+ size=small,colback=gray!25,boxrule=1.25pt,
+ colframe=darkgray,boxsep=1.25pt,
+ sharp corners=downhill,
+ arc=12pt,
+ top=2pt,bottom=1pt,left=6pt,right=6pt
+ },
+ fonttitle=\color{darkgray}\ttfamily\footnotesize,
+ title={\scriptsize\faFileCode}\:\textit{Pseudo-Code}\vphantom{p},
+ watermark text={\faCode},watermark opacity=0.175,watermark zoom=0.50,
+ }
+}
+
+\ifluatex
+ \newcommand\algomathttPL[1]{\symtt{#1}}
+\else
+ \newcommand\algomathttPL[1]{\mathtt{#1}}
+\fi
+
+\DeclareTCBListing{envpseudocode}{ s O{12cm} O{} }{% é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=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}%
+ }
+}
+
+%============FakeTerm===========
+%couleurs (inspirées par termsim !)
+\definecolor{PLmpurple}{RGB}{48,10,36}
+\definecolor{PLmgray}{RGB}{70,72,67}
+\definecolor{PLogray}{RGB}{148,147,141}
+\definecolor{PLoorange}{RGB}{233,101,56}
+\definecolor{PLterminal}{RGB}{80,78,70}
+\definecolor{PLlinux}{RGB}{0,39,51}
+\definecolor{PLwinblue}{HTML}{1883D7}
+\definecolor{PLosxgray}{HTML}{D8D6D9}
+
+%WINDOWS
+\tcbset{PLfaketermwin/.style={%
+ enhanced,boxrule=1pt,sharp corners,before skip=12pt,after skip=12pt,%
+ colframe=PLwinblue,colback=black,colbacktitle=white,colupper=white,coltitle=black,%
+ titlerule=0.4pt,left=2pt,top=2pt,bottom=2pt,right=2pt,middle=2pt,%
+ fonttitle=\bfseries\small\sffamily
+ }
+}
+
+\setKVdefault[fakeTERMwin]{titre={Terminal Windows}}
+
+\newcommand\PLcommandeswin{%
+ \begin{tikzpicture}[thick,scale=0.66]
+ \draw (0,0)--(1em,0) ; \draw (2em,0) rectangle (3em,1em) ; \draw (4em,1em)--(5em,0) (4em,0)--(5em,1em) ;
+ \end{tikzpicture}%
+}
+
+\newcommand\termwintitre[1][]{%
+ \restoreKV[fakeTERMwin]
+ \setKV[fakeTERMwin]{#1}
+ \begin{tblr}{colsep=0pt,rowsep=0pt,width=\linewidth,colspec={X[l]r}}
+ {\footnotesize\faTerminal}~~\useKV[fakeTERMwin]{titre} & \PLcommandeswin \\ %
+ \end{tblr}
+}
+
+\DeclareTCBListing{PLtermwin}{ O{\linewidth} m !O{} }{%[taille] puis {titre=...} puis [option]
+ PLfaketermwin,title={\termwintitre[#2]},%
+ listing only,listing engine=listings,%
+ listing options={style=tcblatex,language={},basicstyle=\footnotesize\ttfamily},%
+ width=#1,#3
+}
+
+%LINUX
+\newcommand{\PLUbuntuWhite}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[PLmgray] (0,0.25em) circle[radius=0.5em] ;
+ \end{tikzpicture}%
+}
+\newcommand{\PLUbuntuMin}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[color=PLogray!50!white] (0,0.25em) circle[radius=0.5em];
+ \draw[PLterminal](-0.35em,0.25em)--(0.35em,0.25em);
+ \end{tikzpicture}%
+}
+\newcommand{\PLUbuntuClose}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[color=PLoorange!70!white] (0,0.25em) circle[radius=0.5em];
+ \draw[PLterminal] (-0.32em,-0.07em)--(0.32em,0.57em);
+ \draw[PLterminal] (-0.32em,0.57em)--(0.32em,-0.07em);
+ \end{tikzpicture}%
+}
+\newcommand{\PLUbuntuMax}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[color=PLogray!50!white] (0,0.25em) circle[radius=0.5em];
+ \draw[PLterminal] (-0.32em,0.5em) rectangle (0.32em,0);
+ \end{tikzpicture}%
+}
+
+\tcbset{PLtermlinux/.style={%
+ enhanced,boxrule=1pt,arc=4pt,before skip=12pt,after skip=12pt,%
+ colframe=PLmgray,colback=PLmpurple,colbacktitle=PLmgray,colupper=white,coltitle=white,%
+ titlerule=0.4pt,left=2pt,top=2pt,bottom=2pt,right=2pt,middle=2pt,%
+ fonttitle=\bfseries\small\sffamily
+ }
+}
+
+\setKVdefault[fakeTERMnux]{titre={Terminal UNiX}}
+
+\newcommand\termnuxtitre[1][]{%
+ \restoreKV[fakeTERMnux]
+ \setKV[fakeTERMnux]{#1}
+ \begin{tblr}{colsep=0pt,rowsep=0pt,width=\linewidth,colspec={lX[c]r}}
+ \PLUbuntuWhite~~\PLUbuntuWhite~~\PLUbuntuWhite & \vphantom{p}\useKV[fakeTERMnux]{titre} & \PLUbuntuMin~~\PLUbuntuMax~~\PLUbuntuClose \\
+ \end{tblr}
+}
+
+\DeclareTCBListing{PLtermunix}{ O{\linewidth} m !O{} }{%[taille] puis {titre=...} puis [option]
+ PLtermlinux,title={\termnuxtitre[#2]},%
+ listing only,listing engine=listings,%
+ listing options={style=tcblatex,language={},basicstyle=\footnotesize\ttfamily},%
+ width=#1,#3
+}
+
+%OSX
+\tcbset{PLfaketermosx/.style={%
+ enhanced,boxrule=1pt,arc=6pt,before skip=12pt,after skip=12pt,%
+ colframe=PLosxgray,colback=lightgray!15,colbacktitle=PLosxgray,colupper=black,coltitle=black,%
+ titlerule=0.4pt,left=2pt,top=2pt,bottom=2pt,right=2pt,middle=2pt,%
+ fonttitle=\bfseries\small\sffamily
+ }
+}
+
+\newcommand{\PLOSXRed}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[red] (0,0.25em) circle[radius=0.45em] ;
+ \end{tikzpicture}%
+}
+
+\newcommand{\PLOSXOrange}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[orange] (0,0.25em) circle[radius=0.45em] ;
+ \end{tikzpicture}%
+}
+
+\newcommand{\PLOSXGreen}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[ForestGreen] (0,0.25em) circle[radius=0.45em] ;
+ \end{tikzpicture}%
+}
+
+\newcommand{\PLOSXLG}{%
+ \begin{tikzpicture}[thick,anchor=base,baseline]
+ \filldraw[PLosxgray] (0,0.25em) circle[radius=0.45em] ;
+ \end{tikzpicture}%
+}
+
+\setKVdefault[fakeTERMosx]{titre={Terminal OSX}}
+
+\newcommand\termosxtitre[1][]{%
+ \restoreKV[fakeTERMosx]
+ \setKV[fakeTERMosx]{#1}
+ \begin{tblr}{colsep=0pt,rowsep=0pt,width=\linewidth,colspec={lX[c]r}}
+ \PLOSXRed~\PLOSXOrange~\PLOSXGreen & \vphantom{p}\useKV[fakeTERMosx]{titre} & \PLOSXLG~\PLOSXLG~\PLOSXLG \\
+ \end{tblr}
+}
+
+\DeclareTCBListing{PLtermosx}{ O{\linewidth} m !O{} }{%[taille] puis {titre=...} puis [option]
+ PLfaketermosx,title={\termosxtitre[#2]},%
+ listing only,listing engine=listings,%
+ listing options={style=tcblatex,language={},basicstyle=\footnotesize\ttfamily},%
+ width=#1,#3
+}
+
\endinput \ No newline at end of file