Page 1 sur 2

[MetaPost] Changement de syntaxe ?

MessagePosté: Dimanche 28 Septembre 2008, 10:06
par François D.
Bonjour

Ayant migré vers Debian et Tex-live cet été, je me retrouve avec un problème inattendu : une syntaxe MetaPost parfaitement valide jusqu'alors ne passe plus :

Code: Tout sélectionner
 label.bot(btex $x$ etex , (6,0)*u);


Lorsque je tente une compilation, j'obtiens entre autres ceci :

Code: Tout sélectionner
This is MetaPost, Version 0.901 (Web2C 7.5.5)
(/usr/share/texmf-texlive/web2c/natural.tcx)
(figureEuler.mp
>> figureEuler.mp
>> figureEuler.mpx
! Unable to make mpx file.
l.101   label.bot(btex
                       $x$ etex , (6,0)*u);
Transcript written on figureEuler.log.


Dans ce fichier log, ceci :

Code: Tout sélectionner
The two files given above are one of your source files and an auxiliary file I need to read to find out what your btex..etex blocks mean. If you don't know why I had trouble, try running it manually through MPto -tex, TeX, and DVItoMP.


Une idée pour que ça remarche automatiquement ? Je précise que c'est apparemment la commande etex de fin de bloc LaTeX qui coince, pas btex qui en ouvre un : l'éditeur gvim qui fait de la coloration syntaxique automatique de manière fiable reconnaît btex mais plus etex ...

Re: [MetaPost] : changement de syntaxe ?

MessagePosté: Dimanche 28 Septembre 2008, 13:57
par conan
Bonjour,

cette ligne étant parfaitement correcte :), je pense que l'erreur vient des autres labels utilisés (celui-ci est à la ligne 101 du fichier ;) ).
Peut-on avoir le source ?

Christophe.

Re: [MetaPost] : changement de syntaxe ?

MessagePosté: Dimanche 28 Septembre 2008, 17:21
par D.GH
Bonjour,

Il faudrait voir l'installation de Tex-live, Personnellement j'utilise MikTex sous Win32, je vais vous laisser un 'ECM' qui fonctionne chez moi (attention à la compilation), voir s'il fonctionne avec Tex-Live.

Code: Tout sélectionner
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
%%%%%%%%%%  compilation   %%%%%%%%%%
% Compilation  avec  Miktex  : latex -enable-write18 doc.tex
\documentclass[a4paper, 10pt]{article}
\usepackage{graphicx,emp,ifpdf}
\ifpdf
\DeclareGraphicsRule{*}{mps}{*}{}
\fi

\begin{document}

\empaddtoTeX{%
\usepackage{palatino}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
}
% Début de metapost
\begin{empfile}
% Définitions génériques
\begin{empcmds}
input graph ;
\end{empcmds}

%%%%%%%%% figures metapost

\begin{empdef}[fig1](10cm,10cm)
z0 = (0,0);
z1 = (sqrt(3)*cm,0);
z2 = (sqrt(3)*cm,1cm);
draw z0--z1--z2--cycle;
label.bot(btex $\sqrt{3}$ etex, 1/2[z0,z1]);
label.rt(btex 1 etex, 1/2[z1,z2]);
label.top(btex 2 etex, 1/2[z0,z2]);
\end{empdef}
%%%%%%%%%%%%%%%% fin fig1

\begin{empdef}[fig2](10cm,10cm)
a=.7in; b=0.5in;
z0=(0,0); z1=(a,0); z2=(0,b);
z0=.5[z1,z3]=.5[z2,z4];
draw z1..z2..z3..z4..cycle withcolor green;
drawarrow z0..z1 withcolor red;
drawarrow z0..z2 withcolor blue;
label.top(btex $a$ etex, .5[z0,z1]) withcolor red;
label.lft(btex $b$ etex, .5[z0,z2]) withcolor blue;
\end{empdef}
%%%%%%%%%%%%%%%% fin fig2

\end{empfile}

% Compilation du fichier metapost
\immediate\write18{mpost -tex=latex \jobname}

