]> git.newer.systems - cherryBlossoms.git/commitdiff
init
authorTucker Johnson <tucker@newer.systems>
Fri, 14 Mar 2025 21:18:33 +0000 (17:18 -0400)
committerTucker Johnson <tucker@newer.systems>
Fri, 14 Mar 2025 21:18:33 +0000 (17:18 -0400)
.gitignore [new file with mode: 0644]
cherryBlossoms.ly [new file with mode: 0644]
general/aliases.ly [new file with mode: 0644]
general/info.ly [new file with mode: 0644]
general/scripts.ly [new file with mode: 0644]
general/umbel.ly [new file with mode: 0644]
manuscripts/bassTrombone.ly [new file with mode: 0644]
manuscripts/horn.ly [new file with mode: 0644]
manuscripts/trombone.ly [new file with mode: 0644]
manuscripts/trumpetI.ly [new file with mode: 0644]
manuscripts/trumpetII.ly [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..45e83ea
--- /dev/null
@@ -0,0 +1,7 @@
+*.pdf
+*.ps
+*.midi
+*.mid
+*.log
+*~
+.DS_Store
diff --git a/cherryBlossoms.ly b/cherryBlossoms.ly
new file mode 100644 (file)
index 0000000..4cae94d
--- /dev/null
@@ -0,0 +1,244 @@
+\version "2.24.4"
+
+\include "general/info.ly"
+\include "general/aliases.ly"
+\include "general/scripts.ly"
+\include "general/umbel.ly"
+
+\paper {
+  line-width = 120
+  first-page-number = -1
+  #(include-special-characters)
+  footnote-separator-markup = \markup { \left-column { \vspace #0.5 \draw-line #'(6 . 0) } }
+  print-page-number = ##f
+  #(set-paper-size "arch a")
+  print-all-headers = ##f
+  %ragged-last = ##t
+  top-margin = 0.5\in
+  bottom-margin = 0.5\in
+  left-margin = 0.9\in
+  right-margin = 0.9\in
+  indent = 0.75\in
+  short-indent = 0\cm
+  #(define fonts (set-global-fonts #:music "scorlatti" #:brace "scorlatti" #:roman "Junicode" #:sans "classico"))
+  max-systems-per-page = #10
+  system-system-spacing = #'((basic-distance . 10) (minimum-distance . 8) (padding . 12))
+  score-system-spacing = #'((basic-distance . 2) (minimum-distance . 1) (padding . 0))
+  last-bottom-spacing = #'((basic-distance . 5) (minimum-distance . 5) (padding . 0))
+  oddHeaderMarkup = \markup {
+    \concat { \if \on-page #5 \oddhead }
+    \concat { \if \on-page #7 \evhead }
+  }
+  evenHeaderMarkup = \markup {
+    \concat { \if \on-page #4 \evhead }
+    \concat { \if \on-page #6 \evhead }
+  }
+  oddFooterMarkup = \markup {
+    \concat { \if \on-page #3 \fill-line { \null \xcr \null } }
+    \concat { \if \on-page #5 \oddfoot }
+    \concat { \if \on-page #7 \oddfoot }
+  }
+  evenFooterMarkup = \markup {
+    \concat { \if \on-page #2 \evfoot }
+    \concat { \if \on-page #4 \evfoot }
+    \concat { \if \on-page #6 \evfoot }
+    \concat { \if \on-page #8 \fill-line { \null \concat { \char ##x2767 " " \tiny \typewriter \longHash " " \char ##x2619 } \null } }
+  }
+
+}
+
+\book {
+
+  \markuplist { %Outside Cover
+    \fill-line {
+      \line { \null }
+      \center-column {
+  \line { \with-url #"https://newer.systems" \fontsize #1 \hbracket \sans \bold "  https://newer.systems  " }
+      }
+      \line { \null }
+      \line { \null }
+      \line { \null }
+      \line { \null }
+    }
+    \fill-line {
+        \line { \null }
+        \center-column {
+            \line { \null }
+          }
+        \right-column {
+            \vspace #15
+            \line { \fontsize #8 \bold \underline \xtitle }
+      \vspace #-0.1
+            \line { \fontsize #3 \sans \xcomp }
+      \vspace #3
+      \line { \fontsize #2 \sans \concat { "for " \xinst } }
+      }
+    }
+    \vspace #26.25
+    \fill-line {
+      \line { \null }
+      \line { \null }
+      \line { \null }
+      \line { \null }
+      \center-column {
+  \xumbel
+  \vspace #0.3
+    \line { \fontsize #1 \hbracket \sans \bold "  umbel press  " }
+      }
+      \line { \null }
+    }
+  }
+
+  \pageBreak
+  \markup { \vspace #5 }
+
+  \pageBreak
+  \markuplist { %Inside Cover
+    \fill-line {
+        \line { \null }
+        \center-column {
+            \vspace #10
+            \line { \hbracket \fontsize #10 \number 2025 }
+            \vspace #4
+            \line { \xcomp  }
+            \vspace #1
+            \line { \fontsize #5 \bold  \xtitle }
+            \line { \italic \xsub }
+            \vspace #4
+          }
+        \right-column {
+            \line { \null }
+      }
+    }
+  }
+
+  \pageBreak
+  \markuplist { %Front Matter
+    \fill-line {
+      \left-column {
+        \line { \bold \xtitle " [2025]" }
+        \line { \xinst " | " 6 minutes }
+        \line { \xcomp }
+        \vspace #25
+      }
+      \center-column {
+        \vspace #5
+        \left-column {  }
+        \vspace #0.5
+        \left-column {
+          \override #'(line-width . 100)
+          \line { \hspace #100 }
+          \vspace #-1
+          \wordwrap { \char ##x10AF1 \hspace #0.5 \large \bold \sans "program notes" }
+        }
+        \vspace #0.5
+        \left-column {
+          \override #'(line-width . 90)
+          \justify {
+            Don Cherry
+          }
+        }
+        \vspace #2.5
+        \left-column {
+          \override #'(line-width . 100)
+          \line { \hspace #100 }
+          \vspace #-1
+          \wordwrap { \char ##x10AF1 \hspace #0.5 \large \bold \sans "performance notes" }
+          \vspace #0.5
+          \wordwrap { &sect; \hspace #3.5 \sans \bold \italic "interpreting notations" }
+        }
+        \left-column {
+          \override #'(line-width . 90)
+          \line { \hspace #90 }
+          \justify { \italic 1. \hspace #1 Accidentals carry through each bar &ndash; cautionary accidentals are not supplied. }
+          \justify { \italic 2. \hspace #1 Two fermata notations are used: a \italic short fermata ( \musicglyph "scripts.ushortfermata" ) and a \italic long fermata ( \musicglyph "scripts.ufermata" ). }
+          \override #'(line-width . 90)
+          \justify {
+            \italic 3. \hspace #1 Dotted slurs are used to indicate phrasing that may not be clear through dynamics and other notations. }
+        }
+        \vspace #2.5
+        \line { \char ##x27BF }
+      }
+
+      \right-column {
+        \vspace #-0.2
+        \right-column \fontsize #-1 {
+          \line { \fontsize #-2 \typewriter { \shortHash - \subject } }
+          \vspace #-0.4
+          \line { \fontsize #-2 \typewriter { \commitDate } }
+          \vspace #-0.4
+          \line { \fontsize #-2 \typewriter { "branch:" \branchName } }
+        }
+        \vspace #2
+      }
+    }
+  }
+
+  \pageBreak
+  \header {
+    tagline = "test"
+  }
+
+  \bookpart {
+    \header {
+      title = \markup { \fontsize #1 \xtitle }
+      subtitle = \markup { \medium \italic \xsub }
+      composer = \xcomp
+      poet = \markup { \xinst }
+    }
+    \score {
+      <<
+        \new StaffGroup
+        <<
+          \include "manuscripts/trumpetI.ly"
+          \include "manuscripts/trumpetII.ly"
+          \include "manuscripts/horn.ly"
+          \include "manuscripts/trombone.ly"
+          \include "manuscripts/bassTrombone.ly"
+        >>
+      >>
+      %\midi { }
+      \layout {
+        \context {
+          \Score
+          \override RehearsalMark.break-visibility = #begin-of-line-invisible
+          \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/20)
+          \override Hairpin.to-barline = ##f
+          \overrideTimeSignatureSettings 4/4 1/4 1,1,1,1 #'()
+          \overrideTimeSignatureSettings 3/4 1/4 1,1,1 #'()
+          \overrideTimeSignatureSettings 5/8 1/8 2,3 #'()
+          \override BarNumber.font-name = "classico"
+          \phrasingSlurDashPattern #0.5 #2.0
+          \override PhrasingSlur.thickness = 0.00
+          \override StaffSymbol.layer = #4
+          \override Stem.layer = #4
+          \override Beam.layer = #4
+          \override Tie.layer = #4
+          \override Hairpin.layer = #4
+          \override TimeSignature.layer = #2
+          \override Tie.layer = #1
+          \override TupletBracket.layer = #2
+          \override TextSpanner.layer = #3
+          \override NoteHead.layer = #4
+          \override TimeSignature.whiteout = 2
+          \override TextScript.padding = 1
+          \numericTimeSignature
+          \romanStringNumbers
+          \override StringNumber.padding = 1
+          \override StringNumber.font-size = -3
+          \override TupletNumber.layer = 4
+          \override TupletNumber.font-shape = #'upright
+          \override TupletBracket.whiteout = 2
+          \override StaffGrouper.staff-staff-spacing =
+            #'((basic-distance . 10)
+               (minimum-distance . 5)
+               (padding . 3)
+               (stretchability . 1))
+        }
+      }
+    }
+  }
+
+  \pageBreak
+  \markup { \fill-line { \center-column { \vspace #24 \xumbel } } }
+}
diff --git a/general/aliases.ly b/general/aliases.ly
new file mode 100644 (file)
index 0000000..398a0d6
--- /dev/null
@@ -0,0 +1,63 @@
+U = \change Staff = "u"
+D = \change Staff = "d"
+
+%spacing
+ds = #2.5
+sods = #3.4
+phds = #3.9
+
+%notation marks
+pizz = ^\markup { "pizz" }
+arco = ^\markup { "arco" }
+pont = ^\markup { \italic "sul pont" }
+tasto = ^\markup { \italic "sul tasto" }
+ord = ^\markup { \italic "ord" }
+
+sD = \stemDown
+sU = \stemUp
+sN = \stemNeutral
+
+twoWayFermata = {
+  \once \set Staff.caesuraType = #'((underlying-bar-line . "."))
+  \once \set Staff.caesuraTypeTransform = ##f
+  \caesura ^\shortfermata _\shortfermata
+}
+
+glissandoSkipOn = {
+  \override NoteColumn.glissando-skip = ##t
+  \hide NoteHead
+  \override NoteHead.no-ledgers = ##t
+}
+
+glissandoSkipOff = {
+  \revert NoteColumn.glissando-skip
+  \undo \hide NoteHead
+  \revert NoteHead.no-ledgers
+}
+
+\defineBarLine "|" #'(#t #f " ")
+
+ffsempre =
+    #(make-dynamic-script (markup #:combine #:transparent "f" "ff" #:combine
+#:transparent "f" #:normal-text #:italic "sempre" ) )
+
+psempre =
+#(make-dynamic-script
+   (markup "p" #:normal-text #:italic "sempre" ))
+
+ppsempre =
+    #(make-dynamic-script (markup #:combine #:transparent "f" "pp" #:combine
+#:transparent "f" #:normal-text #:italic "sempre" ) )
+
+ppsubito =
+    #(make-dynamic-script (markup #:combine #:transparent "f" "pp" #:combine
+#:transparent "f" #:normal-text #:italic "subito" ) )
+
+psubito =
+    #(make-dynamic-script (markup #:combine #:transparent "f" "p" #:combine
+#:transparent "f" #:normal-text #:italic "subito" ) )
+
+
+niente = #(make-dynamic-script (markup (#:normal-text #:abs-fontsize 10 #:bold "n")))
+
+harm = \once \override Staff.NoteHead.style = #'harmonic-mixed
diff --git a/general/info.ly b/general/info.ly
new file mode 100644 (file)
index 0000000..39dd8de
--- /dev/null
@@ -0,0 +1,10 @@
+xtitle = \markup { Cherry Blossoms }
+xsub = \markup { for Evan Heuermann }
+xcomp = \markup { Tucker Johnson }
+xinst = \markup  { brass quintet }
+xdur = \markup { \null }
+xcr = \markup \tiny { Copyright Tucker Johnson 2025. All Rights Reserved (ASCAP) }
+oddhead = \markup { \fill-line { \null \center-column { \bold { \xcomp } "  " } \null } }
+evhead = \markup { \fill-line { \null \center-column { \bold { \xtitle } "  " } \null } }
+oddfoot = \markup { \fill-line { \null \center-column { " " \concat { \tiny \char ##x1F661 " " \sans \fromproperty #'page:page-number-string " " \tiny \char ##x1F663 } } \null } }
+evfoot = \markup { \fill-line { \null \center-column { " " \concat { \tiny \char ##x1F661 " " \sans \fromproperty #'page:page-number-string " " \tiny \char ##x1F663 } } \null } }
diff --git a/general/scripts.ly b/general/scripts.ly
new file mode 100644 (file)
index 0000000..4c47285
--- /dev/null
@@ -0,0 +1,71 @@
+timeSpanner =
+  #(define-music-function (left) (string?)
+    #{
+      \once {
+        \override TextSpanner.staff-padding = 5
+        \override TextSpanner.outside-staff-priority = 1000
+        \override TextSpanner.style = #'dashed-line
+        \override TextSpanner.dash-period = 3
+        \override TextSpanner.dash-fraction = 0.25
+        \override TextSpanner.font-size = #1
+        \override TextSpanner.font-shape = #'upright
+        \override TextSpanner.bound-details.left.text = \markup { \bold \roman $left }
+        \override TextSpanner.bound-details.left-broken.text = ##f
+        \override TextSpanner.bound-details.right-broken.text = ##f
+        \override TextSpanner.bound-details.right.padding = #-1
+      }
+    #})
+
+markSpanner =
+  #(define-music-function (left right) (string? string?)
+    #{
+      \once {
+        \override TextSpanner.style = #'dashed-line
+        \override TextSpanner.outside-staff-priority = 550
+        \override TextSpanner.dash-period = 2
+        \override TextSpanner.dash-fraction = 0.5
+        \override TextSpanner.font-size = #0.25
+        %\override TextSpanner.bound-details.left.stencil-align-dir-y = #CENTER
+        %\override TextSpanner.bound-details.right.stencil-align-dir-y = #CENTER
+        \override TextSpanner.bound-details.left.text =
+        \markup { \general-align #Y #0 { $left \hspace #0.25 } }
+        \override TextSpanner.bound-details.right.text =
+          \markup { \general-align #Y #0 { \arrow-head #X #RIGHT ##f $right } }
+        \override TextSpanner.bound-details.left-broken.text = ##f
+        \override TextSpanner.bound-details.right-broken.text = ##f
+        \override TextSpanner.bound-details.right.padding = #1
+      }
+    #})
+
+stringNumberSpanner =
+  #(define-music-function (StringNumber) (string?)
+    #{
+      \once {
+        \override TextSpanner.style = #'solid
+        \override TextSpanner.outside-staff-priority = 150
+        \override TextSpanner.font-size = #-3
+        \override TextSpanner.bound-details.left.stencil-align-dir-y = #CENTER
+        \override TextSpanner.bound-details.left.text = \markup { $StringNumber \hspace #0.25 }
+        \override TextSpanner.bound-details.right.text = \markup { \draw-line #'(0 . -1) }
+        \override TextSpanner.bound-details.right-broken.text = ##f
+        \override TextSpanner.avoid-slur = #'ignore
+        \override TextSpanner.bound-details.right.padding = #-2
+      }
+    #})
+
+
+
+lsp =  \override TextSpanner.bound-details.left.text = \markup { \bold "sul pont" }
+rsp =  \override TextSpanner.bound-details.right.text = \markup { \bold "sul pont" }
+lst =  \override TextSpanner.bound-details.left.text = \markup { \bold "sul tasto" }
+rst =  \override TextSpanner.bound-details.right.text = \markup { \bold "sul tasto" }
+lord =  \override TextSpanner.bound-details.left.text = \markup { \bold "ord" }
+rord =  \override TextSpanner.bound-details.right.text = \markup { \bold "ord" }
+rit =  \override TextSpanner.bound-details.left.text = \markup { \upright "rit. " }
+ritPoc =  \override TextSpanner.bound-details.left.text = \markup { \upright "ritardando poco a poco " }
+molRit =  \override TextSpanner.bound-details.left.text = \markup { \upright "molto rit. " }
+pocRit =  \override TextSpanner.bound-details.left.text = \markup { \upright "poco rit. " }
+ace =  \override TextSpanner.bound-details.left.text = \markup { \upright "accel. " }
+pocAce =  \override TextSpanner.bound-details.left.text = \markup { \upright "poco accel. " }
+acePoc =  \override TextSpanner.bound-details.left.text = \markup { \upright "accelerando poco a poco " }
+molAce =  \override TextSpanner.bound-details.left.text = \markup { \upright "molto accel. " }
diff --git a/general/umbel.ly b/general/umbel.ly
new file mode 100644 (file)
index 0000000..506584b
--- /dev/null
@@ -0,0 +1,34 @@
+xumbel = \markup {
+  \center-column {
+           \path #0.1
+           #'((moveto 0 0)
+           (curveto 1 0.3 3.6 3 4.2 1.6)
+           (moveto 0 0)
+           (curveto -1 0.3 -3.6 3 -4.2 1.6)
+           (moveto 0 0)
+           (curveto 0.9 0.3 2.9 3 3.5 1.7)
+           (moveto 0 0)
+           (curveto -0.9 0.3 -2.9 3 -3.5 1.7)
+           (moveto 0 0)
+           (curveto 0.8 0.3 2.2 3 2.8 1.8)
+           (moveto 0 0)
+           (curveto -0.8 0.3 -2.2 3 -2.8 1.8)
+           (moveto 0 0)
+           (curveto 0.6 0.3 1.5 3 2.1 1.9)
+           (moveto 0 0)
+           (curveto -0.6 0.3 -1.5 3 -2.1 1.9)
+           (moveto 0 0)
+           (curveto 0.4 0.3 0.8 3 1.4 2)
+           (moveto 0 0)
+           (curveto -0.4 0.3 -0.8 3 -1.4 2)
+           (moveto 0 0)
+           (curveto 0.2 0.3 0.5 3 0.7 2.1)
+           (moveto 0 0)
+           (curveto -0.2 0.3 -0.5 3 -0.7 2.1)
+           (moveto 0 0)
+           (lineto 0 2.2))
+           \vspace #-0.035
+           \override #'(height . 0.25) \draw-squiggle-line #1 #'(0 . 5) ##f
+           \vspace #-0.275
+         }
+       }
diff --git a/manuscripts/bassTrombone.ly b/manuscripts/bassTrombone.ly
new file mode 100644 (file)
index 0000000..631cb1b
--- /dev/null
@@ -0,0 +1,17 @@
+% root = ../cherryBlossoms.ly
+
+\new Staff \with {
+  instrumentName = \markup { bass trombone }
+  shortInstrumentName = \markup { b. tbn }
+  \override DynamicLineSpanner.staff-padding = \sods
+  \consists Text_mark_engraver
+}
+\relative {
+  \clef bass
+  \tempo Rubato 4=64
+  \time 4/4
+  \partial 2. r4 r2 |
+  r4 r8 fis,8~\p fis4 f4->\mf\< | %002
+  \time 5/4
+  f1->\fp r4 | %002
+}
diff --git a/manuscripts/horn.ly b/manuscripts/horn.ly
new file mode 100644 (file)
index 0000000..78d1e5b
--- /dev/null
@@ -0,0 +1,17 @@
+% root = ../cherryBlossoms.ly
+
+\new Staff \with {
+  instrumentName = \markup { horn }
+  shortInstrumentName = \markup { hn }
+  \override DynamicLineSpanner.staff-padding = \sods
+  \consists Text_mark_engraver
+}
+\relative {
+  \clef treble
+  \tempo Rubato 4=64
+  \time 4/4
+  \partial 2. e'4->\f dis-> b-> |
+  \after 2 \p cis2.->\> c8->(\< d8) | %002
+  \time 5/4
+  a'1->\fp r4 | %002
+}
diff --git a/manuscripts/trombone.ly b/manuscripts/trombone.ly
new file mode 100644 (file)
index 0000000..b5499ed
--- /dev/null
@@ -0,0 +1,17 @@
+% root = ../cherryBlossoms.ly
+
+\new Staff \with {
+  instrumentName = \markup { trombone }
+  shortInstrumentName = \markup { tbn }
+  \override DynamicLineSpanner.staff-padding = \sods
+  \consists Text_mark_engraver
+}
+\relative {
+  \clef bass
+  \tempo Rubato 4=64
+  \time 4/4
+  \partial 2. r4 r2 |
+  r4 r8 a8~\p a4 g4->\mf\< | %002
+  \time 5/4
+  g1->\fp r4 | %002
+}
diff --git a/manuscripts/trumpetI.ly b/manuscripts/trumpetI.ly
new file mode 100644 (file)
index 0000000..719db1c
--- /dev/null
@@ -0,0 +1,19 @@
+% root = ../cherryBlossoms.ly
+
+\new Staff \with {
+  instrumentName = \markup { trumpet \bold I }
+  shortInstrumentName = \markup { tpt \bold "I " }
+  \override DynamicLineSpanner.staff-padding = \sods
+  \consists Text_mark_engraver
+}
+\relative {
+  \clef treble
+  \tempo Rubato 4=64
+  \time 4/4
+  \partial 2. r4 r2 |
+  R1 | %001
+  \time 5/4
+  r8 e''8(~\mp e4 dis4~ dis8) b8~ b4 | %002
+
+
+}
diff --git a/manuscripts/trumpetII.ly b/manuscripts/trumpetII.ly
new file mode 100644 (file)
index 0000000..6636576
--- /dev/null
@@ -0,0 +1,17 @@
+% root = ../cherryBlossoms.ly
+
+\new Staff \with {
+  instrumentName = \markup { trumpet \bold II }
+  shortInstrumentName = \markup { tpt \bold "II " }
+  \override DynamicLineSpanner.staff-padding = \sods
+  \consists Text_mark_engraver
+}
+\relative {
+  \clef treble
+  \tempo Rubato 4=64
+  \time 4/4
+  \partial 2. r4 r2 |
+  r4 r8 gis8~\p gis4 bes4->\mf\< | %002
+  \time 5/4
+  bes1->\fp r4 | %002
+}