bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: simultaneous tabstaff and staff curiosity


From: Francisco Vila
Subject: Re: simultaneous tabstaff and staff curiosity
Date: Sun, 11 Apr 2010 17:28:52 +0200

2010/4/11 -Eluze <address@hidden>:
>
> hi
> i just stumbeled over this curiosity:
>
> \version "2.13.17"
> <<
>  \context TabStaff {e, e g b}
>  \context Staff    {\clef "G_8" e, e g b}
>>>
> http://old.nabble.com/file/p28208169/bug%2Btabvoice.png tabstaff & staff
>
> the normal staff is missing and the key of the tabstaff is not correct!

Without knowing LilyPond internals in detail, I have a slight idea of
what's happening. \context does not always create a new context as
\new does. \context Staff is somehow compatible with the anonymous
TabStaff that \context TabStaff just created, and applied a clef
change to it, as well as some identical notes that tablature can not
help joining into single figures.

So, the normal staff is not missing, just there is no \new command to create it.

> % changing the order of the staffs works
> <<
>  \context Staff    {\clef "G_8" e, e g b}
>  \context TabStaff {e, e g b}
>>>

Here, under my short understanding, it looks like the anonymous
TabStaff is not confused with the anonymous plain Staff , perhaps it
is no that backwards compatible. The 2nd \context command does not
recognize the plain Staff as being a candidate to be reused, and
creates a new, different context.

> % explicitly naming the contexts works also
> <<
>  \context TabStaff = "tab" {e, e g b}
>  \context Staff    = "notes" {\clef "G_8" e, e g b}
>>>

Naming contexts is the natural way for them to avoid getting confused.
You could have used \new + \new instead, as this command does not
reuse existing contexts.

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com




reply via email to

[Prev in Thread] Current Thread [Next in Thread]