Easier editing

Note: The following programs and packages are developed outside the core of LilyPond, by enthusiastic users who have seen a need or a way to add LilyPond to their own workflow. This means the packages may not reflect current LilyPond syntax, although their output can be brought up to date using convert-ly.

Front-end Applications

Frescobaldi

frescobaldi-lilypond-editor-small

(click to enlarge)

logo-linux logo-macosx logo-windows

https://www.frescobaldi.org

Frescobaldi is a lightweight, yet powerful, music and text editor with many features added and enhanced particularly for LilyPond. Major features include point-and-click links between the code and music views, detailed score wizards, built-in LilyPond documentation browser, syntax highlighting and automatic completion. Frescobaldi is written in Python, with PyQt5 for its user interface, and will run on all major operating systems (GNU/Linux, macOS and Windows).

Denemo

screenshot-denemo-small

(click to enlarge)

logo-linux logo-macosx logo-windows

http://denemo.org

Denemo is a graphical editor which generates LilyPond source code, and also allows audio playback. It allows users to view the LilyPond source code in parallel to the graphical view. Extra LilyPond tweaks can be attached to notes, chords, etc., and are stored with the Denemo file, so that users can continue to edit graphically.

Moving the cursor in the LilyPond text moves the cursor in the graphical view, and any syntax errors in your LilyPond tweaks are highlighted in the text view when printed from there.

Spontini-Editor

screenshot-spontini-small

(click to enlarge)

logo-linux logo-macosx logo-windows

https://github.com/paopre/Spontini

Spontini-Editor is a text-combined-with-graphic music editor that speeds up the creation and fine graphic tuning of complex scores edited with LilyPond through two main features:

  1. It allows the positioning of musical objects (articulations, texts, pedals, curves, brackets etc.) with the mouse. Once the positioning is graphically done, the text editor reports the corresponding changes on the input file.
  2. It assists in the creation of piano music by inserting notes in tabular and formatted form and it provides quick tools for cross-staff notation.

It works both as a standalone application and as a web-based server + multi-client system.

Browser-based editors

Hacklily

https://www.hacklily.org/

screenshot-hacklily-small

(click to enlarge)

An online sheet-music editor and publishing tool powered by LilyPond, with additional features such as autocompletion and contextual help. The underlying web hosting code is available under the AGPL license, on its own development page. Hacklily uses LilyPond 2.18.2, and although there is an open issue for updating to version 2.24, it has not been updated since 2022.

www.omet.ca

http://www.omet.ca/

screenshot-omet-small

(click to enlarge)

Since 2010, Online Music Editing Tools (OMET) offers a ready-to-use LilyPond service with a specifically-tailored web interface. Registration is required but free of charge.

Word processor plug-ins

OOoLilyPond

https://extensions.services.openoffice.org/en/project/OOoLilyPond

logo-linux logo-freebsd logo-macosx logo-windows

An OpenOffice.org extension that converts LilyPond files into images within OpenOffice.org documents.

IDE Plug-ins

Elysium

logo-linux logo-freebsd logo-macosx logo-windows

https://github.com/thSoft/elysium

A complete environment for editing scores with LilyPond in Eclipse, offering a rich toolkit for conveniently managing LilyPond.

Text editors

logo-linux logo-freebsd logo-macosx logo-windows

Emacs

https://www.gnu.org/software/emacs/ Emacs is a text editor with language-sensitive capabilities for many different computer languages. Emacs is a highly extensible editor and can be used as an Integrated Development Environment. There is a ‘lilypond mode’ which supplies the language definitions for working with LilyPond source files. A developer has written lyqi, an Emacs major mode.

If you are not already familiar with Emacs then you may probably prefer to use a different editor for writing LilyPond input files.

More information on setting up Emacs can be found in Text editor support.

Vim

https://www.vim.org Vim is a minimal text editor and is an extension of the older Unix vi editor. It is also extensible and configurable.

If you are not already familiar with Vi then you may probably prefer to use a different editor for writing LilyPond input files.

