Aller au contenu

Apprendre à programmer en TeX, le livre

Après un travail de plusieurs années, j’ai le plaisir de proposer le livre « Apprendre à programmer en TeX », 580 pages au format 16,8cm x 26cm, disponible au prix de 32€ (hors frais de port) chez lulu.com :

 

couverture

 

Ce livre se veut une introduction à la programmation en langage TeX pour tous les utilisateurs de TeX ou LaTeX qui souhaitent découvrir ce qui se joue en coulisses, comprendre les mécanismes intimes de TeX et se les approprier pour devenir capable de programmer soi-même des macros adaptées à ses propres besoins. Il ne s’agit donc pas d’un nouveau recueil de recettes sur le thème de « Comment utiliser LaTeX et ses packages » destiné à ceux qui veulent savoir comment faire, mais plutôt d’explications et de méthodes pour ceux qui veulent comprendre pour ensuite créer et programmer.

Comme le langage TeX est assez contre-intuitif et difficile, et que la littérature sur le sujet est quasi-inexistante, j’ai souhaité que le progression soit accessible à tous, même à ceux qui ne sont pas familiers avec TeX. La partie III notamment, en s’intéressant aux spécificités des commandes, permet d’aborder la suite avec des bases solides. Tout au long du livre, de nombreux listings commentés avec l’affichage qu’ils génèrent, des exercices avec solution et des règles importantes permettent d’apprivoiser les spécificités du langage TeX et les méthodes de programmation qui lui sont propres.

 

capture_page

 

Tous les listings donnés dans le livre sont sous licence « Creative Commons « BY-SA » » et contenus dans le fichier code.txt qui est librement téléchargeable. Les commentaires dont ils sont assortis dans le livre ne sont pas sous licence libre et n’y figurent pas. Les macros définies dans le livre et ré-employées dans d’autres listings sont également sous licence libre « BY-SA ». Elles sont contenues dans le fichier livremacro.tex qui est également librement téléchargeable. Ainsi, charger livremacro.tex par un \input en début de code source doit permettre de compiler n’importe quel listing donné dans le livre.

Par exemple, il est possible de tester la macro \impact, définie aux pages 413 à 423, qui trace les caractères point par point. Ainsi, compiler ce code LaTeX via pdflatex, en mode dvi ou pdf

ou ce code TeX via etex ou pdftex

donne ce résultat

capture_exemple

J’ajoute que cette phrase « Programmer en TeX est facile », souvent présente dans le livre, est à prendre comme une boutade et est évidemment fausse !

Voici la table des matières (limitée ici à un seul sous niveau)

  1. Introduction
    1. TeX, la brute et le truand
    2. Avant de commencer
  2. TeX et le code source
    1. Comment TeX lit-il le code source ?
    2. Octets dont le bit de poids fort est 1
    3. Codes de catégorie
  3. Commandes
    1. Qu’est ce qu’une commande ?
    2. Arguments d’une commande
    3. Arguments délimités
    4. Développement
  4. Structures de contrôle et récursivité
    1. Les outils de programmation de TeX
    2. TeX et les entiers
    3. Une première récursivité
    4. Une boucle « for »
    5. Quelques autres tests
    6. Une boucle « loop...repeat »
    7. Une boucle « foreach in »
    8. Dimensions et boites
    9. Fichiers : lecture et écriture
    10. Autres algorithmes
  5. Au niveau des tokens
    1. Mise en évidence du problème
    2. Lire du code token par token
    3. Des macros sur mesure
  6. Pour aller plus loin
    1. Du nouveau dans les arguments des macros
    2. Aller plus loin avec les réglures
    3. Aller plus loin dans la mise en forme
  7. Annexes
    1. Débogage
    2. Programmer l’addition décimale
    3. Primitives spécifiques à un moteur
    4. Recueil des règles

 

Une réflexion au sujet de « Apprendre à programmer en TeX, le livre »

  1. Jean Filleau dit :

    Enthousiaste ! LaTeXiste depuis près de 20 ans, j’arrivais toujours à mes fins, mais parfois péniblement, et je ressentais de plus en plus souvent, pour aller plus loin, le besoin de comprendre ce langage, mais j’avais aussi souvent très vite abandonné en me disant que c’était décidément beaucoup trop ésotérique. Je suis tombé par hasard – pourquoi ce bouquin n’a-t-il pas plus de pub ? – sur ce livre, je l’ai commandé sans trop y croire, et, très heureuse surprise, il est très clair, très pédagogique. Je comprends enfin des bases, je parviens à lire des macros qui seraient sans ce livre restées totalement ésotériques. C’est un plaisir d’autant plus grand qu’avec TeX, franchement, je ne m’y attendais plus… Il me reste beaucoup à lire, beaucoup d’exercices à faire, mais, cette fois, je sais que c’est possible ! Un grand merci !

Laisser un commentaire