Subject: essai lilypond2

From: Marc Bonnarde <[email-masked]>
Date: Thu, 01 Mar 2007 09:32:56 +0100

Merci à Arno Waschk et à John Mandereau de bien vouloir m'aider.

J'ai installé Lilypond.
Au démagage un fichier  LilyPad - (Welcome _to_Lilypond.ly)  s'ouvre la 
manipulation suivante y est noté :

Congratulations, LilyPond has been installed successfully.

Now to take it for the first test run.

  1. Save this LilyPond file on your desktop.
  2. Pick it up from the desktop with your mouse pointer, drag and drop
     it onto the LilyPond icon.
  3. LilyPond automatically produces a PDF file from the musical scale
     below.
  4. To print or view the result, click on the newly produced file called
        Welcome_to_LilyPond.PDF

J'ai enregistré le fichier en tant que "essai.ly" je l'ai fai glissé sur 
l'icone LilyPond. Trois fichiers sont apparu, un fichier essai.pdf un 
fichier essai.ps et un autre essai.log.
Effectivement le fichier pdf s'ouvre et il apparait a scale in lilypond  
avec une gamme écrite, le fichier ps ne s'ouvre pas le fichier log anonce :
# -*-compilation-*-
impossible de changer le répertoire de travail pour : C:/Documents and 
Settings/Marc/Bureau
Traitement de « C:/Documents and Settings/Marc/Bureau/essai.ly »
Analyse syntaxique...
Interprétation de la musique... [2]
Prétraitement des éléments graphiques...
Sortie mise en page vers « essai.ps »...
Conversion en « essai.pdf »...

Mais après tout ça Lilypond ne s'ouvre toujours pas et le même fichier 
de départ apparait.

Voilà je pense avoir tout noté. Je vous souhaite une bonne journée.
A bientôt de vous lire
Marc.

---

From: Gilles THIBAULT <[email-masked]>
Date: Sat, 03 Mar 2007 07:28:26 +0100

>le fichier log anonce :
># -*-compilation-*-
>mpossible de changer le répertoire de travail pour : C:/Documents and 
>Settings/Marc/Bureau

A ce que j'ai pu constater, les nouvelles versions de Lilypond prennent en 
compte les espaces vides dans les noms de fichiers. Quelle version (stable) 
as tu ?

>Prétraitement des éléments graphiques...

Tiens je suis surpris que les caractères accentués dans les messages soient 
reconnus.
 Il n'y a que chez moi où ils ne le sont pas, ou bien d'autre personnes sont 
dans le même cas ?

Gilles

---

From: Gilles THIBAULT <[email-masked]>
Date: Sun, 04 Mar 2007 12:30:42 +0100

Exist-il une commande ou un moyen d'inclure une expression quand le "tag" 
est different que celui donné en paramètre?

Du genre

    \tag #'violonI { expression1... }
   Dans tous les autres cas {expressions2...}

Pour le moment, je suis obligé de faire un truc du genre
    \tag #'violonI { expression1... }
    \tag #'violonII  \tag #'alto  \tag #'vlc \tag #'ctrebasse  \tag #'flute 
\tag #'hautbois  \tag #'clarinette
        etc ...
                 { expression2... }

Merci pour vos réponses

Gilles

---

From: Jean-Charles <[email-masked]>
Date: Sun, 04 Mar 2007 12:51:42 +0100

Le 04.03.2007 12:30, Gilles THIBAULT disait :
> Exist-il une commande ou un moyen d'inclure une expression quand le 
> "tag" est different que celui donné en paramètre?
> 
> 
> Du genre
> 
>    \tag #'violonII  \tag #'alto  \tag #'vlc \tag #'ctrebasse  \tag 
> #'flute \tag #'hautbois  \tag #'clarinette
>        etc ...
>                 { expression2... }
> 
> Merci pour vos réponses
> 

Pour plus de simplicité, il est possible et judicieux d'utiliser, pour 
une même durée dans les différents pupitres, d'utiliser le même nom.
Ci-joint un petit exemple d'utilisation dans le cadre de l'Ave maris 
stella extrait des Vèpres, les premier et septièmes mouvements ne 
différant que pour les mélismes et l'adjonction de l'Amen final. Seul 
petit problème non résolu en ce qui me concerne, la longueur de cette 
dernière mesure.
Puisse cela être un bon exemple.

Jean-Charles
\version "2.10.19"
\include "english.ly"

