<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.causeries-numeriques.fr/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Causeries numériques - latex</title>
  <link>http://www.causeries-numeriques.fr/</link>
  <description></description>
  <language>fr</language>
  <pubDate>Tue, 07 Feb 2012 14:32:21 +0100</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Liste des polices LaTeX</title>
    <link>http://www.causeries-numeriques.fr/post/2007/11/08/Liste-des-polices-LaTeX</link>
    <guid isPermaLink="false">urn:md5:2abf9c9def37dc6a1a9109034481f486</guid>
    <pubDate>Thu, 08 Nov 2007 15:54:00 +0100</pubDate>
    <dc:creator>jb</dc:creator>
        <category>Des pingouins et des hommes</category>
        <category>latex</category><category>polices</category>    
    <description>    &lt;p&gt;Le choix des polices sous LaTeX est toujours délicat car il est nécessaire de recompiler le document pour voir le résultat. De plus les polices n'ont pas vraiment des noms très explicites. Sans vraiment le chercher, je suis tombé sur un site qui référence les différentes polices LaTeX (livrées en standard ou à installer)&amp;nbsp;: &lt;a href=&quot;http://www.tug.dk/FontCatalogue/&quot;&gt;Font Catalogue&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Les polices peut être triées par type (serif&lt;sup&gt;[&lt;a href=&quot;http://www.causeries-numeriques.fr/post/2007/11/08/#pnote-28-1&quot; id=&quot;rev-pnote-28-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt;, sans serif, avec support des mathématiques,...)&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://www.causeries-numeriques.fr/post/2007/11/08/#rev-pnote-28-1&quot; id=&quot;pnote-28-1&quot;&gt;1&lt;/a&gt;] Une police avec serif  a des &quot;petites pattes&quot; aux extrémités voir &lt;a href=&quot;http://fr.wikipedia.org/wiki/Serif&quot;&gt;wikipédia&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
          <comments>http://www.causeries-numeriques.fr/post/2007/11/08/Liste-des-polices-LaTeX#comment-form</comments>
      <wfw:comment>http://www.causeries-numeriques.fr/post/2007/11/08/Liste-des-polices-LaTeX#comment-form</wfw:comment>
      <wfw:commentRss>http://www.causeries-numeriques.fr/feed/rss2/comments/28</wfw:commentRss>
      </item>
    
  <item>
    <title>vim et Latex</title>
    <link>http://www.causeries-numeriques.fr/post/2007/08/31/vim-et-Latex</link>
    <guid isPermaLink="false">urn:md5:13a2e5458538ba5822c9f3afa2e15c30</guid>
    <pubDate>Fri, 31 Aug 2007 13:58:00 +0200</pubDate>
    <dc:creator>jb</dc:creator>
        <category>Des pingouins et des hommes</category>
        <category>latex</category><category>vim</category>    
    <description>    &lt;p&gt;Le plugin Latex pour &lt;code&gt;vim&lt;/code&gt; pose quelque difficulté pour les francophones&amp;nbsp;: des accents sont remplacés par certains raccourcis.
Dans le fichier &lt;code&gt;~/.vim/ftplugin/tex.vim&lt;/code&gt; (le créer s'il n'existe pas), il faut ajouter les lignes suivantes&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
imap &amp;lt;C-b&amp;gt; &amp;lt;Plug&amp;gt;Tex_MathBF
imap &amp;lt;C-c&amp;gt; &amp;lt;Plug&amp;gt;Tex_MathCal
imap &amp;lt;C-l&amp;gt; &amp;lt;Plug&amp;gt;Tex_LeftRight
imap &amp;lt;buffer&amp;gt; &amp;lt;leader&amp;gt;it &amp;lt;Plug&amp;gt;Tex_InsertItemOnThisLine
&lt;/pre&gt;


