Subject: pb compile plusieurs mrcx en un recueil

From: Jean-Christophe D <[email-masked]>
Date: Mon, 25 Oct 2010 13:32:12 -0700 (PDT)

Bonsoir,

J'ai essayé de structurer les pièces pour pouvoir compiler aussi bien une
pièce seule que l'ensemble regroupé (recueil).

Je n'arrive pas à comprendre pourquoi le premier morceau ne passe pas...
(Si l'on met le second à la place du premier, c'est pareil, le "second" en
premier ne passe pas... et l'ex-premier passe, ce n'est donc pas un pb
inhérent au 1er plutot qu'à un autre.)

Jean-Christophe.
http://lilypond-french-users.1298960.n2.nabble.com/file/n5672287/test.zip
test.zip 
-- 
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/pb-compile-plusieurs-mrcx-en-un-recueil-tp5672287p5672287.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

---

From: Valentin Villenave <[email-masked]>
Date: Tue, 26 Oct 2010 00:39:02 +0200

> inhérent au 1er plutot qu'à un autre.)

Il n'est pas possible d'inclure des expressions de premier niveau
(toplevel), telles qu'un bloc \paper ou des définitions de variables,
dans un bloc \book ou \bookpart.

Cordialement,
V. Villenave.

---

From: Cécile Huneau <[email-masked]>
Date: Tue, 26 Oct 2010 00:54:04 +0200

Bonsoir,
Pas eu le temps de plancher à fond sur ton fichier, mais déjà une piste 
: ce qui m'étonne moi, ce n'est pas que le 1er ne passe pas... mais que 
les autres passent !
Une récap, un bloc \bookpart :
- peut contenir plusieurs blocs \score \markup \header
- peut contenir un bloc \layout
- ne peut pas contenir de définitions de variables

Je regarde ton fichier...
\bookpart, puis 1er include... allons voir...
\version ... gloups
\paper ... re-gloups
ARMATURAUNO = ... arg une variable !

Bonne soirée !
Cécile

Le 25/10/2010 22:32, Jean-Christophe D a écrit :
> _______________________________________________
> liste de diffusion lilypond-user-fr
> [email-masked]
> http://lists.gnu.org/mailman/listinfo/lilypond-user-fr

---

From: Cécile Huneau <[email-masked]>
Date: Tue, 26 Oct 2010 01:41:43 +0200

Hum... bon en fait j'ai jeté un oeil. Ce qui faisait que chez moi ça ne 
compilait pas du tout chez moi c'est que le fichier déclaré dans 
NOMFILEGLOBAL n'existait pas, j'ai mis "TOUT.ly" à la place.
J'ai ensuite bestialement viré le \bookpart et les accolades qui s'y 
rapportaient pour ne laisser que les \include "APcanto1.ly" etc. et ça 
marche.

Maintenant si tu veux absolument que ce soit dans un bookpart il va 
falloir que tu revois la structure de tes fichiers sources :
- Virer le tocItem (que tu mettrais dans "TOUT.ly") ou alors le mettre 
dans une variable
- Mettre le \score de la fin dans une variable par exemple 
SPARTITOCOMPLETOUNO

"APcanto1.ly" ne compile donc plus rien du tout, pour compiler juste 
cette partie il te faudra un autre fichier avec :
\include "APcanto1.ly"
\score{ \SPARTITOCOMPLETOUNO }

Pour le fichier "TOUT.ly" :
\include "APcanto1.ly"
\include "APcanto2.ly"
% etc.

\bookpart {
     \tocItem "blabla 1"
     \score{ \SPARTITOCOMPLETOUNO }
     \tocItem "blabla 2"
     \score{ \SPARTITOCOMPLETODUE }
     %etc.
}

Et tant que tu en es à revoir tes fichiers :
- Là ça va que tes partitions sont encore relativement courtes avec 
relativement peu de voix... mais si tu penses avoir un jour des besoins 
plus grands alors manipuler un énorme fichier par partie sera un vrai 
calvaire, et comment fais-tu actuellement pour ne compiler qu'une seule 
voix ?
Donc je te conseillerais de créer une arborescence avec répertoires :
1 répertoire par partie contenant :
1 fichier par voix (avec uniquement les notes, comme ça c'est 
récupérable facilement dans une variable)
1 fichier "global" avec l'armure et tous les réglages communs à toutes 
les parties (là encore que des infos musicales, pas de définitions de 
variables)
1 fichier "score" qui contiendrait juste le bloc \score (toujours la 
même raison : on peut faire toto = \include "monrep/score.ily")
A la racine de l'arborescence tu places tes fichiers "partie1.ly" 
"partie2.ly" ... "tout.ly" dans lesquels tu inclus tout ce que tu veux 
inclure, tu mets tes \score ou tes \bookpart, les \paper etc. et 
normalement ça roule.
- Remarque minime au passage, j'ai vu ceci dans ton fichier global : 
\underline "                                                        " . 
Pour ça il existe aussi la commande \draw-line ;-)

Bon courage !
Cécile

N'empêche que je me demande encore comment ça pouvait marcher 
partiellement... lilypond est bien mystérieux.

---

From: Jean-Christophe D <[email-masked]>
Date: Tue, 26 Oct 2010 05:09:36 -0700 (PDT)

Bonjour,

Merci pour vos réponses!
Dans l'ordre...

<de Valentin Villenave-2>
> dans un bloc \book ou \bookpart. 

