diff options
Diffstat (limited to 'Master/texmf-doc/doc/french/FAQ-fr/part6')
-rw-r--r-- | Master/texmf-doc/doc/french/FAQ-fr/part6 | 2261 |
1 files changed, 0 insertions, 2261 deletions
diff --git a/Master/texmf-doc/doc/french/FAQ-fr/part6 b/Master/texmf-doc/doc/french/FAQ-fr/part6 deleted file mode 100644 index 99454a01f6a..00000000000 --- a/Master/texmf-doc/doc/french/FAQ-fr/part6 +++ /dev/null @@ -1,2261 +0,0 @@ -Path: tempo.univ-lyon1.fr!univ-lyon1.fr!howland.erols.net!newsfeed.skycache.com!Cidera!netnews.com!opentransit.net!proxad.net!teaser.fr!fdn.fr!edgard.fdn.fr!not-for-mail -Date: 08 Jun 2001 13:31:18 +0200 -Newsgroups: fr.comp.text.tex,fr.usenet.reponses -Subject: [FAQ] fr.comp.text.tex - parties 25 a 30 -Message-ID: <faq-fctt-p620010608133118@edgard.fdn.fr> -X-Posted-By: poste.sh version 1.1 -From: bayartb@edgard.fdn.fr (Nono le robot) -Supersedes: <faq-fctt-p620010501143417@edgard.fdn.fr> -Expires: 08 Jul 2001 13:31:17 +0200 -Followup-To: poster -Organization: French Data Network -Approved: bayartb@edgard.fdn.fr -Lines: 2251 -Xref: tempo.univ-lyon1.fr fr.comp.text.tex:23527 fr.usenet.reponses:20393 - -Archive-name: fr/faq-latex-francaise/part6 - -Author: Marie-Paule Kluth -Posting-Frequency: mensuel (monthly) -Version: 2.27 - -================================================================ - Cette FAQ, rédigée initialement par MP Kluth est maintenant - tenue à jour autant que possible par B. Bayart et - plusieurs volontaires (voir question [30]). -================================================================ - -================================================================ -[25] LOGICIELS DE DESSINS -================================================================ - -# 25.1 # Où trouver un logiciel de dessin ? -------------------------------------------- -* Xfig est un logiciel de dessin disponible sur station de -travail Unix sous X Window System. Il permet via des menus de -manipuler des objets de façon interactive dans une fenêtre X -Window. Il nécessite une souris à trois boutons. Il est -disponible par ftp anonyme sur ftp://epb1.lbl.gov/xfig -ou sur ftp://ftp.fdn.org/pub/CTAN/graphics/xfig/. -Son gros avantage est de permettre l'utilisation de -commandes LaTeX (formules mathématiques). Il est capable -d'exporter une figure directement en format TeX ou de -générer de l'encapsulated postscript (si l'on veut des -zones grisées ou des choses de ce type, il faut passer par -un fichier postscript). - -* PSfrag permet également de combiner du dessin et des textes -LaTeX. Il nécessite LaTeX2e et le package 'graphics'. Il est -disponible sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/psfrag/. - -* TeXcad, permet de créer des fichiers de dessin. Le principe -est intéressant puisque cet outil permet de dessiner à l'aide de -la souris et de menus et lui le transforme en commandes LaTeX. -Il permet l'utilisation de la commande \special (cf. paragraphe -29.8). TeXcad est disponible sur PC (il fait partie de la -distribution emTeX) et sous Unix et Linux (on peut le trouver -dans ftp://ftp.fdn.org/pub/CTAN/systems/unix/linux/). - -* Xy-pic permet de réaliser des diagrammes commutatifs, des -automates, et plein d'autres choses (cf. paragraphe 8.6). - -* xgraphic offre une très bonne qualité de dessin. Il est -disponible à -http://blanche.polytechnique.fr/XGRAPHICS/xgraphics.html. - -* tgif permet également de dessiner des figures. Il est -disponible à http://bourbon.cs.columbia.edu:8001/tgif/. -Il peut faire appel à différentes librairies (cf. -http://bourbon.cs.columbia.edu:8001/tgif/current.html) dont une -LaTeX qui permet entre autres de gérer des équations -mathématiques. - -* LaTeXcad sous Windows3.x et Windows '95 permet de convertir -des figures en commandes LaTeX. Il est disponible sur -ftp://ftp.fdn.org/pub/CTAN/systems/msdos/latexcad/. - -* MetaPost que l'on peut trouver dans la distribution CMacTeX -peut produire des figures PostScript. Les commandes MetaPost -permettent entre autres d'obtenir directement des cercles, des -segments et des courbes de Bezier ; en outre, on peut nommer des -points en précisant leurs coordonnées ou en indiquant les -chemins à l'intersection desquels ils se trouvent. MetaPost -offre d'autres possibilités, bien décrites dans le manuel qui -l'accompagne. - -Pour plus de détails, -consulter http://www.loria.fr/~roegel/metapost.html. - -* Pagedraw sous Windows 3.1/95/NT permet de générer des fichiers -postscript. Il est disponible sur ftp://ftp.fdn.org/pub/CTAN/graphics/pagedraw/. - -Remarque : Il y a un excellent éditeur vectoriel GRATUIT sous - windows, nommé MayuraDraw (anciennement PageDraw) - et que l'on peut trouver sous - http://www.wix.com/PageDraw/ - - Avec Ps2ai, cet éditeur permet d'importer des - fichiers ps (presque) quelconques, de les manipuler - et de les exporter au format pdf, eps, wmf, ai, ps, - bmp et tif. - -* Qfig est un logiciel de dessin sous DOS. Il génère des -fichiers PicTeX et EPIC. Il est disponible sur -ftp://ftp.fdn.org/pub/CTAN/support/qfig/. - -* PovRay est un outil de ray-tracing. Il permet de manipuler -des formes géométriques, des plans, des textures des sources de -lumières, etc. Consultez http://www.povray.org/. - -* Gimp est une application UNIX qui s'appuie sur X Window -system. GIMP permet de manipuler des images pour faire des -retouches sur des photos, des compositions d'images, etc. Pour -plus de détails, consultez : -http://www.gimp.org/. -A noter, gimp tourne aussi sous Windows. - -* Sous Windows 3.1/95/NT il existe également Paint Shop Pro qui -est shareware. Pour plus d'informations, consultez -http://www.jasc.com/. - -* Le package 'mfpic' de T. E. Leathrum et G. Tobin permet -également de faire des dessins, directement dans le source. Son -intérêt est de rendre le document parfaitement portable sans -aucun soucis de compatibilité de format, ni d'envoi de fichiers -multiples. - -Le source d'un dessin mfpic doit être compilé par TeX puis -MetaFont et TeX à nouveau. Ce package est très bien adapté pour -des dessins mathématiques et géométriques. Les programmes -offrent une complexité remarquable (for .. upto .., if .. then -.. else .., calculs numériques, etc). - -Le principe de base du fonctionnement de mfpic est de créer une -police de caractère, dont chaque caractère sera un dessin (d'où -la nécessité de la compilation par Metafont, comme pour toute -nouvelle police). - -Remarque (R. Roussillon) : Ce package mériterait d'être plus - connu que ce qu'il est actuellement. - -Exemple : -\polyline{(0,0),(1,2),(3,-1)} -\arc[t]{(1,0),(1,1),(0.5,1)} -%%%% fin exemple %%%% - -# 25.2 # Comment inclure des formules Latex dans Xfig ? -------------------------------------------------------- -* Il suffit de mettre le flag special au texte, de taper son -texte LaTeX en incluant des commandes, d'exporter son fichier -(toto.fig par exemple) en deux parties : Combined PS/LaTeX (PS -part) Combined PS/LaTeX (LaTeX part) et de faire -\input{toto.pstex_t}, en ayant bien sûr chargé au préalable -le package 'epsfig' par la commande \usepackage{epsfig} placée -dans le préambule. - -* On peut utiliser également tgif qui permet d'insérer du LaTeX -dans les figures. Son fonctionnement est différent : le source -est compilé dans tgif même, et le résultat dvi est converti en -Postscript et apparaît dans la figure. Le positionnement dans la -figure de l'élément compilé est donc plus aisé, mais il est -assez contraignant de lancer LaTeX pour compiler chaque élément. - -# 25.3 # Comment gérer différents formats de figures ? ------------------------------------------------------- -* Sous Unix, Win95, Mac, VMS, l'outil ImageMagick, de J. Cristy, -permet de convertir de nombreux formats d'image vers un autre. -Il permet l'édition et la manipulation d'images. Pour plus de -renseignements, consulter -http://www.wizards.dupont.com/cristy/ImageMagick.html. -ImageMagick est disponible par ftp sur -ftp://ftp.wizards.dupont.com/pub/ImageMagick/. - -ImageMagick est également disponible pour VMS par ftp sur -ftp://ftp.wizards.dupont.com/pub/ImageMagick/vms/ ou sur -ftp://ftp.x.org/contrib/applications/vms/. - -* Transfig permet entre autres de convertir un fichier au format -fig en format postscript. -Il est disponible sur ftp://ftp.fdn.org/pub/CTAN/graphics/transfig/ ou -sur ftp://ftp.x.org/contrib/applications/drawing_tools/transfig. - -* GraphicConverter sur mac (en anglais, français ou allemand) -est capable de lire pratiquement tous types de fichiers -graphiques de toutes origines et de le sauvegarder dans un autre -format dont EPSF. Le programme est shareware et est disponible -sur info-mac. - -* tiff2ps (sous Unix), de S. Leffler, permet de convertir des -images au format tiff en format ps. Disponible sur CTAN: -ftp://ftp.fdn.org/pub/CTAN/support/pstools/tiff2ps. - -* GWSWIN11 ou Graphic Workshop pour Windows est disponible par -ftp sur ftp://hprib.lps.u-psud.fr/pub/pc/utils/. Cet outil -(shareware à $40) permet de convertir du PCX, TIFF, JPEG, GIF, -BMP, etc. Il sait convertir des fichiers à niveaux de gris en -fichier tramés ("dithered" en anglais) utilisable pour -l'impression sur des imprimantes noir-et-blanc comme nos -imprimantes laser. Pour le tramage, il propose 7 algorithmes et -la doc de 60 pages donne des conseils. Son tramage paraît -meilleur que celui d'ImageIn ou des scanners usuels. - -* Paint Shop Pro, outil pour PC, permet d'exporter des fichiers -en postscript qui pourront être appelés directement sous LaTeX. -Il est disponible à http://www.jasc.com/index.html en shareware -ou par ftp sur ftp://ftp.lip6.fr/pc/win95/desktop/psp*.zip ou -dans ftp://ftp.lip6.fr/pc/simtelnet/win3/Graphics/psp*.zip. - -* L'utilitaire gif2eps disponible par ftp sur -ftp://ftp.scn.rain.com/pub/graphics/. - -* Voir également les pages http://wotsit.simware.com/ ou -http://www.wotsit.demon.co.uk/text.htm pour des informations sur -des convertisseurs. - -================================================================ -[26] CORRECTEUR -================================================================ - -# 26.1 # Où trouver un correcteur orthographique ? --------------------------------------------------- -* ispell est disponible sur ftp://ftp.fdn.org/pub/CTAN/support/ispell/ ou sur -ftp://ftp.lip6.fr/pub/gnu/. Il peut être associé au dictionnaire -français de M. Boyer disponible par ftp sur -ftp://ftp.inria.fr/gnu/. ispell peut être associé à emacs (xemacs), NeXT. -Pour plus de renseignements, consulter -http://ficus-www.cs.ucla.edu/ficus-members/geoff/ispell.html. - -* Pour MS-DOS : -+ il existe amspell disponible sur -ftp://ftp.fdn.org/pub/CTAN/support/amspell/ ou jspell dans ftp://ftp.fdn.org/pub/CTAN/support/jspell/. -+ Micropell (commercial) peut être appelé depuis PCTeX pour -windows. - -* Pour Macintosh, Excalibur est disponible sur -ftp://ftp.fdn.org/pub/CTAN/systems/mac/support/excalibur/ avec plusieurs dictionnaires. -Pour plus de détails, voir : -http://www.eg.bucknell.edu/~excalibr/excalibur.html. - -* Pour VMS, il existe vmspell disponible sur -ftp://ftp.fdn.org/pub/CTAN/support/vmspell/. - -* On note également le mode ispell-minor-mode de emacs, qui est -capable de vérifier l'orthographe en ligne sans prendre en -compte les commandes LaTeX. - -* La distribution Full VTeX [DOS/Win] inclut un correcteur -orthographique (américain, anglais, français, allemand, -hollandais et italien). Pour plus de détails, consulter : -http://www.micropress-inc.com/. - -* L'éditeur textpad sous Win3.1x et Win95 est capable de -supporter des textes LaTeX et comprend de nombreux -dictionnaires. Pour plus de détails, consulter : -http://www.textpad.com/. - -* Le dictionnaire de R. Cougnenc peut s'utiliser en mode shell -sous DOS comme sous Linux. Il contient 95 000 mots et 39 000 -codes postaux, et permet de vérifier très rapidement une -orthographe. Ce dictionnaire est disponible sur la page web de -D. Trystram : -http://www.starnet.fr/Homepages/dtrystram/index.html. - -# 26.2 # Où trouver un vérificateur de syntaxe LaTeX ? ------------------------------------------------------- -* TeX est un outil puissant disponible par ftp sur -http://www.tex.ac.uk/. - -* lacheck, disponible avec la distribution AUC-TeX (mode (La)TeX -pour emacs) est capable de vérifier la syntaxe LaTeX et de -détecter les erreurs les plus fréquentes. - -* Le package 'syntonly' permet également de vérifier la syntaxe -LaTeX. - -Utilisation : - \documentclass[syntonly]{...} - -* ChkTeX, de J. T. Berger Thielemann (jensthi@ifi.uio.no), dont -la version v1.5 est disponible sur ftp://ftp.fdn.org/pub/CTAN/support/chktex/. -Il est capable de détecter des erreurs typographiques dans -LaTeX. Cet outil permet de s'affranchir de certaines -constructions LaTeX non intuitives. Les binaires pour UNIX, -Amiga, MSDOS et OS/2 sont disponibles. - -Quelques exemples de services : -+ pas d'espace ou assimilé après/avant une parenthèse -+ indique les espaces multiples qui ne sont pas équivalents à un -seul -+ gère la ponctuation en mode mathématique -+ indique les espaces avant une note de bas de page -+ gère les fichiers inclus -+ détecte les blancs avant une référence au lieu de ~ -+ vérifie les couples de parenthèses -+ gère l'espace après un passage en italique -+ ... - -Cet outil est configurable. Il supporte LaTeX209 et LaTeX2e. - -* Le package 'refcheck' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/refcheck/ permet de vérifier les -références d'un document. - -================================================================ -[27] ASSOCIATIONS -================================================================ - -# 27.1 # Qu'est ce que l'association GUTenberg ? ------------------------------------------------- -L'association GUTenberg (loi 1901) a pour objectifs de -regrouper les utilisateurs francophones de TeX, de favoriser -les échanges techniques permettant d'augmenter les possibilités -d'impression et de publications scientifiques et d'offrir à ses -adhérents un certain nombre de services dont des distributions -TeX et LaTeX francisées. Le serveur d'archives de GUTenberg est -herbergé sur le serveur ftp anonyme : -ftp://ftp.gutenberg.eu.org/pub/gut/ ou sur le WEB à -http://www.gutenberg.eu.org. - -GUTenberg publie la Lettre GUTenberg ainsi que les cahiers -GUTenberg. - -Remarque : Le cahier 23 de GUTenberg est également une FAQ - LaTeX. - -ATTENTION : la FAQ que vous êtes en train de lire est - indépendante de l'association GUTenberg. - -# 27.2 # Qu'est ce que l'association TUG ? ------------------------------------------- -TUG (TeX Users Group) est une organisation internationale dont -un tiers des membres est européen. TUGboat est la lettre de ce -groupe. Pour plus de renseignements, contacter tug@tug.org par -mail ou consulter le site WEB http://www.tug.org/. - -# 27.3 # Qu'est ce que l'association AsTeX ? --------------------------------------------- -L'association AsTeX a comme objectif principal d'essayer de -faire du travail utile au plus grand nombre, dans le domaine des -logiciels scientifiques, et d'essayer de faire ce travail aussi -bien que les éditeurs privés, mais dans un esprit de service -public. - -Cela passe par l'écriture d'utilitaires d'installation et de -configuration automatisés (pour que le débutant en TeX/LaTeX -n'ait pas à lire 1000 pages de docs disparates, en anglais de -surcroît, avant de pouvoir imprimer "Bonjour"), par l'écriture -de docs raisonnablement bien rédigées et agréables à consulter, -par des distributions sur disquettes bien présentées. Cela passe -également par la traduction de docs originales dans un français -correct, etc. - -================================================================ -[28] FONTES -================================================================ - -# 28.1 # Que signifient les sigles T1, mf, fd etc. ? ----------------------------------------------------- -Contribution de P. Pichaureau (ppichaur@grannus.u-strasbg.fr) : - -Voici une mise au point rapide, histoire que vous compreniez -de quoi ça parle. - -En 1990, lors d'une réunion d'utilisateurs de TeX, à Cork, il a -été décidé de développer une table d'encodage particulière pour -les fontes de TeX. Cette table contient des signes diacritiques -et un certains nombre de symboles qui permettent de composer des -textes dans un bon nombre de langues européennes. - -Ce codage s'appelle T1 (parfois Cork encoding), et l'ancien -codage de TeX s'appelle OT1 (Old T1). Les autres codages (U, -etc.) concernent des polices particulières et/ou des polices qui -ne respectent ni T1 ni OT1. - -Les fontes « standard » de TeX qui respectent ce codage -s'appellent fontes EC (pour european coding, il me semble). Les -fontes DC étaient une pré-version des fontes EC. La phase de -mise au point des fontes EC ayant duré un certain nombre -d'années, on s'y perd un peu. - -Les fontes TC (text companion) contiennent un certain nombre de -caractères textuels utilisés en mode mathématique. À l'origine, -Knuth prenait ces caractères dans les polices textes normales, -mais cela pose des problèmes si vous essayez d'utiliser d'autres -polices de texte. C'est pour cela qu'on préfère maintenant les -mettre à part. - -Ça c'est pour les problèmes de codage. - -Pour les pk, mf, etc. je refuse de rentrer dans les détails, -mais voici un rapide aperçu de la question : - -fichiers mf -> sources metafont. À partir de là, metafont génère -les fichiers tfm et pk. - -fichiers tfm -> métriques des fontes. Contient la taille des -caractères, les corrections d'espacement éventuelles, etc. TeX a -imperativement besoin de ces fichiers pour compiler un -document. - -fichiers pk -> polices au format bitmap. C'est ce qui est -utilisé pour la prévisualisation et l'impression (même en -PostScript, et ne me demandez pas pourquoi !). - -fichiers vf -> vf pour Virtual Font. Les fontes virtuelles ont -été mises au point par Knuth pour vous permettre -d'utiliser des fontes de provenance diverses. Les fichiers vf -sont utiles lorsque vous essayez d'utiliser des fontes -PostScript. - -fichiers fd -> description des fontes. Ça, c'est en rapport avec -NFSS. Bon, là, je suis obligé de m'étendre. - -NFSS, c'est la manière dont LaTeX2e sélectionne une fonte. LaTeX -ne le faisait pas assez proprement, alors on a fait le ménage. -Un fichier .fd dit à LaTeX2e quels sont les fichiers .mf à -utiliser pour telle police, dans telle taille, dans telle -famille, avec telle variation. C'est avec ce fichier que vous -dites à LaTeX2e de prendre la version sans serif dans tel -fichier, la taille 9pt dans tel autre, et le gras dans ce -troisième fichier. - -En tout état de cause, tfm et fd sont indispensables à la bonne -marche de LaTeX2e. Les mf sont indispensables à la creation des -tfm et despk, et les pk sont indispensables à la visualisation -et à l'impression. - -# 28.2 # Quels sont les attributs d'une fonte ? ------------------------------------------------ -Une fonte possède : -+ une famille (family) qui par défaut vaut cmr - Autre valeurs : cmtt, cmss, cmdh, cmfib. - - La famille correspond à l'allure générale de la - fonte. cmtt pour les fontes « machines à écrire » - cmss pour les sans serifs, cmdh et cmfib pour - respectivement les polices dunhill et fibonacci. - -+ un codage (encoding) qui par défaut vaut OT1 (cf. question -28.1) - Autres valeurs : T1, OML, OMS, ... - -+ une série (series) de valeur m par défaut - Les autres valeurs sont obtenues par une combinaison - de deux attributs : - - un poids (qui correspond à la graisse de la fonte) : - ul (ultral), el (extral), l (light), sl (semil), sb - (semib), b (bold), eb (extrab), ub (ultrab), - - une largeur : uc (ultrac), ec (extrac), c (condensed), - sc (semic), m (medium), sx (semix), x (expanded), ex - (extrax), ux (ultrax). - -+ une forme (shape) dont la valeur par défaut est n - Autres valeurs : n, it, sl, sc, ui, ol - - La forme correspond aux différents variations - de la fonte : n pour normal, it pour italique, - sl pour penché (slanted), sc pour les petites - capitales (small capital). - -+ une taille (size) qui vaut par défaut 10pt. Lorsque deux -valeurs sont précisées, la première correspond effectivement à -la taille de la fonte et la seconde généralement supérieure -correspond aa la taille de l'interligne. - -# 28.3 # Comment utiliser une fonte ? -------------------------------------- -* Pour déclarer une fonte par défaut dans un document, il -existe les commandes \familydefault, \encodingdefault, -\seriesdefault et \shapedefault. - -Exemple : -\documentclass{report} -\usepackage{french} -\pagestyle{empty} -\renewcommand{\familydefault}{cmtt} - -\begin{document} -\begin{verbatim} -\renewcommand{\familydefault}{cmtt} -\end{verbatim} - -dans le préambule d'un document permet de sélectionner la fonte -computer moderne de type machine à écrire pour tout le corps du -document. -\end{document} -%%%% fin exemple %%%% - -* En LaTeX2e, un certain nombre de packages permettent de faire -appel à une fonte particulière. - -Exemple : -\documentclass{report} -\usepackage{french} -\pagestyle{empty} -\usepackage{times} -\begin{document} -\begin{verbatim} -\usepackage{times} -\end{verbatim} - -dans le préambule d'un document permet de sélectionner la fonte - times pour tout le corps du document. -\end{document} -%%%% fin exemple %%%% - -* A un niveau plus bas, dans la création d'un style par -exemple, la sélection d'une fonte peut se faire de la manière -suivante : -\fontfamily{ccr}\fontencoding{T1}\fontseries{c}\fontshape{sl}% -\fontsize{9}{11pt}\selectfont - -ou encore : - -\fontsize{14}{16pt}\usefont{OT1}{cmdh}{bc}{it} - -* Pour définir une commande de changement de fonte, on peut -utiliser \DeclareFixedFont. - -Exemple : -\DeclareFixedFont{\petitefonte}{\encodingdefault}% -{\familydefault}{\seriesdefault}{\shapedefault}{6pt} -\newcommand{\petit}{\petitefonte} -%%%% fin exemple %%%% - -# 28.4 # Comment changer la forme d'une fonte ? ------------------------------------------------ -* En LaTeX2e, pour un changement ponctuel de fonte, un certain -nombre de commandes sont disponibles par défaut : -+ \textrm pour romain -+ \textsf pour sans sérif -+ \texttt pour du type machine à écrire -+ \textmd pour une série moyenne -+ \textbf pour du gras -+ \textup pour des lettres droites -+ \textit pour de l'italique -+ \textsl pour des lettres penchées -+ \textsc pour des petites capitales -+ \textnormal pour la fonte par défaut du document. - -Exemple : -Un \textbf{bel} arbre. -Un \textbf{\textit{très bel}} arbre. -%%%% fin exemple %%%% - -* Pour changer la fonte de tout un paragraphe, on utilisera -plutôt les commandes \rmfamily, \sffamily, \ttfamily, \bfseries, -\mdseries, \itshape, \slshape, \upshape et \scshape. - -Remarque : si on utilise ces commandes sur un seul mot ou sur - un groupe de mot dans un paragraphe, alors l'espace - suivant une telle déclaration ne sera pas géré (il - vaut mieux dans ce cas utiliser les commandes - \textxx). - -Exemple : -{\scshape BlaBla } -ou -\begin{itshape} - blabla -\end{itshape} -%%%% fin exemple %%%% - -# 28.5 # Comment changer la taille d'une fonte ? ------------------------------------------------- -* Il existe les commandes \tiny, \scriptsize, \footnotesize, -\small, \normalsize, \large, \Large, \LARGE, \huge, \Huge, -classées dans l'ordre croissant de taille. Ces commandes sont -prédéfinies en fonction de la classe de votre document. - -Remarque : Le changement de taille de la fonte entraîne -automatiquement un changement de l'interligne. - -* Plus globalement, vous pouvez utiliser la commande \fontsize -(cf. 28.3). - -# 28.6 # Comment modifier la fonte des numéros de paragraphe ? --------------------------------------------------------------- -Pour modifier la fonte des numéros de paragraphe, il faut -redéfinir seccntformat. - -Exemple (\LaTeXe) : -\makeatletter -\renewcommand\@seccntformat[1]{\texttt{\@nameuse{the#1}\quad}} -\makeatother -%%%% fin exemple %%%% - -# 28.7 # Comment modifier la fonte du mode verbatim ? ------------------------------------------------------ -* Le package 'verbatim' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/packages/tools/ permet de faire cela. Il est alors -conseillé d'utiliser des fontes aux normes T1. - -* L'environnement verbatimcmd du package 'moreverb', disponible -sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/other/misc/, permet de -garder les caractères backslash (\) et les accolades ({, et }) -actifs. On peut donc entre autres opérer des changements de -fonte. - -* Pour changer la taille de la fonte du mode verbatim, il faut -l'encapsuler dans des commandes de modification de taille. - -Exemple : -Texte avant. - -\begin{small} -\begin{verbatim} - Texte... -\end{verbatim} -\end{small} - -Texte après. -%%%% fin exemple %%%% - -# 28.8 # Comment réaliser des changements de fontes relatifs ? --------------------------------------------------------------- -* Le package 'relsize' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/other/misc/ permet de faire ce genre de -choses. Les commandes offertes sont du type : - -+ \relsize{n} permet d'augmenter (n positif) ou de diminuer (n -négatif) la taille de la fonte par rapport à la taille courante. - -Exemple : -Un \relsize{1}texte \relsize{2}de \relsize{3}toutes -\relsize{-1}les \relsize{-4}tailles. -%%%% fin exemple %%%% - -+ \smaller == \relsize{-1} - -+ \larger == \relsize{1} - -+ avec un argument, on trouve : -\textsmaller{text}, \textlarger{text}, \mathsmaller{A}, -\mathlarger{B} -%%%% fin exemple %%%% - -* Le package 'scalefnt' de D. Carlisle disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/carlisle/ permet d'augmenter -ou de diminuer suivant un facteur proportionnel, la taille de -la fonte courante. - -Exemple : -\scalefont{2} double la taille de la fonte courante -\scalefont{.75} réduit de trois quarts la taille de la fonte -courante. -%%%% fin exemple %%%% - -# 28.9 # Comment mettre en évidence une portion de texte ? ----------------------------------------------------------- -Utiliser la commande \emph. Cette commande est définie dans la -classe de votre document, et sert spécifiquement à mettre en -évidence un mot, une expression ou toute une phrase. La plupart -du temps, elle se contente de mettre en italique votre texte. - -# 28.10 # Où trouver des fontes ? ---------------------------------- -Sur CTAN bien sûr, dans ftp://ftp.fdn.org/pub/CTAN/fonts/. - -# 28.11 # Comment suivre le chargement des fontes ? ---------------------------------------------------- -Le package 'tracefnt' permet de suivre le chargement des fontes -lors de la compilation d'un document. Ce package définit -plusieurs options : -+ infoshow pour avoir des informations sur le chargement des -polices, -+ errorshow permet de n'afficher que les erreurs, -etc. - -# 28.12 # Pourquoi MakeTeXPK est lancé alors que la fonte existe ? ------------------------------------------------------------------- -P. Terray : -C'est un problème de mise à jour de la base lié à kpathsea. -Normalement, MakeTeXPK met à jour la base "ls-R" de la TDS, à -chaque ajout de police. Si cette base n'est pas autorisée pour -tout le monde, ou si la variable TEXMF est mal réglée, dvips ou -xdvi ne peuvent pas vérifier que cette police existe. Du coup, -ils lancent MakeTeXPK pour la fabriquer. Et MakeTeXPK sachant -par ailleurs où mettre la police, il vérifie qu'elle existe, et -c'est pour ça qu'il donne le message comme quoi elle existe -déjà. - -Les solutions (UNIX) : -- vérifier que $TEXMF est bien réglée -- ls-R, fichier qui se trouve dans le répertoire texmf, doit -être autorisé en lecture écriture pour tout le monde -- reconstruire la base ls-R avec la commande texhash (tout -court). - -ATTENTION : il faut avoir les droits de gestionnaire -LaTeX (ou root) pour exécuter texhash. - -# 28.13 # Comment utiliser \textsc dans un titre en conservant le gras ? ------------------------------------------------------------------------- -Remarque : les sc grasses n'existent pas dans les fontes de - Knuth. En revanche, elles existent dans les fontes - EC. - -Depuis les dernières modifications dans les fontes EC, la -simple utilisation de ces fontes suffit à activer les -petites capitales grasses. - -# 28.14 # Comment utiliser des fontes TrueType? ------------------------------------------------ - -Une source d'information à ce sujet: -http://www.radamir.com/tex/ttf-tex.htm - -================================================================ -[29] DIVERS -================================================================ - -# 29.1 # A quoi sert la commande \par ? ---------------------------------------- -Elle permet de marquer explicitement la fin d'un paragraphe pour -permettre à LaTeX de le mettre en page. L'utilité de cette -commande se justifie par le fait que LaTeX met en page un texte -par paragraphe. Elle est, le plus souvent, utilisée dans la -définition de macros. - -# 29.2 # Comment commenter une partie d'un source LaTeX ? ---------------------------------------------------------- -* Sous LaTeX2.09, il suffit d'utiliser l'environnement -comment du package 'version'. - -Exemple : -Un paragraphe qui intéresse tout le monde et qui est donc -visible par tout le monde. - -\begin{comment} - Un paragraphe qui n'intéresse que moi et qui n'est visible - que dans le source de mon document. -\end{comment} - -Un autre paragraphe qui intéresse tout le monde. -%%%% fin exemple %%%% - -* Un environnement comment est également défini dans le package -'verbatim' compatible LaTeX2.09 et LaTeX2e. - -* Il est également possible de mettre des parties d'un document -source en commentaire grâce à l'environnement comment défini -dans le package 'comment' de V. Eijkhout. Ce package est -disponible sur ftp://ftp.fdn.org/pub/CTAN/macros/latex209/contrib/misc/. - -* Sous emacs, il y a une commande `comment-region' qui fait ça -très bien. Avec un argument, elle décommente. - -* Classique et de bon goût, l'évaluation conditionnelle permet -de mettre en commentaire sans se soucier de l'imbrication des -accolades, moins puissant cependant que les packages qui créent -un environnement comment: - -Exemple: -\iffalse -Ce passage est en commentaire. -\fi -%%%% fin exemple %%%% - -# 29.3 # Comment utiliser LaTeX sur des petites machines ? ----------------------------------------------------------- -La capacité de TeX est limitée de manière interne. Cela signifie -que ce sont des variables de TeX qui fixent le nombre de -variables (et la taille mémoire) maximal que TeX s'autorisera à -utiliser. Si vous utilisez plus de variables que prévu, TeX -s'arrêtera sur le message d'erreur : - - sorry, TeX capacity exceeded. - -Tout ceci est destiné à << préserver >> votre machine, c'est à -dire à empêcher TeX d'utiliser la totalité de la mémoire de -la machine, ce qui conduit la plupart du temps à un plantage. - -Sur une station, aucun problème, mais sur un micro-ordinateur, -les configurations peuvent-être nombreuses. C'est pourquoi le -TeX fournit en << standard >> sur les macs, par exemple, des -variables fixées assez bas (on suppose que le Mac a une toute -petite mémoire comparée à une station). Mais il existe -également un BigTeX, dont la seule différence avec le TeX -normal est qu'il est autorisé à utiliser plus de mémoire (les -variables en questions ont des valeurs plus importantes). - -Du coup, si votre micro a une configuration plutôt musclée, vous -pouvez compiler des documents plus gros, plus complexes, etc... - -Heureusement Kiffe a changé de stratégie et dans les futures -versions des outils les paramètres internes seront -configurables (en passant par ResEdit) et donc on décidera -soi-même la << bigness >> de son TeX (cf. distributions emTeX -et AsTeX). Pour changer les paramètres de compilation (pool size, -stack, font mem, main mem etc.) cf. fichier -emtex/doc/english/tex.doc, chapitre 6. - -La version 7.0 de web2c est configurable par le fichier -texmf.cnf. - -Remarque : pour un gros document, il peut être utile de le - découper en chapitres à inclure par la commande - \include (cf. paragraphe 9.2 ). - -# 29.4 # Comment visualiser des paramètres ? --------------------------------------------- -Pour visualiser des paramètres spécifiques, il existe : -* \showt\baselinestretch (n'importe où ou presque, donc -affichage des éventuelles modifs, locales ou globales). Ou -pour avoir le résultat à la volée : -\message{Valeur de /baselinestretch = \the\baselinestretch} - -* Il existe aussi la commande \showthe. Celle-ci affiche les -paramètres demandés dans le log. En outre, pendant la -compilation, elle affiche la valeur demandée puis met LaTeX en -attente. Il faut alors taper s ou <RC> pour continuer. - -Exemple : -\documentclass{report} -\usepackage{french} -\pagestyle{empty} -\begin{document} -Texte. -\showthe\baselineskip -Texte. -\end{document} -%%%% fin exemple %%%% - -* Pour afficher une valeur à l'écran lors de la compilation, il -faut utiliser : \message{** Textwidth = \the\textwidth **}. Le -message s'insère alors au milieu des milliers d'autres choses que -LaTeX affiche : bien surveiller ! - -* Il existe également le package 'showkeys' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/package/tools/. Il modifie les commandes -\label, \ref, \pageref, \cite et \bibitem de manière à -visualiser les paramètres internes utilisés. - -* Pour visualiser les paramètres d'une page, il faut utiliser la -commande \layout du package 'layout'. Ce dernier est disponible -sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/packages/tools/. - -* Pour visualiser des labels, il existe le package 'showlabels' -disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/showlabels/. Les noms des labels -utilisés par \label ou par la numérotation automatique des -équations apparaîtront dans la marge du document. Ce package ne -définit pas de commande particulière, il suffit d'appeler -\usepackage{showlabels} dans le préambule du document. Dans le -cas où des packages AMS sont utilisés, showlabels doit être -appelé après. Les options [inner] ou [outer] ou [twocolumn] -permettent de définir dans quelle marge vont apparaître les -labels. - -Remarque : ce package n'est pas compatible avec les styles - multicolonnes ni avec l'option leqno. - -# 29.5 # Comment visualiser des compteurs ? -------------------------------------------- -Pour visualiser la valeur d'un compteur, il suffit de demander -\immediate\write{16}{\the\nomducompteur} -ou -\message{\the\nomducompteur} - -# 29.6 # A quoi servent \makeatletter et \makeatother ? -------------------------------------------------------- -Le caractère "@" est spécial pour LaTeX, et ne peut pas être -utilisé directement comme partie d'un nom de macro dans un -document LaTeX. Pour utiliser certaines macros internes de LaTeX -(celles qui contiennent un "@"), directement dans un document -(au lieu d'utiliser un fichier .sty), il faut les encapsuler -dans une macro dont le nom ne contient pas de "@". En outre, -cette macro doit impérativement être déclarée dans le -préambule du document, et être encadrée par les commandes -\makeatletter et \makeatother. - -En fait ces commandes permettent d'indiquer à LaTeX que l'on -veut effectivement travailler sur ses commandes internes en le -forçant à considérer le "@" (at) comme une lettre -(makeatletter). - -ATTENTION : les commandes internes de LaTeX sont à manipuler - avec précaution. - -# 29.7 # Comment numéroter les lignes d'un document ? ------------------------------------------------------ -* Le package 'lineno' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/lineno/ permet de numéroter les -lignes d'un document. - -* Il existe également le package 'numline' de M. Jaegermann et -J. Fortune, pour du texte essentiellement. Ce package est -disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/numline/. - -* Pour numéroter les lignes d'un document inclu en mode -verbatim, il faut utiliser la commande \listinginput du package -'moreverb' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/moreverb/. - -* Le package 'vruler' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/vrsion/ permet également de -numéroter les lignes d'un document. - -# 29.8 # A quoi sert la commande \special ? -------------------------------------------- -La commande \special permet à TeX d'envoyer des instructions -particulières (non TeX) à un driver sans les interpréter. Les -instructions ainsi passées sont généralement dépendantes du -driver qui lui, saura les interpréter. L'utilisateur n'a en -général pas à se soucier de cette commande (\special), elle est -gérée par des packages tels que 'psfig' pour LaTeX2.09 ou -'graphics' et 'graphicx' pour LaTeX2e. - -Remarque : \includegraphics est standard dans LaTeX2e et - indépendant de la plateforme alors que le format de - \special est dramatiquement dépendant de la - plateforme de travail. Seul, le \includegraphics - préserve l'aspect universel d'un document source et - donc l'esprit universel de TeX. - -# 29.9 # Comment réaliser des calculs avec les variables LaTeX ? ----------------------------------------------------------------- -* Pour pouvoir utiliser des expressions du type \truc * \machin -dans une macro, il faut charger le package 'calc' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/calc/. - -Exemple : -\setcounter{x}{3*\real{1.3}} -%%%% fin exemple %%%% - -* Une autre solution consiste à utiliser les commandes -\addtolength\dim\dim, \divide \dim by \dim, etc. - -* Le package 'realcalc' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/generic/realcalc/ permet de faire des calculs sur des -réels. - -* Plus difficile à utiliser, il y a aussi le package 'trig'. - -# 29.10 # Où trouver une fonte 9pt ? ------------------------------------- -* La classe de document 'amsart' disponible sur CTAN offre -l'option 9pt. - -* De même les classes 'extarticle' et 'extreport' sont -disponibles à -http://www.informatik.uni-freiburg.de/~may/extsizes.html. - -* size9.clo de H. Steffani est disponible à -http://www.tu-chemnitz.de/~hfst/size9.clo. - -# 29.11 # Comment automatiser les compilations LaTeX ? ------------------------------------------------------- -* latexmk est un script perl, disponible sur -ftp://ftp.fdn.org/pub/CTAN/support/latexmk/, qui automatise la compilation d'un document -LaTeX. Il tourne en démon et relance une compilation à -chaque fois qu'un fichier source (.tex, .bib, \input, etc) est -sauvegardé. "latexmk fichier" lance latex/makeindex/bibtex autant -de fois qu'il le faut pour que le dvi soit à jour. - -* latexn disponible sur ftp://ftp.fdn.org/pub/CTAN/support/latexn est un script -csh qui permet également d'automatiser les compilations LaTeX. - -* Le package AUC-TeX sous emacs conseille l'utilisateur sur la -prochaine opération à effectuer (LaTeX, bibtex, makeindex, xdvi, -etc.), en fonction des dépendances entre les différents -fichiers. - -# 29.12 # Comment obtenir des cadres gris ? -------------------------------------------- -* Le package 'shade' disponible sur ftp://ftp.fdn.org/pub/CTAN/macro/generic/ -permet de tracer des cadres gris. - -* Le package 'psboxit', disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex2.09/contrib/misc/, permet d'obtenir du gris ou de -la couleur. - -# 29.13 # Comment obtenir certaines abréviations ? --------------------------------------------------- -* Pour obtenir des abréviations dont certaines lettres doivent -être rehaussées et de taille réduite, on peut utiliser les -indices mathématiques. Mais, ce n'est pas une technique -recommandable. - -Exemple : -M$^{\mathrm{lle}}$ -%%%% fin exemple %%%% - -* Le package 'babel' propose la commande \ieme pour les -quantièmes. - -* Le package 'french' de B. Gaulle, définit la commande \fup -pour écrire une chaîne de caractères en exposant, ainsi que les -commandes \ier \iers \iere \iere \ieme \iemes pour les -quantièmes. - -Exemple : -M\fup{lle} -%%%% fin exemple %%%% - -Remarque : pour que la commande \fup suive les changements de - taille de fonte, il faut utiliser l'une des extensions - prévues à cet effet, à savoir les extensions - "smaller" et "relsize" (\usepackage{smaller,french} - par exemple). Une copie de l'extension smaller est - distribuée depuis 94 avec la distribution des - fichiers du style french (sous le nom mysmall.sty). - En revanche, la surélévation ne tient pas compte de - l'inclinaison de la police. - -* Le package 'smaller' de D. Taupin est disponible par ftp sur -ftp://ftp.lps.u-psud.fr/pub/latex/contrib/smaller.sty. Il -propose également une commande \fup qui définit smaller et -l@rger pour être compris par french.sty. Cette commande gère -l'inclinaison des \sl et des \it. - -ATTENTION : le fup de B. Gaulle étant installé au - \begin{document}, pour utiliser mon \fup modifié - avec french.sty, il faut après le \begin{document} - écrire: - \makeatletter - \let\fup\f@up - \makeatother - -* On peut également définir une nouvelle commande \abbr dans le -préambule du document : -\newcommand{\abbr}[1]{\raisebox{1ex}{\footnotesize #1}} -Cette solution a l'avantage d'éviter d'utiliser le mode -mathématique improprement. - -* Il existe aussi la commande \textsuperscript qui permet -d'obtenir un exposant sans passer en mode mathématique. - -# 29.14 # Comment gérer les espaces après une macro ? ------------------------------------------------------ -* Pour forcer LaTeX à introduire un espace après une macro, il -suffit de faire suivre son appel d'un backslash (\). - -Exemple : -texte \oe\ texte \oe, texte - -texte \oe texte \oe, texte -%%%% fin exemple %%%% - -* Pour que LaTeX gère lui même les espaces, il suffit d'utiliser -systématiquement les caractères {}. - -Exemple : -texte \oe{} texte \oe{}, texte \oe{}uf -%%%% fin exemple %%%% - -* On peut également définir une macro TeX \keepspace : -%%%% debut macro %%%% -\def\keepspace{\ifnum\catcode`\ =10 - \let\next\keepspacebis \else \let\next\relax \fi - \next} -\def \keepspacebis{\obeyspaces - \afterassignment\keepspaceaux\let\next= } -{\obeyspaces% -\gdef\keepspaceaux{% -\ifx \next\space\let\next\ignorespaces\fi% -\catcode`\ =10\relax\next}} -%%%% -%%%% fin macro %%%% -puis l'utiliser dans une autre définition de macro. - -Exemple : -\newcommand{\macro}{\textit{blablabla}\keepspace} -%%%% fin exemple %%%% - -* Le package 'xspace' intègre ces définitions qui lui permette -de gérer automatiquement l'espace après une macro suivant le -contexte. - -Exemple : -\documentclass{report} -\usepackage{french,xspace} -\pagestyle{empty} - -\newcommand{\macro}{aaaaa\xspace} - -\begin{document} -\macro bbbb \macro, bbbb -\end{document} -%%%% fin exemple %%%% - -Remarque : à noter que le package xspace est conforme aux règles - de typographie anglo-saxones donc la gestion des - caractères de ponctuation composés tels que : où ; ne - sera pas correcte en français. La solution consiste - alors à utiliser le blanc insécable qui de toutes - façons est recommandé dans ce cas : \macro~: blabla. - On peut également se créer son propre package - 'fxspace'. - -# 29.15 # Où trouver les notices d'utilisation des packages ? -------------------------------------------------------------- -Généralement la notice d'utilisation d'un package est incluse -dans le package lui même (fichier .dtx). Il suffit alors de -compiler ce fichier. Il existe également le fichier doc -disponible sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/base/ qui décrit comment -exploiter ces notices. - -Si on lance "latex package.dtx" il sera produit le fichier -package.sty ou package.cls correspondant et le fichier -package.dvi de documentation de l'extension. - -# 29.16 # Comment obtenir des listes d'objets flottants ? ---------------------------------------------------------- -Certaines sont disponibles par défaut, il s'agit des listes de -figures et de tables, il suffit alors d'appeler les commandes -\listoffigures et \listoftables. D'autres sont liées à certains -packages. Par exemple, le package 'algorithms' de P. Williams -offre la commande \listofalgorithms. - -Remarque : la mise à jour de ces listes nécessite généralement - plusieurs compilations LaTeX. - -Exemple : -\documentclass{report} -\usepackage{algorithm,algorithmic} - -\begin{document} - -\listofalgorithms - -\chapter{toto} - -\begin{algorithm}[h!tp] - \begin{algorithmic}[2] - \REQUIRE $T_1$ et $T_2$ doivent \^etre des tableaux de - valeurs additionnables, et doivent \^etre de la m\^eme - longueur $n$. \ENSURE $\forall 0\leq k< n \;\; - Result[k]=T_1[k]+T_2[k]$. - \FOR{$i\rightarrow 0$ to $n$} - \STATE $Result[i]\rightarrow T_1[i]+T_2[i]$ - \ENDFOR - \end{algorithmic} - \caption{Somme terme \`a terme de deux tableaux3} - \label{algo-ex-3} -\end{algorithm} -[recopie en trois exemplaires] -\end{document} -%%%% fin exemple %%%% - -# 29.17 # Comment connaître les versions des fichiers utilisés lors d'une compilation ? ---------------------------------------------------------------------------------------- -Il suffit d'utiliser la commande \listfiles. - -Exemple : -\documentclass{report} -\listfiles -\usepackage{french} -\usepackage{graphics} - -\begin{document} - texte ... -\end{document} -%%%% fin exemple %%%% - -# 29.18 # Pourquoi certaines commandes sont elles indépendantes ? ------------------------------------------------------------------ -Les commandes LaTeX de type verbatim sont particulières du fait -qu'elles changent les codes de catégorie de leurs arguments. De -ce fait, elles ne sont plus compatibles avec d'autres commandes -et ne doivent pas être appelées par ces dernières. Certains -caractères spéciaux doivent alors être obtenus par \texttt. - -Exemple : -\texttt{\char`\\} -%%%% fin exemple %%%% - -On peut également utiliser l'environement lrbox de LaTeX2e pour -sauver le texte qui doit apparaître en verbatim dans une boîte -et ensuite utiliser cette boîte. - -# 29.19 # Comment installer un package ? ----------------------------------------- -Lorsqu'il s'agit d'un package conçu pour LaTeX2e et utilisant -les procédures et outils définis dans ce cadre, c'est simple : -un package est fourni avec deux (ou plus, pour les packages plus -complexes) fichiers, package.ins et package.dtx - -Il faut commencer par exécuter "latex package.ins" pour créer -le(s) fichier(s) de commandes lui(eux)-même(s) (typiquement -package.sty) puis "latex package.dtx" pour générer la -documentation, avec si besoin construction d'un index : -makeindex -s gind.ist -o package.ind package.idx, et d'un -glossaire : makeindex -s gglo.ist -o package.gls package.glo. - -Ces fichiers doivent ensuite être déclarés dans une variable -d'environnement afin d'être rendus visibles. - -Exemple (UNIX) : -TEXINPUTS=.:/usr/local/TEX/texmf/tex:/users/ADMIN/NG/LATEX: -/users/home/kluth/Section-equit/Modele -%%%% fin exemple %%%% - -Remarques : -* on ne peut évidemment générer la documentation en premier, -parce qu'elle aura toujours besoin du fichiers des commandes ; -* si l'on ne veut obtenir que la documentation <<utilisateur>>, -il faut ajouter la ligne "\OnlyDescription" dans le fichier -package.dtx, avant la ligne "\DocInput{package.dtx}". Sinon on -obtient aussi le listage commenté du code, ce dont on peut ne -pas vouloir se soucier et qui peut être volumineux pour les -packages importants. - -Néanmoins, il est clair que ce mode d'organisation et de -distribution n'est que le mode encouragé par l'équipe de -développement de LaTeX et n'est en rien une obligation. Un bon -nombre de packages disponibles ne le suit d'ailleurs pas (!), -pour diverses raisons (packages qui se veulent utilisables aussi -bien avec Plain TeX qu'avec LaTeX, << vieux >> packages écrits -pour LaTeX2.09, packages écrits par des personnes qui veulent -faire << comme ça leur plait >>, etc.)... Dans ces différents -cas, il faut << aller y voir de plus près >> pour comprendre -l'organisation choisie. - -C'est justement le cas pour slashbox (!) : un seul fichier .sty -est fourni. Il faut l'éditer pour extraire le fichier de -documentation qui se trouve après la ligne 80 "\endinput". - -*Pour WINDOWS : -1/ copier le fichier package.ins dans un répertoire -temporaire et le compiler avec LaTeX ; -2/ déplacer le fichier package.sty dans un répertoire visible par -LaTeX, soit commun à tous les utilisateurs, soit local, -soit personnel : --- pour fpTeX, ce sont respectivement les répertoires (déclarés à -l'installation de fpTeX) ./texmf/tex/latex/lerepertoiredemonpackage (à -créer si besoin), ./texmf.local/tex/latex/lerepertoiredemonpackage (à créer -si besoin), HOME/texmf/tex/latex/lerepertoiredemonpackage (à créer si -besoin) ; --- pour MikTeX, ce sont les mêmes répertoires mais le répertoire local est -./localtexmf/ et que le HOME ne semble pas être prévu : -[FMF : je ne suis pas sûre de ce dernier point] -3/ reconstruire la base de données des packages (rebuild ls-R filenames -databases pour fpTeX, refresh filename database pour MikTeX). - -# 29.20 # Comment générer des codes barres ? --------------------------------------------- -* Il existe les packages 'ean' et 'code128' disponibles sur -ftp://ftp.fdn.org/pub/CTAN/macros/generic/ean/ et ftp://ftp.fdn.org/pub/CTAN/macros/generic/code128/. - -* De même les packages 'envelopes' et 'labels' sont disponibles -sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/envlab/. - -* On peut également trouver le package 'barcodes' sur -ftp://ftp.fdn.org/pub/CTAN/fonts/barcodes/. - -# 29.21 # Comment gérer des abbréviations ? -------------------------------------------- -* Le package 'abbrevs' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/monster/ permet automatiquement -de remplacer des abbréviations par leur formule développée -notamment lors d'un premier appel. - -* Le package 'acronym' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/acronym/ permet de s'assurer que -tous les acronymes utilisés dans un document apparaissent au -moins une fois sous une forme développée. - -# 29.22 # Comment imprimer un fichier postscript sur une imprimante non postscript ? ------------------------------------------------------------------------------------- -alladin est un excellent programme qui permet d'imprimer du -postscript sur à peu près n'importe quelle imprimante. Cet outil -est disponible par ftp sur ftp://ftp.lip6.fr/pub/ghost/aladdin/. - -Remarque : on ne peut pas dire que ce soit d'une très grande - facilité d'installation, mais une fois que ce mauvais - moment est passé, on ne peut plus s'en passer :-) - -# 29.23 # Comment surcharger une commande déjà existante ? ----------------------------------------------------------- -* Pour pouvoir ajouter des définitions sur une commande -prédéfinie sans la réécrire complètement, il faut utiliser la -commande \let. - -Exemple : -\let\standardsection=\section -\def\section{\newpage\standardsection} -%%%% fin exemple %%%% - -* Il existe aussi la commande expandafter. - -Exemples : -\toks0 \expandafter{\section} -\edef\section{\noexpand\newpage\the\toks0 } - -\expandafter\def\expandafter\section\expandafter{\expandafter% -\newpage\section} -%%%% fin exemple %%%% - -* Le package 'babel' propose également la commande \addto. - -# 29.24 # Comment reporter l'exécution d'une commande à la fin d'une page ? ---------------------------------------------------------------------------- -Il existe pour cela le package 'afterpage' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/packages/tools/. - -Exemple : -\afterpage{\clearpage} -%%%% fin exemple %%%% - -# 29.25 # Comment définir des scripts interactifs ? ---------------------------------------------------- -Le package 'dialogl' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/dialogl/ permet de définir des -scripts LaTeX intéractifs. - -# 29.26 # Comment identifier une version provisoire ? ------------------------------------------------------ -* Le package 'draftcopy' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/draftcopy/ permet par exemple -d'écrire le mot DRAFT en grisé en diagonale sur toutes ou -certaines pages d'un document. Il permet également de faire -moins voyant. - -Exemple : -\documentclass{report} -\usepackage{french} -\usepackage{draftcopy} -\begin{document} -Voici une version provisoire de mon texte. Pourriez-vous la -relire et me faire part de vos commentaires avant la fin de -la semaine? - -Merci d'avance. - -\paragraph{Proposition.} -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire -- -Texte provisoire -- Texte provisoire -- Texte provisoire - -\end{document} -%%%% fin exemple %%%% - -* Le package 'drafthead' également disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex209/contrib/misc/ permet lui de n'agir que sur les -en-têtes des documents. - -* On peut également utiliser la macro : -%%%% debut macro %%%% -\special{ -! userdict begin /bop-hook{ -stroke -gsave 240 100 translate -65 rotate /Times-Roman findfont 220 scalefont setfont -0 0 moveto 0.9 setgray (DRAFT) show grestore -}def end} -dans le préambule de son document. -%%%% fin macro %%%% - -* Le package 'prelim2e' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/prelim2e/ offre également un -marquage des versions préliminaires d'un document. - -# 29.27 # Comment obtenir des caractères barrés ? -------------------------------------------------- -* Le package 'ulem' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/other/misc/ permet de -barrer des caractères. - -Exemple : -\sout{je barre tout} -%%%% fin exemple %%%% - -# 29.28 # A quoi sert la commande \ensuremath ? ------------------------------------------------ -La commande \ensuremath assure que son argument sera imprimé en -mode mathématique quel que soit le mode courant. - -Exemple : -\documentclass{report} -\usepackage{french} -\pagestyle{empty} -\newcommand{\mc}{\ensuremath{(\alpha, \beta)}} -\begin{document} -Le couple \mc\ définit par $\mc = x+y, x-y$, ... -\end{document} -%%%% fin exemple %%%% - -# 29.29 # A quoi servent les commandes \(re)newcommand ? --------------------------------------------------------- -La commande \newcommand permet à l'utilisateur de définir ses -propres commandes. La commande \renewcommand permet de -redéfinir des commandes LaTeX déjà existantes. Elle s'utilise -dans le préambule du document : - \newcommand{nom_commande}[nb_arguments]{définition} -nb_arguments définit le nombre d'arguments de la nouvelle -commande LaTeX. Il est compris entre 0 et 9. Ils sont -référencés par #no_argument dans la définition. - -Exemple : -\documentclass{report} -\usepackage{french} -\pagestyle{empty} -\newcommand{\be}{\begin{enumerate}} -\newcommand{\ee}{\end{enumerate}} -\newcommand{\bold}[1]{\textbf{#1}} -\begin{document} -\bold{Faites votre choix~:} -\be -\item premier choix~: A -\item deuxième choix~: B -\item troisième choix~: C -\ee -\end{document} -%%%% fin exemple %%%% - -Remarques : La commande \providecommand permet de ne prendre en - compte la nouvelle commande que si elle n'existe pas - déjà. - - Pour définir un argument optionnel, on utilise la - syntaxe : - \newcommand{nom}[nb_arg][defaut]{definition} - defaut permet de préciser une valeur par défaut de - la variable qui sera utilisée en l'absence - d'argument. L'argument optionnel ne peut être que - #1. - -# 29.30 # Où trouver des hirondelles ? --------------------------------------- -On peut trouver la package 'cropmark' sur -ftp://ftp.fdn.org/pub/CTAN/macros/generic/. - -# 29.31 # Comment tracer des lignes ? -------------------------------------- -* On peut mettre la définition suivante dans le préambule du -document : -\def\ligne#1{\leaders\hrule height #1\linethickness \hfill} -puis utiliser : -\ligne{5} -dans le texte. - -* Il existe également la commande \rule qui prend en premier -argument, la longueur horizontale du trait et, en deuxième, son -épaisseur. Elle possède également un argument optionnel qui -permet de positionner la ligne traçée par rapport à la ligne -d'écriture. - -Exemple : -\rule[0.5ex]{\textwidth}{0.1mm} -%%%% fin exemple %%%% - -* On peut aussi utiliser les commandes \hrule pour des lignes -horizontales et \vrule pour des lignes verticales. - -# 29.32 # Comment imprimer le caractère ~ ? -------------------------------------------- -* LaTeX2e fournit la commande \textasciitilde sous fonte T1. -Sous OT1, il faut définir -\ProvideTextCommand{\textasciitilde}{OT1}{\~{}}. - -* Il est possible de passer par le mode verbatim via la commande -\verb$~$. - -* On peut aussi définir sa propre commande : -\def\mytilde{\raisebox{-.8ex}{\~~}\hspace{-0.15em}} - -* \~{} permet également d'obtenir un tilde. - -* Une autre solution consiste à utiliser $\sim$. - -* Autre solution, utiliser : \char`\~ - -Remarque : la première solution est de loin la meilleure. - -# 29.33 # Comment visualiser tous les caractères d'une fonte ? --------------------------------------------------------------- -Le plus simple consiste à utiliser : -latex nfssfont -nfssfont.tex est un fichier disponible sur CTAN. - -Il faut ensuite donner le nom de la fonte à examiner par -exemple cmr10 puis construire la table des caractères en -utilisant la commande \table. Cela permet de construire un -fichier .dvi contenant les codes de tous les caractères. - -L'appel d'un symbole se fait alors via la commande \symbol{x} où -x est le code associé au caractère voulu (c'est un entier -compris entre 0 et 255). - -On peut également utiliser \char"<octal> ou \char^^<hexa> -ou encore \char<decimal> mais ces commandes sont moins robustes. - -# 29.34 # A quoi sert % dans les macros ? ------------------------------------------ -Le % en fin de ligne d'une macro permet d'indiquer à LaTeX que -la définition qu'il est en train de lire continue à la ligne -suivante. De manière générale, les espaces après une macro sont -ignorés, mais pas après les accolades. Ce caractère permet de -s'assurer que des espaces non voulus ne seront pas pris en -compte. Ainsi, il est prudent de mettre un % après chaque -accolade qui se trouve en fin de ligne. - -# 29.35 # Comment inclure l'heure dans un document ? ----------------------------------------------------- -* La macro décrite ci-dessous, à inclure dans le préambule de -votre document, définit la commande \timenow : - -%%%% debut macro %%%% -\makeatletter -\def\timenow{\@tempcnta\time - \@tempcntb\@tempcnta - \divide\@tempcntb60 - \ifnum10>\@tempcntb0\fi\number\@tempcntb - \multiply\@tempcntb60 - \advance\@tempcnta-\@tempcntb - :\ifnum10>\@tempcnta0\fi\number\@tempcnta} -\makeatother -%%%% fin macro %%%% - -* Le package 'time' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/generic/time.sty permet d'inclure l'heure courante -dans un document. - -* En ajoutant la macro suivante de H. Hanche-Olsen dans le -préambule de son document, on peut via la commande -%%%% debut macro %%%% -\isodayandtime obtenir la date et l'heure courante : -\begingroup -\count0=\time \divide\count0by60 % Hour -\count2=\count0 \multiply\count2by-60 \advance\count2by\time -% Min -\def\2#1{\ifnum#1<10 0\fi\the#1} -\xdef\isodayandtime{\the\year-\2\month-\2\day\space\2{\count0}:% -\2{\count2}} -\endgroup -%%%% fin macro %%%% - -Autre exemple d'utilisation (qui nécessite dvips) : -%%%% debut macro %%%% -\special{!userdict begin /bop-hook - {gsave -90 rotate -780 560 moveto 1.0 0.7 0.7 setrgbcolor - % 0.8 setgray - 106 45 {dup mul exch dup mul add 1.0 exch sub} setscreen - /Times-Roman findfont 25 scalefont setfont (DRAFT - \isodayandtime) show grestore} def} -%%%% fin macro %%%% - -* On peut également utiliser la macro \time qui donne l'heure -en minutes. Pour afficher l'heure en heures et minutes, il faut -les calculer puis les afficher avec la macro \the. - -Exemple 1 : -\documentclass{article} -\usepackage{french} -\pagestyle{empty} -\begin{document} -Cette compilation a démarré à \the\time\ minutes après minuit -le \today. -\end{document} -%%%% fin exemple %%%% - -Exemple 2 : -\usepackage{calc} -\newcounter{hours}\newcounter{minutes} -\newcommand{\printtime}{% - \setcounter{hours}{\time/60}% - \setcounter{minutes}{\time-\value{hours}*60}% - \thehours :\theminutes} -%%%% fin exemple %%%% - -* Il existe également le package 'heure' de T. Bouche donné -ci-dessous : -%%%% debut macro %%%% -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{heure} -[1996/6/11v0.1 affiche le jour et l'heure de production d'un -document] -\newif\if@heure@fin\@heure@finfalse -\newif\if@heure@final\@heure@finalfalse -\DeclareOption{fin}{\@heure@fintrue} -\DeclareOption{final}{\@heure@finaltrue} -\DeclareOption{draft}{} -\ProcessOptions -%%% définition de hours prise dans testfont -\newcount\m \newcount\n -\def\hours{\n=\time \divide\n 60 - \m=-\n \multiply\m 60 \advance\m \time - \twodigits\n\ :\ \twodigits\m} -\def\twodigits#1{\ifnum #1<10 0\fi \number#1} -%%%%%%% Tant que ça n'est pas définitif. -\if@heure@final\else -\AtBeginDocument{\begin{center}% - {\bfseries\itshape\large Version du \today\ à \hours }% -\end{center}} -\fi -\if@heure@fin -\AtEndDocument{% - \begin{flushright}% - \small \itshape (Le \today\ à \hours )\hspace*{3em}% - \end{flushright}} -\fi -\endinput -%%%% fin macro %%%% - -Utilisation : -Il suffit de passer fin, final ou draft en option de classe. - -Exemple 1 : -\documentclass[11pt,draft]{article} -\usepackage{heure} - -\begin{document} -Voici le résumé de notre expérience avec le Brome~: - -Bla bla bla. -\end{document} -%%%% fin exemple %%%% - -Exemple 2 : -\documentclass[11pt,fin]{article} -\usepackage{heure} - -\begin{document} -Voici le résumé de notre expérience avec le Brome~: - -Bla bla bla. -\end{document} -%%%% fin exemple %%%% - -Exemple 3 : -\documentclass[11pt,final]{article} -\usepackage{heure} - -\begin{document} -Voici le résumé de notre expérience avec le Brome~: - -Bla bla bla. -\end{document} -%%%% fin exemple %%%% - -# 29.36 # Comment compter le nombre de mots d'un fichier ? ----------------------------------------------------------- -A priori, il n'y a pas de solution simple à ce problème : -* A partir du fichier source .tex, il faut enlever toutes les -commandes LaTeX avec un utilitaire tel que detex (disponible sur -ftp://ftp.fdn.org/pub/CTAN/support/detex/) puis utiliser un autre utilitaire tel -que wc sous UNIX. - -* On peut également travailler à partir du fichier .dvi en -appliquant dvitty (ou dvi2tty). - -ATTENTION : aucune de ces méthodes n'est idéale comme l'indique - l'essai comparatif de T. Bouche : - detex -i grfguide.tex | wc -w donne 4420 - dvitty grfguide.dvi |wc -w donne 4524 - wc -w grfguide.tex donne 4539 - ps2ascii grfguide.ps |wc -w donne 5066 - -# 29.37 # Comment rendre inactif un caractère ? ------------------------------------------------ -La commande \string permet de désactiver un caractère rendu -actif par une macro. - -Exemple : -En français le : est rendu actif pour que \LaTeX gère lui-même -l'espace à mettre avant. En revanche, dans une URL ou une -adresse mail cet espace est superflu. On utilise donc : -mailto\string:moi.meme@chez.mon.site -%%%% fin exemple %%%% - -# 29.38 # Comment utiliser le mode verbatim dans une commande ? ---------------------------------------------------------------- -LaTeX2e fournit l'environnement lrbox. - -Exemple : -\documentclass{article} -\usepackage{alltt} -\pagestyle{empty} - -% --------------- -\newsavebox{\inverbatim} -\begin{lrbox}{\inverbatim}% -\noindent\begin{minipage}{\linewidth} -\begin{alltt} - 1 - -8 + 7 Sqrt[2] ArcTanh[-------] - Sqrt[2] -\end{alltt} -\end{minipage}% -\end{lrbox}% box -% ------------------------------------ - -\begin{document} -\noindent -L'expression : \usebox{\inverbatim} démontrée au paragraphe -précédent prend ici tout son sens. - -En effet l'expression \usebox{\inverbatim} permet\ldots -\end{document} -%%%% fin exemple %%%% - -# 29.39 # Comment redéfinir la commande \year ? ------------------------------------------------ -Pour ne faire apparaître que deux chiffres au lieu de quatre, il -faut utiliser : -\newcommand{\ignoretwo}[2]{} -\newcommand{\shortyear}{\expandafter\ignoretwo\the\year} -dans le préambule du document. - -# 29.40 # Qu'est ce que la magnification ? ------------------------------------------- -* La commande magnification permet de faire un zoom d'un -document. - -Exemple : -\mag=1440 -\documentclass{...} -%%%% fin exemple %%%% - -* On peut également travailler sur le fichier postscript via -dvips avec l'option -x nombre où nombre vaut par exemple 1200 -pour un agrandissement de 20%. - -* De la même manière, le package 'scale' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/scale/ permet de modifier -l'échelle d'un document avant impression. - -# 29.41 # Comment sont gérés les postscripts dans LaTeX ? ---------------------------------------------------------- -P. Perichon : -TeX/LaTeX + DVIPS procèdent en 2 temps : -* Lorsque l'on a une figure PostScript (EPS : Encapsulated -PostScrit), on met les commandes nécessaires dans son source -(fichier .tex) pour dire à TeX/LaTeX que l'on veut cette figure -à telle place dans son document avec telles dimensions (en -incluant la bonne extension : graphicx, psfig, epsfig) . - -Lors de la phase d'interprétation du code TeX/LaTeX, -l'interprète TeX/LaTeX va seulement consulter dans le fichier -externe contenant la figure les dimensions/proportions de -l'image (les fameuses bounding box chères au PostScript -Encapsulé). - -En fin de course, dans le fichier DVI on aura le nom et les -dimensions de l'image mais PAS CELLE-CI (qui est toujours -externe). Donc si on visualise juste le fichier DVI, on voit -l'emplacement de l'image mais pas cette dernière (en particulier -la commande \psdraft génère un cadre genre \fbox{...} aux -dimensions de l'image à l'emplacement de celle-ci). - -* Dans un deuxième temps, la commande DVIPS, transformera le -fichier DVI en PostScript et incluera à ce moment les fichiers -images EPS. Donc si on visualise/imprime le fichier PostScript, -on voit le texte et les images. - -* Toutefois, certains visualiseurs DVI, par exemple XDVI sous -UNIX pour ne pas le citer, détectent quelque chose du genre : - PSfile="toto.eps" llx=0 lly=-1 urx=57 ury=29 rwi=4252 -dans le fichier DVI, et appellent gentiment GostScript/GhostView -qui vont préparer une image bitmap que le visualiseur DVI -s'empressera de montrer (quand ça marche : avec psfig.sty pas de -problème, mais avec l'extension graphicx...). Mais d'autres -visualiseurs, comme DVIWIN, ne savent pas que faire d'un fichier -PS. - -DVI signifie DeVice Independent : ceci est un format de document -indépendant du système d'impression. Donc non lié à un langage -de description de page utilisé en interne par une quelconque -imprimante (PostScript, PCL, HPGL, Windows GDI, ...). Il suffit -après d'utiliser un convertisseur qui transforme le DVI en -quelque chose que comprend votre imprimante (PostScript, HPGL, -PCL, ...). Cette méthode permet d'imprimer sur n'importe quel -type d'imprimante (il suffit d'avoir le bon convertisseur). Mais -hélas en DVI, il n'a point été prévu d'y mettre une image (le -problème n'est en effet pas simple). D'où l'utilisation de fichier -EPS. - -# 29.42 # Pourquoi LaTeX n'accepte-t'il pas tous les formats d'image ? ----------------------------------------------------------------------- -P. Perichon : -Le problème est le suivant : un fichier DVI + image TIFF, GIF, -TGA,... comment faire digérer tout ça par votre imprimante ???? -Le fichier DVI peut se faire convertir en un langage -d'impression compréhensible par votre imprimante... mais vos -formats d'images... faudrait-il en plus prévoir un système de -conversion de TIFF, GIF, TGA, ... vers le langage d'impression -de votre imprimante (Alladin avec GhostScript/GhostView propose -quelques filtres, mais bon). A part quelques langages de -description de pages comme PostScript et un ou deux autres qui -pratiquent une compatibilité ascendante quant aux versions du -langage qu'ils utilisent, les autres fabricants d'imprimantes -changent de langage quasiment à chaque modèle ou série -d'imprimante (impossible de tenir à jour autant de -convertisseurs). - -Pour tout cela le langage PostScript (PS et EPS) nous rend -grandement service en nous simplifiant la vie (et pour d'autres -raisons aussi). C'est peut-être un peu plus lourd à manipuler, -mais plus simple pour tout le monde de convertir vos images en -EPS. De plus, si vous ne disposez pas d'imprimante PostScript, -GhostScript/GhostView se chargera d'interpréter le fichier PS -(texte + images), fabriquera une bitmap à la bonne résolution et -pourra l'envoyer à votre imprimante via votre pilote -d'impression. Tout cela automatisé dans une bonne distribution -est transparent à l'utilisateur. - -Pour plus de détails, consulter le grfguide disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/packages/graphics/ et le document epslatex -disponible sur ftp://ftp.fdn.org/pub/CTAN/info/. - -# 29.43 # A quoi sert la commande \(re)newenvironment ? -------------------------------------------------------- -Les commandes \newenvironment et \renewenvironment permettent de -définir des actions qui seront appliquées entre les commandes -\begin{mon_environnement} et \end{mon_environnement}. Ces -commandes doivent être appelées dans le préambule du document -suivant la syntaxe : - \newenvironment{nom}[nb_arg]{avant}{après} -avant et après sont les actions qui auront lieu à l'entrée et à -la sortie du nouvel environnement. - -Exemple : -\documentclass{report} -\usepackage{french} - -\newenvironment{Relief}[1] -{\mbox{\Large{\uppercase{#1}}}} - -\begin{document} -\begin{Relief} - {Il}~était une fois~\ldots -\end{Relief} -\begin{Relief} - {U}n jour peut être~\ldots -\end{Relief} -%%%% fin exemple %%%% - -# 29.44 # Comment récupérer le nom du fichier compilé ? -------------------------------------------------------- -Pour récupérer le nom du fichier compilé et l'afficher lors -d'une compilation, il faut utiliser la commande \jobname. - -Exemple : -Le fichier source est \texttt{\jobname.tex}. -%%%% fin exemple %%%% - -# 29.45 # Comment gérer des conditions de traitement dans un style ? --------------------------------------------------------------------- -Le package 'ifthen' disponible sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/base/ -permet d'implémenter des traitements conditionnels tels que -\ifthenelse et \whiledo. - -# 29.46 # A quoi servent les commandes \setlength et \addtolength ? -------------------------------------------------------------------- -Ces deux commandes permettent de modifier la longueur de -certains paramètres. - -Exemples : -+ \setlength{nom_parametre}{longueur} -+ \addtolength{nom_parametre}{longueur} -%%%% fin exemple %%%% - -# 29.47 # Quelles sont les unités de mesure de TeX ? ----------------------------------------------------- -TeX comprend six unités de mesure : -+ pt point = 0,35 mm -+ mm millimètre -+ ex correspond à la hauteur d'un x dans la fonte courante -+ em correspond à la largeur d'un m dans la fonte courante -+ cm centimètre -+ in pouce = 2,54 cm - -# 29.48 # A quoi sert la commande \mbox ? ------------------------------------------ -La commande \mbox permet à LaTeX de considérer son argument -comme une seule entité. Elle peut ainsi empêcher la coupure -d'un mot ou d'un groupe de mots. - -Exemple : -Mon numéro de téléphone est le~\mbox{01 69 63 12 68}. -%%%% fin exemple %%%% - -# 29.49 # Comment obtenir des points de suspension ? ----------------------------------------------------- -La commande \ldots permet d'obtenir trois points de suspension -espacés correctement. - -# 29.50 # Comment désactiver une ligature ? -------------------------------------------- -Pour désactiver une ligature, il faut introduire {} ou une -\mbox{} entre les lettres ligaturées. - -Exemple : -comparez effacer, ef{}facer et ef\mbox{}facer -%%%% fin exemple %%%% - -# 29.51 # Comment gérer les versions d'un document ? ----------------------------------------------------- -* Pour les versions provisoires, voir la question 29.26. - -* Il existe le package 'vrsion' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/vrsion/ qui permet via la -commande \version d'inclure un numéro de version dans un -document LaTeX. Ce numéro est incrémenté à chaque compilation. - -* On peut également se reporter à la question 29.35 pour inclure -le jour et l'heure de compilation dans un document. - -# 29.52 # Comment changer certains titres ? -------------------------------------------- -Il suffit de renommer les variables suivantes : - \def\refname{R\'ef\'erences}% - \def\abstractname{R\'esum\'e}% - \def\bibname{Bibliographie}% - \def\prefacename{Pr\'eface}% - \def\chaptername{Chapitre}% - \def\appendixname{Annexe}% - \def\contentsname{Table des mati\`eres}% - \def\listfigurename{Table des figures}% - \def\listtablename{Liste des tableaux}% - \def\indexname{Index}% - \def\figurename{{\scshape Fig.}}% - \def\tablename{{\scshape Tab.}}% - \def\partname{\protect\@Fpt partie}% - \def\@Fpt{{\ifcase\value{part}\or Premi\`ere\or Deuxi\`eme\or - Troisi\`eme\or Quatri\`eme\or Cinqui\`eme\or Sixi\`eme\or - Septi\`eme\or Huiti\`eme\or Neuvi\`eme\or Dixi\`eme\or - Onzi\`eme\or Douzi\`eme\or Treizi\`eme\or Quatorzi\`eme\or - Quinzi\`eme\or Seizi\`eme\or Dix-septi\`eme\or - Dix-huiti\`eme\or Dix-neuvi\`eme\or Vingti\`eme\fi}}% - \space\def\thepart{}}% - \def\pagename{page}% - \def\seename{{\emph{voir}}}% - \def\alsoname{{\emph{voir aussi}}}% - \def\enclname{P.~J. }% - \def\ccname{Copie \`a }% - \def\headtoname{}% - \def\proofname{D\'emonstration}% for AMS-LaTeX - -Remarque : lorsque certains changements de noms sont déjà gérés - par un package (french par exemple) il faut placer - les définitions ci-dessus après le \begin{document}. - -# 29.53 # Comment insérer un code source dans un document ? ------------------------------------------------------------ -* Le package 'listings' disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/latex/contrib/supported/listings/ permet de gérer la -mise en page de code source avec notamment la mise en relief de -mots clés. - -* La distribution GUTenberg contient un package du nom de -'lgrind' (executable+lgrind.sty) qui, entre autres (C, C++, -Pascal, BASIC, Modula-2, Fortran, RATFOR, Yacc, PostScript, -Prolog, MLisp, Icon, LaTeX, Perl, CSH, Bourne Shell, assembler, -68000 assembler, asm68, VMS assembler, ISP, LDL, Linda, MODEL, -MatLab, Russell), formatte du code C++ en LaTeX. Ce programme -disponible sur CTAN permet à partir de code source C de générer -du code LaTeX respectant l'indentation. Ce package est également -disponible sur ftp://ftp.fdn.org/pub/CTAN/support/lgrind/. - -* wflman disponible par ftp sur -ftp://ftp.keck.hawaii.edu/pub/wlupton/wflman-2.2.2.tar.gz -peut aussi être utile. - -* Il existe également DOC++ qui peut créer une documentation -HTML ou LaTeX à partir des infos ajoutées dans les commentaires -du code C++. Pour plus de détails, voir : -http://www.ZIB-Berlin.DE/VisPar/doc++/doc++.html - -* Le package 'tgrind', qui vient avec un .sty et une moulinette -permet de transformer un .c en .tex - -* Le package 'c++2latex' sous license GNU est capable de -convertir des fichiers C, C++ et JAVA en LaTeX2e. Les lignes -peuvent être numérotées. - -* Le package 'cprog' disponible sur CTAN permet de formater des -programmes C en TeX. - -* Le package 'c2ltx', de M. Plugge -(plugge@biv7.sr.fh-mannheim.de), appartient à la famille de -convertisseurs cvt2ltx. Il numérote les lignes, traduit != en -$\neq$ , gère les commentaires, les en-têtes de procédures, etc. -Il supporte plusieurs fichiers d'entrée et gère automatiquement -les changements de section et la génération d'index. Une -documentation est disponible par ftp sur -ftp://axp3.sr.fh-mannheim.de/cvt2latex/cvt2ltx.zip. -Ce package sera bientôt disponible sur CTAN. -AL: il y est, peut être, non ? - -# 29.54 # Comment tracer une ligne horizontale ? ------------------------------------------------- -* Pour obtenir une ligne centrée par rapport à la mi-hauteur au -dessus de la ligne d'écriture, on peut utiliser ceci : -\hbox{\raisebox{0.4em}{\vrule depth 0pt height 0.4pt width 1cm} -Toto} - -# 29.55 # Comment générer un espace invisible de taille donnée ? ----------------------------------------------------------------- -Il existe pour cela la commande \phantom. Celle-ci génère un -espace invisible de la même longueur que son argument. - -Exemple : -Complète les mots qui manquent dans le texte suivant~: - -Le petit chaperon \phantom{rouge} se promène~\ldots. -%%%% fin exemple %%%% - -# 29.56 # Qu'est ce qu'une correction italique ? ------------------------------------------------- -Pour que LaTeX puisse gérer correctement le passage d'une fonte -italique à une fonte droite, il peut être utile d'utiliser la -commande \/. Cela permet d'augmenter légèrement l'espace qui -sépare la dernière lettre en italique, de la première lettre -droite. - -Exemple : -Un \textit{cheval}\/ file au galop. -%%%% fin exemple %%%% - -# 29.57 # Quels sont les accents accessibles sous LaTeX ? ---------------------------------------------------------- -Les accents accessibles sous LaTeX sont les suivants : -+ \`{a} ou \`a accent grave -+ \'{e} ou \'e accent aigu -+ \^{i} ou \^i accent circonflexe -+ \"{o} ou \"o trema -+ \~{u} ou \~u tilde -+ \={o} ou \=o surligné -+ \.{o} ou \.o point -+ \u{o} -+ \v{o} -+ \H{o} trema hongrois -+ \t{oo} -+ \c{c} cédille -+ \d{o} point en dessous -+ \b{o} sousligné - -# 29.58 # Comment écrire dans un fichier pendant une compilation ? ------------------------------------------------------------------- -* On dispose pour cela des commandes \write et \newwrite. - -Exemple : -\newwrite\test -\openout\test=toto -\write\test{Je m'appelle Paul} -\write\test{\noexpand\thesection} -\closeout\test -\bye -%%%% fin exemple %%%% - -Remarque : \noexpand permet d'inclure des commandes LaTeX sans - qu'elles soient interprêtées. - -* Le package 'french' propose la commande -\originaloutput[fichier]{texte} pour écrire le "texte", tel -qu'il est fourni, dans le "fichier". Dans ce cas, les caracteres -actifs de french sont automatiquement desactivés. C'est donc -l'equivalent de \immediate\write\fichier{texte}. - -* Le package 'sverb' disponible sur CTAN propose -l'environnement verbwrite. - -Exemple : -\begin{verbwrite}{fichier.tmp} - Ce texte va être sauvé dans le fichier fichier.tmp. -\end{verbwrite} -%%%% fin exemple %%%% - -# 29.59 # Comment gérer des compteurs ? ---------------------------------------- -Un certain nombre de compteurs sont prédéfinis dans LaTeX, il -s'agit : -+ des compteurs de structuration du document : part, chapter, -section, subsection, subsubsection, paragraph, subparagraph, -+ du compteur de page, -+ du compteur d'équation, -+ du compteur de figure, -+ du compteur de tables, -+ des compteur de notes : footnote et mpfootnote, -+ et des compteurs de liste : enumi, enumii, enumiii et enumiv. - -Pour définir son propre compteur, il faut utiliser la commande -\newcounter{nv_cptr}[ref_cptr]. Lorsque qu'un compteur déjà -existant est passé en argument (ref_cptr), le nouveau compteur -nv_cptr sera réinitialisé à chaque incrément (via \stepcounter -ou \refstepcounter) du compteur ref_cptr. - -Par défaut, la valeur d'un nouveau compteur est 0. La commande -\setcounter{cptr}{val} permet de lui donner une autre valeur. On -peut également incrémenter la valeur d'un compteur via la -commande \addtocounter{cptr}{val}. La valeur d'un compteur peut -être récupérée, dans un calcul par exemple, grâce à la commande -\value{cptr}. - -\stepcounter{cptr} permet d'incrémenter le compteur cptr et de -réinitialiser tous les compteurs liés par référence (argument -ref_cptr de la commande \newcounter). La commande -\refstepcounter{cptr} permet en outre de mettre à jour la valeur -courante du compteur qui pourrait être appelé par un \ref. - -\thecptr, où cptr est le nom d'un compteur, permet d'afficher sa -valeur. - -Exemple : -\newcounter{section} -\newcounter{subsection}[section] -%%%% fin exemple %%%% - -# 29.60 # Quels sont les différents styles de compteurs ? ---------------------------------------------------------- -Il en existe six prédéfinis : -+ \arabic{cptr} pour un nombre arabe, -+ \roman{cptr} pour un nombre romain minuscule, -+ \Roman{cptr} pour un nombre romain majuscule, -+ \alph{cptr} pour une lettre minuscule, -+ \Alph{cptr} pour une lettre majuscule, -+ \fnsymbol{cptr} pour un symbole. - -Exemple : -\renewcommand{\thesection}{\Roman{section}} -\renewcommand{\thesubsection}{\thesection.\roman{subsection}} -%%%% fin exemple %%%% - -# 29.61 # Comment programmer un traitement itératif ? ------------------------------------------------------ -Le package 'multido' propose une commande \multido qui est une -boucle TeX. Sa syntaxe est la suivante : - \multido{variables}{nbiteration}{code} -Le code sera ainsi répété nbiteration fois. Les déclarations de -variables sont séparées par des virgules. Un déclaration prend -la forme : - variable = valeurinitiale + increment -Elle est utile notamment pour le dessin de figures. - -Exemple (doc package) : -\setlength{\unitlength}{1cm} -\small -\begin{picture}(8,1)(0,-.5) - \put(0,0){\vector(1,0){8}} - \multido{\i=0+1, \n=0+0.25}{8}{% - \put(\i,-.1){\line(0,1){.2}} - \put(\i,-.2){\makebox(0,0)[t]{\n}}} -\end{picture} -%%%% fin exemple %%%% - -# 29.62 # A quoi servent les commandes savebox ? ------------------------------------------------- -Il existe les commandes : -+ \newsavebox{ma_boite} pour déclarer une boîte -+ \sbox{ma_boite}{contenu} pour remplir ma_boite -+ \savebox{ma_boite}[lagr][pos]{contenu} pour remplir une -boîte de largeur lagr et de position pos -+ \usebox{ma_boite} pour appeler le contenu de ma_boite -+ lrbox est l'environnement équivalent à sbox - -Exemple : -\newsavebox{\maboite} -\sbox{\maboite}{\textbf{Alcatel Alsthom Recherche}} -\usebox{maboite} se situe à Marcoussis. Je travaille à -\usebox{maboite} depuis~\ldots... -%%%% fin exemple %%%% - -# 29.63 # Comment résoudre certaines incompatibilités de packages ? -------------------------------------------------------------------- -Il arrive parfois lorsque plusieurs packages sont utilisés -simultanément que des macros différentes portent le même nom, ou -que certaines macros perturbent le fonctionnement d'autres -macros. Dans certains cas le problème peut se résoudre en -changeant l'ordre d'appel des packages. - -Exemple (J.P. Drucbert) : -Le paquetage psboxit définit des commandes \psboxit qui -engendrent \special{ps: ...}. Le problème vient de ce -deux-points. Si vous chargez psboxit.sty AVANT babel (option -french), pas de problème, le deux-points est un caractère -ordinaire (other) lors de la déclaration de la macro \psboxit et -donc le \special écrira bien un ":". - -Par contre si psboxit.sty est chargé APRES babel (option -french), le deux-points est alors un caractère actif au moment -de la déclaration de la macro \psboxit, et le \special n'écrira -pas un deux-points, mais un espace insécable (en fait une macro -interne de babel) et un :, d'où les erreurs. C'est un cas -classique de catcodes pas très bien gérés (en fait psboxit.sty -devrait sauver le catcode de : , donner la catégorie other au -caractère :, définir \psboxit, puis restaurer le catcode). -%%%% fin exemple %%%% - -# 29.64 # Qu'est ce que Lollipop ? ----------------------------------- -C'est un jeu de macro de V. Eijkhout, destiné à faciliter -l'écriture de macros TeX. Il est disponible sur -ftp://ftp.fdn.org/pub/CTAN/macros/lollipop/. - -# 29.65 # J'ai un problème avec babel ! ---------------------------------------- -En tentant d'utiliser babel, j'obtiens l'erreur suivante: - -! Undefined control sequence. -\add@accent ...l \mathchardef \accent@spacefactor - \spacefactor }\accent #1 #... -l.3 \begin{document} - -Le problème est connu et a été corrigé par babel le 19 août 1999. Si vous ne -pouvez pas mettre à jour votre paquetage de babel, utilisez le cache-bogue -suivant, à mettre dans le préambule (donation de Javier Bezos): - -\makeatletter -\let\accent@spacefactor\relax -\makeatother - -Vous pouvez également ajouter la ligne suivante dans vos entêtes: -\usepackage{t1enc} - -En effet, le problème ne se manifeste pas en codage T1. - -# 29.66 # Qu'est ce que cette FAQ ? ------------------------------------ -- quelques 660 url, dont: - - plus de 390 url sur ctan; - - et quelques 270 url externes; -- quelques litres de café; -- beaucoup de sueur; -- de nombreux CDs usés. -================================================================ -[30] REMERCIEMENTS ET CONTRIBUTIONS -================================================================ - -Je [mpk] remercie vivement les personnes qui ont contribué de près -ou de loin à l'élaboration de cette FAQ. Je remercie également -les personnes qui me soutiennent et m'encouragent. - -Je [bb] tiens à remercier les personnes qui m'ont envoyé des patchs -ou des correctifs sur cette faq, et qui ont à vrai dire beaucoup -plus travaillé que moi. - -La liste des contributions ci-après se veut aussi complète que -possible. Si vous avez été oublié, n'hésitez pas à me contacter. - -Contributions [ depuis le 15/07/99 ] -- Arnaud Launay -- Antoine Chambert-Loir -- Maurice Diamantini -- Philippe Pham -- Frédéric Petit -- Jean-Dominique Orvoen -- Éric Depardieu -- Benoît Rivet -- Nadine Manset -- Nicolas Corréard -- Denis Roegel -- Julien Mudry -- François Lesage -- Vincent Lefèvre -- Jean Dezert -- Stéphane Pion -- Jean-Baptiste Marchand -- André Allavena - --- -Benjamin Bayart -bayartb@edgard.fdn.fr |