\begin{figure}[ht]
\begin{center}
\empuse{fig1}
\caption{Premi\`ere figure produite par MetaPost }
\end{center}
\end{figure}

\begin{figure}[ht]
\begin{center}
\empuse{fig2}
\caption{Deuxi\`eme figure produite par MetaPost }
\end{center}
\end{figure}
\end{document}


D.GH

Re: [MetaPost] : changement de syntaxe ?

MessagePosté: Dimanche 28 Septembre 2008, 17:38
par François D.
Merci de vos réponses, je testerai à l'occasion (je poste depuis un autre ordi, en ce moment) et vous livrerai aussi le code complet.

J'ai effectivement oublié quelques éléments : mon ficher MetaPost habituel reprend mon en-tête LaTeX standard, coincé entre un verbatimtex et un etex avant que ne commence la première figure : ainsi, je peux béneficier de mes commandes LaTeX personnelles prédéfinies, et de certains packages (en particulier des fontes) ; jusque là, ça marchait très bien.

J'ai alors eu l'idée de générer un autre fichier MetaPost figEuler.mp, sans tout cet en-tête mais avec le même contenu, et il y a eu deux phénomènes :
-- au début, même souci, avec le fichier figEuler.mpx qui ne peut pas être généré ;
-- j'ai ensuite essayé de simplement créer un fichier vide FigEuler.mpx et là ... ça a marché :shock: !

Voilà ... si ça en inspire quelque uns ; merci d'avance.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 08:37
par François D.
Bon : je viens de tester l'ECM de D.GH, voici ce que ça a donné :

Code: Tout sélectionner
latex -enable-write18 doc_essai_MP.tex
latex: unrecognized option `-enable-write18'
This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5)
entering extended mode
(./doc_essai_MP.tex
LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, french, basque, loaded.
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size10.clo))
(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty
(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)
(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty
(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty)
(/usr/share/texmf-texlive/tex/latex/config/graphics.cfg)
(/usr/share/texmf-texlive/tex/latex/graphics/dvips.def)))
(/usr/share/texmf-texlive/tex/latex/emp/emp.sty
(/usr/share/texmf-texlive/tex/latex/tools/verbatim.sty))
(/usr/share/texmf-texlive/tex/latex/oberdiek/ifpdf.sty)
No file doc_essai_MP.aux.
emp: File doc_essai_MP.1 not found:
emp: Process doc_essai_MP.mp with MetaPost and then reprocess this file.
emp: File doc_essai_MP.2 not found:
emp: Process doc_essai_MP.mp with MetaPost and then reprocess this file.
[1] (./doc_essai_MP.aux) )
Output written on doc_essai_MP.dvi (1 page, 376 bytes).
Transcript written on doc_essai_MP.log.


Le fichier log contient ceci :

Code: Tout sélectionner
This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5) (format=latex 2008.7.17)  30 SEP 2008 09:29
entering extended mode
**doc_essai_MP.tex
(./doc_essai_MP.tex
LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, french, basque, loaded.
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size10.clo
File: size10.clo 2004/02/16 v1.4f Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty
Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)

(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty
Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
\KV@toks@=\toks14
)
(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty
Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR)

(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty
Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
)
(/usr/share/texmf-texlive/tex/latex/config/graphics.cfg
File: graphics.cfg 2001/08/31 v1.1 graphics configuration of teTeX/TeXLive
)
Package graphics Info: Driver file: dvips.def on input line 80.

(/usr/share/texmf-texlive/tex/latex/graphics/dvips.def
File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
))
\Gin@req@height=\dimen103
\Gin@req@width=\dimen104
)
(/usr/share/texmf-texlive/tex/latex/emp/emp.sty
Package: emp 1997/11/12 v1.00 Encapsulated MetaPost LaTeX Package (ohl)

(/usr/share/texmf-texlive/tex/latex/tools/verbatim.sty
Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements
\every@verbatim=\toks15
\verbatim@line=\toks16
\verbatim@in@stream=\read1
)
\@outemp=\write3
\c@empfig=\count87
\emp@TeX=\toks17
\emp@prelude=\toks18
)
(/usr/share/texmf-texlive/tex/latex/oberdiek/ifpdf.sty
Package: ifpdf 2005/07/22 v1.3 Providing \ifpdf (HO)
Package ifpdf Info: pdfTeX in pdf mode not detected.
)
No file doc_essai_MP.aux.
\openout1 = `doc_essai_MP.aux'.

LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 10.
LaTeX Font Info:    ... okay on input line 10.
LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 10.
LaTeX Font Info:    ... okay on input line 10.
LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 10.
LaTeX Font Info:    ... okay on input line 10.
LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 10.
LaTeX Font Info:    ... okay on input line 10.
LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 10.
LaTeX Font Info:    ... okay on input line 10.
LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 10.
LaTeX Font Info:    ... okay on input line 10.
\openout3 = `doc_essai_MP.mp'.

system(mpost -tex=latex doc_essai_MP)...disabled.

emp: File doc_essai_MP.1 not found:
emp: Process doc_essai_MP.mp with MetaPost and then reprocess this file.
emp: File doc_essai_MP.2 not found:
emp: Process doc_essai_MP.mp with MetaPost and then reprocess this file.
[1

] (./doc_essai_MP.aux) )
Here is how much of TeX's memory you used:
 605 strings out of 95198
 7361 string characters out of 1185149
 52658 words of memory out of 1000000
 3802 multiletter control sequences out of 10000+50000
 3640 words of font info for 14 fonts, out of 500000 for 2000
 28 hyphenation exceptions out of 8191
 25i,4n,19p,195b,190s stack positions out of 1500i,500n,5000p,200000b,5000s

Output written on doc_essai_MP.dvi (1 page, 376 bytes).


Le fichier dvi généré ne contient aucune figure, juste le texte.

J'ai essy&é de compiler à la main les fichier MetaPost générés :

Code: Tout sélectionner
 mpost doc_essai_MP.mp
This is MetaPost, Version 0.901 (Web2C 7.5.5)
(doc_essai_MP.mp (/usr/share/texmf-texlive/metapost/base/graph.mp
(/usr/share/texmf-texlive/metapost/base/marith.mp
(/usr/share/texmf-texlive/metapost/base/string.mp))
(/usr/share/texmf-texlive/metapost/base/format.mp
(/usr/share/texmf-texlive/metapost/base/string.mp)
(/usr/share/texmf-texlive/metapost/base/texnum.mpnewer: target file `texnum.mpx' doesn't exist.
)))newer: target file `doc_essai_MP.mpx' doesn't exist.
/usr/bin/makempx: Command failed: tex --parse-first-line mpxerr.tex; see mpxerr.log

>> doc_essai_MP.mp
>> doc_essai_MP.mpx
! Unable to make mpx file.
l.16 label.bot(btex
                    $\sqrt{3}$ etex, 1/2[z0,z1]);
Transcript written on doc_essai_MP.log.


Pas mieux ...

Enfin, voici le source de on fichier originel (amputé de quelques commandes personnelles a priori sans intérêt) :

Code: Tout sélectionner
verbatimtex
\documentclass[12pt,a4paper]{article}
\setlength{\parindent}{0cm}
\newcommand{\e}{\operatorname{e}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\C}{\mathbb{C}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\Cr}[1]{\mathscr{C}_{#1}}
\newcommand{\Titre}[1]
   {   \begin{center}
      \textbf{\underline{\Large #1}}
      \end{center}
   }
\usepackage{fullpage}
\usepackage{mathrsfs}
\usepackage{ifthen}
\usepackage{dsfont}
\usepackage[english, frenchb]{babel}
\usepackage[latin1]{inputenc}
%\usepackage{pstricks, pstcol, pst-plot}
\usepackage{amsmath,amssymb}
\usepackage[]{marvosym}
\usepackage[pdftex, dvips]{graphicx}
\usepackage{lscape}
\newcounter{numexo}
\newcommand{\exo}[1]{
    \stepcounter{numexo}
    \textbf{\underline{Exercice \arabic{numexo} :}} (#1 points)\hfill\break
        }

\begin{document}
 etex ;

marksize=4pt;

def draw_mark(expr p,a) =
   begingroup
      save t, dm ; pair dm ;
      t = arctime a of p ;
      dm = marksize*unitvector direction t of p rotated 80 ;
      draw (-.5dm.. .5dm) shifted point t of p;
endgroup
enddef ;

def draw_marked(expr p,n) =
   begingroup
      save amid ;
      amid=.5*arclength p ;
      for i=-(n-1)/2 upto (n-1)/2 :
     draw_mark(p,amid+.6marksize*i);
endfor
  draw p ; endgroup
  enddef;

beginfig(1);
numeric u,h,k ;
pair s[];

u=1cm; h=0.7;

drawarrow (-0.5,0)*u--(6,0)*u ;  label.bot(btex $x$ etex , (6,0)*u);
drawarrow (0,-0.5)*u--(0,6)*u ; label.lft(btex $y$ etex , (0,6)*u);

s[1]=(0.5,1) ; draw (0.5,0)*u -- s[1]*u dashed evenly withcolor 0.8white ;
for k=2 upto 4 :
   s[k]=((xpart s[k-1])+h, (ypart s[k-1])+4*h/k) ;
   draw (xpart s[k],0)*u -- s[k]*u dashed evenly withcolor 0.8white ;
   draw s[k-1]*u--(xpart s[k],ypart s[k-1])*u dashed evenly withcolor 0.8white ;
   draw s[k-1]*u--s[k]*u ;

endfor ;

label.bot(btex $x_0$ etex,(xpart s[1],0)*u);
label.bot(btex $x_1$ etex,(xpart s[2],0)*u);
label.bot(btex $x_2$ etex,(xpart s[3],0)*u);
label.bot(btex $x_3$ etex,(xpart s[4],0)*u);



label.ulft(btex $A_0$ etex, s[1]);
label.ulft(btex $A_1$ etex, s[2]);
label.ulft(btex $A_2$ etex, s[3]);
label.ulft(btex $A_3$ etex, s[4]);

endfig ;
end


Merci d'avance à ceux qui se penchent avec courage sur ce problème ...

Edit : ayant remarqué que l'option -enable-write18 ne passe pas, je réessaye :

Code: Tout sélectionner
 latex -shell-escape doc_essai_MP.tex
This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5)
 \write18 enabled.
entering extended mode
(./doc_essai_MP.tex
LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, french, basque, loaded.
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size10.clo))
(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty
(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)
(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty
(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty)
(/usr/share/texmf-texlive/tex/latex/config/graphics.cfg)
(/usr/share/texmf-texlive/tex/latex/graphics/dvips.def)))
(/usr/share/texmf-texlive/tex/latex/emp/emp.sty
(/usr/share/texmf-texlive/tex/latex/tools/verbatim.sty))
(/usr/share/texmf-texlive/tex/latex/oberdiek/ifpdf.sty) (./doc_essai_MP.aux)This is MetaPost, Version 0.901 (Web2C 7.5.5)
(doc_essai_MP.mp (/usr/share/texmf-texlive/metapost/base/graph.mp
(/usr/share/texmf-texlive/metapost/base/marith.mp
(/usr/share/texmf-texlive/metapost/base/string.mp))
(/usr/share/texmf-texlive/metapost/base/format.mp
(/usr/share/texmf-texlive/metapost/base/string.mp)
(/usr/share/texmf-texlive/metapost/base/texnum.mp)))newer: target file `doc_essai_MP.mpx' doesn't exist.
 [1] [2] )
2 output files written: doc_essai_MP.1 .. doc_essai_MP.2
Transcript written on doc_essai_MP.log.

<doc_essai_MP.1> <doc_essai_MP.2> [1] (./doc_essai_MP.aux) )
Output written on doc_essai_MP.dvi (1 page, 524 bytes).
Transcript written on doc_essai_MP.log.


Ça ne semble pas plus engageant quand même ...

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 11:37
par D.GH
François D. a écrit:Bon : je viens de tester l'ECM de D.GH.............
Ça ne semble pas plus engageant quand même ...


Bonjour,

J'ai compilé votre 'ECM', il fonctionne chez moi (voir le fichier joint).
J'utilise MikTeX, personnellement je ne connais pas TexLive.
Voici votre 'ECM' adapté à MikTeX :
Code: Tout sélectionner
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
%%%%%%%%%%  compilation   %%%%%%%%%%
% Compilation  avec  Miktex  : pdflatex -enable-write18 doc.tex
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage{fullpage}
\usepackage{mathrsfs}
\usepackage{ifthen}
\usepackage{dsfont}
%\usepackage{pstricks, pstcol, pst-plot}
\usepackage{amsmath,amssymb}
\usepackage[]{marvosym}
\usepackage[pdftex, dvips]{graphicx}
\usepackage{lscape}
\usepackage{graphicx,emp,ifpdf}
\ifpdf
\DeclareGraphicsRule{*}{mps}{*}{}
\fi

\setlength{\parindent}{0cm}
\newcommand{\e}{\operatorname{e}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\C}{\mathbb{C}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\Cr}[1]{\mathscr{C}_{#1}}
\newcommand{\Titre}[1]
   {   \begin{center}
      \textbf{\underline{\Large #1}}
      \end{center}
   }

\newcounter{numexo}
\newcommand{\exo}[1]{
    \stepcounter{numexo}
    \textbf{\underline{Exercice \arabic{numexo} :}} (#1 points)\hfill\break
        }

\begin{document}
%\empaddtoTeX{%
%\usepackage[T1]{fontenc}
%\usepackage[latin1]{inputenc}
%\usepackage[frenchb]{babel}
%}
% Début de metapost
\begin{empfile}
% Définitions génériques
\begin{empcmds}
input graph ;
\end{empcmds}

\begin{empdef}[fig1](10cm,10cm)

marksize=4pt;

def draw_mark(expr p,a) =
   begingroup
      save t, dm ; pair dm ;
      t = arctime a of p ;
      dm = marksize*unitvector direction t of p rotated 80 ;
      draw (-.5dm.. .5dm) shifted point t of p;
endgroup
enddef;

def draw_marked(expr p,n) =
   begingroup
      save amid ;
      amid=.5*arclength p ;
      for i=-(n-1)/2 upto (n-1)/2 :
     draw_mark(p,amid+.6marksize*i);
endfor
  draw p; endgroup
  enddef;


numeric u,h,k ;
pair s[];

u=1cm; h=0.7;

drawarrow (-0.5,0)*u--(6,0)*u ;  label.bot(btex $x$ etex , (6,0)*u);
drawarrow (0,-0.5)*u--(0,6)*u ; label.lft(btex $y$ etex , (0,6)*u);

s[1]=(0.5,1) ; draw (0.5,0)*u -- s[1]*u dashed evenly withcolor 0.8white ;
for k=2 upto 4 :
  s[k]=((xpart s[k-1])+h, (ypart s[k-1])+4*h/k) ;
  draw (xpart s[k],0)*u -- s[k]*u dashed evenly withcolor 0.8white ;
  draw s[k-1]*u--(xpart s[k],ypart s[k-1])*u dashed evenly withcolor 0.8white ;
  draw s[k-1]*u--s[k]*u ;
endfor;

label.bot(btex $x_0$ etex,(xpart s[1],0)*u);
label.bot(btex $x_1$ etex,(xpart s[2],0)*u);
label.bot(btex $x_2$ etex,(xpart s[3],0)*u);
label.bot(btex $x_3$ etex,(xpart s[4],0)*u);

label.ulft(btex $A_1$ etex, (0, ypart s[1])*u) withcolor red; % D.GH
label.ulft(btex $A_1$ etex, (0, ypart s[2])*u) withcolor green;
label.ulft(btex $A_2$ etex, (0, ypart s[3])*u) withcolor blue;
label.ulft(btex $A_3$ etex, (0, ypart s[4])*u) withcolor 0.8black;

\end{empdef}
%% fin Fig1
\end{empfile}
% Compilation du fichier metapost
\immediate\write18{mpost -tex=latex \jobname}

\begin{figure}[ht]
\begin{center}
\empuse{fig1}
\caption{Premi\`ere figure produite par MetaPost. \today}
\end{center}
\end{figure}

\end{document}

D.GH

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 15:10
par OG
Bonjour

J'ai testé l'ECM de D.GH et effectivement cela ne fonctionne pas car
-enable-write18 n'est pas reconnue (sic).
Par contre avec -shell-escape ça marche !

Précision je suis sur Ubuntu Hardy Heron avec TeXlive ce qui est proche
d'une Debian + TeXlive.

O.G.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 15:44
par D.GH
Bonjour,

Pour la commande : \write18 sous TexLive voir ici.

D.GH

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 15:51
par François D.
Merci pour les précisions au sujet de de \write18, mais ce n'est pas exactement le fond de mon problème :wink: ; pour ma part, une compilation séparée du fichier MetaPost me convient très bien, mais c'est précisément là que ça coince déjà.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 15:58
par OG
Ok la compilation séparée fonctionne chez moi. Les versions de metapost ne sont pas identiques,
le code de D. GH donne le mp qui est compilé.
Code: Tout sélectionner
 mpost mathex10.mp
This is MetaPost, Version 0.993 (Web2C 7.5.6)
(mathex10.mp (/usr/share/texmf-texlive/metapost/base/graph.mp
(/usr/share/texmf-texlive/metapost/base/marith.mp
(/usr/share/texmf-texlive/metapost/base/string.mp))
(/usr/share/texmf-texlive/metapost/base/format.mp
(/usr/share/texmf-texlive/metapost/base/string.mp)
(/usr/share/texmf-texlive/metapost/base/texnum.mp))) [1] [2] )
2 output files written: mathex10.1 .. mathex10.2
Transcript written on mathex10.log.


Chez moi c'est TeXLive 2007.
Donc quelle Debian ? quelle TexLive ? D'où vient le metapost ?
Normalement le metapost est installé via TexLive-metapost - TeX Live: MetaPost (and Metafont) drawing packages,
vu ton log c'est correct vu que l'arborescence est en /usr/share/texmf-texlive


O.G. qui part

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mardi 30 Septembre 2008, 16:03
par OG
Re

je ne suis pas encore parti.
Tu n'aurais pas des pbs de droit ? (écriture/lecture des fichiers)

O.G.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 07:30
par François D.
Réponse depuis le boulot (plus de détails cet après-midi probablement) : je suis en Debian 4.0 « Etch », avec les paquets Tex-Live/MetaPost inclus dans cette distribution ; à noter que j'aurais encore pu installer te-TeX, mais que suite à des discussions sur ce forum, j'ai opté pour TeX-Live car te-TeX n'est plus maintenu, si j'ai bien suivi.

Pour ce qui est de problèmes de droits, j'y ai pensé, mais comme j'ai pu faire tourner le truc une fois en créant à la main le fichier (vide) figEuler.mpx et en laissant MetaPost (plus précisément le script mptopdf qui me permet d'avoir le résultat final automatiquement converti en pdf pour faire du pdflatex) le remplir tout seul, j'en ai conclu que ce n'était pas le problème ... à tort ?

Je subodore entre-temps un petit bug dans les paquets Debian, qui font qu'un petit utilitaire n'est pas installé automatiquement, ce qu'il faut rectifier à la main ... c'est là que je préfère attendre des conseils avisés.

Enfin, petite remarque, qui tendrait à confirmer ce qui précède : je me fie à la coloration syntaxique de l'éditeur gvim pour savoir si je suis face à une commande MetaPost valide ; or, la commande etex reste neutre dans les cas que je vous ai soumis, alors qu'elle était colorée comme il se doit placée ... en lieu et place de btex !

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 08:26
par OG
Bonjour

Et en plus il faut être boulot !
Par rapport à la question de droit, essaie dans un nouveau répertoire tout beau tout neuf
de faire ces mêmes manipulations mais en tant que root ? (évidemment ne pas faire rm -fR /*
ou cp -fR / /dev/null )
Et si en tant que root c'est la même chose il faut contacter quelqu'un en etch
ou lancer Google.

A+
O.G. (au boulot, enfin presque)

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 12:59
par François D.
Bon, sous root et dans un nouveau répertoire c'est légèrement différent : quand je veux compiler le fichier avec en-tête LaTeX inclus, ça coince :
Code: Tout sélectionner
figureEuler.mpnewer: target file `figureEuler.mpx' doesn't exist.
/usr/bin/makempx: Command failed: tex --parse-first-line mpxerr.tex; see mpxerr.log
En revanche, le fichier allégé passe :
Code: Tout sélectionner
 mptopdf figEuler.mp

 TeXExec 5.4.3 - ConTeXt / PRAGMA ADE 1997-2005

       metapost to tex : figEuler
            executable : pdfetex
                format : cont-en
             inputfile : tmpgraph
                output : dvips
             interface : en
               options : once
          current mode : none

This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5)
 (/usr/share/texmf-texlive/web2c/natural.tcx)
entering extended mode
(./tmpgraph.tex

ConTeXt  ver: 2005.10.27  fmt: 2008.7.17  int: english  mes: english

language        : language en is active
<protectionstate 0>
system          : cont-new loaded
(/usr/share/texmf-texlive/tex/context/base/cont-new.tex
systems         : beware: some patches loaded from cont-new.tex
color           : palette rollover is available
)
system          : cont-old loaded
(/usr/share/texmf-texlive/tex/context/base/cont-old.tex
loading         : Context Old Macros
)
system          : cont-fil loaded
(/usr/share/texmf-texlive/tex/context/base/cont-fil.tex
loading         : Context File Synonyms
)
system          : cont-sys.rme loaded
(/usr/share/texmf-texlive/tex/context/user/cont-sys.rme
(/usr/share/texmf-texlive/tex/context/base/type-exa.tex)
(/usr/share/texmf-texlive/tex/context/base/type-syn.tex)
(/usr/share/texmf-texlive/tex/context/base/type-enc.tex)
(/usr/share/texmf-texlive/tex/context/base/type-dis.tex)
(/usr/share/texmf-texlive/tex/context/base/type-siz.tex)
(/usr/share/texmf-texlive/tex/context/base/type-map.tex)
(/usr/share/texmf-texlive/tex/context/base/type-spe.tex)
(/usr/share/texmf-texlive/tex/context/base/type-akb.tex))
bodyfont        : 12pt rm is loaded
language        : patterns en->ec:ec->1->2:2 uk->ec:ec->2->2:2 de->texnansi:tex
nansi->3->2:2 de->ec:ec->4->2:2 fr->texnansi:texnansi->5->2:2 fr->ec:ec->6->2:2
 es->ec:ec->7->2:2 pt->texnansi:texnansi->8->2:2 pt->ec:ec->9->2:2 it->texnansi
:texnansi->10->2:2 it->ec:ec->11->2:2 nl->texnansi:texnansi->12->2:2 nl->ec:ec-
>13->2:2 cz->il2:il2->14->2:2 cz->ec:ec->15->2:2 sk->il2:il2->16->2:2 sk->ec:ec
->17->2:2 pl->pl0:pl0->18->2:2 pl->ec:ec->19->2:2 pl->qx:qx->20->2:2 loaded
specials        : tex,postscript,rokicki loaded
system          : tmpgraph.top loaded
(./tmpgraph.top
specials        : loading definition file dvi
(/usr/share/texmf-texlive/tex/context/base/spec-dvi.tex)
specials        : tex loaded
specials        : loading definition file ps
(/usr/share/texmf-texlive/tex/context/base/spec-ps.tex)
specials        : tex,postscript loaded
specials        : loading definition file tr
(/usr/share/texmf-texlive/tex/context/base/spec-tr.tex)
specials        : tex,postscript,rokicki loaded
) [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1] [1.1]
systems         : end file tmpgraph at line 35
 )
Output written on tmpgraph.dvi (12 pages, 1168 bytes).
Transcript written on tmpgraph.log.

           return code : 0
              run time : 1 seconds
       dvi to metapost : figEuler
              metapost : figEuler
                format : metafun
This is MetaPost, Version 0.901 (Web2C 7.5.5)
(/usr/share/texmf-texlive/web2c/natural.tcx)
(figEuler.mp [1]
metafun 2008-7-17 20:41
 )
1 output file written: figEuler.1
Transcript written on figEuler.log.

        total run time : 2 seconds
This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5)
[MP to PDF] (./figEuler.1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map})
[1]</usr/share/texmf-texlive/fonts/type1/bluesky/cm/cmr12.pfb></usr/share/texmf
-texlive/fonts/type1/bluesky/cm/cmsy9.pfb></usr/share/texmf-texlive/fonts/type1
/bluesky/cm/cmr9.pfb></usr/share/texmf-texlive/fonts/type1/bluesky/cm/cmmi12.pf
b>
Output written on figEuler.pdf (1 page, 13430 bytes).
Transcript written on figEuler.log.

MPtoPDF 1.3 : figEuler is converted to figEuler-1.pdf
Enfin, dernière tentative : dans mon nouveau répertoire, nettoyé, même phénomène : le fichier allégé passe, le fichier avec en-tête non.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 13:23
par OG
Bonjour

Vu tes logs tu es en Texlive 2005, ce qui est normal car sous Debian etch c'est
la version "officielle".
Je te conseillerai de passer à une TeXlive 2007 par paquet debian c'est possible
(via les backports) voir le bas de la page
http://www.tug.org/texlive/debian.html
(ou alors tu passes directement ta distribution en Debian testing !)

J'espère ne pas mettre en péril ton installation !

J'édite mon message sur ce fil
http://osdir.com/ml/tex.latex.french/20 ... 00006.html
la personne avait des pbs du style unable blabla .mpx ?
et là aussi
http://melusine.eu.org/hypermail/syracuse/0031.html

Cordialement
O.G.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 13:33
par François D.
Merci de l'indication ; en regardant de plus près les différents logs et autres messages d'insultes/d'erreur, j'ai bien l'impression qu'en fait MetaPost ne fait décidément pas appel au bon compilateur LaTeX et n'arrive donc pas à intégrer mon en-tête correctement.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 13:38
par OG
Je le pense aussi : avec Google sur "unable to make mpx" il y a des infos.
Ça peut tout de même valoir la peine de lancer une installation d'une TeXlive 2007
avec pdftex1.40...

O.G. qui doit faire une présentation des solutions graphiques liées à LaTeX

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 14:08
par François D.
Effectivement, mais là je dois avouer que je suis un peu anxieux : j'ai tenté de suivre la procédure décrite ici http://www.tug.org/texlive/debian.html et lorsque j'ai voulu mettre à jour vers TeXlive2007 via les backports, le gestionnaire de paquets me proposait de désinstaller toute une rangée de choses qui risquerait de déstabiliser sérieusement mon système.

De plus, entre les versions des paquets indiquées sur cette page http://www.tug.org/texlive/debian.html et celles directement proposées sur le site backports.org, il y a encore une nuance ...

Comme disent les djeunn's : c'est chaud.

Je vais voir ce que Google me raconte et vous tiens au courant.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 14:18
par conan
bonjour,

François D. a écrit:Merci de l'indication ; en regardant de plus près les différents logs et autres messages d'insultes/d'erreur, j'ai bien l'impression qu'en fait MetaPost ne fait décidément pas appel au bon compilateur LaTeX et n'arrive donc pas à intégrer mon en-tête correctement.


Je n'avais pas bien lu le code source :( Effectivement, metapost compile votre exemple avec TeX et non avec LaTeX :(
La correction est

Code: Tout sélectionner
verbatimtex
%&latex %pour indiquer à metapost d'utiliser LaTeX ;-)


et après vous mettez le reste du préambule.
Cela devrait fonctionner maintenant :)
Tenez moi au courant.

Christophe.

Re: [MetaPost] Changement de syntaxe ?

MessagePosté: Mercredi 01 Octobre 2008, 15:28
par François D.
Merci de la proposition mais ... non :
Code: Tout sélectionner
 mpost figureEuler.mp
This is MetaPost, Version 0.901 (Web2C 7.5.5)
(figureEuler.mpnewer: target file `figureEuler.mpx' doesn't exist.
warning: Could not open char translation file `à metapost d'utiliser LaTeX ;-).tcx'.
dvitomp: mpx24601.dvi: No such file or directory
mv: ne peut évaluer `mpx24601.dvi': Aucun fichier ou répertoire de ce type
/usr/bin/makempx: Command failed: dvitomp mpxerr.dvi figureEuler.mpx

>> figureEuler.mp
>> figureEuler.mpx
! Unable to make mpx file.
l.74 ...arrow (-0.5,0)*u--(6,0)*u ; label.bot(btex
                                                   $x$ etex , (6,0)*u);
Transcript written on figureEuler.log.
Rien ne semble avoir changé.
Je signale que j'ai essayé de forcer la main à MetaPost avec l'option --tex=latex , pas mieux.
Enfin, cet élément : je crois que TeX-Live (en général ou dans sa version Debian, à voir) gère de manière déroutante LaTeX : tout est par défaut compilé en pdf (ce quirend l'utilisation de pstricks délicats, qui plus est) :
Code: Tout sélectionner
latex TPinfoEuler.tex
This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5)
entering extended mode
(./TPinfoEuler.tex
LaTeX2e <2003/12/01>
Babel <v3.8g> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, french, basque, loaded.[...]
et un ls -l /usr/bin/*tex* renvoie :
Code: Tout sélectionner
$ ls -l /usr/bin/*tex*
lrwxrwxrwx 1 root root       9 2008-07-17 20:39 /usr/bin/altpdfamstex -> altpdftex
lrwxrwxrwx 1 root root       9 2008-07-17 20:38 /usr/bin/altpdfetex -> altpdftex
lrwxrwxrwx 1 root root       9 2008-07-17 20:38 /usr/bin/altpdflatex -> altpdftex
-rwxr-xr-x 1 root root     178 2007-02-21 11:52 /usr/bin/altpdftex
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/amstex -> pdfetex
-rwxr-xr-x 1 root root  136968 2007-02-21 11:53 /usr/bin/bibtex
-rwxr-xr-x 1 root root  164860 2007-02-21 11:53 /usr/bin/bibtex8
-rwxr-xr-x 1 root root   71352 2007-02-21 11:53 /usr/bin/detex
-rwxr-xr-x 1 root root   16364 2007-02-26 18:19 /usr/bin/dh_installtex
lrwxrwxrwx 1 root root       7 2008-07-17 20:38 /usr/bin/etex -> pdfetex
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/fdf2tex -> texexec
-rwxr-xr-x 1 root root   18080 2006-11-28 09:25 /usr/bin/gettext
-rwxr-xr-x 1 root root   40794 2006-11-28 09:25 /usr/bin/gettextize
-rwxr-xr-x 1 root root    4607 2006-11-28 09:25 /usr/bin/gettext.sh
-rwxr-xr-x 1 root root    5403 2006-11-16 10:26 /usr/bin/glib-gettextize
lrwxrwxrwx 1 root root      35 2008-07-17 19:40 /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-e ditor
lrwxrwxrwx 1 root root       7 2008-07-17 20:38 /usr/bin/latex -> pdfetex
-rwxr-xr-x 1 root root   19209 2006-09-24 22:20 /usr/bin/latex-ucs-discovermacro
-rwxr-xr-x 1 root root     566 2006-09-24 22:20 /usr/bin/latex-ucs-latexout
lrwxrwxrwx 1 root root       6 2008-07-17 18:08 /usr/bin/md5sum.textutils -> md5sum
lrwxrwxrwx 1 root root       7 2008-07-17 20:38 /usr/bin/mktexfmt -> fmtutil
-rwxr-xr-x 1 root root    5262 2007-02-21 11:52 /usr/bin/mktexlsr
-rwxr-xr-x 1 root root    3847 2007-02-21 11:52 /usr/bin/mktexmf
-rwxr-xr-x 1 root root    9126 2007-02-21 11:52 /usr/bin/mktexpk
-rwxr-xr-x 1 root root    4830 2007-02-21 11:52 /usr/bin/mktextfm
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/mllatex -> pdfetex
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/mltex -> pdfetex
-rwxr-xr-x 1 root root   17896 2006-11-28 09:25 /usr/bin/ngettext
-rwxr-xr-x 1 root root  600476 2007-02-21 11:53 /usr/bin/pdfetex
lrwxrwxrwx 1 root root       7 2008-07-17 20:38 /usr/bin/pdflatex -> pdfetex
lrwxrwxrwx 1 root root       7 2008-07-17 20:38 /usr/bin/pdftex -> pdfetex
-rwxr-xr-x 1 root root  782408 2008-06-27 21:25 /usr/bin/pdftotext
-rwxr-xr-x 1 root root   11292 2005-07-07 20:37 /usr/bin/perltex
-rwxr-xr-x 1 root root   10255 2008-04-25 22:44 /usr/bin/pod2latex
-rwxr-xr-x 1 root root    7792 2008-04-25 22:44 /usr/bin/pod2text
-rwxr-xr-x 1 root root    1446 2007-02-21 11:45 /usr/bin/pslatex
lrwxrwxrwx 1 root root      12 2008-07-17 19:32 /usr/bin/pygettext -> pygettext2.4
-rwxr-xr-x 1 root root   22103 2008-04-15 23:44 /usr/bin/pygettext2.4
-rwxr-xr-x 1 root root   18681 2007-02-21 11:52 /usr/bin/simpdftex
-rwxr-xr-x 1 root root  293368 2007-02-21 11:53 /usr/bin/tex
-rwxr-xr-x 1 root root   44342 2007-02-21 11:52 /usr/bin/texconfig
-rwxr-xr-x 1 root root   13061 2007-02-21 11:52 /usr/bin/texconfig-dialog
-rwxr-xr-x 1 root root     873 2007-02-21 11:52 /usr/bin/texconfig-sys
-rwxr-xr-x 1 root root    6834 2007-02-21 11:52 /usr/bin/texdoc
-rwxr-xr-x 1 root root   60587 2007-02-21 11:52 /usr/bin/texdoctk
-rwxr-xr-x 1 root root     707 2005-08-04 00:18 /usr/bin/texexec
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/texfind -> texexec
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/texfont -> texexec
lrwxrwxrwx 1 root root       8 2008-07-17 20:38 /usr/bin/texhash -> mktexlsr
-rwxr-xr-x 1 root root   28579 2006-11-22 12:19 /usr/bin/texi2dvi
-rwxr-xr-x 1 root root     660 2006-11-22 12:19 /usr/bin/texi2pdf
-rwxr-xr-x 1 root root   18200 2006-11-22 12:19 /usr/bin/texindex
-rwxr-xr-x 1 root root    8611 2007-02-21 11:52 /usr/bin/texlinks
-rwxr-xr-x 1 root root 1551340 2006-10-27 00:54 /usr/bin/texmaker
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/texshow -> texexec
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/texsis -> pdfetex
lrwxrwxrwx 1 root root       7 2008-07-17 20:39 /usr/bin/texutil -> texexec
-rwxr-xr-x 1 root root  467460 2006-11-28 09:25 /usr/bin/xgettext