Frescobaldi (software)

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  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, with display of differences