It is because a score block, ie. \score { ... } can only contain the following: - one music expression OR one score identifier (a score defined as a variable)
- THEN zero or more header, output definition or object_id_setting

\set Score.skipBars = ##t in itself is a music expression, so in your first snippet the score would contain 2 music expression (the \new Staff and the \set). It is not allowed.
However you could have used

\score { <<
 \new Staff = bla <<
   \new voice =blu {\voiceOne \Sopran}
   \new voice =blu {\voiceTwo \Alt} >>
 \set Score.skipBars = ##t

}

because << will mean simultaneous music and will make its content 1 expression



Werner írta:
Hello,
I've written a file containing a score with a structure like:

\score {
  \new Staff = bla <<
    \new voice =blu {\voiceOne \Sopran}
    \new voice =blu {\voiceTwo \Alt} >>
}

Wanted to put the \set Score.skipBars = ##t
command in.

This:
\score {
  \new Staff = bla <<
    \new voice =blu {\voiceOne \Sopran}
    \new voice =blu {\voiceTwo \Alt} >>
\set Score.skipBars = ##t
}

brings syntax error unexpected \set

This

\score {
  \new Staff = bla <<
    \new voice =blu {\voiceOne \Sopran}
    \new voice =blu {\voiceTwo \Alt}
\set Score.skipBars = ##t >>
}

works.

For me this is very strange.
Also the documentation gives no hint about...
Could somebody explain that?

WM



_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user




_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to