LilyPond Changelog

What's new in LilyPond 2.25.9 Development

Oct 8, 2023
  • We are happy to announce the release of LilyPond 2.25.9. This is termed a development release, but these are usually reliable for testing new features and recent bug fixes. However, if you require stability, we recommend using version 2.24.2, the current stable release.

New in LilyPond 2.24.2 (Aug 12, 2023)

  • This version contains a number of fixes since the release of the previous stable version in February 2023. This includes an update of the library for garbage collection, addressing crashes when compiling very large scores (several hundreds of pages) on Windows.

New in LilyPond 2.25.7 Development (Jul 31, 2023)

  • This is termed a development release, but these are usually reliable for testing new features and recent bug fixes. However, if you require stability, we recommend using version 2.24.1, the current stable release.

New in LilyPond 2.25.3 Development (Apr 1, 2023)

  • We are happy to announce the release of LilyPond 2.25.3. This is termed a development release, but these are usually reliable for testing new features and recent bug fixes. However, if you require stability, we recommend using version 2.24.1, the current stable release.

New in LilyPond 2.25.1 Development (Jan 21, 2023)

  • We are happy to announce the release of LilyPond 2.25.1. This is termed a development release, but these are usually reliable for testing new features and recent bug fixes. However, if you require stability, we recommend using version 2.24.0, the current stable release.

New in LilyPond 2.25.0 Development (Dec 24, 2022)

  • We are happy to announce the release of LilyPond 2.25.0, the start of the next development cycle. This is termed a development release, but these are usually reliable for testing new features and recent bug fixes. However, if you require stability, we recommend using version 2.24.0, the current stable release.

New in LilyPond 2.24.0 Development (Dec 15, 2022)

  • We are proud to announce the release of GNU LilyPond 2.24.0. LilyPond is a music engraving program devoted to producing the highest-quality sheet music possible. It brings the aesthetics of traditionally engraved music to computer printouts.
  • This version includes improvements and fixes since the branching of the previous stable release in October 2020. A list of added features and other user-visible changes can be found at https://lilypond.org/doc/v2.24/Documentation/changes/. This release switches to Guile 2.2 and features a completely rewritten infrastructure for creating the official packages, finally allowing us to offer 64-bit binaries for macOS and Windows.

New in LilyPond 2.23.82 Development (Nov 27, 2022)

  • We are happy to announce the release of LilyPond 2.23.82. This is the third release candidate towards the next stable version 2.24.0 expected in December. Please test your scores with this version and report back the experience as well as any problems you encounter.

New in LilyPond 2.23.81 Development (Nov 14, 2022)

  • We are happy to announce the release of LilyPond 2.23.81. This is the second release candidate towards the next stable version 2.24.0 expected in December. Please test your scores with this version and report back the experience as well as any problems you encounter.

New in LilyPond 2.23.80 Development (Oct 23, 2022)

  • We are happy to announce the release of LilyPond 2.23.80. This is the first release candidate towards the next stable version 2.24.0 expected in December. Please test your scores with this version and report back the experience as well as any problems you encounter.

New in LilyPond 2.23.10-1 Development (Jun 27, 2022)

  • This version includes improvements and fixes since the release of the previous stable release in April 2021.

New in LilyPond 2.23.9-1 Development (May 21, 2022)

  • We are happy to announce the release of LilyPond 2.23.9. This is termed a development release, but these are usually reliable. However, if you require stability, we recommend using version 2.22.2, the current stable release.

New in LilyPond 2.23.8-1 Development (Apr 25, 2022)

  • We are happy to announce the release of LilyPond 2.23.8. This is termed a development release, but these are usually reliable. If you want to use the current stable version of LilyPond, we recommend using the 2.22.2 version.
  • In this release, dropping Guile 1.8 support has finally become possible also for our sources. We’d like to dedicate this release to Ian Hulin who was one of the first systematically working on our numerous roadblocks for Guile 2 migration after tackling a few other high-level problems. In the time spans where his health permitted it, he was able to significantly reduce the amount of remaining problems for the Guile 2 migration after having started working on them in 2010, making the goal that we finally reached now more tangible for others to work on after he left us in 2015.

New in LilyPond 2.22.2-1 (Feb 22, 2022)

  • This version includes improvements and fixes.

New in LilyPond 2.23.6-1 Development (Feb 6, 2022)

  • We are happy to announce the release of LilyPond 2.23.6. This is termed a development release, but these are usually reliable. If you want to use the current stable version of LilyPond, we recommend using the 2.22.1 version.

New in LilyPond 2.23.4-1 Development (Oct 30, 2021)

  • This is termed a development release, but these are usually reliable.

New in LilyPond 2.23.3-1 Development (Jul 4, 2021)

  • We are happy to announce the release of LilyPond 2.23.3. This is termed a development release, but these are usually reliable. If you want to use the current stable version of LilyPond, we recommend using the 2.22.1 version.

