Subject: [question un peu HS] metafont

From: Loïc Chahine <[email-masked]>
Date: Thu, 12 Apr 2012 16:06:21 +0200

Bonjour à tous,
Lors d’un week-end LilyPond à Paris, j’avais aperçu Metafont, dont 
Bertrand Bordage en particulier a beaucoup parlé. (Bertrand qui a 
quelque peu disparu de la liste…)
Est-ce que quelqu’un aurait une bonne introduction à Metafont à 
conseiller pour un débutant, en français de préférence, en anglais 
sinon, en sachant que par ailleurs je suis sur Mac OS et donc peu 
habitué à utiliser la ligne de commandes (je sais faire quelques 
bidouillages avec wget et mv, compiler avec lilypond ou pdflatex, mais 
ça ne va pas vraiment plus loin et dès qu’il faut utiliser des options 
je dois aller vérifier dans toutes sortes de documents parce que je n’ai 
rien retenu la fois précédente, càd trois mois avant).
Merci d’avance !
L.C.

---

From: Arthur Reutenauer <[email-masked]>
Date: Thu, 12 Apr 2012 16:10:46 +0200

Le Desgraupe est pas mal ; je ne me souviens plus du titre exact mais
c'est du genre « Introduction à Metafont ».

	Arthur

---

From: René Bastian <[email-masked]>
Date: Thu, 12 Apr 2012 17:16:55 +0200

Le Thu, 12 Apr 2012 16:10:46 +0200,
Arthur Reutenauer <[email-masked]> a écrit :

>   Le Desgraupe est pas mal ; je ne me souviens plus du titre exact
> mais c'est du genre « Introduction à Metafont ».
> 
> 	Arthur
oui,

Metafont - guide pratique
Bernard Desgraupes

Vuibert
> 
> _______________________________________________
> liste de diffusion lilypond-user-fr
> [email-masked]
> https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

-- 
René Bastian
www.pythoneon.org

---

From: Christophe Pochon <[email-masked]>
Date: Thu, 12 Apr 2012 19:08:21 +0200

Disponible ici :
http://www.eyrolles.com/Audiovisuel/Livre/metafont-9782711786428

On trouve beaucoup de fichiers PDF libres à ce sujet sur internet, mais en
anglais....

Christophe Pochon
http://www.christophe-pochon.com

2012/4/12 René Bastian <[email-masked]>

---

From: Loïc Chahine <[email-masked]>
Date: Fri, 13 Apr 2012 20:30:18 +0200

Bonjour à tous,
Je suis passé aujourd’hui à la B.U. de sciences emprunter le bouquin 
conseillé. Ça a l’air assez costaud quand même.
Je chercherai aussi plus attentivement sur internet.
Si quelqu’un a des références en particulier à conseiller, je suis 
toujours preneur !
L.

---

From: Bertrand Bordage <[email-masked]>
Date: Sat, 14 Apr 2012 00:57:34 +0200

Salut à tous !

(Eh oui, je suis toujours vivant)

Pour toutes les questions sur le développement de LilyPond, il y a le guide
du contributeur<http://lilypond.org/doc/v2.15/Documentation/contributor/index.html>
.
J'y ai « jadis » ajouté le
METAFONTtutorial<http://metafont.tutorial.free.fr/> sur
cette page<http://lilypond.org/doc/v2.15/Documentation/contributor/lilypond-programming-languages>
.
C'est très bien pour commencer, mais cela n'aborde qu'une partie du langage.
Le plus complet et « hardcore » à lire est le METAFONTbook de Donald Knuth
(le créateur de MetaFont et TeX).

Quelques explications supplémentaires peuvent être trouvées
ici<http://lilypond.org/doc/v2.15/Documentation/contributor/modifying-the-feta-font>,
mais le mieux est de « bouffer du code ».

