At the Sounding Edge: LilyPond, Part 2

A look at three GUI front-ends for the LilyPond music notation software.
Denemo

Denemo is a utility for the creation of files in a variety of formats, including ABC, MIDI, XML, Csound score and, yes, LilyPond. Denemo's default user interface seems rather modest when compared to the GUIs of Rosegarden and NoteEdit, but much power lurks beneath its surface. The program combines a mouse-driven GUI, user-defined keyboard bindings and a set of pre-defined keyboard commands in a flexible and useful tool for preparing LilyPond files. The GUI is not WYSIWYG (what you see is what you get), and the program should not be confused with a music notation editor such as NoteEdit. Denemo is a general-purpose input device that significantly reduces the difficulty of preparing multiformat music files.

Figure 8. Denemo

Figure 8 shows Denemo at work. You can see the display is not completely WYSIWYG, but it is quite comprehensible. Indicators such as the tuplet figures are translated to their correct appearances when the output file is compiled by LilyPond, as illustrated in Figure 9. A bug in Denemo prevented the dynamics indicators from being displayed in Denemo itself, but they are entered correctly in the LilyPond output. The title and author information is entered in Denemo's File/Set Headers dialog.

Figure 9. From Denemo to LilyPond to PostScript

As of version 0.7.2a, Denemo's user documentation is contained in the source package's README. Various key bindings are described there, and Denemo includes a facility for creating user-defined key bindings for the program's entire command set and GUI menu items (see Figure 10). With data entry keys defined as you want them, you can work quickly and accurately with Denemo.

Figure 10. Denemo's Keyboard Bindings Editor

Closing Remarks

I hope you've enjoyed this mini-introduction to LilyPond. I've only scratched the surface of the system, so you simply have to try it yourself to test its depths. If you're not the language-learning type, you can employ one of the GUIs presented here or you can work in a MIDI environment and use the midi2ly format converter. However you choose to work with it, I think you'll agree that LilyPond lives up to its promise of producing output that truly is beautiful.

Some Notes From LSM 2004

From July 6 to 10, I attended the Libre Software Meeting (LSM), once again held in Bordeaux, France. The LSM is a large conference that encompasses a wide variety of free software development topics and trends, including computer sound and music trends. I'm happy to report that LSM 2004 hosted an excellent series of presentations on development occurring in the sound, music and multimedia domains of free software. Non-audio-specific report topics included updates on the Cinelerra video editor, the Blender 3-D renderer and the Scribus DTP edit/layout system. Music and sound topics included reports on recent ALSA development, with particular regard to the 2.6 kernel; an overview of the Faust programming language, a real-time sound processing/synthesis; the use of RDF (Resource Description Framework) in audio applications; and an introduction to the Dolabip software and its use in gesture/audition training for children. Other sound-related topics included a presentation and workshop dedicated to the Ardour DAW (digital audio workstation) and introductions to the AGNULA and APODIO projects. Details on all these presentations can be found by clicking on the Program link under the heading of Music And Other Artistic Domains on the Technical Topics page on the LSM Web site.

Next year's LSM will be held in Dijon. Information regarding LSM 2005 probably will start to appear on-line in the spring of that year. The conference has something for almost everyone, so you're bound to find more than a few interesting presentations, lively discussions and impromptu workshops. I hope to see you there.

Many thanks to the directors and staff of LSM 2004 for their assistance. Special thanks to Ludovic Penet for his extraordinary patience and courage and to Francois Dechelle and Myriam Desainte-Catherine for their great efforts to make the music and sound topic presentations so successful.

______________________

Similis sum folio de quo ludunt venti.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

great

sinema's picture

As an experienced amateur pianist and composer of classical music, I consider that, for those special cases, i.e. scores of low-to-intermediate complexity such as 4-part fugues for organ on 2-staves, use of the fine-positioning feature in Rosegarden makes it possible to get an equally high-quality of typesetting in Rosegarden as that available in Lilypond. Only in these special cases are the results equal,and I think that for some users it may be all they need.

Lilypond GUI for GNOME

William's picture

So far I tried installing the three previous GUIs for Lilypond and only Denemo seems to be working. I used Ubuntu (Intrepid) therefore GNOME is the default environment. I would also include Kile as a GUI for Lilypond, I tried but I am still chewing the Lilypond TeX language.
Thanks for your post it's still very useful up to this date.