New in LilyPond 2.22.1-1 (Apr 26, 2021)

  • We are proud to announce the release of GNU LilyPond 2.22.1. LilyPond is a music engraving program devoted to producing the highest-quality sheet music possible. It brings the aesthetics of traditionally engraved music to computer printouts.
  • This version includes improvements and fixes since the release of the previous stable release in January 2021.

New in LilyPond 2.23.2-1 Development (Apr 12, 2021)

  • We are happy to announce the release of LilyPond 2.23.2.
  • This is termed a development release, but these are usually reliable. If you want to use the current stable version of LilyPond, we recommend using the 2.22.0 version.

New in LilyPond 2.23.1-1 Development (Mar 24, 2021)

  • We are happy to announce the release of LilyPond 2.23.1. This is termed a development release, but these are usually reliable. If you want to use the current stable version of LilyPond, we recommend using the 2.22.0 version.

New in LilyPond 2.23.0-1 Development (Mar 10, 2021)

  • This version includes improvements and fixes since the branching of the previous stable release in August 2017 (even though the final 2.20.0 was only released in March 2020). A list of added features and other user-visible changes can be found at https://lilypond.org/doc/v2.22/Documentation/changes/ Behind the scenes, this release switches to Python 3 and includes a number of performance improvements that should be noticeable for larger scores.

