On Thu, Jan 21, 2016 at 8:52 AM, David Kastrup <[email protected]> wrote: > Kevin Barry <[email protected]> writes: > > > Reverting does not depend on whether the override happened in a \with > expression or with an explicit \override. However, the overrides in > context definitions and \with expressions _accumulate_ on the stack > while normal \override _replaces_ the topmost override. > > So if you want to get back a _previous_ context-specific value (many > grob property values are just established as global defaults and are > impervious to reverting) through reverting, you need to use > \temporary\override instead of \override. > > > 2) check what the default value is in the internals manual and use > > that as a value for an override > > If there _is_ a default value, reverting should get you there. > > Here is an example for accumulating overrides: > > > > > -- > David Kastrup > > Many thanks to Kevin and David Kastrup -
I was able to use "non-temporary" \overrides while being explicit about the context. That is, I used \revert StaffGroup.SpanBar.glyph-name while using regular \overrides, and it worked like a charm. Thanks again, Ralph -- Ralph Palmer Brattleboro, VT USA [email protected]
% Ossia above and below the staves
\version "2.19.33"
\language "english"
#(set-global-staff-size 20)
upper =
\relative c' {
\key g \major
\clef treble
\time 4/4
\override Score.NonMusicalPaperColumn.line-break-permission = ##f
d4^"main staff" d e e |
d4 d e e |
d4 d e e |
d4 d e e |
d4 d e e |
\break
d4 d e e |
d4 d e e |
d4 d e e |
d4 d e e |
d4 d e e |
\break
d4 d e e |
d4 d e e |
d4 d e e |
d4 d e e |
d4 d e e
\revert StaffGroup.SpanBar.glyph-name
\bar "|." |
}
lower =
\relative c' {
\key g \major
\clef treble
\time 4/4
\override Score.NonMusicalPaperColumn.line-break-permission = ##f
e4^"lower staff" e d d |
e4 e d d |
e4 e d d |
e4 e d d |
e4 e d d |
\break
e4 e d d |
e4 e d d |
e4 e d d |
e4 e d d |
e4 e d d |
\break
e4 e d d |
e4 e d d |
e4 e d d |
e4 e d d |
e4 e d d \bar "|." |
}
upperOssia =
\relative c'' {
s1*5 |
d4^"Facilité"_"upper ossia" e f g |
d4 e f g |
d4 e f g |
}
lowerOssiaA =
\relative c'' {
s1*10
\scaleDurations 4/3 {
\set Timing.measureLength = #(ly:make-moment 4/3)
g4^"Facilité"_"lower ossia" a b c
g4 a b c
g4 a b c
}
}
lowerOssiaB =
\relative c'' {
s1*10
\scaleDurations 4/3 {
\set Timing.measureLength = #(ly:make-moment 4/3)
c4 b a g
c4 b a g
c4 b a g
}
}
% Ossia score
\score {
\new StaffGroup
\with {
\override SpanBar.glyph-name = #"!"
}
<<
\new Staff
\with {
\remove "Time_signature_engraver"
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
}
<< \upperOssia >>
<<
\new GrandStaff
\with {
\override SpanBar.glyph-name = #"|"
}
<<
\new Staff << \upper >>
\new Staff << \lower >>
>>
>>
<<
\new GrandStaff
\with {
\override SpanBar.glyph-name = #"|"
}
<<
\new Staff
\with {
\remove "Time_signature_engraver"
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
%firstClef = ##f
}
<< \lowerOssiaA >>
\new Staff
\with {
\remove "Time_signature_engraver"
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
%firstClef = ##f
}
<< \lowerOssiaB >>
>>
>>
>>
\header {
piece = "Ossia : single staff above; grand staff below, with different timing"
}
\layout {
\context {
\Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
}
\context {
\Staff \RemoveEmptyStaves
\override VerticalAxisGroup.remove-first = ##t
}
\context {
\Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
}
}
% \midi {}
}
multiOssia.pdf
Description: Adobe PDF document
_______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
