Subject: reprise différente : cas un peu tordu !

From: dmalik <[email-masked]>
Date: Tue, 17 Nov 2009 13:40:26 -0800 (PST)

Bonjour
Soit une ligne de soprane qui contient 10 mesures pour le couplet 1
Soit la ligne de basse qui commence à la mesure 3 pour le couplet 1 et qui
se termine à la mesure 1 du couplet 2 des soprane, 
c'est à dire que la mesure 1 basse contient une pause au couplet 1, (des
sop) mais une note au couplet 2 des sopranes
à la fin du couplet 2 c'est le même pb, au couplet 3 la fin :
comment l'écrire sous lilipond ?

Merci
-- 
View this message in context: http://n2.nabble.com/reprise-differente-cas-un-peu-tordu-tp4021468p4021468.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

---

From: François Martin <[email-masked]>
Date: Tue, 24 Nov 2009 20:20:07 +0100

2009/11/17 dmalik <[email-masked]>

> comment l'écrire sous lilipond ?

Salut,

pour moi ton code devrait ressembler à ça :

{
{ première mesure du couplet 1 }
\repeat volta 3 { musique commune à tous les couplets }
\alternative { { fin des couplets 1 et 2 } { fin du couplet 3 } }
}

J'avais aussi pensé à quelque chose de moins chargé visuellement : on peut
penser la première mesure des basses comme une polyphonie basique, ce qui
donnerait par exemple

{
<<
{ R1 } \\ { c4 r r2 }
}

En espérant t'avoir aidé ;)
fran

---

From: "j-f.lucarelli" <[email-masked]>
Date: Tue, 24 Nov 2009 23:29:16 +0100

Bonsoir à tous,

La figure ci-jointe constitue un cas assez compexe à résoudre.

J'ai utilisé la notation polyphonique, et pour le premier 'do' inférieur, j'ai utilisé \stemUp, en fixant la longeur de la hampe à 14

En agrandissant plus fort, on remarque que les deux queues des croches sont très légèrement décalées, mais le résultat me satisfait.

N'y aurait-il pas de solution plus simple que cet artifice assez tordu ?

J'ai essayé sans succès d'utiliser un silence invisible.

Merci d'avance de vos conseils

Jean-François Lucarelli
[email-masked]

---

From: Xavier Scheuer <[email-masked]>
Date: Tue, 24 Nov 2009 23:44:47 +0100

> N'y aurait-il pas de solution plus simple que cet artifice assez tordu ?

\once \override Stem #'flag-style = #'no-flag
pour enlever "la queue" il me semble (juste avant la note).

Il y a sûrement moyen de jouer avec des notes masquées (\hideNotes)
mais ton idée de solution est très bien.

Lilypondement,
Xavier

-- 
Xavier Scheuer <[email-masked]>

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 25 Nov 2009 00:15:42 +0100

> mais ton idée de solution est très bien.

Un exemple de solution avec les \hideNotes (pour la partie visible de
l'image envoyée par Jean -François) :

{
  \relative c' {
    <<
      {
        s2 s4 s8  % ce qu'il y a avant normalement
        <c c'>8~ | c'8\noBeam g'( c, e)
      }
    \\
      {
        s2 s4 s8  % idem, ce qu'il y a avant
        \hideNotes c,8~ \unHideNotes | c8 r8 r4
      }
  }
}

---

From: "j-f.lucarelli" <[email-masked]>
Date: Wed, 25 Nov 2009 00:37:55 +0100

>        \hideNotes c,8~ \unHideNotes | c8 r8 r4

Ok, merci pour ces 2 réponses rapides, les 2 solutions paraissent élégantes.

Finalement, il est préférable de ne pas cacher les notes, ce qui risquerait de fausser la sortie MIDI - non pas que le MIDI me satisfasse, mais il permet de tester le fichier obtenu et de détecter de (nombreuses) erreurs ;-) 

Jean-François

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

---

From: "j-f.lucarelli" <[email-masked]>
Date: Wed, 25 Nov 2009 01:21:27 +0100

(re)bonsoir à tous,

Voilà, les bases de Lilypond commencent à être assimilées, mais il me reste un problème, assez aléatoire, de mise en page.

Dans les "grosses" partitions (orchestre symphonique, 600 mesures), certains systèmes s'arrêtent au milieu de la page, ou au tiers, sans aucune raison valable (voir l'exemple ci-dessous en format très réduit).

J'utilise la version 2.12.2 sous Windows XP
Je place le set-global-staff-size à 9
Pour les variables "papier" je me suis inspiré de l'article trouvé en http://www.opensubscriber.com/message/[email-masked]/11742101.html , par Daniel Cartron

