Subject: Silences d'une mesure

From: Philhar <[email-masked]>
Date: Fri, 20 Mar 2020 14:35:20 -0700 (MST)

Bonjour à tous.

Dans les matériels d'orchestre, les mesures de silence portent généralement
le nombre de mesures, y compris s'il n'y en a qu'une, sauf si cette mesure
comporte un point d'orgue.

En 2.18.2, j'utilisais ceci pour imprimer le nombre de mesures à partir de
1:

\version "2.18.2"
{
	\compressFullBarRests 
	\override MultiMeasureRest #'expand-limit = #1 
	\set restNumberThreshold = #0 
	\time 4/4 
	R1 | R1*3
		%% Et dans le cas d'une mesure de silence avec point d'orgue, je revenais
temporairement à la valeur par défaut pour n'avoir que le point d'orgue à la
place du "1":
	\unset restNumberThreshold 
	R1\fermataMarkup
	\set restNumberThreshold = #0 
	R1
}

En 2.20.0, \silencesMulti fonctionne bien (avec la modification de syntaxe:
\override MultiMeasureRest.expand-limit), mais \unset restNumberThreshold 
est sans effet (point d'orgue ET "1").

\version "2.20.0"
{
	\compressFullBarRests 
	\override MultiMeasureRest.expand-limit = #1 
	\set restNumberThreshold = #0 
	\time 4/4 
	R1 | R1*3
	\unset restNumberThreshold 
	R1\fermataMarkup
	\set restNumberThreshold = #0 
	R1
}

Dans la doc 1.2.2, on trouve \compressFullBarRests et \compressMMRests .
Quelle différence ?
J'ai essayé l'un et l'autre sans résultat. Une idée ?

Par ailleurs, félicitations aux développeurs pour la 2.20.0. La compilation
est beaucoup plus rapide, et les simplifications de syntaxe sont très
pratiques, en particulier la saisie des notes répétées sur des rythmes
différents (cis2 4 8 8)

Michel

--
Sent from: http://lilypond-french-users.1298960.n2.nabble.com/

---

From: Valentin Villenave <[email-masked]>
Date: Fri, 20 Mar 2020 23:26:12 +0100

> Dans la doc 1.2.2, on trouve \compressFullBarRests et \compressMMRests .

C’est le bazar. \compressMMRests est censé être la commande
officielle, mais finalement l’autre est encore mentionnée et
fonctionne quasiment pareille sauf pour certaines valeurs longues de
musique ancienne… Bref, le bazar.

> J'ai essayé l'un et l'autre sans résultat. Une idée ?

En fait, \set restNumberThreshold doit se placer _après_ la fin des
silences que l’on veut affecter. C’est un peu bizarre mais il y a une
raison rechnique à cela : dans l’hypothèse où l’objet "silence
compressé" n’est finalement pas nécessaire et ne sera donc pas créé,
on ne peut donc pas lui donner une propriété (comme on ferait pour
n’importe quel autre objet).

Oui, c’est bizarre. Il faudrait que je me penche dessus un de ces
jours (maintenant qu’il y a du temps libre :-)

Attention par ailleurs, à partir de 2.21 la commande \fermataMarkup
sera remplacée par \fermata tout court.

> pratiques

2.21, qui devrait sortir (ahem) très bientôt, apporte encore plus
d’améliorations de performance. En principe.

Cordialement,
V. V.

---

From: Bernard Meylan <[email-masked]>
Date: Fri, 20 Mar 2020 15:33:25 -0700 (MST)

Ça ne répond pas vraiment à ta question, ma solution est d'ajouter à la main,
dans les parties séparées:

mesurevideUn = \markup \override #'(font-name . "Emmentaler") \fontsize #5
\number "1" 

-----
Cordialement

Bernard

---

From: Valentin Villenave <[email-masked]>
Date: Sat, 21 Mar 2020 00:24:44 +0100

On 3/20/20, Bernard Meylan <[email-masked]> wrote:
> \markup \override #'(font-name . "Emmentaler") \fontsize #5 \number "1"

Juste par curiosité, qu’est-ce qui rend ici le \override nécessaire ?
En principe \number suffit à sélectionner les glyphes dans Emmentaler…

V.

---

From: Bernard Meylan <[email-masked]>
Date: Fri, 20 Mar 2020 16:53:46 -0700 (MST)

vvillenave wrote
> En principe \number suffit à sélectionner les glyphes dans Emmentaler…

Juste. J'utilise ce code assez souvent en remplaçant la fonte par défaut par
le Garamond… d'où le \override, il est vrai inutile ici.

-----
Cordialement

Bernard

---

From: Philhar <[email-masked]>
Date: Sat, 21 Mar 2020 00:47:02 -0700 (MST)

J'utilisais la solution de Bernard avant de trouver le snippet qui marchait
bien, et évitait d'oublier un "\un" quelque part.

La solution de Valentin fonctionne, mais me complique la tâche. L'idéal
serait que le retour à 0 de restNumberThreshold se fasse immédiatement après
le \fermataMarkup, ce qui permettrait de tout grouper dans une variable,
comme je le faisais en 2.18.2:
RFermataUn = { 
\unset restNumberThreshold 
R1\fermataMarkup 
\set restNumberThreshold = #0 
}

A noter que avec \compressMMRests, rien ne va.

Cordialement,
Michel

---

From: Valentin Villenave <[email-masked]>
Date: Sat, 21 Mar 2020 10:32:32 +0100

On 3/21/20, Philhar <[email-masked]> wrote:
> comme je le faisais en 2.18.2

Ce sera de nouveau le cas avec la version 2.21 (par contre comme je le
disais il faudra remplacer fermataMarkup par fermata, convert-ly
devrait le faire automatiquement). Par ailleurs, les croisillons
devant les nombres ne seront plus nécessaires.

> A noter que avec \compressMMRests, rien ne va.

C’est parce que \compressMMRests est à placer avant l’expression
musicale, tout comme \relative etc. :

%%%

\version "2.21.0"
\compressMMRests {
  \override MultiMeasureRest.expand-limit = 1
  \set restNumberThreshold = 0
  \time 4/4
  R1 | R1*3
  \unset restNumberThreshold
  R1\fermata
  \set restNumberThreshold = 0
  R1
}

%%%

V.

---

From: Philhar <[email-masked]>
Date: Sat, 21 Mar 2020 07:15:10 -0700 (MST)

Alors, attendons la 2.21... La pièce en chantier devrait pouvoir attendre sa
finalisation pour la fin 2020.

Sur le site de LP, la branche de développement est toujours 2.19.84. 
Où trouve-t-on la 2.21 pour windows 10 ?

Cordialement,
Michel

---

From: Valentin Villenave <[email-masked]>
Date: Sat, 21 Mar 2020 20:26:16 +0100

> Où trouve-t-on la 2.21 pour windows 10 ?

Oui, c’est pour cela que j’ai dit qu’elle allait sortir bientôt ("en
principe"). Il y a déjà eu quelques versions non-officielles de 2.21
publiées ici et là… mais elle n’incluent pas les dernières nouveautés
(et notamment le patch sur les MultiMeasureRests que je viens de
publier ce matin) !

Cordialement,
V.