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

The LilyPond Report #5

Sunday 13 April 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 (see at the bottom of this page).

Welcome to this fifth issue of the LilyPond Report!

Quite a busy week for the Report! We’ll have a look at some answers to last week’s questions about old LilyPond versions, but we will also mention some of these pale imitations of LilyPond that are (reportedly) being sold under the names of “Finale” or “Sibelius”. You will also learn that the “Ancient” curse of the LSR has eventually been solved, and that a new version of LilyKDE is out. Finally, the LilyPond Report takes you to Spain this week, as Francisco Vila is our special guest! 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,
although the LilyPond Report was never meant to be (nor to ever become) a serious newsletter, it’s always frustrating to see that I can’t keep track of every events, ideas, testimonies, debates I discover every week among the LilyPond project and community.

When I initiated the LilyPond Report six weeks ago, I hadn’t realized that at all. I even hesitated to release it on a weekly, bi-weekly or monthly basis: not only because of my personal non-LilyPond work and life, but also because I thought I’d hardly have enough things to say from one week to another! And then — then I gradually realized that, actually, the most difficult was not to find things to write about, but to choose what things to tell, among the countless interesting points that are raised every week.

For example, as I’m writing these lines I’ve just had a look at the mailing list, and once again I’m tempted to mention all this stuff in the Report: the ongoing discussion initiated by Bertalan about translation, that, as always, has gone into several different threads; or this perl makefile generator that Karl Hammar has just posted...

(Yes, now that I do have mentioned these, I’m feeling a bit better.)

Is the LilyPond Report too long? Too chatty? I am in no position to judge whether it is or not. What I do know is that every week I have to postpone some articles, to cut things and to limit myself because of the amount of things to say. That’s a good sign of how alive is our community (and the Free World in general), so let’s just keep things this way! And once again, feel free to write contributions, to send comments, jokes, cook recipes, anything!

Speaking of recipes, you will see below that Laura Conrad has contributed to the discussion on old LilyPond versions; this gave me the idea to visit her website, that contains many surprising things: a “Home Brewing” page, some free scores, a blog and... a serpent scarf!

Nicolas Sceaux Nicolas Sceaux, last week, described himself verbally; well this week, he sent us a picture — no geeky glasses, but you can indeed see maps in Tengwar on the wall. It’s great to discover how LilyPonders look like; in addition to Nicolas’ face, don’t miss Francisco’s picture in our Interview below!

 What’s up with LilyPond?

Last week’s thoughts about old versions of LilyPond raised some debates on the mailing list [1], even leading Graham “Grumpy” Percival to sing his national “we certainly do not need to bloody talk about this issue” anthem.

To avoid any confusion, I should have specified that such discussions might be better kept in the Report’s forums, at the bottom of each issue — even if, of course, it’s always a pleasure to see that this column is read by prominent LilyPonders and makes them want to react to it.

For instance, on the question of old versions, Karl Hammar made two points:

Well, that is the difference between production (you don’t want ANY surprises, you want the tested and found true) and developing.

There is also a maintenance part. You don’t have time to upgrade all your files when a new version comes out.

Laura Conrad developed a similar point of view in a long, sensible mail:

The “moving too fast” question is not at all rhetorical. If you’re trying to put together a book, and you have to convert the earlier pieces several times before you finish transcribing the later pieces, some people consider that “moving too fast”. [...] I currently have a pretty major project that I can’t recompile because I’d have to hand-convert all the lyrics to run the current version, and I can no longer run the older version on my relatively current Ubuntu linux system.

[...] There should be a feature freeze some weeks or months before a stable release. I got burned badly having to convert lilypond files from an odd-numbered version before I could use them on a stable version once, so now all my production work (which is most of my work) is on stable versions.

This last idea makes sense, and is actually similar to major Free projects development cycle such as Mozilla, KDE or big GNU/Linux distributions. However, I think we all understand why it wouldn’t be easy with LilyPond: as a “grumpy” friend of mine would say, we lack developers, we lack time and resources. Besides, as Laura points out, most conversion issues occurred between 2003 and 2005 — so I guess things are better handled now.

And now for my off-topic two cents in this discussion: last week I mentioned Mozilla project’s 10th birthday, and this made me want to give Firefox 3 a try. I wasn’t expecting to encounter any trouble with such a large project — man, how wrong was I! Admittedly, the main downside of previous versions (the huge memory footprint) has been addressed; however, the browser is still not stable at all (I’ve been loosing hours of work on the Report because of crashes). The interface has been redesigned in a preposterous way, and, what’s worse, there is no way (option, extension, anything) to get the old behaviour back! Users are complaining everywhere, in vain.

