Frescobaldi is an editor for LilyPond music files. It aims to be powerful, yet lightweight and easy to use. Frescobaldi is free software, freely available under the GNU General Public License. It is designed to run on all major operating systems (Linux, Mac OS X and Microsoft Windows). It is named after Girolamo Frescobaldi, an Italian composer of keyboard music in the late Renaissance and early Baroque period.
Frescobaldi is written in Python and uses PyQt for its user interface. Its main developer is Wilbert Berendsen.
History
Frescobaldi has its roots in LilyKDE, a plugin for KDE's Kate text editor developed by Berendsen, originally released in 2007. It later evolved into a standalone application and was renamed into Frescobaldi in 2008.
In 2011, Frescobaldi was rewritten from scratch, leading to Frescobaldi 2.0. The release removed the use of KDE libraries in favor of the base PyQt library only. As a result, Frescobaldi became cross-platform.
In 2015, the ly module from the Frescobaldi code base was split into its own project, python-ly, which has since been used independently by other Python projects.
Released in 2017, Frescobaldi 3.0 was a port of Frescobaldi 2 to Python 3 and Qt 5.
In LilyPond 2.24 (released in February 2023), the "LilyPad" editor that was previously shipped officially with LilyPond was discontinued. Instead, the official installation tutorial for LilyPond 2.24 and later guides beginners towards Frescobaldi, reflecting Frescobaldi's de facto status as the most popular LilyPond editor.
Features
Text editor with syntax highlighting and automatic completion
Music view
MIDI player to proof-listen LilyPond-generated MIDI files
Wizard to quickly set up a new score
Snippet Manager to store and apply text snippets, templates or scripts
Use multiple versions of LilyPond, automatically selects the correct version
Built-in LilyPond documentation browser and built-in help
Configurable colors, fonts and keyboard shortcuts
Translated into the following languages: Dutch, English, French, German, Italian, Czech, Russian, Spanish, Galician, Turkish and Polish
Music functions
Transpose music
Change music from relative pitches to absolute and vice versa
Change the language used for note names
Change the rhythm (double, halve, add/remove dots, copy, paste) etc. Hyphenate lyrics using word-processor hyphenation dictionaries Add spanners, dynamics, articulations Update LilyPond syntax using convert-ly, with display of differences