Subject: musicxml2ly s'arrête

From: [email-masked]
Date: Mon, 15 Aug 2022 17:49:58 +0200 (CEST)

Bonjour,

Petit problème avec musicxml2ly : ça s'arrête avec le message d'erreur : IndexError: list index out of range

Et aucun fichier n'est généré.

Savez-vous d'où ça peut provenir et comment on règle ce problème ?

Merci d'avance !

Fred.

P.S. : il y avait il y a qq temps un forum lilypond francophone, mais je ne le trouve plus. Savez-vous où il est ?

---

From: Jean Abou Samra <[email-masked]>
Date: Mon, 15 Aug 2022 18:06:52 +0200

Bonjour,

Pour information, j'ai dû approuver votre message manuellement en tant 
que modérateur car vous n'êtes pas abonné à la liste. Merci d'y remédier 
en vous abonnant sur cette page :

https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

Le 15/08/2022 à 17:49, [email-masked] a écrit :
> Bonjour,
>
> Petit problème avec musicxml2ly : ça s'arrête avec le message d'erreur 
> :IndexError: list index out of range

Une exception comme ceci est forcément un bug de musicxml2ly. 
Pourriez-vous envoyer votre fichier MusicXML pour qu'il soit possible de 
déboguer ?

Pour information, il existe aujourd'hui un convertisseur plus avancé 
quoique pas encore aussi stable, appelé xml2ly, développé par Jacques 
Menu. On le trouve sur

https://github.com/jacques-menu/musicformats

Vous pourriez l'essayer. Jacques, sais-tu en dire plus sur la manière de 
l'installer ? Y a-t-il un moyen de l'obtenir sans le compiler soi-même 
comme je le fais ? J'ai perdu le fil de tes essais de ce côté.

> P.S. : il y avait il y a qq temps un forum lilypond francophone, mais 
> je ne le trouve plus. Savez-vous où il est ?

Vous pensez sûrement à Nabble, une interface Web qui permettait de lire 
cette même liste et d'y poster — donc le même « forum », celui-ci, 
simplement présenté sous une forme différente. Malheureusement, Nabble a 
mis la clé sous la porte il y a quelques temps, donc cette liste n'est 
plus accessible que sous la forme traditionnelle d'une liste de 
diffusion, par courriel.

Cordialement,
Jean

---

From: Jacques Menu <[email-masked]>
Date: Mon, 15 Aug 2022 20:55:25 +0200

Bonjour Fred,

La documentation de MusicFormats est à https://github.com/jacques-menu/musicformats/blob/master/documentation/MusicFormatsUserGuide/MusicFormatsUserGuide.pdf .

L’installation est décrite depuis la page 47, il y a des versions toutes prêtes pour MacOS, Windows et Linux.

Contactez-moi si vous avez besoin d’aide!

JM

> Le 15 août 2022 à 18:06, Jean Abou Samra <[email-masked]> a écrit :
> 
> Bonjour,
> 
> Pour information, j'ai dû approuver votre message manuellement en tant que modérateur car vous n'êtes pas abonné à la liste. Merci d'y remédier en vous abonnant sur cette page :
> 
> https://lists.gnu.org/mailman/listinfo/lilypond-user-fr <https://lists.gnu.org/mailman/listinfo/lilypond-user-fr>
> 
> 
> Le 15/08/2022 à 17:49, [email-masked] <mailto:[email-masked]> a écrit :
>> Bonjour,
>> 
>> Petit problème avec musicxml2ly : ça s'arrête avec le message d'erreur :IndexError: list index out of range
> Une exception comme ceci est forcément un bug de musicxml2ly. Pourriez-vous envoyer votre fichier MusicXML pour qu'il soit possible de déboguer ?
> 
> Pour information, il existe aujourd'hui un convertisseur plus avancé quoique pas encore aussi stable, appelé xml2ly, développé par Jacques Menu. On le trouve sur
> 
> https://github.com/jacques-menu/musicformats <https://github.com/jacques-menu/musicformats>
> 
> Vous pourriez l'essayer. Jacques, sais-tu en dire plus sur la manière de l'installer ? Y a-t-il un moyen de l'obtenir sans le compiler soi-même comme je le fais ? J'ai perdu le fil de tes essais de ce côté.
> 
> 
> Vous pensez sûrement à Nabble, une interface Web qui permettait de lire cette même liste et d'y poster — donc le même « forum », celui-ci, simplement présenté sous une forme différente. Malheureusement, Nabble a mis la clé sous la porte il y a quelques temps, donc cette liste n'est plus accessible que sous la forme traditionnelle d'une liste de diffusion, par courriel.
> 
> Cordialement,
> Jean