&lt;p&gt;Les trois premières lignes remplacent les commandes &lt;code&gt;ALT+B&lt;/code&gt;,&lt;code&gt;ALT+C&lt;/code&gt; et &lt;code&gt;ALT+L&lt;/code&gt; par &lt;code&gt;CTRL+B&lt;/code&gt;,&lt;code&gt;CTRL+C&lt;/code&gt; et &lt;code&gt;CTRL+L&lt;/code&gt;. pour mémoire, leurs fonctions sont les suivantes&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ALT+B&lt;/code&gt; place le caractère précédent dans une commande &lt;code&gt;\mathbf{}&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT+C&lt;/code&gt; place le caractère précedent dans \mathcal{}, s'il n'y a pas de caractères, place une commande &lt;code&gt;\cite{}&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT+L&lt;/code&gt; propose plusieurs fonctions&amp;nbsp;:
&lt;ul&gt;
&lt;li&gt;si le caractère précédent est &lt;code&gt;(&lt;/code&gt;,&lt;code&gt;[&lt;/code&gt;,&lt;code&gt;|&lt;/code&gt;,&lt;code&gt;{&lt;/code&gt; ou &lt;code&gt;&amp;lt;&lt;/code&gt; elle complète l'expression par le caractère de fermeture associé&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;précédée de &lt;code&gt;q&lt;/code&gt; elle insère le bloc  &lt;code&gt;\lefteqn{&amp;lt;++&amp;gt;}&amp;lt;++&amp;gt;&lt;/code&gt;&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;dans tous les autres cas, elle place une commande &lt;code&gt;\label{&amp;lt;++&amp;gt;}&amp;lt;++&amp;gt;&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;La dernière ligne permet l'auto complétion de la commande &lt;code&gt;\item&lt;/code&gt;, il suffit de taper &lt;code&gt;\it&lt;/code&gt; pour que la commande &lt;code&gt;\item&lt;/code&gt; soit insérée.&lt;/p&gt;


&lt;p&gt;Tous les accents sont alors possibles sans passer par les commandes Latex &lt;code&gt;\'&lt;/code&gt;,...&lt;/p&gt;</description>
    
    
    
          <comments>http://www.causeries-numeriques.fr/post/2007/08/31/vim-et-Latex#comment-form</comments>
      <wfw:comment>http://www.causeries-numeriques.fr/post/2007/08/31/vim-et-Latex#comment-form</wfw:comment>
      <wfw:commentRss>http://www.causeries-numeriques.fr/feed/rss2/comments/17</wfw:commentRss>
      </item>
    
  <item>
    <title>Compilation automatisée de fichier Latex</title>
    <link>http://www.causeries-numeriques.fr/post/2007/08/14/Compilation-automatisee-de-fichier-Latex</link>
    <guid isPermaLink="false">urn:md5:20c67c76dcb316877b76370e0e75c7db</guid>
    <pubDate>Tue, 14 Aug 2007 14:17:00 +0200</pubDate>
    <dc:creator>jb</dc:creator>
        <category>Des pingouins et des hommes</category>
        <category>latex</category><category>make</category><category>rake</category>    
    <description>&lt;p&gt;La compilation de document écrit avec Latex devient vite compliquée si différents types de fichiers entrent en jeu. Un script ou un &lt;code&gt;Makefile&lt;/code&gt; permet de simplifier cette tâche.&lt;/p&gt;    &lt;h3&gt;Besoin&lt;/h3&gt;


&lt;p&gt;Mes documents (écrit ou présentation réalisées avec &lt;a href=&quot;http://latex-beamer.sourceforge.net/&quot;&gt;beamer&lt;/a&gt;) sont produits par Latex. Pour chaque document, j'ai un répertoire qui contient le ou les fichiers Latex et des sous-répertoires.&lt;/p&gt;


&lt;h4&gt;Les différents sous-répertoires&lt;/h4&gt;


&lt;p&gt;Un répertoire &lt;code&gt;fig/&lt;/code&gt; contient des fichiers &lt;code&gt;png&lt;/code&gt; qui sont convertit en fichiers &lt;code&gt;eps&lt;/code&gt; à l'aide de l'utilitaire &lt;code&gt;convert&lt;/code&gt; présent dans le paquet &lt;code&gt;imagemagick&lt;/code&gt;.
Un répertoire &lt;code&gt;src/&lt;/code&gt; qui peut contenir toutes sortes de fichiers (C, SQL, Java, ...) qui sont inclus dans le document Latex à l'aide du &lt;em&gt;package&lt;/em&gt; &lt;code&gt;listings&lt;/code&gt;&lt;/p&gt;


&lt;h4&gt;Outil actuel&lt;/h4&gt;


&lt;p&gt;Un &lt;code&gt;Makefile&lt;/code&gt; présent dans le répertoire de travail assurait la compilation Latex alors qu'un autre &lt;code&gt;Makefile&lt;/code&gt; placé dans le répertoire &lt;code&gt;fig&lt;/code&gt; prenait en charge la conversion des images&amp;nbsp;; &lt;code&gt;make&lt;/code&gt; ne permet pas de travailler dans un autre répertoire.
A chaque nouveau document, je créais mes répertoire et copiais les deux &lt;code&gt;Makefile&lt;/code&gt;. Une simple commande &lt;code&gt;make&lt;/code&gt; me permettait de lancer la compilation (si nécessaire) ainsi que la conversion des images.&lt;/p&gt;


&lt;h3&gt;Développement d'un nouvel outil&lt;/h3&gt;


&lt;p&gt;Ce système de copie de fichier finissait par être assez pénible à l'usage. J'ai profité d'un peu de temps libre pour développer un outil pour automatiser toutes ces tâches (création des répertoires et compilation du fichier Latex) et rajouter des fonctionnalités.&lt;/p&gt;


&lt;h4&gt;Choix du système&lt;/h4&gt;

&lt;p&gt;Ces derniers temps je bidouille avec Ruby, j'ai donc choisi &lt;code&gt;rake&lt;/code&gt; pour gérer ce projet.  &lt;code&gt;rake&lt;/code&gt; utilise par défaut un fichier nommé &lt;code&gt;Rakefile&lt;/code&gt; lors de son appel.&lt;/p&gt;


&lt;h4&gt;Le fichier obtenu&lt;/h4&gt;

&lt;code class=&quot;ruby&quot;&gt;&lt;span style=&quot;color:#CC0066; font-weight:bold;&quot;&gt;require&lt;/span&gt; 'rake/clean'&lt;br /&gt;
&lt;br /&gt;
CLEAN.&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;include&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'*.&lt;span style=&quot;color:#9900CC;&quot;&gt;ps&lt;/span&gt;','*.&lt;span style=&quot;color:#9900CC;&quot;&gt;dvi&lt;/span&gt;','*.&lt;span style=&quot;color:#9900CC;&quot;&gt;log&lt;/span&gt;','*.&lt;span style=&quot;color:#9900CC;&quot;&gt;out&lt;/span&gt;','*.&lt;span style=&quot;color:#9900CC;&quot;&gt;aux&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color:#008000; font-style:italic;&quot;&gt;# Main file&lt;/span&gt;&lt;br /&gt;
MAIN = &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;truc.pdf&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
PNG = FileList&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;fig/*.png&amp;quot;&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;br /&gt;
EPS = PNG.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;eps&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
TEX = FileList&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;*.tex&amp;quot;&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;br /&gt;
SRC = FileList&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;src/*.*&amp;quot;&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;br /&gt;
DVI = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;dvi&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
desc &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;The default task : preview version&amp;quot;&lt;/span&gt;&lt;br /&gt;
task :default =&amp;gt; MAIN&lt;br /&gt;
file MAIN =&amp;gt; DVI&lt;br /&gt;
file DVI =&amp;gt; SRC&lt;br /&gt;
file DVI =&amp;gt; EPS&lt;br /&gt;
file DVI =&amp;gt; TEX&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color:#008000; font-style:italic;&quot;&gt;# Convert image files&lt;/span&gt;&lt;br /&gt;
rule '.&lt;span style=&quot;color:#9900CC;&quot;&gt;eps&lt;/span&gt;' =&amp;gt; '.&lt;span style=&quot;color:#9900CC;&quot;&gt;png&lt;/span&gt;' &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt; |t|&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;convert #{t.source} #{t.name}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;rm&amp;nbsp; #{t.source}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
file DVI &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; main_tex = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;tex&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;latex #{main_tex}&amp;quot;&lt;/span&gt;&amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;latex #{main_tex}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
desc &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;Screen resolution compilation&amp;quot;&lt;/span&gt;&lt;br /&gt;
file MAIN =&amp;gt; DVI &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color:#008000; font-style:italic;&quot;&gt;#puts &amp;quot;Main task... : \n #{t.investigation}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; main_dvi = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;dvi&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; main_ps = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;ps&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;dvips #{main_dvi}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;ps2pdf #{main_ps}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
desc &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;High resolution conversion&amp;quot;&lt;/span&gt;&lt;br /&gt;
task :final =&amp;gt; DVI &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; main_dvi = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;dvi&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; main_ps = MAIN.&lt;span style=&quot;color:#9900CC;&quot;&gt;ext&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;'.&lt;span style=&quot;color:#9900CC;&quot;&gt;ps&lt;/span&gt;'&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;dvips -D600 -Z #{main_dvi}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;ps2pdf -dPDFSETTINGS=/prepress #{main_ps}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;acroread #{MAIN} &amp;amp;&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
desc &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;Create directories&amp;quot;&lt;/span&gt;&lt;br /&gt;
task :init &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dir.&lt;span style=&quot;color:#9900CC;&quot;&gt;mkdir&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;fig&amp;quot;&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dir.&lt;span style=&quot;color:#9900CC;&quot;&gt;mkdir&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;src&amp;quot;&lt;/span&gt;&lt;span style=&quot;color:#006600; font-weight:bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;/code&gt;


&lt;h4&gt;Quelques explications&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;La variable &lt;code&gt;MAIN&lt;/code&gt; définie le nom du fichier de sortie.&lt;/li&gt;
&lt;li&gt;La liste de fichiers &lt;code&gt;PNG&lt;/code&gt; permet de constuire la liste des futurs fichiers &lt;code&gt;EPS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Les listes &lt;code&gt;TEX&lt;/code&gt; et &lt;code&gt;SRC&lt;/code&gt; contiennent les fichiers &lt;code&gt;*.tex*&lt;/code&gt; et ceux contenus dans le répertoire &lt;code&gt;src&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Une règle (&lt;code&gt;rule&lt;/code&gt;) permet de définir la conversion &lt;code&gt;png&lt;/code&gt; vers &lt;code&gt;eps&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;La règle associée au fichier &lt;code&gt;DVI&lt;/code&gt; dépend des listes de fichiers &lt;code&gt;TEX&lt;/code&gt;, &lt;code&gt;SRC&lt;/code&gt; et &lt;code&gt;EPS&lt;/code&gt;. Elle lance la compilation du fichier Latex si un des fichiers présent dans ces trois liste est plus récent que la cible (ici le fichier &lt;code&gt;dvi&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;La règle &lt;code&gt;MAIN&lt;/code&gt; (qui est la règle par défaut) dépend du fichier &lt;code&gt;dvi&lt;/code&gt; et assure la conversion en &lt;code&gt;pdf&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;La tâche &lt;code&gt;final&lt;/code&gt; assure une conversion en haute qualité du fichier &lt;code&gt;dvi&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;La tâche &lt;code&gt;init&lt;/code&gt; crée les deux répertoire &lt;code&gt;src&lt;/code&gt; et &lt;code&gt;fig&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;La règle &lt;code&gt;clean&lt;/code&gt; est crée par défaut, on ajout seulement la liste de fichier à supprimer&amp;nbsp;: &lt;code&gt;*.ps','*.dvi','*.log','*.out','*.aux'&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;Utilisation&lt;/h4&gt;

&lt;p&gt;Selon les arguments passés à la commande &lt;code&gt;rake&lt;/code&gt;, différentes tâches sont réalisée&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;rake init&lt;/code&gt; va créer les répertoires &lt;code&gt;fig&lt;/code&gt; et &lt;code&gt;src&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rake&lt;/code&gt; va lancer la compilation du fichier Latex (si nécessaire) et créer le fichier &lt;code&gt;pdf&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rake final&lt;/code&gt; va lancer la compilation du fichier Latex avec un conversion en &lt;code&gt;pdf&lt;/code&gt; en haute résolution&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rake clean&lt;/code&gt; effacera tous les fichiers temporaires&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;Outils utilisés pour déboguer le script&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;La commande &lt;code&gt;touch&lt;/code&gt; permet de modifier la date d'un fichier, très utile pour vérifier les règles de dépendances&lt;/li&gt;
&lt;li&gt;Dans le &lt;code&gt;Rakefile&lt;/code&gt; on peut ajouter les lignes ci-dessous pour déboguer les règles qui ne sont pas définies&amp;nbsp;:&lt;/li&gt;
&lt;/ul&gt;
&lt;code class=&quot;ruby&quot;&gt;rule '' &lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;do&lt;/span&gt; |t|&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color:#CC0066; font-weight:bold;&quot;&gt;puts&lt;/span&gt; &lt;span style=&quot;color:#996600;&quot;&gt;&amp;quot;Undefined task... : &lt;span style=&quot;color:#000099;&quot;&gt;\n&lt;/span&gt; #{t.investigation}&amp;quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color:#9966CC; font-weight:bold;&quot;&gt;end&lt;/span&gt;&lt;/code&gt;</description>
    
    
    
          <comments>http://www.causeries-numeriques.fr/post/2007/08/14/Compilation-automatisee-de-fichier-Latex#comment-form</comments>
      <wfw:comment>http://www.causeries-numeriques.fr/post/2007/08/14/Compilation-automatisee-de-fichier-Latex#comment-form</wfw:comment>
      <wfw:commentRss>http://www.causeries-numeriques.fr/feed/rss2/comments/2</wfw:commentRss>
      </item>
    
</channel>
</rss>