Et pour finir, j'avoue que MetaFont n'est pas franchement simple à
utiliser.  On fait un bon dans le temps en l'utilisant, car cela date d'il
y a 30 ans.
Mais bon, pour quelqu'un qui se débrouille en géométrie, équations de
droites et vecteurs, cela ne pose pas trop de problème.

À bientôt,
Bertrand

PS : j'ai fondé ma boîte de développement informatique.  J'enchaîne
commande sur commande, aussi n'ai-je hélas plus de temps à allouer au
développement de LilyPond pour le moment.

---

From: Loïc Chahine <[email-masked]>
Date: Sat, 14 Apr 2012 12:44:07 +0200

Salut !
Et merci beaucoup, Bertrand, pour ces indications. Content aussi de voir 
que tout va à peu près bien de ton côté.

Je me demande du coup s'il faut apprendre MetaFont ou quelque autre 
outil de création de fontes...

À bientôt,
L.

Le 14/04/12 00:57, Bertrand Bordage a écrit :
> Pour toutes les questions sur le développement de LilyPond, il y a le 
> guide du contributeur 
> <http://lilypond.org/doc/v2.15/Documentation/contributor/index.html>.
> J'y ai « jadis » ajouté le METAFONTtutorial 
> <http://metafont.tutorial.free.fr/> sur cette page 
> <http://lilypond.org/doc/v2.15/Documentation/contributor/lilypond-programming-languages>.
> Le plus complet et « hardcore » à lire est le METAFONTbook de Donald 
> Knuth (le créateur de MetaFont et TeX).
>
> Quelques explications supplémentaires peuvent être trouvées ici 
> <http://lilypond.org/doc/v2.15/Documentation/contributor/modifying-the-feta-font>, 
> utiliser.  On fait un bon dans le temps en l'utilisant, car cela date 
> d'il y a 30 ans.

---

From: Bertrand Bordage <[email-masked]>
Date: Sat, 14 Apr 2012 15:02:56 +0200

> que tout va à peu près bien de ton côté.

Plus qu'à peu près :)

Je me demande du coup s’il faut apprendre MetaFont ou quelque autre outil
> de création de fontes…

MetaFont est le seul outil permettant de créer des fontes de manière
procédurale.  C'est une mauvaise solution pour bien des points, mais c'est
le mieux qu'on ait pour un projet open-source comme LilyPond.
À ma connaissance, seuls LilyPond, TeX et ses variations utilisent
MetaFont.  Et seul TeX sait l'interpréter correctement.  En effet, MetaFont
date d'une époque où les imprimantes vectorielles et les formats de fonte
modernes n'existaient pas.  Il a donc fallu créer un script pour convertir
MetaFont en OpenType Font spécialement pour LilyPond.  Mais il ne
fonctionne que partiellement...

J'ai souvent songé à résoudre tous les problèmes liés à l'utilisation de
MetaFont, mais cela demanderait un lourd investissement humain.
À mon sens, il faudrait :
- créer un nouveau langage de fontes, plus simple et plus parlant ;
- créer un framework un peu WYSIWIG du genre Frescobaldi pour que ce soit
moins prise de tête ;
- permettre la génération de fontes « à la demande ».

Ce dernier point permettrait, par exemple, de réduire un peu la largeur des
altérations dans les partitions les plus serrées.
En effet, LilyPond est contraint de toujours utiliser les mêmes fontes
pré-construites.  Avec la puissance des ordinateurs modernes, on pourrait
se permettre, au moins pour les altérations, d'adapter les glyphes à la
demande.

Bref, tout cela est bien facile à dire, mais considérablement difficile à
réaliser.  Cela demanderait à une personne très motivée de travailler
dessus pendant deux ou trois ans à temps plein.
Si on pouvait être sûrs que ce serait utile à d'autres projets que
LilyPond, pourquoi pas.  Hélas, les designers sont généralement hermétiques
aux idées de « code source » et « fontes procédurales ».