---

From: [email-masked]
Date: Tue, 16 Aug 2022 18:24:59 +0200 (CEST)

Bonjour,

Merci pour vos réponses.

Effectivement, je pensais à Nabble. Too bad.

Désolé pour l'inscription à la liste. Je pensais l'avoir fait il y a qq temps. C'est réparé.

Pour les fichiers xml, les voilà. Il s'agit d'un export Musescore :

https://filesender.renater.fr/?s=download&token=6cc0ba4e-f839-414c-8287-00ec3064473a

J'ai essayé d'abord avec la partition complète. Puis avec seulement une voix. Même problème.

J'essaie en parallèle l'outil de Jacques.

Frédéric.

De : Jean Abou Samra <[email-masked]>
À : [email-masked];
   [email-masked]
Sujet : Re: musicxml2ly s'arrête
Date : 15/08/2022 18:06:52 Europe/Paris
Copie à : Jacques Menu <[email-masked]>

Bonjour,

Cordialement,
Jean

---

From: [email-masked]
Date: Tue, 16 Aug 2022 19:11:00 +0200 (CEST)

Bonjour Jacques,

J'ai regardé la version distrib/windows, et le zip semble vide. Est-ce normal ?

Fred.

De : Jacques Menu <[email-masked]>
À : Jean Abou Samra <[email-masked]>
Sujet : Re: musicxml2ly s'arrête
Date : 15/08/2022 20:55:25 Europe/Paris
Copie à : Jacques Menu <[email-masked]>;
   [email-masked];
   [email-masked]

Bonjour Fred,

JM

Bonjour,

Merci d'avance !

Fred.

Cordialement,
Jean

---

From: Jacques Menu <[email-masked]>
Date: Tue, 16 Aug 2022 21:09:44 +0200

Bonjour Fred,

Oups, îl y a un gag dans la création des distributions, il faut que je regarde ça, désolé.

Voici la version v0.9.63 du 9 juin pour Windows :

Tenez-moi au courant!

JM

> Le 16 août 2022 à 19:11, [email-masked] a écrit :
> 
> Bonjour Jacques,
> 
>> La documentation de MusicFormats est à https://github.com/jacques-menu/musicformats/blob/master/documentation/MusicFormatsUserGuide/MusicFormatsUserGuide.pdf <https://github.com/jacques-menu/musicformats/blob/master/documentation/MusicFormatsUserGuide/MusicFormatsUserGuide.pdf> .
>> 
>>> Le 15 août 2022 à 18:06, Jean Abou Samra <[email-masked] <>> a écrit :
>>> 
>>> Bonjour,
>>> 
>>> Le 15/08/2022 à 17:49, [email-masked] <> a écrit :
>>>> Bonjour,
>>>>

---

From: [email-masked]
Date: Fri, 19 Aug 2022 19:16:10 +0200 (CEST)

Bonjour,

Quelques infos de mes (maigres) progrès.

1. Pas réussi à utiliser xml2ly, du coup, je ne peux pas encore vous faire de retour dessus. Mon antivirus détecte que le fichier n'est pas connu, et il le met en quarantaine...

2. Concernant le fichier original, il apparaît que ce qui bloque, ce sont les indications noire = noire aux changements de mesure. Une fois que je les enlève, ça fonction avec le convertisseur musicxml2ly original.

Fred.

De : Jacques Menu <[email-masked]>
À : [email-masked]
Sujet : Re: musicxml2ly s'arrête
Date : 16/08/2022 21:09:44 Europe/Paris
Copie à : Jacques Menu <[email-masked]>;
   Jean Abou Samra <[email-masked]>;
   [email-masked]

Bonjour Fred,

Tenez-moi au courant!

JM

Bonjour Jacques,

Fred.

Bonjour Fred,

JM

Bonjour,

Merci d'avance !

Fred.

Cordialement,
Jean

---

From: Jacques Menu <[email-masked]>
Date: Fri, 19 Aug 2022 19:46:16 +0200

Bonjour Fred,

> Le 19 août 2022 à 19:16, [email-masked] a écrit :
> 
> Bonjour,
> 

Je n’ai pas de connaissances spécifiques pour ce genre de problèmes sur Windows, essayez de poser la question sur un forum consacré à votre antivirus.

> 2. Concernant le fichier original, il apparaît que ce qui bloque, ce sont les indications noire = noire aux changements de mesure. Une fois que je les enlève, ça fonction avec le convertisseur musi…

