def interpret (self):
"""Set durations and starting points."""
+ """The starting point of the very first note is 0!"""
part_list = self.get_part_list ()
measure_position = Rational (0)
measure_start_moment = now
is_first_measure = True
- prvious_measure = None
+ previous_measure = None
for m in measures:
# implicit measures are used for artificial measures, e.g. when
# a repeat bar line splits a bar into two halves. In this case,
# know if the next measure is implicit and continues that measure)
if not m.is_implicit ():
# Warn about possibly overfull measures and reset the position
- if attributes_object:
+ if attributes_object and previous_measure and previous_measure.partial == 0:
length = attributes_object.get_measure_length ()
new_now = measure_start_moment + length
if now <> new_now:
error_message ('Negative skip %s' % diff)
diff = Rational (0)
- if diff > Rational (0) and not self.ignore_skips:
+ if diff > Rational (0) and not (self.ignore_skips and moment == 0):
skip = musicexp.SkipEvent()
skip.duration.duration_log = 0
skip.duration.factor = diff