More information on setting up Vim can be found in Text editor support.

Neovim

https://neovim.io Neovim is a minimal text editor and fork of vim. It is highly extensible and configurable through the vimscript and lua programming languages. LilyPond support is provided by the nvim-lilypond-suite plugin. The plugin supports playback of MIDI files through external programs, point-and-click when using a supported PDF viewer, snippets and code completion when combined with other plugins, in addition to the full range of tools available in the neovim ecosystem. For more details on how to set it up, consult the plugin’s github page. You will also want to spend some time with some of the numerous online tutorials for learning vim/neovim to get the most out of your editing experience.

logo-macosx

TeXShop

https://pages.uoregon.edu/koch/texshop/

The TeXShop editor for macOS can be extended to run LilyPond, lilypond-book and convert-ly from within the editor, using the extensions contributed by Nicola Vitacolonna. These must be moved from the TeXShop “inactive” subdirectory to the “Engines” one, in order to make them available for use.

Other programs that can export LilyPond code

Score, tab and MIDI editors:

  • bwwtolily attempts to convert a .bww or .bmw file to LilyPond. While not all of the embellishments may get converted properly (this is especially true with piobaireachd), the program will list them.
  • Canorus, a score editor, can also export to LilyPond, but is still beta-software. Testers are welcome, though.
  • Enc2ly is a GNU/Linux program which converts an Encore music score into a LilyPond one.
  • go-enc2ly is a Go tool that converts Encore files to LilyPond. It was created using Felipe Castro’s research and reverse engineering by tweaking existing .enc files and loading them using the 4.55 demo version. It was last updated in 2014.
  • NtEd, a score editor based on the Cairo library, it has experimental support for exporting to LilyPond.
  • NW2LY is a C# program which converts a NoteWorthy composer song into LilyPond.
  • Ripple is a program that helps create scores and parts, including a mode for mixing different musical works together in a single score or part. It was last updated in 2012.
  • Rosegarden, an audio and MIDI sequencer, which also has a score editor for single-staff editing.

Algorithmic code generators

  • Abjad, a Python API for Formalized Score Control designed to help composers build up complex pieces of LilyPond notation in an iterative and incremental way.
  • FOMUS, (FOrmat MUSic) is a music notation tool for computer music composers. It is written in the Lisp programming language, and has been tested in a variety of interpreters. A C++ port is also available.
  • TuxGuitar, a multitrack tablature editor and player, includes a score viewer and can export to LilyPond.

Other programs no longer being actively developed

  • LilyBin is a web-based LilyPond editor where you can typeset your scores directly online without needing to install LilyPond. Code snippets are kept available with a unique URL, like on so-called ‘pastebin’ websites. Although https://lilybin.com, where it used to be hosted, has been discontinued, its source code continues to be freely available under the MIT license; it may be found on its GitHub page.
  • LilyPondTool was created as a plugin for the jEdit text editor.
  • LilyComp is a graphical note entry program, acting much like a number-pad which produces LilyPond notes.
  • MuseScore, a score editor. LilyPond export was dropped in version 2.0 but earlier versions are still available for download at Sourceforge.
  • NoteEdit, which imported MusicXML, has been forked into NtEd and Canorus.
  • Rumor, a realtime monophonic MIDI-to-LilyPond converter.
  • tunefl Typeset your mini-scores directly online without needing to install LilyPond locally. It allows trying out all the program’s features using a convenient web interface.
  • Strasheela, an environment built on top of the The Mozart Programming System.

Where now?

You are now ready to Download LilyPond.

Still not convinced? Many composers, musicians, and conductors have learned how to write music in our input format. Experienced users even report that they can enter a full score in LilyPond faster than with a piano keyboard or mouse+GUI! Perhaps you would like to review the Features, Examples, or the Freedom that LilyPond provides, or read about users’ Productions and Reviews. In addition, our approach to the computational aesthetics of classical engraving is explained in our Background.

Legalese