So, what’s the morality in this story? From where I’m standing, I have to say I’m much more comfortable with LilyPond’s “niche” than with huge projects involving hundreds of contributors. In the LilyPond community, I believe we all can “do something”, play a role in the project’s evolution. Except, unfortunately, when it comes to actual constraints, and this seems to be one of these cases here.

 The LilyPond Feature of the Week

We have it. Any questions?
When you’ve been reading the LilyPond mailing list for some time, you end up getting used to reading the word “thanks”. As I’m writing these lines, Jonathan Kulp, a new user, has just sent one of these mails “to say a big”thanks“to the developers of LilyPond”.

Okay, we know LilyPond is simply awesome, we know how grateful everyone is to the developers. But in Jonathan’s mail, there’s something more:

I’ve been using Finale since about 1999 or so [...] I’m really impressed by [LilyPond’s] powerful capabilities and beautiful output. And really, the learning curve for Lilypond is no steeper than it was for me learning Finale. When I learned Finale98 it was a big pain.

[...] Lilypond handles cross-staff beaming much more smoothly than Finale does. I’m finding that there are many things for which Lilypond is more adept than Finale, and it’s really fun learning this. There’s something magical about the way it takes a text file and churns out a lovely musical engraving. I’ve shown some of these things to my students and they can hardly believe it,

Hmm... Having looked into the mailing list archives, I actually found many other testimonies from Finale users:

- “Lilypond won me over due to its superior output and its community” (Nick Busigin)

- “I use to work as engraver for publishers companys. I work with Finale, [but] im really impressed by this new software” (JosuÃ)

- “I was impressed with Lilypond’s cool and fast syntax.[...] unfortunately I need to [go] back to Finale. (My music professor doesn’t like Lilypond...) ” (Ben Fisher)

- and of course, don’t forget to read Andrew Hawryluk’s writing about Finale and LilyPond.

This made me want to find some of Finale or Sibelius’ “killer” features, and compare them with LilyPond. Today, let me introduce a feature that these commercial programs share: Sibelius calls it Auto Layout™ [2], and Finale Smart Page Turns. I’m referring to the page layout algorhythm, which could more or less be defined as a pathetic attempt to mimic LilyPond’s power: in this case, it’s about making page turns easier for musicians, by breaking the pages at empty measures or whatever.

I’m already imagining new users arriving on the list, asking: “hey guys, your software looks nice but it’s missing something: in ExpensiveSoftware 2009 there’s this really coool feature called Super Awesome Page Breaks®©™ that allows musicians to turn the page when there’s a rest...” — Oh, but, dear new user, guess what?

We already have it.

Look at the following code:

PNG - 19.2 kb
PNG - 43.3 kb

\new Staff
{
 \repeat unfold 128 b1
 R1
 \repeat unfold 128 b1
}

The output will be printed on two pages, and the rest is randomly placed.

Now, if you use our (patented) Super-Ultra-Cool ly:page-turn-breaking function [3], here’s what your code should look like:

PNG - 26.3 kb
PNG - 41.3 kb

\paper{
 #(define page-breaking ly:page-turn-breaking)
}


\new Staff \with { \consists "Page_turn_engraver" }
{
 \repeat unfold 128 b1
 R1
 \repeat unfold 128 b1
}

And here you are: nice and easy.

Intelligent page breaking? We have it. Any questions?

 The bug of the week

A few weeks ago, we talked about the strange bug that affected the LilyPond Snippet Repository, making the search function always returning snippets tagged as “Ancient”. Well, this bug is now solved! Moreover, accordingly to Sebastiano Vigna, the LSR developer:

Actually, it was fantastic that it showed here—it would have been a disrupting bug if it went too far in the wild. Now it’s fixed.

Well, thanks to Reinhold and Luis for having reported this one!

While I hadn’t noticed this bug myself, I did, however, notice that when searching for any keyword on the LSR, the results are displayed as follows:
Results 0−9 of 100 for ...
while on everyday search engines such as Google, Yahoo or thepiratebay, the results are diplayed as follows:
Results 1-10 of 100 for ...

So, was it a bug? Quoting Sebastiano again,

It’s intended. Romans counted from one because they didn’t have a symbol for 0. 0 is the first natural number.

He also provided me with this link that explains it all.

So, what’s your opinion on this? I confess I like this kind of (apparently) silly questions [4], that frequently raise incredible discussions on our mailing list... Well, this place (the Report) is made for such discussions, so feel free to argue or not at the bottom of this page.

 LilyPond’s Companion Projects

