Les formules LaTeX

Les formules LaTeX

LaTeX, dérivé de TeX, est un langage d'écriture et de mise en forme pour la publications de documents scientifiques. Les documents LaTeX contiennent très souvent des formules, ce sont ces dernières qui peuvent être introduites dans ScenariChain.

Une technique de saisie pratique pour les formules inline

Lorsque vous avez besoin de saisir une formule LaTeX à l'intérieur d'un paragraphe, vous n'avez pas besoin de créer un item externe comme pour l'ODF ou le MML. La procédure est simplifiée :

  • Tapez ou copier directement le code LaTeX à l'endroit ou vous voulez qu'il apparaisse sur la ligne ;
  • Sélectionnez-le ;
  • Balisez le comme une équation interne LaTeX à partir du bouton "Insérer une balise dans le paragraphe" ou tapez tout simplement CTRL+L.

2 générateurs possibles par support, pour exploiter 2 méthodes de génération du latex

il existe types de 2 générateurs dont les seules variations sont de traiter différemment les formules LaTeX :

  • La méthode classique : les formules latex sont convertie à partir d'OpenOffice, mais il y a souvent des erreurs pour certains types de formules et les erreurs ne sont pas indiquées, il faut contrôler à l'affichage.
  • La méthode "utilisation d'un moteur latex" : il faut installer LaTeX en plus sur son PC, mais le résultat est beaucoup plus souvent fidèle à l'interprétation originale puisque nous utilisons aussi le moteur LaTeX. Recommandé pour les publications sérieuses contenant beaucoup de formules ou des formules complexes.

RemarqueL'aperçu rapide ne correspond pas au résultat dans la publication

Lorsque vous cliquez sur une équation latex inline ou que vous ouvrez un item de ressource LaTeX, la prévisualisation est fournie a titre indicative. Par exemple si vous utilisez la méthode "moteur latex" les résultat seront de bien meilleur qualité en publication, mais des erreurs supplémentaires peuvent survenir si votre formule est vraiment invalide.

Générateur classique

Les équations sont publiées suivant la même méthode que pour les formules ODF ou MML, à travers une conversion automatique par OpenOffice.

Générateur "moteur latex pour les ressources math"

Ce document explique simplement comment s'en servir d'un point de vue utilisateur, si vous êtes expert LaTeX en quêtes de détails ou d'un déploiement en serveur, vous pouvez trouver plus d'informations techniques sur l'intégration du moteur LaTeX dans Scenari sur un des wiki de développement.

Installation

Pour exploiter le générateur, vous devez installer un environnement LaTeX que Scenari sur lequel Scenari va se baser :

Sous windows

MiKTeX est le mieux testé, installez le avec les options par défaut, lors de la première utilisation à partir d'OpaleSup, il vous proposera automatiquement d'installer des packages complémentaires, ce que vous devez accepter pour le bon fonctionnement de la génération.

Si le téléchargement échoue lors de ces installations et que vous devez utiliser un proxy, configurez le correctement :

  • menu démarrer -> programmes -> miktex -> package manager
  • Puis, menu "repository" -> "change package repository" -> (o) package shall be installed from the internet + connection settings... -> [X] use a proxy server + la même config que votre navigateur internet.
Sous Linux

testé avec ubuntu, 3 packages standard sont à installer sur cet OS, texlive-latex-base texlive-latex-recommended preview-latex-style

Sous MacOs X

texlive a été testé, vous devez éditer le fichier ~/.MacOsX/environment.plist et rajouter le chemin des fichiers exécutables latex à la variable PATH, par exemple, rajoutez ":/usr/texbin" si LaTeX est installé dans ce répertoire. Vous pouvez utiliser l'application Property List Editor pour éditer facilement ce fichier (dans /Development/Applications/Utilities/). Installez aussi les packages LaTeX mentionnés ci-dessous pour les "autres situations".

Autres situations

Si vous vous y connaissez bien en LaTeX et que vous voulez tester sur d'autres plateformes, sachez que Scenari utilise les packages latex : "preview" (preview.sty), "txfonts", "unicode" (utf8x.def), "amslatex", "dvipng", et veillez bien a ce que les fichiers exécutables latex et dvipng soient dans le "PATH" système.

Truc & astuceTrouver l'origine d'une erreur de génération liée a une formule LaTeX

