]> git.donarmstrong.com Git - lilypond.git/blobdiff - mutopia/E.Satie/gnossienne-4.ly
release: 1.1.67
[lilypond.git] / mutopia / E.Satie / gnossienne-4.ly
index fc2f0b7a1ed512a2720335e8f882179f2c0ad39e..e7affa3b7f14fbc8bfcba629a0530f1139f859aa 100644 (file)
 }
 
 %{
- Tested Features: cross staff beams and slurs, grace notes, no bars
+ Tested Features: cross staff auto beams and slurs, grace notes, no bars
 %}
 
-\version "1.0.21";
+\version "1.1.66";
 
 \include "nederlands.ly"
 
 global = \notes {
   \key a \minor;
   \time 6/4;
-%  \cadenza 1;
   \skip 1.*34;
   \bar ".|";
 }
   
-upper = \context Staff=treble \notes\relative c''{
+melody = \notes\relative c''{
   \clef violin;
-  \stemup
-  \context Voice=one
+  \property Voice.verticalDirection = 1
+  \property Voice.graceFraction = "1/4"
   r2 r r 
   r2 r r
-  r4 [a'8--(\< a--] [a-- a-- c-- \!b--] [a--\> gis f \!e]
-  % grace hack
-  < { [es8 )c] } \context Voice=x { \stemup s8*1/2 \tiny b8*1/2 ~ } > r4 r2 r
+  r4 a'8--(\< a--  a-- a-- c-- \!b-- a--\> gis f \!e 
+  es8 \grace b( ))c r4 r2 r
   r2 r r
-  r4 [a'8--(\< a--] [a-- a-- c-- \!b--] [a--\> gis f \!e]
-  < { [es8 )c] } \context Voice=x { \stemup s8*1/2 \tiny b8*1/2 ~ } > r4 r2 r
-  r4 [g16( a bes a] [g a bes a g a bes a] [g a bes a g fis es fis] 
-  )d4 \tiny fis8*1/2 ~ \normalsize gis4*3/4 ~ gis8 r r4 r2
-  r4 [g16( a bes a] [g a bes a g a bes a] [g a bes a g fis es fis] 
-  )d4 \tiny fis8*1/2 ~ \normalsize gis4*3/4 ~ gis8 r r4 r2
-  \tiny a8*1/2 ~ \normalsize f4*3/4 ~ f8 r r2 r
-  r2 r4 [a8( b][c d c b] \tiny b8*1/2 ~ \normalsize 
-  < { [e8*1/2 )g,8] } \context Voice=x { \stemup s8*1/4 \tiny a8*1/2 ~ } > r4 r2 r
-  r2 r4 [a8( b][c d c b] [a b c d][c b a b][c d c b]
-  \tiny b8*1/2 ~ \normalsize 
-  < { [e8*1/2 )g,8] } \context Voice=x { \stemup s8*1/4 \tiny a8*1/2 ~ } > r4 r2 r
-  a2( \tiny e'8*1/2 ~ \normalsize f4*3/4 ~ )f8 r r2
+  r4 a'8--(\< a--  a-- a-- c-- \!b-- a--\> gis f \!e 
+  es8 \grace b( ))c r4 r2 r
+  r4 g16( a bes a  g a bes a g a bes a g a bes a g fis es fis 
+  )d4 \grace fis8()gis4 ~ gis8 r r4 r2
+  r4 g16( a bes a  g a bes a g a bes a g a bes a g fis es fis 
+  )d4 \grace fis8()gis4 ~ gis8 r r4 r2
+  \grace a8()f4 ~ f8 r r2 r
+  r2 r4 a8( b c d c b \grace b8()e \grace a,())g r4 r2 r
+  r2 r4 a8( b c d c b  a b c d c b a b c d c b 
+  \grace b8()e \grace a,())g r4 r2 r
+  a2( \grace e'8()f4 ~ )f8 r r2
   r2 r r
-  fis,4( \tiny dis8*1/2 \normalsize <)cis4*3/4 ais> r2 r
-  \tiny b'8*1/2 ~ \normalsize 
-  < { [a8*1/2 a8] } \context Voice=x { \stemup s8*1/4 \tiny b8*1/2 ~ } > r4 r2 r
-  r4 [a'8--(\< a--] [a-- a-- c-- \!b--] [a--\> gis f \!e]
-  < { [es8 )c] } \context Voice=x { \stemup s8*1/2 \tiny b8*1/2 ~ } > r4 r2 r
-  d,4( \tiny fis8*1/2 ~ \normalsize gis4*3/4 ~ )gis8 r r4 r2
+  fis,4( \grace dis8<)cis4 ais> r2 r
+  \grace b'8()a \grace b()a r4 r2 r
+  r4 a'8--(\< a--  a-- a-- c-- \!b--  a--\> gis f \!e 
+  es8 \grace b())c r4 r2 r
+  d,4( \grace fis8()gis4 ~ )gis8 r r4 r2
   f4 ~ f8 r r2 r
-  [f'8( g a b][a g f g][a b a g]
-  \tiny f8*1/2 ~ \normalsize 
-  < { [g8*1/2 )e8] } \context Voice=x { \stemup s8*1/4 \tiny d8*1/2 ~ } > r4 r2 r
-  [f8( g a b][a g f g][a b a g]
-  \tiny f8*1/2 ~ \normalsize 
-  < { [g8*1/2 )e8] } \context Voice=x { \stemup s8*1/4 \tiny d8*1/2 ~ } > r4 r2 r
-  a,2( \tiny e'8*1/2 ~ \normalsize f4*3/4 ~ )f8 r r2
+  f'8( g a b a g f g a b a g 
+  \grace f8()g \grace d)e r4 r2 r
+  f8( g a b a g f g a b a g 
+  \grace f8()g8 \grace d())e r4 r2 r
+  a,2( \grace e'8() f4 ~ )f8 r r2
   r2 r r
-  fis,4( \tiny dis8*1/2 \normalsize <)cis4*3/4 ais> r2 r
+  fis,4( \grace dis8<)cis4 ais> r2 r
   <e1 g b e> ~ <e g b e>
 }
 
 basloopje = \notes\relative c{
+%  d,8( a' d f a \translator Staff=treble d f d \translator Staff=bass a f d )a
   d,8( a' d f a d f d a f d )a
 }
 
-bassbeam = \notes{
-  [s2] [s8 \translator Staff=treble s s s] [\translator Staff=bass s2]
-%   [s2] [s2] [s2]
-}
-
-lower = \context Voice=two \notes \relative c{
-  \stemdown
-  \property Staff.slurVerticalDirection = 1
-
+accompany = \notes \relative c{
   % snapnie, hoevaak relative c heeft ze nodig?
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose a \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose a \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose bes \notes\relative c{ \basloopje }
+  \transpose bes \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \transpose bes \notes\relative c{ \basloopje }
+  \transpose bes \notes\relative c{ \basloopje }
+  \transpose a \notes\relative c{ \basloopje }
+  \transpose bes \notes\relative c{ \basloopje }
+  \transpose a \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
   % huh? d'
-  < \transpose d' \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose d' \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose e' \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose bes \notes\relative c{ \basloopje } \bassbeam >
-  < \transpose a \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose d' \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose d' \notes\relative c{ \basloopje } \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \notes\relative c \basloopje \bassbeam >
-  < \transpose e' \notes\relative c{ \basloopje } \bassbeam >
+  \transpose d' \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose d' \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose e' \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose bes \notes\relative c{ \basloopje }
+  \transpose a \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose d' \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \transpose d' \notes\relative c{ \basloopje }
+  \notes\relative c \basloopje
+  \notes\relative c \basloopje
+  \transpose e' \notes\relative c{ \basloopje }
   < e1 b' e> ~ < e b' e> 
 }
 
-\score {
-    \context GrandStaff < 
-      \context Staff = treble < 
-        \global 
-       \upper
-      >
-      \context Staff = bass <
-        \global
-       \clef bass;
-        \lower
-      >
-    >
 
+\score{
+  \notes{
+    \context AutoSwitchGrandStaff \relative c <
+      \global
+      \context Staff=upper { 
+        \context Voice=foo
+        \property Voice.verticalDirection = 1
+        \property Voice.scriptVerticalDirection = 1
+        \melody 
+      }
+      \context AutoSwitchContext \accompany
+    >
+  }
   \paper {
     gourlay_maxmeasures = 4.;
     indent = 8.\mm;
@@ -138,12 +125,6 @@ lower = \context Voice=two \notes \relative c{
     % no slur damping
     slur_slope_damping = 100.0;
 
-    \translator{ \OrchestralScoreContext }
-    \translator{ 
-      \GrandStaffContext
-      minVerticalAlign = 3.0*\staffheight;
-      maxVerticalAlign = 3.0*\staffheight;
-    }
     \translator{ 
       \StaffContext
       % don't auto-generate bars: not a good idea: -> no breakpoints
@@ -152,9 +133,57 @@ lower = \context Voice=two \notes \relative c{
       defaultBarType = "empty";
       \remove "Time_signature_engraver";
     }
+    \translator{ 
+      \GraceContext
+      \remove "Local_key_engraver";
+    }
+    \translator { 
+      \ScoreContext
+      \accepts "AutoSwitchGrandStaff";
+    }
+    \translator{
+      \type "Engraver_group_engraver";
+      \name AutoSwitchGrandStaff;
+      \consists "Span_bar_engraver";
+      \consists "Vertical_align_engraver";
+      \consists "Piano_bar_engraver";
+      \consistsend "Axis_group_engraver";
+      minVerticalAlign = 2.*\staffheight;
+      maxVerticalAlign = 2.*\staffheight;      
+      switcherName = "Voice";
+      acceptorName = "Thread";
+      staffContextName = "Staff";
+
+      \accepts "AutoSwitchContext";
+      \accepts "Staff";
+      slurVerticalDirection = 1;
+      verticalDirection = -1;
+      beamAutoEnd = "1/2";
+    }
+    \translator {
+      \type "Engraver_group_engraver";
+      \name AutoSwitchContext;
+      \consists "Staff_switching_translator";
+    }
   }
   \midi {
     \tempo 4 = 54;
+    \translator {
+      \ScoreContext
+      \accepts "AutoSwitchGrandStaff";
+    }
+    \translator {
+      \type "Performer_group_performer";
+      \name AutoSwitchGrandStaff;
+      \accepts "AutoSwitchContext";
+      \accepts "Staff";
+    }
+    \translator {
+      \type "Staff_performer";
+      \name AutoSwitchContext;
+      \accepts "Voice";
+      \consists "Key_performer";
+      \consists "Time_signature_performer";
+    }
   }
 }
-