Some time ago, we talked about the user-unfriendliness of LilyPond on Mac OS 10.5; well, this week José Padovani provided us with another solution to make it usable: his trick involves the Aquamacs editor, a really nice GNU Emacs OSX port that I discovered thanks to this mail.

About a more advanced and promising project, Wilbert Berendsen (codename wbsoft) officially announced the new release of LilyKDE, “a set of tools to integrate the LilyPond music typesetter into the K Desktop Environment”. This is quite interesting for Linux and BSD users, but maybe Windows as well in a near future...

With LilyKDE, you can:

- Write LilyPond files using Kate, with a PDF preview embedded in Kate. When you click on a note, the editor jumps to the correct position.

- Run LilyPond with a keystroke from Kate, or from Konqueror using a menu action, and the error messages in the log are also clickable and bring you right to the place of the error.

- Play on your MIDI keyboard or even on your computer keyboard, to write your music very quickly. LilyKDE uses Rumor for this (you need to install it, of course)

Other nice features:

- Quickly hyphenate lyrics text using dictionaries from e.g. OpenOffice.org or Scribus

- Powerful LilyPond syntax highlighting (already part of KDE)

- Nice icon for LilyPond files (taken from LilyPond)

Very interesting indeed. On a future issue, I do intent to fully test and review LilyKDE [5].

 The Interview of the Week

This week, after Germany and France, I wanted to conclude our trip through major European LilyPond communities by visiting the Spanish city of Badajoz, in Extremadura: Francisco Vila is our guest.

When visiting Francisco’s homepage, one is greeted with a flashy pink screen; as I asked him why, he answered: “This is an act of solidarity, because T-mobile tried to trademark the magenta color. I hate software patents, infinite copyright and all that %&·$”. I believe this describes Francisco quite well.

LilyPond Report — Hi Francisco, nice to have a talk with you this week! I was just telling our readers about your personal website, paconet.org — why this name? Is “Paco” a Spanish shorthand for Francisco?

Francisco Vila — Yes it is; it’s like the Internet, but it’s “paco-net” instead :-) I am shy, and my personal webpage is very old now; these days I rely much more in web 2.0 as del.icio.us, flickr...

JPG - 172.8 kb
Quodlibet
(Francisco is the one in black.)

L.R. — Speaking of which, you have a few pictures on Flickr, and some of the most recent ones seem to be featuring a vocal ensemble you’re involved with?

Francisco — Yes! Though my first instrument was the piano, I have always loved to sing. I entered the Conservatoire’s choir when I was 16 or so; then we formed this group, which is ten years old now. We enjoy singing in weddings, for instance, but we also have a CD.

L.R. — Cool... However, your main occupation is being a teacher: from what I can see on your Conservatoire’s website, you are in charge of many different matters, including very advanced stuff, aren’t you?

JPG - 47 kb
Badajoz Conservatorio

Francisco — You know, on the paper it sounds greater than what it is... I work a minimum of 18 hours at the conservatoire, plus meetings, etc; my main work is supposedly to teach chamber music, but I managed to give some optional subjects: musical acoustics, organology, computer music, electroacoustics for composers, Internet for musicians... and now I spend the vast majority of these 18 hours in optional matters. But I do like plain old music, of course. We also teach an interesting subjet that is “piano for non pianists”, based on practical keyboard knowledge, and by means of harmony structures and improvisation.

L.R. — That it impressive — In France, I have never seen any computer used in any music school — but from what I understand, you do have the ability to use computers in your classrooms?

Francisco — I have five computers in my classroom, and 22 students only for music engraving lessons. We’re using LilyPond, with the Notepad++ editor [6] — we have very small computers, and I find jEdit a bit...I dont know, heavy for a 128Mb RAM computer. Notepad++ alone, even without the LilyPond language file, does bracket matching, this is great. So my students use Lilypond on a regular basis; I did this in a two phase process. A year I decided to migrate my subject, and let them keep doing the exercises using Finale, but they had to write one piece with LilyPond; the next year only LilyPond was allowed, and now in my classroom, the policy is absolutely LilyPond-only.

L.R. — Amazing! You seem to have many freedoms as a teacher; I wish I were that lucky — and competent...

Francisco — Yes; I don’t get to choose my students, but my students (lucky of me) choose me by my subjects... However it has been a long travel, from teaching only solfege and piano to absolute beginners in the early 90s. At that time, I had 40 piano students in a school, in a village 100 km away; I had to go there two afternoons a week, with the whole staff in one car! That lasted 4 or 5 years, then I worked nearer, only 60 km away, for a year; then in 94 I started working as chamber music teacher in Badajoz, and got finally married — with a stable work you can buy a house and gain tranquility, so that was the proper moment. Funny, how the world and live works... I have now two daughters, ages 4 and 6. They use to joke about the funny-sounding word lilypond: “li -li pOng”!