global = {
  \key c \major
  \override Staff.TimeSignature #'style = #'single-digit
%  \set Staff.autoBeaming = ##f
%  \unset Staff.melismaBusyProperties 
  \override BreathingSign  #'text =
  #(make-musicglyph-markup "scripts.caesura")
  \time 2/1 \skip 1*10 \breathe \skip 1*6 %% 9
  \time 3/1 \skip 1*3  \breathe
  \time 2/1 \skip 1*6
  \time 3/1 \skip 1*3  \breathe
  \time 2/1 \skip 1*4
  \time 3/1 <<
     \tag #'Primo { \skip 1*3 }
     \tag #'Fine { \skip 1*3 \breathe \time 2/1 \skip 1*6 } >>
  \bar"|."
}
sopranoAnotes = \relative c'' {
  d,1( a'
  b2) g2.( a4 b c
  d1) c2( b4 a
  gs2) a b1
  a\breve
  a2.( gs4 a2 d,2~
  d2) e g1~
  g2 f( e d)
  e1 d\breve
  f1. e2
  g1 a
  d,2.( e4 f2 e
  d1) c\breve
  e1 g
  e1. f2
  e1 d\breve 
  <<\tag #'Primo {}
    \tag #'Fine { fs\breve( g) fs }>>
}

altoAnotes = \relative c' {
  fs1. fs2
  g1 d2 g2~
  g2 d2 e1~ 
  e2 e2 e1
  e\breve
  e1 a,
  d2 a d1
  a1 a2 a
  a1 a\breve
  d1. e2
  e1. fs2
  g2( d2. c4 c2~
  c2 b) c\breve
  c2 c d4( b e2~)
  e2 c e( d2~
  d2 cs2) d\breve
  <<\tag #'Primo {}
    \tag #'Fine { d\breve~ d d }>>
}

tenorAnotes = \relative c' {
  a2.( d2) d4 d2
  b1 b1~
  b2 b e a,
  e'4 b c8[( a] e'2 d8[ c] b2)
  cs\breve
  a1 e2 d4.( e8
  f2) e r1
  r4 a2 d,4 a'4.( g8[ f g] a4~
  a4) e a2 a\breve
  a2.( g4 f2) c'
  c1.( b4 a
  b2 a4 g a2) c
  g1 g\breve
  g2 c, g'2. e4
  e2 e2. a2 d,4
  e1 fs2.( g4 a1)
  <<\tag #'Primo {}
    \tag #'Fine { a\breve( g) a }>>
}

bassAnotes = \relative c {
  r1 d1~
  d1 g~
  g1 e1~
  e2 a e1
  a\breve
  r1 a1~
  a1 d,
  a'1. d,2
  a'1 d,\breve
  d2.( e4 f2) g
  c,2.( d4 e2) c
  g'1( c,
  g'1) c,\breve
  e2 a <<\tag #'Primo {d,} \tag #'Fine {d(}>>
     <<\tag #'Primo {e} \tag #'Fine {e)}>>
  <<\tag #'Primo {a,2(} \tag #'Fine {a2}>>
     <<\tag #'Primo {a'1} \tag #'Fine {a1(}>>  d,2
  a'1) d,\breve
  <<\tag #'Primo {}
    \tag #'Fine { d\breve( g) d }>>
}

sopranoBnotes = \relative c'' {
  a1.( d2~
  d2) d b1~
  b1 g2 c(
  b2 a1 gs2)
  a\breve
  c!2.( b4 a g f2~
  f2) g bf1(
  a1.) a2
  a1 fs\breve
  d4( e f! g a b c1~
  c2) g c1(
  b1) a
  g1 g\breve
  c1 b1
  a1. a2
  a1 fs\breve
  <<\tag #'Primo {}
    \tag #'Fine { a\breve( bf) a }>>
}

altoBnotes = \relative c' {
  r1 a2.( d4~
  d2.) d4 d1~
  d1 g,4 g'2 f4
  e2 c b( e)
  cs\breve
  r1 r2 a2~
  a2 c <<\tag #'Primo {d1( cs2)}
    \tag #'Fine { d1 cs2 }>> d e4
  <<\tag #'Primo {a,2 d4~( }
    \tag #'Fine { a2( d4~}>> 
  d4 cs8[ b] cs2) d\breve
  r2 a1 e'2
  g4.( d8 e2) c1
  d2( c4 b c2 a
  d1) e\breve
  c2. a4 b1
  c1 a\breve~
  a1 a\breve
  <<\tag #'Primo {}
    \tag #'Fine { a2( d1 c2 bf2. a4 g2 d') d\breve }>>
}