Bonne nouvelle!

Si vous pouvez m’envoyer l’extrait correspondant du fichier MusicXML, je pourrai voir ce que fait xml2ly la-dessus. Ca m’intéresse pour compléter/affiner xm2ly en vue de la version 1.0.

Merci de votre aide, et bon w-e!

JM

PS> J’ai vu avec Jean (un grand merci!) comment mettre à disposition autrement les versions installables sur GitHub. 
Suis en train d’adapter mes scripts et de finaliser la doc utilisateur à ce sujet. 
Vous tiendrai au courant quand la version v0.9.65 sera en ligne.

---

From: Jacques Menu <[email-masked]>
Date: Sat, 20 Aug 2022 12:23:50 +0200

Bonjour Fred,

> Le 19 août 2022 à 21:19, Ya Gloops <[email-masked]> a écrit :
> 
> Bonjour !
> J'ai essayé par pure curiosité, mais malheureusement j'ai un message d'erreur qui m'indique qu'il me manque le fichier "musicformats.dll"...
> La doc d'installation est en anglais et je crains ne pas avoir tout compris !
> Gilles

Elle s’appelle musicformats.lib et se trouve dans build/lib.
Là, il faudrait voir avec quelqu’un qui connaît les détails de Windows, ce qui n’est pas mon cas. Il y a entre autres une variable PATH qu’il faut peut-être enrichir qui qu’elle indique où se trouve cette librairie.
Quand vous aurez une façon de faire, je suis intéressé à mettre ça dans la doc d’utilisation.

Je suis en train de préciser la nouvelle manière d’installer les versions prêtes à l’emploi dans le README.md, qui est sur la page principale du dépôt GitHub, et vais y ajouter un LISEZ_MOI.md en français, ainsi que mettre à jour la doc.

Merci de votre aide!

JM

---

From: [email-masked]
Date: Sat, 20 Aug 2022 23:17:34 +0200 (CEST)

Bonjour,

Voilà en pj un exemple de fichier mxl qui pose problème avec musicxml2ly. A priori, c'est le tag "metronome" qui pose problème. Pas le premier qui donne l'indication de tempo, mais le 2e, qui indique noire = noire lors du changement de mesure.

Frédéric.

De : Jacques Menu <[email-masked]>
À : [email-masked]
Sujet : Re: musicxml2ly s'arrête
Date : 19/08/2022 19:46:16 Europe/Paris
Copie à : Jacques Menu <[email-masked]>;
   [email-masked];
   Jean Abou Samra <[email-masked]>

Bonjour Fred,

Bonjour,

Bonne nouvelle!

JM

---

From: Jacques Menu <[email-masked]>
Date: Sun, 21 Aug 2022 00:54:00 +0200

Merci, je vais regarder ça demain - en fait, non, aujourd’hui.

JM

> Le 20 août 2022 à 23:17, [email-masked] a écrit :
> 
> Bonjour,
> 
>>> Le 19 août 2022 à 19:16, [email-masked] <> a écrit :
>>> 
>>> Bonjour,
>>> 
> <extrait noire noire.mxl>

---

From: Jacques Menu <[email-masked]>
Date: Sun, 21 Aug 2022 01:02:55 +0200

Voici ce que ça donne, fichiers joints. Il y a une parenthèse gauche de trop que je vais corriger.

JM

> Le 21 août 2022 à 00:54, Jacques Menu <[email-masked]> a écrit :
> 
>> Le 20 août 2022 à 23:17, [email-masked] <mailto:[email-masked]> a écrit :
>> 
>> Bonjour,
>> 
>>> De : Jacques Menu <[email-masked] <mailto:[email-masked]>>
>>> À : [email-masked] <mailto:[email-masked]>
>>> Copie à : Jacques Menu <[email-masked] <mailto:[email-masked]>>;
>>>    [email-masked] <mailto:[email-masked]>;
>>>    Jean Abou Samra <[email-masked] <mailto:[email-masked]>>
>>> 
>>> Bonjour Fred,
>>>

---

From: [email-masked]
Date: Sun, 21 Aug 2022 08:18:45 +0200 (CEST)

Effectivement, ça fonctionne bien mieux que musicxml2ly !

Oui, pas besoin de parenthèse ici. Le tag précise parenthese=no.

Fred.

Date : 21/08/2022 01:02:55 Europe/Paris

JM

JM

Bonjour,

Frédéric.

Bonjour Fred,

Bonjour,

Bonne nouvelle!

JM

