[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: code suggestions
From: |
James E. Bailey |
Subject: |
Re: code suggestions |
Date: |
Fri, 10 Oct 2008 09:32:25 +0200 |
On 10.10.2008, at 09:03, David Stocker wrote:
Hello everyone.
Is there anyone on the list who wouldn't mind taking a look at some
code and offering general suggestions on writing input files? I've
now successfully typeset several piano scores and would like some
feedback from experienced users about the structure of my .ly files.
I'm still relatively new to LilyPond (but not to music typesetting).
As a study, I'm setting some of the preludes and fugues from Dover's
1983 reprint of the Bach-Gesellschaft edition of Bach's /Well
Tempered Clavier/. In particular, I'm after suggestions for the
actual code structure and things I may do to make it simpler and
more elegant. I'm already aware of any typesetting/collision issues
in these draft copies and will consult the documentation (or user
forum) for resolutions to typesetting issues.
Thanks in advance,
I'm not the most advanced user, but I would suggest putting the tempo
marks (in future) in their own variable. For one, you can input the
music all at once, as just music, and just throw the tempo marks in
later. Also, if you use templates, it makes it easy to just replace
the tempo mark in the template with whatever your current project
requires.
Also, (and I'm realising this is probably one of the most confusing
aspects of the documentation) the multi-voice structure <<{}\\{}>>
automatically puts the first {} as \voiceOne and the second {} as
\voiceTwo and even puts it back as \oneVoice once it's done. So, if
you're going to use that structure to do polyphony, there's no need to
specify the voices. You only need to do that if you use <<{\voiceOne}
\new Voice {\voiceTwo}>>\oneVoice, in which case, all of that is
necessary for the same multi-voice construct. The biggest advantages I
find of "explicitly instatiating the voices" (which is what the second
version does) is that you can have a slur or tie into or out of the
multi-voice construct c4( <<{\voiceOne d4) \new Voice {\voiceTwo a4}>>
\oneVoice, and that you can name the second voice \sopranoI = {c4
<<{\voiceOne d4} \new Voice = "sopranoII {\voiceTwo a4}>>. Redundancy
doesn't make your input file worse, but understanding the particulars
of single-voice polyphony makes it easier to represent exactly what
you want, and you may later need to use one construct or another.