L.R. — Very cute :) So between 90 and now, you’ve been in a very good place to see the changes introduced by computers in both music and pedagogy?

Francisco — Of course. At that time I had an Atari computer at home, with a midi interface; in a very amateur manner, I used the Atari to sequence choral works and help others to learn their parts. I had a first casio synth, but I really started with a casiotone, the calculator with piano keyboard and ADSR. For example, i had an open reel magnetophone, I did four-voice transcriptions with this and the casiotone, very analog, no sequence at all, all voice-wise: now it is prehistory :-)

L.R. — And what about software?

Francisco — Music software? I had read extensively in magazines about them and I only dreamt of having one some day. I read interviews with professionals, and felt much curiosity: for example, I imagined how the software could multiply the power of the artist, the way to manage the structure and details of the music with such a powerful tool; it looked very attractive... But owning Cubase or anything was impossible for me, and of course, there wasn’t any computer in music schools; it was only at the conservatory where I could have a computer to use it as a tool. My institution bought Cubase for me, and Finale ninetysomething.

L.R. — From a pedagogical point of view, have you ever feared that computers could distract pupils from learning important notions? Or may induce a whole generation of tone-deaf pupils, for instance?

Francisco — Yes — but you have to choose between teaching music theory OR computer tools. When I saw that the students wanted to learn how to use these tools, no matter what they wanted to do with them later, I took it as an opportunity; however, I personally consider myself lucky to have started in a time when things weren’t so easy. As for hearing: I think pianists in general, at least the ones I know, are somehow tone-deaf. Is piano the culprit? No — it’s just that while bow or wind players are evidently practising their ears continuously, pianists are not. We have to make them sing very much, we can teach them aural training.

L.R. — Let’s talk Free Software. I believe Extremadura is a good place to live in, in that regard?

Francisco — Officially, it is. Extremadura has taken a non return path, and the regional government is migrating massively to its own distribution, linEx. Schools do not use Windows; my girls, for instance, have never used Windows, only linEx and Ubuntu. Having said that, in my professionnal environment we live in a very very Windows-only world. In my conservatory, which belongs to the provincial (not regional) government , everything is Windows. “Windows is free”, you know [7], and so is Finale: well, this has to reach a dead end, and we teachers can do something — you cannot simply keep on pirating Finale every year just to see if they have fixed something.

L.R. — Some weeks ago I briefly mentioned the difficult choice of porting Free Software to non-free OSes [8]; are you telling me that without Win32 ports, nothing would have happened in Spain?

Francisco — That’s true, at least in my classroom. You cannot simply force a student to say goodbye to Windows in a month’s time, but you can use only Free Software, all on Windows, as a starting point. That’s how I discovered Free Software myself: BonkEnc, Audacity etc. — Audacity was my first one, and I helped translating it. Maybe the last one was LilyPond, after a long search...

L.R. — I guess there’s no need to ask if you regard translation as an important task for Free Software diffusion...

Francisco — It is ab-so-lu-te-ly necessary. Daniel Tonda was the first one who partially translated the LilyPond webpage into Spanish. I think I started the Spanish Documentation, although I can be wrong.

L.R. — And then came the Grand Documentation Project cataclysm — you were quite upset when John (whom we talked with two weeks ago) overwrote the Documentation you were translating...

Francisco — Exactly! :) I don’t bother to work, but I really hate to do the work twice. For me it was terrible, because in the middle of a course I couldnt simply tell the students “docs are gone away” (therefore we kept an old 2.11.34 spanish copy from the pre-GDP times). I do, however, understand the need of GDP, and now (time after) the manuals are much, much better. It is definitely a great improvement, mainly because students wanted to learn for themselves, and now with the new tweaking section I think they finally can.

JPG - 9.2 kb
Francisco Vila
photographed by his daughter

L.R. — Anyway, it’s great to have you on board again; I think John, Graham and everybodywould agree with on that.

Francisco — Thank you very, very much for these words. John is a very responsible person, with great potential; he has given me the knowledge (and write access to git), and he’s been very patient with me. I had to learn git, texinfo, etc.; but now that bad time has passed, and everything is going more smoothly.

L.R. — So, I assume neither you or your students are fed up with LilyPond?

