LilyPond became more user-friendly overnight!

…and I had almost missed that fact!

Yesterday I discovered an excellent patch that was added to LilyPond a few weeks ago by David Kastrup.  It may appear insignificant, but in my opinion it makes LilyPond noticeably more user-friendly. 🙂

The patch was added as commit 680df85187d0f38 and can be viewed here.

For the non-technical readers, let me explain the difference. In version 2.16, when you wanted to change some setting — for example tell LilyPond to make stems shorter — you had to write something like this:

  \override Stem #'length = #5.6
  e' f' g' a'

Which resulted in this output:


Now, some new users were turned off by these strange symbols, such as #. But fortunately, thanks to a series of patches solving issue 2883 (from October 2012) and the recent patch I mentioned before, the code above can currently (in version 2.17.24) be written simply as:

  \override Stem.length = 5.6
  e' f' g' a'

I think that this is pretty straightforward now, isn’t it? We tell LilyPond to override a Stem‘s length to 5.6 units, and that’s it. 🙂

And all of this thanks to the work of David Kastrup — kudos to him!

Update: it turned out that negative numbers didn’t work without a hash symbol, i.e. you couldn’t write

\override TextScript.font-size = -1.5

Fortunately, David already proposed a patch to fix this — it will probably be included in the next development release. 🙂

5 thoughts on “LilyPond became more user-friendly overnight!

  1. Ben

    This is fantastic, thank you for working on this patch David! Personally, I think it’s a big step in the right direction for LilyPond.

  2. Andrew

    Fantastic. Really makes it seem less like a wrapper for Scheme, and more like a natural programming language. Is there a plan or thread with more developments in this vein?

    1. Janek Warchoł Post author

      Not quite. It’s hard to discuss syntax issues when there’s only one (active) developer competent to make such changes (David Kastrup). After some inconclusive attempts we decided to leave this area to David and let him improve things according to his best judgement.


Leave a Reply

Your email address will not be published. Required fields are marked *