Outils pour utilisateurs

Outils du site


issue214:latex

Once again we will venture into the world of Latex. For those who are new to this series, in each issue I explore another facet of Latex, one of the offshoots of a remarkable, freely available, open source, typesetting software package called Tex. Developed and written by Stanford University professor Donald Knuth, it was released in 1978. Professor Knuth wanted to have a typesetting program which would print his documents with the same look no matter what operating system was used. This was imperative in mathematics and computer science - which uses complex and complicated formulas. Tex has been expanded since 1978 to make it possible for anyone to produce well designed, high quality, books (either printed or electronic) with minimal knowledge of typesetting. Tex documents look the same not only independent of operating systems but also independent of when they are generated. In the 1970s and 1980s memory and storage were both expensive. Tex was designed to be modular so the user only loaded into memory the modules needed for one particular document. For example, if a document does not have a table, then do not load the table module. Typesetting instructions always start with a backslash followed by a keyword. The keyword may have options which are surrounded by square brackets and/or content which is surrounded by curly brackets. Latex is a document production system which uses Tex as its base. It may be the most popular document production system based on Tex but there are others including PdfTex, XeTex, and Luatex. Each system has its own supporters, its own strengths and weaknesses. Some macros (packages) are usable in only one or more systems, some macros work in all.

Nous allons à nouveau nous aventurer dans le monde de LaTeX. Pour ceux qui ne connaissent pas cette série, dans chaque numéro, j'explore une autre facette de LaTeX, l'une des ramifications d'un remarquable logiciel de composition typographique, disponible gratuitement et en Open Source, appelé TeX. Développé et écrit par le professeur de l'Université de Stanford Donald Knuth, il a été publié en 1978. Le professeur Knuth souhaitait avoir un programme de composition typographique qui imprimerait ses documents avec le même aspect quel que soit le système d'exploitation utilisé. C'était impératif en mathématiques et en informatique, qui utilisent des formules complexes et compliquées. TeX a été étendu depuis 1978 pour permettre à quiconque de produire des livres bien conçus et de haute qualité (imprimés ou électroniques) avec un minimum de connaissances en composition typographique. Les documents TeX ont la même apparence,non seulement indépendamment du système d'exploitation, mais aussi indépendamment du moment où ils sont générés. Dans les années 1970 et 1980, la mémoire et le stockage étaient tous deux coûteux. TeX a été conçu pour être modulaire, de sorte que l'utilisateur ne chargeait en mémoire que les modules nécessaires à un document particulier. Par exemple, si un document ne contient pas de tableau, ne chargez pas le module table.

Les instructions de composition commencent toujours par une barre oblique inverse suivie d'un mot-clé. Le mot-clé peut avoir des options entourées de crochets et/ou un contenu entouré d'accolades. LaTeX est un système de production de documents qui utilise Tex comme base. Il s'agit peut-être du système de production de documents le plus populaire basé sur TeX, mais il en existe d'autres, notamment PdfTeX, XeTeX et LuaTeX. Chaque système a ses propres partisans, ses propres forces et faiblesses. Certaines macros (paquets) ne sont utilisables que dans un ou plusieurs systèmes, d'autres macros fonctionnent dans tous.