Ce constat accablant fait, il reste tout de même une solution
intermédiaire.  Se contenter de faire une petite interface graphique pour
MetaFont (style Frescobaldi, donc).
Et à l'occasion de ce projet, faire *une documentation claire et
minimaliste de MetaFont*.
Ce serait l'affaire de quelques mois de développement pour une seule
personne à temps partiel.  Si cela t'intéresse, je peux me lancer dedans.
 Et publier, d'ici quelques semaines, un premier brouillon de documentation
et de programme.
Quant au script de conversion MetaFont -> fonte moderne, il faudra sans
doute l'améliorer un peu au passage.

Pour ce qui est des choix techniques, mon choix se porte « évidemment » sur
reStructuredText <http://fr.wikipedia.org/wiki/ReStructuredText> pour la
documentation et PySide <http://fr.wikipedia.org/wiki/PySide> pour
l'interface graphique.  Hébergé sur Read the Docs
<http://readthedocs.org/> pour
la doc et GitHub <https://github.com/> pour la source de l'interface
graphique.

À bientôt,
Bertrand

---

From: Loïc Chahine <[email-masked]>
Date: Sat, 14 Apr 2012 17:47:57 +0200

Le 14/04/12 15:02, Bertrand Bordage a écrit :
> Le 14 avril 2012 12:44, Loïc Chahine <[email-masked] 
> <mailto:[email-masked]>> a écrit :
>
>     Et merci beaucoup, Bertrand, pour ces indications. Content aussi
>     de voir que tout va à peu près bien de ton côté.
>
>
> Plus qu'à peu près :)
>
>     Je me demande du coup s’il faut apprendre MetaFont ou quelque
>     autre outil de création de fontes…
>
>
> procédurale.  C'est une mauvaise solution pour bien des points, mais 
> c'est le mieux qu'on ait pour un projet open-source comme LilyPond.
> MetaFont.  Et seul TeX sait l'interpréter correctement.  En effet, 
> MetaFont date d'une époque où les imprimantes vectorielles et les 
> formats de fonte modernes n'existaient pas.  Il a donc fallu créer un 
> script pour convertir MetaFont en OpenType Font spécialement pour 
> LilyPond.  Mais il ne fonctionne que partiellement...
Dans la mesure où (La)TeX en 1, et LilyPond en 2, sont les buts ultimes, 
MetaFont va donc rester la meilleure solution.
> Bref, tout cela est bien facile à dire, mais considérablement 
> difficile à réaliser.  Cela demanderait à une personne très motivée de 
> travailler dessus pendant deux ou trois ans à temps plein.
> LilyPond, pourquoi pas.  Hélas, les designers sont généralement 
> hermétiques aux idées de « code source » et « fontes procédurales ».
Raison pour laquelle, sans doute, MetaFont a si “mauvaise” presse auprès 
des “fondeurs”.
> intermédiaire.  Se contenter de faire une petite interface graphique 
> pour MetaFont (style Frescobaldi, donc).
> personne à temps partiel.  Si cela t'intéresse, je peux me lancer 
> dedans.  Et publier, d'ici quelques semaines, un premier brouillon de 
> documentation et de programme.
> Quant au script de conversion MetaFont -> fonte moderne, il faudra 
> sans doute l'améliorer un peu au passage.
Merci pour la proposition ! mais pour l’instant je vais déjà m’initier 
un peu à MetaFont. C’est pas comme si c’était un langage à vraiment 
développer, donc il n’est peut-être (sans doute) pas utile de créer un 
outil qui en fait ne sera utile qu’à très peu de monde.
À bientôt,
L.C.

---

From: Bertrand Bordage <[email-masked]>
Date: Sun, 15 Apr 2012 01:10:55 +0200

Le 14 avril 2012 17:47, Loïc Chahine <[email-masked]> a écrit :