tenorBnotes = \relative c {
  d2( a'1) fs2
  d1 d2 d2~
  d2 g1 e2~
  e2 e2 e1
  e\breve
  <<\tag #'Primo {e1.( f2 a1)}
    \tag #'Fine { e1. f2 a1 }>> g1
  e2( d cs) f
  e1 fs2.( g a1)
  <<\tag #'Primo {f2.( e4 d2)}
    \tag #'Fine { f2. e4 d2 }>> g
  e1 a
  r1 a2 a
  d,4 d g2 e\breve
  e1 b'4.( a8 g2)
  c4.( b8 a1) a2
  a1 a\breve
  <<\tag #'Primo {}
    \tag #'Fine { a4( g fs e d2 d'2~d4 c bf2. a4 g d) d\breve }>>
}

bassBnotes = \relative c {
  d\breve 
  g,1 g2.( a4
  b1 c2. d4
  e2) a, e'1
  a,\breve
  a2.( b4 cs2 d2~
  d2) c! bf g
  a1.( d2
  a1) d\breve
  d1. c2
  c2.( b4 a1)
  g1 f(
  g) c\breve
  c4.( b8 a2 g4. f8 ) e2
  a2.( b4 cs a) d2
  a1 d\breve
 <<\tag #'Primo {}
    \tag #'Fine { d\breve( g,) e' }>>
}

%%-------------------------
%% traitement 1er mouvement
%%-------------------------
\score{ <<
  \context ChoirStaff = ChoroA <<
    \context Staff = soprano <<
      \context Voice = sopA {\keepWithTag #'Fine << \global \sopranoAnotes >> }
    \context Staff = alto <<
      \context Voice = altA {\keepWithTag #'Fine <<\global \altoAnotes >> }
    \context Staff = tenor <<
      \clef "G_8"
      \context Voice = tenA {\keepWithTag #'Fine  << \global \tenorAnotes >> }
    \context Staff = bass <<
      \clef bass
      \context Voice = basA { \keepWithTag #'Fine << \global \bassAnotes >> }

  \context ChoirStaff = ChoroB <<
    \context Staff = soprano <<
      \context Voice = sopB {\keepWithTag #'Fine << \global \sopranoBnotes >> }
    \context Staff = alto <<
      \context Voice = altB {\keepWithTag #'Fine << \global \altoBnotes >> }
    \context Staff = tenor <<
      \clef "G_8"
      \context Voice = tenB {\keepWithTag #'Fine << \global \tenorBnotes >> }
    \context Staff = bass <<
      \clef bass
      \context Voice = basB {\keepWithTag #'Fine << \global \bassBnotes >> }
}

%%-------------------------
%% traitement 7me mouvement
%%-------------------------
\score{ <<
  \context ChoirStaff = ChoroA <<
    \context Staff = soprano <<
      \context Voice = sopA {\keepWithTag #'Fine << \global \sopranoAnotes >> }
%      \lyricsto "sopA" \new Lyrics \sopranoAwords
    \context Staff = alto <<
      \context Voice = altA {\keepWithTag #'Fine <<\global \altoAnotes >> }
%      \lyricsto "altA" \new Lyrics \altoAwords
    \context Staff = tenor <<
      \clef "G_8"
      \context Voice = tenA {\keepWithTag #'Fine  << \global \tenorAnotes >> }
%      \lyricsto "tenA" \new Lyrics \tenorAwords
    \context Staff = bass <<
      \clef bass
      \context Voice = basA { \keepWithTag #'Fine << \global \bassAnotes >> }
%      \lyricsto "basA" \new Lyrics \bassAwords

  \context ChoirStaff = ChoroB <<
    \context Staff = soprano <<
      \context Voice = sopB {\keepWithTag #'Fine << \global \sopranoBnotes >> }
%      \lyricsto "sopB" \new Lyrics \sopranoBwords
    \context Staff = alto <<
      \context Voice = altB {\keepWithTag #'Fine << \global \altoBnotes >> }
%      \lyricsto "altB" \new Lyrics \altoBwords
    \context Staff = tenor <<
      \clef "G_8"
      \context Voice = tenB {\keepWithTag #'Fine << \global \tenorBnotes >> }
%      \lyricsto "tenB" \new Lyrics \tenorBwords
    \context Staff = bass <<
      \clef bass
      \context Voice = basB {\keepWithTag #'Fine << \global \bassBnotes >> }
%      \lyricsto "basB" \new Lyrics \bassBwords
}

---

From: Jean-Charles <[email-masked]>
Date: Sun, 04 Mar 2007 13:59:19 +0100

> Puisse cela être un bon exemple.

CORRECTION : COPIER COLLER SANS FAIRE ATTENTION
LE PREMIER MOUVEMENT GARDE LE « TAG » PRIMO ET NON FINE

        \context Voice = sopA {\keepWithTag #'Primo << \global 
\sopranoAnotes >> }
      \context Staff = alto <<
        \context Voice = altA {\keepWithTag #'Primo <<\global 
\altoAnotes >> }
      \context Staff = tenor <<
        \clef "G_8"
        \context Voice = tenA {\keepWithTag #'Primo  << \global 
\tenorAnotes >> }
      \context Staff = bass <<
        \clef bass
        \context Voice = basA { \keepWithTag #'Primo << \global 
\bassAnotes >> }

    \context ChoirStaff = ChoroB <<
      \context Staff = soprano <<
        \context Voice = sopB {\keepWithTag #'Primo << \global 
\sopranoBnotes >> }
      \context Staff = alto <<
        \context Voice = altB {\keepWithTag #'Primo << \global 
\altoBnotes >> }
      \context Staff = tenor <<
        \clef "G_8"
        \context Voice = tenB {\keepWithTag #'Primo << \global 
\tenorBnotes >> }
      \context Staff = bass <<
        \clef bass
        \context Voice = basB {\keepWithTag #'Primo << \global 
\bassBnotes >> }
  }

---------------------------------------------------------------------------------------
Orange vous informe que cet  e-mail a ete controle par l'anti-virus mail. 
Aucun virus connu a ce jour par nos services n'a ete detecte.

---

From: Gilles THIBAULT <[email-masked]>
Date: Sun, 04 Mar 2007 23:15:25 +0100

>> Ci-joint un petit exemple d'utilisation

J'ai  essayé de bien étudier l'exemple que tu m'as donné, Jean-Charles mais
je n'ai pas réussi à l'adapter au cas qui me préocupe, car dans ce cas là on
n'a que 2 Tags #'Primo et #'Fine .
La difficulté, c'est si on avait plusieurs mouvements (Plusieurs mouvements
qui changent que de quelque notes  c'est peu probable mais bon, c'est pour
l'explication du moment ...).

On serait obligé de faire alors
   \tag  #'Primo { expressionA}
et
    \tag  #'Secondo  \tag  #'Tertio \tag  #'Quattro .....etc .... {
expressionB}

Je voudrais une fonction ou un "truc" pour dire
   \tag  #'Primo { expressionA}
et pour tous les autres \tag { expressionB}

Gilles

---

From: John Mandereau <[email-masked]>
Date: Sun, 04 Mar 2007 23:40:27 +0100

> Mais après tout ça Lilypond ne s'ouvre toujours pas et le même fichier 

Ce n'est pas un bogue : il est indispensable de lire le tutoriel avant
de se servir de LilyPond, inclus dans la docuemntation sur
http://lilypond.org

LilyPond est le genre de logiciel n'ayant pas d'interface graphique,
mais traitant des fichiers texte dans un langage spécifique pour
produire des partitions en PDF et/ou MIDI.  C'est le même principe qu'un
formatteur de texte comme TeX ; c'est déroutant au début mais si on
aborde sans préjugés cette façon de faire, on se rend compte au bout de
quelques mois de pratique qu'elle a de nombreux points positifs,
notamment un gain de productivité, la prévisibilité du résultat, et une
grande souplesse.

Bienvenue parmi les lilypondeurs !
-- 
John Mandereau <[email-masked]>

---

From: Jean-Charles <[email-masked]>
Date: Mon, 05 Mar 2007 20:03:59 +0100

> et pour tous les autres \tag { expressionB}

Nous ne nous sommes peut-être pas vraiment compris.
Dans mon exemple, les huit voix (2 chœurs SATB) chantent les mêmes notes 
aux premiers et derniers mouvements. Seuls diffèrent les débuts ou fins 
de liaisons en raison des mélismes (« Bou -- jour! Toi » dans un cas, 
soit trois syllabes, et « a -- dieu » dans l'autre) ; par ailleurs, le 
dernier mouvement, comme dans la plupart des prières,se voit adjoindre 
un « Amen » absent de la première phrase comme il se doit.
J'ai donc eu recours au \tag, qui porte le même nom pour toutes les 
\Voices lorsque j'ai saisi la vieille copie que j'avais sous la main.

Peut-etre ce que tu recherches correspondrait plus à la section
8.3.3 Quoting other voices. Jette aussi un oeil aux squelettes, 
notamment l'appendice D.3 String quartet.

En espérant que ces pistes ne seront pas sans issue...

@+
Jean-Charles