lilypond-user
[Top][All Lists]
Advanced

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

Re: variables for specific kinds of markup?


From: Marc Evanstein
Subject: Re: variables for specific kinds of markup?
Date: Mon, 17 Sep 2018 18:14:31 +0000

Thanks so much – changing it to define-event-function worked perfectly. Is a 
markup considered an "event" rather than "music"? Was define-music-function 
somehow returning that event attached to empty music or something?

At any rate, glad to hear that this is getting simpler in the near future, and 
many thanks for all the help!

September 17, 2018 8:01 AM, "David Kastrup" <address@hidden> wrote:

> "Marc Evanstein (formerly Evans)" <address@hidden> writes:
> 
>> Hi all,
>> 
>> I'm trying to create a variable to handle a certain type of markup
>> text. For instance, I'd like percussion strikings to be in small caps
>> above the staff, and what I really want is to define some sort of
>> macro that replaces all instances of "\striking { theText }" with
>> "^\markup\smallCaps { theText }".
>> 
>> The following clearly doesn't work (much as I would like it to):
>> 
>> striking = ^\markup\smallCaps
> 
> Current master will allow
> 
> striking = ^\markup \smallCaps \etc
> 
>> From searching around, it seems like I need to define a function using
>> scheme. I tried this:
>> 
>> striking = #(define-music-function (parser location text)
>> (string?)
>> #{
>> ^\markup\smallCaps { #text }
>> #})
>> 
>> ... and while the single line "\striking mallet" seems to render the
>> word mallet as a smallCaps markup above a dummy staff, when I try to
>> incorporate it into a series of notes, e.g.:
>> 
>> {c'4 \striking mallet d'4 e'4 f'4 }
>> 
>> I get an "error: unexpected post-event". What exactly does that mean?
> 
> Current master would have worked as expected for this use...
> 
> At any rate, you are pretty close (whether we are talking about 2.18 or
> 2.19). Just use define-event-function instead of define-music-function
> .
> 
> And rejoice that LilyPond will have fewer stumbling blocks in the near
> future. Or at least will be better at hiding the stumbling blocks so
> you'll just get hit by them when digging deeper.
> 
> --
> David Kastrup


"I'm a random guy. I shake a hand and make a friend. I don't do egotistical 
things." 
– Vanilla Ice



reply via email to

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