Francisco — Oh, not at all! This summer we went to Strasbourg for the annual meeting of the European Association of Conservatoires, where I talked about LilyPond; that was great, several people were interested. Now I am going to prepare an exhibition of my pupils’ scores, that are all very pleasant looking — I have just begun selecting the scores.

L.R. — Great! Let us know if you take any pictures then, I’d be glad to feature them in the Report!

Francisco — Yes, of course. Thank you your interest and kind treatment. Keep on with the column!

Thanks to Francisco Vila for this interview.

A few days after the interview, Francisco sent the two following tracks to the LilyPond Report:

Hello,
here are two recordings of Quodlibet; you could host them if you think they sound well enough. The licence is (cc)(by). They are home recordings, each made with two MD recorders in sync thanks to Audacity. Place of recording: hall of my own home. The reverb is added by computer. Sound engineer: nobody (well.. er... me.)

Thanks a lot Francisco; I hope our readers will enjoy these short tracks!

Ogg - 2.8 Mb
Tallis — If Ye Love Me
CC (by) — Courtesy of Quodlibet
Ogg - 1.9 Mb
A. Gabrielli — Missa brevis
CC (by) — Courtesy of Quodlibet

And this concludes the fifth issue of The LilyPond Report.

Cheers,
Valentin Villenave

Footnotes

[1] As always, the discussion splitted into different threads. Interestingly, even our main developer Han-Wen took part in it.

[2] By the way, have you ever noticed Sibelius Software’s extraordinary ability to trademark about any existing musical term? Have a look at the description page, and you’ll find Flexi-time™, PhotoScore™, Reprise™, ManuScript™, SoundWorld™, Espressivo™, Rubato™, Rhythmic feel™, SoundStage™, Dynamic Parts™, Auto Layout™, Worksheet Creator™ — Admittedly, MakeMusic did “only” trademark the names Allegro™ and Finale™.

[3] I think this function was implemented by Joe Neeman, with some late additional improvements by Nicolas Sceaux. You can have a look at these discussions to follow its evolution: 1, 2, 3, 4, 5, 6.

[4] I often have a hard time when trying to explain my pupils that when counting the semitones between one pitch and another, (for instance between c and e) you can’t count “1” on the lowest pitch (the c: otherwise my pupils play c, cis, d, dis and e, and then they claim it makes 5 semitones!) — therefore we always count the starting pitch as “0”. However, right after that we try to number the degrees of the scale, and now here I am, trying to explain that the tonic is actually degree I, as there’s no degree 0...

[5] I would already have if I did use KDE, but as an XFCE user I’m always reluctant to install any environment that is more than 30MB :-)

[6] By the way, NotePad++’ FAQ page is really funny; have a look at it if you have a minute!

[7] Francisco is actually refering to this article I quoted on a previous issue.

[8] On this subject, please read this quote from Mark Shuttleworth, on Tristan Nitot’s Standblog.

Reply to this article

4 Forum messages

  • The LilyPond Report #5

    13 April 22:20

    I think this function [ly:page-turn-breaking] was implemented by Joe Neeman, with some ideas by Nicolas Sceaux.

    No, it was implemented by Joe Neeman, with some ideas by Joe Neeman.

    Reply to this message

    • page breaking implementation 13 April 23:29, by Valentin Villenave

      Thanks, noted. However, even if the original implementation does belong to Joe, Nicolas seems to have worked on the page-breaking stuff in 2007, as you can see on the discussions I’m referring to; that’s why I wanted to mention him as well (I rephrased the footnote to make it clearer).

      (By the way, in his framework he’s using a “cosmeticBreak” macro I’d be happy to understand. Nicolas, if you read this...)

      Reply to this message

      • page breaking implementation 15 April 22:13, by Nicolas Sceaux

        (the first message was from me, I forgot to enter my name)

        What I’ve added last summer was a new page breaker with a quicker algorithm (beause the “optimal” and “page-turn” ones are not suited to large books), but which is not aware of page turns.

        But as this new “minimal” algorithm is dumb, one may need to manually add page breaks at some points. The function you’re refering to does that: add a page breaks at the point where it occurs. And when you’re using the same main source file for several editions (different paper format for instance), you may want to conditionnalize in some way the page breaks.

        (By the way, I’ve cleaned my framework in the last scores I’ve typeset, see eg Hippolyte et Aricie, in case you’re interested).

        Reply to this message

  • Gabrielli score

    18 April 12:58, by pacovila

    For those of you who can be interested, here is the score of the Gabrielli piece, typeset with lilypond, of course. License: copyleft.

    www.paconet.org/quodlibet/kyrie.ly

    www.paconet.org/quodlibet/kyrie.pdf

    Cheers,

    Reply to this message