summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/plain
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-12-20 21:31:34 +0000
committerKarl Berry <karl@freefriends.org>2020-12-20 21:31:34 +0000
commitef0555dd349ffbd1a56ae59ccbb5c458fd74da8c (patch)
tree0205a5fae6ccaf840b4128d56be44c64ee14cb00 /Master/texmf-dist/doc/plain
parentd253eedef07df8ec3a942c11dc46e1eb3049c076 (diff)
apprendre-a-programmer-en-tex (20dec20)
git-svn-id: svn://tug.org/texlive/trunk@57179 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/plain')
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/README53
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/GMC.zipbin0 -> 306184 bytes
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/linlibmonoc.zipbin3370866 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdfbin4356465 -> 4012401 bytes
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/progtexcode.txt2
-rw-r--r--Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex18
6 files changed, 32 insertions, 41 deletions
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/README b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/README
index ed792bf0460..6b73c795168 100644
--- a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/README
+++ b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/README
@@ -53,35 +53,27 @@ 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.
+GoMono a été adoptée. Cette police est quasiment identique à LuxiMono,
+exception faite de la lettre "l", mais c'est sans grande importance car elles
+ont les mêmes chasses : à peinr 52sp de différence à l'échelle 0.8 qui est
+utilisée dans ce livre. C'est une différence insigifiante.
+
+Pour les codes figurant dans le texte du livre, la police GMC a été créée à
+partir de GoMono en multipliant par 0.8 la dimension horizontale de tous les
+glyphes.
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 ;
+ a) les polices à chasse fixe sont légèrement différentes, comme expliqué
+ ci-dessus.
+ Cela ne devrait pas entraîner de modification de la mise en page car la chasse
+ de GoMono est extrêmement proche de celle de Luximono ;
- b) les mentions Luximono sont changées pour LinuxlibertineMonoTC ;
+ b) les mentions Luximono sont changées pour GoMono ;
- c) la licence est modifiée (page réelle 6) ;
+ c) la licence est modifiée (voir 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 !
@@ -101,8 +93,8 @@ 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.
+ - seules les fontes GMC et les fontes de libertine-legacy sont à installer
+ à la main.
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
@@ -117,19 +109,18 @@ donnée pour GNU-linux avec TeXlive car je ne connais ni windows ni mikTeX.
c) aller dans /fonts/maps/dvips/libertine-legacy et lancer dans la console la
commande suivante
- updmap -user --enable map=libertine-legacy.map
+ updmap -user --enable Map=libertine-legacy.map
-2) Installation des fontes LinuxLibertineMono « condensées » :
+2) Installation des fontes GMC :
- a) dézipper le fichier linlibmonoc.zip
+ a) dézipper le fichier GMC.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
+ c) aller dans /fonts/maps/dvips/GMC et lancer dans la console la
+ commande suivante :
+ updmap -user --enable Map=GMC.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
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/GMC.zip b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/GMC.zip
new file mode 100644
index 00000000000..c5e57d79840
--- /dev/null
+++ b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/GMC.zip
Binary files differ
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/linlibmonoc.zip b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/linlibmonoc.zip
deleted file mode 100644
index bf116f5297f..00000000000
--- a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/fonts/linlibmonoc.zip
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf
index 9e349e04e8a..1785280676b 100644
--- a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf
+++ b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/progtexcode.txt b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/progtexcode.txt
index fcd1a19ec7c..e41a520b5d8 100644
--- a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/progtexcode.txt
+++ b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/output/progtexcode.txt
@@ -7,7 +7,7 @@
%% Encodage ISO 8859-1 %%
%% _____ %%
%% %%
-%% © 2014 Christian Tellechea %%
+%% © 2014-2020 Christian Tellechea %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex
index 529d26e7980..bc5a675f360 100644
--- a/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex
+++ b/Master/texmf-dist/doc/plain/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex
@@ -8,7 +8,7 @@
%% %%
%% ___ %%
%% %%
-%% © 2014 Christian Tellechea %%
+%% © 2014-2020 Christian Tellechea %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -18,7 +18,6 @@
%| Encodage ISO 8859-1 (latin1) |
%| À compiler avec pdflatex en mode pdf |
%|___________________________________________________________________________|
-
\RequirePackage{etex}
\documentclass[fontsize=10pt,chapterprefix=true]{scrbook}
@@ -104,7 +103,8 @@
%| |
\usepackage{amssymb,textcomp,eurosym,libertine}
\usepackage[libertine]{newtxmath}
-\renewcommand*\ttdefault{LinuxLibertineMonoTC-TLF}
+\newcommand*\GMC@scale{0.8}
+\usepackage[scaled=0.8]{GoMono}
\DeclareRobustCommand*\libLegacyGlyph[1]{{\ifcsname fxl@#1\endcsname\@nameuse{fxl@#1}\else\errmessage{glyphe fxl@#1 non défini}\fi}}
\DeclareRobustCommand*\bioLegacyKeyGlyph[1]{{\ifcsname fxk@#1\endcsname\@nameuse{fxk@#1}\else\errmessage{glyphe fxk@#1 non défini}\fi}}
\newcommand*\DeclareTextGlyphX[5]{\@namedef{#1@#4}{{\fontfamily{#3}\fontencoding{#2}\selectfont\char#5\relax}}}
@@ -501,7 +501,7 @@
%% Encodage ISO 8859-1 %%
%% _____ %%
%% %%
-%% © 2014 Christian Tellechea %%
+%% © 2014-2020 Christian Tellechea %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -642,7 +642,7 @@
}% échappement ¤...¤
\defactive\%{\unexpanded{\@commenttrue\itshape\color{codegray}\%}}% commentaire
\defactive\^^M{\unexpanded{\if@comment\normalfont\ttfamily\color{black}\fi\@commentfalse}\par\leavevmode}% retour charriot
- \normalfont\renewcommand*\ttdefault{LinuxLibertineMonoTCC-TLF}\ttfamily
+ \normalfont\renewcommand*\ttdefault{GMC-TLF}\ttfamily
\setbox\z@\hbox{0}\edef\tt@spc{\hskip\the\wd\z@\relax}%
\catcode`\ =13
\begingroup
@@ -1138,10 +1138,10 @@
\small
ISBN 978-2-9548602-0-6\medskip
- \textcopyright{} Christian \textsc{Tellechea}, 2014\medskip
+ \textcopyright{} Christian \textsc{Tellechea}, 2014--2020\medskip
\scriptsize
- Révision \no2a, 26/04/2019\medskip
+ Révision \no2b, 20/12/2020\medskip
Photo couverture \textcopyright{} Christian~\textsc{Tellechea}\par
Photo 4\ieme{} couverture \textcopyright{} Willi~\textsc{Heidelbach}.
@@ -16563,7 +16563,7 @@ Avant de bâtir un algorithme permettant de composer un texte dans un cadre qui f
\item \idx\pagegoal est la dimension verticale du texte à composer dans la page en cours.
\end{itemize}
-La dimension \idx\pagetotal n'est pas actualisée en permanence, mais seulement après chaque paragraphe composé. Par ailleurs, au tout début de la construction d'une page, lorsqu'elle est vide, \idx\pagetotal vaut \numprint[pt]0 alors que \idx\pagegoal vaut \numprint[pt]{16383,99999}\footnote{Lire le \TeX book page~133 et plus généralement le chapitre 15 en entier.}, soit \idx\maxdimen. Par conséquent, notre futur algorithme devra tenir compte de cette spécificité au début des pages. Afin que \idx\pagegoal prenne une valeur reflétant la hauteur de la page, il faudra donc, avant de mesurer quoi que ce soit, faire en sorte que la nouvelle page ne soit pas vide . Insérer le matériel vertical «\idx\hbox\verb-{}-\idx\nointerlineskip» teindra lieu de remplissage de haut de page, tout en ne prenant aucune place verticalement. Ainsi, après cette opération, \idx\pagegoal sera égal à la hauteur de la zone de texte en haut d'une page. Nous sommes maintenant assurés que, quelles que soient les circonstances, la différence entre \idx\pagegoal et \idx\pagetotal sera la hauteur de l'espace vertical disponible restant dans la page en cours.
+La dimension \idx\pagetotal n'est pas actualisée en permanence, mais seulement après chaque paragraphe composé. Par ailleurs, au tout début de la construction d'une page, lorsqu'elle est vide, \idx\pagetotal vaut \numprint[pt]0 alors que \idx\pagegoal vaut \numprint[pt]{16383,99999}\footnote{Lire le \TeX book page~133 et plus généralement le chapitre 15 en entier.}, soit \idx\maxdimen. Par conséquent, notre futur algorithme devra tenir compte de cette spécificité au début des pages. Afin que \idx\pagegoal prenne une valeur reflétant la hauteur de la page, il faudra donc, avant de mesurer quoi que ce soit, faire en sorte que la nouvelle page ne soit pas vide . Insérer le matériel vertical «\idx\hbox\verb-{}-\idx\nointerlineskip» tiendra lieu de remplissage de haut de page, tout en ne prenant aucune place verticalement. Ainsi, après cette opération, \idx\pagegoal sera égal à la hauteur de la zone de texte en haut d'une page. Nous sommes maintenant assurés que, quelles que soient les circonstances, la différence entre \idx\pagegoal et \idx\pagetotal sera la hauteur de l'espace vertical disponible restant dans la page en cours.
Ces deux primitives étaient ce qui nous manquait pour construire l'algorithme permettent de couper $n$ fois une boite verticale pour la loger sur $n+1$ pages.
@@ -17450,7 +17450,7 @@ Peut-on effectuer les coupures, mais ne pas insérer de caractère de coupure ? La
Nom de la fonte = \fontname\font\par¤\idx*\fontname\idx*\font¤
\printallchars/
-Par chance, il semblerait que dans la \idx{fonte} à chasse fixe utilisée dans ce livre (qui est « \texttt{LinLibertineMTC} »), le caractère \no23 de cette \idx{fonte} n'ait aucune dimension horizontale. Vérifions-le :
+Par chance, il semblerait que dans la \idx{fonte} à chasse fixe utilisée dans ce livre (qui est « \texttt{GoMono} »), le caractère \no23 de cette \idx{fonte} n'ait aucune dimension horizontale. Vérifions-le :
\showcode/\setbox0=\hbox{\tt\char23}¤\idx*\setbox\idx*\hbox\idx*\tt\idx*\char¤
Largeur = \the\wd0 \qquad Hauteur = \the\ht0 \qquad Profondeur = \the\dp0 ¤\idx*\the\idx*\wd\idx*\ht\idx*\dp¤/