|
From: | Jacques Menu |
Subject: | Re: Du nouveau au sujet de ly2xml? |
Date: | Sun, 16 May 2021 17:39:13 +0200 |
Fusionner à la main serait sans doute fastidieux : je pensais à un xmlmerge, que je pourrais dériver de xml2xml. Ce dernier est pensé pour appliquer des modifications au contenu musical d’un texte MusicXML et de produire une nouvelle description MusicXML en fonction des options choisies : jacquesmenu@macmini: ~/musicformats-git-dev/files/musicxml > xml2xml -a What xml2xml does: This multi-pass translator basically performs 6 passes: Pass 1: reads the contents of MusicXMLFile or stdin ('-') and converts it to a MusicXML tree; Pass 2a: converts that MusicXML treeinto a Music Score Representation (MSR) skeleton; Pass 2b: populates the MSR skeleton from the MusicXML tree to get a full MSR; Pass 3: converts the MSR into a second MSR, to apply options; Pass 4: converts the second MSR into a second MusicXML tree; Pass 5: converts the second MusicXML tree to MusicXML code and writes it to standard output. Other passes are performed according to the options, such as printing views of the internal data or printing a summary of the score. The activity log and warning/error messages go to standard error. C’est en fusionnant les descriptions internes MSR obtenues pour différents fichiers que je pourrais en créer une pour le tout, qu’il n’y aurait plus qu’à convertir en MusicXML avec les passes 4 et 5 figurant ci-dessus, qui sont disponibles. Voici un exemple d’option de xml2xml : jacquesmenu@macmini: ~/musicformats-git-dev/files/musicxml > xml2xml -apropos msr-rename-part --- Help for atom "msr-rename-part" in subgroup "Parts" -mrp, -msr-rename-part PART_RENAME_SPEC Rename part ORIGINAL_NAME to NEW_NAME, for example after displaying the names in the score or a summary of the latter in a first run with options '-dmnames, -display-msr-names' or 'dmsum, -display-msr-summary'. PART_RENAME_SPEC can be: 'ORIGINAL_NAME = NEW_NAME' or "ORIGINAL_NAME = NEW_NAME" The single or double quotes are used to allow spaces in the names and around the '=' sign, otherwise they can be dispensed with. Using double quotes allows for shell variables substitutions, as in: DESSUS="Cor anglais" xml2xml -msr-rename-part "P1 = ${DESSUS}" . There can be several occurrences of this option. Un point délicat dans l’export par Frescobaldi est peut-être les voix implicites de LilyPond, comme dans : << c1 \\ { b2 a2 } >> Jean, je te laisse préciser ce que tu m’as dit récemment quant à l'obtention, à partir de la description en Scheme de la musique dans Lily, des informations nécessaires pour la création de code MusicXML ou autre. JM |
[Prev in Thread] | Current Thread | [Next in Thread] |