]> git.newer.systems Git - net-clarity.git/commitdiff
ossia work
authorTucker Johnson <tucker@newer.systems>
Wed, 17 Dec 2025 05:20:45 +0000 (00:20 -0500)
committerTucker Johnson <tucker@newer.systems>
Wed, 17 Dec 2025 05:20:45 +0000 (00:20 -0500)
general/scripts.ly
manuscripts/II-clarinet.ly
manuscripts/II-piano.ly

index b06de2894a751c9825106be36d5f1f6a2c882f7b..5ba736ee0fb02e656ceee0db7a1e823d94eb6a5a 100644 (file)
@@ -43,6 +43,29 @@ fractionalTime =
      \time #(to-internal-ts top partial bottom)
     #})
 
+#(define (wide-cluster-stencil orig width)
+   (let* ((ext (ly:stencil-extent orig X))
+          (current-width (- (cdr ext) (car ext)))
+          (scale (/ width current-width))
+          (scaled (ly:stencil-scale orig scale 1.0))
+          (shift (* -0.5 (- width current-width))))
+     (ly:stencil-translate scaled (cons shift 0))))
+
+wideCluster =
+#(define-music-function (width music) (number? ly:music?)
+   #{
+     \once \override ClusterSpanner.stencil =
+       #(lambda (grob)
+          ;; obtain the original stencil correctly
+          (let* ((proc (ly:grob-property grob 'stencil #f))
+                 (orig (if (procedure? proc)
+                           (proc grob)
+                           proc)))
+            (wide-cluster-stencil orig width)))
+     \makeClusters { #music }
+   #})
+
+
 pseudoIndents = % inline alternative to a new \score, also with right-indent
 #(define-music-function (name-tweaks left-indent right-indent)
   ((markup-list? '()) number? number?)
index dbac8a7ce55baa654331f0c16cae4a8cff217d53..e518e17f05d5f29fbf3bb5054164903c9e7d89cc 100644 (file)
@@ -86,7 +86,7 @@
       \override Staff.SectionLabel.font-size = #2.5
       \transpose c bes, \relative {
         \clef "bass"
-        c'8 r8 g8 r8 r4 | %O-028
+        \once \omit Staff.TimeSignature c'8 r8 g8 r8 r4 | %O-028
         r4 r4 ees,4( | %O-029
         b2. | %O-030
         c4~ 8) d''8-. fis,8\laissezVibrer a8\laissezVibrer | %O-031
     \tag #'part {
       \override Staff.SectionLabel.font-size = #2.5
       \transpose c bes, \relative {
-        \clef "treble" r4 <ees' c''>8-. r8 <f c'>8-. r8 | %O-049
+        \once \omit Staff.TimeSignature \clef "treble" r4 <ees' c''>8-. r8 <f c'>8-. r8 | %O-049
         r4 \ottava #-1 e,( f,8-.) \ottava #0 c''''8~ | %O-050
         c8 \ottava #-1 b,,,8-. \ottava #0 c'''8 d,4 g,8~ | %O-051
         g8 cis'8-. g,4( fis'4~ | %O-052
 
   \sectionLabel \markup { \huge \box \sans \bold 84 }
   \omit Score.BarNumber
-  \time 4/4 bes8-.\mf\< ces8( des ees)\f c8-.\p r8 r4 | \undo \omit Score.BarNumber \tag #'part { \break \pageTurn } %084
+  \time 4/4 bes8-.\mf\< ces8( des ees)\f c8-.\p r8 r4 | \undo \omit Score.BarNumber \tag #'part { \pageTurn } %084
   <<
     {
       \tag #'part { \omit Staff.TextSpanner }
       c8-. c8(\< d8 e8)\mf r4 r8 e8-. | %085
       \time 3/4 r8 e8-. f8( g8) g8( a~ | %086
       a8) \slashedGrace e8^( b'8)--\mp \grace ees,8^( c8\f d8-.) r8 d8-.-> | %087
-      r8 \slashedGrace ces'8^( des,8\p ees8-.) ees8-. \grace d8^( e4->)\f | \tag #'part { \break \noPageBreak } %088
+      r8 \slashedGrace ces'8^( des,8\p ees8-.) ees8-. \grace d8^( e4->)\f | %088
+      \tag #'part { \break \noPageBreak }
       \slashedGrace a8^( fis8)\p\< fis8-. fis( gis8) gis8( ais8~ | %089
       ais4) r8 ais8(\f b8-.) r8 | %090
       b8( cis8~ cis4)\> r8 des( | %091
       ees8) ees8-.\mf \slashedGrace e,8^( f'4.)\ff f8-.\> | %092
-      f8-. f8-. f8-. ges8--\mf\< ges8-. ges( | \tag #'part { \break \noPageBreak } %093
+      \tag #'part { \break \noPageBreak }
+      f8-. f8-. f8-. ges8--\mf\< ges8-. ges( | %093
       \time 3 3/8 aes8) \slashedGrace f8^( g8\ff a,8~ | %094
       \time 3/4 \timeSpanner "poco accel." a8)\startTextSpan \slashedGrace aes'8^( bes,8~ bes4.) bes8-.\> | %095
       bes8-. bes8-. bes8-. bes8-. bes8-.\mp \slashedGrace ees8^( c8\f |  %096
       d8-.) r8 d8-. d8-. d8( e8-.) | %097
-      \slashedGrace bes8^( f8)\mf f'8-. f8( g8-.) g8-.\< g8( | \tag #'part { \break \noPageBreak } %098
+      \tag #'part { \break \noPageBreak }
+      \tag #'part { \pseudoIndents 0 15 }
+      \slashedGrace bes8^( f8)\mf f'8-. f8( g8-.) g8-.\< g8( | %098
       \time 3 3/8 a8-.) a8-. a8-.\stopTextSpan | %099
       \tempo 4=174
-      \time 3/4 \slashedGrace a,8^( ges'8\ff aes8-.) aes8-. aes8( bes-.)
+      \time 3/4 \slashedGrace a,8^( ges'8\ff aes8-.)
+      aes8-. aes8( bes-.)
       \tag #'part { \undo \omit Staff.TextSpanner }
       r8
       \bar "||"  %100
     \tag #'part {
       \override Staff.SectionLabel.font-size = #2.5
       \transpose c bes, \relative {
-        <c' c'>8-. r8 <d d'>8-. r8 r8 ges'8( aes8) aes( | %O-085
+        \once \omit Staff.TimeSignature <c' c'>8-. r8 <d d'>8-. r8 r8 ges'8( aes8) aes( | %O-085
         bes) r8 <f f,>8-. <g g,>8-. r8 <a a,>8-. | %O-086
         r4 r8 bes8-. r8 f'8~ | %O-087
         f2.\laissezVibrer | %O-088
         <<
           {
             \time 3/4 \grace s8
-            \tuplet 3/2 { r8 ges,8 <ges' aes>8 } \tuplet 3/2 { <ges, f aes> <aes'! f>8 <a, f>8 }
-            <f' bes>8-.
+            \tuplet 3/2 { r8 ges,8 <ges' aes>8 } \tuplet 3/2 { <ges, f aes> \tweak font-size #-6 <aes'! f>8 \tweak font-size #-6 <a, f>8 }
+            \tweak font-size #-6 <f' bes>8-.
           }
           \new Voice {
-            \override ClusterSpanner.style = #'centered-stairs
-            \grace s8 s4 \tuplet 3/2 { s8 \makeClusters { <f a>32 <g>32 <f a> s32 } s8 }
+            \override ClusterSpanner.extra-offset = #'(0.5 . 0)
+            \grace s8 s4 \tuplet 3/2 { s8 \makeClusters { <f a>8 } s8 }
           }
           \new Voice {
-            \override ClusterSpanner.style = #'centered-stairs
-            \grace s8 s4 \tuplet 3/2 { s8 s8 \makeClusters { <f, a>32 g32 <f a>32 s32 } }
+            \override ClusterSpanner.extra-offset = #'(0.5 . 0)
+            \grace s8 s4 \tuplet 3/2 { s8 s8 \makeClusters { <f, a>8 } }
           }
           \new Voice {
-            \override ClusterSpanner.style = #'centered-stairs
-            \grace s8 s4 \tuplet 3/2 { s8 s8 s } \makeClusters { <f' bes>32 <g a>32 <f bes> }
+            \override ClusterSpanner.extra-offset = #'(0.5 . 0)
+            \grace s8 s4 \tuplet 3/2 { s8 s8 s8 }
+            \makeClusters {
+              <f' bes>8
+            }
           }
         >>
       }
   \tweak self-alignment-X #CENTER \textEndMark \markup { \concat { \rhythm { \tuplet 3/2 { 8 } } " = " \rhythm { { 8 } } } }
   \omit Score.BarNumber
   \tempo \markup { \hspace #3.5 "Prestissimo" } 4=232
-  \time 4/4 R1*6 | \undo \omit Score.BarNumber
+  \time 4/4 <>\tag #'part -\markup { \halign #-9.75 V.S. } R1*6 |
+  \tag #'part { \pageTurn }
+  \undo \omit Score.BarNumber
   <<
     {
-      \voiceOne \rit \after 4. \startTextSpan R1 |
-      r2 r4 r8
-    }
-    \tag #'part {
-        \new CueVoice \relative {
-          \cueClef "bass" r4 r8 \ottava #-1 <g, g,>8( <fis fis,>) <b b,,>8-. <cis, cis,>8-. <d d,>8
-          <a-. a,>8 e8---> <c' c,,>8 aes,8---> <bes bes,>8-. g8---> <ees'' ees,,>8 \ottava #0
-        }
-    }
-  >>
-  \oneVoice \cueClefUnset
-  f,,,8~\niente\<\stopTextSpan | \tag #'part { \break \noPageBreak } %108
+      \tag #'part { \omit Staff.TextSpanner }
+      \timeSpanner "rit." \after 4. \startTextSpan R1 |
+      r2 r4 r8 f,,,8~\niente\<\stopTextSpan | %108
 
-  \sectionLabel \markup { \huge \box \sans \bold 109 }
-  \omit Score.BarNumber
-  \tempo 4=200
-  \time 3/4 f2~ f8
-  <<
-    {
+      \tag #'part { \once \override Staff.SectionLabel.stencil = ##f }
+      \sectionLabel \markup { \huge \box \sans \bold 109 }
+      \omit Score.BarNumber
+      \tempo 4=200
+      \time 3/4 f2~ f8
       des'8->~\f | \undo \omit Score.BarNumber %109
       des4 bes2->~ | %110
       bes2\> d,4~\mp | %111
+      \tag #'part { \break \noPageBreak }
       2.~\> | %112
       2.\niente\< | %113
       c'2.->~\f | %114
-      \rit c4.\startTextSpan b4.->\> | %115
-      ees,2.~\p\< | \tag #'part { \break \noPageBreak } %116
+      \timeSpanner "rit." c4.\startTextSpan b4.->\> | %115
+      ees,2.~\p\< |  %116
       2 f4~\f | %117
+      \tag #'part { \break \noPageBreak }
       \after 2 \stopTextSpan f2. \tempo "Tempo primo" 4=168 \bar "||"  %118
       fis4-> a2->~ | %119
       4. g4.~-> |   %120
-      g4\startTextSpan aes4->~ aes8 e8~-> | %121
+      \timeSpanner "rit." g4\startTextSpan aes4->~ aes8 e8~-> | %121
       2.~\> | %122
-      4\p r4 \after 8 \stopTextSpan r4 \bar "||" \tag #'part { \pageTurn } %123
+      4\p r4 \after 8 \stopTextSpan r4 \bar "||"  %123
+      \tag #'part { \break \noPageBreak }
 
+      \tag #'part { \once \override Staff.SectionLabel.stencil = ##f }
       \sectionLabel \markup { \huge \box \sans \bold 124 }
       \omit Score.BarNumber
       \tempo "Poco rubato" 4=152
       R1*3/4 | \undo \omit Score.BarNumber %124
+      r8 a'4(\mp\< fis) bes8~-> | %125
+      \tag #'part { \undo \omit Staff.TextSpanner }
     }
     \tag #'part \new Staff \with {
       alignAboveContext = "cl2"
       \override Staff.SectionLabel.font-size = #2.5
       \transpose c bes, \relative {
         \clef "bass"
-        <cis cis'>8-- |
-        <f, f,>8-. <e' e,,>8-. <bes' bes,>4 r4 |
-        r4 <g g,>8 c,,,8--->\laissezVibrer <d' d'>8\laissezVibrer <a a,>8-. |
-        r8 dis,8--->
+        \once \omit Staff.TimeSignature r4 r8 \ottava #-1 \timeSpanner "rit." <g, g,>8(\startTextSpan <fis fis,>) <b b,,>8-. <cis, cis,>8-. <d d,>8 | %O107
+        <a-. a,>8 e8---> <c'' c,,>8 aes,8---> <bes bes,>8-. g8---> <ees'' ees,,>8 \ottava #0 <f f,>8--\stopTextSpan | %O108
+
+        r4 r4 r8 <cis cis'>8-- | %O109
+        <f, f,>8-. <e' e,,>8-. <bes' bes,>4 r4 | %O110
+        r4 <g g,,>8 c,,,8--->\laissezVibrer <d' d'>8\laissezVibrer \ottava #-1 <a a,>8-. | %O111
+        r8 dis,8---> \ottava #0 <gis gis''>8 \ottava #-1 b,8---> <fis' fis'>8-. \ottava #0 <f f''>8-. | %O112
+        \ottava #-1 bes,8---> des8~---> des2 \ottava #0 | %O113
+        <c'' c'>4 r4 r4 | %O114
+        <fis fis,,>8-. \ottava #-1 d,,8---> <a a''>8 \ottava #0 <b'' b'>8 <e, e,>8-. <g g,>8-. | %O115
+        <ees' ees,>8-- <aes, aes,>8-. <c c,,>8 g,8---> <bes bes'>8-. r8 | %O116
+        r4 r4 <f'' f,>8\laissezVibrer <d, d,>8-. | %O117
+        r4 r8 <b' b,,>8 <dis dis,,>8 e,,8\laissezVibrer | %O118
+        <fis' fis'>8-- <cis cis'>8-. <a' a'>8\laissezVibrer gis,8~-> gis4~ | %O119
+        gis8 fis'8->\laissezVibrer r8 <g g'>8-- <ees ees'>8-. r8 | %O120
+        \timeSpanner "rit." f'4->--\startTextSpan <gis gis,>8 a8\laissezVibrer r8 <e e,>8 | %O121
+        <c c,>8 r8 <des des,,>8( <bes bes,,>4) <b b'>8-. | %O122
+        r8 <d d,,>8-- <ees ees'>8-- r8 \after 8 \stopTextSpan e,4\laissezVibrer | %O123
+        <g' g'>4-- b,\laissezVibrer gis'8\laissezVibrer e8\laissezVibrer \clef "treble" | %O124
+        c''8-. <a a,>4( <fis fis,>4)
       }
     }
   >>
 
-  r8 a'4(\mp\< fis) bes8~-> | %125
   bes8 f4-> des4->\f \slashedGrace fis8( d8~\p | %126
   d2\< fis4~\mp | %127
-  fis4) \breathe des'4->\f bes8-> \slashedGrace f8^( d'8~\> | \tag #'part { \break \noPageBreak } %128
+  \tag #'part { \pageTurn }
+  fis4) \breathe des'4->\f bes8-> \slashedGrace f8^( d'8~\> |  %128
   d8 a8~ \after 4. \mp a2) | %129
-  \slashedGrace b8^( f8->)\startTextSpan ees'8~ ees4~\< ees8 \slashedGrace f,8^( b8~->\f\> | %130
+  \slashedGrace b8^( \timeSpanner "rit." f8->)\startTextSpan ees'8~ ees4~\< ees8 \slashedGrace f,8^( b8~->\f\> | %130
   b8) c8~ \after 8 \p c4 \slashedGrace b8^( \after 8 \stopTextSpan e4~->\f \tempo 4=144 |  %131
+  \tag #'part { \break \noPageBreak }
   e8) aes8-> g,2~\> | %132
-  8\mp \breathe g8~( g4~ g8 b,8~ | \tag #'part { \break \noPageBreak } %133
+  8\mp g8~( g4~ g8 b,8~ | %133
   b8) \slashedGrace gis''8^( dis4)\mf e,8( gis,4~ | %134
-  gis4)\startTextSpan \slashedGrace e''8^( g,2~\> | %135
-  g2) c4~ | %136
-  c4 r8 \after 4 \stopTextSpan g4.\p \tempo 4=132 | %137
+  <<
+    {
+      \tag #'part { \omit Staff.TextSpanner }
+      \timeSpanner "rit." gis4)\startTextSpan \slashedGrace e''8^( g,2~\> | %135
+      \tag #'part { \break \noPageBreak }
+      g2) c4~ | %136
+      c4 r8 \after 4 \stopTextSpan g4.\p | %137
+      \tag #'part { \undo \omit Staff.TextSpanner }
+    }
+    \tag #'part \new Staff \with {
+      alignAboveContext = "cl2"
+      \magnifyStaff #2/3
+    }
+    \tag #'part {
+      \override Staff.SectionLabel.font-size = #2.5
+      \transpose c bes, \relative {
+        \once \omit Staff.TimeSignature
+        \clef "bass"
+        \timeSpanner "rit." f,2\startTextSpan \clef "treble" fis'''8\laissezVibrer \clef "bass" f,,,8->\laissezVibrer | %O-135
+        bes4\laissezVibrer des4\laissezVibrer r8 \clef "treble" <bes' a''>8~ | %O-136
+        4. \after 4 \stopTextSpan <b, g' b aes''>4. | %O-137
+      }
+
+    }
+  >>
 
   \sectionLabel \markup { \huge \box \sans \bold 138 }
   \omit Score.BarNumber
-  fis8 d4 f( c'8~ | \undo \omit Score.BarNumber \tag #'part { \break \noPageBreak } %138
+  \tempo 4=132
+  fis8 d4 f( c'8~ | \undo \omit Score.BarNumber %138
   c2) r4 | %139
   r8 a,8~(\mf a2 | %140
+  \tag #'part { \break \noPageBreak }
   gis4.) e''4.\p | %141
   ees,,4.\mf b''4(\p bes8~ | %142
-  bes2) des,4-> | \tag #'part { \break \noPageBreak } %143
+  bes2) des,4-> | %143
   a'2 bes'8(\< c,8~ | %144
   c2)\mf r8 b,8~ | %145
-  \ace b8\startTextSpan d4 f'8 e,,4( | %146
+  \tag #'part { \break \noPageBreak }
+  \timeSpanner "accel." b8\startTextSpan d4 f'8 e,,4( | %146
   fis4) ees'4( aes8 g~ | %147
-  g4) c,8\p\< des'4 ces'8-. | \tag #'part { \break \noPageBreak } %148
+  g4) c,8\p\< des'4 ces'8-. | %148
   r8 bes,,8 fes''2~( | %149
-  fes8 ges8-.) \after 4. \stopTextSpan f,,2\f \bar "||" %150
+  <>\tag #'part -\markup { \halign #-9.75 V.S. } fes8 ges8-.) \after 4. \stopTextSpan f,,2\f \bar "||" %150
+  \tag #'part { \pageTurn }
 
   \sectionLabel \markup { \huge \box \sans \bold 151 }
   \omit Score.BarNumber
   \tempo "Tempo giusto" 4=144
   r4 r4 r8 g8\> | \undo \omit Score.BarNumber %151
   d'8 cis'8-.\mp r8 ges,4\f\> fes'8 | %152
-  ees'-.\mp\startTextSpan r8 f,4\mf c'4~\< | \tag #'part { \break \noPageBreak } %153
+  ees'-.\mp\startTextSpan r8 f,4\mf c'4~\< | %153
   c8 a,8\f r8 f8 g'4~\mf | %154
   g8 r8 e,8\f\> fis'4 \after 16 \stopTextSpan gis'8\mp \tempo "Tempo primo" 4=168 \bar "||" %155
   d,,4.\f d8-. r8 a''8~\mp | %156
   a8 b'4(\< bes8-.) ees,4~ | %157
-  ees4 ces,8-.\f r8 r4 | \tag #'part { \break  \pageTurn } %158
+  ees4 ces,8-.\f r8 r4 | %158
   bes8\> c'8-.\p r4 r8 aes,8\mf\> | %159
   des'8-. e'4(\p f d8-.) | %160
   r8 ees,,,8(\f\> c'4 b'8-.)\p r8 | %161
index a5ccbd6ecd7ff9a0f8456fa72331db466269ca0e..90fd53accb7aa718f97fc55e213088944d9eb4fb 100644 (file)
       r4 r8 b,8\> dis e~ | %b118
       e8\p cis'8-. r8 gis4.->~ | %b119
       8 fis'->~ fis2 \ottava #0 | %b120
-      r4 <aes aes'>4 r8 <e e'> | %b121
+      r4 <gis gis'>4 r8 <e e'> | %b121
       <c c'> r8 \ottava #-1 des,8( bes4) r8 | %b122
       r8 d8 \ottava #0 r4 e'4~\mf | %123