Subject: Problèmes d'orientation de hampes et de taille de notes

From: Yann Morin <[email-masked]>
Date: Mon, 01 Mar 2010 18:10:37 +0100

Bonjour,

Je suis en train d'éditer des partitions d'airs italiens pour soprano et 
clavecin.

Je suis confronté à deux problèmes apparemment distincts :

1. Problème d'orientation de hampes

Que ce soit à la main droite ou à la main gauche de la partie de 
clavecin, les hampes des blanches et des noires ne sont pas orientées 
comme il faut malgré les \stemUp (pour les voix supérieures) et les 
\stemDown (pour les voix inférieures).

Je n'aime pas trop ces << { .. } \\ { .. } >> éparpillés tout au long 
d'une partition car je trouve que cela nuit à la lisibilité du code.

2. Problème de taille de notes

Sur la partition d'origine, seule la basse (voix inférieure main gauche) 
est de taille normale. Les notes de taille plus petite doivent être des 
suggestions, à mon avis.

La main gauche du clavecin joue deux voix. La voix inférieure est de 
taille normale et la voix supérieure doit être de taille plus petite, or 
il n'en est rien, les commandes \set voice.fontSize n'ayant aucun effet.

Je suppose que ces deux problèmes sont dûs à une histoire de contexte.

Merci de m'aider car je suis bloqué.

La partie de soprano est OK. Il me reste à mettre les paroles. J'ai 
juste mis la première syllabe sinon j'ai un warning.

Ci-joint le source, le fichier log et le PDF résultant. Il y a seulement 
les deux premiers systèmes pour ne pas alourdir.

Yann

-- 
Yann Morin
LilyPond 2.12.2 + jEdit 4.3pre17 + LilyPondTool 2.12.869 sous WinXP
# -*-compilation-*-
Traitement de « F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly »
Analyse...
Interprétation en cours de la musique...
F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:129:40: Avertissement : Ajout d'une tête de note à une hampe incompatible (type = 2)
					
                                        bes ~

F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:129:40: Avertissement : la source devrait spécifier des voix polyphoniques
					
                                        bes ~

[8]
F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:139:40: Avertissement : Ajout d'une tête de note à une hampe incompatible (type = 4)
					
                                        c1

F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:139:40: Avertissement : la source devrait spécifier des voix polyphoniques
					
                                        c1

F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:95:47: Avertissement : Ajout d'une tête de note à une hampe incompatible (type = 2)
					s4 f ~ 
                                               f e

F:/Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ly:95:47: Avertissement : la source devrait spécifier des voix polyphoniques
					s4 f ~ 
                                               f e

Pré-traitement des éléments graphiques...
Détermination du nombre optimal de pages...
Répartition de la musique sur une page...
Dessin des systèmes...
Sortie mise en page vers « /Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.ps »...
Conversion à « /Data/Documents/Projets_LilyPond/Cantates_italiennes/Copie de J Peri - Euridice - Bericht der Botin Dafne.pdf »...
% Created on Fri Feb 05 14:31:05 CET 2010
\version "2.12.0"

\pointAndClickOff

\header {
	title = "Bericht der Botin Dafne" 
	subtitle = "Extrait de l'opéra 'Eiridice'" 
 	composer = "Jacopo Peri (1561-1633)" 

}

mBreak = {\break }

verse= \lyricmode {
	Per
}