---

From: Ya Gloops <[email-masked]>
Date: Sun, 21 Aug 2022 07:17:04 +0000 (UTC)

Bonjour !
J'ai essayé pas mal de choses, entre autres, indiquer la variable d'environnement musicformats.lib et en la renommant musicformats.dll... Rien y fait !
Si tu as une autre piste je tenterai à nouveau.
Gilles

Le samedi 20 août 2022 à 12:23:52 UTC+2, Jacques Menu <[email-masked]> a écrit : 

Bonjour Fred,

Merci de votre aide!

JM

---

From: Jacques Menu <[email-masked]>
Date: Sun, 21 Aug 2022 11:01:46 +0200

Bonjour Fred et Gilles,

Le problème de musicxml2ly, c’est que personne ne le maintient plus depuis un gros effort qui a été fait il y a quelque temps. Et comme Python est en dehors de la ligne C++/Scheme, je ne pense pas que ça va s’améliorer dans un proche avenir. J’avais envisagé de prendre ça en charge à l’époque, mais l’absence de doc et Python m’avaient découragé, d’où ce qui est devenu MusicFormats écrit en C++. Je m’étais dit aussi que ça faciliterait l’intégration de xm2ly dans LilyPond s’il y avait un jour un intérêt pour ça.

Une des raisons pour lesquelles xml2ly a beaucoup d’options, c’est pour pourvoir s’adapter à des noms d’instruments et des crédits qui peuvent apparaître sous des balises MusicXML diverses selon qui l'a créé. 
Dans l’exemple de Fred, "Dmitri Shostakovich, Op. 107" apparaît deux fois, dans <creator /> et dans <credit-words />, par exemple.
Quant à "To M. Rostropovich", il apparaît dans <words /> à l’intérieur de <direction-type />.
C’est un des points délicats lorsqu’on passe d’une application à une autre par export puis import de MusicXML.

Pour l’instant, xml2ly ne traite pas du tout les positionnements géométriques sur le papier comme default-x et default-y. Je pourrais ajouter des options pour faciliter ces placements, mais je ne sais pas encore ce qui serait le mieux. 

Je joins ce qui est exporté par MuseScore après import du fichier de Fred, la comparaison est intéressante. 
Les différences de positionnement, par exemple, ne sont pas de simples erreurs d'arrondi :
          <metronome parentheses="no" default-x="-38.52" default-y="14.60" relative-y="20.00">
          <metronome parentheses="no" default-x="-31.52" default-y="65.08" relative-y="20.00">
Il y a aussi :
      <supports element="print" attribute="new-page" type="no"/>
      <supports element="print" attribute="new-page" type="yes" value="yes"/>

La tendance actuelle est que les exécutables soient auto-contenus, c’est à dire qu’ils contiennent toutes les librairies dont ils ont besoin (on dit qu’ils sont ’statiques’ techniquement), comme c’est le cas depuis toujours sur Mac OS. C’est d’ailleurs ce que fait LilyPond depuis la version 2.23. 

Cela permet de les mettre n’importe où dans la hiérarchie des fichiers : on oublie les réglages *PATH, on évite les problèmes de libraries dynamiques incompatibles ou se gênant mutuellement, et tout le monde est infiniment plus heureux…
La justification des .dll et autres à l’époque était la place limitée sur les machines, ce qui est totalement anachronique aujourd'hui.

Je vais passer à des exécutables statiques aussi pour la version Windows, le temps de m’informer sur ce que je dois changer pour ça, vu que je ne connais rien dans ce domaine. Tout avis d’expert est hautement bienvenu…

Bonne journée!

JM

> Le 21 août 2022 à 09:17, Ya Gloops <[email-masked]> a écrit :
> 
> Bonjour !

---

From: yagloops <[email-masked]>
Date: Sun, 21 Aug 2022 11:16:47 +0200

Bravo !
En tout cas ce serai génial de continuer de développer ça car c’est un super outil d’ouverture vers les autres logiciels !
En tout cas je veux bien faire parti des bêta testeurs Windows si tu veux!!!
Gilles

---

From: Jacques Menu <[email-masked]>
Date: Sun, 21 Aug 2022 12:12:01 +0200

> Le 21 août 2022 à 11:16, yagloops <[email-masked]> a écrit :
> 
> Bravo ! 

Merci beaucoup Gilles de rejoindre le cercle très très fermé de ce club, ça va m’aider violemment! 
Mes seuls testeurs actuellement sont sur Linux, et je développe et teste moi-même sur MacOS.

