-------------------------------- Avant propos --------------------------------- Ceci est le fichier LISEZMOI du livre « Apprendre à programmer en TeX » Tous les fichiers fournis dans ce paquet sont sous licence « LPPL v1.2 » Résumé : le présent paquet contient tous les fichiers permettant de compiler le livre « Apprendre à programmer en TeX ». Il n'est pas nécessaire d'effectuer la compilation pour obtenir les fichiers de sortie puisque ceux-ci sont également fournis : - apprendre-a-programmer-en-tex.pdf - progtexcode.txt ---------------------------------- Foreword ----------------------------------- This is the README file of the book "Apprendre à programmer en TeX" All the files of this bundle are under "LPPL v1.2" licence Abstract: this package contains all the files needed to compile the book "Apprendre à programmer en TeX". It is not necessary to perform a compilation to obtain the output files since they are also provided: - apprendre-a-programmer-en-tex.pdf - progtexcode.txt The text below is available in French only. ------------------------------------------------------------------------------- I) Prendre le large Dès le début, c'était prévu après 4 ans grand maximum : libérer le code source du livre et par la même occasion, en faire don à la communauté LaTeX. J'ai bien conscience que les 4 ans sont passé depuis un bon moment, et c'est donc avec un léger retard que je me décide à agir. Tout le « Matériel » de ce livre (code source, fichiers pdf, fichiers générés par la compilation, fichiers nécessaires à la compilation) va enfin prendre l'air et naviguer de par le monde via internet, ce qui sera bien plus profitable que de dormir au fin fond d'un répertoire de mon disque dur. II) Conséquences 1) La première conséquence est, je l'espère en secret, que davantage d'utilisateurs de LaTeX oseront jeter un œil à ce livre et s'essaieront à la programmation ! 2) La deuxième conséquence est que la licence change. Tout le Matériel se trouve désormais sous la « LaTeX project public license » (LPPL) version 1.2, mais ce changement implique la chose suivante : il n'est plus possible d'utiliser dans le Matériel la police à chasse fixe « Luximono » qui était employée dans le livre, car elle n'est pas sous licence libre. Faire un choix de police de remplacement n'a pas été facile mais finalement, LinuxLibertineMono a été adoptée. Cela donne une certaine cohérence à l'ensemble puisque la police du texte est LinuxLibertine. Malheureusement, telle qu'elle est conçue, son énorme défaut est de chasser beaucoup trop. Il a donc fallu la modifier pour créer deux autres polices plus « condensées » : a) pour les caractères dans le corps du texte, j'ai créé une police LinuxlibertineMonoTC où les glyphes de LinuxLibertineMonoT ont été, via fontforge, réduits de 75% horizontalement et 92% verticalement. Ce sont, après bien des essais, les coefficients qui lui permettent de s'insérer au mieux (à mon goût) dans le texte, qui donnent une chasse proche de celle de Luximono et qui rendent le gris typographique acceptable ; b) pour les codes figurant dans le texte du livre, la police LinuxlibertineMonoTCC a été créée, toujours à partir de LinuxLibertineMonoT, mais les glyphes ont été davantage réduit horizontalement : 67% horizontalement et 92% verticalement. 3) Enfin, la dernière conséquence est que le fichier pdf produit après compilation du code source n'est pas exactement celui qui a servi à imprimer le livre. Il n'y a que très peu de modifications : a) les polices à chasse fixe sont différentes, comme expliqué ci-dessus. Outre les considérations esthétiques sur lesquelles je ne m'étendrai pas, cela ne devrait pas entraîner de modification de la mise en page car la chasse de LinuxlibertineMonoTC est extrêmement proche de celle de Luximono ; b) les mentions Luximono sont changées pour LinuxlibertineMonoTC ; c) la licence est modifiée (page réelle 6) ; d) quelques corrections ont été faites (coquilles, erreurs dans les codes, etc.), mais une infime partie en regard de ce qui resterait à faire ! III) Compilation Selon la LPPL 1.2, quiconque peut compiler et distribuer le Matériel sous le nom originel, sous réserve qu'aucun changement n'y ait été apporté. Pour que la compilation puisse être effectuée le plus simplement possible, les 7 fichiers nécessaires à la compilation se trouvent dans le dossier /source, et on y trouve en plus le fichier manderlbrot.tex qui a servi à générer le pdf où est dessiné l'ensemble de Mandelbrot à l'aide d'une version modifiée de TeX. Par ailleurs, toujours par souci de simplicité : - tout le code source est dans un seul fichier « livre.tex », qui est le code source à compiler avec l'exécutable pdflatex ; - seules 3 fontes sont à installer à la main, à savoir LinuxlibertineMonoTC, LinuxlibertineMonoTCC et les fontes de libertine-legacy. Pour installer ces fontes, il faut aller dans le répertoire /fonts où se trouvent des fichiers zippés permettant ces installations. La procédure est donnée pour GNU-linux avec TeXlive car je ne connais ni windows ni mikTeX. 1) Installation des fontes "libertine-legacy" a) dézipper le fichier libertine-legacy.zip b) copier les répertoires /fonts et /tex dans le texmf personnel (permettre d'écrire à l'intérieur des dossiers existants) c) aller dans /fonts/maps/dvips/libertine-legacy et lancer dans la console la commande suivante updmap -user --enable map=libertine-legacy.map 2) Installation des fontes LinuxLibertineMono « condensées » : a) dézipper le fichier linlibmonoc.zip b) copier les répertoires /fonts et /tex dans le texmf personnel (permettre d'écrire à l'intérieur des dossiers existants) c) aller dans /fonts/maps/dvips/linlibmonoc et lancer dans la console les deux commandes suivantes : updmap -user --enable map=LinuxLibertineMonoTC.map updmap -user --enable map=LinuxLibertineMonoTCC.map On peut s'assurer que l'installation s'est correctement déroulée en examinant la sortie générée par la commande updmap -user --listmaps Quoi qu'il en soit, afin que tout ceux qui ne peuvent compiler ce code source puissent y accéder, les 2 fichiers dignes d'intérêt qui sont générés à la compilation se trouvent dans le répertoire /output, c'est-à-dire : - apprendre-a-programmer-en-tex.pdf (le fichier pdf de sortie) - progtexcode.txt (le fichier qui contient les 454 codes commentés exposés dans les exemples de ce livre). IV) Conclusion Bonne lecture et surtout, prenez du plaisir avec (La)TeX ! N'hésitez pas à poser des questions si certaines choses ne sont pas claires, que ce soit à moi directement ou dans un forum où les contributeurs se parlent dans la langue de Molière ! Bien évidemment, toute contribution est encouragée, de même que tout retour voire un petit remerciement qui vaudra largement le prix auquel est vendu ce livre (car il est toujours possible de l'acheter sur lulu.com) ; pour ce faire, passer par l'email ou le dépôt sur framagit : unbonpetit@netc.fr https://framagit.org/unbonpetit/apprendre-a-programmer-en-tex/ Christian Tellechea