En l'occurence :

%% Dimensions horizontales
	paper-width = 210\mm 
	left-margin = 10\mm 
	line-width = 190\mm 
	indent = 25\mm 
	short-indent = 0\mm 
	horizontal-shift =  0.0 

%% Dimensions verticales
	paper-height = 297\mm
	before-title-space = 10\mm 
	top-margin = 5\mm  
	between-title-space = 2\mm 
	head-separation = 4\mm 
	after-title-space = 5\mm 
	between-system-padding = 4\mm 
	between-system-space = 20\mm 
	foot-separation = 4\mm
	bottom-margin = 6\mm
	page-top-space = 12\mm  

	ragged-bottom = ##f 
	ragged-last = ##f 
	ragged-last-bottom = ##f 
	ragged-right = ##f 
	systemSeparatorMarkup = \slashSeparator

mais d'autres valeurs déplacent le problème.

Jean-François Lucarelli

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 25 Nov 2009 09:12:43 +0100

Le Wed, 25 Nov 2009 00:37:55 +0100,
"j-f.lucarelli" <[email-masked]> a écrit :

> Finalement, il est préférable de ne pas cacher les notes, ce qui
> risquerait de fausser la sortie MIDI

Bah, ce n'est pas trop grave, vu que la note cachée est en général
reprise (non masquée) dans une autre voix (cette voix faisant en général
partie d'un "ensemble piano" par exemple).
Et parfois il n'est possible d'obtenir le résultat désiré qu'en
recourant aux notes masquées :
http://lsr.dsi.unimi.it/LSR/Item?id=150

> non pas que le MIDI me satisfasse, mais il permet de tester le
> fichier obtenu et de détecter de (nombreuses) erreurs ;-) 

Oui, le fichier MIDI généré par LilyPond n'a rien à envier aux fichiers
MIDI qu'on peut retrouver sur espace-midi.com  ;-)

Xavier

---

From: Pierre RUEL <[email-masked]>
Date: Wed, 25 Nov 2009 12:51:22 +0100

Me suis de nouveau gouré de destinataire, pardon:

Bonjour,
J'ai écrit:
\corun = \new Voice \relative do'' { \set Staff.instrumentName = #"Cor 1 "
(musique)
}
et j'ai aussi essayé avec:
corun = etc. etc.

Dans les 2 cas JEdit répond:
(ligne):0 Erreur: chaîne d'échappement inconnue
même ligne: Erreur: syntax error, unexpected STRING

Pourtant ça correspond aux exemples de variables du cours expreess du 
site Lilypond. Comprends pas.
Merci d'avance de vos lumières.
Cordialement
Pierre

---

From: John Mandereau <[email-masked]>
Date: Wed, 25 Nov 2009 13:28:08 +0100

Le mercredi 25 novembre 2009 à 12:51 +0100, Pierre RUEL a écrit : 
> Me suis de nouveau gouré de destinataire,

... ainsi que de mode de création d'un novueau message.  Au risque de me
répéter, ça ne se fait pas de répondre à un message précédent pour
commencer une nouvelle discussion, merci d'utiliser le bouton ou la
commande "Nouveau message", afin de garder la cohérence des fils de
discussion.

> même ligne: Erreur: syntax error, unexpected STRING

Ce n'est pas JEdit, c'est LilyPond, qui est cependant lancé par JEdit et
dont JEdit affiche les messages.

> site Lilypond. Comprends pas.

Le langage ly, comme tout langage de programmation, est généralement
sensible à la moindre chiure de mouche (virgule en jargon typographique)
en plus ou en moins.  C'est très frustrant au début, mais avec
l'habitude on s'y fait.

Dans ce cas, on n'utilise une barre oblique inverse '\' que pour
*utiliser* une variable, et non pas pour la *définir*.

Salutations lilyesques,
John

---

From: Cile <[email-masked]>
Date: Wed, 25 Nov 2009 13:44:45 +0100

Bonjour,
Pas de \ devant corun : tu veux mettre des données dans ta variable et 
non les récupérer.
Puisque tu dis avoir testé c'est qu'il doit s'agir d'autre chose...
Pas de quoi tester mais... tu as bien pensé au \include "italiano.ly" ?
Cordialement
Cécile

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 25 Nov 2009 13:51:39 +0100

Le Wed, 25 Nov 2009 12:51:22 +0100,
Pierre RUEL <[email-masked]> a écrit :

> \corun = \new Voice \relative do'' { \set Staff.instrumentName =
> #"Cor 1 " (musique)
> }

