Subject: Centrer les nuances sur le centre des notes

From: Damien <[email-masked]>
Date: Mon, 7 Feb 2011 13:39:06 -0800 (PST)

Bonjour à tous,

je découvre depuis peu LiyPond et progresse grâce notamment à votre mailing
list et bon nombre de réponses aux questions que je me pose.

Parmi celles-ci figure l'alignement horizontal des indications de nuances et
de pédale sur une partition de piano. J'ai bien trouvé le snippet qui crée
un contexte appelé "Dynamics". Cependant, quand j'utilise celui-ci, les
indications de nuance se trouvent centrées verticalement par rapport au bord
gauche de la note associée alors qu'en temps normal LilyPond centre les
nuances par rapport au centre de la note associée.

J'utilise la dernière version stable de LilyPond soit 2.12.3

L'un d'entre vous aurait-il la raison de cette différence et éventuellement
le moyen de rétablir la position comme sur une portée 'normale' ?

Merci pour votre aide.
-- 
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Centrer-les-nuances-sur-le-centre-des-notes-tp6001943p6001943.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

---

From: Mike Solomon <[email-masked]>
Date: Mon, 7 Feb 2011 17:19:20 -0500

> le moyen de rétablir la position comme sur une portée 'normale' ?

Il faut ajouter

\override DynamicText #'X-offset = #0.0

à la definition du contexte "Dynamics".

Cordialement,
Mike

---

From: Damien <[email-masked]>
Date: Tue, 8 Feb 2011 14:29:57 -0800 (PST)

Bonsoir Mike,

j'ai essayé votre proposition, malheureusement elle ne fonctionne pas. En
ajoutant \override DynamicText #'X-offset = #0.0, on obtient l'équivalent
d'un ajustement gauche sur la hampe de note.

Je vous joins un extrait de mon code qui permet de voir (2ème mesure) qu'en
contexte Staff LilyPond centre sur le milieu de la note et non sur la hampe.

% Created on Sun Nov 07 16:52:42 CET 2010
\version "2.12.3"

%Définition de ligne de basse Do v1
LigneBasseDoUn = {
	\relative c {
	<< {r16 c8 c c c16} \\ {c,2} >>
	}
}

%-------------------------------------------------------------------------------

%Définition de la main droite
RightHand = {
	\time 2/4
	\tempo 4=36
	\key ees \major
	\clef treble
	\relative c' {

%Mesure 001
	<< { r16 g bes ees f8 ees } \\ { s16 g,~ <g bes>4. } >>

%Mesure 002	
	<< { r16 g \ppp bes ees f8 ees } \\ { s16 g,~ <g bes>4. } >>

	\bar "|."
	}
}

%-------------------------------------------------------------------------------

%Définition de la main gauche
LeftHand = {
	\time 2/4
	\tempo 4=36
	\key ees \major
	\clef bass

%Mesures 001 à 002					
	\repeat unfold 2 \LigneBasseDoUn
	
}

%-------------------------------------------------------------------------------

%Définition des nuances

Nuances = {
	\time 2/4
	\tempo 4=36

%Mesure 001
	s16 s \ppp s4.

}

%-------------------------------------------------------------------------------

%Définition de la partition

\paper {

}

\score {
	\new PianoStaff <<
		\new Staff << \RightHand >>
		\new Dynamics << \Nuances >>
		\new Staff << \LeftHand >>

	\layout {

%Définition du contexte Dynamics
		\context {
			\type "Engraver_group"
			\name Dynamics
			\alias Voice
			\consists "Output_property_engraver"
			\consists "Piano_pedal_engraver"
			\consists "Script_engraver"
			\consists "New_dynamic_engraver"
			\consists "Dynamic_align_engraver"
			\consists "Text_engraver"
			\consists "Skip_event_swallow_translator"
			\consists "Axis_group_engraver"

			pedalSustainStrings = #'("Ped." "*Ped." "*")
			pedalUnaCordaStrings = #'("una corda" "" "tre corde")
			\override DynamicLineSpanner #'Y-offset = #0
			\override TextScript #'font-size = #2
			\override TextScript #'font-shape = #'italic
			\override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)

		}
%Modification PianoStaff pour accepter Dynamics
		\context {
			\PianoStaff
			\accepts Dynamics
  		}
  	}
}

-- 
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Centrer-les-nuances-sur-le-centre-des-notes-tp6001943p6005754.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.

---

From: Mike Solomon <[email-masked]>
Date: Tue, 8 Feb 2011 17:58:53 -0500

Je vois maintenant...ça va être plus difficile que je ne pensais...

Il faut rentrer dans la mentalité de LilyPond.  Lily cherche à centrer un élément en dessous d'un autre élément.  Elle prend la largeur de l'élément ancre, divise ça par 2, et aligne le 2e élément en utilisant ce chiffre comme repère.  Avec une ligne de "s" (raccourci pour "skip") dans laquelle les éléments n'auront forcément pas de largeur, elle fait 0/2 = 0 et le centre devient, en effet, le bord gauche dont tu parles.

Ça va s'avérer difficile à automatiser parce qu'il y aura des cas où plusieurs notes existe dans une seule colonne verticale, comme << { a1 } \\ { a1 } \\ { a1 } \\ { a1 } \\ {a1 } { a1 } >> .  Il faut donc chercher l'élément parent sur l'axe Y (je crois que ça s'appelle "NoteColumn") auquel toutes ces notes appartiennent.  S'il y a une façon de prendre la largeur de cet élément, tu peux ensuite la diviser par 2 pour arriver au bon positionnement.

~Mike

On Feb 8, 2011, at 5:29 PM, Damien wrote:

> _______________________________________________
> liste de diffusion lilypond-user-fr
> [email-masked]
> http://lists.gnu.org/mailman/listinfo/lilypond-user-fr

---

From: Xavier Scheuer <[email-masked]>
Date: Wed, 9 Feb 2011 16:09:55 +0100

2011/2/8 Damien <[email-masked]>:
> [...]

Pfiou, il m'a fallu du temps pour le voir !
Ce n'est pas flagrant (j'ai dû scruter mon écran pour voir ce petit
décalage vers la gauche).

J'ai trouvé ce que je pense être l'exposé du même problème dans un
message posté par Reinhold il y a plus d'un an :
http://lists.gnu.org/archive/html/bug-lilypond/2009-12/msg00268.html

Apparemment ce serait peut-être le bug #631
http://code.google.com/p/lilypond/issues/detail?id=631
mais j'ai demandé confirmation aux développeurs et ai aussi demandé si
la solution utilisée pour le bug #1194 ne pouvait pas être appliquée
dans ce cas également.

Cordialement,
Xavier

-- 
Xavier Scheuer <[email-masked]>

---

From: Damien <[email-masked]>
Date: Wed, 9 Feb 2011 12:27:19 -0800 (PST)

Bonsoir Xavier,

merci pour votre message, vous avez réussi à trouver une voie de réponse. Je
crains effectivement fort que la problématique du contexte Dynamics soit la
même que celle du contexte Voice avec accentuation sur un soupir...

Je suis en l'état de mes connaissances Lilypondiennes (pas sûr que cette
appellation soit validée par la communauté...) bien incapable de résoudre ce
problème. Je compte donc sur les développeurs...

Sans compter que j'ai également (toujours en utilisant le contexte Dynamics)
des problèmes de collisions de crescendo avec les barres de mesure...

Bien cordialement.

Damien
-- 
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/Centrer-les-nuances-sur-le-centre-des-notes-tp6001943p6009409.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.