|
|
@ -818,9 +818,8 @@ class Track(object): |
|
|
|
"""Called by score.lilypond(), returns a string. |
|
|
|
|
|
|
|
We carry a dict around to hold lilypond on/off markers like tuplets |
|
|
|
that need to set as ranges. |
|
|
|
|
|
|
|
|
|
|
|
that need to set as ranges. This dict begins here. Each track |
|
|
|
gets its own. |
|
|
|
""" |
|
|
|
for item in self.blocks[0].data[:4]: |
|
|
|
if type(item) is MetricalInstruction: |
|
|
@ -829,10 +828,11 @@ class Track(object): |
|
|
|
else: |
|
|
|
timeSig = "\\once \\override Staff.TimeSignature #'stencil = ##f \\cadenzaOn " |
|
|
|
|
|
|
|
upbeatLy = "\\partial {} ".format(Duration.createByGuessing(self.upbeatInTicks).lilypond()) if self.upbeatInTicks else "" |
|
|
|
|
|
|
|
carryLilypondRanges = {} #handed from item to item for ranges such as tuplets. Can act like a stack or simply remember stuff. |
|
|
|
|
|
|
|
upbeatLy = "\\partial {} ".format(Duration.createByGuessing(self.upbeatInTicks).lilypond(carryLilypondRanges)) if self.upbeatInTicks else "" |
|
|
|
|
|
|
|
|
|
|
|
data = " ".join(block.lilypond(carryLilypondRanges) for block in self.blocks) |
|
|
|
if data: |
|
|
|
return timeSig + upbeatLy + data |
|
|
|