Et pourtant: j'ai déjà inséré des \header ET \paper dans des \book ou
\boormark,
afin d'avoir des marges et titres différents selon le \bookpart.
Je peux transmettre l'exemple si cela intéresse quelqu'un...
(dans ce cas, mes includes étaient bien AVANT le \book et tout les reste,
mais
je devais avoir un second fichier par morceau pour le générer seul.)

<de Cile-2>

> ARMATURAUNO = ... arg une variable !

Il est vrai que j'ai déjà utilisé cette structure, mais sans \bookpart.

> rapportaient pour ne laisser que les \include "APcanto1.ly" etc. et ça 

Oui c'est vrai, mais j'explique à la fin de ce message la raison pour
laquelle j'ai tenté d'inclure des bookmark...

> le fichier déclaré dans 

Oups, erreur de dernière seconde, la correction est la bonne !

> ...il va falloir que tu revois la structure de tes fichiers sources...
> etc.

Mon but était d'arriver a générer chaque morceau seul en compilant
directement
APcanto1.ly, etc. puis de réussir à en faire un recueil sans passer par un
ou
plusieurs fichiers intermédiaires... Mais cela semble impossible(?)

> plus grands alors manipuler un énorme fichier...

... alors je me créerait une structure adaptée !  :)
Evidemment, pour des grandes partitions, chaque partie se doit d'etre dans
un
fichier séparé...
Par ailleurs, je ne vois pas (encore) la nécéssité d'éclater mon recueil en
différents répertoires... je préfère avoir ma petite dizaine de fichiers
sous
les yeux !

> ...et comment fais-tu actuellement pour ne compiler qu'une seule 
> voix ? 

Les parties de ces petits chant+piano m'ont pas besoin d'etre éditées
séparéments...
(mais les parties sont déjà TOUTES dans des variables, au cas où...)
Actuellement, pour n'éditer qu'une voix, je mets donc simplement un
commentaire au
bon endroit:

CANTO = MELODIA + TESTO %%% éventuelmt mélodie sans texte par mise en
comment.
PIANO = PIANODESTRA + PIANOSINISTRA %%% choix MD ou MG par mise en
commentaire
PARTITION = CANTO + PIANO %%% choix chant ou piano par mise en commentaire

> j'ai vu ceci dans ton fichier global : 
> \underline "                     " .
> Pour ça il existe aussi la commande \draw-line

Merci beaucoup, je vais l'essayer !

Et enfin, last but not leat:

> si tu veux absolument que ce soit dans un bookpart...

Je ne veux pas "absolument", mais c'est que sinon je n'arrive pas à gérer
correctement mon document dans son ensemble:
 - Page de garde + 2 pages sans numéro de page avec titre, sous-titre etc.
   globaux (et éventuellement avec des marges différentes du reste du doc)
 - musique (9 morceaux / 10 pages) "normales", chacun avec titre et
sous-titre
 - 2 pages de fin de doc (une blanche + dernière avec le tagline) sans
numéro de
    page... sans titre ni sous-titre !

Je crois que je vais devoir retourner à ma structure précédente, sans
possibilité
de compiler chaque fichier chant individuellement, mais en passant pour cela
par
un fichier supplémentaire...

La seule vraie contrainte me semble le fait que l'on ne puisse pas déclarer
de
variable dans un \bookpart.

Merci vraiment beaucoup pour ces réponse (circonstanciées)!!!  :)

Jean-Christophe.
-- 
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/pb-compile-plusieurs-mrcx-en-un-recueil-tp5672287p5674372.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

---

From: "j-f.lucarelli" <[email-masked]>
Date: Tue, 26 Oct 2010 20:31:07 +0200

== En réponse au message du 26-10-2010, 14:27:48 ==

>variable dans un \bookpart.
Une autre contrainte très gênante est l'impossibilité de déclarer plus d'un #(set-global-staff-size xx) par \book
Une déclaration par \bookpart serait souvent intéressante, mais à part la première, toutes les autres sont rejetées.

========================================

---

From: Jean-Charles Malahieude <[email-masked]>
Date: Wed, 27 Oct 2010 10:40:50 +0200

Le 26/10/2010 20:31, j-f.lucarelli disait :
>> La seule vraie contrainte me semble le fait que l'on ne puisse pas
>> déclarer de variable dans un \bookpart.
>>
> Une autre contrainte très gênante est l'impossibilité de déclarer
> plus d'un #(set-global-staff-size xx) par \book Une déclaration par
> \bookpart serait souvent intéressante, mais à part la première,
> toutes les autres sont rejetées.
>

C'est là que tu te trompes, mon cher JF. Relis bien le début de la 
rubrique 4.2.1 Définition de la taille de portée du manuel de notation 
en version de développement :

#(set-global-staff-size 14) fixe à 14 la taille *globale*, donc pour 
*toutes* les partitions (blocs \score) d'un même fichier.

#(layout-set-staff-size 26) mentionné dans le bloc \layout d'un \score 
particulier me permettra de lâcher mes double-foyer pour cette chanson 
(les autres, je fais du plaid Bach).

@+
Jean-Charles

---

From: Valentin Villenave <[email-masked]>
Date: Wed, 27 Oct 2010 12:19:14 +0200

> (les autres, je fais du plaid Bach).

Joli ! :)

Valentin.

---

From: "j-f.lucarelli" <[email-masked]>
Date: Wed, 27 Oct 2010 16:26:35 +0200

=================================
  
== En réponse au message du 27-10-2010, 10:40:57 ==

>(les autres, je fais du plaid Bach).

Un grand merci pour l'info. Je ne serai plus obligé de revoir la mise en page de toute la couverture quand je change le global-staff-size :-/

Jean-François