[The Site] [The Site]
Home page > English > LilyPond > The LilyPond Report #3

The LilyPond Report #3

Monday 31 March 2008, by Valentin Villenave

This short, informal, weekly opinion column is about the LilyPond project: its team, its world, its community. It is not meant to be an exhaustive documentation resource. Reader comments are, of course, welcome.

Welcome to this third issue of the LilyPond Report!

This week, we are going to come back on a few points that were raised on the last issue, to discuss “real music” snippets and Debussy, to talk about compatibility issues with recently-released operating systems and to not talk about Reinhold Kainhofer. Finally, don’t miss our Interview of the Week with a very special French guest: John Mandereau himself! As always, you can post your comments at the bottom of the page, or even register and contribute to the LilyPond Report’s next issues.

 This Week’s Desultory Editorial

Greetings to all LilyPonders!

Let’s begin this new issue with an official announcement:

By special Request, Reinhold Kainhofer will not appear in this week’s issue.

Oops — too late :-)

More seriously now, I’d like to introduce a new great LilyPond resource for non-English LilyPonders: the new LilyPond-Brasil group that Hugo Ribeiro just created.

I have just created a Lilypond list in Portuguese for those who can’t manage to read or understand the manual or posts in English. So, I would like to invite all those who can write in Portuguese to sign in this group.

