lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

feedback: general thoughts about using LilyPond


From: Janek Warchoł
Subject: feedback: general thoughts about using LilyPond
Date: Sun, 13 Mar 2011 16:56:44 +0100

Hi,

this isn't meant as a wish-list or a whine-list. I simply want to share my view on the use of LilyPond from a perspective of semi-advanced, (hopefully) quite intelligent and not-too-geeky user.

I first began using Lily in 2008 (v. 2.10.33), but it was short and very simple SATB pieces only. I had some experience with Finale. I liked the idea of text input very much, because:
- nothing could change without me knowing about it (unlike in Finale)
- everything was perfectly reversible (unlike in Finale)
- powerful templates could be created
- i saw what happened to the music.
I also liked the font, and the idea of "automated engraving" appealed to me.
After that i had something like 2yr vacation from music typesetting, and i came back half year ago. I began researching music typesetting and examining closely every score i saw, this gave me the eye to spot typesetting errors (surely not all errors, especially not "what kind of notation should be used here" errors - because i don't have access to music engraving books and internet resources on this subject are limited - however i became sensitive to all kinds of this-doesn't-look-nice errors).
As i became more and more critical and my needs grew (more complicated choir pieces - excerpts from Messiah, some romantic and contemporary music), i began to see LilyPond's weaknesses. My choir played a significant role here - when i began to typeset our scores with Lily, i got some complaints which showed me things that i wasn't aware of.

Ok, so this is the time for Lily pros and cons, from my point of view.

The single most important LilyPond advantage is that it is logical (objects are connected to each other, there is a visible strcture etc.), and content is separated from layout.
The second important advantage is perhaps being open-source: i was already able to improve some issues that irked me, and i hope to do more.
Other advantages are:
- flexible output (i can switch to any paper size without too much trouble, rearrange music on different amout of staves etc.),
- output is quite stable: changing something, for example adding a note, usually doesn't ruin the layout tweaks i do. I remember writing some piano piece in Finale (2005 version i think), tweaking it *very* heavily, only to discover that when i corrected a single wrong note *all* my layout tweaks disappeared. Man, that pissed me off!!
- i can create powerful templates and style-sheets,
- note spacing is much better than finale's,
- it's cross-platform (supporting *all* 3 major platforms, i.e. Win, Linux and Mac), so i don't have to worry if i change OS. Also, if it was for Linux only, i'd almost certainly didn't take the trouble to try it,
- it's free,
- it's accurate (compare how flags are attached to stems in Lily and in finale),
- i like Feta font,
- there are some powerful features available, and music functions could be written (however i didn't use that yet).

Now for the disadvantages.
1. The single most important disadvantage is that not everything is logical (for example hairpin aligning: i must use << {notes} {skips with hairpins attached} >> to achieve desired results; this is cumbersome to read, and, above all, disconnects objects from themselves (i.e. hairpins from notes affected)) and content isn't always separated from layout. Especially manual object positioning is prone to problems; ideally i would like to see \overrides used only in layout-independent situations (that is, to control things not affected by line breaking, vertical system height etc.). 
2. There are some frequenly appearing notation elements that still need quite heavy manual tweaking, for example:
- dynamics (often they stick out too much and cause the systems to spread vertically)
- horizontal placement of lyrics (i'm going to investigate how this could be fixed)
- horizontal placement of accidentals (i'm going to investigate how this could be fixed)
3. I have serious troubles with vertical layout of choral scores containing anything besides notes. Slurs, and especially dynamics, tend to make systems very high; i struggle to achieve 4 systems-per-page layout, which is always certainly possible, but tweaking needed to achieve this is always hit-and-miss. It looks like Lily tries *too* hard to avoid objects being too close and colliding; this leads to problems.
4. Limited playback (this is very important for my choir - we use midi playback to learn our parts at home. Remember that these people have low computer skills - learning LilyPond is beyond their capabilities, so they cannot modify .ly files to get what they want): 
- there is no visual feedback with midi (nothing that shows in which place of the score you are, this is especially important for visualizers),
- starting from chosen measure, or repeating a selected troublesome section, is difficult,
- they cannot choose which voices play,
- they cannot change tempo of the piece.
Some of these can be partially solved by using some MIDI sequencer, but some problems remain. Also, they are not tech-savvy enough that simply telling them 'go use some MIDI sequencer' is a valid answer. I don't like it, but that's the way things are.
5. Every time Lilypond does something the wrong way i have to learn how to correct it. While the documentation is great, it stil takes quite a lot of time.
6. Despite being able to dig through internals, sometimes i still don't know if the command isn't working because of a bug or because of my mistake. I know i should investigate this and post apropriate bug report if that's the case, but i simply don't have time.
7. Trial-and-error metods (which are sometimes necessary) are very (extremely?) time-consuming because i need to compile the file to see if it worked properly.
8. Overrides make code quite unreadable for me. While i'm a little familiar with programming, it is still not easy to read; hopefully this will improve over time. 
9. Sometimes i have no idea why things work the way they do. Especially when there are many ways to accomplish something.

Maybe some of the problems mentioned above will disappear when i became more experienced. Still, typesetting some scores is frustrating for me now, and i can imagine how beginners are easily scared off when they encounter first serious difficulties :(
Would i choose LilyPond knowing of all these limits? I hate to say this, but i don't know. Probably after learning all these things about correct engraving i'd never touch Finale again, but i'm afraid i wouldn't be too eager to use LilyPond, and quite surely i wouldn't advertise it as much as i did :(
But as fate would have it, i didn't know about them when i started, so i got involved :)

The bottom line for me: LilyPond performs greatly in many areas, but correcting it's mistakes is very difficult and time-consuming. On the other hand, Finale and other graphical scorewriters typeset music poorly, but tweaks are easy.
So the problem really is to make "automated engraving" a reality not only in case of extremely simple scores (i.e. ones containing only notes - i think this works almost perfect now), but semi-advanced too. I'm not talking about automatically and beautifully engraving weird contemporary notations completely out-of-the-box (that's perhaps impossible), only to better support for some basic areas of 'conventional' notation.

Your view on this subject may, of course, differ.
I hope this was helpful.
cheers,
Janek

reply via email to

[Prev in Thread] Current Thread [Next in Thread]