From c6168f59843ce21988e1c11aae4861378182fdfb Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Tue, 13 May 2008 19:05:08 +0000 Subject: tablor v2.03 git-svn-id: svn://tug.org/texlive/trunk@8112 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/tablor/Figures.zip | Bin 148920 -> 161346 bytes Master/texmf-dist/doc/latex/tablor/tablor.html | 1054 +++++++++++++-------- Master/texmf-dist/doc/latex/tablor/tablor.pdf | Bin 299304 -> 331007 bytes Master/texmf-dist/doc/latex/tablor/tablor.tex | 111 ++- Master/texmf-dist/tex/latex/tablor/tablor.cfg | 9 + Master/texmf-dist/tex/latex/tablor/tablor.sty | 336 ++++++- Master/texmf-dist/tex/latex/tablor/tablorutf8.sty | 366 ++++++- 7 files changed, 1403 insertions(+), 473 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/tablor/Figures.zip b/Master/texmf-dist/doc/latex/tablor/Figures.zip index 3203b1f239b..c9be5218fe3 100644 Binary files a/Master/texmf-dist/doc/latex/tablor/Figures.zip and b/Master/texmf-dist/doc/latex/tablor/Figures.zip differ diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html index f102f34fba8..4070357a6b8 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.html +++ b/Master/texmf-dist/doc/latex/tablor/tablor.html @@ -25,12 +25,6 @@ color: #9932cc; font-weight: bold; } - .flyspell-duplicate { - /* flyspell-duplicate-face */ - color: #cdad00; - font-weight: bold; - text-decoration: underline; - } .flyspell-incorrect { /* flyspell-incorrect-face */ color: #ff4500; @@ -89,7 +83,7 @@
 
 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[24/03/2008 v2.01 la machine à créer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[24/03/2008 v2.03 la machine à créer des tableaux de signes et variations]
 
 % \copyleft Connan le Barbare \copyright
 % avec l'efficace participation de Jean-Michel Boucart
@@ -113,7 +107,7 @@
 % un tableau de variation :
 %
 % \begin{TV}
-% TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,1,\tv)
+% TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,1,\tv)
 % \end{TV}
 %
 % tableau avec valeurs intermédiares
@@ -129,7 +123,7 @@
 %
 % tableau de variations avec f' sans zéro formel
 %\begin{TVIapp}
-% TVIapp([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,0,\tv)
+% TVIapp([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,0,\tv)
 % \end{TVIapp}
 %
 %
@@ -151,17 +145,18 @@
 
 \RequirePackage{ifthen}
 \RequirePackage{fancyvrb}
-\RequirePackage{ifpdf}
+\RequirePackage{ifpdf}
 
 
 % option xcas présent 
 
 
-\newboolean{xcas}\setboolean{xcas}{false}
+\newboolean{xcas}\setboolean{xcas}{false}
 \DeclareOption{xcas}{\setboolean{xcas}{true}}
 
-%% Initialisation du choix d'OS
-\newboolean{windows}\setboolean{windows}{false}
+%% Initialisation du choix d'OS
+\newboolean{windows}\setboolean{windows}{false}
+
 
 
 %% on configure  tablor  dans un fichier extérieur pour la plateforme
@@ -171,27 +166,28 @@
 
 \ProcessOptions\relax
 
-%% pour ceux compilant via pdflatex
+%% pour ceux compilant via pdflatex
 
 \ifpdf
-\DeclareGraphicsRule{*}{mps}{*}{}
+\DeclareGraphicsRule{*}{mps}{*}{}
 \fi
 
 %% pour nettoyer les fichiers auxiliaires
 
-\AtEndDocument{\immediate\write18{\rem tete.* *.user XCas* Xcas* *.mpx}}
+\AtEndDocument{\immediate\write18{\rem tete.* *.user XCas* Xcas* *.mpx}}
+
 
 
 
 %% En-tête pour le fichier metapost contenant les codes 
 %% de tous les tableaux produits
 
- \begin{VerbatimOut}{tete.mp}
-  input tableauVariation;
+ \begin{VerbatimOut}[commandchars=?§£]{tete.mp}
+  input tableauVariation;
   verbatimtex
 %&latex
      \documentclass{article}
-     \usepackage[upright]{fourier}
+      \\?fonte
      \usepackage{amsmath}
      \newcommand{\Mathbold}[1]{\mbox{\boldmath$#1$\unboldmath}}
      \begin{document}
@@ -199,23 +195,25 @@
 
   \end{VerbatimOut}
 
+
+
 %% Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur
 %% Par défaut, c'est le nom du fichier tex courant (\jobname)
 %% Clôt le fichier metapost contenant le récapitulatif de tous les tableaux
 
 
 %% Définit des commandes disque selon l'OS utilisé
-\ifthenelse{\boolean{windows}}%
+\ifthenelse{\boolean{windows}}%
     {\newcommand{\rem}{DEL } \newcommand{\cat}{TYPE }
       \newcommand{\cp}{COPY }}%
     {\newcommand{\rem}{rm }\newcommand{\cat}{cat }
-      \newcommand{\cp}{cp }}
+      \newcommand{\cp}{cp }}
 
 
 
 \newcommand{\nettoyer}[1][\jobname]%
 {\immediate\write18{\rem #1.Tab.log}
-\immediate\write18{echo end >> #1.Tab.mp}
+\immediate\write18{echo end >> #1.Tab.mp}
 }
 
 
@@ -228,7 +226,7 @@
 
 %% initialise les compteurs
 
-\newcounter{TVn}
+\newcounter{TVn}
 \newcommand{\tv}{\theTVn}
 
 \newcounter{TVnbis}
@@ -247,7 +245,7 @@
 {\IfFileExists{\Tableaux.Tab.mp}%      Si Tableaux.mp est présent...
         {\immediate\write18{\rem \Tableaux.Tab.mp}}%  le détruire
         {}%   
- \immediate\write18{\cp -f tete.mp \Tableaux.Tab.mp}% Reconstituer l'entête de Tableaux.mp
+ \immediate\write18{\cp -f tete.mp \Tableaux.Tab.mp}% Reconstituer l'entête de Tableaux.mp
 } 
 {\IfFileExists{\Tableaux.Tab.mp}%      Sans l'option XCas, si
                                 %      Tableaux.mp existe
@@ -264,7 +262,7 @@
 \makeatletter
 \newcommand{\executGiacmp}[1]{%
 \ifthenelse{\boolean{windows}}%
-{\immediate\write18{giac #1 }}%
+{\immediate\write18{giac #1 }}%
 {\immediate\write18{giac  <#1 }}}
 \makeatother
 
@@ -273,23 +271,20 @@
 
 %%%
 %
-%%% LES SCRIPTS GIAC/XCAS
+%%% LES SCRIPTS GIAC/XCAS
 %
 %%%
 
 
 
 
-
-
-
 %%
 %% Code giac/Xcas pour les Tableaux de Variations
 %%
 
 
-\begin{VerbatimOut}{XcasTV.cxx}
-TV(L,F,nom,nomv,f,ftt,nmr):={
+\begin{VerbatimOut}[commandchars=?§£]{XcasTV.cxx}
+TV(L,F,nom,nomv,f,ftt,nmr):={
 nl:=size(L);
 f:=unapply(f,x);
 fp:=fonction_derivee(f);
@@ -306,19 +301,19 @@ nz:=size(Z);
  si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; 
      fsi;
 pour u de 1 jusque nz-2 faire 
-     si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; 
+     si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; 
      fsi;
 fpour;
 nz:=size(Z);
 l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
 pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
-";fpour; 
+";fpour; 
 
        k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
        kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
                           
 lsi:="
-newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -333,25 +328,27 @@ lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
 "}
 lm0:=limite(f(x),x=Z[0],1)==-infinity;
      li:="
-newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
+newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
            if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
-             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
+             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
            if(k0==1){"1"}else{"0"}+
                          ");";
             
-                     if(nz>2){ for(r:=1; r<=nz-2;r++){  krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+                     if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
                                                  krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;  
                          lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
                                                   lp:=lp+if(member(Z[r],F)){
-                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+                                    "limGauche(btex
+                                    $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$
+                                    etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[r])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
 "}}}
                                                    }; }
 
 lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
                            lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
-           if(kz==1){"1);"}else{"0);
+           if(kz==1){"1);"}else{"0);
 "};    
     
 
@@ -359,30 +356,30 @@ intro:="input tableauVariation;
            verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
- etex;
+ etex;
 
 "
   
 
 MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 end
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 end";
 }
 }else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
+lp+
 lf
 +"
 endTableau;
@@ -393,22 +390,22 @@ lf
 +"
 endTableau;
 end";}}else{
-if(nz>2){intro+"beginTableau("+nmr+")"+
+if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
 lp+
 lf
 +"
-endTableau;
+endTableau;
 end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
 endTableau;
-end";}
+end";}
 }}
 
 
@@ -417,30 +414,30 @@ MetaLfc:=if(ftt==2){if(nz>2){"
 
 beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 
 ";
 }
 }else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
+lp+
 lf
 +"
 endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
@@ -448,17 +445,17 @@ if(nz>2){"beginTableau("+nmr+")"+
 lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
 endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+
+lsi+lsf+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
@@ -466,16 +463,258 @@ lf
 
 sortie:=fopen("XCasmpfc.mp");
 fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fclose(sortie);
 
 
-return(MetaL);
+return(MetaL);
  }:;
 
 \end{VerbatimOut}
 
 
+%%
+%%
+%% TV avec une zone interdite : on rajoute comme argument l'intervalle interdit
+%% par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1)
+%%
+
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVZ.cxx}
+
+TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={
+nl:=size(L);
+if(FF[0]>L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]};
+if(FF[1]<L[1]){Imax:=FF[1];LL:=L}else{Imax:=L[1];LL:=[L[0]]};
+FF:=[Imin,Imax];
+f:=unapply(f,x);
+fp:=fonction_derivee(f);
+Z:=concat(LL,F);
+Z:=concat(Z,FF);
+S:=resoudre(fp(x),x);
+  si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
+                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+                             kK:=(evalf(S[j])<evalf(Imin)) or (evalf(S[j])>evalf(Imax));
+                             Kk:=(kk) and kK;
+                          if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+                          fpour
+  fsi;
+
+Z:=sort(Z); 
+nz:=size(Z);
+
+
+
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; 
+     fsi;
+pour u de 1 jusque nz-2 faire 
+     si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; 
+     fsi;
+fpour;
+nz:=size(Z);
+for(k:=1;k<nz;k++){
+if ((Z[k]>Imin)and(Z[k]<Imax)){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+}
+}
+nz:=size(Z);
+
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour; 
+
+       k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
+       kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+                          
+lsi:="
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+     if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+                                                    if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
+                                                    if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+                                                         if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}}
+ 
+if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.01))>0;                     
+                                               lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{
+                                                       if(Z[r]==Imax){"finNonDef;"+
+                                                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;"}
+                                                  }}}}; 
+
+lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+"}}
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
+     li:="
+newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
+           if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
+             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
+           if(k0==1){"1"}else{"0"}+
+                         ");";
+            
+if(nz>2){ 
+   for(r:=1; r<=nz-2;r++){  
+     krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+     krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;  
+     lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+     lp:=lp+if(Z[r]==Imin){"limGauche(btex $"+if(lmrm==1){
+             "-\\infty"}else{
+                latex(simplifier(limite(f(x),x=Z[r],-1)))}
+         +"$ etex,"+if(krm==1){
+             "1);"}else{"0);"}
+         +"debutNonDef;"
+       }//fsi Zr=Imin
+      else{
+        if (Z[r]==Imax) {"finNonDef;limDroite(btex $"+if(lmrp==1){
+             "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+         +"$ etex,"+if(krp==1){
+             "1);"}else{"0);"}          
+       }
+        else {
+          if(member(Z[r],F)){
+         "limGauche(btex $"+if(lmrm==1){
+             "-\\infty"}else{
+                latex(simplifier(limite(f(x),x=Z[r],-1)))}
+         +"$ etex,"+if(krm==1){
+             "1);"}else{"0);"}
+         +"nonDefBarre;limDroite(btex $"+if(lmrp==1){
+             "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+         +"$ etex,"+if(krp==1){
+             "1);"}else{"0);"}
+         }//fsi (member Zr F)
+          else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+
+             if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
+               "0.5);"}else{
+                    if(krp==1){
+                       "1);"}else{"0);"}//felse(krp)
+                    }//felse(valpos)
+               }//felse(member Zr F)
+               } //felse(Zr=Imax)
+              }//felse(Zr=Imin)
+             };//ffor 
+         }//fsi nz
+
+lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
+                           lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
+           if(kz==1){"1);"}else{"0);
+"};    
+    
+
+intro:="input tableauVariation;
+           verbatimtex
+%&latex
+ \\documentclass{article}
+ \\?fonte
+ \\usepackage{amsmath}
+ \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
+ \\begin{document}
+ etex;
+
+"
+  
+
+MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+        l0+lsi+lsp+lsf+"
+endTableau;
+end
+";}else{
+intro+"beginTableau("+nmr+")"+
+        l0+
+lsi+lsf+"
+endTableau;
+end";
+}
+}else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
+        l0+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+        l0+
+li+
+lf
++"
+endTableau;
+end";}}else{
+if(nz>2){intro+"beginTableau("+nmr+")"+
+        l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+        l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+end";}
+}}
+
+
+
+MetaLfc:=if(ftt==2){if(nz>2){"
+
+beginTableau("+nmr+")"+
+        l0+lsi+lsp+lsf+"
+endTableau;
+
+";}else{
+intro+"beginTableau("+nmr+")"+
+        l0+
+lsi+lsf+"
+endTableau;
+
+";
+}
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+        l0+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+        l0+
+li+
+lf
++"
+endTableau;
+
+";}}else{
+if(nz>2){"beginTableau("+nmr+")"+
+        l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
 
+";}else{"beginTableau("+nmr+")"+
+        l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
+
+
+return(MetaL);
+ }
+:;
+
+\end{VerbatimOut}
 
 
 %%
@@ -485,7 +724,7 @@ return(MetaL);
 
 
 
-\begin{VerbatimOut}{XcasTVapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVapp.cxx}
 
 
 
@@ -496,20 +735,20 @@ return(MetaL);
 TVapp(L,F,nom,nomv,f,ftt,nmr):={
 
 
-nl:=size(L);
+nl:=size(L);
 f:=unapply(f,x);
 fp:=fonction_derivee(f);
 z0:=concat(L,F);z:=sort(z0);
 nz:=size(z);
 if(L==[-infinity,+infinity]){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..100);}
-else{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
+else{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
 else{if(L[1]==+infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=L[0]..100);}
 else{S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=z[0]..z[nz-1])}}};
 si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
                              kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
                           if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
                           fpour;
-fsi;
+fsi;
 
 
 S:=NULL;
@@ -534,31 +773,31 @@ Z:=[S];
 
 nz:=size(Z);
 l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
-";fpour; 
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour; 
 
        k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
        kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
                           
 lsi:="
-newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
-                                                    if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+                                                    if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
                                                          if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
  
 if(nz>2){ for(r:=1; r<=nz-2;r++){      ksp:=evalf(fp(Z[r]+0.01))>0;                     
-                                               lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                               lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
                                                 if(ksp==1){"plus;"}else{"moins;"}
                                                   }; }
 
 lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
 "}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
      li:="
-newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
+newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
            if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
-             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
+             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
            if(k0==1){"1"}else{"0"}+
                          ");";
             
@@ -568,70 +807,70 @@ lm0:=limite(f(x),x=Z[0],1)==-infinity;
                                                   lp:=lp+if(member(Z[r],F)){
                                     "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[r])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
 "}}}
                                                    }; }
 
 lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
-                           lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
-           if(kz==1){"1);"}else{"0);
+                           lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
+           if(kz==1){"1);"}else{"0);
 "};    
     
 
 intro:="input tableauVariation;
-           verbatimtex
+           verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
- etex;
+ etex;
 
 "
   
 
-MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 end
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
-endTableau;
+lsi+lsf+"
+endTableau;
 end";
 }
 }else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
+lp+
 lf
 +"
 endTableau;
-end";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
 endTableau;
 end";}}else{
-if(nz>2){intro+"beginTableau("+nmr+")"+
+if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
 endTableau;
-end";}
+end";}
 }}
 
 
@@ -640,59 +879,59 @@ MetaLfc:=if(ftt==2){if(nz>2){"
 
 beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
 intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 
 ";
 }
 }else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
+lp+
 lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
-lp+
-lf
+lp+
+lf
 +"
 endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+
+lsi+lsf+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }}
 
 
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
 
 
-return(MetaL);
+return(MetaL);
  }:;
 
 