> Merci pour la proposition ! mais pour l’instant je vais déjà m’initier un
> peu à MetaFont. C’est pas comme si c’était un langage à vraiment

Bien entendu, quasiment personne ne l'utiliserait.  Il n'empêche que le
gain de temps et de qualité serait énorme au final.  Tu n'imagines pas à
quel point mon travail sur les fontes a été long et crado...
Et à court terme, l'idée de faire une doc moderne pour MetaFont me tente
beaucoup.
J'ai commencé un peu à l'instant :
http://readthedocs.org/docs/metafont-neo-doc/en/latest/introduction.html

Bertrand

---

From: Loïc Chahine <[email-masked]>
Date: Sun, 15 Apr 2012 01:21:57 +0200

Bon début !
Si tu m’attends un peu je pourrai peut-être participer ;-)
J’étais justement en train de lire The MetaFont Tutorial, et je dois 
dire que j’ai réalisé… les exemples du tutoriel, c’est-à-dire que j’ai 
recopié un bêta, un smiley basique et deux lignes droites (oui, j’en 
suis qu’à la page 17 hein). Pour l’instant en tout cas c’est très 
compréhensible.
J’y verrai plus clair quand j’aurai lu davantage, forcément.

Déjà tu pourras enrichir Forces et faiblesses de tout ce que tu as écrit 
sur la liste (et donc en particulier à moi) précédemment.
Littéraire chiant précise aussi que “mauvaise documentation” est sans 
doute excessif, et que “documentation difficile” serait sans doute plus 
réaliste.

À suivre !
L.

Le 15/04/12 01:10, Bertrand Bordage a écrit :
> Bien entendu, quasiment personne ne l'utiliserait.  Il n'empêche que 
> le gain de temps et de qualité serait énorme au final.  Tu n'imagines 
> pas à quel point mon travail sur les fontes a été long et crado...
> Et à court terme, l'idée de faire une doc moderne pour MetaFont me 
> tente beaucoup.

---

From: Bertrand Bordage <[email-masked]>
Date: Sun, 15 Apr 2012 01:40:05 +0200

> Si tu m’attends un peu je pourrai peut-être participer ;-)

Oui, pas de problème !
La source est sur GitHub :
https://github.com/BertrandBordage/MetaFont-neo-doc
Si tu as le courage d'apprendre git et reStructuredText (un langage
ultra-simple), tu pourras effectuer des changements sans même m'attendre
non plus.
Sinon, on peut discuter en privé pour que tu me passes des bouts de doc que
je rajouterai.

J’étais justement en train de lire The MetaFont Tutorial, et je dois dire
> que j’ai réalisé… les exemples du tutoriel, c’est-à-dire que j’ai recopié
> un bêta, un smiley basique et deux lignes droites (oui, j’en suis qu’à la
> page 17 hein). Pour l’instant en tout cas c’est très compréhensible.

Pour moi il y a trop de texte pour trop peu d'informations, hélas.  Bon, je
ne vais pas cracher dessus, j'ai appris avec ça !

> doute excessif, et que “documentation difficile” serait sans doute plus

Bien sûr.  Mais à l'heure qu'il est je n'ai plus les idées claires, aussi
préfère-je attendre le point du jour.

À suivre !

Yep !
Bertrand

---

From: René Bastian <[email-masked]>
Date: Sun, 15 Apr 2012 10:37:13 +0200

Le Sun, 15 Apr 2012 01:40:05 +0200,
Bertrand Bordage <[email-masked]> a écrit :

> ultra-simple), tu pourras effectuer des changements sans même
> m'attendre non plus.
[...]
> Bertrand

Bonjour,

j'ai lu ce qui se trouve sur GitHub. Quelques remarques:
- Metafont produit du bitmap,
- Metapost, son successeur, produit du PostScript,
  (Ce ne serait pas plus intéressant ?)
