]> git.donarmstrong.com Git - lilypond.git/blobdiff - input/tutorial/orchestral-score.ly
patch::: 1.3.132.jcn1
[lilypond.git] / input / tutorial / orchestral-score.ly
index 2e641fb9016d4b5e57deb44e3986a628f708c7a5..30e0dd208729095594d2c2bf63f433b307a0c2e7 100644 (file)
@@ -1,10 +1,22 @@
-\version "1.3.120";
+\version "1.3.130";
 
 \include "paper16.ly";
 
 % #(set! point-and-click #t)
 #(define text-flat '((font-relative-size . -2) (music "accidentals--1")))
 
+staffCombinePianoStaffProperties = {
+       \property PianoStaff.devNullThread = #'()
+       \property PianoStaff.soloADue = ##t
+       \property PianoStaff.soloText = #""
+       \property PianoStaff.soloIIText = #""
+       % This is non-conventional, but currently it is
+       % the only way to tell the difference.
+       \property PianoStaff.aDueText = #"\\`a2"
+       \property PianoStaff.splitInterval = #'(1 . 0)
+       \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
+       \property PianoStaff.noDirection = ##t
+}
 
 % Coriolan 218-222
 flautoI = \notes\relative c'' {
@@ -111,10 +123,10 @@ contrabasso = \notes\relative c {
       >
       \context Staff = clarinets <
         \property Staff.midiInstrument = #"clarinet"
-       \property Staff.instrument = #`((kern . 0.5)
-         (lines "2 Clarinetti" (rows "(B" ,text-flat ")")))
-       \property Staff.instr = #`((kern . 0.5)
-         (lines "Cl."  (rows "(B" ,text-flat ")")))
+       \property Staff.instrument = #`(lines
+         "2 Clarinetti" (rows "(B" ,text-flat ")"))
+       \property Staff.instr = #`(lines
+         "Cl."  (rows "(B" ,text-flat ")"))
        \property Staff.transposing = #-2
        \notes \key f \major;
        \context Voice=one \partcombine Voice
@@ -134,10 +146,10 @@ contrabasso = \notes\relative c {
     \context StaffGroup = brass <
       \context Staff = frenshHorns <
         \property Staff.midiInstrument = #"french horn"
-       \property Staff.instrument = #`((kern . 0.5)
-         (lines "2 Corni" (rows "(E" ,text-flat ")")))
-       \property Staff.instr = #`((kern . 0.5)
-         (lines "Cor."  (rows "(E" ,text-flat ")")))
+       \property Staff.instrument = #`(lines
+         "2 Corni" (rows "(E" ,text-flat ")"))
+       \property Staff.instr = #`(lines
+         "Cor."  (rows "(E" ,text-flat ")"))
        \property Staff.transposing = #3
        \notes \key c \major;
        \context Voice=one \partcombine Voice
@@ -146,10 +158,10 @@ contrabasso = \notes\relative c {
       >
       \context Staff = trumpets <
        \property Staff.midiInstrument = #"clarinet"
-       \property Staff.instrument = #`((kern . 0.5)
-         (lines "2 Trombe" (rows "(C)")))
-       \property Staff.instr = #`((kern . 0.5)
-         (lines "Tbe." (rows "(C)")))
+       \property Staff.instrument = #`(lines
+         "2 Trombe" (rows "(C)"))
+       \property Staff.instr = #`(lines
+         "Tbe." (rows "(C)"))
        \context Voice=one \partcombine Voice
          \context Thread=one \tromboI
          \context Thread=two \tromboII
@@ -158,8 +170,8 @@ contrabasso = \notes\relative c {
     \context StaffGroup = timpani <
       \context Staff = timpani <
        \property Staff.midiInstrument = #"timpani"
-       \property Staff.instrument = #'((kern . 0.5)
-         (lines "2 Timpani" "(C-G)"))
+       \property Staff.instrument = #'(lines
+         "2 Timpani" "(C-G)")
        \property Staff.instr = #"Timp."
        \clef bass;
        \timpani
@@ -189,21 +201,12 @@ contrabasso = \notes\relative c {
          \context Thread=one \violaI
          \context Thread=two \violaII
       >
-      \context GrandStaff=bass <
-        \property GrandStaff.soloADue = ##t
-        \property GrandStaff.soloText = #""
-        \property GrandStaff.soloIIText = #""
-       % This is non-conventional, but currently it is
-       % the only way to tell the difference.
-        \property GrandStaff.aDueText = #"\\`a2"
-        \property GrandStaff.splitInterval = #'(1 . 0)
-        \property GrandStaff.changeMoment =
-         #`(,(make-moment 1 1) . ,(make-moment 1 1))
-
+      \context PianoStaff=bass <
+       \staffCombinePianoStaffProperties
         \context Staff=one <
          \property Staff.midiInstrument = #"cello"
-         \property Staff.instrument = #'((kern . 0.5)
-           (lines "Violoncello" (rows "    e") (rows "Contrabasso")))
+         \property Staff.instrument = #'(lines
+           "Violoncello" "    e" "Contrabasso")
          \property Staff.instr = "Vc."
          \clef bass;
        >
@@ -224,17 +227,49 @@ contrabasso = \notes\relative c {
     \paperSixteen
     linewidth = 80 * \staffspace;
     textheight = 200 * \staffspace;
+    \translator{
+      \ThreadContext
+      \consists "Rest_engraver";
+      
+      % Set value for engraver at thread level,
+      % to override the default that is set in ScoreContext
+      % for added engraver at Voice level
+      devNullThread = #'()
+    }
+    \translator{
+      \VoiceContext
+      \remove "Rest_engraver";    
+
+      % The staff combine (bassi part) needs a
+      % thread_devnull_engraver here.
+      % Instead of maintaining two separate hierarchies,
+      % we switch add it, but switch it off immediately.
+      % --> move to Score level to be able to override
+      % The staff combine part switches it on.
+      
+      %% devNullThread = #'never
+      \consists "Thread_devnull_engraver";
+    }
+    \translator{
+      \HaraKiriStaffContext
+      \consists "Mark_engraver";
+    }
     \translator {
       \OrchestralScoreContext
-      skipBars = ##t
+      % skipBars = ##t
+
+      soloText = #"I."
+      soloIIText = #"II."
+      % By default, turn off the Thread_devnull_engraver
+      % at Voice level
+      devNullThread = #'never
+
       % Hmm
       currentBarNumber = #218
       BarNumber \override #'padding = #3
       RestCollision \override #'maximum-rest-count = #1
-      marginScriptHorizontalAlignment = #1
       TimeSignature \override #'style = #'C
     }
-    \translator { \HaraKiriStaffContext }
   }
 }