commit 2020.06.03.01.01

main
Michael Winter 5 years ago
parent db5fce2c18
commit f23cbea76c

@ -1,5 +1,6 @@
\version "2.19.81" \version "2.19.81"
\include "pseudoindent.ly"
\paper { \paper {
#(set-paper-size "a4" 'portrait) #(set-paper-size "a4" 'portrait)
@ -64,7 +65,7 @@
\layout { \layout {
indent = 0.0\cm indent = 0.0\cm
line-width = 17\cm line-width = 17\cm
ragged-last = ##f ragged-last = ##t
ragged-right = ##f ragged-right = ##f
\context { \context {

File diff suppressed because one or more lines are too long

@ -1,22 +1,38 @@
{ {
\set Score.markFormatter = #format-mark-box-numbers \tempo 8 = 90 \set Score.markFormatter = #format-mark-box-numbers \tempo 2 = 90
\numericTimeSignature \time 4/4 \numericTimeSignature \time 2/2
\clef "treble^8" \clef "treble^8"
\bar "||" \mark \markup { \bold \box 1.1 } \bar "||" \mark \markup { \bold \box 1.1 }
\time 4/4 \time 2/2
f''''1 ~ | f''''1 | R1 | r2. f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 ~ | f''''1 ~ | f''''1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r2 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | R1 | f''''1 ~ | f''''2. r4 | R1 | R1 | R1 | R1 | R1 | R1 | f''''1 ~ | f''''2 r2 | r2. r8 [ f''''8 ] ~ | f''''1 ~ | f''''4 r2. | r2. f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r4 f''''4 ~ | f''''2. ~ f''''8 [ r8 ] | r4 f''''2. ~ | f''''1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.2 }d''''1 ~ | d''''2. r4 | R1 | r4 d''''2. ~ | d''''2 ~ d''''8 [ r8 ] r4 | r2. r8 [ d''''8 ] ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''8 [ r8 ] r4 d''''2 ~ | d''''1 ~ | d''''2 ~ d''''8 [ r8 ] r4 | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.3 }r2. f''''4 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r2 | r2. r8 [ f''''8 ] ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''4 r2. | R1 | r2 f''''2 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 | R1 | R1 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | R1 | R1 |
\time 2/4 \time 3/2
r2 | \bar "||" \mark \markup { \bold \box 1.2 } R1*3/2 | \bar ".|" \mark \markup { \bold \box 1.4 }
\time 4/4 \time 2/2
r8 [ d''''8 ] ~ d''''2. ~ | d''''2 r4 r8 [ d''''8 ] ~ | d''''1 ~ | d''''2 ~ d''''8 [ r8 ] r4 | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''2. ~ d''''8 [ r8 ] | R1 | r2 d''''2 ~ | d''''2. r4 | R1 | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''1 ~ | d''''4 ~ d''''8 [ r8 ] r4 d''''4 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''2 ~ d''''8 [ r8 ] r4 | R1 | r4 d''''2. ~ | d''''1 ~ | d''''8 [ r8 ] r2. | r2 d''''2 ~ | d''''1 ~ | d''''8 [ r8 ] r4 d''''2 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''2. r4 | R1 | r4 d''''2. ~ | d''''1 | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''2 ~ d''''8 [ r8 ] r4 | d''''1 ~ | d''''4 r2. | R1 | R1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.3 }r1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r4 f''''4 ~ | f''''1 ~ | f''''1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 1.4 }r1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2 r2 | R1 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r2 | R1 | f''''1 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | R1 | R1 | R1 | R1 | R1 | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''1 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''2. r4 | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | R1 | R1 |
\time 3/4 \time 3/2
r2. | \bar "|.|" \mark \markup { \bold \box 2.1 } R1*3/2 | \bar "|.|" \mark \markup { \bold \box 2.1 }
\pageBreak \pageBreak
\time 4/4 \time 2/2
R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r2 | R1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''2. r4 | R1 | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r4 f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2 r2 | R1 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 | R1 | R1 | R1 | R1 | R1 | r2. f''''4 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''1 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r2 f''''2 ~ | f''''1 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r2 | R1 | r4 f''''2. ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | R1 | R1 | \bar "||" \mark \markup { \bold \box 2.2 }r2. d''''4 ~ | d''''1 ~ | d''''8 [ r8 ] r4 d''''2 ~ | d''''1 ~ | d''''2. r4 | R1 | R1 | d''''1 ~ | d''''2. r4 | R1 | r2. r8 [ d''''8 ] ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''8 [ r8 ] r2. | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''1 ~ | d''''4 ~ d''''8 [ r8 ] r2 | \bar "||" \mark \markup { \bold \box 2.3 }r1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2. r4 | R1 | r4 f''''2. ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | f''''1 ~ | f''''1 ~ | f''''4 r2. | r2. f''''4 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''1 ~ | f''''4 r2. | R1 | R1 | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 2.4 }r1 | r2 f''''2 ~ | f''''2. r4 | R1 | R1 | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 ~ | f''''4 r2. | r2. f''''4 ~ | f''''1 ~ | f''''2 r2 | R1 | \bar "|.|" \mark \markup { \bold \box 3.1 }
\time 3/4 \pageBreak
r2. | \bar "||" \mark \markup { \bold \box 2.2 } r1 | r2 f''''2 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r2. r8 [ f''''8 ] ~ | f''''1 ~ | f''''2. r4 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 ~ | f''''8 [ r8 ] r2. |
\time 4/4 \time 3/2
R1 | r2 r8 [ d''''8 ] ~ d''''4 ~ | d''''1 ~ | d''''2 r2 | R1 | r2. d''''4 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''1 ~ | d''''4 r4 r8 [ d''''8 ] ~ d''''4 ~ | d''''1 ~ | d''''4 r4 r8 [ d''''8 ] ~ d''''4 ~ | d''''1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 2.3 }r2. f''''4 ~ | f''''1 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2. ~ f''''8 [ r8 ] | r4 f''''2. ~ | f''''2 r4 r8 [ f''''8 ] ~ | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2 r2 | R1 | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 2.4 }r1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 ] \bar "|." } R1*3/2 | \bar "||" \mark \markup { \bold \box 3.2 }
\time 2/2
r2. d''''4 ~ | d''''1 ~ | d''''2. r4 | R1 | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''2. ~ d''''8 [ r8 ] | r4 d''''2. ~ | d''''1 | R1 | R1 | r4 d''''2. ~ | d''''1 ~ | d''''2 r2 | r2. r8 [ d''''8 ] ~ | d''''1 ~ | d''''8 [ r8 ] r2. | R1 | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''2 ~ d''''8 [ r8 ] r4 | r2. r8 [ d''''8 ] ~ | d''''1 ~ | d''''2. r4 | R1 | r2 d''''2 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''4 r2. | r2 r8 [ d''''8 ] ~ d''''4 ~ | d''''1 ~ | d''''2. r4 | R1 | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''8 [ r8 ] r4 d''''2 ~ | d''''1 ~ | d''''2. ~ d''''8 [ r8 ] | R1 |
\time 3/2
R1*3/2 | \bar "||" \mark \markup { \bold \box 3.3 }
\time 2/2
r1 | r2 f''''2 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | r2 f''''2 ~ | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2 r4 r8 [ f''''8 ] ~ | f''''1 ~ | f''''1 ~ | f''''1 | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | R1 | r8 [ f''''8 ] ~ f''''2. ~ | f''''1 | R1 | R1 | r4 f''''2. ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2. r4 | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 3.4 }f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2. r4 | R1 | R1 | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''8 [ r8 ] r2. | R1 | R1 |
\time 3/2
R1*3/2 | \bar "|.|" \mark \markup { \bold \box 4.1 }
\pageBreak
\time 2/2
r1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | R1 | R1 | f''''1 ~ | f''''4 r4 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2. ~ f''''8 [ r8 ] | R1 | r2. f''''4 ~ | f''''1 ~ | f''''8 [ r8 ] r4 f''''2 ~ | f''''1 | R1 | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''1 ~ | f''''4 ~ f''''8 [ r8 ] r4 f''''4 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''4 r2. | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 4.2 }d''''1 ~ | d''''1 ~ | d''''8 [ r8 ] r2. | r2. d''''4 ~ | d''''1 ~ | d''''1 | r4 r8 [ d''''8 ] ~ d''''2 ~ | d''''1 ~ | d''''4 ~ d''''8 [ r8 ] r2 | r2. d''''4 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''1 ~ | d''''4 r2. | \bar "||" \mark \markup { \bold \box 4.3 }r2. f''''4 ~ | f''''1 | R1 | r4 r8 [ f''''8 ] ~ f''''2 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''1 ~ | f''''2 ~ f''''8 [ r8 ] r4 | f''''1 ~ | f''''1 ~ | f''''4 r2. | r2 r8 [ f''''8 ] ~ f''''4 ~ | f''''2. ~ f''''8 [ r8 ] | r4 f''''2. ~ | f''''1 ~ | f''''4 r2. |
\time 3/2
R1*3/2 | \bar ".|" \mark \markup { \bold \box 4.4 }
\time 2/2
r1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 ] \bar "|." }

@ -1,22 +1,38 @@
{ {
\set Score.markFormatter = #format-mark-box-numbers \tempo 8 = 90 \set Score.markFormatter = #format-mark-box-numbers \tempo 2 = 90
\override Staff.TimeSignature #'stencil = ##f \numericTimeSignature \time 4/4 \override Staff.TimeSignature #'stencil = ##f \numericTimeSignature \time 2/2
\clef bass \clef bass
\bar "||" \mark \markup { \bold \box 1.1 } \bar "||" \mark \markup { \bold \box 1.1 }
\time 4/4 \time 2/2
<<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.2 } <<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | r2 <<{ a,,4 ^ \markup{ 4.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | r2. <<{ a,,4 ^ \markup{ 3.6 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | r2. <<{ a,,4 ^ \markup{ 2.9 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | <<{ a,,4 ^ \markup{ 2.1 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 1.4 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | r2. <<{ a,,4 ^ \markup{ 0.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.3 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | r4 <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice r2 | R1 | R1 | R1 | R1 | r2. <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice | R1 | R1 | R1 |
\time 2/4 \time 3/2
r2 | \bar "||" \mark \markup { \bold \box 1.2 } R1*3/2 | \bar ".|" \mark \markup { \bold \box 1.4 }
\time 4/4 \time 2/2
<<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 4.4 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 3.9 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 3.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | R1 | R1 | R1 | <<{ a,,4 ^ \markup{ 2.8 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | R1 | <<{ a,,4 ^ \markup{ 2.2 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | R1 | <<{ a,,4 ^ \markup{ 1.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 1.1 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | R1 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 0.6 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 1.3 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | r2. <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice | R1 | R1 | R1 | <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice r2. | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 1.4 } <<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | <<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 |
\time 3/4 \time 3/2
r2. | \bar "|.|" \mark \markup { \bold \box 2.1 } R1*3/2 | \bar "|.|" \mark \markup { \bold \box 2.1 }
\pageBreak \pageBreak
\time 4/4 \time 2/2
<<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 2.2 } <<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | <<{ a,,4 ^ \markup{ 4.2 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 3.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 2.5 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 1.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 0.8 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 2.3 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | r2. <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice | R1 | R1 | R1 | <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice r2. | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 2.4 } <<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | \bar "|.|" \mark \markup { \bold \box 3.1 }
\time 3/4 \pageBreak
r2. | \bar "||" \mark \markup { \bold \box 2.2 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 |
\time 4/4 \time 3/2
<<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | r2 <<{ a,,4 ^ \markup{ 4.4 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | r2 <<{ a,,4 ^ \markup{ 3.9 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | r2 <<{ a,,4 ^ \markup{ 3.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | r2. <<{ a,,4 ^ \markup{ 2.8 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 2.2 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | r2. <<{ a,,4 ^ \markup{ 1.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 1.1 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 0.6 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 2.3 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice r2. | R1 | R1 | r4 <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice r2 | R1 | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 2.4 } <<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 ] \bar "|." } R1*3/2 | \bar "||" \mark \markup { \bold \box 3.2 }
\time 2/2
<<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 4.4 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | r4 r8. <<{ a,,16 ^ \markup{ 3.9 } } \new Voice { \voiceTwo a,,16 }>> \oneVoice <<{ a,,8. ^ \markup{ 3.9 } } \new Voice { \voiceTwo a,,8. }>> \oneVoice r16 r4 | R1 | R1 | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 3.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | R1 | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 2.8 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 2.2 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 1.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | R1 | R1 | R1 | r2 <<{ a,,4 ^ \markup{ 1.1 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | R1 | R1 | R1 | r4 <<{ a,,4 ^ \markup{ 0.6 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | R1 | R1 | R1 | R1 |
\time 3/2
R1*3/2 | \bar "||" \mark \markup { \bold \box 3.3 }
\time 2/2
<<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | r2. <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice | R1 | R1 | R1 | r2. <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice | R1 | R1 | R1 | \bar ".|" \mark \markup { \bold \box 3.4 } <<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 |
\time 3/2
R1*3/2 | \bar "|.|" \mark \markup { \bold \box 4.1 }
\pageBreak
\time 2/2
<<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | \bar "||" \mark \markup { \bold \box 4.2 } <<{ a,,4 ^ \markup{ 5.0 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | r4 <<{ a,,4 ^ \markup{ 4.2 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2 | R1 | R1 | <<{ a,,4 ^ \markup{ 3.3 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | r2 <<{ a,,4 ^ \markup{ 2.5 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r4 | R1 | R1 | r2. <<{ a,,4 ^ \markup{ 1.7 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice | R1 | R1 | R1 | <<{ a,,4 ^ \markup{ 0.8 } } \new Voice { \voiceTwo a,,4 }>> \oneVoice r2. | R1 | R1 | \bar "||" \mark \markup { \bold \box 4.3 } <<{ d,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | r2 <<{ f,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo f,,4 }>> \oneVoice r4 | R1 | R1 | r2. <<{ e,,4 ^ \markup{ 0.0 } } \new Voice { \voiceTwo e,,4 }>> \oneVoice | R1 | R1 | R1 |
\time 3/2
R1*3/2 | \bar ".|" \mark \markup { \bold \box 4.4 }
\time 2/2
<<{ d,4 ^ \markup{ -36.7 } } \new Voice { \voiceTwo d,4 }>> \oneVoice r2. | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 | R1 ] \bar "|." }

@ -0,0 +1,128 @@
%%%%%%%% HEADER %%%%%%%%
%
% this code was prompted by
% https://lists.gnu.org/archive/html/lilypond-user/2019-07/msg00139.html
% and offers a pseudoIndent hack suitable for general use
% keywords:
% indent short-indent indentation system line
% mid-score temporarily arbitrary individual single just only once
% coda margin
% mouse's tale acrostic mesostic spine
%%%%%%%% PSEUDOINDENT FUNCTIONS %%%%%%%%
% these two functions are for indenting individual systems
% - to left-indent a system, apply \pseudoIndent before the music continues
% - \pseudoIndents is similar, but lets you also indent on the right
% - both provide an option for changing that system's instrument names
% N.B. these functions
% - assume application to non-ragged lines (generally the default)
% - include a manual \break to ensure application at line start
% - misbehave if called more than once at the same line start
% the parameters of the (full) pseudoIndents function are:
% 1: name-tweaks
% usually omitted; accepts replacement \markup for instrument names
% as an ordered list; starred elements leave their i-names unchanged.
% 2: left-indent
% additional left-indentation, in staff-space units; can be negative,
% but avoid a total indentation which implies (unsupported) stretching.
% 3: right-indent
% amount of right-indentation, in staff-space units; can be negative.
% - not offered by the (reduced) pseudoIndent function
pseudoIndents = % inline alternative to a new \score, also with right-indent
#(define-music-function (parser location name-tweaks left-indent right-indent)
((markup-list? '()) number? number?)
(define (warn-stretched p1 p2) (ly:input-warning location (_
" pseudoIndents ~s ~s is stretching staff; expect distorted layout") p1 p2))
(let* (
(narrowing (+ left-indent right-indent)) ; of staff implied by args
(set-staffsymbol! (lambda (staffsymbol-grob) ; change staff to new width
(let* (
(left-bound (ly:spanner-bound staffsymbol-grob LEFT))
(left-moment (ly:grob-property left-bound 'when))
(capo? (moment<=? left-moment ZERO-MOMENT)) ; in first system of score
(layout (ly:grob-layout staffsymbol-grob))
(lw (ly:output-def-lookup layout 'line-width)) ; debugging info
(indent (ly:output-def-lookup layout (if capo? 'indent 'short-indent)))
(old-stil (ly:staff-symbol::print staffsymbol-grob))
(staffsymbol-x-ext (ly:stencil-extent old-stil X))
;; >=2.19.16's first system has old-stil already narrowed [2]
;; compensate for this (ie being not pristine) when calculating
;; - old leftmost-x (its value is needed when setting so-called 'width)
;; - the new width and position (via local variable narrowing_)
(ss-t (ly:staff-symbol-line-thickness staffsymbol-grob))
(pristine? (<= 0 (car staffsymbol-x-ext) ss-t)) ; would expect half
(leftmost-x (+ indent (if pristine? 0 narrowing)))
(narrowing_ (if pristine? narrowing 0)) ; uses 0 if already narrowed
(old-width (+ (interval-length staffsymbol-x-ext) ss-t))
(new-width (- old-width narrowing_))
(new-rightmost-x (+ leftmost-x new-width)) ; and set! this immediately
(junk (ly:grob-set-property! staffsymbol-grob 'width new-rightmost-x))
(in-situ-stil (ly:staff-symbol::print staffsymbol-grob))
(new-stil (ly:stencil-translate-axis in-situ-stil narrowing_ X))
;(new-stil (stencil-with-color new-stil red)) ; for when debugging
(new-x-ext (ly:stencil-extent new-stil X)))
(ly:grob-set-property! staffsymbol-grob 'stencil new-stil)
(ly:grob-set-property! staffsymbol-grob 'X-extent new-x-ext)
)))
(set-X-offset! (lambda (margin-grob) ; move grob across to line start
(let* (
(old (ly:grob-property-data margin-grob 'X-offset))
(new (lambda (grob) (+ (if (procedure? old) (old grob) old) narrowing))))
(ly:grob-set-property! margin-grob 'X-offset new))))
(tweak-text! (lambda (i-name-grob mkup) ; tweak both instrumentname texts
(if (and (markup? mkup) (not (string=? (markup->string mkup) "*")))
(begin
(ly:grob-set-property! i-name-grob 'long-text mkup)
(ly:grob-set-property! i-name-grob 'text mkup)
)))) ; else retain existing text
(install-narrowing (lambda (leftedge-grob) ; on staves, + adapt left margin
(define (grob-name x) (assq-ref (ly:grob-property x 'meta) 'name))
(let* (
(sys (ly:grob-system leftedge-grob))
(all-grobs (ly:grob-array->list (ly:grob-object sys 'all-elements)))
(grobs-named (lambda (name)
(filter (lambda (x) (eq? name (grob-name x))) all-grobs)))
(first-leftedge-grob (list-ref (grobs-named 'LeftEdge) 0))
(relsys-x-of (lambda (g) (ly:grob-relative-coordinate g sys X)))
(leftedge-x (relsys-x-of first-leftedge-grob))
(leftedged? (lambda (g) (= (relsys-x-of g) leftedge-x)))
(leftedged-ss (filter leftedged? (grobs-named 'StaffSymbol))))
(if (eq? leftedge-grob first-leftedge-grob) ; ignore other leftedges [1]
(begin
(for-each set-staffsymbol! leftedged-ss)
(for-each set-X-offset! (grobs-named 'SystemStartBar))
(for-each set-X-offset! (grobs-named 'InstrumentName))
(for-each tweak-text! (grobs-named 'InstrumentName) name-tweaks)
))))))
(if (negative? narrowing) (warn-stretched left-indent right-indent))
#{ % and continue anyway
% ensure that these overrides are applied only at begin-of-line
\break % (but this does not exclude unsupported multiple application)
% give the spacing engine notice regarding the loss of width for music
\once \override Score.LeftEdge.X-extent = #(cons narrowing narrowing)
% discard line start region of staff and reassemble left-margin elements
\once \override Score.LeftEdge.after-line-breaking = #install-narrowing
% shift the system to partition the narrowing between left and right
\overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
.X-offset #(- right-indent)
% prevent a leftmost barnumber entering a stretched staff
\once \override Score.BarNumber.horizon-padding = #(max 1 (- 1 narrowing))
#}))
pseudoIndent = % for changing just left-indent
#(define-music-function (parser location name-tweaks left-indent)
((markup-list? '()) number?)
#{
\pseudoIndents $name-tweaks $left-indent 0
#})

@ -15,19 +15,16 @@
masterVol = 1; masterVol = 1;
clockStringFunc = { clockStringFunc = {
arg div; arg beat;
var min, sec; var measure, measureBeat, leadSpace;
sec = (div / 5).trunc; measure = ((beat / 2) + 1).asInteger.asString;
min = (sec / 60).asInteger.asString; measureBeat = ((beat % 2) + 1).asInteger.asString;
if(min.size == 1, {min = "0" ++ min}, {}); leadSpace = (3 - measure.size).collect({" "}).join;
sec = (sec % 60).asInteger.asString; leadSpace ++ measure ++ "." ++ measureBeat
if(sec.size == 1, {sec = "0" ++ sec}, {});
min ++ ":" ++ sec
}; };
// [-30, -105, -104].asAscii and [-30, -105, -113].asAscii are unicode inverse bullet and normal bullet, respectively // [-30, -105, -104].asAscii and [-30, -105, -113].asAscii are unicode inverse bullet and normal bullet, respectively
metronomeStringFunc = { arg div; case {div % 20 < 2} metronomeStringFunc = { arg beat; if(beat % 2 == 0, {[-30, -105, -104].asAscii}, {[-30, -105, -113].asAscii}) };
{[-30, -105, -104].asAscii} {div % 4 < 2} {[-30, -105, -113].asAscii} {true} {" "} }; metronomeColorFunc = { arg beat; if(beat % 2 == 0, {Color.red},{Color.black}) };
metronomeColorFunc = { arg div; case {div % 20 < 2} {Color.red} {div % 4 < 2} {Color.blue} {true} {Color.black} };
~appStatusFunc = Task({ ~appStatusFunc = Task({
loop { loop {
@ -44,11 +41,16 @@
masterView = { masterView = {
var view, masterIndicators, master, generator, transport, ranSeed, startPosText, pauseButton, clock, metronome; var view, masterIndicators, master, generator, transport, ranSeed, startPosText, pauseButton, clock, metronome;
OSCFunc({ arg msg, time; { OSCFunc({ arg msg, time;
clock.string = clockStringFunc.value(msg[3]); {
metronome.stringColor = metronomeColorFunc.value(msg[3]); var beat = msg[3];
metronome.string = metronomeStringFunc.value(msg[3])}.defer; clock.string = clockStringFunc.value(beat);
},'/tr', s.addr); metronome.stringColor = metronomeColorFunc.value(beat);
metronome.string = metronomeStringFunc.value(beat);
}.defer;
},'/measureClock', s.addr);
OSCFunc({ arg msg, time; {metronome.string = ""}.defer},'/measureClockReset', s.addr);
view = View(win); view = View(win);
generator = HLayout( generator = HLayout(
@ -87,11 +89,11 @@
startPosText.string = clockStringFunc.value((pos.value * ~totalDur * 5).asInteger); startPosText.string = clockStringFunc.value((pos.value * ~totalDur * 5).asInteger);
startPos = pos.value; startPos = pos.value;
}), stretch: 1], }), stretch: 1],
startPosText = StaticText(win).string_("00:00").font_(Font("Monaco", 15)), startPosText = StaticText(win).string_(" 1.1").font_(Font("Monaco", 15)),
nil); nil);
view.layout_(HLayout( view.layout_(HLayout(
[VLayout(generator, nil, [VLayout(generator, nil,
HLayout(clock = StaticText(win).string_("00:00").font_(Font("Monaco", 200)), HLayout(clock = StaticText(win).string_(" 1.1").font_(Font("Monaco", 200)),
StaticText(win).string_("|").font_(Font("Monaco", 200)), StaticText(win).string_("|").font_(Font("Monaco", 200)),
metronome = StaticText(win).string_([-30, -105, -104].asAscii).font_(Font("Monaco", 300)).stringColor_(Color.red)), metronome = StaticText(win).string_([-30, -105, -104].asAscii).font_(Font("Monaco", 300)).stringColor_(Color.red)),
nil, transport nil, transport

@ -49,4 +49,10 @@ appEnvironment.push;
~patterns[0].play ~patterns[0].play
~transcribe.value(~scoreData) ~transcribe.value(~scoreData)
~patterns[0].stop ~patterns[0].stop
~player = Ptpar(([~sectionOffsets.postln * 0.08, ~patterns].flop.flat ++ [0, ~faderPattern])).postln
~fader.play
~player.play

@ -23,7 +23,7 @@ genInitSeq = {
res = []; //notes before the more static repetitions are put in res = []; //notes before the more static repetitions are put in
//~~~~run routine and create template sequence //~~~~run routine and create template sequence
({sectionCount < 2}).while({ ({sectionCount < 4}).while({
var alterPattern; var alterPattern;
//alter string pattern or not //alter string pattern or not
@ -104,7 +104,7 @@ genInitSeq = {
sectionCount = sectionCount + 1; sectionCount = sectionCount + 1;
(openStringCount - 1).do({arg index; (openStringCount - 1).do({arg index;
res[res.size - index - 1][3] = [0, 0, 0, 0, 0, 0]; res[res.size - index - 1][3] = [0, 0, 0, 0, 0, 0];
res[res.size - index - 1][2] = (dur * (1 + ((1 - (index / openStringCount).clip(0, 1).postln.pow(0.25)) * 10))).asInteger res[res.size - index - 1][2] = (dur * (1 + ((1 - (index / openStringCount).clip(0, 1).pow(0.25)) * 10))).asInteger
}); });
}); });
if(hasLanded.not, {landingCount = landingCount + 1}) if(hasLanded.not, {landingCount = landingCount + 1})
@ -121,13 +121,14 @@ finalizeSeqs = {arg initSeq;
timeStampSection, timeStampTotal, timeStampSectionStart, lastDur, lastPos, timeStampSection, timeStampTotal, timeStampSectionStart, lastDur, lastPos,
sectionSeq, timeSigInsSeq, sectionLen, sectionPosLimit, state, guitarSeq; sectionSeq, timeSigInsSeq, sectionLen, sectionPosLimit, state, guitarSeq;
extendToBeat = {arg seq; extendToBeat = {arg seq, round = 4;
var timeStampTotal, altEndDur; var timeStampTotal, altEndDur;
// this makes sure it is some multiple of a beat // this makes sure it is some multiple of a beat
timeStampTotal = seq.slice(nil, 2).sum; timeStampTotal = seq.slice(nil, 2).sum;
altEndDur = timeStampTotal.round(4) - timeStampTotal; altEndDur = timeStampTotal.round(round) - timeStampTotal;
if(altEndDur < 0, {altEndDur = altEndDur + 4}); //if(altEndDur < 0, {altEndDur = altEndDur + round});
seq.last[2] = seq.last[2] + altEndDur; seq.last[2] = seq.last[2] + altEndDur;
if(altEndDur < 0, {seq.last[2].postln});
[seq, altEndDur]; [seq, altEndDur];
}; };
@ -139,10 +140,10 @@ finalizeSeqs = {arg initSeq;
if(noMeasures.frac > 0, { if(noMeasures.frac > 0, {
timeSigInsSeq = timeSigInsSeq.add( timeSigInsSeq = timeSigInsSeq.add(
// make 5/4 instrad of 1/4 // make 5/4 instrad of 1/4
if((noMeasures.frac / 0.25).asInteger != 1, { if((noMeasures.frac / 0.25).asInteger != 2, {
[timeStampTotal - (4 * (noMeasures.frac / 0.25).asInteger),(noMeasures.frac / 0.25).asInteger] [timeStampTotal - (4 * (noMeasures.frac / 0.25).asInteger),(noMeasures.frac / 0.25).asInteger]
}, { }, {
[timeStampTotal - (4 * 5), 5] [timeStampTotal - (4 * 6), 6]
}); });
); );
timeSigInsSeq = timeSigInsSeq.add([timeStampTotal, 4]); timeSigInsSeq = timeSigInsSeq.add([timeStampTotal, 4]);
@ -175,7 +176,7 @@ finalizeSeqs = {arg initSeq;
sectionBorder = (pos != [0, 0, 0, 0, 0, 0]) && (lastPos == [0, 0, 0, 0, 0, 0]); sectionBorder = (pos != [0, 0, 0, 0, 0, 0]) && (lastPos == [0, 0, 0, 0, 0, 0]);
if(landingBorder || sectionBorder, { if(landingBorder || sectionBorder, {
var seqExtPair; var seqExtPair;
seqExtPair = extendToBeat.value(guitarSeq); seqExtPair = extendToBeat.value(guitarSeq, 8);
guitarSeq = seqExtPair[0]; guitarSeq = seqExtPair[0];
timeStampSection = timeStampSection + seqExtPair[1]; timeStampSection = timeStampSection + seqExtPair[1];
insertTS.value(guitarSeq, timeStampSectionStart, if(pos == [0, 0, 0, 0, 0, 0], {1}, {-1}), false); insertTS.value(guitarSeq, timeStampSectionStart, if(pos == [0, 0, 0, 0, 0, 0], {1}, {-1}), false);
@ -206,7 +207,7 @@ finalizeSeqs = {arg initSeq;
//altEndDur = sectionLen - timeStampSection; //altEndDur = sectionLen - timeStampSection;
//guitarSeq.last[2] = guitarSeq.last[2] + altEndDur; //guitarSeq.last[2] = guitarSeq.last[2] + altEndDur;
guitarSeq = extendToBeat.value(guitarSeq)[0]; guitarSeq = extendToBeat.value(guitarSeq, 8)[0];
timeStampTotal = guitarSeq.slice(nil, 2).sum; timeStampTotal = guitarSeq.slice(nil, 2).sum;
insertTS.value(guitarSeq, timeStampSectionStart, 0, true); insertTS.value(guitarSeq, timeStampSectionStart, 0, true);
timeStampSectionStart = timeStampTotal; timeStampSectionStart = timeStampTotal;
@ -240,7 +241,11 @@ finalizeSeqs = {arg initSeq;
}); });
}); });
guitarSeq = extendToBeat.value(guitarSeq)[0]; if(index < (reps - 1), {
guitarSeq = extendToBeat.value(guitarSeq, 4)[0];
}, {
guitarSeq = extendToBeat.value(guitarSeq, 8)[0];
});
}); });

@ -40,6 +40,12 @@ SynthDef(\masterPlayerControl, {
}).add; }).add;
SynthDef(\transport, {arg beat;
SendReply.kr(Changed.kr(beat),'/measureClock', values: [beat]);
SendReply.kr(TDelay.kr(Changed.kr(beat), 0.25),'/measureClockReset', values: [beat]);
}).add;
//~~~~karplus //~~~~karplus
SynthDef(\karplus, {arg freq, gate = 1, amp = 0.5, bus; SynthDef(\karplus, {arg freq, gate = 1, amp = 0.5, bus;
Out.ar(bus, Out.ar(bus,
@ -150,7 +156,7 @@ SynthDef(\droneOut, {arg gate, bus;
guitarSecSeq, accompLowSecSeq, accompHighSecSeq, guitarSecSeq, accompLowSecSeq, accompHighSecSeq,
stringSeq, fretSeq, durSeq, susSeq, trigSeq, openStrings, pattern; stringSeq, fretSeq, durSeq, susSeq, trigSeq, openStrings, pattern;
startTime = timePair.postln[0]; startTime = timePair[0];
endTime = timePair[1]; endTime = timePair[1];
guitarSecSeq = genSectionSec.value(guitarSeqIn, startTime, endTime, 0); guitarSecSeq = genSectionSec.value(guitarSeqIn, startTime, endTime, 0);
@ -159,9 +165,9 @@ SynthDef(\droneOut, {arg gate, bus;
if(accompHighSecSeq == [], {accompHighSecSeq = [[Rest(-1), 1, 0], [Rest(-1), 1, 0]]}); if(accompHighSecSeq == [], {accompHighSecSeq = [[Rest(-1), 1, 0], [Rest(-1), 1, 0]]});
guitarSecSeq.postln; //guitarSecSeq.postln;
accompLowSecSeq.postln; //accompLowSecSeq.postln;
accompHighSecSeq.postln; //accompHighSecSeq.postln;
openStrings = [1/1, 3/2, 2/1, 5/2, 35/12, 7/2]; openStrings = [1/1, 3/2, 2/1, 5/2, 35/12, 7/2];
stringSeq = guitarSecSeq.slice(nil, 0); stringSeq = guitarSecSeq.slice(nil, 0);
@ -204,10 +210,14 @@ SynthDef(\droneOut, {arg gate, bus;
\dur, Pseq(accompHighSecSeq.slice(nil, 1)), \dur, Pseq(accompHighSecSeq.slice(nil, 1)),
\sustain, Pseq(accompHighSecSeq.slice(nil, 2)), \sustain, Pseq(accompHighSecSeq.slice(nil, 2)),
\amp, 0.5, \amp, 0.5,
\bus, if(secIndex % 2 == 0, {~accompHighBusA.index}, {~accompHighBusB.index})) \bus, if(secIndex % 2 == 0, {~accompHighBusA.index}, {~accompHighBusB.index})),
Pmono(\transport,
\beat, Pseq((0..((endTime / 0.16).asInteger - 2))),
\dur, 0.08 * 8;
)
]); ]);
pattern pattern
}).postln; });
}; };
) )

@ -87,10 +87,10 @@
lilyString = lilyString ++ "\n{ "; lilyString = lilyString ++ "\n{ ";
lilyString = lilyString ++ "\n\\set Score.markFormatter = #format-mark-box-numbers "; lilyString = lilyString ++ "\n\\set Score.markFormatter = #format-mark-box-numbers ";
lilyString = lilyString + "\\tempo 8 = 90\n"; lilyString = lilyString + "\\tempo 2 = 90\n";
if(p != 1, {lilyString = lilyString + "\\override Staff.TimeSignature #'stencil = ##f"}); if(p != 1, {lilyString = lilyString + "\\override Staff.TimeSignature #'stencil = ##f"});
//lilyString = lilyString + "\\numericTimeSignature \\time 4/4\n \\mark \\default \n"; //lilyString = lilyString + "\\numericTimeSignature \\time 4/4\n \\mark \\default \n";
lilyString = lilyString + "\\numericTimeSignature \\time 4/4\n"; lilyString = lilyString + "\\numericTimeSignature \\time 2/2\n";
lilyString = switch(p, lilyString = switch(p,
0, {lilyString + "\\clef treble\n"}, 0, {lilyString + "\\clef treble\n"},
@ -116,7 +116,7 @@
gSum = gSum + noteLength; gSum = gSum + noteLength;
//add ties //add ties
lilyString = lilyString ++ if((group[0] == lastVal) && (group[0][0] != -1), {"~ "}, {""}); lilyString = lilyString ++ if((p != 2) && (group[0] == lastVal) && (group[0][0] != -1), {"~ "}, {""});
//add barcheck count //add barcheck count
lilyString = lilyString ++ if((curTime % curTimeSig == 0) && (i != 0), {measureCount = measureCount + 1; "| "}, {""}); lilyString = lilyString ++ if((curTime % curTimeSig == 0) && (i != 0), {measureCount = measureCount + 1; "| "}, {""});
//lilyString = lilyString ++ if((curTime % curTimeSig == 0) && ((measureCount % 4) == 0) && (i != 0), {"\n\\break \n"}, {""}); //lilyString = lilyString ++ if((curTime % curTimeSig == 0) && ((measureCount % 4) == 0) && (i != 0), {"\n\\break \n"}, {""});
@ -137,7 +137,11 @@
if((i == (timeSigData[timeSigIndex][0] / 4)) && (g == 0),{ if((i == (timeSigData[timeSigIndex][0] / 4)) && (g == 0),{
timeSigData[timeSigIndex][0]; timeSigData[timeSigIndex][0];
curTimeSig = timeSigData[timeSigIndex][1]; curTimeSig = timeSigData[timeSigIndex][1];
lilyString = lilyString + "\n\\time " ++ curTimeSig.asString ++ "/4\n"; if(curTimeSig.postln % 2 == 0, {
lilyString = lilyString + "\n\\time " ++ (curTimeSig / 2).asInteger.asString ++ "/2\n";
}, {
lilyString = lilyString + "\n\\time " ++ curTimeSig.asString ++ "/4\n";
});
if(timeSigIndex < (timeSigData.size - 1), {timeSigIndex = timeSigIndex + 1}); if(timeSigIndex < (timeSigData.size - 1), {timeSigIndex = timeSigIndex + 1});
curTime = 0; curTime = 0;
}); });
@ -182,8 +186,8 @@
}); });
//beam group //beam group
if((g == 0) && (noteLength != 4), {lilyString = lilyString ++ " [ "}); if((p != 2) && (g == 0) && (noteLength != 4), {lilyString = lilyString ++ " [ "});
if((gSum == 4) && (noteLength != 4), {lilyString = lilyString ++ " ] "}); if((p != 2) && (gSum == 4) && (noteLength != 4), {lilyString = lilyString ++ " ] "});
lastVal = group[0]; lastVal = group[0];
curTime = curTime + (noteLength / 4); curTime = curTime + (noteLength / 4);
@ -202,9 +206,10 @@
lilyString.findRegexp( lilyString.findRegexp(
"(" ++ noteTuples ++ ")4 (" ++ markupSuffixes ++ ") ~ " ++ "(" ++ noteTuples ++ ")4 (" ++ markupSuffixes ++ ") ~ " ++
"(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4" "(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++
).clump(7).do({arg match; noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4"
lilyString = lilyString.replace(match[0][1], match[1][1] ++ "2. " ++ match[2][1] ++ " ~ " ++ match[1][1] ++ "2")}); ).clump(8).do({arg match;
lilyString = lilyString.replace(match[0][1], match[1][1] ++ "1. " ++ match[2][1])});
lilyString.findRegexp( lilyString.findRegexp(
"(" ++ noteTuples ++ ")4 (" ++ markupSuffixes ++ ") ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4" "(" ++ noteTuples ++ ")4 (" ++ markupSuffixes ++ ") ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4"
@ -222,9 +227,10 @@
//consolidate notes //consolidate notes
lilyString.findRegexp( lilyString.findRegexp(
"(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4" "(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++
).clump(6).do({arg match; noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4"
lilyString = lilyString.replace(match[0][1], match[1][1] ++ "2. ~ " ++ match[1][1] ++ "2")}); ).clump(7).do({arg match;
lilyString = lilyString.replace(match[0][1], match[1][1] ++ "1.")});
lilyString.findRegexp( lilyString.findRegexp(
"(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4" "(" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4 ~ (" ++ noteTuples ++ ")4"
@ -239,8 +245,8 @@
//consolidate rests //consolidate rests
lilyString.findRegexp("r4 r4 r4 r4 r4").clump(2).do({arg match; lilyString.findRegexp("r4 r4 r4 r4 r4 r4").clump(2).do({arg match;
lilyString = lilyString.replace(match[0][1], "r2. r2")}); lilyString = lilyString.replace(match[0][1], "R1*3/2")});
lilyString.findRegexp("r4 r4 r4 r4").clump(2).do({arg match; lilyString.findRegexp("r4 r4 r4 r4").clump(2).do({arg match;
lilyString = lilyString.replace(match[0][1], "r1")}); lilyString = lilyString.replace(match[0][1], "r1")});
@ -256,7 +262,7 @@
lilyString = lilyString.replace(match[0][1], "| R1")}); lilyString = lilyString.replace(match[0][1], "| R1")});
lilyString.findRegexp("4\nr1").clump(2).do({arg match; lilyString.findRegexp("4\nr1").clump(2).do({arg match;
lilyString = lilyString.replace(match[0][1], "4\n R1")}); lilyString = lilyString.replace(match[0][1], "2\n R1")});
//write file //write file
lilyFile.write(lilyString); lilyFile.write(lilyString);

Loading…
Cancel
Save