Subject: Paroles dans un partition à deux voix

From: "[email-masked]" <[email-masked]>
Date: Thu, 10 Jan 2013 17:19:59 +0100

Bonjour à la communauté des lilypondeurs,

J'ai encodé un partition à deux voix sur une portée pour guitare avec 
tablature.
Je voudrais y adjoindre les paroles sous la portée et les assigner à la 
voix haute.
Étant donné ma pratique très récente de la syntaxe, je n'y parviens pas.
D'autre part, j'aimerai clarifier la structure de mon code, de façon à 
dissocier au maximum les notes de musique du layout, afin de pouvoir 
imprimer indépendamment les deux voix de la guitare, produire la même 
portée avec un tablature de ukulélé par exemple.
A terme je voudrais pouvoir fixer "externaliser" un layout-type pour 
différents morceaux.
Merci à toute la communauté des passionnés , en particulier à Valentin 
Villenave, dont les vidéo m'ont été fort utiles pour avancer.

-- 
Harpo
ps:
Voici le code pour le moment:

\version "2.12.3"

#(set-default-paper-size "a4" 'portrait)

#(set-global-staff-size 24 )

\header {

title = "Ah! Vous dirai-je, Maman!"

subtitle = "Arrangement à deux voix en la (trois dièzes à la clé)"

instrument = " pour Guitare"

composer = "Trad."

poet = "Trad."

}

global = {

\key a \major

\time 4/4

\tempo 4=80

}

upper = \relative c' {

\global

a4-2 a e' e

fis-2 fis e2

d4-3 d cis-3 cis

b b a2-3

\once \override Score.RehearsalMark #'break-visibility = 
#end-of-line-visible

\once \override Score.RehearsalMark #'self-alignment-X = #RIGHT

\mark "Fine"

\bar "|."

\break

e'4 e d-3 d

cis-3 cis cis b

e4 e d-3 d

cis-3 cis cis b

\once \override Score.RehearsalMark #'break-visibility = 
#end-of-line-visible

\once \override Score.RehearsalMark #'self-alignment-X = #RIGHT

\mark "D.C. al Fine"

}

lower = \relative c' {

\global

a,2 cis'4-3 cis

d-3 d cis2-3

b4-4\3 b\3 a-2 a

gis-1 e-2 a,2

cis'4-3 cis b-4\3 b\3

a-2 a e-2 gis-1

cis4-3 cis b-4\3 b\3

a-2 a e-2 gis-1

}

Paroles = \lyricmode {

Ah! Vous dirai-je, Maman

Ce qui cause mon tourment.

Papa dit que je résonne

Comme une grande personne

Moi, je dis que les bonbons

Valent mieux que la raison.

}

\score {

\new StaffGroup \with {

\consists "Instrument_name_engraver"

instrumentName = "Guitare"

} <<

\new Staff \with {

midiInstrument = "acoustic guitar (nylon)"

}

{ \clef "treble_8" << \upper \\ \lower >> }

\new TabStaff \with {

stringTunings = #guitar-tuning

}

<<

\new TabVoice { \voiceOne \upper }

\new TabVoice { \voiceTwo \lower }

\midi { }

\layout {

\context { \TabStaff

\override TimeSignature #'style = #'numbered

\override Stem #'transparent = ##t

\override Beam #'transparent = ##t }

}

}

---

From: Philippe Nenert <[email-masked]>
Date: Thu, 10 Jan 2013 17:51:52 +0100

Bonsoir,

Pour ma part, je segmente énormément mon code, peut-être trop au dire de certain.
Tu peux t'en inspirer, mon code est publique https://github.com/papilip/mylilyscore
Au passage, je te recommande d'utiliser “git” pour mettre ton code en version et pouvoir y revenir facilement.

A bientôt, Philippe

Le 10 janv. 2013 à 17:19, [email-masked] a écrit :

> J'ai encodé un partition à deux voix sur une portée pour guitare avec tablature.
> Je voudrais y adjoindre les paroles sous la portée et les assigner à la voix haute.
> D'autre part, j'aimerai clarifier la structure de mon code, de façon à dissocier au maximum les notes de musique du layout, afin de pouvoir imprimer indépendamment les deux voix de la guitare, produire la même portée avec un tablature de ukulélé par exemple.
> A terme je voudrais pouvoir fixer "externaliser" un layout-type pour différents morceaux.
> Merci à toute la communauté des passionnés , en particulier à Valentin Villenave, dont les vidéo m'ont été fort utiles pour avancer.

---

From: Jean-Jacques gerbaud <[email-masked]>
Date: Thu, 10 Jan 2013 19:30:20 +0100

> Villenave, dont les vidéo m'ont été fort utiles pour avancer.

Voici ce que j'ai trouvé. C'est pas parfait et d'autres feront 
certainement mieux que moi ! (et je serai pas jaloux  ! :-)

\version "2.12.3"

#(set-default-paper-size "a4")
#(set-global-staff-size 24 )

\header {

	}

global = {
	\key a \major
	\time 4/4
	\tempo 4=80    % (ça me semble un peu lent !)
	}

upper = \relative c' { \tempo 4=80

\global
	\set Staff.midiInstrument = "acoustic guitar (nylon)"
	\stemUp a4-2 a e' e |
	fis-2 fis e2 |
	d4-3 d cis-3 cis |
	b b a2-3 |

	\mark "Fine" \bar "|." \break

	e'4 e d-3 d |
	cis-3 cis cis b |
	e4 e d-3 d |
	cis-3 cis cis b |

%	\once \override Score.RehearsalMark #'break-visibility =
%		#end-of-line-visible
	\once \override Score.RehearsalMark #'self-alignment-X = #RIGHT

	\mark "D.C. al Fine"

	}