- Metafun est un développement plus récent de Metapost et intégré
  à Context qui est par rapport à Tex ce que la mobylette est au vélo,
  (voir	http://wiki.contextgarden.net/MetaFun ).

L'idée d'utiliser reStr.. pour la doc est bonne, par contre
pourquoi perdre votre temps à faire un tutoriel pour des
objets informatiques vétustes ? 

Sur le GitHub je vois déjà traîner un conf.py. Pourquoi
ne pas refaire le tout en Python ?
J'ai le Metafonbook de Knuth. Une centaine de pages (sur 350)
est occupée à mettre en place des procédés qui sont déjà
disponibles dans Python. 
Pyx et à un degré moindre reportLab apportent un certain nombre
de solutions graphiques dont certaines sont, je pense, réutilisables.

J'utilise Python de façon autonome (sans recours à MIDI ou d'autres
programmes de génération de sons) depuis 2004 - et je ne le regrette
pas : tout ce que j'ai accumulé est réutilisable, clair, lisible
même des années après. Avant de me décider pour Python, j'ai aussi
utilisé des langages plus ou moins cryptographiques (Pascal,
Csound, Lisp, etc). J'ai choisi Python bien que à l'époque il avait
la réputation d'être lent - mais cette objection ne tenait pas :
ce n'est pas la compilation qui fait perdre du temps, mais le
décryptage d'un code de plus de 6 mois. Entretemps, l'extension de
calcul numérique, numpy, accélère les calculs de vecteurs de grande
dimension (sr = 44100 ou plus) de sorte que les temps de calcul
deviennent imperceptibles.

En outre, en consultant http://pypi.python.org, on voit
que rien n'existe en "font design" - c'est un truc à faire.

Tout ceci pour dire que je participerai à un tel projet -
dans la mesure de mes capacités - s'il vous tente.

Bon dimanche !
-- 
René Bastian
www.pythoneon.org

---

From: Loïc Chahine <[email-masked]>
Date: Sun, 15 Apr 2012 11:37:37 +0200

Bonjour à tous !

Le 15/04/12 01:40, Bertrand Bordage a écrit :
> Le 15 avril 2012 01:21, Loïc Chahine <[email-masked] 
> Sinon, on peut discuter en privé pour que tu me passes des bouts de 
> doc que je rajouterai.
C’est difficile git ? Faudra que j’essaie…
>
>     J’étais justement en train de lire The MetaFont Tutorial, et je
>     dois dire que j’ai réalisé… les exemples du tutoriel, c’est-à-dire
>     que j’ai recopié un bêta, un smiley basique et deux lignes droites
>     (oui, j’en suis qu’à la page 17 hein). Pour l’instant en tout cas
>     c’est très compréhensible.
> Pour moi il y a trop de texte pour trop peu d'informations, hélas. 
>  Bon, je ne vais pas cracher dessus, j'ai appris avec ça !
Oui moi j’ai plus ou moins l’habitude de ce rapport-là ;-) Et au moins 
c’est clairement expliqué… Et puis on peut un peu sauter des mots de 
temps en temps, on comprend quand même, ça j’aime bien.