Je pensais que c'était réglé.

> site Lilypond. Comprends pas.

Je ne vais pas répéter ce que vient de dire John concernant
l'utilisation de '\' et des variables.
Ça fonctionne chez moi, je pencherais donc plutôt vers une autre
erreur : l'oubli de \include "italiano.ly" par exemple.
Le code ci-dessous fonctionne, si l'erreur persiste, envoyer le
fichier .ly complet...

\version "2.13.8"
\include "italiano.ly"

corun = \new Voice \relative do'' {
  \set Staff.instrumentName = #"Cor 1"
  do1
}

\score {
  \corun
}

---

From: Pierre RUEL <[email-masked]>
Date: Wed, 25 Nov 2009 19:50:15 +0100

Bonsoir,
Merci de ces pistes. Oui, j'ai bien pensé à \include "italiano.ly" et 
vérifié l'orthographe plusieurs fois. Je vais chercher ailleurs. Coq à 
l'âne: ton avis sur l'avis ;-) de D. Cartron sur Mandrivia et alii 
m'intéresse. Bien reçu ma demande ?
Merci d'avance
Nymphéatiques salutations
P. Ruel

---

From: Pierre RUEL <[email-masked]>
Date: Wed, 25 Nov 2009 20:05:44 +0100

Bonsoir et merci,
Non, ce n'était pas réglé, je n'ai rouvert mon courrier qu'à l'instant.
J'ai copié votre exemple et il est vrai qu'il fonctionne, merci. Je n'ai 
pas oublié \include "italiano.ly" et je ne vois aucune faute de frappe. 
Mon fichier représente près de 400 feuillets A4, je vais d'abord faire 
un essai avec un extrait calqué sur votre exemple. Comme je l'ai dit par 
ailleurs, mon antislash devant la variable était un test, mais j'ai eu 
les mêmes messages d'erreur avec et même sans antislash devant la 
variable. Donc il y a autre chose. Sans nouvelles de ma part, c'est que 
j'aurai trouvé quoi.
Reste la question des versions de LilyPond; je l'ai téléchargé lundi ou 
mardi dernier. Quand je clique dessus, j'ai une fenêtre au bas de 
laquelle figure la mention "version 2.12.0". Or vous en êtes à 2/13.8. 
Comment avez-vous fait ? A quelle fréquence faut-il réinstaller LilyPond ?
Nymphéatiquement à vous
P. Ruel

---

From: Pierre RUEL <[email-masked]>
Date: Wed, 25 Nov 2009 20:08:52 +0100

Bon, c'est "répondre à tous" qu'il fallait cliquer. Voici:

Bonsoir,
(ça se dit)
Désolé de cette infraction à la netiquette. Aucune des listes auxquelles 
je suis abonné (demi-douzaine) ne fonctionne ainsi, à savoir que 
"Répondre" reprend l'adresse de l'auteur du précédent mél et non celle 
de la liste (que je ne sais pas par coeur). Toutes mes excuses, je serai 
plus attentif.
J'ai déjà marché dans bien des chiures de mouches et ça ne porte pas 
bonheur. En ce qui concerne l'antislash devant la variable, je ne l'ai 
ajouté qu'à titre de test mais j'ai eu le même message d'erreur dans un 
cas comme dans l'autre, faudra donc que je cherche autre chose. Merci et 
à bientôt.
Nymphéatiquement vôtre
P. Ruel

John Mandereau a écrit :
 >> Pourtant ça correspond aux exemples de variables du cours expreess 
du site Lilypond. Comprends pas.

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 25 Nov 2009 20:50:46 +0100

Le Wed, 25 Nov 2009 20:05:44 +0100,
Pierre RUEL <[email-masked]> a écrit :

> Bonsoir et merci,
> Non, ce n'était pas réglé, je n'ai rouvert mon courrier qu'à
> l'instant. J'ai copié votre exemple et il est vrai qu'il fonctionne,
> merci. Je n'ai pas oublié \include "italiano.ly" et je ne vois aucune
> faute de frappe.

