lilypond-user
[Top][All Lists]
Advanced

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

Re: Custom caesura command


From: Paul Scott
Subject: Re: Custom caesura command
Date: Wed, 5 Feb 2014 22:36:18 -0700
User-agent: Mutt/1.5.21 (2010-09-15)

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





reply via email to

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