Dans un éditeur
LaTeX-X permet de compiler le fichier édité en utilisant les menus de
l'éditeur. Deux modes de compilation sont utilisables : soit le mode
«visualisation», soit le mode «exporter». Le premier compile le fichier
et visualise le résultat dans le format que l'on a choisit (soit le
PostScript soit le PDF (soit avec «pdflatex» soit avec «xelatex») - la
visualisation du DVI est, volontairement, non prévue), et le second
compile et propose d'enregistrer le résultat, avec la possibilité de
choisir le répertoire et le nom du fichier à enregistrer (en
compilation latex, l'enregistrement du DVI est possible). Si LaTeX-X a
déjà été lancé une fois (dans une même session), quand on le relance,
il teste si le fichier (ou une de ses dépendances telles que le
fichiers bibtex ainsi que les inputs) a été modifié et lance alors la
compilation minimale pour mettre à jour le résultat final. Autrement
dit, LaTeX-X fonctionne en mode «update», aussi bien en «visualisation»
qu'en «exporter». De ce fait, lorsque le visualiseur PostScript ou PDF
est ouvert et que l'on relance LaTeX-X, le visualiseur n'est pas
relancé, et il faut faire un «update» dans ce dernier. Pour la
visualisation PostScript, si on utilise «gv», cela peut être mis par
défaut dans les options de «gv»; pour la visualisation PDF, il vaut
mieux utiliser «acroread» mais on peut en utiliser d'autres (xpdf,
evince, ou mettre xdg-open et le système choisit).
L'utilisation de LaTeX-X dans un éditeur LaTeX a été
testée pour
Emacs,
Nedit,
Kile,
Texmaker,
TeXstudio,
LaTeXila
(Gnome LaTeX) et
LyX. La
documentation qui suit indique, pour chaque éditeur, la démarche à
suivre. D'une façon générale, la commande à insérer dans l'éditeur est
de la forme suivante (i.e. la commande qui doit être lancée, par
l'éditeur, sur le fichier édité : cette commande doit être suivie de
quelque chose, qui dépend de l'éditeur, pour être effectivement lancée
sur le fichier) :
latex-x --1 -view -editeur
pour une visualisation avec choix du
format ensuite
latex-x --1 -export -editeur
pour exporter avec choix du format
ensuite
latex-x
--1 -view -latex -editeur pour une visualisation du PostScript
latex-x --1 -view -pdflatex
-editeur
pour une visualisation du PDF avec
pdflatex
latex-x --1 -view
-pdflatex_pstpdf -editeur
pour une visualisation du PDF avec
pdflatex mode pst-pdf
latex-x --1 -view -latex_ps2pdf
-editeur
pour une visualisation du PDF avec
latex et ps2pdf
latex-x
--1 -view -xelatex -editeur pour une visualisation du PDF avec xelatex
latex-x --1 -export -latex
-editeur
pour
exporter en PostScript
latex-x --1 -export -pdflatex
-editeur
pour exporter en PDF avec pdflatex
latex-x --1 -export
-pdflatex_pstpdf -editeur
pour exporter en PDF avec pdflatex
mode pst-pdf
latex-x --1 -export
-latex_ps2pdf -editeur
pour
exporter en PDF avec latex et ps2pdf
latex-x --1 -export -xelatex
-editeur
pour
exporter en PDF avec xelatex
L'option -editeur indique à LaTeX-X d'effectuer les
compilations dans un répertoire temporaire attaché à l'éditeur choisit,
et doit donc correspondre au nom de l'éditeur.
Lorsque l'on quitte l'éditeur, il est fortement
conseillé de vider les répertoires temporaires de compilation. Cela
peut se faire de manière automatique si on lance l'éditeur avec un
script (mis, par exemple dans $HOME/bin/) du type suivant (pour emacs) :
#!/bin/bash
(emacs -geometry 115x50+0+0 $@
rm -f -r
$HOME/.latex-x/tmp/latex2gv/emacs
rm -f -r
$HOME/.latex-x/tmp/latex2pdf/emacs
rm -f -r
$HOME/.latex-x/tmp/latex2pdf_pst-pdf/emacs
rm -f -r
$HOME/.latex-x/tmp/latex2pdf_ps2pdf/emacs
rm -f -r
$HOME/.latex-x/tmp/xelatex2pdf/emacs) exit 0
Ce script lance emacs (sur un fichier ou non) avec
une certaine taille de fenêtre, et, lorsque l'on quitte emacs, il vide
les répertoires temporaires de compilation sous emacs (pour un autre
éditeur remplacer «emacs» par le nom de l'éditeur : nedit, kile,
texmaker, lyx).
On peut aussi rajouter dans l'éditeur un nenu
donnant accès à la configuration de LaTeX-X.
Pour utiliser
LaTeX-X avec Emacs, il faut tout d'abord installer «auctex». On peut
alors mettre, dans Emacs, les commandes nécéssaires pour utiliser
LaTeX-X, en utilisant l'interface graphique de configuration d'emacs.
On va dans le groupe AUC TeX, puis dans le groupe Tex Command, puis
dans Tex Command List, et là on rajoute les commandes que l'on désire
en cliquant sur INS en début de liste.
Par exemple, pour rajouter les commandes de
«visualisation» et «exporter» avec choix du format ensuite :
Name LaTeX-X - Visualisation (mise à jour) du PostScript ou
du PDF
Command latex-x '--1'
'-view' '-emacs' %t
Name
LaTeX-X -
Exporter en PostScript ou en PDF
Command
latex-x
'--1' '-export' '-emacs'
%t
Pour une commande de visualisation directe du PostScript, rajouter
'
-latex' entre '
-view' et '
-emacs', et de même pour
pdflatex, vlatex,
elatex et pdfelatex, ou dans exporter.
Ceci étant fait, lorsque vous ouvrez un fichier
LaTeX2e avec emacs, les comandes LaTeX-X se trouvent dans le menu
«Command» d'emacs.
Pour rajouter une commande effaçant les répertoires
de compilation, on rajoute un nouveau nenu (en cliquant sur INS, par
exemple après ceux que l'on vient de créer) comme suit :
Name
LaTeX-X -
Effacer les répertoires temporaires de
compilation pour Emacs
Command
rm -f -r
$HOME/.latex-x/tmp/latex2gv/emacs $HOME/.latex-x/tmp/latex2pdf/emacs
$HOME/.latex-x/tmp/latex2pdf_pst-pdf/emacs
$HOME/.latex-x/tmp/latex2pdf_ps2pdf/emacs
$HOME/.latex-x/tmp/xelatex2pdf/emacs
Pour accéder aux préférences de LaTeX-X par un menu
d'emacs on rajoute le menu suivant :
Name
LaTeX-X
Préférences
Command
latex-x
'--config'
La documentation
donnée ici se réfère à une version 5.4 ou supérieure de nedit. Si ce
n'est pas celle-ci qui est installée sur votre machine, il vaut mieux
aller chercher cette version sur le site de nedit et l'installer dans
son HOME (on trouve, sur le site, un binaire qui est suffisament petit
(environ 1Mo) pour être installé). Il peut aussi être utille
d'installer le pack «latex-pack» fort bien conçu pour nedit que l'on
peut trouver sur le site de nedit.
L'installation des commandes LaTeX-X dans nedit est
alors très simple : elle se fait dans le menu Preferences ->
Defaults Settings -> Customise Menus -> Shell Menu... Ceci ouvre
une fenêtre dans laquelle on rajoute les commandes shell pour LaTeX-X.
Comme on a la possibilité de faire des sous-menus, il est plus
simple de choisir les commandes les plus complètes.
Par exemple, pour créer un menu LaTeX-X >
Affichage (mise à jour) du > PostScript, après avoir cliqué sur New,
on rentre ce qui suit :
Dans Menu Entry on tape (par exemple) :
LaTeX-X > Affichage (Mise à
jour) du > PostScript @LaTeX
puis on
coche «window»
dans Command Input, on
coche
«dialog» dans
Command Output, on
coche
«Save file before executing command», et, dans
Shell Command to Execute, on tape
latex-x --1 -view -latex -nedit
% >& /dev/null &
Attention, la commande est tapée en
csh car nedit exécute les commandes shell avec cet interpréteur (ceci
peut théoriquement être changé, mais les tests que j'ai fait ne
marchait pas...). @LaTeX signifie que les nenus n'apparaîtront que
lorsque l'on ouvrira un fichier LaTeX.
Pour les autres commandes, on procède de la même
manière (en faisant attention de concerver les même noms pour les menus
et sous-menus i.e. remplacer «PostScript» par «PDF pdflatex» et (ou)
«PDF pdflatex mode pst-pdf» et (ou) «PDF vlatex» et (ou) «PostScript
elatex» et (ou) par «PDF pdfelatex», et remplacer «Affichage (Mise à
Jour) du» par «Exporter en»). Les commandes LaTeX-X apparaissent alors
dans des sous-menus du menu «Shell» de Nedit lorsque que l'on édite un
fichier LaTeX.
Pour rajouter une commande effaçant le répertoire
temporaire de compilation, on va dans Preferences -> Defaults
Settings -> Customise Menus -> Shell Menu... comme précédemment,
et on rajoute (en cliquant sur New) un nouveau menu :
Dans Menu Entry on tape :
LaTeX-X > Effacer le
répertoire temporaire de compilation
puis on
coche «none»
dans Command Input, on
coche
«same window» dans
Command Output, et, dans Shell Command to Execute, on tape
rm -f -r
$HOME/.latex-x/tmp/latex2gv/nedit
$HOME/.latex-x/tmp/latex2pdf/nedit
$HOME/.latex-x/tmp/vlatex2pdf_pst-pdf/nedit
$HOME/.latex-x/tmp/latex2pdf_ps2pdf/nedit
$HOME/.latex-x/tmp/xelatex2pdf/nedit
Pour accéder aux préférences de LaTeX-X, on procède
comme ci-dessus pour rajouter un autre nenu :
Dans Menu Entry on tape :
LaTeX-X > LaTeX-X Préférences
puis on
coche «none»
dans Command Input, on
coche
«dialog» dans Command
Output, et, dans Shell Command to Execute, on tape
latex-x --config >&
/dev/null &
Pour ces deux
éditeurs, il suffit de définir des commandes utilisateur convenables.
Ces commandes dépendent de la version de Kile utilisée. Par exemple,
avec la version 1.6 de Kile, pour créer une commande de visualisation
de PostScript, dans l'éditeur des outils utilisateur, on tape :
Élément du menu :
LaTeX-X - Visualisation du
PostScript
Valeur :
latex-x --1 -view -latex -kile
%S.tex
Pour des versions inférieurs, il faut remplacer
%S.tex par %.tex (voir la documentation de Kile à ce sujet).
A priori,
l'utilisation de LaTeX-X dans LyX peut sembler superflue, puisque LyX
gère parfaitement la compilation dans un répertoire temporaire avec une
fonction de mise à jour. Il y a toutefois trois raisons qui peuvent
jouer en faveur d'une utilisation de LaTeX-X dans LyX :
- Si l'on insère un fichier tex (avec un \input) dans un fichier LyX et
que ce fichier tex comporte lui-même des \inputs, lorsque un des
«inputs» du fichier tex est modifié, LyX ne peut pas le savoir, et
aucune mise à jour de la compilation n'est faite, alors que LaTeX-X
voit les modifications à tous les niveaux (même au niveau du système
pour les imputs de fichiers modifiables par l'utilisateur);
- On ne peut pas simplement compiler avec LyX un fichier utilisant le
package pst-pdf : en effet, la seule façon de faire serait d'utiliser
le script ps4pdf (fourni avec pst-pdf), mais, si le fichier à compiler
utilise, par exemple hyperref, la compilation multiple avec ps4pdf ne
peut pas produire le résultat final (il faut, après la précompilation
latex, faire au moins trois compilations pdflatex SANS relancer latex).
Pour ce faire, le plus simple est d'éditer le
fichier preferences du répertoire $HOME/.lyx et d'y rajouter, a la main
les lignes suivantes :
Dans la section :
#
# FORMATS SECTION ##########################
#
on rajoute les ligne suivantes (où
user est votre nom
d'utilisateur
i.e.
$HOME=/home/user) :
\format "latexxview" "tex"
"LaTeX-X - Afficher (Mise à jour) le
PostScript ou le PDF" ""
\format "latexxexport" "tex"
"LaTeX-X -
Exporter en PostScript ou en PDF" ""
\format "latexxclean" "tex"
"LaTeX-X - Éffacer les répertoires temporaires de compilation pour LyX"
""
\format "latexx" "tex" "LaTeX-X
- Prérérences" ""
\viewer
"latexxview" "latex-x --1 -view -lyx"
\viewer "latexxexport" "latex-x
--1 -export -lyx"
\viewer
"latexxclean" "rm -f -r /home/user/.latex-x/tmp/latex2gv/lyx
/home/user/.latex-x/tmp/latex2pdf/lyx
/home/user/.latex-x/tmp/latex2pdf_pst-pdf/lyx
/home/user/.latex-x/tmp/latex2pdf_ps2pdf/lyx
/home/user/.latex-x/tmp/xelatex2pdf/lyx"
\viewer "latexx" "latex-x
--config"
Dans la section :
#
# CONVERTERS SECTION ##########################
#
on rajoute les lignes suivantes (où
user est votre nom
d'utilisateur
i.e.
$HOME=/home/user) :
\converter "latex" "latexxview"
"latex-x --1 -view -lyx $$i" ""
\converter "latex"
"latexxexport" "latex-x --1 -export -lyx $$i" ""
\converter
"latex" "latexxclean" "rm -f -r /home/user/.latex-x/tmp/latex2gv/lyx
/home/user/.latex-x/tmp/latex2pdf/lyx
/home/user/.latex-x/tmp/latex2pdf_pst-pdf/lyx
/home/user/.latex-x/tmp/latex2pdf_ps2pdf/lyx"
"/home/user/.latex-x/tmp/xelatex2pdf/lyx" ""
\converter "latex" "latexx"
"latex-x --config" ""
Dans le menu «Visualiser» de LyX, les commandes
LaTeX-X apparaissent alors. Si on le désire, on peut aussi rajouter un
bouton pour accéder à ces commandes. Voir la doc LyX à ce sujet
(fichier .ui du répertoire $HOME/.lyx/ui).