Avant de commencer, essayez de déterminer si l'erreur est due à l'installation ou a la formule. Par exemple, si l'erreur se produit aussi sur un micro-module avec une formule du type "1+1" c'est probablement une erreur d'installation ou de configuration. Si vous ne rencontrez une erreur que sur les équations avec des caractères spéciaux, c'est peut être aussi un package latex a installer.

LaTeX est un langage riche, complexe et rigoureux. Si une formule du document est mal écrite ou a mal été copiée, la publication de votre document devrait tout de même fonctionner sauf la formule en question qui sera manquante. OpaleSup vous prévient de cet état à l'issue de la génération par un point d'exclamation et la mention "dernière génération le ... (avec anomalies)". Un bouton rapport offre plus d'informations sous une forme qui peut paraître un peu brutale, voici un exemple pour une formule LaTeX inline invalide :

Exemple de message d'erreur latex
Exemple de message d'erreur latex

En cherchant bien on doit pouvoir y trouver toutes les informations pour réparer le problème, j'ai rajouté des encadrées rouges pour qu'ils soient mieux visibles :

* Le nom de l'item qui contient de l'erreur (ici le nom de mon module qui contient la formule directement en inline) ;

* La formule, ici "\frac{1+n}{x", vous remarquerez qu'il manque une accolade fermante "}", qu'il faut donc la rajouter pour réparer l'erreur ;

* Le message d'erreur tel que LaTeX l'a imaginé : "File ended while scanning use of \@genfrac", c'est obscure et réservé aux amateurs de latex ou informaticiens. Parfois en le cherchant sur google on a tout de même quelques pistes.

Les transformations sur les formules sont lancées plusieurs fois (pour avoir des informations de positionnement sur la page), donc ne soyez pas surpris si une seule erreur se traduit par 4 pavés avec la même formule.

Récupération contenu en cellule de production

Cette partie regroupe quelques informations utiles aux cellules TICE ou cellules de productions, qui doivent récupérer des documents LaTeX sans savoir vraiment ce que c'est (rien a voir avec le composant utilisé dans la fabrication de certains produits industriels au cas ou un doute subsisterait toujours).

Truc & astuceQuestion : On m'a donné un PDF qui a été créé avec LaTeX, comment copier mes formules dans OpaleSup ?

Réponse : vous ne pouvez pas le faire avec seulement le PDF ! Les PDF sont juste des "dessins" obtenu à partir d'un fichier LaTeX, mais ne permettent pas de retrouver la vraie formule sans la retaper en entier. Comme solution, demandez à l'auteur de vous fournir aussi le fichier ".tex", c'est le fichier "source de contenu" tel qu'il à été rédigé avant sa publication, à l'intérieur vous devriez pouvoir trouver des formules LaTeX tout à fait exploitables.

Ce serait exactement la même chose si quelqu'un vous passait un PDF exporté à partir d'OpenOffice et que vous cherchiez en copier les formules ODF dans OpaleSup.

L'idéal est d'avoir les deux, le .pdf est peut être plus pratique pour copier le texte (malgré certains caractères spéciaux qui peuvent poser problème) sans les commandes spécifiques au LaTeX, le fichier .tex est indispensable pour extraire les formules.

ComplémentRepérer les formules de math dans un fichier source .tex et les copier

Le fichier source LaTeX contient plein d'éléments mélangés, du texte, des images et des formules... Vous pouvez trouver un exemple ici : "LaTeX Typesetting By Example", particulièrement intéressant est le dernier paragraphe "Mathematical Equations" . Les équations sont écrites :

  • Encadrées par des marqueurs $, par exemple : $x^y$ qui correspond à "x exposant y". Pour le saisir dans Opale, ne recopiez pas les caractères "$", copiez juste ce qui est à l'intérieur, dans une nouvelle équation à chaque fois. Ces équations sont couramment des équations simples et utilisées en "inline".
  • Encadrées par des marqueurs \[ et \]. Recopiez juste ce qui est à l'intérieur.
  • Dans certains cas, encadrées par des commandes \begin{...} et \end{...}, avec "..." en tant que type de partie, par exemple \begin{equation}. Attention, la même notation est aussi utilisée pour certains schéma, pour déclarer certains types de paragraphes de textes, pour plein d'autres raisons, assurez vous qu'il s'agit bien d'une formule avant de l'intégrer. Dans ce cas, recopiez aussi ces marqueurs \begin{...} \end{...} qui sont important pour la mise en forme lors de la publication de la formule ! OpaleSup accepte les commandes suivantes à l'intérieur d'accolades \begin{...} : math, displaymath, eqnarray, equation, align, alignat, et certains autres.