Jérôme Plût <jerome.p...@normalesup.org> writes:

> Decimo tertio Kalendas Februarias MMXIII scripsit Werner LEMBERG :
>> Yeah, this looks like a good syntax suggestion.  Is a Scheme solution
>> possible, or does this need a C++ extension?
>
> It seems that this requires a C++ extension.
> Namely, \key only generates a KeyChangeEvent, so Scheme macros cannot
> access the current key signature.

The key change event changes a context property, and an acknowledger for
the script can pick it up.

> And \key is a C++ primitive, so replacing it with a Scheme function
> will not work.
>
> A nice way to make this work would then be to make the current key
> signature available to Scheme functions and make a generic function
> such as
>      b \ornament #'prall { cis }
> and then shortcuts (pralltoo foo) => (ornament #'prall foo) etc.

The key signature is only reliably in place during iteration.

> (By the way, couldn't this lead to mainstreaming articulate.ly ?)

I don't know what you mean by "mainstreaming", but articulate.ly is
licensed differently to LilyPond.

-- 
David Kastrup


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to