For those who don’t remember Hugo, he already opened a LilyPond and Latex-related web page six months ago; finally, since we’re talking about Portuguese resources, I have to mention this little LilyPond tutorial that Hugo made me discover; it looks really well-thought and appealing [1] — though I can’t speak Portuguese :(

Finally, I received a mail from Francisco Vila about last week’s review of OOoLilyPond:

I have tried Ooo-lilypond and I have managed how to make it work with version 2.11 of lilypond; just change the "Function CallLilyPond() As Boolean" so as it says


If sFormat="png" Then
                      sCommand = sCommand & " -dbackend=eps -f png -dresolution=" &
iGraphicDPI & " OOoLilyPond.ly >OOoLilyPond.out 2>&1; "

where I have changed


"... -b eps ..."

to


" ... -dbackend=eps..."

You can edit the macro towards Tools-Macros-Organize macros- OpenOffice.org BASIC... Once there, click on Ooolilypond and “main” at the left. Click on Edit button at the right and locate the function under the SUBS tab.

Thank you Francisco!

 What’s up with LilyPond?

Last week, my “bread theory” gave birth to a few interesting comments: first of all a strange recipe by Han-Wen (for a couple of evenings, my girlfriend and I stood silent, deeply disturbed, wondering what a “sponge” bread could taste like)... But more seriously, an interesting point from Till Rettig — though he began by saying “I see your point, but I am not ready to share it”, he actually brought me some good arguments:

I never really engraved music on lead sheets, instead I had some year long experience with finale which convinced me quite easily that lilypond is better. Maybe I would’nt like lilypond, if I would have done real engraving work?

Well, that meets my theory: LilyPond’s magic (as I tried to analyze it) resides in its ability to make us believe that we are respecting and perpetuating the engraving tradition. My “bread machine” theory was not about telling wether the bread is good or not, but was about looking at the way these machines are sold and advertised.

I doubt LilyPond was ever conceived in a commercial approach; what I wanted to say was that LilyPond awakens in us a kind of attraction that is exactly what many advertisers are looking for. Thanks to this “modernity-meets-tradition” motto, LilyPond’s seductiveness works at a very deep, emotional level — that, by the way, could make it an amazing commercial success if it ever were to hit the market!

 The Snippet of the Week

As you may (or may not) know, the LilyPond Snippet Repository keeps evolving, thanks to our only developer Sebastiano Vigna. A new interesting feature was implemented several months ago: the ability to add one or more tags to the snippets, making them easier to organize and to interface with the Documentation. Therefore, the first tags that were added stricly followed the Grand Documentation Project structure and guidelines. However, some additional tags were added just... too make it cool! These are some tags I would like to introduce in the next LilyPond Report issues.

Today, I’d like to introduce the real music tag. It was originally proposed by Graham to mark “real-world” examples of LilyPond coding, in other words every non-minimal snippets, but also excerpts from authentic scores, etc.

Honestly, it took me a while to find some snippets that would fit into this category. And suddenly, one day, I remembered about this wonderful snippet:
Combining pedal notes with clef changes

Go ahead, follow the link: it’s maybe the most beautiful snippet that was ever put in the LSR. I don’t know who added this (I suspect it might be Trevor Baca, who’s fond of Debussy just like I am [2]), but kudos! Here is a small sample from the snippet:

The quoted piece is l’Isle Joyeuse, by Claude Debussy. You can hear a recording here or here; note that these recordings are absolutely not free [3].

JPG - 26.4 kb
An Island of Joy — Doc&Selyanina

I do, however, have found a free musical creation inspired by Debussy’s piece: it is called An Island of Joy, from Doc and Lena Selyanina, an unusual duet formed by a Finnish electronic music producer and a Russian pianist. This group seems to be strongly committed to Free Culture [4], which is why I found interesting to mention their work — on an artistic level, I do not feel very comfortable with the concept of “ambient music” per se; however Debussy’s colors unarguably fit in this sound world.

An Island of Joy
(after Claude Debussy)
IMG/mp3/03_-_An_Island_of_Joy_In_a_Sea_of_Electronic_Dreams.mp3

 The bug of the Week

For quite a long time, Free Software has been divided between those who wanted their favorite applications to spread and be used by as many people as possible, and those who jealously and deliberately refused to port their code to non-Free platform.

The authors of LilyPond have always tried to support as many platforms and systems as possible (even including ARM processors once); however as one can imagine, it requires quite a lot of work and debugging.

One of these bugs has just been addressed:
Issue 545 — LilyPond is excessively slow on Windows Vista

This bug was first reported three months ago by a newbie named corey, in an interesting way:

I’m sorry to be complaining about how Lilypond runs on Vista, but my laptop doesn’t have the hard drive space for a dual boot like my last one did. :(

With any other operating system, such an apology would have been surprising; but because of Vista’s specific reputation, I can’t say it was.

Besides, the same bug was recently reported on Windows XP as well. Would it have ever been fixed if it had kept affecting only Windows Vista? I can’t answer to that question.

Anyway, the issue is solved now. Does it mean there’s nothing wrong anymore with Vista? Well, at least not on LilyPond’s side :-)

 LilyPond’s Companions... and Leopard

JPGAs a matter of fact, Windows Vista is not the only recently-issued OS that LilyPond does not get along well with. I’m referring, of course, to Apple’s last Mac OS version, labelled 10.5 “Leopard”. This makes a lot of users frustrated, and the issue’s dedicated page on our tracker has become quite long and messy.

But what is really broken?

The first problem affects only the Intel version of LilyPond, and makes it simply unusable with Leopard [5]. Han-Wen explained it precisely this week on -user:

We are using a pre-release version of odcctools to build the mac version under linux. Then Apple changed some internals in 10.5, but nobody updated odcctools.

Leopard systems do have the ability to run PowerPC software; therefore we recommend to Leopard users to download the PPC version of LilyPond. BUT... Here comes the second problem: the nice Graphical User Interface that has been packaged with the Mac OSX version of LilyPond — have a look at the LilyPond Apple official page: beautiful, isn’t it? — so, this interface... is broken too! No menu, no windows, nothing.

This is where the great LilyPond community comes in. Simon Bailey and Ivo Bouwman have been particularly helpful; here’s what Ivo told the LilyPond Report:

I used LilyPond on my MacBook and I was disappointed that it failed to run under Leopard. In messages on discussion lists I found that the Power Mac version still appeared to work even on Intel Macs under Leopard, but only through the command line. So I wrote an AppleScript that invokes Terminal to compile the LilyPond file. In addition, I made the script open both the pdf and the midi. In this way, you can see and hear the result in one go.

Knowing that many Mac users are not familiar with the command line, I put the script on the web with some explanation. So far, about 350 users have downloaded the script.

PNG - 109.4 kb
LilyPondScript in action

Looks great indeed! I have successfully tested it on Mac OS 10.3 Panther as well; my only regret is that the AppleScript format cannot be edited manually using any text editor... I also recommend giving the Smultron editor a try, as described on Ivo’s page.

 The Interview of the Week

This week a few questions asked in French on the mailing list, and the very kind answers from several users, made me think that perhaps I should talk about our French-speaking LilyPond mailing list. “I hadn’t realised there was a French list — a nice surprise!”, told me one of these helpful users.

Two weeks ago, we paid a visit to the German LilyPondForum, thanks to Till Rettig. So today, let me invite you in France, where you can find a very large and active LilyPond community. More precisely, welcome to Clermont-Ferrand city: we are going to meet the guy who started it all — John Mandereau is our guest.

John, as he will tell us, is in charge not only of the French mailing list, but also of all the translations, in any languages, of LilyPond itself (error messages, ...), of the website, and of the Documentation.

LilyPond Report — Hi John, thank you for visiting us this week! Let’s begin with a stupid question: despite your name you are French, and not English in any way?

John Mandereau — You’re welcome :-) — I’m not English at all, my parents simply wanted an first name that was original in France; however, one of my aunts, who is born in France, lives in England now.

