lilypond-devel
[Top][All Lists]
Advanced

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

Re: How to develop Emacs mode?


From: David Kastrup
Subject: Re: How to develop Emacs mode?
Date: Sat, 19 Jun 2010 14:23:33 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Nicolas Sceaux <address@hidden> writes:

> Le 17 juin 2010 à 17:31, David Kastrup a écrit :
>
>> Carl Sorensen <address@hidden> writes:
>> 
>>> On 6/17/10 8:59 AM, "David Kastrup" <address@hidden> wrote:
>>> 
>>>> I have a question about developing Emacs input and major modes for
>>>> Lilypond.  What would be the right way to go forward for me?
>>>> 
>>>> I want to make use of current Emacs features (like semantic parsing
>>>> and similar).  I also want to create input methods for inputting on
>>>> the keyboard in chromatic button keyboard layout, but also in
>>>> parallel for inputting via midi (I already checked that
>>>> make-serial-process can be used for opening and accessing a midi
>>>> device on GNU/Linux).
>>> 
>>> Are you familiar with lyqi?
>>> 
>>> <http://nicolas.sceaux.free.fr/lilypond/lyqi.html>
>> 
>> Not chromatic button accordion layout, and I should think that a
>> regular input method might be cleaner.  I think I checked it out at
>> one time, and the payback for the installation trouble seemed not
>> convincing to me.  In particular, French note names were not
>> interesting to me.  I should think that the canonical input method
>> should be Dutch.
>
> Err, I should do something about this link which is totaly outdated.
> But, for the record, Dutch input method was of course the default, not
> French.

Yes, I mentioned in a followup that I apparently have been quite
careless in rereading the lyqi information.  I think the first time I
gave up on lyqi could possibly have been because of running out of steam
satisfying the dependencies, contrasted with the expected return of
investment.

> I've been writing a new version with a home made parser (see
> http://github.com/nsceaux/lyqi) because I was under the impression
> that semantics (http://cedet.sourceforge.net/semantic.shtml) was not
> responsive enough with respect to incremental parsing, but I may well
> be wrong[1].  Indentation is not good yet, but at least the parser as
> knowledged of lilypond/scheme/lilypond embedding.  Anyway, it seems
> that I've reinvented the wheel (badly).  On the other hand my note
> typing as never been so quick.

Well, being used to your tools is always helpful.

> Several years ago, I used a midi keyboard to enter the notes: one hand
> on the midi keyboard, and one hand on the computer keyboard, to set
> durations, because I'm a lame keyboard player.  But it turned out that
> (in my case) that method was not quicker (or practical) than full
> computer keyboard entry.

I should think so.  I am not a good keyboard player either.  But I think
that recording with complete timing, and placing the bar lines manually
afterwards should allow for an excellent return of invested time.
Managing reasonably timed keyboard input for a bar at a time should be
doable.  And if you mess up one bar completely, you can still relabel
all of it manually.

> [1] Its documentation says that parsing happens mainly in idle time,
> whereas I needed that it happens as soon as a typing command is done
> (so that the next command can immediately know what the previous note
> duration, alteration, etc, is, to modify it).

I think that semantic does "idle time" parsing mostly for cross
reference information and similar.

It would appear pretty nonsensical for me to ignore your work on lyqi
(which, in turn, appears to be slated to replace most of the existing
lilypond-mode functionality).  If it is compatible with your plans
(which may include copyright assignment) to have a full-featured
Lilypond mode eventually appear upstream in Emacs, I'd just try joining
forces with you.

It would appear that you work on MacOSX or so.  Can you check whether
some variation of the Midi test code using make-serial-process I posted
recently could be made to work on your setup?  If it did, this would be
much preferable to having to use external applications like rumor.

Thanks

-- 
David Kastrup




reply via email to

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