Le 15/04/12 10:37, René Bastian a écrit :
> j'ai lu ce qui se trouve sur GitHub. Quelques remarques: - Metafont 
> produit du bitmap, - Metapost, son successeur, produit du PostScript, 
> (Ce ne serait pas plus intéressant ?) - Metafun est un développement 
> plus récent de Metapost et intégré à Context qui est par rapport à Tex 
> ce que la mobylette est au vélo, (voir 
> http://wiki.contextgarden.net/MetaFun ). 
Je ne suis pas sûr que quoi que ce soit se substitue réellement à TeX, 
dans la mesure où les autres langages sont des extensions, ou des “à 
partir de”, etc.
J’ai coécrit un paquetage LaTeX, tous les trucs les plus puissants sont 
en TeX pur.
> objets informatiques vétustes ?
Ben parce que bien que vétuste rien de réellement mieux n’a été créé 
depuis, si c’est comme pour TeX où ce qu’on a fait de mieux c’est 
d’ajouter des couches. Et là encore, à part LaTeX, peu parviennent à 
s’imposer…

En tout cas, pour l’idée de tout refaire en Python, moi je suis peu 
tenté, ne serait-ce que parce que je ne connais pas Python (si déjà 
j’arrive à apprendre convenablement C++ et Scheme ça sera bien, en plus 
de maîtriser mieux (La)TeX), que la nécessité absolue de tout refaire ne 
m’apparaît pas, et enfin que je n’en ai nullement les capacités.

À bientôt,
L.

---

From: Bertrand Bordage <[email-masked]>
Date: Sun, 15 Apr 2012 12:05:11 +0200

Bonjour,

>  (Ce ne serait pas plus intéressant ?)

Oui, et LilyPond utilise un script Perl (
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=blob;f=scripts/build/mf2pt1.pl)
pour obtenir du PostScript.
Et comment obtient-il du PostScript ?  Grâce à MetaPost !
Je ne suis pas sûr qu'il faudrait en parler dès l'introduction, mais je
pourrais être facilement convaincu.

>  (voir http://wiki.contextgarden.net/MetaFun ).

Intéressant, je ne connaissais pas.  Tu voudrais que j'ajoute MetaFun à la
liste des programmes utilisant MetaFont ?  Je viens de changer pour que ce
soit plus cohérent.

> objets informatiques vétustes ?

Parce qu'on a rien de mieux.
Parce que ce n'est pas si difficile que ça en a l'air.
Parce que la mauvaise connaissance de MetaFont rend les fontes de LilyPond
de moins en moins cohérentes.
Parce qu'il faudra maîtriser MetaFont si on souhaite créer un jour un
successeur à MetaFont qui puisse faire migrer les fontes de LilyPond
Parce qu'on est des pionniers en paléontologie informatique.
Parce qu'on est un peu fous.

> de solutions graphiques dont certaines sont, je pense, réutilisables.

Comme je le disais plus haut, c'est un de mes ardents désirs.  Mais, même
avec les outils modernes, cela prendra beaucoup de temps.  Surtout si on
souhaite faire une interface graphique pour faciliter le boulot, notamment
pour comparer rapidement les différentes tailles et poids d'un caractère,
pour inciter à utiliser les mêmes variables sur tout un projet, etc.

> décryptage d'un code de plus de 6 mois.

J'ai fait le même choix.  Surtout qu'un programme Python un peu trop lent
n'est pas à jeter : on peut facilement optimiser un module en
le ré-implémentant en C++.
Je suis devenu définitivement amoureux de Python le jour où j'ai compris
comment marchaient les args et kwargs :p

Entretemps, l'extension de
> deviennent imperceptibles.

Certes.  Mais pour de la résolution d'équations, le plus simple sera
peut-être d'utiliser sympy, au moins dans un premier temps.  Et lui est
très lent :(
De toutes façons, tant qu'on ne fait pas de génération de fonte à la
demande lors de l'exécution de LilyPond, le temps perdu à utiliser sympy ne
gênera que les développeurs

> que rien n'existe en "font design" - c'est un truc à faire.

Oui, mais c'est un gros investissement qui demande au moins trois personnes
motivées ;o)

> dans la mesure de mes capacités - s'il vous tente.

Ah ben c'est parfait, on a trois personnes ! :oD

Bon après-midi,
Bertrand
Bertrand

---

From: René Bastian <[email-masked]>
Date: Sun, 15 Apr 2012 19:27:51 +0200

Le Sun, 15 Apr 2012 12:05:11 +0200,

> Et comment obtient-il du PostScript ?  Grâce à MetaPost !

Donc pas Metafont ... 

> Je ne suis pas sûr qu'il faudrait en parler dès l'introduction, mais
> je pourrais être facilement convaincu.
> 
> >  à Context qui est par rapport à Tex ce que la mobylette est au
> > vélo, (voir http://wiki.contextgarden.net/MetaFun ).

Metafun gared évidemment la structure des langages 
Metapost & Metafont qui font du développeur un esclave de
l'ordi. Ce n'est plus nécessaire [En Pascal je devais gérer
les listes ; pour avoir des listes hétéroclites, c'était la
galère ; en Python, je peux y mettre n'importe quoi -
comme déjà proposé dans les années 1980 par le Smalltalk-80
avec le concept de 'bag']

Aucun des MetaXXX ne semble comporter le concept de classe. Or c'est
l'instrument idéal pour enfouir les données assez invariables
pour ne s'occuper que des données variables. 

> >
> 
> Intéressant, je ne connaissais pas.  Tu voudrais que j'ajoute MetaFun
> à la liste des programmes utilisant MetaFont ?  Je viens de changer
> pour que ce soit plus cohérent.

Je propose de tout faire en pur Python, flanqué de sympy et numpy.
Pourquoi s'enquiquiner avec des syntaxes tarabiscotées.

> Parce que la mauvaise connaissance de MetaFont rend les fontes de
> LilyPond de moins en moins cohérentes.

Bill Schottstaedt - dans son projet CMN - a des descriptions
de glyphes en CommonLisp qui pondent du PostScript; 
elles viennent des fontes faites en son temps par 
Daniel Taupin et sont traduisibles en Python.

> Comme je le disais plus haut, c'est un de mes ardents désirs.  Mais,
> même avec les outils modernes, cela prendra beaucoup de temps.
> Surtout si on souhaite faire une interface graphique pour faciliter
> le boulot, notamment pour comparer rapidement les différentes tailles
> et poids d'un caractère, pour inciter à utiliser les mêmes variables
> sur tout un projet, etc.

> J'ai fait le même choix.  Surtout qu'un programme Python un peu trop
> lent n'est pas à jeter : on peut facilement optimiser un module en
> Je suis devenu définitivement amoureux de Python le jour où j'ai
> compris comment marchaient les args et kwargs :p
> 
> peut-être d'utiliser sympy, au moins dans un premier temps.  Et lui
> est très lent :(

1) Le bouquin de Langtanen "A Primer on Scientific Progr..."
propose même la solution d'équa-diffs. C'est pas lent.

2) Dans mon pythoneon j'utilise des droites (qu'on peut courber avec
des puissances) et des cubiques (on peut donner les pentes au
début et à la fin) pour dessiner n'importe quelle évolution
(variation de fréquence, variant de fréquence d'accord de filtre,
etc.). On ne voit pas le temps passer, car lors du 2e (ou 3e ? :)
essai, Python utilise les précompilés .pyc.

Si on n'utilise pas les courbes de Bézier, on n'a pas
besoin d'interface graphique interactive.
[J'ai un énorme respect pour Pierre Bézier pour l'avoir vu
à la télé, je pense quelque temps avant qu'il meure.
Il a simplement raconté comment de son temps les ingénieurs
se passaient des tuyaux au coin du comptoir. Actuellement
ces gens iraient en taule pour "espionnage industriel".]

> demande lors de l'exécution de LilyPond, le temps perdu à utiliser
> sympy ne gênera que les développeurs

Ben oui.

> Oui, mais c'est un gros investissement qui demande au moins trois
> personnes motivées ;o)
> 
> 

