music21.bar¶
Object models of barlines, including repeat barlines.
Functions¶
-
music21.bar.
standardizeBarStyle
(value)¶ Standardizes bar style names.
converts all names to lower case, None to ‘regular’, and ‘light-light’ to ‘double’ and ‘light-heavy’ to ‘final’, raises an error for unknown styles.
-
music21.bar.
styleToMusicXMLBarStyle
(value)¶ Convert a music21 barline name into the musicxml name – essentially just changes the names of ‘double’ and ‘final’ to ‘light-light’ and ‘light-heavy’
Does not do error checking to make sure it’s a valid name, since setting the style on a Barline object already does that.
>>> bar.styleToMusicXMLBarStyle('final') 'light-heavy' >>> bar.styleToMusicXMLBarStyle('regular') 'regular'
Barline¶
-
class
music21.bar.
Barline
(style=None, location=None)¶ A representation of a barline. Barlines are conventionally assigned to Measure objects using the leftBarline and rightBarline attributes.
>>> bl = bar.Barline('double') >>> bl <music21.bar.Barline style=double>
The style can also just be set via a keyword of “style”. Or if no style is specified, a regular barline is returned. Location can also be explicitly stored, but it’s not needed except for musicxml translation:
>>> bl2 = bar.Barline(style='dashed') >>> bl2 <music21.bar.Barline style=dashed> >>> bl3 = bar.Barline() >>> bl3 <music21.bar.Barline style=regular> >>> bl4 = bar.Barline(style='final', location='right') >>> bl4 <music21.bar.Barline style=final>
Note that the barline style ‘ticked’ only is displayed correctly in Finale and Finale Notepad.
Barline
bases
Barline
read-only properties
-
Barline.
musicXMLBarStyle
¶
Read-only properties inherited from Music21Object
:
Barline
read/write properties
-
Barline.
style
¶ Get and set the Barline style property.
>>> b = bar.Barline() >>> b.style = 'tick' >>> b.style 'tick'
Synonyms are given for some styles:
>>> b.style = 'light-light' >>> b.style 'double'
Read/write properties inherited from Music21Object
:
Barline
methods
Methods inherited from Music21Object
:
Barline
instance variables
Instance variables inherited from Music21Object
:
Repeat¶
-
class
music21.bar.
Repeat
(direction='start', times=None)¶ A Repeat barline.
The direction parameter can be one of start or end. A end followed by a start should be encoded as two bar.Repeat signs.
>>> rep = bar.Repeat(direction='end', times=3) >>> rep <music21.bar.Repeat direction=end times=3>
To apply a repeat barline assign it to either the .leftBarline or .rightBarline attribute of a measure.
>>> m = stream.Measure() >>> m.leftBarline = bar.Repeat(direction='start') >>> m.rightBarline = bar.Repeat(direction='end') >>> m.insert(0.0, meter.TimeSignature('4/4')) >>> m.repeatAppend(note.Note('D--5'), 4) >>> p = stream.Part() >>> p.insert(0.0, m) >>> p.show('text') {0.0} <music21.stream.Measure 0 offset=0.0> {0.0} <music21.bar.Repeat direction=start> {0.0} <music21.meter.TimeSignature 4/4> {0.0} <music21.note.Note D--> {1.0} <music21.note.Note D--> {2.0} <music21.note.Note D--> {3.0} <music21.note.Note D--> {4.0} <music21.bar.Repeat direction=end>
The method
expandRepeats()
on aPart
object expands the repeats, but does not update measure numbers>>> q = p.expandRepeats() >>> q.show('text') {0.0} <music21.stream.Measure 0 offset=0.0> {0.0} <music21.bar.Barline style=double> {0.0} <music21.meter.TimeSignature 4/4> {0.0} <music21.note.Note D--> {1.0} <music21.note.Note D--> {2.0} <music21.note.Note D--> {3.0} <music21.note.Note D--> {4.0} <music21.bar.Barline style=double> {4.0} <music21.stream.Measure 0 offset=4.0> {0.0} <music21.bar.Barline style=double> {0.0} <music21.meter.TimeSignature 4/4> {0.0} <music21.note.Note D--> {1.0} <music21.note.Note D--> {2.0} <music21.note.Note D--> {3.0} <music21.note.Note D--> {4.0} <music21.bar.Barline style=double>
Repeat
bases
Repeat
read-only properties
Read-only properties inherited from Barline
:
Read-only properties inherited from Music21Object
:
Repeat
read/write properties
-
Repeat.
direction
¶ Get or set the direction of this Repeat barline. Can be start or end.
TODO: show how changing direction changes style.
-
Repeat.
times
¶ Get or set the times property of this barline. This defines how many times the repeat happens. A standard repeat repeats 2 times; values equal to or greater than 0 are permitted. A repeat of 0 skips the repeated passage.
>>> lb = bar.Repeat(direction='start') >>> rb = bar.Repeat(direction='end') >>> lb.times = 3 Traceback (most recent call last): BarException: cannot set repeat times on a start Repeat >>> rb.times = 3 >>> rb.times = -3 Traceback (most recent call last): BarException: cannot set repeat times to a value less than zero: -3
Read/write properties inherited from Barline
:
Read/write properties inherited from Music21Object
:
Repeat
methods
-
Repeat.
getTextExpression
(prefix='', postfix='x')¶ Return a configured
TextExpressions
object describing the repeat times. Append this to the stream for annotation of repeat times.
Methods inherited from Music21Object
:
Repeat
instance variables
Instance variables inherited from Barline
:
|
|
|
Instance variables inherited from Music21Object
: