2010/4/11 -Eluze <elu...@gmail.com>: > > 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 _______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond