Insérer des extraits de partitions dans un document texte

Gasp !
Le résultat de la compil dépend de la machine ?
Du coup ça va être compliqué pour la portabilité.
Sinon, merci encore pour vos tests et assistance.
Fab

Vous êtes sous quel systèm, distribution, et quel version de frescobaldi (deb, rpm, yum, flatpak) ?

mon environnement de bureau est xfce mais je ne pense pas que c'est ça qui fait la différence de Ghostscript;

Je suis sous GNU/Linux Mageia 9. Je pense que la version de Frescobaldi n'est pas déterminante ici puisque le problème se pose aussi quand je compile en ligne de commande. Parmi ce que je vois qui pourrait jouer :

  • la version de Ghostscript ;
  • la version (et éventuellement le mode d'installation) de Lilypond et des fontes utilisées. Chez moi, cela s'est fait avec les paquets génériques pour GNU/Linux (version 2.24.4) .

Les développeurs de LilyPond recommandent d'utiliser la dernière version (stable ou de développement) de lilypond téléchargée directement sur le site officiel https://lilypond.org/. Cela permet de vérifier si un bug vient vraiment de LilyPond ou s'il est dû à un problème de dépendance ou d'une version de logiciel fournie par les dépôts d'une distribution Linux.

Ensuite concernant le problème de l'affichage des flèches (si j'ai bien suivi car on est loin d'un exemple minimal de code montrant un problème) il s'agit probablement d'un problème lié aux polices. En effet je suppose que ces signes unicode ne sont pas disponibles dans la police par défaut utilisée par LilyPond. Du coup lilypond utilise il me semble une police fallback du système, qui est probablement différente sous Windows, Mac OS ou Linux (et peut-être même entre différentes distributions Linux).
Du coup il faudrait probablement définir la police à utiliser pour ces flèches et autres symboles exotiques (en vérifiant que ceux-ci sont bien disponibles dans la fonte en question).

1 « J'aime »

Merci pour ces éclairages. La compilation lilypond (2.24.4) de ce fichier donne chez moi un fichier .pdf qui, passé en argument de pdffonts, donne :


name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
PNFLHC+C059-Italic                   TrueType          WinAnsi          yes yes no      27  0
PPLHLC+Emmentaler-20                 Type 1C           Custom           yes yes no       8  0
RGLTPQ+FreeSerif                     TrueType          WinAnsi          yes yes yes     53  0
TPNXSU+JuliaMono-Regular             TrueType          WinAnsi          yes yes yes     57  0
OCLNOZ+NotoSerif-Italic              TrueType          WinAnsi          yes yes yes     29  0
RQZMTD+STIXTwoMath                   Type 1C           Custom           yes yes yes     63  0
WLKPAU+C059-Roman                    TrueType          WinAnsi          yes yes no     101  0

(où l'on voit que les polices pas.ttf et pasos.ttf ne sont pas mentionnées, d'ailleurs pas plus que dans la sortie verbeuse de la compilation lilypond).

@Xavier,
Merci pour toutes ces précisions. En fait j'utilise des flèches présentes dans le panneau des caractères spéciaux de Frescobaldi, du coup je pense que ces caractères sont présents dans les fontes LilyPond non ? En terme de flèche, je suis loin d'en être une :joy: en informatique donc j'essaie de prendre le moins de risque possible: j'ai installé la version de Frescobaldi/LilyPond à partir de la logithèque de Linus Mint. La version de LilyPond est 2.24.4. Frescobaldi 3.3. Mais je n'ai eu aucun souci avec ces installations. Avec lilypond-book tout a bien fonctionné sauf lorsque j'essaie d'inclure le posticeo de relevo qui est tronqué:
image
Il semble se passer la même chose avec lyluatex.
A l'examen du fichier .ly secondaire crées par lilypond-book dans le dossier out: tout semble provenir de la ligne :
#(ly:set-option 'eps-box-padding 3.000000) dans le code généré:

%% Generated by lilypond-book
%% Options: [indent=0\mm,line-width=515\pt]
\include "lilypond-book-preamble.ly"


% ****************************************************************
% Start cut-&-pastable-section
% ****************************************************************

#(ly:set-option 'eps-box-padding 3.000000)



\paper {
  indent = 0\mm
  line-width = 515\pt
  % offset the left padding, also add 1mm as lilypond creates cropped
  % images with a little space on the right
  line-width = #(- line-width (* mm  3.000000) (* mm 1))
}

\layout {
  
}

% ****************************************************************
% ly snippet:
% ****************************************************************
\sourcefilename "snippet7.ly"
\sourcefileline 0
\version "2.24.4"
\include "/home/fabienne/Documents/Lilypond/Include/Files/castanuelas_def.ily"
\new DrumStaff{
\drummode {
\globalCasta
\keepWithTag #'systeme7 \Toques
}
}



% ****************************************************************
% end ly snippet
% ****************************************************************

Et je ne sais pas du tout comment faire pour m'en sortir. Il semble y avoir le même genre d'instruction dans lyluatex qui met l'exemple dans une boite eps trop petite et/ou dans un pdf trop petit.
Fab

Bon, la commande de lilypond-book qui fait foirer c'est \include "lilypond-book-preamble.ly"
sans:


avec:

Grâce à Gemini je m'en suis sortie:

  1. Je lance un script python qui découpe ma partition en fonction des tags insérés et crée pour chaque partie taguée un fichier .ly et le pdf qui va bien.
  2. j'inclus le pdf dans le fichier .tex avec la commande \includegraphics (eh oui @Gilles_TIAR c'est finalement le plus simple)

Donc plus de lilypond-book, plus de lyluatex, juste compiler avec pdflatex et c'est tout. Tout est contrôlé et portable: à partir du moment où ça se passe bien dans LilyPond/Frescobaldi ça se passe bien après aussi:
snippet7.pdf (162,0 Ko)
(il est comme il faut: je suis trop contente !)
L'avantage du script c'est que l'on peut le relancer pour rajouter des extraits ou si on souhaite corriger un extrait et il ne crée et ne compile que les fichiers .ly et .pdf nécessaires.
Voilà j'ai résolu le problème je vais pouvoir avancer.
Je vous joins le script si il y en a que ça intéresse.
generate_snippets.py (2,3 Ko)
A adapter à votre cas: faut changer les noms de fichiers bien sûr (tous les fichiers dans le même dossier que le script) et le template lilypond est bien entendu à modifier en fonction de votre partition.
Fab

1 « J'aime »

@FabFlam Bon, heureux que vous ayez trouvé une solution :smiley: Mais pouvez-vous expliquer comment vous taguez votre partition ?

@dbitouze très simple avec \tag #'nomdutag et en suite on met la partie à taguer entre accolades {}. C'est mieux de terminer l'extrait par \bar"|" \break je crois.
Ex: \tag #'extrait1 {c'8 a b g e f \bar"|" \break}
C'est bien expliqué ici: https://lilypond.org/doc/v2.25/Documentation/notation/using-tags.fr.html
Bonne soirée.