lilypond-devel
[Top][All Lists]
Advanced

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

Re: Issue 3720: Built-in templates for SATB vocal scores (issue 41990043


From: Devon Schudy
Subject: Re: Issue 3720: Built-in templates for SATB vocal scores (issue 41990043)
Date: Sun, 15 Dec 2013 15:06:36 -0500

Keith wrote:
> This was intended not as an interface to a built-in bulletproof engine, but
> rather a template that users can adopt and change.

Isn't the template-to-modify use case already covered by the SATB
templates in the Learning Manual and LSR? ISTM using two include files
is harder for a beginner than modifying a template.

address@hidden wrote:
> > * The output isn't accessible for the user to modify (by e.g.
> > \transpose).
>
> ?

I often apply music functions like \transpose, \articulate and
\unfoldRepeats to the whole contents of a score, e.g.

\score { \transpose c' g \new ChoralStaff << \triplum \duplum \tenor >> }
\score {
  \articulate \unfoldRepeats << ... >>
  \midi { \context { \Staff midiInstrument = "oboe" } }
}

With s-a-t-b.ily, this isn't possible, because the user has no access
to the final music-expression. Putting the music-function before the
\include doesn't work...

\transpose c' g
\include "s-a-t-b.ily"

...because \score isn't a music expression (and there are definitions
before it).

>> If there's library code for SATB,
>
> There isn't

By “library code”, I meant the contents of this patch: it adds code to
Lilypond's built-in library of include files.

> Previously I used to do this, removing a staff context,
> adding lyrics contexts, adding or removing piano staves
> etc, as required.  This took time and was error-prone.
> With these templates all that is unnecessary.  I find
> it remarkably effective; my hope was that many other
> similar users would do so too.

I agree that it's useful to separate the layout from the content, and
SATB is so common that it's worth having built-in support. I just
don't think requiring the user to define certain variable names and
include a file in place of \score is a good interface to it. It's
compatible with your style of writing scores, but not with other
reasonable styles.

I'd rather support the same thing through music functions:

\score {
  <<
    \satbTwoStaves << \soprano \alto \VerseOne \VerseTwo \tenor \bass >>
    \pianoStaff << \rh \pianoDynamics \lh >>
  >>
}

...where \satbTwoStaves creates a ChoirStaff and staves and assigns
the music-expressions to them appropriately (keeping lyrics separate),
and \pianoStaff makes a PianoStaff etc. (Piano scores are another very
common thing that's a bit complicated for beginners, so it may be
worth having a convenience for them.)

> perhaps a better word to distinguish these templates from
> the previous ones could be found.

'Framework'? That's often used for this sort of thing.



reply via email to

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