lilypond-user
[Top][All Lists]
Advanced

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

Re: Custom caesura command


From: Matthew
Subject: Re: Custom caesura command
Date: Thu, 06 Feb 2014 21:18:11 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

On 02/05/2014 09:36 PM, Paul Scott wrote:
> On Wed, Feb 05, 2014 at 09:17:53PM -0800, Matthew wrote:
>> Not wanting to type a long \override command in every staff I want a 
>> caesura, I
>> tried defining a command to shorten things for me :) . This is what I've 
>> tried
>> so far:
>>
>> caesura = {
>>   \override BreathingSign.text = \markup { \musicglyph 
>> #"scripts.caesura.straight" }
>>   \breathe
>>   \override BreathingSign.text = \markup { \musicglyph #"scripts.rcomma" }
>> }
>>
>> As you might guess, it doesn't work. Specifically, the breathe mark that 
>> appears
>> is an rcomma, which also happens when I inline this. I guess this is because 
>> I
>> need another note to appear before the next override. It works if I remove 
>> the
>> rcomma override, though I'd like to "un-override" BreathingSign.text within 
>> the
>> command.
>>
>> My question is, is there a way to accomplish this? Some way to make that 
>> command
>> there take the next note as a parameter? I realize I could come up with an
>> \uncaesura command, though I'd rather keep this to one command if possible. I
>> wouldn't be surprised if a proper Scheme function will be needed to this,
>> actually.
> 
> Here's what I use:
> 
> caesuraOn = \override BreathingSign #'text = 
> #(make-musicglyph-markup "scripts.caesura.straight") 
> 
> caesuraOff = \revert BreathingSign #'text 
> caesura = { \once \caesuraOn \revert BreathingSign #'Y-offset \breathe }
> breath  = { \caesuraOff \override BreathingSign #'Y-offset = #5 \breathe }
> 
> I then use \caesura or \breath where I need them.
> 
> HTH
> 
> Paul Scott
> 
> 

Works great, thanks Paul. Funny enough though, I had a similar idea pop into my 
head
at one point, except \breath was called \rcomma, and there wouldn't've been 
\caesura*
commands.



reply via email to

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