staffSoprano = \new Staff {
	\time 4/4
	\set Staff.instrumentName = "Soprano  "
	\set Staff.midiInstrument = "choir aahs"
	\key f \major
	\clef treble
	\relative c'' { 	
		\context Voice = "melodySop" {
			\dynamicUp
			r4 bes8 bes bes4 bes8 bes
			bes2 bes
			bes4 bes8 bes bes4. bes8
			d2 d
			d4 c8 bes d4. c8
			\mBreak

			bes4. a8 bes4 g
			a2 a4 c
			c c2 bes8 a
			a2 g
			r8 g g g g4. f8
			g2 r4 d'
			a4. g8 g2
			f1
			\mBreak

 % Type notes here 
		}

	\bar "|."
	}

}
staffClavecin = \new PianoStaff {
	\set PianoStaff.midiInstrument = #"harpsichord"
	\set PianoStaff.instrumentName = #"Clavecin  "
	<<
		\context Staff = "RH" {  % Right hand 
			\clef treble
			\key f \major
			<<
				\relative c' {     % voix supérieure, notes de petite taille
					\set Voice.fontSize = #-4
					\stemUp
					<bes d f>1 ~
					<bes d f>
					<bes d f>2 <c ees a>
					<d f bes>1
					<d f bes d>

					<bes d f bes>
					<a c f a> ~
					<a c f a>2 <c f a>
					<f a> <e g>
					<c e g>1 ~
					<c e g>2 <d bes'>
					<e a>4 f <c g'>2
					<c f>1

				}
				\relative c' {     % voix inférieure, notes de petite taille
					\set Voice.fontSize = #-4
					\stemDown
					s1
					s1
					s1
					s1
					s1

					s1
					s1
					s1
					s1
					s1
					s1
					s4 f ~ f e
					s1

				}
		}
		\context Staff = "LH" {  % Left hand 			
			\clef bass
			\key f \major
			<<
				\relative c {     % voix supérieure, notes de petite taille
					\set Voice.fontSize = #-4
					\stemUp
					f1 ~
					f
					f2 bes
					bes1
					<d, f bes>

					<d f>
					s1
					s1
					s1
					<e g> ~
					<e g>2 bes'
					c4 a g2
					a1

				}
				\relative c {     % voix inférieure (basse), notes de taille normale
					\set Voice.fontSize = #0
					\stemDown
					bes1 ~
					bes
					bes ~
					bes
					bes ~

					bes
					f' ~
					f
					c
					c ~
					c2 bes
					c1
					f

				}
		}
}

\score {
	<<
		\staffSoprano
		\context Lyrics = "lmelodySop" \lyricmode { \lyricsto "melodySop" \verse }
		\staffClavecin
	
%	\midi {
%	}

  \layout {
  }
}

\paper {
}

---

From: Xavier Scheuer <[email-masked]>
Date: Mon, 1 Mar 2010 19:34:30 +0100

2010/3/1 Yann Morin <[email-masked]> :

> Bonjour,
>
> Je suis en train d'éditer des partitions d'airs italiens pour soprano
> et clavecin.

Bonjour,

> d'une partition car je trouve que cela nuit à la lisibilité du code.

La construction << { .. } \\ { .. } >> est pratique lorsque les passages
polyphoniques ne sont que passagers.
Vous avez bien raison de définir "complètement" plusieurs voix pour une
oeuvre véritablement polyphonique.  ;-)

> Sur la partition d'origine, seule la basse (voix inférieure main gauche) est
> de taille normale. Les notes de taille plus petite doivent être des
> suggestions, à mon avis.
>
> La main gauche du clavecin joue deux voix. La voix inférieure est de taille
> normale et la voix supérieure doit être de taille plus petite, or il n'en
> est rien, les commandes \set voice.fontSize n'ayant aucun effet.

C'est parce que vous n'avez pas explicité les voix (cf. plus bas).
Un peu étonnant, j'aurais pensé que ce que vous aviez fait aurait
fonctionné.

> Je suppose que ces deux problèmes sont dûs à une histoire de contexte.

Tout à fait.
En explicitant chacune des voix (avec \new Voice) ça fonctionne.

Ainsi j'ai inséré \new Voice = "RHUp" avant le \relative de la voix
supérieure (Up) de la portée main droit (RH).  Et ainsi de suite pour
la voix inférieur main droite, supérieure main gauche, etc.

Voir le fichier joint.

Cordialement,
Xavier

PS : Aah, enfin un fichier lisible avec une indentation comme je les
aime !  ;-D

--
Xavier Scheuer <[email-masked]>

---

From: Yann Morin <[email-masked]>
Date: Tue, 02 Mar 2010 09:54:26 +0100

> Un peu étonnant, j'aurais pensé que ce que vous aviez fait aurait

Moi aussi.

> En explicitant chacune des voix (avec \new Voice) ça fonctionne.

C'est bien ce que je pensais. Si on n'explicite pas la voix sur laquelle 
on veut appliquer une commande, cette dernière va agir au niveau du 
contexte supérieur, ici la portée (staff).

> la voix inférieur main droite, supérieure main gauche, etc.

Je l'ai testé : en effet, ça marche comme je voulais.

Merci de ton aide.

Yann