summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tablor/tablor.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-05-14 18:27:55 +0000
committerKarl Berry <karl@freefriends.org>2010-05-14 18:27:55 +0000
commitf62ddee209e4738d7178b9c7be4238df44593a8c (patch)
tree0599b68179278154ec762966e0ac5ab668164a95 /Master/texmf-dist/tex/latex/tablor/tablor.sty
parent796f1a22ebec723341de97da1835bfeef05d79be (diff)
tablor 4.07 (10may10)
git-svn-id: svn://tug.org/texlive/trunk@18250 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tablor/tablor.sty')
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.sty224
1 files changed, 132 insertions, 92 deletions
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty
index b2890910692..b1d3ec7797d 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[02/12/2009 v4.06-d la machine a creer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[09/05/2010 v4.07 la machine a creer des tableaux de signes et variations]
% \copyleft Connan le Barbare (aka Guillaume Connan) \copyright
% This work may be distributed and/or mofified under the conditions
@@ -27,7 +27,7 @@
%%\end{TSq}
% un tableau de variation :
%
-% pour les tableaux de signes à une seule ligne
+% pour les tableaux de signes à une seule ligne
% \begin{TSc}
% TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,0)
% \end{TSc}
@@ -90,8 +90,8 @@
% \end{TVP}
% %
-% Fonctions prolongeables par continuité
-% TVPC([intervalles d'étude],[valeurs prolongeables],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,n,\tv);
+% Fonctions prolongeables par continuité
+% TVP([intervalles d'étude],[valeurs prolongeables],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,n,\tv);
% \begin{TVPC}
@@ -137,9 +137,11 @@
%% Definit des commandes disque selon l'OS utilise
\ifthenelse{\boolean{windows}}%
{\newcommand{\rem}{DEL } \newcommand{\cat}{TYPE }
- \newcommand{\cp}{COPY }}%
+ \newcommand{\cp}{COPY } \newcommand{\echod}{ECHO }
+ \newcommand{\echof}{ }}%
{\newcommand{\rem}{rm }\newcommand{\cat}{cat }
- \newcommand{\cp}{cp }}
+ \newcommand{\cp}{cp } \newcommand{\echod}{echo "}
+ \newcommand{\echof}{"}}
@@ -174,7 +176,7 @@
%% Nettoie les fichiers log dont le nom depend du choix de l'utilisateur
%% Par defaut, c'est le nom du fichier tex courant (\jobname)
-%% Clôt le fichier metapost contenant le recapitulatif de tous les tableaux
+%% Clôt le fichier metapost contenant le recapitulatif de tous les tableaux
@@ -186,7 +188,7 @@
%% Donne comme prefixe aux tableaux le prefixe courant
-%% Peut-être modifie par \initablor
+%% Peut-être modifie par \initablor
\newcommand{\nomtravail}{\jobname}
@@ -211,14 +213,14 @@
{\IfFileExists{\nomtravail_Tab.mp}% Si Tableaux.mp est present...
{\immediate\write18{\rem \nomtravail_Tab.mp}}% le detruire
{}%
- \immediate\write18{\cp enteteMP.cfg \nomtravail_Tab.mp}% Reconstituer l'entête de Tableaux.mp
+ \immediate\write18{\cp enteteMP.cfg \nomtravail_Tab.mp}% Reconstituer l'entête de Tableaux.mp
}
{\IfFileExists{\nomtravail_Tab.mp}% Sans l'option XCas, si
% Tableaux.mp existe
{\immediate\write18{mpost -interaction=batchmode \nomtravail_Tab}}% l'executer pour reconstituer les figures
{\PackageWarning{tablor}{Pas de source metapost pour creer les tableaux.}}% sinon message d'erreur
% (mais pas d'arret car les tableaux
- % peuvent être presents )
+ % peuvent être presents )
}}%
@@ -430,7 +432,7 @@ fclose(sortie);
%
%
-% TVPC : pour les fonctions prolongeables par continuité.
+% TVPC : pour les fonctions prolongeables par continuité.
%%
%%
@@ -715,13 +717,27 @@ if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNon
-if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
- lsp:=lsp+if(member(Z[r],IMIN)!=0){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{
- if(member(Z[r],IMAX)!=0){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"finNonDef;"}else{"finNonDefStrict;"}+
- if(ksp==1){"plus;"}else{"moins;"}}else{
- if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(ksp==1){"plus;"}else{"moins;"}
- }}}};
+// modif 3 avril 2010
+
+if(nz>2){ for(r:=1; r<=nz-2;r++){
+ lsp:=lsp+
+ if(member(Z[r],IMIN)!=0){
+ if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"debutNonDef;"}
+ else{"debutNonDefStrict;"}}
+ else{if(member(Z[r],IMAX)!=0){if((member(Z[r],F)==0) and (fp(Z[r])!=undef)){"finNonDef;"}
+ else{"finNonDefStrict;"}+
+ if(evalf(fp(Z[r]+0.01))>0){"plus;"}
+ else{"moins;"}}
+ else{if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}
+ else{"nonDefBarre;"}+
+ if(evalf(fp(Z[r]+0.01))>0){"plus;"}
+ else{"moins;"}
+ }}
+ }};
+
+// fin modif
+
+
@@ -865,13 +881,8 @@ fclose(sortie);
\begin{VerbatimOut}{XcasTVapp.cxx}
-
-
-
-
-
TVapp(L,F,nom,nomv,f,ftt,nmr):={
-
+local nl,fp,z0,z,nz,S,k,j,m,kk,kok,Z,l0,lp,lf,lsp,k0,kz,lsi,r,ksp,lsf,lm0,li,krm,krp,lmrm,lmrp,lnz;
nl:=size(L);
f:=unapply(f,x);
@@ -881,23 +892,21 @@ nz:=size(z);
+S:=NULL;
-S:=op(fsolve(fp(x),x));
-if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;
- for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=-100..floor(L[1]))] minus F;
- for k in j do for(m:=-5;m<=5;m++){ S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for}
-else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;
- for k in j do for(m:=-5;m<=5;m++){ S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for;}
-else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;
- for k in j do
- for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for; }}};
-
-
-
-
+if(L==[-infinity,+infinity]){j:=[seq(-50+2*k,k=0..50)]minus F;
+ for k in j do for(m:=-5;m<=5;m++){S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for}
+else{if(L[0]==-infinity){j:=[seq(2*k,k=-25..0.5*floor(L[1]))] minus F;
+ for k in j do for(m:=-5;m<=5;m++){ S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for}
+else{if(L[1]==+infinity){
+j:=[seq(2*k,k=floor(0.5*L[0])..0.5*50)] minus F;
+ for k in j do for(m:=-5;m<=5;m++){ S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for
+}
+else{ j:=[seq(2*k,k=0.5*floor(z[0])..0.5*floor(z[nz-1]))] minus F;
+ for k in j do for(m:=-5;m<=5;m++){S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for }
+ }};
@@ -1609,15 +1618,25 @@ nz:=size(z);
S:=op(fsolve(fp(x),x));
-if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;
- for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for}
-else{if(L[0]==-infinity){j:=[seq(k,k=-100..floor(L[1]))] minus F;
- for k in j do for(m:=-5;m<=5;m++){ S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for}
-else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;
- for k in j do for(m:=-5;m<=5;m++){ S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for;}
-else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;
- for k in j do
- for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for; }}};
+
+
+
+
+if(L==[-infinity,+infinity]){j:=[seq(-50+2*k,k=0..50)]minus F;
+ for k in j do for(m:=-5;m<=5;m++){S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for}
+else{if(L[0]==-infinity){j:=[seq(2*k,k=-25..0.5*floor(L[1]))] minus F;
+ for k in j do for(m:=-5;m<=5;m++){ S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for}
+else{if(L[1]==+infinity){
+j:=[seq(2*k,k=floor(0.5*L[0])..0.5*50)] minus F;
+ for k in j do for(m:=-5;m<=5;m++){ S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for
+}
+else{ j:=[seq(2*k,k=0.5*floor(z[0])..0.5*floor(z[nz-1]))] minus F;
+ for k in j do for(m:=-5;m<=5;m++){S:=S,resoudre_numerique(fp(y),y,k+m*0.1,k+(m+1)*0.1,bisection_solver)};end_for }
+ }};
+
+
+
+
@@ -1880,7 +1899,7 @@ TVP(L,F,nom,nomv,ff,ftt,trigo,nmr):={
nl:=size(L);
fp:=[];
S:=[];
-f:=[unapply(ff[0],x),unapply(ff[1],x)];
+f:=[unapply(ff[0],t),unapply(ff[1],t)];
fp:=[function_diff(f[0]),function_diff(f[1])];
Z:=[];
LLL:=[];
@@ -2773,24 +2792,36 @@ fclose(sortie);
%%
%%
-% pour l'échelle des tableaux taper \ech{facteur de réduction}
+% pour l'échelle des tableaux taper \ech{facteur de réduction}
\newcommand\echelle{1}
\newcommand\ech[1]{\renewcommand\echelle{#1}}
-\newcommand{\dresse}[1]{%
+\newcommand\couleurtab{black}
+\newcommand\coultab[1]{\renewcommand\couleurtab{#1}}
+
+
+\newcommand{\dresse}[2]{%
\ifthenelse{\boolean{xcas}}{% Avec l'option "XCas present"
- \executGiacmp{XCas#1.giac}% reconstituer le tableau
+ \executGiacmp{XCas#2.giac}% reconstituer le tableau
% exporter le source mp
% puis lancer metapost pour creer
% l'image du tableau
\immediate\write18{\cat XCasmpfc.mp >> \nomtravail_Tab.mp}
- \immediate\write18{\cat enteteMP.cfg >> \nomtravail_Tab#1.mp}
- \immediate\write18{\cat XCasmpfc.mp >> \nomtravail_Tab#1.mp}
- \immediate\write18{\cat queue.mp >> \nomtravail_Tab#1.mp}
- \immediate\write18{mpost -jobname=\nomtravail_Tab \nomtravail_Tab#1.mp}
- \immediate\write18{\rem \nomtravail_Tab#1.mp}
+ \immediate\write18{\cat enteteMP.cfg >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod def beginTableau(expr c) =\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod begingroup\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod charcode:=c;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod clearxy; clearit; clearpen;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod pickup defaultpen;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod drawoptions(withcolor(#1));\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod initTableau;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod enddef;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\cat XCasmpfc.mp >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\cat queue.mp >> \nomtravail_Tab#2.mp}
+ \immediate\write18{mpost -jobname=\nomtravail_Tab \nomtravail_Tab#2.mp}
+ \immediate\write18{\rem \nomtravail_Tab#2.mp}
}%
{% sinon, si le tableau est absent, alerte.
\IfFileExists{\nomtravail_Tab.\theTVn}{}{%
@@ -2813,12 +2844,12 @@ fclose(sortie);
-\newcommand{\dressetoile}[1]{%
+\newcommand{\dressetoile}[2]{%
\IfFileExists{\nomtravail_Tab.\theTVn}{% Test sur l'existence du tableau
% Si oui, inclusion du fichier source de sauvegarde mp dans Tableaux
\immediate\write18{\cat TSav-\theTVn.mp >> \nomtravail_Tab.mp}}
% Si non, lancement des operations de fabrication
-{\executGiacmp{XCas#1.giac}%
+{\executGiacmp{XCas#2.giac}%
\immediate\write18{\editeur XCasmpfc.mp }
% Modification avec l'editeur choisi
@@ -2826,17 +2857,25 @@ fclose(sortie);
\immediate\write18{\cp XCasmpfc.mp TSav-\theTVn.mp} % Sauvegarde du
% source mp sur le disque pour une
% inclusion ulterieure dans Tableaux.mp.
-\immediate\write18{\cat enteteMP.cfg >> \nomtravail_Tab#1.mp}
-\immediate\write18{\cat XCasmpfc.mp >> \nomtravail_Tab#1.mp}} % Inclusion du
+\immediate\write18{\cat enteteMP.cfg >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod def beginTableau(expr c) =\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod begingroup\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod charcode:=c;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod clearxy; clearit; clearpen;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod pickup defaultpen;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod drawoptions(withcolor(#1));\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod initTableau;\echof >> \nomtravail_Tab#2.mp}
+ \immediate\write18{\echod enddef;\echof >> \nomtravail_Tab#2.mp}
+\immediate\write18{\cat XCasmpfc.mp >> \nomtravail_Tab#2.mp}} % Inclusion du
% source dans le
% fichier
% Tableaux
-\immediate\write18{\cat queue.mp >> \nomtravail_Tab#1.mp}
-\immediate\write18{mpost -jobname=\nomtravail_Tab \nomtravail_Tab#1.mp}% Reconstitution des tableaux
+\immediate\write18{\cat queue.mp >> \nomtravail_Tab#2.mp}
+\immediate\write18{mpost -jobname=\nomtravail_Tab \nomtravail_Tab#2.mp}% Reconstitution des tableaux
% et creation du dernier. L'option
% pallie l'absence de end en fin de
% fichier
-\immediate\write18{\rem \nomtravail_Tab#1.mp}
+\immediate\write18{\rem \nomtravail_Tab#2.mp}
\begin{center}
\includegraphics[scale=\echelle]{\nomtravail_Tab.\theTVn}
@@ -2874,7 +2913,7 @@ read("XCasa.user");
\newenvironment{TSa}
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasa.user}}
{\end{VerbatimOut}
- \dresse{a}
+ \dresse{\couleurtab}{a}
}
@@ -2895,7 +2934,7 @@ read("XCasQ.user");
\newenvironment{TSq}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasQ.user}}
-{\end{VerbatimOut}\dresse{Q}}
+{\end{VerbatimOut}\dresse{\couleurtab}{Q}}
@@ -2903,7 +2942,7 @@ read("XCasQ.user");
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasQ.user}}
-{\end{VerbatimOut}\dressetoile{Q}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{Q}}
\begin{VerbatimOut}{XCasL.giac}
@@ -2916,14 +2955,14 @@ read("XCasL.user");
\newenvironment{TS}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasL.user}}
-{\end{VerbatimOut}\dresse{L}}
+{\end{VerbatimOut}\dresse{\couleurtab}{L}}
\newenvironment{TS*}[1]
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasL.user}}
-{\end{VerbatimOut}\dressetoile{L}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{L}}
\begin{VerbatimOut}{XCasTSc.giac}
@@ -2941,12 +2980,12 @@ read("XCasTSc.user");
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTSc.user}}
-{\end{VerbatimOut}\dressetoile{TSc}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TSc}}
\newenvironment{TSc}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTSc.user}}
-{\end{VerbatimOut}\dresse{TSc}}
+{\end{VerbatimOut}\dresse{\couleurtab}{TSc}}
\begin{VerbatimOut}{XCasTV.giac}
@@ -2957,16 +2996,19 @@ read("XcasTV.cxx");
read("XCasTV.user");
\end{VerbatimOut}
-\newenvironment{TV}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTV.user}}%
+
+
+\newenvironment{TV}{%
+\VerbatimEnvironment
+\begin{VerbatimOut}[commandchars=\\??]{XCasTV.user}}%
{\end{VerbatimOut}
-\dresse{TV}}
+\dresse{\couleurtab}{TV}}
\newenvironment{TV*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTV.user}}%
-{\end{VerbatimOut}\dressetoile{TV}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TV}}
@@ -2985,13 +3027,13 @@ read("XCasTVP.user");
\newenvironment{TVP}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVP.user}}%
{\end{VerbatimOut}
-\dresse{TVP}}
+\dresse{\couleurtab}{TVP}}
\newenvironment{TVP*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVP.user}}%
-{\end{VerbatimOut}\dressetoile{TVP}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVP}}
@@ -3013,15 +3055,13 @@ read("XCasTVZ.user");
\newenvironment{TVZ}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVZ.user}}%
{\end{VerbatimOut}
-\dresse{TVZ}}
+\dresse{\couleurtab}{TVZ}}
\newenvironment{TVZ*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVZ.user}}%
-{\end{VerbatimOut}\dressetoile{TVZ}}
-
-
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVZ}}
@@ -3041,13 +3081,13 @@ read("XCasTVapp.user");
\newenvironment{TVapp}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVapp.user}}%
{\end{VerbatimOut}
-\dresse{TVapp}}
+\dresse{\couleurtab}{TVapp}}
\newenvironment{TVapp*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVapp}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVapp}}
@@ -3069,14 +3109,14 @@ read("XCasTVI.user");
\newenvironment{TVI}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVI.user}}%
-{\end{VerbatimOut}\dresse{TVI}}
+{\end{VerbatimOut}\dresse{\couleurtab}{TVI}}
\newenvironment{TVI*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVI.user}}%
-{\end{VerbatimOut}\dressetoile{TVI}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVI}}
@@ -3092,14 +3132,14 @@ read("XCasTVIex.user");
\newenvironment{TVIex}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIex.user}}%
-{\end{VerbatimOut}\dresse{TVIex}}
+{\end{VerbatimOut}\dresse{\couleurtab}{TVIex}}
\newenvironment{TVIex*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIex.user}}%
-{\end{VerbatimOut}\dressetoile{TVIex}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVIex}}
@@ -3119,14 +3159,14 @@ read("XCasTVIapp.user");
\newenvironment{TVIapp}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIapp.user}}%
-{\end{VerbatimOut}\dresse{TVIapp}}
+{\end{VerbatimOut}\dresse{\couleurtab}{TVIapp}}
\newenvironment{TVIapp*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVIapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVIapp}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVIapp}}
@@ -3143,13 +3183,13 @@ read("XCasTVPC.user");
\newenvironment{TVPC}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
{\end{VerbatimOut}
-\dresse{TVPC}}
+\dresse{\couleurtab}{TVPC}}
\newenvironment{TVPC*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVPC.user}}%
-{\end{VerbatimOut}\dressetoile{TVPC}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVPC}}
@@ -3173,13 +3213,13 @@ read("XCasTVS.user");
\newenvironment{TVS}%
{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVS.user}}%
{\end{VerbatimOut}
-\dresse{TVS}}
+\dresse{\couleurtab}{TVS}}
\newenvironment{TVS*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\??]{XCasTVS.user}}%
-{\end{VerbatimOut}\dressetoile{TVS}}
+{\end{VerbatimOut}\dressetoile{\couleurtab}{TVS}}