[Top][All Lists]

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

Project - Emacs mode extensions for LilyPond

From: François Pinard
Subject: Project - Emacs mode extensions for LilyPond
Date: 30 Jul 2003 10:51:29 -0400

Hello, LilyPond friends.

Two days ago, I started a Pymacs[1] extension to Emacs LilyPond mode.  I
want some framework to fill a few personal LilyPond editing needs.

To get me started, I added a few Emacs keys for altering an Emacs region of
a LilyPond score.  These can change relative pitch notation to absolute and
vice-versa, use implicit durations or not, or force English notation for
alterations.  Score notes may be quickly sent to the synthetiser from the
current line, region (or even buffer), as a simple way to proof my typing.

It is all partial and incomplete.  I should at least address the recognition
of more LilyPond tokens.  Right now, it is better not feed lyrics to the
above commands, for example.  I should learn if there is a way to initially
mark a LilyPond score into areas (like lyrics, relative, corresponding far
away brackets maybe, and such things), probably using text properties, and
then have these lazily but automatically updated, like fontifying does.  I
ponder writing a SPARK recogniser for LilyPond syntax as part of the tool.
Another thing would be to make the synthetiser interface more portable[2].

Even it this shows possible directions, I do not starve for that much as of
today! :-) Yet, I'm willing to share this starting idea with curious users,
and possible contributors, in case it would yield us somewhere, faster.  I
will put the code available on the Web somewhere, either when it gets
publishable, or if I have many requests.  Just ask me for a copy until then.

Dependencies?  Currently, I'm using SuSE 8.2, with bundled LilyPond 1.6.6,
Emacs 21.2 and Python 2.2.  From my own things, Pymacs 0.23 and Midi 0.2.
Pymacs is mandatory.  Without Midi, the synthetiser commands are silent.

[1] It's natural for me to take the Pymacs direction, as I wrote it.  This
tool is published, see .

[2] For reaching the MIDI interface, I merely "import" and reuse a part of a
MIDI handling library of mine, still unpublished, but available on demand.

François Pinard

reply via email to

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