-- 
René Bastian
www.pythoneon.org

---

From: Bertrand Bordage <[email-masked]>
Date: Sun, 15 Apr 2012 20:38:41 +0200

> > Et comment obtient-il du PostScript ?  Grâce à MetaPost !

Au moment de la compilation, on n'utilise pas le programme MetaFont, en
effet.
Mais la syntaxe reste de la syntaxe MetaFont et MetaPost, en interne,
utilise MetaFont.
Bref.

> pour ne s'occuper que des données variables.

C'est sûr.

> Pourquoi s'enquiquiner avec des syntaxes tarabiscotées.

Évidemment, mais il faudra soit faire un « parser » capable de comprendre
MF, soit réécrire toute la fonte de LilyPond.
Long dans un cas comme dans l'autre...

> Daniel Taupin et sont traduisibles en Python.

Ah oui, effectivement.  Je ne connaissais pas du tout.
Par contre il n'y a aucune description de glyphe.  C'est juste du
PostScript pur et dur pompé sur MusiXTeX.
C'est pas moi qui le dit, c'est l'auteur, dans le fichier cmn-glyphs.lisp de
la source <ftp://ccrma-ftp.stanford.edu/pub/Lisp/cmn.tar.gz>.

> propose même la solution d'équa-diffs. C'est pas lent.