Je suis en train de finaliser la version 0.9.65, avec les README.md et docs mis à jour pour la nouvelle manière d’installer les versions directement utilisables, et l’ajout d’un LISEZ_MOI.md en français.
Reste à l’écoute, comme on dit en anglais…

Un rêve lointain, déjà discuté avec Jean, serait la conversion LilyPond —> LPSR, laquelle décrit la partition dans MusicFormats avec les infos nécessaires pour synthétiser le code LilyPond.
A partir de là, on aurait directement la conversion LilyPond —> MusicXML, par exemple.
Mais ça n’est pas du tout facile vu la manière dont Lily fonctionne m’a dit Jean, qui est le meilleur connaisseur que je connaisse.

Bonne journée!

JM

---

From: [email-masked]
Date: Mon, 22 Aug 2022 10:25:27 +0200 (CEST)

Je suis partant pour tester aussi, si mon antivirus me laisse faire.

Je récupère souvent des partitions sur musescore pour faire mes propres arrangements sous Lilypond.

Fred.

De : Jacques Menu <[email-masked]>
À : yagloops <[email-masked]>
Sujet : Re: musicxml2ly s'arrête
Date : 21/08/2022 12:12:01 Europe/Paris
Copie à : Jacques Menu <[email-masked]>;
   [email-masked] <[email-masked]>;
   lilypond-user-fr <[email-masked]>;
   Jean Abou Samra <[email-masked]>

Bonne journée!

JM

---

From: Jean Abou Samra <[email-masked]>
Date: Mon, 22 Aug 2022 14:27:02 +0200

Bonjour Jacques,

> Le problème de musicxml2ly, c’est que personne ne le maintient plus depuis un gros effort qui a été fait il y a quelque temps. Et comme Python est en dehors de la ligne C++/Scheme, je ne pense pas…

Si je puis me permettre d'apporter une petite nuance, je ne pense
pas que Python soit le problème en soi. Tous les scripts associés
à LilyPond sont écrits en Python, soit musicxml2ly, mais aussi
convert-ly, lilypond-book, quelques autres, et également des scripts
internes qui servent à générer la police Emmentaler, compiler la
documentation, comparer les tests de régression, etc., si bien que
Python est finalement assez utilisé dans LilyPond. Une bonne majorité
des contributeurs actifs à l'heure actuelle savent s'en servir.

Quant au fait que musicxml2ly ne connaisse pas grande activité
depuis que Reinhold Kainhofer a cessé de travailler sur LilyPond...
Ce n'est pas franchement un cas isolé, on pourrait dire la même
chose de beaucoup de parties du code de LilyPond, comme pour beaucoup
de logiciels y compris parmi les plus populaires. Rien d'alarmant à
cela, il y a une batterie de tests de régression qui s'assurent
que les fonctionnalités existantes sont préservées à travers les
changements annexes. C'est simplement légèrement plus problématique
dans le cas de musicxml2ly étant donné que la spécification du MusicXML
évolue, elle.

Cela étant dit, très loin de moi l'idée de te décourager de continuer
à développer xml2ly, qui est un outil beaucoup plus poussé que musicxml2ly.
Je pense simplement que le fait que toi, tu n'apprécies pas Python est ce
qui donne son intérêt au C++ pour xml2ly plutôt qu'un mouvement général
dans la communauté LilyPond :-)

Amicalement,
Jean

---

From: Jacques Menu <[email-masked]>
Date: Mon, 22 Aug 2022 19:46:58 +0200

Hé les gars,

J’aime bien titiller Jean à propos de Python…

Ses arguments sont excellents bien sûr, mais je ne suis décidément pas un hère pète au log.

Bonne soirée!

JM

> Le 22 août 2022 à 14:27, Jean Abou Samra <[email-masked]> a écrit :
> 
> Bonjour Jacques,
> 
>

---

From: Jacques Menu <[email-masked]>
Date: Mon, 22 Aug 2022 19:51:36 +0200

Voici ce que m’a répondu Dominique Fober, le créateur de la librairie libmusicxml2 à propos de la création d’exécutables statiques :

> Pour windows, il suffit que les librairies (dll) soient dans le même dossier que les applications.. Par contre, tu vas avoir le problème des runtime :-( (i.e. les msvcxxx.dll etc..)

Je vais devoir laisser ce problème à d’autres, vu que je connais rien à Windows, même pas du côté utilisateur, sans parler de développement.

JM

> Le 22 août 2022 à 19:46, Jacques Menu <[email-masked]> a écrit :
> 
> Hé les gars,
>