Dans ce cas il s'agit sûrement d'une erreur due à une accolade en trop
(ou manquante). C'est une erreur qui arrive encore assez régulièrement
et malheureusement LilyPond n'est pas très bavard quand cela se
produit (pas de numéro de ligne par exemple).
Une indentation propre aide à éviter/corriger ce genre d'erreur.
De même que jEdit (et d'autres bons éditeurs de texte) mets en
surbrillance l'accolade ouvrante/fermante correspondante lors du
passage sur une accolade. Il permet aussi de "replier" les blocs.

> Mon fichier représente près de 400 feuillets A4, je vais d'abord
> faire un essai avec un extrait calqué sur votre exemple.

400 feuilles A4 uniquement pour corun ?
Il est préférable d'utiliser plusieurs variables contenant moins de
musique à mon avis. Par exemple diviser corun en corUnMvtUn,
corUnMvtDeux, ...
Sinon pour "débuguer" une expression musicale assez longue, ne compiler
que certains petits passages en commentant le reste avec %{ ... %}

> Reste la question des versions de LilyPond; je l'ai téléchargé lundi
> ou mardi dernier. Quand je clique dessus, j'ai une fenêtre au bas de 
> laquelle figure la mention "version 2.12.0". Or vous en êtes à
> 2/13.8. Comment avez-vous fait ? A quelle fréquence faut-il
> réinstaller LilyPond ? Nymphéatiquement à vous

Il y a deux branches en ce qui concerne les versions de LilyPond :
Stable et Développement.
Les versions stables (dont le deuxième numéro de version est pair) sont
suffisamment testées, n'ont plus de problèmes majeurs et dont la
syntaxe est arrêtée.
Les versions de développement (deuxième numéro impair), qui sont
différentes itérations entre 2 versions stables. La parution de
nouvelles versions de celles-ci sont donc plus fréquentes, elles sont
moins testée, des problèmes sont possibles, la syntaxe est susceptible
d'évoluer.

La version de développement 2.13.8 est sortie il y a quelque jours.
Elle n'est pas encore référencée sur le site mais est disponible ici :
http://lilypond.org/download/binaries/
(mingw pour Windows, linux-x86 pour Linux).
En général on retrouve les dernières versions stable et de
développement sur la page http://lilypond.org/install/ (stable
au-dessus, développement en dessous).

Libre à vous de rester en stable ou d'être plus aventurier et d'essayer
la développement.  ;-)

Lilypondement,
Xavier

PS : Sympa aussi le "Nymphéatiquement à vous" !  ;-D

---

From: Frédéric Bron <[email-masked]>
Date: Wed, 25 Nov 2009 20:57:39 +0100

> Dans les "grosses" partitions (orchestre symphonique, 600 mesures), certains systèmes s'arrêtent au milieu de la page, ou au tiers, sans aucune raison valable (voir l'exemple ci-dessous en format t…

Bizarre, j'ai recopié une symphonie sans problème. J'utilise juste les
paramètres ci-dessous. Je suis aussi sous Windows XP avec 2.12.2.
Frédéric

#(set-global-staff-size 11)
\paper {
  system-separator-markup = \slashSeparator
}

\score {
  \new Score <<
    ...
  \layout { \context { \RemoveEmptyStaffContext } }
}

---

From: Valentin Villenave <[email-masked]>
Date: Wed, 25 Nov 2009 21:15:49 +0100

2009/11/25 Pierre RUEL <[email-masked]>:
> J'ai copié votre exemple et il est vrai qu'il fonctionne, merci. Je n'ai pas
> oublié \include "italiano.ly" et je ne vois aucune faute de frappe. Mon
> fichier représente près de 400 feuillets A4, je vais d'abord faire un essai
> avec un extrait calqué sur votre exemple. Comme je l'ai dit par ailleurs,
> mon antislash devant la variable était un test, mais j'ai eu les mêmes
> messages d'erreur avec et même sans antislash devant la variable. Donc il y
> a autre chose. Sans nouvelles de ma part, c'est que j'aurai trouvé quoi.

Au besoin, vous pouvez toujours envoyer une archive de votre code
en-dehors de la liste (par exemple à Xavier ou moi-même).

> mardi dernier. Quand je clique dessus, j'ai une fenêtre au bas de laquelle
> figure la mention "version 2.12.0". Or vous en êtes à 2/13.8. Comment
> avez-vous fait ? A quelle fréquence faut-il réinstaller LilyPond ?

Les plus geeks d'entre nous installent la version dite "de
développement" (qui sort une ou deux fois par mois, nous en sommes à
2.13.8). La version dite "stable" (actuellement 2.12) sort en gros une
fois par an,  et convient tout à fait à une utilisation de base.
Au demeurant, l'indication de version à laquelle vous faites allusion
n'est pas souvent mise à jour, donc vous avez probablement une version
plus récente. Le meilleur moyen d'en avoir le coeur net est de taper
"lilypond" dans une ligne de commande (comme je l'indiquais dans une
de mes vidéos, la n°5 de mémoire).

Cordialement,
Valentin.

---

