I *think* I've found a kind of bug..
I was tryin' to suppress a couple of bars in a StaffGroup (made of one Staff and one TabStaff), using \stopStaff

I've found out, after several tries (see attached file), that the problem arises when I use \stopStaff \startStaff in a score which has a TabStaff included in a StaffGroup.
In all the other cases it works fine.

The error message links to a line in tablature.scm

Please review the file and tell me if I've done something wrong or if that could be some kind of bug.

Thanks!
Federico
--
http://gnurag.net/blog/
http://fsfe.org/
http://groups.fsf.org/wiki/LibrePlanetItalia

\version "2.13.9"

%% TODO
%% \startStaff \stopStaff give problems if in StaffGroup there's TabStaff
%% ? issue with tablature.scm ?

%% OK - 1 voice 1 variable, StaffGroup works
music = \relative c' {
  c4 b a2
  e4 d c2
  \stopStaff
  s1
  s1
  s1
  %% Removing the last bar of the Staff.. why is it dashed?
  %% I need to remove also the line that connects the two staves..
  \override Staff.BarLine #'stencil = ##f
  \startStaff
}

\new StaffGroup <<
  \new Staff { \music }
  \new TabStaff { \music }
>>


%% Problem arises with 2 voices 2 variables

upper = \relative c' {
  c4 b a2
  e4 d c2
  \stopStaff
  s1*3
  \override Staff.BarLine #'stencil = ##f
  \startStaff
}

lower = \relative c {
  c1
  g1
  s1*3
}

% OK - Staff only
\new Staff <<
    \context Voice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
    \context Voice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
  >>

% OK - TabStaff only
\new TabStaff <<
    \context TabVoice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
    \context TabVoice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
  >>

%% OK - Staff and TabStaff together but without StaffGroup
<<
\new Staff <<
    \context Voice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
    \context Voice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
  >>

\new TabStaff <<
    \context TabVoice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
    \context TabVoice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
  >>
>>

%% OK - two staves in StaffGroup
\new StaffGroup <<
  \new Staff <<
    \context Voice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
    \context Voice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
  >>
  \new Staff <<
    \context Voice = "upper tab" { \clef "moderntab" \voiceOne \upper }
    \context Voice = "lower tab" { \clef "moderntab" \voiceTwo \lower }
  >>
>>

%% PROBLEM: if I join Staff and TabStaff in StaffGroup I've got an error in tablature.scm
% /home/fede/usr/share/lilypond/2.13.9/scm/tablature.scm:103:28: In procedure ly:grob-property in expression (ly:grob-property staff-symbol (quote line-count)):
% /home/fede/usr/share/lilypond/2.13.9/scm/tablature.scm:103:28: Wrong type argument in position 1 (expecting Grob): ()
%
% Uncomment the following lines to test it:
% \new StaffGroup <<
%   \new Staff <<
%     \context Voice = "upper guitar" { \clef "G_8" \voiceOne  \upper }
%     \context Voice = "lower guitar" { \clef "G_8" \voiceTwo  \lower } 
%   >>
%   \new TabStaff <<
%     \context TabVoice = "upper tab" { \clef "moderntab" \voiceOne \upper }
%     \context TabVoice = "lower tab" { \clef "moderntab" \voiceTwo \lower }
%   >>
% >>

\paper {
  ragged-last = ##f
}
_______________________________________________
lilypond-user mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to