@@ -718,52 +957,52 @@ return(MetaL);
 
 
 
-\begin{VerbatimOut}{XcasTVI.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVI.cxx}
 
 
 TVI(L,F,nom,nomv,f,ftt,ao,nmr):={
-nl:=size(L);
+nl:=size(L);
 f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=fonction_derivee(f);
 Z:=concat(L,F);
 S:=resoudre(fp(x),x);
   si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire 
                             kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
                           if(kk==1){Z:=append(Z,simplifier(S[j]))};
-                          fpour
+                          fpour
   fsi;
 
 Z:=sort(Z); 
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; 
+nz:=size(Z);
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; 
      fsi;
 pour u de 1 jusque nz-2 faire 
      si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; 
      fsi;
-fpour;
+fpour;
 nz:=size(Z);
-l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
 
 
 
 LI:=limite(f(x),x,Z[0],1);
 LF:=limite(f(x),x,Z[nz-1],-1);
-LP:=NULL;
+LP:=NULL;
 if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
       
 NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;kk:=0;
 
 if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
 if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
 l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
 
 if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
+TestL:=(abs(LL[k])==abs(LL[k+1]));
 if(TestS==0){ if( TestL==1 ){l0:=l0}else{
 A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
 "};
 
 
@@ -772,29 +1011,29 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
        k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
        kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
                           
-lsi:="
+lsi:="
 newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
      if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
-                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
+                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
 
 
 
 
  
-if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  ksp:=evalf(fp(Z[r]+0.01))>0;  
                                                  TestL:=(abs(LL[r])==abs(LL[r+1]));
                                  lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
                                   if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
                                              }}
-else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
                                           TestL:=(abs(LL[r])==abs(LL[r+1]));
                       if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
+                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
 }}     
   }; 
 
@@ -803,158 +1042,158 @@ if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r
 lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
 lm0:=limite(f(x),x=Z[0],1)==-infinity;
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
 
      li:="
 newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);
 "+  if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
              else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
-           if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "}; 
+           if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "}; 
                          
             
-                     if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+                     if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
                                                  krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;  
-                         lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+                         lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
                                                   lp:=lp+if(member(Z[r],F)) {
-                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[r])))+"$
                                             etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
                                             $ "+ao+" $ etex,0.5);"
                                                            }else{" "}; 
 };//for
-}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+}else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  krm:=evalf(limite(f(x),x=Z[rr-1],1))< evalf(limite(f(x),x=Z[rr],-1));
-                                                 krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;  
+                                                 krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;  
                          lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
 if(TestS==0){if( TestL==1 ){lp:=lp}else{  lp:=lp+if(member(Z[rr],F)) {
-                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[rr])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
+                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
                                             $ "+ao+" $ etex,0.5);
                                                                  ";rr:=rr+1;
-}// else testL==1
+}// else testL==1
 }//testS==0
 else{lp:=lp+if(member(Z[rr],F)){
                                     "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[rr])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
                                                             "}}};rr:=rr+1;
 }//else testS==0
 }//for nz<NL
-}// else nz<NL
+}// else nz<NL
 //if nz=NL
-};//if nz>2
+};//if nz>2
 
 
 lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
-                           lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
+                           lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
            if(kz==1){"1);"}else{"0);"};    
     
 
 
-intro:="
+intro:="
 input tableauVariation;
-verbatimtex
+verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
- etex;
+ etex;
 
 ";
   
 
-MetaL:= if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+MetaL:= if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
 endTableau;
 end";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
         l0+
-lsi+lsf+"
+lsi+lsf+"
 endTableau;
-end";
+end";
 }
 }else{
-if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
+if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
-lf
+lf
 +"
 endTableau;
-end";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
 endTableau;
-end";}}else{
+end";}}else{
 if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
 endTableau;
-end";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
 lf
 +"
 endTableau;
-end";}
+end";}
 }};
 
 
 MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
 ";}else{
 "beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 
 ";
 }
 }else{
-if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
-lp+
+lp+
 lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
-endTableau;
+endTableau;
 ";}}else{
 if(nz>2){"beginTableau("+nmr+")"+
         l0+
-lsi+lsp+lsf+
+lsi+lsp+lsf+
 li+
-lp+
-lf
+lp+
+lf
 +"
 endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
 lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }};
@@ -963,10 +1202,10 @@ lf
 
 sortie:=fopen("XCasmpfc.mp");
 fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+fclose(sortie);
 
 
-return(MetaL);
+return(MetaL);
  }:;
 
 
@@ -987,13 +1226,13 @@ return(MetaL);
 
 
 
-\begin{VerbatimOut}{XcasTVIapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVIapp.cxx}
 
 
-TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
+TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
 
 
-nl:=size(L);
+nl:=size(L);
 f:=unapply(f,x);
 fp:=fonction_derivee(f);
 z0:=concat(L,F);z:=sort(z0);
@@ -1006,7 +1245,7 @@ si size(S)>0 alors   pour j de 0 jusque size(S)-1 faire
                              kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]);
                           if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
                           fpour;
-fsi;
+fsi;
 
 
 S:=NULL;
@@ -1022,7 +1261,7 @@ z:=[S];
 Z:=sort(z);
 nz:=size(Z);
 
-S:=NULL;
+S:=NULL;
 S:=S,Z[0];
 for(j:=1;j<nz;j++){
  if(Z[j]!=S[size(S)-1]){
@@ -1032,153 +1271,153 @@ Z:=[S];
 
 
 nz:=size(Z);
-l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
 
 
 
 LI:=limite(f(x),x,Z[0],1);
 LF:=limite(f(x),x,Z[nz-1],-1);
-LP:=NULL;
+LP:=NULL;
 if(nz>2){ for(r:=1; r<=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+if(nz>2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
       
 NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+A:=NULL;aa:=1;kk:=0;
 
-if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+if(NL==nz){for(k:=0;k<nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
 if(TestS==0){A:=A,aa;l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;}else{l0:=l0+"val(btex $"+latex(Z[k])+"$ etex);"}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);"};
 
 if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
+TestL:=(abs(LL[k])==abs(LL[k+1]));
 if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
-l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
+A:=A,aa;l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);"+"val(btex $\\alpha_"+aa+"$ etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex $"+latex(Z[kk])+"$ etex);";kk:=kk+1}}
+l0:=l0+"val(btex $"+latex(Z[nz-1])+"$ etex);
 "};
 
 
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
        k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
        kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
                           
 lsi:="
-newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
-     if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+     if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
                                                     if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
                                                     if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
-                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
+                                                         if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$  $ etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; 
 
 
 
 
  
-if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  ksp:=evalf(fp(Z[r]+0.01))>0;  
                                                  TestL:=(abs(LL[r])==abs(LL[r+1]));
-                                 lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
+                                 lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                  if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $  $ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
                                              }}
 else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
                                           TestL:=(abs(LL[r])==abs(LL[r+1]));
                       if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
-                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
-                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
+                                  if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $  $ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+                                   } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+                                  if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}        
 }}     
   }; 
 
 
 
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
 lm0:=limite(f(x),x=Z[0],1)==-infinity;
 
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
 
      li:="
 newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);
 "+  if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
-             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
-           if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "}; 
+             else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+                               
+           if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex $ "+ao+" $ etex,0.5);"}else{" "}; 
                          
             
-                     if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
+                     if(nz>2){if(nz==NL){for(r:=1; r<=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
                                                  krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;  
                          lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
                                                   lp:=lp+if(member(Z[r],F)) {
-                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[r])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
+                                            etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
                                             $ "+ao+" $ etex,0.5);"
                                                            }else{" "}; 
 };//for
 }else{rr:=1;for(r:=1; r<=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0); 
                                                  krm:=evalf(limite(f(x),x=Z[rr-1],1))< evalf(limite(f(x),x=Z[rr],-1));
-                                                 krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;  
+                                                 krp:=evalf(limite(f(x),x=Z[rr],1))> evalf(limite(f(x),x=Z[rr+1],-1)) ;  
                          lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
 if(TestS==0){if( TestL==1 ){lp:=lp}else{  lp:=lp+if(member(Z[rr],F)) {
-                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+                                    "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[rr])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
+                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
                                             $ "+ao+" $ etex,0.5);
                                                                  ";rr:=rr+1;
-}// else testL==1
+}// else testL==1
 }//testS==0
 else{lp:=lp+if(member(Z[rr],F)){
                                     "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
                                           else{"valPos(btex          $"+latex(simplifier(f(Z[rr])))+"$
-                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
-                                                            "}}};rr:=rr+1;
+                                            etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+                                                            "}}};rr:=rr+1;
 }//else testS==0
 }//for nz<NL
-}// else nz<NL
+}// else nz<NL
 //if nz=NL
-};//if nz>2
+};//if nz>2
 
 
 lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
                            lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+                               
-           if(kz==1){"1);"}else{"0);"};    
+           if(kz==1){"1);"}else{"0);"};    
     
 
 
-intro:="
+intro:="
 input tableauVariation;
-verbatimtex
+verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
- etex;
+ etex;
 
 ";
   
 
-MetaL:= if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+MetaL:= if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
 endTableau;
 end";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
-end";
+endTableau;
+end";
 }
 }else{
 if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
-lf
+lf
 +"
 endTableau;
-end";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 li+
-lf
+lf
 +"
 endTableau;
 end";}}else{
@@ -1187,64 +1426,64 @@ if(nz>2){intro+"beginTableau("+nmr+")"+
 lsi+lsp+lsf+
 li+
 lp+
-lf
+lf
 +"
 endTableau;
-end";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
 endTableau;
-end";}
+end";}
 }};
 
 
 MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+
         l0+lsi+lsp+lsf+"
-endTableau;
+endTableau;
 
-";}else{
+";}else{
 "beginTableau("+nmr+")"+
         l0+
 lsi+lsf+"
-endTableau;
+endTableau;
 
 ";
 }
 }else{
-if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
         l0+
 li+
 lp+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}else{"beginTableau("+nmr+")"+
         l0+
 li+
 lf
 +"
-endTableau;
+endTableau;
 ";}}else{
-if(nz>2){"beginTableau("+nmr+")"+
+if(nz>2){"beginTableau("+nmr+")"+
         l0+
 lsi+lsp+lsf+
 li+
-lp+
+lp+
 lf
 +"
-endTableau;
+endTableau;
 
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+nmr+")"+
         l0+
 lsi+lsf+
 li+
-lf
+lf
 +"
-endTableau;
+endTableau;
 
 ";}
 }};
@@ -1256,7 +1495,7 @@ fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 
 
-return(MetaL);
+return(MetaL);
  }:;
 
 
@@ -1282,10 +1521,10 @@ fclose(sortie);
 
 
 
-\begin{VerbatimOut}{XcasTabSignL.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignL.cxx}
 
 
-TS(L,D,nmr):={
+TS(L,D,nmr):={
 L:=apply(f->unapply(f,x),L)
 n:=size(L);
 Z:=NULL;
@@ -1305,7 +1544,7 @@ if(nz>2){pour u de 1 jusque nz-2 faire
      si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
      fsi;
 fpour;};
-nz:=size(Z);
+nz:=size(Z);
 
 if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
           for(p:=0;p<=n-1;p++){li:=li+"
@@ -1314,17 +1553,17 @@ if(mini!=-infinity and L[p](mini)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+ 
 if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}
 
 }
            lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)>0){"plus;"}else{"moins;"};
 
 MetaL:=" input tableauVariation;
-           verbatimtex
+           verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
@@ -1339,14 +1578,14 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
                                 valBarre(btex 0 etex);"}else{"
                               "}+  lf+
                                if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}+"
-endTableau;
+endTableau;
 end"
 ;
 
 
-MetaLfc:="    beginTableau("+nmr+")
+MetaLfc:="    beginTableau("+nmr+")
 newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+li+
     "
@@ -1357,7 +1596,7 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
                                if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+"
-endTableau;
+endTableau;
 "
 ;
 
@@ -1369,11 +1608,11 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+
 l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
 
 