%Paroles = \lyricmode {
\addlyrics {
	Ah! Vous di- rai-je, Ma- man
	ce qui cau- se mon tour- ment.
	Pa- pa dit que je ré- son- ne %---> RAIsonne ! (pas comme le tambour, 
quand même ! :-))
	com- me une gran- de per- son- ne

	Moi, je dis que les bon- bons
	Va- lent mieux que la rai- son.
}

lower = \relative c' {

\global

	\stemDown a,2 cis'4-3 cis |
	d-3 d cis2-3 |
	b4-4\3 b\3 a-2 a |
	gis-1 e-2 a,2 |
	cis'4-3 cis b-4\3 b\3 |
	a-2 a e-2 gis-1 |
	cis4-3 cis b-4\3 b\3 |
	a-2 a e-2 gis-1 |

}

\score {
<<
	\new StaffGroup \with {

%	\new Staff \with {
%		midiInstrument = "acoustic guitar (nylon)"
%	}

	\new TabStaff \with {

%	<<
%	\new TabVoice { \voiceOne \upper }
	\new TabVoice { \voiceTwo \lower }

%	>>

	\midi { }

	\layout {
		\context { \TabStaff

}

Quelques remarques :
Ce que tu as réussi à faire est tout simplement remarquable. Tu as 
réussi vraiment quelque chose de très difficile et je t'en félicite, 
bravo. Mais... (tu t'y attendais, non ? :-)

Ton code est tellement étendu qu'on ne voit pas bien les différentes 
parties. Il vaut mieux "serrer" les données des diverses parties mais 
séparer celles-ci pour une meilleure vision générale du code. (séparer 
"\header" de "\paper" mais à l'intérieur des deux, serrer les lignes), 
c'est plus clair ?

A la fin de chaque mesure, j'ai l'habitude de mettre un contrôle "|" . 
On n'est pas obligé de faire ça à chaque mesure mais s'il y a une 
erreur, elle est immédiatement signalée.

Pour ma part, je supprime les commandes qui ne servent à rien dans une 
partition donnée. Si elles fonctionnent dans une autre, je les garde 
mais si elle sont inutiles, je les supprime pour alléger le code.

J'ai beaucoup de mal avec les partitions avec paroles. C'est pourquoi, 
j'ai tourné le problème en ajoutant "\addlyrics" à la fin de la voix 
souhaitée. (mais ce n'est probablement pas la meilleure solution).

Je préfère mettre le nom de l'instrument midi directement dans la voix 
concernée, comme ça on sait plus facilement où on en est.

Les paroles doivent être séparée pour indiquer au compilateur qu'une 
note correspond à une syllabe.

Enfin, on écrit "dièse" (au lieu de dièZe")

Toutes ces remarques sont valables pour moi mais elles ne viennent pas 
(toutes) de moi !  A toi de voir ce que tu peux garder ou jeter.

Encore une fois, félicitations pour ton travail !

-- 
JJG

Linux ? Y a moins bien mais c'est plus cher !
http://www.radiosuisseclassique.ch/fr

---

From: Philippe Nenert <[email-masked]>
Date: Thu, 10 Jan 2013 19:37:39 +0100

Bravo Jean-Jacques !
Compilation du premier coup !
Du grand art, rien à redire ...
Bonne soirées, Philippe

Le 10 janv. 2013 à 19:30, Jean-Jacques gerbaud <[email-masked]> a écrit :

> Voici ce que j'ai trouvé. C'est pas parfait et d'autres feront certainement mieux que moi ! (et je serai pas jaloux  ! :-)

---

From: Jean-Jacques Gerbaud <[email-masked]>
Date: Fri, 11 Jan 2013 00:02:04 +0100

> Du grand art, rien à redire ...
mais non, je ne suis pas content parce que il n'y a plus de "StaffGroup" 
! Et je n'arrive pas à le remettre.  Je ne pense pas que notre ami Harpo 
s'en contente !

En tout cas ça me fait plaisir de voir que tu es toujours là ! :-)

-- 
JJG