Denemo update (author's note)

Anonymous's picture

I've been hacking around with Denemo and have some news to report. First, the GTK2 build supports a LilyPond text editing mode that is on-screen with the default Denemo notation display. It looks very cool, but alas, it's not working for me yet. The mode comes up fine, but I'm unable to actually edit text. Still a cool idea, I hope the developers work on it.

I also discovered that the dynamics weren't displayed due to a font locale setting. Setting LANG to C fixes it for me.

Btw, Denemo definitely needs developers. Adam Tee and Guenter Geiger are doing as much as they can, but both are obliged elsewhere. If anyone is looking for a worthy Linux music app coding project check out the Denemo sources.

Couple of Things...

Anonymous's picture

Lillypond is the best type setter arround for unmetered choral music. This insistance upon adhereing to a metered scale in every other music notation editor under the sun makes creating sheet music impossible.

That said I have yet to try one of the GUI's, but I suspect the metered aspect is enforced.

Second, I really wish they would iprove their overall packaging. Compiling from source is VERY difficult due to dependancies etc... and their availibility of RPMs is very small. I wish I could help in that department but I have no clue when it comes to that sort of thing.

NoteEdit update (author's note)

Anonymous's picture

Just a quick note to say that NoteEdit 2.7.x has fixed its sync problem with LilyPond version 2.2.x. The convert-ly step is currently not required, I can simply run the LilyPond binary on the NE-created LilyPond score file, and voila, I have a brand new PostScript file courtesy NE and LilyPond.

Best,

dp

Re: NoteEdit update (author's note)

Anonymous's picture

This is true, so long as you're using Lilypond 2.2. The development branch (2.3) has changed the input file structure (again) and is close to being released as stable 3.0 I believe.

The other problem is that NoteEdit doesn't stay up with LilyPond terribly well -- this is part of the price of stability!

So to qualify your comment, if you're running current NE and stable LP, you probably won't have problems, but convert-ly is only a console away if it's needed!

How to get Lilypond quality inside Rosegarden

Anonymous's picture

The small difference in quality of typesetting between Rosegarden and Lilypond can be eliminated if you are prepared to use the new manual "fine-positioning" feature in Rosegarden 0.9.9 with which it is possible to make adjustments to the positions of most types of notation object (shift-click on an object and drag it to the required position). In most places on scores of intermediate complexity, Rosegarden's typesetting quality is excellent meaning there is no need to do fine-positioning. When flaws in the typesetting do occur, they are usually limited to a relatively small number of notation objects and can be quickly fixed using the fine-positioning feature.

Re: How to get Lilypond quality inside Rosegarden

Anonymous's picture

Typesetting is not just a matter of positioning objects at the right
X,Y locations. For example, sloping of beams and slurs should follow
rather complex rules, which would require more advanced positioning than
click & dragging with the mouse.

I suspect that you and I have a different idea of quality typesetting, so
I'd be interested to see a sample of this "fine-positioned excellent" print.

(Not trying to put down RG, -- I love it -- but I happen to think that it comes nowhere near LilyPond)

Han-Wen
(LilyPond author)

Re: How to get Lilypond quality inside Rosegarden

Anonymous's picture

The process of music-typesetting clearly involves a range of layout issues that is not limited to the absolute position of each notation object. Indeed, Rosegarden and LilyPond both use algorithms which automatically determine layout in terms of a wide range of issues including beam slope, slur slope, stem length, etc. The layout algorithms used by LilyPond are in many cases certainly more sophisticated than those used by Rosegarden. Consequently, LilyPond nearly always does excellent typesetting for scores of any complexity. However, for scores of "low-to-intermediate" complexity, the essential differences in typesetting quality between Rosegarden and LilyPond are, in many cases, not very large - perhaps surprisingly - and those essential differences, though not all types of difference, can be eliminated by using Rosegarden's fine-positioning feature, in spite of the fact that this feature is limited to x,y positioning. For those special cases where a successful result can be achieved using Rosegarden's fine-positioning feature, there are, of course, still some remaining differences in typesetting between Rosegarden and LilyPond but these differences are what I consider to be matters of taste, not of quality. As an experienced amateur pianist and composer of classical music, I consider that, for those special cases, i.e. scores of low-to-intermediate complexity such as 4-part fugues for organ on 2-staves, use of the fine-positioning feature in Rosegarden makes it possible to get an equally high-quality of typesetting in Rosegarden as that available in Lilypond. Only in these special cases are the results equal. There are also, of course, many other cases, especially but not only scores of high complexity, in which the quality of Rosegarden's typesetting is significantly and uncorrectably lower than that of LilyPond, regardless of any usage of Rosegarden's fine-positioning feature. By the way, thank you very much for LilyPond; I think it is excellent software.

Re: How to get Lilypond quality inside Rosegarden

Anonymous's picture

I meant to write, "Only in these special cases are the results of equal quality."

Author's reply

Anonymous's picture

Hello Han-wen !

I think it's important to stress the great difference between LilyPond and Rosegarden, NoteEdit, Denemo, etc. : LilyPond is an engine, a powerful typesetting engine that has not necessarily been designed to be music composition software. RG and NE are clearly designed for music composition, and their notation capabilities will of necessity fall short of LP's greater resources. LP is very specific in its task orientation, the others are more general in their purpose and designs. I have tried to describe RG and NE as front-end GUIs for the creation of LilyPond scores, and hopefully I've indicated that LP provides many features not likely to be found in the general-purpose music programs. As you point out, music typesetting is an enormously non-obviously complicated art, and until someone really studies it (as have you and Jan) it's easy to assume it's easier than it really is. I'm glad RG continues to develop its notational facilities, and I think that for some users it may be all they need. However, for the very best printed results I'll still prefer to hand-edit LP scores, regardless whether I've produced them directly or in another application. The results are just so sweet...

Best regards,

dp

Re: At the Sounding Edge: LilyPond, Part 2

Anonymous's picture

All respect for the great work of the programmers behind these music notation guis, but they still have an enormous lot of work to do in order to produce decent output.

LilyPond itself is the only program you can get decent (excellent) sheet music out of.

What I would love to see is some gui that accepts MusicXML input and that builds upon the LilyPond internals directly. Guess we'll have to wait for LilyPond to stabilise its file format even more, and for a Cairo-based GnomeCanvas...

Re: At the Sounding Edge: LilyPond, Part 2

Anonymous's picture

LilyPond itself is the only program you can get decent (excellent) sheet music out of.
That's not strictly true. It is possible to use the "fine-positioning" feature in Rosegarden 0.9.9 to get Lilypond's quality of typesetting in Rosegarden's scores -- please read my other comment (Subject: "How to get Lilypond quality inside Rosegarden") attached to this article for more details.

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix