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. _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user