[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