This time, we will explore a few more of the many packages available at ctan.org. (CTAN is the Comprehensive TeX Archive Network). CTAN is also the web home base for the international TUG: TeX Users Group. I encourage all users of LaTeX to become members of TUG if possible. I have worked my way through the alphabetical list of topics to “F”. The number of packages that start with F is enormous. I picked just a few for this issue. The first one I will explore this time is fancyhdr, developed in 1994 and last revised in 2025 January. The user manual is 131 pages in English, it is also available in Italian. There are “training slides” available in German. It is discussed in vol 1 of The Latex Companion. Instructions for users are on the first 85 pages of the manual, the remaining pages cover implementation and change logs. This seems like a lot of information about headers and footers, document features most of us take for granted or ignore. To use the fancyhdr package issue these two commands: \usepackage[options]{fancyhdr} \pagestyle{fancy} There are many commands which are part of the fancyhdr package, they can be typed within the preamble to the document, before the begin{document} command. Some can also be typed in the body of the document. Read and make use of the examples in the documentation. Here is the code for the first graphic (next page, top left). \usepackage{fancyhdr} \pagestyle{fancy} \usepackage{lipsum} % inserts paragraphs of nonsense text \fancyhead[L]{Left Header} % Upper or lower case and text for the header \fancyhead[R]{Right Header} \pagenumbering{arabic} % four other options available \fancyfoot[c]{page \thepage} % thepage means the current page \begin{document} \lipsum[1-4]

Cette fois-ci, nous allons explorer quelques-uns des nombreux paquets disponibles sur ctan.org. (CTAN est le Comprehensive TeX Archive Network.) CTAN est également la base Web du groupe international TUG : TeX Users Group. J'encourage tous les utilisateurs de LaTeX à devenir membres du TUG si possible.

J'ai parcouru la liste alphabétique des sujets jusqu'à « F ». Le nombre de paquets commençant par F est énorme. Je n'en ai choisi que quelques-uns pour ce numéro. Le premier que j'explorerai cette fois est fancyhdr, développé en 1994 et révisé pour la dernière fois en janvier 2025. Le manuel d'utilisation fait 131 pages en anglais ; il est également disponible en italien. Il existe des « diapositives de formation » disponibles en allemand. Il est abordé dans le volume 1 de The LaTeX Companion. Les instructions pour les utilisateurs se trouvent dans les 85 premières pages du manuel, les pages restantes couvrent la mise en œuvre et les journaux des modifications. Cela semble représenter beaucoup d'informations sur les en-têtes et les pieds de page, des fonctionnalités de document que la plupart d'entre nous tiennent pour acquises ou ignorent. Pour utiliser le paquet fancyhdr, exécutez ces deux commandes :

\usepackage[options]{fancyhdr}

\pagestyle{fancy}

Il existe de nombreuses commandes qui font partie du paquet fancyhdr ; elles peuvent être saisies dans le préambule du document, avant la commande begin{document}. Certaines peuvent également être saisies dans le corps du document. Lisez et utilisez les exemples de la documentation. Voici le code de la première image (page suivante, en haut à gauche).

\usepackage{fancyhdr}

\pagestyle{fancy}

\usepackage{lipsum} % insère des paragraphes de texte sans signification

\fancyhead[L]{En-tête gauche} % Majuscules ou minuscules et texte pour l'en-tête

\fancyhead[R]{En-tête droit}

\pagenumbering{arabic} % quatre autres options disponibles

\fancyfoot[c]{page \thepage} % thepage désigne la page actuelle

\begin{document}

\lipsum[1-4]

The next package I will take a look at is fancypar, offering five predefined decorative styles for text paragraphs according to the documentation. Again, I encourage you to read the documentation. (This manual is only 19 pages, with lots of example code and images of results.) Here is the code for the second graphic (top right): \usepackage[x11names]{xcolor} \usepackage[linecolor=Chocolate1!100!white!80]{fancypar} \usepackage{lipsum} \begin{document} \NotebookPar{This time we will play …} \fancyparsetup{spiral=false,interheight=4pt,intercolor=Cornsilk3} \NotebookPar{This time we will play …} I dropped the paragraph text out of the code because it is just sample text. You can see the results in an image. This package allows for great customization. Be warned, if you use a color name that is not recognized, the color defaults to black. If you want more (much more) information about supported color schemes and color models, read the documentation for the xcolor package.

Le prochain paquet que je vais examiner est fancypar, qui propose, d'après la documentation, cinq styles décoratifs prédéfinis pour les paragraphes de texte. Encore une fois, je vous encourage à lire la documentation. (Ce manuel ne fait que 19 pages, avec de nombreux exemples de code et des images de résultats.) Voici le code de la deuxième image (en haut à droite) :