New in LilyPond 2.22.0-1 (Jan 11, 2021)

  • New for musical notation:
  • Displaying pitch improvements:
  • An accidental glyph corresponding to SMuFL code U+E2E3 has been added (Extended Helmholtz-Ellis accidentals: Raise by one undecimal quartertone).
  • Quarter-tone note names are now available in all the input languages.
  • Setting suggestAccidentals to 'cautionary turns only cautionary accidentals into AccidentalSuggestions. This can be used to distinguish between facsimile and editorial accidentals.
  • The command ambitusAfter has been added. It is used to move the ambitus to a different position.
  • Ottava brackets are now introduced with a single number by default (e.g., ‘8’ or ‘15’), and printed in bold. A new ottavationMarkups property has been introduced to modify that behavior, with several predefined lists of markups available
  • Rhythm improvements:
  • Tuplets can now be printed with slurs instead of brackets
  • French beaming (override Stem.french-beaming = ##t) now exactly behaves like standard (i.e., default) beaming in every respect (beam positioning and placement of any articulation, fingering, etc.). The only remaining difference are inner stems not passing through beams.
  • Swing and irregular rhythmic patterns may now be applied to music expressions made of regular durations, which may be used to render inequal rhythmic interpretation in MIDI.
  • Font glyphs for 256th, 512th, and 1024th flags and rests have been added.
  • The new Merge_mmrest_numbers_engraver hides duplicate numbers on multi-measure rests.
  • Expressive mark improvements:
  • A dynamic command n for niente has been added.
  • Two new ornaments have been added.
  • A very short fermata and Henze variants of long and short fermatas have been added.
  • Fermatas and other articulations can now be added directly to multi-measure rests. Therefore the command fermataMarkup is deprecated.
  • Editorial annotation improvements:
  • The New_fingering_engraver will now consider the X-align-on-main-noteheads property of the self-alignment-interface. If set to true (##t), all fingerings oriented up or down will be arranged in a straight column and aligned on the noteheads on the correct side of the stem
  • Text formatting improvements:
  • The default fonts are now those from the URW Core 35 set, version 2.0, replacing the TeX Gyre fonts. Note that the fonts come with a ligature for ‘Nr.’; see Fonts explained for solutions to avoid it locally and globally.
  • The note markup command now takes as its first argument a duration instead of a string
  • New for specialist notation:
  • Vocal music improvements:
  • A lyric hyphen may now be repeated at the start of a system beginning with a new syllable
  • A gradual change of vowel (or sustained consonant) may be indicated by adding a vowel transition between lyric syllables with the command vowelTransition.
  • Unfretted and fretted string instrument improvements:
  • Fret-diagrams may now be printed left-handed, setting handedness to LEFT (as a subproperty of fret-diagram-details).
  • Some ukulele fretboard-diagrams have been fixed, and new diagrams have also been added.
  • Chord notation improvements:
  • Chords may now be automatically inverted or voiced with dropped notes.
  • Legacy chord naming functions banter-chord-names and jazz-chord-names, have been removed from the main codebase, as have been the properties chordNamesExceptionsFull and chordNamesExceptionsPartial. As part of that rewrite, power chords are now included in the default exceptions; they will be printed correctly (with a superscript like all other chords) with no additional tweaks required, thereby removing the need for the powerChords predefined command. Anyone interested in the legacy functions may find a (somewhat working) copy of them in the ‘chord-names-alternative.ly’ snippet.
  • Contemporary music improvements:
  • A new grob DurationLine is now available. It continues a rhythmic grob with a line, ending at the next rhythmic grob. Possible styles are 'beam, 'line, 'dashed-line, 'dotted-line, 'zigzag, 'trill and 'none. The duration line may end with a hook (beam-style only) or an arrow.
  • New for input and output:
  • Input file improvements:
  • As announced in version 2.17.3 nearly eight years ago, the 'relative-includes option is now enabled by default; included files that contain an include command of their own must account for their own path rather than the main file’s directory. That behavior may however be switched off by setting 'relative-includes to #f, either as a command line option or using ly:set-option in source files.
  • compressFullBarRests has been renamed to compressEmptyMeasures, to avoid possible confusion with compressMMRests. Likewise, expandFullBarRests has now become expandEmptyMeasures.
  • The partcombine command, as well as all partCombine-prefixed commands, subroutines and property names, are now written with a capital C, such as partCombine, partCombineApart etc. The autochange command is now also capitalized as autoChange.
  • All input languages (language statement) can be entered using their proper UTF-8 spelling (i.e., including special characters). The missing names català and português are available now in addition to the original names catalan and portugues.
  • LilyPond for Windows (MinGW) can handle Unicode filenames on Windows 10 1903 and above.
  • Output improvements:
  • Skylines will now take account of the rotation property of layout objects. Rotating a crescendo hairpin by applying override Hairpin.rotation = #'(15 0 0), for instance, will now actually have influence on the skylines and thus help to enhance spacing.
  • Slight padding added between natural glyphs just touching at the corners in key cancellations.
  • Skylines of boxes now reflect the actual box outline including rounded corners and rotation.
  • CSS-style colors can now be used directly as text strings; either with predefined color names (like with the already available css-color function), or with hexadecimal color codes prefixed with #. All stencils that support a color property now accept either a list or a string; in the latter case, that string is used directly in the SVG output. This allows to use alpha transparency (entered as "#RRGGBBAA" or "#RGBA") in SVG.
  • PDF bookmarks are now supported and allow for tocItem entries to appear in the ‘table of contents’ panel of PDF viewers that support it.
  • table-of-contents now accepts a hierarchical structure; tocItem entries may optionally take a symbol (like label) or a dot-separated list of symbols, indicating their position in the score’s structure. A side-effect of that feature is that tocItem can no longer take a simple string as its argument; a markup command must be used.
  • Using the new options ‘-dpng-width’ and ‘-dpng-height’ it is now possible to specify the pixel size of PNG output images.
  • SVG output is now available through the ‘--svg’ command-line option (or its canonical form ‘--format=svg’, also shortened as ‘-fsvg’). Due to its backend’s specificity, that option is not yet compatible with other output formats; to get a file in both SVG and PDF, PNG or EPS, a second LilyPond run is required.

New in LilyPond 2.21.80-1 Development (Nov 1, 2020)

  • We are happy to announce the release of LilyPond 2.21.80. This is a pre-release test version, but these are usually reliable. We encourage all users and developers to download this version to test it. If you want to use the latest stable version of LilyPond, we recommend using the 2.20.0 version.

New in LilyPond 2.21.2-1 Development (Jun 21, 2020)

  • We are happy to announce the release of LilyPond 2.21.2. This is a development version, but these are usually reliable. If you want to use the latest stable version of LilyPond, we recommend using the 2.20.0 version.

New in LilyPond 2.19.84-1 Development (Feb 6, 2020)

  • We are happy to announce the release of LilyPond 2.19.84. This release is the final pre-release test version for the upcoming stable 2.20 release. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.18.2-1 / 2.19.65-1 Development (Aug 7, 2017)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.63-1 Development (Jun 29, 2017)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.62-1 Development (Jun 10, 2017)

  • We are happy to announce the release of LilyPond 2.19.62. This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.61-1 Development (May 22, 2017)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.

New in LilyPond 2.19.60 Development (May 9, 2017)

  • We are happy to announce the release of LilyPond 2.19.60. This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.58-1 Development (Mar 27, 2017)

  • We are happy to announce the release of LilyPond 2.19.58. This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.57-1 Development (Mar 21, 2017)

  • We are happy to announce the release of LilyPond 2.19.57. This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.56-1 Development (Feb 27, 2017)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.55-1 Development (Feb 14, 2017)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.53-1 Development (Dec 19, 2016)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes. If you require a stable version of LilyPond, we recommend using the 2.18 version.

New in LilyPond 2.19.39-1 Development (Mar 28, 2016)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.

New in LilyPond 2.19.34-1 Development (Dec 30, 2015)

  • This release includes a number of enhancements, and contains some work in progress.

New in LilyPond 2.19.32-1 Development (Nov 23, 2015)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.

New in LilyPond 2.19.31-1 Development (Nov 11, 2015)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.

New in LilyPond 2.19.30-1 Development (Nov 4, 2015)

  • This release includes a number of enhancements, and contains some work in progress.
  • You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes

New in LilyPond 2.19.27-1 Development (Sep 24, 2015)

  • This release includes a number of enhancements, and contains some work in progress. You will have access to the very latest features, but some may be incomplete, and you may encounter bugs and crashes.

New in LilyPond 2.18.2-1 (Sep 24, 2015)

  • Updated manuals