Cela m'est arrivé de faire des résolutions d'équations différentielles en
temps réel avec sympy dans le cadre d'un jeu vidéo.
J'ai abandonné l'idée car on passait de 60 images à la seconde à 7 images à
la seconde...
Mais c'est vrai, avec les objectifs qu'on se fixe, ce sera tout à fait
acceptable

> besoin d'interface graphique interactive.

:o\ Je ne suis pas sûr de comprendre...
En tout cas j'étais parti sur des droites et des Bézier cubiques, comme
MetaFont.
Avec une gestion des « pinceaux » et éventuellement toute courbe de Bézier.

---

From: Xavier Scheuer <[email-masked]>
Date: Sun, 15 Apr 2012 21:15:10 +0200

> Avec une gestion des « pinceaux » et éventuellement toute courbe de Bézier.

Bonsoir,

Discussion intéressante, même si j'avoue que les considérations
techniques restent bien au-dessus de ma compréhension.

Je ne sais pas si ça a quelque chose à voir mais il me semble avoir lu
que les sources de la fonte Gonville étaient en Python.
http://www.chiark.greenend.org.uk/~sgtatham/gonville/

Et il y a eu une discussion au sujet de Metafont sur la liste -devel
et Python a été mentionné pour remplacer certaines parties du processus
de génération de fontes.
http://lists.gnu.org/archive/html/lilypond-devel/2012-02/msg00629.html

Bref, avant de lancer un projet quelconque, pensez à en parler à des
personnes comme Janek Warchoł, Werner "font guru" Lemberg ou encore
Han-Wen Nienhuys.

Cordialement,
Xavier

-- 
Xavier Scheuer <[email-masked]>

---

From: Bertrand Bordage <[email-masked]>
Date: Mon, 16 Apr 2012 00:15:19 +0200

> http://www.chiark.greenend.org.uk/~sgtatham/gonville/

Ah mais oui !  Excellent !  Merci mille fois pour avoir mis cela en avant.

---

From: Bertrand Bordage <[email-masked]>
Date: Mon, 16 Apr 2012 00:27:02 +0200

Oups, fail, j'ai envoyé mon message sans le faire exprès

Ah mais oui !  Excellent !  Merci mille fois pour avoir mis cela en avant.
Hélas, la logique par classe n'est pas correctement utilisée et la
définition des glyphes s'apparente trop à du PostScript.
Néanmoins cette réussite me motive à poursuive dans la voie d'un successeur
Python à MetaFont qui serait « class-based ».

> http://lists.gnu.org/archive/html/lilypond-devel/2012-02/msg00629.html

Ah oui, je ne l'avais pas lu :$

> personnes comme Janek Warchoł, Werner "font guru" Lemberg ou encore

Je suis plutôt pour faire des essais d'abord, puis en parler si les
premiers résultats sont prometteurs.
En tout cas, on pourra faire confiance à Janek pour l'aspect discussion :)

À présent, je propose de continuer cette discussion en privé.

À bientôt,
Bertrand