\usepackage[x11names]{xcolor}

\usepackage[linecolor=Chocolate1!100!white!80]{fancypar}

\usepackage{lipsum}

\begin{document} \NotebookPar{This time we will play …} \fancyparsetup{spiral=false,interheight=4pt,intercolor=Cornsilk3}

\NotebookPar{This time we will play …}

J'ai supprimé le texte du paragraphe du code car il s'agit simplement d'un exemple de texte. Vous pouvez voir les résultats dans l'image. Ce paquet permet une grande personnalisation. Attentio : si vous utilisez un nom de couleur qui n'est pas reconnu, la couleur par défaut sera le noir. Si vous souhaitez plus (beaucoup plus) d'informations sur les schémas de couleurs et les modèles de couleurs pris en charge, lisez la documentation du paquet xcolor.

Next, I will work with a package that could be useful for people who need assistance with layout and positioning. It is called fgruler (foreground ruler), and it puts a rule on a selected page, or all pages, at a fixed position. It can be loaded either with usepackage[options]{fgruler} or \usepackage{fgruler} \setfgruler{package options} The setfgruler command can also be used in the body of a document. Options include unit=cm (metric ruler – default) or unit=in (inches) type=upperleft, upperright, lowerleft, lowerright plus five others There are ten other option=value pairs available. Most options have several values attached to them. Fgruler can also be used to insert a ruler into the text with the \ruler command with its three options as shown in the code below. Again, there are a significant number of possibilities for the position, direction, length, color and style of the inserted ruler.

Ensuite, je vais travailler avec un paquet qui pourrait être utile pour les personnes qui ont besoin d'aide pour la mise en page et le positionnement. Il s'appelle fgruler (règle de premier plan), et il place une règle sur une page sélectionnée, ou sur toutes les pages, à une position fixe. Il peut être chargé soit avec

usepackage[options]{fgruler}

ou

\usepackage{fgruler}

\setfgruler{package options}

La commande setfgruler peut également être utilisée dans le corps d'un document. Les options incluent

unit=cm (règle métrique – par défaut) ou unit=in (pouces)

type=upperleft, upperright, lowerleft, lowerright plus cinq autres

Dix autres paires option=valeur sont disponibles. La plupart des options ont plusieurs valeurs qui leur sont associées.

Fgruler peut également être utilisé pour insérer une règle dans le texte avec la commande \ruler avec ses trois options comme indiqué dans le code ci-après (page suivante). Là encore, il existe un nombre important de possibilités pour la position, la direction, la longueur, la couleur et le style de la règle insérée.

The documentation is among the best I have read so far for a Latex package. There are lots of snippets of code and the corresponding examples. There are no pages in the documentation which describe the various behind-the-scenes commands used to make this package. Instead, there are seven pages of examples and illustrations followed by 28 individual pages with 28 sets of commands and results. Here is the code. Again I deleted most of the text to save space. (shown above) \usepackage[x11names]{xcolor} %Required if you want colours other than black \usepackage{fgruler} \begin{document} \setfgruler{unit=cm,type=upperleft,hshift=3cm,vshift=3cm,color=blue} %Inserts rulers on top and left edges the full width of paper, shifted down and to the right 3cm This time we will play with … \ruler[cm]{rightdown}{10cm} %Inserts ruler in text 10cm long. I spent a short time with the fncychap package. It has seven predefined styles for chapter level headings. In addition, the user can also modify the existing styles or generate new ones with the information available in the documentation. What is not mentioned but which should be obvious is the chapter level heading is available in the document class “book”, not in document class “article”. The book document class defaults to two-sided printing which brings its own benefits and costs.

