Re: [tablatures] some arpeggios still showing up in default TabStaff

[ Thread Index | Date Index | More lilynet.net/tablatures Archives ]


Il giorno mer, 04/05/2011 alle 09.31 +0200, Marc Hohl ha scritto:
> Am 03.05.2011 23:27, schrieb Federico Bruni:
> > It looks like an inconsistency.
> > What do you think?
> Yes, this is an inconsistency. These commands are defined in
> ly/property-init.ly:
> 

So it should be fixed somewhere. I guess it's an easy job for you...

> As you can see, arpeggioBracket \reverts the changes taken for
> tablature.
> I think one quick solution would be to include this part in your
> document and replace "Arpeggio" by "Staff.Arpeggio" to make
> sure the changes apply to normal staves only.
> > Let me add one more thing.
> > Let's say I want to use \arpeggioBracket to group small barré inside a bracket.
> > I want to see the bracket in Staff only, so if you are going to hide also these arpeggios I'll be ok.
> >

This change works fine:

arpeggioBracket = {
  \revert Arpeggio #'X-extent
  \override Staff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
  \override TabStaff.Arpeggio #'stencil = ##f
}

But then I need to change arpeggioNormal as well (specifying the Staff
context in \revert Arpeggio #'stencil was not enough, I had to add the
override...I don't know why):

arpeggioNormal = {
  \revert Staff.Arpeggio #'stencil
  \override TabStaff.Arpeggio #'stencil = ##f
  \revert Arpeggio #'X-extent
  \revert Arpeggio #'arpeggio-direction
  \revert Arpeggio #'dash-definition
}

> > But what if I want some kinds of arpeggio to be printed on TabStaff (normal and arrowed) and some others not?
> > Can I set different settings for each one?
> Well, you can change the appearance for TabStaff.Arpeggio #'<some 
> property> and
> Staff.Arpeggio #'<some property> independently, but this could mean 
> you'll have to
> write some more shortcuts like the ones defined above for better usability.
> 

I'm not sure if I want some arpeggio to appear in TabStaff. And in case
I prefer using the revert in the layout block instead of changing these
commands.

To sum up, these are the changes needed to always hide arpeggios in
TabStaff.  Probably it's not the best way, but it seems to work.

arpeggioNormal = {
  \revert Staff.Arpeggio #'stencil
  \override TabStaff.Arpeggio #'stencil = ##f
  \revert Arpeggio #'X-extent
  \revert Arpeggio #'arpeggio-direction
  \revert Arpeggio #'dash-definition
}
arpeggioBracket = {
  \revert Arpeggio #'X-extent
  \override Staff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
  \override TabStaff.Arpeggio #'stencil = ##f
}
arpeggioParenthesis = {
  \override Staff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-slur
  \override TabStaff.Arpeggio #'stencil = ##f
  \override Arpeggio #'X-extent = #ly:grob::stencil-width
  \revert Arpeggio #'dash-definition
}
arpeggioParenthesisDashed = {
  \override Staff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-slur
  \override TabStaff.Arpeggio #'stencil = ##f
  \override Arpeggio #'X-extent = #ly:grob::stencil-width
  \override Arpeggio #'dash-definition = #'((0 1 0.4 0.75))
}




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/