lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Description erronée de la commande book


From: Jean Abou Samra
Subject: Re: Description erronée de la commande book
Date: Sat, 11 Mar 2023 13:22:20 +0100
User-agent: Evolution 3.46.4 (3.46.4-1.fc37)

Le samedi 11 mars 2023 à 09:29 +0100, Ben a écrit :

Bonjour, 

Je profite de la liste pour relever une incongruité de la commande \book qui m'a toujours laissé perplexe: 

Dans la doc, il est dit que lorsqu'on ne met pas de commande \book, celle-ci est implicite au fichier. 

Or, cela n'est pas correct, car le code suivant fonctionne, et c'est heureux, car sinon je serais très embêté:

\version "2.25.1"

\bookpart{ \markup "coucou" }

test = "forêt"

\bookpart{ \markup "hibou" }

Mais si j'indique explicitement le book, cela ne fonctionne plus:

\version "2.25.1"

\book { \bookpart{ \markup "coucou" }

test = "forêt"

\bookpart{ \markup "hibou" } }

Ce qui fait qu'au lieu de pouvoir compiler facilement plusieurs book en lilypond avec cette instruction: 

\version "2.25.1"

\book{  \bookOutputName "Violon 1" \include "ViolonI.ly"  }

\book{  \bookOutputName "Violon 2" \include "ViolonII.ly"  }

Je dois passer par des shell scripts, ce qui rajoute toute une couche de complexité. 

Cette différence de comportement entre le \book implicite et le \book explicite n'est pas cohérente, elle devrait au moins être précisée dans la doc, ou mieux encore, le \book explicite devrait simplement fonctionner comme le \book implicite. 

Il y a plusieurs sections de la documentation qui parlent de structure des fichiers .ly, laquelle induit en erreur selon vous ?

Je peux comprendre votre point de vue... mais le mien est complètement différent, je n'aurais même pas pensé à mettre tout le contenu entier du fichier dans \book { ... }. Il y a bel et bien création d'un book implicite, simplement c'est à un niveau plus « conceptuel » que le niveau purement syntaxique. \book est une commande qui crée un book à partir des éléments qu'il y a à l'intérieur : expressions musicales, markups, bookparts, scores, blocs paper. Et s'il n'y a aucun \book, LilyPond en crée un à partir des « éléments qu'il y a à l'intérieur du fichier » : expressions musicales, markups, bookparts, scores (les blocs \paper, c'est une autre histoire). Remarquez que les affectations ne sont pas la seule chose qui devrait marcher à l'intérieur d'un \book pour faire fonctionner votre code \book { \include "ViolonI.ly" } : il y aurait aussi notamment les blocs \layout (certes, c'est assez dommage que \layout ne puisse pas se mettre dans un \book, il y a eu encore récemment des discussions à ce sujet et j'ai bon espoir que ça change).

Est-ce que vous ne pouvez pas vous en sortir en mettant le \book autour de la musique à l'intérieur des fichiers ViolonI.ly et ViolonII.ly ?

Cordialement,

Jean

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]