La documentation est parmi les meilleures que j'ai lues jusqu'à présent pour un paquet LaTeX. Il y a beaucoup d'extraits de code et les exemples correspondants. Il n'y a pas de pages dans la documentation qui décrivent les différentes commandes en coulisse utilisées pour créer ce paquet. Au lieu de cela, il y a sept pages d'exemples et d'illustrations suivies de 28 pages individuelles avec 28 ensembles de commandes et de résultats.

Voici le code. Là encore, j'ai supprimé la majeure partie du texte pour gagner de la place. (illustré ci-dessus)

\usepackage[x11names]{xcolor} %Obligatoire si vous souhaitez des couleurs autres que le noir

\usepackage{fgruler}

\begin{document} \setfgruler{unit=cm,type=upperleft,hshift=3cm,vshift=3cm,color=blue} %Insère des règles sur les bords supérieur et gauche sur toute la largeur du papier, décalées vers le bas et vers la droite de 3 cm

Cette fois-ci, nous allons jouer avec…

\ruler[cm]{rightdown}{10cm} %Insère une règle dans le texte sur une longueur de 10 cm.

J'ai passé un peu de temps avec le paquet fncychap. Il dispose de sept styles prédéfinis pour les titres au niveau des chapitres. De plus, l'utilisateur peut également modifier les styles existants ou en générer de nouveaux avec les informations disponibles dans la documentation. Ce qui n'est pas mentionné mais qui devrait être évident, c'est que le titre au niveau du chapitre est disponible dans la classe de document « book » et non dans la classe de document « article ». La classe de document book (livre) utilise par défaut l'impression recto-verso, ce qui apporte ses propres avantages et coûts.

I wanted to generate labels using Latex. The flabels package initially was attractive. However it is designed to generate a specific label for the spines of A4-sized binders. So I looked for some other package to demonstrate. Since I worked as a teacher and continue to do volunteer teaching, I chose the fancyhandout package. Fancyhandout makes a new class of document. It uses three levels of headings, section, subsection and subsubsection, which are not numbered. As you can see from the sample, there are default colors for various items. These can be customized. The geometry package is used to generate margins of 2.25cm. These can be altered using the geometry package commands. Various other changes can be made and are explained in the documentation. Here (previous page) is the code that generated the sample [above]. It is longer than I usually show, I hope it will be helpful. I can already anticipate using this package in my volunteer teaching. Because my system has a limited number of F packages, I have decided to look at how to install new packages to an existing Latex system in the next issue. Hope you can join me for that important topic.

Je voulais générer des étiquettes en utilisant LaTeX. Le paquet flabels était initialement intéressant. Cependant, il est conçu pour générer une étiquette spécifique pour les dos de classeurs de format A4. J'ai donc cherché un autre paquet à démontrer. Comme je travaille comme enseignant et que je continue à faire de l'enseignement bénévole, j'ai choisi le paquet fancyhandout.

Fancyhandout crée une nouvelle classe de document. Il utilise trois niveaux de titres, section, sous-section et sous-sous-section, qui ne sont pas numérotés. Comme vous pouvez le voir sur l'exemple, il existe des couleurs par défaut pour les divers éléments. Celles-ci peuvent être personnalisées. Le paquet geometry est utilisé pour générer des marges de 2,25 cm. Celles-ci peuvent être modifiées à l'aide des commandes du paquet geometry. Diverses autres modifications peuvent être apportées et sont expliquées dans la documentation.

Voici (page précédente, en haut à droite) le code qui a généré l'exemple ci-dessus. Il est plus long que ce que je montre habituellement, j'espère qu'il sera utile. Je peux déjà anticiper l'utilisation de ce paquet dans mon enseignement bénévole.

Comme mon système dispose d'un nombre limité de paquets F, j'ai décidé d'examiner dans le prochain numéro comment installer de nouveaux paquets sur un système LaTeX existant. J'espère que vous pourrez me rejoindre pour ce sujet important.

issue214/latex.txt · Dernière modification : 2025/03/06 10:16 de andre_domenech