-for(p:=0;p<=n-1;p++){lp:="";                                     
+for(p:=0;p<=n-1;p++){lp:="";                                     
      li:=li+"
 newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$ etex);"+
            if(mini!=-infinity and L[p](mini)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}+ 
            if(L[p](Z[0]-0.01)>0){"plus;"}else{"moins;"};
                                
@@ -1386,7 +1625,7 @@ newLigneSignes(btex $\\hbox{\else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}
     };  
 
@@ -1399,11 +1638,11 @@ MetaL:=" input tableauVariation;
            verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
- etex;
+ etex;
           beginTableau("+nmr+")
 newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+
@@ -1414,37 +1653,37 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
                if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+  
-                         if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"+
+                         if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"+
                          lr+
                          if(product(L[s](Z[nz-1]+0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                                if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+"
 endTableau;
-end"
+end"
 ;
 MetaLfc:="  beginTableau("+nmr+")
-newLigneVariables(btex $\\Mathbold{x}$ etex);
+newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+
                      li
                      +
     "
  newLigneSignes(btex $\\hbox{\\bf Signe du }\\atop{{\\bf produit}}$ etex);"+
                if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}+  
                          if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"+
                          lr+
                          if(product(L[s](Z[nz-1]+0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                                if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}+"
 endTableau;
 
  ";
 }
 sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 return(MetaL);
  }:;
@@ -1460,8 +1699,8 @@ return(MetaL);
 
 
 
-\begin{VerbatimOut}{XcasTabSignQ.cxx}
-TSq(nomf,L,Fo,D,nmr):={
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignQ.cxx}
+TSq(nomf,L,Fo,D,nmr):={
 L:=apply(f->unapply(f,x),L);
 Fo:=apply(f->unapply(f,x),Fo);
 L:=concat(L,Fo);
@@ -1478,7 +1717,7 @@ pour k de 0 jusque n-1 faire
                           if(S[j]>mini and S[j]<maxi){Z:=Z,simplifier(S[j]);}
                       fpour;
   fsi;
-fpour;
+fpour;
 
 
 pour k de 0 jusque m-1 faire 
@@ -1497,60 +1736,60 @@ nz:=size(Z);
 if(nz>2){pour u de 1 jusque nz-2 faire 
      si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zéros en double
      fsi;
-fpour;}
+fpour;}
 
 
 Z:=sort(Z);
 nz:=size(Z);
 if(nz>2){pour u de 1 jusque nz-2 faire 
-     si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
+     si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
      fsi;
 fpour;};
 nz:=size(Z);
 
-if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
+if(nz==0){li:="";l0:="val(btex $"+latex(D[0])+"$ etex);val(btex $"+latex(D[1])+"$ etex);";
           for(p:=0;p<=n-1;p++){li:=li+"
-newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$ etex);"+
+newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$ etex);"+
 if(mini!=-infinity and L[p](mini)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+ 
-if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
+if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}
 
 }
            lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)>0){"plus;"}else{"moins;"};
 
-MetaL:=" input tableauVariation;
+MetaL:=" input tableauVariation;
            verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
  etex;
 
 beginTableau("+nmr+")
-newLigneVariables(btex $\\Mathbold{x}$ etex);
+newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+li+
     "
  newLigneSignes(btex $\\hbox{\\bf Signe }\\atop{{\\bf  de "+nomf+"(x)}}$ etex);"+
               if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
-                              "}}else{"nonDefBarre;"}+  lf+
+                              "}}else{"nonDefBarre;"}+  lf+
                                if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}}else{"nonDefBarre;"}+"
 endTableau;
-end"
+end"
 ;
 
 
 
 
 MetaLfc:=" 
-beginTableau("+nmr+")
+beginTableau("+nmr+")
 newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+li+
     "
@@ -1561,7 +1800,7 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
                                if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}}else{"nonDefBarre;"}+"
-endTableau;
+endTableau;
 
 "
 ;
@@ -1569,20 +1808,20 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
 
 
 
