Re: [tablatures] some arpeggios still showing up in default TabStaff |
[ Thread Index |
Date Index
| More lilynet.net/tablatures Archives
]
On 5/8/11 1:11 PM, "Federico Bruni" <fedelogy@xxxxxxxxx> wrote:
> 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))
> }
>
My preference would be to have arpeggioXXX only apply to Staff.Arpeggio, and
have no TabStaff stuff in these commands at all.
so
arpeggioNormal = {
\revert Staff.Arpeggio #'stencil
\revert Staff.Arpeggio #'X-extent
\revert Staff.Arpeggio #'arpeggio-direction
\revert Staff.Arpeggio #'dash-definition
}
and so forth. And then put a note in the docs that the arpeggioXXX commands
do not apply to TabStaff.
Thanks,
Carl