From: "j-f.lucarelli" <[email-masked]>
Date: Wed, 25 Nov 2009 21:18:42 +0100

== En réponse au message du 2009-11-25, 20:57:41 ==

Je viens de passer à Lily 2.13, toujours la même chose. J'utilise également le \RemoveEmptyStaffContext et le \slashSeparator  

Ça se produit sur tous les mouvements de l'oeuvre. Je peux le comprendre sur le mouvement en cours de constructiion, mais sur les autres ??

Je vais essayer d'augmenter le staff-size, qui est actuellement à 9 (j'ai essayé avec 9.2, toujours le même problème).

Pour l'un des mouvements, j'ai un message d'erreur "object is not a markup"  mais sans signaler la ligne de code ni la portée défectueuse.

Mais ailleurs, juste des avertissements quand il y a plus de 2 constructions << >> superposées. Et aucun rapport avec les sauts de système et ces empilements.

On va investiguer ;-)

---

From: "j-f.lucarelli" <[email-masked]>
Date: Wed, 25 Nov 2009 22:18:11 +0100

Bonsoir à tous,

Étrange erreur que celle-ci : je place un point d'orgue au dessus de la mesure finale, par l'instruction

R2 * 19 R2 \fermata \bar "|."

et je reçois les messages suivants:

erreur de programmation : cannot align on self: empty element
poursuite ; croisons les doigts.

Et plus loin :

This object should be a markup: ()

Si je remplace le R2 par un r2, plus aucun problème, mais l'alignement du point d'orgue n'est pas parfait.

En plus du message d'erreur, le décompte des mesures est incorrect, Lilypond ajoute deux fois les 19 mesures vides.

Je regarde ailleurs, car j'ai déjà utilisé le point d'orgue en fin de mesure vide, et je constate que j'avais placé

^\fermataMarkup \bar "|."

Effectivement, cette dernière formule fonctionne correctement dans le premier cas cité plus haut.

Alors, quelle est la différence entre \fermata et ^\fermataMarkup, et pourquoi le premier fonctionne-t-il sur un r2, mais pas sur un R2.
La question est peut-être idiote, mais je cherche à comprendre.

Jean-François Lucarelli

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 25 Nov 2009 22:43:06 +0100

Le Wed, 25 Nov 2009 22:18:11 +0100,
"j-f.lucarelli" <[email-masked]> a écrit :

> Je regarde ailleurs, car j'ai déjà utilisé le point d'orgue en fin de
> mesure vide, et je constate que j'avais placé
> 
> Alors, quelle est la différence entre \fermata et ^\fermataMarkup, et
> pourquoi le premier fonctionne-t-il sur un r2, mais pas sur un R2. La
> question est peut-être idiote, mais je cherche à comprendre.

Les silences multimesures sont différents des silences normaux : ils
sont représentés sous la forme d'une pause même si la mesure n'est pas
4/4, ils sont centrés dans la mesure, ils peuvent être compressés avec
la commande \compressFullBarRests, ...
Toutes ces raisons font qu'ils ont une syntaxe particulière sous
lilypond.
En ce qui concerne fermataMarkup et bien je suppose que comme les
MultiMeasureRest sont différents des simples notes la méthode
habituelle ne peut être utilisée (d'où l'existence de cette commande
\fermataMarkup).

Je n'ai pas les connaissances suffisantes pour dire pourquoi il en est
ainsi (si un dev passe par ici...), mais je peux dire que cette
particularité est bien mentionnée dans la documentation :
http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Writing-rests.fr.html#Full-measure-rests

Cordialement,
Xavier

---

From: "j-f.lucarelli" <[email-masked]>
Date: Thu, 26 Nov 2009 00:23:44 +0100

=================================
  
== En réponse au message du 2009-11-25, 22:43:28 ==

Voilà, j'ai été un peu  vite pour dire que ça fonctionnait : en fait, le ^\fermataMarkup ne fonctionne QU'AVEC les silences multimesure ou avec les mesures de type R2. Pour les autres cas ( c2 r2\fermata, par exemple), il FAUT utiliser le simple \fermata, sinon, le point d'orgue ne s'imprime pas.

Un peu compliqué, mais logique ;-)

---

From: Valentin Villenave <[email-masked]>
Date: Thu, 26 Nov 2009 01:44:40 +0100

> On va investiguer ;-)

Oui, de façon à ce que je puisse enregistrer un tel bug si bug il y a.
Nous sommes en train de stabiliser Lily en vue de la version 2.14, et
c'est certainement le genre de surprises qu'on veut éviter.

Cordialement,
Valentin