pymusicxml.score_components.TraditionalKeySignature
- class pymusicxml.score_components.TraditionalKeySignature(fifths, mode=None, cancel=None)[source]
Bases:
KeySignature
A traditional key signature. See https://www.w3.org/2021/06/musicxml40/musicxml-reference/elements/key/.
- Parameters:
fifths – e.g. -2 for Bb major/G minor, or 3 for A major/F# minor
mode – one of the standard modes, e.g. “major”, “minor”, “lydian”
cancel – the fifths of the previous key signature being canceled out
Methods
render
()Renders this component to a tuple of ElementTree.Element.
Inherited Methods
export_to_file
(file_path[, pretty_print])Exports this musical object (wrapped as a score) to the given file path.
parse
(interpretable_as_key_signature)Parses several kinds of input into a TraditionalKeySignature or NonTraditionalKeySignature object.
to_xml
([pretty_print])Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.
view_in_software
(command)Uses the given terminal command to create a score out of this musical object, and open it in music notation software.
Wraps this component in a
Score
so that it can be exported and viewedAttributes
- render() Sequence[Element] [source]
Renders this component to a tuple of ElementTree.Element. (The reason for making it a tuple is that musical objects like chords are represented by several notes side by side, with all but the first containing a </chord> tag.)
- export_to_file(file_path: str, pretty_print: bool = True) None
Exports this musical object (wrapped as a score) to the given file path.
- Parameters:
file_path – The path of the file we want to write to.
pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation
- mode_fifth_alterations = {'ionian': 0, 'major': 0, 'dorian': -2, 'phrygian': -4, 'lydian': 1, 'mixolydian': -1, 'aeolian': -3, 'minor': -3, 'locrian': -4, None: 0}
- static parse(interpretable_as_key_signature: KeySignature | int | str) KeySignature
Parses several kinds of input into a TraditionalKeySignature or NonTraditionalKeySignature object.
- Parameters:
interpretable_as_key_signature – either a KeySignature object, an integer representing the number of sharps (or flats if negative), or a string to be parsed into a key signature, such as “G major”, “F# lydian”, or “C#, Ab” (which produces a non-traditional key-signature), etc.
- to_xml(pretty_print: bool = False) str
Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.
- Parameters:
pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation
- view_in_software(command: str) None
Uses the given terminal command to create a score out of this musical object, and open it in music notation software.
- Parameters:
command – The terminal command corresponding to the software with which we want to open the score.