L.R. — I see. Tell us a little more about you; for instance, the oboe does seem to take an important place in your life...

John — Yes, I started learning to play the recorder when I was seven, and 4 years later when moving by only 10 km I had to chose learning another instrument in the new town music school, and I choosed the oboe. I’ve never been able to give up playing the oboe since then. I’ve almost finished studying the oboe to become a good amateur. Because of the lack of amateur hautboists, I used to play in up to 4 amateur winds or symphonic bands at a time when I was in bachelor’s degree — it was way too much, now I only play the English horn or the oboe in a double reeds band and sometimes in Clermont-Ferrand conservatoire symphonic orchestra (composed of teachers and pupils).

L.R. — So, when did your story with LilyPond begin?

John — It was in Autumn 2004. I was looking for music sheets on the Web and discovered Mutopia project. Then I quickly discovered LilyPond itself. I typeset and printed my first music sheet with version 2.2.5: it was a small and beautiful piece for oboe and piano (it was the second of Schumann’s Three romances) which I wrote down the oboe part after hearing it on a CD. I was using my family’s computer and installed LilyPond via Cygwin, after an hour of downloading via a 56K Internet connection. Each Cygwin update took ages, and I was very impatient trying the latest available LilyPond version.

L.R. — I know the feeling :)

John — I had tried installing an old GNU/Linux distro one or two months before discovering LilyPond, but had lost this GNU/Linux installation after one week, because of a silly disk partitioning mistake. However, I was quite frustrated using Cygwin, and I was attracted by free software too (I was reading GNU philosophy’s web pages at that time) so 8 months later I decided to install a downloadable bleeding-edge GNU/Linux distro. And that time, I succeeded and definitely switched to free software.

L.R. — I understand discovering LilyPond brought quite a few changes for you...

John — Getting involved wasn’t that natural to me. First, I gradually suscribed to LilyPond three lists. I never dared posting to the lists, I read all messages to learn better using LilyPond. At that time, there was nothing for French-speaking LilyPonders; I suddenly got involved when two French LilyPond users, Gauvain Pocentek and Jean-Charles Malahieude, asked whether anybody had started translating lilyond.org main site or the documentation. It was in June 2005. Jan explained us how to translate the web site: it was quite straightforward and technically easy, and we finished translating the web site in September 2005. Jean-Charles, Gauvain and me we formed a very close team; in october 2005 we opened our own French-speaking LilyPond mailing list: lilypond-user-fr@gnu.org.

L.R. — It was just a beginning, though...

John — Yes. In 2005-2006 I had no other responsability than translating the web site with Jean-Charles and Gauvain. Whereas translating lilypond.org only required basic HTML understanding, it became a lot more complicated when Gauvain wanted to start translating the documentation. French translators (including newcomers and not including me) started translating the tutorial, but there were no technical infrastructure to integrate them into official docs. [looking for dusty mail archives to remember a date...] At the end of 2005, Jan sent a patch that made the fundations of this infrastructure, but it had a major problem: section titles and node names could not be translated, which made translated docs unusable. I took me a year then (among usual life with studying maths and playing the oboe) to learn about technical aspects: Texinfo (the source format of LilyPond docs), makefiles and Python language. I ended up with an almost-working solution to translate section titles in translated docs. Jan quickly integrated the patch and fixed some issues caused by my lack of programming experience. This was at the end of 2006.

L.R. — So, in addition to Free Software, you came to programming through LilyPond as well?

John — I was a student in math at that time, with a Bachelor’s degree. I only knew Basic-like programming on calculators, a bit of CaML for a basic computer science theory course, and an introduction to C++ with the C-like subset in undergraduate math cursus. I’ve never had any other programming course at the university, as I’ve been mainly studying math.

L.R. — In LilyPond 2.11 THANKS file, you are credited as “Translations Meister”; what is this LilyPond job and how did you take over it?

John — In late 2006, two translators got involved: Daniel Tonda Castillo, who translated lilypond.org in Spanish, and Till Rettig, who translated the site in German. I helped them a little with putting their translation on line, which decided Jan and Han-Wen to name me Translations meister in January 2007. This job consists of organizing translations, helping translators with technical details, and developping the technical infrastructure needed to integrate translations in official documentation. Translations make a small part of the project’s development, but an essential one, as mailing lists and forums in various languages show: many people would not use LilyPond at all if it didn’t come with translated documentation.

L.R. — Do you have any plans regarding your future involvment in LilyPond? Or perhaps you’re getting tired...

John — On the contrary! When I have finished studying math and have become a math teacher — this will hopefully happen in 4 months, or in worst case in a year and a half — I plan to get more involved! There are so much things to do in the development of such a great software project.

L.R. — Thank you very much John; is there anything else you’d like to add?

John — Oh, there would be so much to say... I like the idea of LilyPond report, which is certainly going to contribute to LilyPond promotion; perhaps I’ll consider writing something, in a future issue of this column...

L.R. — ...And you will be welcome!

Thanks to John Mandereau for this interview.

And this concludes the third issue of The LilyPond Report.

Cheers,
Valentin Villenave

Footnotes

[1] A bunch of ideas for our next web-design?

[2] Actually, it appears to be Neil Puttock who wrote this snippet.

[3] There’s also a version by Claudio Arrau on YouTube.

[4] They have, among others, been close to the Pirate Party I’m myself a member of.

[5] LilyPond is built using only Free Software (such as the MinGW compiler to create windows binaries, etc). It is actually possible, as Nicolas Sceaux proved it, to overcome the bug, but that involves several tools that are not currently available for LilyPond’s official development.

Reply to this article

9 Forum messages

  • I read this issue with interest.

    Regarding the Macos issue, if someone really wants to fix the GUI for MacOS 10.4 and 10.5, it would be really cool if they could compile a new version of the LilyPad user interface. The LilyPad sources are at

    http://git.sv.gnu.org/gitweb/?p=lil...;a=shortlog;h=refs/heads/macos-lilypad

    it’s a very simple Xcode / python project; this is the call that I used to use to build

    system (’/usr/bin/python setup.py py2app -b %s -d %s —iconfile %s ’ % (builddir + ’/lilypad-build’, image_dir, topdir + ’/lilypond.icns’, ))

    If someone could run py2app on a 10.4 box (preferably: with python 2.4), then that would be great. We could even have a universal binary (I used to have some reservations, since the universal binaries are very fat. However, nowadays, our bandwidth is sponsored by Virginia Tech, so it’s not a problem).

    http://cvs.sv.gnu.org/viewvc/lilypo...

    has the .icns file (the icon)

    Reply to this message

  • The LilyPond Report #3

    31 March 11:57, by Nicolas Sceaux
    John, I did not know you were playing the oboe. I used to play it too, but stopped when I started studying maths. I thought that it was not really possible to be an amateur oboist, unless you’re really good at making “anches” (I don’t know the English for the reed things). Chapeau !

    Reply to this message

  • Another web page for Mac users

    31 March 12:35, by Valentin Villenave
    I’ve just found this other weblog that explains quite well how to make LilyPond work on Leopard using the command-line in Terminal:

    See online : Hans Fugal’s blog

    Reply to this message

  • The LilyPond Report #3

    31 March 23:36, by Neil Puttock

    Good stuff as always, Valentin.

    In fact, I think this might well be my favourite issue so far, due to a certain LSR snippet “wot I wrote” ;).

    I’d like to shoehorn as many Debussy examples into LSR snippets as possible, though last week I had to settle for Chopin.

    In any case, I think it’s always a good idea to demonstrate tips and tricks with real world examples if possible.

    Reply to this message

    • Real-world snippets 1 April 10:04, by Valentin Villenave

      Well, bravo! — and your Chopin snippet is nice too...

      Indeed, this formula is particularly specific of Chopin’s style, where it’s hard to tell whether the grace note is part of the arpeggiated chord or not (it’s more or less the same writing than the famous first four eighth notes of the 1st Ballade, by the way).

      Moreover, many publishers write these grace notes before the arpeggio, which is irrelevant and unaesthetic. Once again, LilyPond proves its value in comparison to expensive proprietary scores...

      Reply to this message

      • Real-world snippets 1 April 19:40, by Neil Puttock

        Well, bravo! — and your Chopin snippet is nice too...

        Thank you; you’re too kind. I’m flattered that you thought it might be by Trevor; I’m a great admirer of his snippets (that Debussy prelude snippet from the archives is lovely).

        Indeed, this formula is particularly specific of Chopin’s style, where it’s hard to tell whether the grace note is part of the arpeggiated chord or not (it’s more or less the same writing than the famous first four eighth notes of the 1st Ballade, by the way).

        Yes! Those notes are just like a written out example.

        Moreover, many publishers write these grace notes before the arpeggio, which is irrelevant and unaesthetic. Once again, LilyPond proves its value in comparison to expensive proprietary (...)

        Even the official Fryderyk Chopin Institute edition of the Nocturnes (which I used for typesetting) is a bit inconsistent here: in some cases the arpeggio is before the grace note, whereas elsewhere they use a slur instead (which seems to me far too ambiguous).

        Reply to this message