All notable changes to the python-ly project are documented in this file.
0.9.8 - 2023-06-15
- Add list of string tunings (#149)
- Add LilyPond 2.24 words (#151)
- Require Python 3.8 (#156)
- Move packaging metadata to
pyproject.toml
(#155)
- Fix
\set
highlighted on its own in\set-abcd
and similar cases (#150)
0.9.7 - 2020-12-25
- Added LilyPond 2.20 words (#140)
- Fixed error when making rhythm implicit per line (#144)
0.9.6 - 2020-01-22
- eps-file -> epsfile (#1213 on Frescobaldi repository)
- MusicXML output:
- Correctly export measures without the help of explicit barchecks (#32)
- Export \mark (#102)
- Fix scale_rest bug (#107)
- Stem direction is now supported (#110)
- Fix empty measures created with no attributes (#114)
- Various improvements to the experimental MusicXML output by Felippe Roza, Peter Bjuhr, Urs Liska, Endre Oma and others, thanks!
- Improved indentation of Scheme code, thanks to Paul Morris (#132)
0.9.5 - 2017-02-17
- Basic support for tokenizing the MUP format
- Fixed wrong duration handling with \partial when changing durations (#832 on Frescobaldi repository)
- XML export tests now work correctly with Python 3
- Fix traversing events failing in empty \alternative (#74)
0.9.4 - 2016-04-20
- Add simplifier transposer and simplify-accidentals ly command (#40)
- Recognize \bookOutputName A (without quotes, although not recommended)
- Allow multi-digit fingering, e.g. c-34, LilyPond supports that since at least 2.16.
- Add ly-server: an HTTP-server for manipulating LilyPond source, contributed by Urs Liska
- Support LilyPond 2.18+ behaviour on \relative without startpitch in the ly.pitch.transpose, ly.pitch.rel2abs and ly.pitch.abs2rel modules.
- Support LilyPond 2.18+ behaviour on \relative without startpitch in the transpose, rel2abs, abs2rel and musicxml ly commands. Two new variables were added to influence the behaviour: rel-absolute and rel-startpitch.
- Various updates and improvements in MusicXML export contributed by Peter Bjuhr
- Make define-markup-command recognition working again
- Do not add durations to bass notes in chordmode (#56)
- Handle \include commands correctly when exporting to MusicXML (#59)
0.9.3 - 2015-12-24
- Added ly.rhythm.music_items() for a more robust way of iterating through chords and notes (awaiting fully fledged editing support through ly.music or ly.xml)
- Do not insert duration after a tie (#35)
- More configurability in ly.colorize, thanks to Urs Liska
- MusicXML export various improvements and bug fixes, contributed by Peter Bjuhr
0.9.2 - 2015-05-14
- Add the default-language variable to the ly command; this can be set to a language in case a LilyPond document uses a language different than "nederlands" but does not specify it (#20)
- Add the
-l
,--language
option as shorthand for setting the default language - properly support drum notes in ly.lex and ly.music
- Updated scheme variables in ly.data.scheme* functions for LilyPond 2.18
- MusicXML export improvements:
- support for isolated durations (a single duration without explicit pitch)
- support for implicit starting pitch in relative mode (issues #18 and frescobaldi/frescobaldi#648)
- Fix TypeError: expected string or buffer in dom.ly when string was a dom.Reference (#667 on Frescobaldi repository)
- Fix issue #16: Duration after
\skip
may not be removed
0.9.1 - 2015-03-08
- Updated LilyPond data to 2.18
0.9 - 2015-03-07
- Added ly.rests containing various rest manipulations
- A script
xml-export.ily
has been included to dump the music structure inside LilyPond to an XML file. This is not used yet, but could be used in the future to use LilyPond to parse files and build music, and then export it to other formats.
- Robust Python 3 support, Python 3 is now recommended, although 2.7 will still be supported for the foreseeable future.
- MusicXML export improvements
- Don't yield the duration in a \tuplet command as a music token (issue frescobaldi/frescobaldi#631)
0.8 -- 2015-01-24
- Basic api documentation included
- Fix (albeit experimental) musicxml export
- First release as an officially separate project from Frescobaldi
- Add INSTALL.md to source distribution
- node and slexer are no longer toplevel modules; only the ly package
- Large MusicXML export improvements, contributed by Peter Bjuhr (MusicXML export is still experimental)
- Handle german pitch names asas and heses correctly when writing those
- Don't transpose chord argument of \stringTuning command
- Python 3 robustness improvements
- Small MusicXML export improvements, contributed by Peter Bjuhr (MusicXML export is still very experimental)
- Fix transposing when alterations would be more than a double sharp or double flat; handle it by moving the note, just like LilyPond does it
- Python 3 installation fixes
- New command 'highlight' ('hl') to create syntax-highlighted HTML files of LilyPond source files (or any file that is understood by ly.lex)
- New, very experimental, command 'musicxml' to export music to MusicXML
- New commands 'abs2rel' and 'rel2abs' that convert \relative music to absolute and vice versa
- Support for Python 3. Not all of the ly python module has already been tested, but installing and running the various ly commands works well.
Initial release.