-}else{
+}else{
 
 
 l0:="val(btex $"+latex(D[0])+"$ etex);";li:=" ";lr:=" "; 
 pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";fpour; 
-l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
+l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
 
 
-for(p:=0;p<=n-1;p++){lp:="";                                     
+for(p:=0;p<=n-1;p++){lp:="";                                     
      li:=li+"
 newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$ etex);"+
            if(mini!=-infinity and L[p](mini)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}+ 
            if(L[p](Z[0]-0.01)>0){"plus;"}else{"moins;"};
                                
@@ -1595,7 +1834,7 @@ newLigneSignes(btex $\\hbox{\else{" "}
+                                valBarre(btex 0 etex);"}else{" "}
                               
     };  
 
@@ -1605,11 +1844,11 @@ pour t de 0 jusque nz-2 faire
                                       if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}                   
                          fpour
 
-MetaL:=" input tableauVariation;
-verbatimtex
+MetaL:=" input tableauVariation;
+verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
@@ -1622,7 +1861,7 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
     "
  newLigneSignes(btex $\\hbox{\\bf Signe de}\\atop{{\\bf "+nomf+"(x)}}$ etex);"+
                if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
-                                valBarre(btex 0 etex);"}else{"
+                                valBarre(btex 0 etex);"}else{"
                               "}}else{"nonDefBarre;"}+  
                          if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                          if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+
@@ -1630,8 +1869,8 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
                          if(product(L[s](Z[nz-1]+0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                                if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+"
-endTableau;
-end"
+endTableau;
+end"
 ;
 
 
@@ -1639,7 +1878,7 @@ newLigneVariables(btex $\\Mathbold{x}$ etex
 
 MetaLfc:="
 beginTableau("+nmr+")
-newLigneVariables(btex $\\Mathbold{x}$ etex);
+newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+
                      li
                      +
@@ -1647,14 +1886,14 @@ newLigneVariables(btex $\\Mathbold{x}$ $\\hbox{\\bf Signe de}\\atop{{\\bf "+nomf+"(x)}}$ etex);"+
                if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{"
-                              "}}else{"nonDefBarre;"}+  
+                              "}}else{"nonDefBarre;"}+  
                          if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                          if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+
                          lr+
                          if(product(L[s](Z[nz-1]+0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+
                                if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
                                 valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+"
-endTableau;
+endTableau;
 
 "
 
@@ -1665,14 +1904,14 @@ newLigneVariables(btex $\\Mathbold{x}$ fprint(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
 fclose(sortie);
 
 
 
 
 
-return(MetaL);
+return(MetaL);
  }:;
 
 \end{VerbatimOut}
@@ -1687,17 +1926,17 @@ return(MetaL);
 
 
 
-\begin{VerbatimOut}{XcasTabSign.cxx}
-TSa(a,b,c,d,nmr):={
-zA:=resoudre(a*x+b=0,x)[0];
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSign.cxx}
+TSa(a,b,c,d,nmr):={
+zA:=resoudre(a*x+b=0,x)[0];
 zB:=resoudre(c*x+d=0,x)[0];
 zmin:=min(zA,zB);
-zmax:=max(zA,zB);
+zmax:=max(zA,zB);
   Meta:= " input tableauVariation;
-           verbatimtex
+           verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
@@ -1706,12 +1945,12 @@ zmax:=max(zA,zB);
    newLigneVariables(btex $\\Mathbold{x}$ etex);
    val(btex $-\\infty$ etex);val(btex $"+latex(zmin)+"$ etex);
 val(btex $"+latex(zmax)+"$etex);
-val(btex $+\\infty$ etex); 
+val(btex $+\\infty$ etex); 
    newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+"}}$ etex);"
         +   if(a>0){"moins;"}else{"plus;"}+
                                  if(zmin==zA){"valBarre(btex 0 etex);"}else{"barre;"}+
                                  if(zmin==zA){si a>0 alors "plus;"; sinon "moins;";fsi}
-                                             else{si a>0 alors "moins;"; sinon "plus;"; fsi}+
+                                             else{si a>0 alors "moins;"; sinon "plus;"; fsi}+
                                  if(zmin==zA){"barre;"}else{"valBarre(btex 0 etex);"}+
                                  if(a>0){"plus;"}else{"moins;"}
      +" 
@@ -1720,20 +1959,20 @@ newLigneSignes(btex $\\hbox{\etex);"}+
+                                 if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+
                                  if(c>0){"plus;"}else{"moins;"}  
      
    +" 
 newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{("+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+")("+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+")}}$ etex);"
-        +   si a*c>0 alors plus; sinon moins;fsi+";"+
+        +   si a*c>0 alors plus; sinon moins;fsi+";"+
                                  "valBarre(btex 0 etex);"+
-                                 si a*c>0 alors moins; sinon plus;fsi+";"+
+                                 si a*c>0 alors moins; sinon plus;fsi+";"+
                                  "valBarre(btex 0 etex);"+
                                  si a*c>0 alors plus; sinon moins;fsi+";"+"
 endTableau;
-end"
+end"
 ;
-return(Meta);
+return(Meta);
  }:;
 \end{VerbatimOut}
 
@@ -1749,8 +1988,8 @@ return(Meta);
 
 
 
-\begin{VerbatimOut}{XcasTSc.cxx}
-TSc(g,D,nmr):={
+\begin{VerbatimOut}[commandchars=?§£]{XcasTSc.cxx}
+TSc(g,D,nmr):={
 f:=unapply(g,x);
 Z:=NULL;
 mini:=D[0]; maxi:=D[1];lm:=" ";
@@ -1761,13 +2000,13 @@ li:=if(mini!=-infinity and f(mini)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+ 
 if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}}else{if(f(0)>0){"plus;"}else{"moins;"}};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
-                                valBarre(btex 0 etex);"}else{"
+lf:=if(maxi!=+infinity and f(maxi)==0){"
+                                valBarre(btex 0 etex);"}else{"
                               "};
 }
 else{pour j de 0 jusque size(S)-1 faire 
                            if(S[j]>mini and S[j]<maxi){Z:=Z,simplifier(S[j])};
-                      fpour;
+                      fpour;
 
 
 Z:=sort(Z);
@@ -1775,7 +2014,7 @@ nz:=size(Z);
 if(nz>2){pour u de 1 jusque nz-2 faire 
      si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
      fsi;
-fpour;}
+fpour;}
 
 
 nz:=size(Z);
@@ -1785,15 +2024,15 @@ li:=if(mini!=-infinity and f(mini)==0){"
                                 valBarre(btex 0 etex);"}else{"
                               "}+ 
 if(f((mini+maxi)*0.5>0)){"plus;"}else{"moins;"};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
-                                valBarre(btex 0 etex);"}else{"
+lf:=if(maxi!=+infinity and f(maxi)==0){"
+                                valBarre(btex 0 etex);"}else{"
                               "};
 
 }else{
 l0:="val(btex $"+latex(D[0])+"$ etex);";li:=" ";
 pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
 ";
-fpour; 
+fpour; 
 l0:=l0+"val(btex $"+latex(D[1])+"$ etex);";
                                      
 li:= if(mini!=-infinity and f(mini)==0){"
@@ -1802,43 +2041,43 @@ li:= if(mini!=-infinity and f(mini)==0){"
 if(f(Z[0]-0.01)>0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);";                               
 
 lm:=if(nz>=2){for(r:=0; r<=nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}+
-                                      "valBarre(btex 0 etex);" 
+                                      "valBarre(btex 0 etex);" 
                            }}else{" "}; 
 
-lf:=if(f(Z[nz-1]+1.0)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{"
+lf:=if(f(Z[nz-1]+1.0)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{"
                               "};
 }};  
 
 
-MetaL:=" input tableauVariation;
+MetaL:=" input tableauVariation;
            verbatimtex
 %&latex
  \\documentclass{article}
- \\usepackage[upright]{fourier}
+  \\?fonte
  \\usepackage{amsmath}
  \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
  \\begin{document}
  etex;
 beginTableau("+nmr+")
-newLigneVariables(btex $\\Mathbold{x}$ etex);
+newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+"
-newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$ etex);"+
+newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$ etex);"+
                      li+lm+lf
                      +"
 endTableau;
-end"
+end"
 ;
 
 
 MetaLfc:="
 
-beginTableau("+nmr+")
-newLigneVariables(btex $\\Mathbold{x}$ etex);
+beginTableau("+nmr+")
+newLigneVariables(btex $\\Mathbold{x}$ etex);
    "+l0+"
 newLigneSignes(btex $\\hbox{\\bf Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$ etex);"+
                      li+lm+lf
                      +"
-endTableau;
+endTableau;
 
 "
 ;
@@ -1865,7 +2104,7 @@ return(MetaL);
 
 %%
 %%
-%% traitement des fichiers produits par giac/xcas
+%% traitement des fichiers produits par giac/xcas
 %%
 %%
 
@@ -1879,19 +2118,19 @@ return(MetaL);
                                    % exporter le source mp
                                    % puis lancer metapost pour créer
                                    % l'image du tableau
-         \immediate\write18{\cat XCasmpfc.mp >> \Tableaux.Tab.mp}
+         \immediate\write18{\cat XCasmpfc.mp >> \Tableaux.Tab.mp}
          \immediate\write18{mpost -interaction=batchmode -jobname=\Tableaux.Tab  XCasmp#1}}%
          {% sinon, si le tableau est absent, alerte.
          \IfFileExists{\Tableaux.Tab.\theTVn}{}{% 
          \PackageError{tablor}{Tableau absent non
          reconstituable.}{Pour compiler il faut, soit les fichiers de
          tableaux, soit le fichier \Tableaux.Tab.mp, soit disposer de
-         XCas.}}}
+         XCas.}}}
                 
 \begin{center}
   \includegraphics{\Tableaux.Tab.\theTVn}
 \end{center}
-\stepcounter{TVn}}
+\stepcounter{TVn}}
 
 
 %%
@@ -1904,14 +2143,14 @@ return(MetaL);
 \newcommand{\dressetoile}[1]{%
 \IfFileExists{\Tableaux.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 >> \Tableaux.Tab.mp}}
+\immediate\write18{\cat TSav-\theTVn.mp >> \Tableaux.Tab.mp}}
 % Si  non,  lancement des opérations de fabrication 
 {\executGiacmp{XCas#1.giac}% 
 \immediate\write18{\editeur XCasmpfc.mp}
 
   % Modification avec l'éditeur choisi
 
-\immediate\write18{\cp -f XCasmpfc.mp TSav-\theTVn.mp}   % Sauvegarde du 
+\immediate\write18{\cp -f XCasmpfc.mp TSav-\theTVn.mp}   % Sauvegarde du 
                                  % source mp sur le disque pour une
                                  % inclusion ultérieure dans Tableaux.mp. 
 \immediate\write18{\cat XCasmpfc.mp >> \Tableaux.Tab.mp}} % Inclusion du
@@ -1928,7 +2167,7 @@ return(MetaL);
   \includegraphics{\Tableaux.Tab.\theTVn}
 \end{center}
 
-\setcounter{TVn}{\theTVnbis}    % Restauration du compteur TVn
+\setcounter{TVn}{\theTVnbis}    % Restauration du compteur TVn
 }
 
 
@@ -1941,7 +2180,7 @@ return(MetaL);
 %%
 %%%
 %%%
-%%% les "giac" qui permettent d'exécuter la commande rentrée dans le fichier tex
+%%% les "giac" qui permettent d'exécuter la commande rentrée dans le fichier tex
 %%% suivis des environnements qui permettront la saisie du code giac/xcas
 %%% Les versions étoilées permettent de modifier le code metapost produit initialement
 %%%
@@ -1950,21 +2189,21 @@ return(MetaL);
 
 
 \begin{VerbatimOut}{XCas.giac}
-maple_mode(0);
+maple_mode(0);
 read("XcasTabSign.cxx");
-Sortie:=fopen("XCasmp.mp");
+Sortie:=fopen("XCasmp.mp");
 vect.xcas.user := read("XCas.user");
-vxo := vect.xcas.user;
+vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
-nbr.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
-rslt := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
 Resultat:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
-\newenvironment{TSa}
+\newenvironment{TSa}
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCas.user}}
 {\end{VerbatimOut}
           \dresse{}
@@ -1980,48 +2219,48 @@ fclose(Sortie);
 
 \begin{VerbatimOut}{XCasQ.giac}
 maple_mode(0);
-read("XcasTabSignQ.cxx");
+read("XcasTabSignQ.cxx");
 Sortie:=fopen("XCasmpQ.mp");
-vect.xcas.user := read("XCasQ.user");
-vxo := vect.xcas.user;
-dim.vxo := dim(vxo);
+vect.xcas.user := read("XCasQ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
 nbr.line.vxo := dim.vxo;
-Resultat:=cat(" "); 
+Resultat:=cat(" "); 
 rslt := vxo[0]; RslT:=cat(rslt);
-Resultat:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
 fprint(Sortie,Unquoted,Resultat);
-fclose(Sortie);
+fclose(Sortie);
 \end{VerbatimOut}
 
-\newenvironment{TSq}%
+\newenvironment{TSq}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}}
 {\end{VerbatimOut}\dresse{Q}}
 
 
 
-\newenvironment{TSq*}[1]%
+\newenvironment{TSq*}[1]%
 {\setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}}
 {\end{VerbatimOut}\dressetoile{Q}}
 
 
 \begin{VerbatimOut}{XCasL.giac}
 maple_mode(0);
-read("XcasTabSignL.cxx");
+read("XcasTabSignL.cxx");
 Sortie:=fopen("XCasmpL.mp");
-vect.xcas.user := read("XCasL.user");
+vect.xcas.user := read("XCasL.user");
 vxo := vect.xcas.user;
-dim.vxo := dim(vxo);
-nbr.line.vxo := dim.vxo;
-Resultat:=cat(" "); 
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" "); 
 rslt := vxo[0]; RslT:=cat(rslt);
-Resultat:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
 fprint(Sortie,Unquoted,Resultat);
-fclose(Sortie);
+fclose(Sortie);
 \end{VerbatimOut}
 
-\newenvironment{TS}%
+\newenvironment{TS}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasL.user}}
 {\end{VerbatimOut}\dresse{L}}
 
@@ -2034,60 +2273,99 @@ fprint(Sortie,Unquoted,Resultat);
 
 
 \begin{VerbatimOut}{XCasTSc.giac}
-maple_mode(0);
+maple_mode(0);
 read("XcasTSc.cxx");
 Sortie:=fopen("XCasmpTSc.mp");
 vect.xcas.user := read("XCasTSc.user");
-vxo := vect.xcas.user;
+vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
-nbr.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
-rslt := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
 Resultat:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
 
 
 
-\newenvironment{TSc*}[1]%
+\newenvironment{TSc*}[1]%
 {\setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}}
-{\end{VerbatimOut}\dressetoile{TSc}}
+{\end{VerbatimOut}\dressetoile{TSc}}
 
 
 \newenvironment{TSc}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}}
-{\end{VerbatimOut}\dresse{TSc}}
+{\end{VerbatimOut}\dresse{TSc}}
 
 
 \begin{VerbatimOut}{XCasTV.giac}
-maple_mode(0);
+maple_mode(0);
 read("XcasTV.cxx");
 Sortie:=fopen("XCasmpTV.mp");
-vect.xcas.user := read("XCasTV.user");
-vxo := vect.xcas.user;
+vect.xcas.user := read("XCasTV.user");
+vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
-nbr.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
-rslt := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
 Resultat:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
 \newenvironment{TV}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}%
 {\end{VerbatimOut}
-\dresse{TV}}
+\dresse{TV}}
 
-\newenvironment{TV*}[1]{%
+\newenvironment{TV*}[1]{%
 \setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}%
-{\end{VerbatimOut}\dressetoile{TV}}
+{\end{VerbatimOut}\dressetoile{TV}}
+
+
+
+
+
+
+
+
+
+
+
+\begin{VerbatimOut}{XCasTVZ.giac}
+maple_mode(0);
+read("XcasTVZ.cxx");
+Sortie:=fopen("XCasmpTVZ.mp");
+vect.xcas.user := read("XCasTVZ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" "); 
+rslt := vxo[0]; RslT:=cat(rslt);
+Resultat:=cat(Resultat,RslT);
+fprint(Sortie,Unquoted,Resultat);
+fclose(Sortie);
+\end{VerbatimOut}
+
+\newenvironment{TVZ}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}
+\dresse{TVZ}}
+
+\newenvironment{TVZ*}[1]{%
+\setcounter{TVnbis}{\theTVn}
+\setcounter{TVn}{#1}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}\dressetoile{TVZ}}
+
+
+
 
 
 
@@ -2097,16 +2375,16 @@ fclose(Sortie);
 
 \begin{VerbatimOut}{XCasTVapp.giac}
 maple_mode(0);
-read("XcasTVapp.cxx");
+read("XcasTVapp.cxx");
 Sortie:=fopen("XCasmpTVapp.mp");
 vect.xcas.user := read("XCasTVapp.user");
-vxo := vect.xcas.user;
+vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
 nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
-rslt := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
 Resultat:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
@@ -2117,9 +2395,9 @@ fclose(Sortie);
 
 \newenvironment{TVapp*}[1]{%
 \setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVapp}}
+{\end{VerbatimOut}\dressetoile{TVapp}}
 
 
 
@@ -2136,13 +2414,13 @@ maple_mode(0);
 read("XcasTVI.cxx");
 Sortie:=fopen("XCasmpTVI.mp");
 vect.xcas.user := read("XCasTVI.user");
-vxo := vect.xcas.user;
+vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
 nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
-rslt := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
 Resultat:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
@@ -2153,9 +2431,9 @@ fclose(Sortie);
 
 \newenvironment{TVI*}[1]%
 {\setcounter{TVnbis}{\theTVn}
-\setcounter{TVn}{#1}
+\setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVI.user}}%
-{\end{VerbatimOut}\dressetoile{TVI}}
+{\end{VerbatimOut}\dressetoile{TVI}}
 
 
 
@@ -2166,27 +2444,27 @@ fclose(Sortie);
 maple_mode(0);
 read("XcasTVIapp.cxx");
 Sortie:=fopen("XCasmpTVIapp.mp");
-vect.xcas.user := read("XCasTVIapp.user");
+vect.xcas.user := read("XCasTVIapp.user");
 vxo := vect.xcas.user;
 dim.vxo := dim(vxo);
 nbr.line.vxo := dim.vxo;
 Resultat:=cat(" "); 
 rslt := vxo[0]; RslT:=cat(rslt);
-Resultat:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
 fprint(Sortie,Unquoted,Resultat);
 fclose(Sortie);
 \end{VerbatimOut}
 
-\newenvironment{TVIapp}%
+\newenvironment{TVIapp}%
 {\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}%
 {\end{VerbatimOut}\dresse{TVIapp}}
 
 
-\newenvironment{TVIapp*}[1]%
+\newenvironment{TVIapp*}[1]%
 {\setcounter{TVnbis}{\theTVn}
 \setcounter{TVn}{#1}
 \VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}%
-{\end{VerbatimOut}\dressetoile{TVIapp}}
+{\end{VerbatimOut}\dressetoile{TVIapp}}
 
 
 
@@ -2195,7 +2473,7 @@ fclose(Sortie);
 
 
 %%
-%% Zi end -> enjoy :)
+%% Zi end -> enjoy :)
 
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.pdf b/Master/texmf-dist/doc/latex/tablor/tablor.pdf index f9eb59537b8..9da5fd2ad8f 100644 Binary files a/Master/texmf-dist/doc/latex/tablor/tablor.pdf and b/Master/texmf-dist/doc/latex/tablor/tablor.pdf differ diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.tex b/Master/texmf-dist/doc/latex/tablor/tablor.tex index 3678920eda9..7415079fefb 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.tex +++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex @@ -1,8 +1,15 @@ \documentclass[12pt]{article} \usepackage[height=250mm,width=183mm]{geometry} -\usepackage[upright]{fourier} + \usepackage{preambule} -\usepackage[xcas]{tablor} +\usepackage{lmodern} +\usepackage{tablor} +\usepackage{tocloft} +%ajoute de l'espace entre le +%numero de chapitre (chap) et le titre +%dans la table des matieres + +\addtolength{\cftsecnumwidth}{2em} \usepackage[dvips,colorlinks=true,linkcolor=orange]{hyperref} @@ -25,7 +32,7 @@ keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,com \author{Guillaume \textsc{Connan} \\ \href{http://gconnan.free.fr}{http://gconnan.free.fr}\\ avec l'efficace participation de Jean-Michel \textsc{Boucart}} -\date{24 mars 2008 - Version 2.01} +\date{12 mai 2008 - Version 2.03} \begin{document} @@ -110,7 +117,9 @@ pour installer une nouvelle extension \LaTeX{}. qui ont \Prog{MiKTeX} sous \Prog{windows}, il suffit d'aller le chercher dans les dépôts. Pour les utilisateurs de \Prog{Unix}, vous devez savoir comment faire... Par commodité, vous pouvez en profiter pour installer la version \Prog{Unix} de \emph{MiKTeX package manager}. J'ai fait un - petit script pour vous y aider ici : \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52} + petit script pour vous y aider ici : + + \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52} @@ -161,8 +170,8 @@ Le s \begin{figure} \begin{DANGER} -Le fichier \texttt{tablor.sty} est codé en \texttt{latin-1}. Certains devront donc le convertir en -\texttt{utf-8}. +Le fichier \texttt{tablor.sty} est codé en \texttt{latin-1}. Les utilisateurs de +\texttt{utf-8} devront donc utiliser \texttt{tablorutf8.sty} à la place. \end{DANGER} \end{figure} @@ -183,21 +192,20 @@ Le pr \documentclass{article} \usepackage{graphicx} \usepackage[french]{babel} -\usepackage[upright]{fourier} \usepackage[xcas]{tablor} % option modifiable \end{lstlisting} -\begin{figure} - \begin{Idee} - Les fontes utilisées dans les tableaux sont \verb+[upright]{fourier}+. Il est tout à - fait possible d'utiliser d'autres fontes. Il suffit de modifier le fichier - \texttt{tablor.sty} en remplaçant partout où il apparaît \verb+[upright]{fourier}+ par \verb+lmodern+ ou ce - que vous voulez. Ce n'est pas très pratique, mais cela évite de le mettre en option à - chaque utilisation et on utilise souvent la même fonte dans ses documents. - \end{Idee} - \end{figure} +% \begin{figure} +% \begin{Idee} +% Les fontes utilisées dans les tableaux sont \verb+[upright]{fourier}+. Il est tout à +% fait possible d'utiliser d'autres fontes. Il suffit de modifier le fichier +% \texttt{tablor.sty} en remplaçant partout où il apparaît \verb+[upright]{fourier}+ par \verb+lmodern+ ou ce +% que vous voulez. Ce n'est pas très pratique, mais cela évite de le mettre en option à +% chaque utilisation et on utilise souvent la même fonte dans ses documents. +% \end{Idee} +% \end{figure} @@ -213,7 +221,9 @@ On met \texttt{xcas} si l'on a install \subsection{Fichier \texttt{tablor.cfg}} -Voici son contenu~: +\subsubsection*{Contenu} + +{\small \begin{Verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -237,17 +247,37 @@ Voici son contenu~: % Laissez une espace avant de fermer l'accolade. \newcommand{\editeur}{texmaker } + + +% Déclaration des fontes utilisées +% ================================ +% +% Remplacez "[upright]{fourier}" par la fonte qui vous convient pour les maths +% (lmodern, mathpazo, etc.) + + +\newcommand{\fonte}{usepackage[upright]{fourier}} + + \end{Verbatim} +} + + Vous le placerez dans la même arborescence que \texttt{tablor.sty} et le modifierez si besoin est. +\subsubsection*{Éditeur} L'éditeur sera appelé dans certains cas pour modifier l'aspect des tableaux dans les fichiers sources \Prog{MetaPOST}. Il faudra choisir un éditeur comme par exemple \texttt{emacs, xemacs, texmaker, vi, winshell, notepad, vim, kate, gedit, textmate,texshop}, \texttt{kile}, etc. Voir aussi le paragraphe~\vref{modif}. +\subsubsection*{Fontes} +Les fontes utilisées par défaut sont celles de l'extension \texttt{fourier}. Pour en utiliser +d'autres, remplacez «~[upright]{fourier}~» par la fonte qui vous convient pour les maths +(lmodern, mathpazo, etc.) \subsection{Initialisation de \texttt{tablor} et préfixe des tableaux}\label{prefix} @@ -297,7 +327,6 @@ ou bien, selon les cas~: \documentclass{article} \usepackage{graphicx} \usepackage[french]{babel} -\usepackage[upright]{fourier} \usepackage[xcas]{tablor} % options modifiables \begin{document} @@ -426,6 +455,34 @@ TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,\tv) \end{enumerate} + +\subsection{Tableau de variation avec «~zone interdite~»} + + +Pour certaines fonctions, tout un intervalle est exclu de l'ensemble de définition. + +Par exemple, la fonction $x\mapsto \sqrt{x^2-1}$ est définie sur $]-\infty\pv -1]\cup[1\pv ++\infty[$. + +On utilise alors l'environnement \texttt{TVZ} (Z comme zone...). + + +\begin{lstlisting} +\begin{TVZ} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",sqrt(x^2-1),1,\tv) +\end{TVZ} +\end{lstlisting} + + +\begin{center} + \begin{TVZ*}{2003} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",sqrt(x^2-1),1,\tv) +\end{TVZ*} +\end{center} + + + + \subsection{Tableau des variations avec théorème des valeurs intermédiaires} Si l'on veut mettre en évidence les solutions de l'équation $f(x)=a$, on utilise l'environnement @@ -964,7 +1021,25 @@ TSc((x-10)*(x+10),[-10,10],\tv) \end{TSc} +\begin{lstlisting} +\begin{TVZ} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",(sqrt(x^2-1))*(x^2-4),1,\tv) +\end{TVZ} +\end{lstlisting} + + \begin{TVZ*}{2004} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",(sqrt(x^2-1))*(x^2-4),1,\tv) + \end{TVZ*} + + \begin{lstlisting} +\begin{TVZ} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",ln(x^2-1),1,\tv) +\end{TVZ} + \end{lstlisting} + \begin{TVZ*}{2005} + TVZ([-infinity,+infinity],[],[-1,1],"f","x",ln(x^2-1),1,\tv) + \end{TVZ*} diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.cfg b/Master/texmf-dist/tex/latex/tablor/tablor.cfg index a6e964edfb8..07aa2e6badb 100644 --- a/Master/texmf-dist/tex/latex/tablor/tablor.cfg +++ b/Master/texmf-dist/tex/latex/tablor/tablor.cfg @@ -24,3 +24,12 @@ \newcommand{\editeur}{texmaker } +% Déclaration des fontes utilisées +% ================================ +% +% Remplacez "[upright]{fourier}" par la fonte qui vous convient pour les maths +% (lmodern, mathpazo, etc.) + + +\newcommand{\fonte}{usepackage[upright]{fourier}} + diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty index 4b5a9e57334..d42c65e07c4 100644 --- a/Master/texmf-dist/tex/latex/tablor/tablor.sty +++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty @@ -1,6 +1,6 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{tablor}[24/03/2008 v2.01 la machine à créer des tableaux de signes et variations] +\ProvidesPackage{tablor}[24/03/2008 v2.03 la machine à créer des tableaux de signes et variations] % \copyleft Connan le Barbare \copyright % avec l'efficace participation de Jean-Michel Boucart @@ -75,6 +75,7 @@ \newboolean{windows}\setboolean{windows}{false} + %% on configure tablor dans un fichier extérieur pour la plateforme %% et l'éditeur @@ -94,15 +95,16 @@ + %% En-tête pour le fichier metapost contenant les codes %% de tous les tableaux produits - \begin{VerbatimOut}{tete.mp} + \begin{VerbatimOut}[commandchars=?§£]{tete.mp} input tableauVariation; verbatimtex %&latex \documentclass{article} - \usepackage[upright]{fourier} + \\?fonte \usepackage{amsmath} \newcommand{\Mathbold}[1]{\mbox{\boldmath$#1$\unboldmath}} \begin{document} @@ -110,6 +112,8 @@ \end{VerbatimOut} + + %% Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur %% Par défaut, c'est le nom du fichier tex courant (\jobname) %% Clôt le fichier metapost contenant le récapitulatif de tous les tableaux @@ -191,15 +195,12 @@ - - - %% %% Code giac/Xcas pour les Tableaux de Variations %% -\begin{VerbatimOut}{XcasTV.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTV.cxx} TV(L,F,nom,nomv,f,ftt,nmr):={ nl:=size(L); f:=unapply(f,x); @@ -250,11 +251,13 @@ newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Math if(k0==1){"1"}else{"0"}+ ");"; - if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); + if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ; lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity; lp:=lp+if(member(Z[r],F)){ - "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}} + "limGauche(btex + $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ + etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0); "}}} @@ -270,7 +273,7 @@ intro:="input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -386,7 +389,249 @@ return(MetaL); \end{VerbatimOut} +%% +%% +%% TV avec une zone interdite : on rajoute comme argument l'intervalle interdit +%% par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1) +%% + +\begin{VerbatimOut}[commandchars=?§£]{XcasTVZ.cxx} + +TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={ +nl:=size(L); +if(FF[0]>L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]}; +if(FF[1]0 alors pour j de 0 jusque size(S)-1 faire + kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1])); + kK:=(evalf(S[j])evalf(Imax)); + Kk:=(kk) and kK; + if(Kk==1){Z:=append(Z,simplifier(S[j]))}; + fpour + fsi; + +Z:=sort(Z); +nz:=size(Z); + + + si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; + fsi; +pour u de 1 jusque nz-2 faire + si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; + fsi; +fpour; +nz:=size(Z); +for(k:=1;kImin)and(Z[k] evalf(limite(f(x),x=Z[1],-1)); + kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1)); + +lsi:=" +newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+ + if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ + if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}} + +if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; + lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{ + if(Z[r]==Imax){"finNonDef;"+ + 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;"} + }}}}; + +lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre; +"}} +lm0:=limite(f(x),x=Z[0],1)==-infinity; + li:=" +newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+ + if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"} + else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+ + if(k0==1){"1"}else{"0"}+ + ");"; + +if(nz>2){ + for(r:=1; r<=nz-2;r++){ + krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); + krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ; + lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity; + lp:=lp+if(Z[r]==Imin){"limGauche(btex $"+if(lmrm==1){ + "-\\infty"}else{ + latex(simplifier(limite(f(x),x=Z[r],-1)))} + +"$ etex,"+if(krm==1){ + "1);"}else{"0);"} + +"debutNonDef;" + }//fsi Zr=Imin + else{ + if (Z[r]==Imax) {"finNonDef;limDroite(btex $"+if(lmrp==1){ + "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))} + +"$ etex,"+if(krp==1){ + "1);"}else{"0);"} + } + else { + if(member(Z[r],F)){ + "limGauche(btex $"+if(lmrm==1){ + "-\\infty"}else{ + latex(simplifier(limite(f(x),x=Z[r],-1)))} + +"$ etex,"+if(krm==1){ + "1);"}else{"0);"} + +"nonDefBarre;limDroite(btex $"+if(lmrp==1){ + "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))} + +"$ etex,"+if(krp==1){ + "1);"}else{"0);"} + }//fsi (member Zr F) + else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+ + if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){ + "0.5);"}else{ + if(krp==1){ + "1);"}else{"0);"}//felse(krp) + }//felse(valpos) + }//felse(member Zr F) + } //felse(Zr=Imax) + }//felse(Zr=Imin) + };//ffor + }//fsi nz + +lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity; + lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+ + if(kz==1){"1);"}else{"0); +"}; + + +intro:="input tableauVariation; + verbatimtex +%&latex + \\documentclass{article} + \\?fonte + \\usepackage{amsmath} + \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} + \\begin{document} + etex; + +" + + +MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+lsi+lsp+lsf+" +endTableau; +end +";}else{ +intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+" +endTableau; +end"; +} +}else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+ +li+ +lp+ +lf ++" +endTableau; +end";}else{intro+"beginTableau("+nmr+")"+ + l0+ +li+ +lf ++" +endTableau; +end";}}else{ +if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsp+lsf+ +li+ +lp+ +lf ++" +endTableau; +end";}else{intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+ +li+ +lf ++" +endTableau; +end";} +}} + + + +MetaLfc:=if(ftt==2){if(nz>2){" + +beginTableau("+nmr+")"+ + l0+lsi+lsp+lsf+" +endTableau; + +";}else{ +intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+" +endTableau; + +"; +} +}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+ + l0+ +li+ +lp+ +lf ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +li+ +lf ++" +endTableau; + +";}}else{ +if(nz>2){"beginTableau("+nmr+")"+ + l0+ +lsi+lsp+lsf+ +li+ +lp+ +lf ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+ +li+ +lf ++" +endTableau; + +";} +}} + + +sortie:=fopen("XCasmpfc.mp"); +fprint(sortie,Unquoted,MetaLfc); +fclose(sortie); + + +return(MetaL); + } +:; + +\end{VerbatimOut} %% @@ -396,7 +641,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVapp.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVapp.cxx} @@ -493,7 +738,7 @@ intro:="input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -629,7 +874,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVI.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVI.cxx} TVI(L,F,nom,nomv,f,ftt,ao,nmr):={ @@ -769,7 +1014,7 @@ input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -898,7 +1143,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVIapp.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVIapp.cxx} TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={ @@ -1059,7 +1304,7 @@ input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1193,7 +1438,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSignL.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignL.cxx} TS(L,D,nmr):={ @@ -1235,7 +1480,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1310,7 +1555,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1371,7 +1616,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSignQ.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignQ.cxx} TSq(nomf,L,Fo,D,nmr):={ L:=apply(f->unapply(f,x),L); Fo:=apply(f->unapply(f,x),Fo); @@ -1436,7 +1681,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1520,7 +1765,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1598,7 +1843,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSign.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSign.cxx} TSa(a,b,c,d,nmr):={ zA:=resoudre(a*x+b=0,x)[0]; zB:=resoudre(c*x+d=0,x)[0]; @@ -1608,7 +1853,7 @@ zmax:=max(zA,zB); verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1660,7 +1905,7 @@ return(Meta); -\begin{VerbatimOut}{XcasTSc.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTSc.cxx} TSc(g,D,nmr):={ f:=unapply(g,x); Z:=NULL; @@ -1725,7 +1970,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -2006,6 +2251,45 @@ fclose(Sortie); + + + + +\begin{VerbatimOut}{XCasTVZ.giac} +maple_mode(0); +read("XcasTVZ.cxx"); +Sortie:=fopen("XCasmpTVZ.mp"); +vect.xcas.user := read("XCasTVZ.user"); +vxo := vect.xcas.user; +dim.vxo := dim(vxo); +nbr.line.vxo := dim.vxo; +Resultat:=cat(" "); +rslt := vxo[0]; RslT:=cat(rslt); +Resultat:=cat(Resultat,RslT); +fprint(Sortie,Unquoted,Resultat); +fclose(Sortie); +\end{VerbatimOut} + +\newenvironment{TVZ}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}% +{\end{VerbatimOut} +\dresse{TVZ}} + +\newenvironment{TVZ*}[1]{% +\setcounter{TVnbis}{\theTVn} +\setcounter{TVn}{#1} +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}% +{\end{VerbatimOut}\dressetoile{TVZ}} + + + + + + + + + + \begin{VerbatimOut}{XCasTVapp.giac} maple_mode(0); read("XcasTVapp.cxx"); diff --git a/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty b/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty index c0ab9fe1e3c..d89eda8b40b 100644 --- a/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty +++ b/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty @@ -1,6 +1,6 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{tablor}[24/03/2008 v2.01 la machine à créer des tableaux de signes et variations] +\ProvidesPackage{tablor}[24/03/2008 v2.03 la machine à créer des tableaux de signes et variations] % \copyleft Connan le Barbare \copyright % avec l'efficace participation de Jean-Michel Boucart @@ -75,6 +75,7 @@ \newboolean{windows}\setboolean{windows}{false} + %% on configure tablor dans un fichier extérieur pour la plateforme %% et l'éditeur @@ -94,15 +95,16 @@ + %% En-tête pour le fichier metapost contenant les codes %% de tous les tableaux produits - \begin{VerbatimOut}{tete.mp} + \begin{VerbatimOut}[commandchars=?§£]{tete.mp} input tableauVariation; verbatimtex %&latex \documentclass{article} - \usepackage[upright]{fourier} + \\?fonte \usepackage{amsmath} \newcommand{\Mathbold}[1]{\mbox{\boldmath$#1$\unboldmath}} \begin{document} @@ -110,6 +112,8 @@ \end{VerbatimOut} + + %% Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur %% Par défaut, c'est le nom du fichier tex courant (\jobname) %% Clôt le fichier metapost contenant le récapitulatif de tous les tableaux @@ -191,15 +195,12 @@ - - - %% %% Code giac/Xcas pour les Tableaux de Variations %% -\begin{VerbatimOut}{XcasTV.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTV.cxx} TV(L,F,nom,nomv,f,ftt,nmr):={ nl:=size(L); f:=unapply(f,x); @@ -250,11 +251,13 @@ newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Math if(k0==1){"1"}else{"0"}+ ");"; - if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); + if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ; lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity; lp:=lp+if(member(Z[r],F)){ - "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}} + "limGauche(btex + $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ + etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0); "}}} @@ -270,7 +273,7 @@ intro:="input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -386,7 +389,249 @@ return(MetaL); \end{VerbatimOut} +%% +%% +%% TV avec une zone interdite : on rajoute comme argument l'intervalle interdit +%% par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1) +%% + +\begin{VerbatimOut}[commandchars=?§£]{XcasTVZ.cxx} + +TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={ +nl:=size(L); +if(FF[0]>L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]}; +if(FF[1]0 alors pour j de 0 jusque size(S)-1 faire + kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1])); + kK:=(evalf(S[j])evalf(Imax)); + Kk:=(kk) and kK; + if(Kk==1){Z:=append(Z,simplifier(S[j]))}; + fpour + fsi; + +Z:=sort(Z); +nz:=size(Z); + + + si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1; + fsi; +pour u de 1 jusque nz-2 faire + si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1; + fsi; +fpour; +nz:=size(Z); +for(k:=1;kImin)and(Z[k] evalf(limite(f(x),x=Z[1],-1)); + kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1)); + +lsi:=" +newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+ + if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ + if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}} + +if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; + lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{ + if(Z[r]==Imax){"finNonDef;"+ + 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;"} + }}}}; + +lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre; +"}} +lm0:=limite(f(x),x=Z[0],1)==-infinity; + li:=" +newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+ + if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"} + else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+ + if(k0==1){"1"}else{"0"}+ + ");"; + +if(nz>2){ + for(r:=1; r<=nz-2;r++){ + krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1)); + krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ; + lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity; + lp:=lp+if(Z[r]==Imin){"limGauche(btex $"+if(lmrm==1){ + "-\\infty"}else{ + latex(simplifier(limite(f(x),x=Z[r],-1)))} + +"$ etex,"+if(krm==1){ + "1);"}else{"0);"} + +"debutNonDef;" + }//fsi Zr=Imin + else{ + if (Z[r]==Imax) {"finNonDef;limDroite(btex $"+if(lmrp==1){ + "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))} + +"$ etex,"+if(krp==1){ + "1);"}else{"0);"} + } + else { + if(member(Z[r],F)){ + "limGauche(btex $"+if(lmrm==1){ + "-\\infty"}else{ + latex(simplifier(limite(f(x),x=Z[r],-1)))} + +"$ etex,"+if(krm==1){ + "1);"}else{"0);"} + +"nonDefBarre;limDroite(btex $"+if(lmrp==1){ + "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))} + +"$ etex,"+if(krp==1){ + "1);"}else{"0);"} + }//fsi (member Zr F) + else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+ + if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){ + "0.5);"}else{ + if(krp==1){ + "1);"}else{"0);"}//felse(krp) + }//felse(valpos) + }//felse(member Zr F) + } //felse(Zr=Imax) + }//felse(Zr=Imin) + };//ffor + }//fsi nz + +lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity; + lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+ + if(kz==1){"1);"}else{"0); +"}; + + +intro:="input tableauVariation; + verbatimtex +%&latex + \\documentclass{article} + \\?fonte + \\usepackage{amsmath} + \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} + \\begin{document} + etex; + +" + + +MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+lsi+lsp+lsf+" +endTableau; +end +";}else{ +intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+" +endTableau; +end"; +} +}else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+ +li+ +lp+ +lf ++" +endTableau; +end";}else{intro+"beginTableau("+nmr+")"+ + l0+ +li+ +lf ++" +endTableau; +end";}}else{ +if(nz>2){intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsp+lsf+ +li+ +lp+ +lf ++" +endTableau; +end";}else{intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+ +li+ +lf ++" +endTableau; +end";} +}} + + + +MetaLfc:=if(ftt==2){if(nz>2){" + +beginTableau("+nmr+")"+ + l0+lsi+lsp+lsf+" +endTableau; + +";}else{ +intro+"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+" +endTableau; + +"; +} +}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+ + l0+ +li+ +lp+ +lf ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +li+ +lf ++" +endTableau; + +";}}else{ +if(nz>2){"beginTableau("+nmr+")"+ + l0+ +lsi+lsp+lsf+ +li+ +lp+ +lf ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +lsi+lsf+ +li+ +lf ++" +endTableau; + +";} +}} + + +sortie:=fopen("XCasmpfc.mp"); +fprint(sortie,Unquoted,MetaLfc); +fclose(sortie); + + +return(MetaL); + } +:; + +\end{VerbatimOut} %% @@ -396,7 +641,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVapp.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVapp.cxx} @@ -493,7 +738,7 @@ intro:="input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -629,7 +874,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVI.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVI.cxx} TVI(L,F,nom,nomv,f,ftt,ao,nmr):={ @@ -769,7 +1014,7 @@ input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -898,7 +1143,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTVIapp.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTVIapp.cxx} TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={ @@ -1059,7 +1304,7 @@ input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1193,7 +1438,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSignL.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignL.cxx} TS(L,D,nmr):={ @@ -1235,7 +1480,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1310,7 +1555,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1371,7 +1616,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSignQ.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignQ.cxx} TSq(nomf,L,Fo,D,nmr):={ L:=apply(f->unapply(f,x),L); Fo:=apply(f->unapply(f,x),Fo); @@ -1436,7 +1681,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1520,7 +1765,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1598,7 +1843,7 @@ return(MetaL); -\begin{VerbatimOut}{XcasTabSign.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTabSign.cxx} TSa(a,b,c,d,nmr):={ zA:=resoudre(a*x+b=0,x)[0]; zB:=resoudre(c*x+d=0,x)[0]; @@ -1608,7 +1853,7 @@ zmax:=max(zA,zB); verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1660,7 +1905,7 @@ return(Meta); -\begin{VerbatimOut}{XcasTSc.cxx} +\begin{VerbatimOut}[commandchars=?§£]{XcasTSc.cxx} TSc(g,D,nmr):={ f:=unapply(g,x); Z:=NULL; @@ -1725,7 +1970,7 @@ MetaL:=" input tableauVariation; verbatimtex %&latex \\documentclass{article} - \\usepackage[upright]{fourier} + \\?fonte \\usepackage{amsmath} \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}} \\begin{document} @@ -1876,7 +2121,7 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TSa} -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCas.user}} +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCas.user}} {\end{VerbatimOut} \dresse{} } @@ -1905,7 +2150,7 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TSq}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasQ.user}} +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}} {\end{VerbatimOut}\dresse{Q}} @@ -1913,7 +2158,7 @@ fclose(Sortie); \newenvironment{TSq*}[1]% {\setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasQ.user}} +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}} {\end{VerbatimOut}\dressetoile{Q}} @@ -1933,14 +2178,14 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TS}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasL.user}} +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasL.user}} {\end{VerbatimOut}\dresse{L}} \newenvironment{TS*}[1] {\setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasL.user}} +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasL.user}} {\end{VerbatimOut}\dressetoile{L}} @@ -1965,12 +2210,12 @@ fclose(Sortie); \newenvironment{TSc*}[1]% {\setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTSc.user}} +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}} {\end{VerbatimOut}\dressetoile{TSc}} \newenvironment{TSc}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTSc.user}} +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}} {\end{VerbatimOut}\dresse{TSc}} @@ -1990,14 +2235,14 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TV}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTV.user}}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}% {\end{VerbatimOut} \dresse{TV}} \newenvironment{TV*}[1]{% \setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTV.user}}% +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}% {\end{VerbatimOut}\dressetoile{TV}} @@ -2006,6 +2251,45 @@ fclose(Sortie); + + + + +\begin{VerbatimOut}{XCasTVZ.giac} +maple_mode(0); +read("XcasTVZ.cxx"); +Sortie:=fopen("XCasmpTVZ.mp"); +vect.xcas.user := read("XCasTVZ.user"); +vxo := vect.xcas.user; +dim.vxo := dim(vxo); +nbr.line.vxo := dim.vxo; +Resultat:=cat(" "); +rslt := vxo[0]; RslT:=cat(rslt); +Resultat:=cat(Resultat,RslT); +fprint(Sortie,Unquoted,Resultat); +fclose(Sortie); +\end{VerbatimOut} + +\newenvironment{TVZ}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}% +{\end{VerbatimOut} +\dresse{TVZ}} + +\newenvironment{TVZ*}[1]{% +\setcounter{TVnbis}{\theTVn} +\setcounter{TVn}{#1} +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}% +{\end{VerbatimOut}\dressetoile{TVZ}} + + + + + + + + + + \begin{VerbatimOut}{XCasTVapp.giac} maple_mode(0); read("XcasTVapp.cxx"); @@ -2022,14 +2306,14 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TVapp}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVapp.user}}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVapp.user}}% {\end{VerbatimOut} \dresse{TVapp}} \newenvironment{TVapp*}[1]{% \setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVapp.user}}% +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVapp.user}}% {\end{VerbatimOut}\dressetoile{TVapp}} @@ -2058,14 +2342,14 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TVI}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVI.user}}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVI.user}}% {\end{VerbatimOut}\dresse{TVI}} \newenvironment{TVI*}[1]% {\setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVI.user}}% +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVI.user}}% {\end{VerbatimOut}\dressetoile{TVI}} @@ -2089,14 +2373,14 @@ fclose(Sortie); \end{VerbatimOut} \newenvironment{TVIapp}% -{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVIapp.user}}% +{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}% {\end{VerbatimOut}\dresse{TVIapp}} \newenvironment{TVIapp*}[1]% {\setcounter{TVnbis}{\theTVn} \setcounter{TVn}{#1} -\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVIapp.user}}% +\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}% {\end{VerbatimOut}\dressetoile{TVIapp}} -- cgit v1.2.3