Luigi Cataldi wrote:

> Hi all,
> this is my problem.
> A cantata is made of following several .TEX files:
>
> CS01.TEX (5 staves system with lyrics on top staff, i.e. the fifth from
> bottom)
> CS02.TEX (4 staves system with lyrics on top staff, i.e. the fourth from
> bottom)
> CS03.TEX (5 staves system with lyrics on top staff, i.e. the fifth from
> bottom)
> CS04.TEX (5 staves system with lyrics on top staff, i.e. the fifth from
> bottom)
> CS05.TEX (a text file, with only one musical excerpt for vocal extension: 1
> staff)
> and so on.
>
> Werner suggested to me to build the following CS00.TEX file:
>
> \startmuflex
> \let\startmuflex\empty
> \let\endmuflexsav\endmuflex
> \let\endmuflex\endinput
> \input cs01
> \input cs02
> \input cs03
> \input cs04
> \input cs05
> \input cs06
> \input cs07
> \endmuflexsav
> \bye
>
> The resulting CS00.DVI file unfortunately has those errors:
>
> 1) when CS03 starts, lyrics are not only on fifth staff of the system, but
> olso on fourth (filled of question mark, of course);
>
> 2) the musical excerpt on CS05, instead of the right only one staff, is
> placed on a 5 staves system, with unexpected braket and instrument's names;
>
> 3) page layout is wrong for the presence of vertical additional sapace of
> the wrong lyric lines.
>
> Has anyone some suggestions?

I had similar problems with my one of my own scores having varying number of
staves per system. The solution - also invented by Werner - was to redefine
\interstaff before each new \input statement:

\let\interstaffSAV\interstaff
\def\restoreALL{
  \let\interstaff\interstaffSAV
  \grouptop10\groupbottom1\maxdimen
  \grouptop20\groupbottom2\maxdimen
}
% Julesang
\restoreALL\input lars
%
% Aaret
\restoreALL\input sar
%
% Ivente Julenat
\restoreALL\input jaeg
%
% Miraklet
\restoreALL\input mon
%
% Vinterens tunnel
\restoreALL\input sor
%
\endmuflexsav
\bye

Regards
--
Christian Mondrup, Computer Programmer
Scandiatransplant, Skejby Hospital, University Hospital of Aarhus
Brendstrupgaardsvej, DK 8200 Aarhus N, Denmark
Phone: +45 89 49 53 01

Reply via email to