> 1) Page 3, bar 20. The hairpins and \p in Alto and Tenor goes below the
> staves even though I have specified Voice.dynamicDirection = \up. Those
> two staves have a second voice in them, while Soprano and Bass do not.
> I wonder if the second voice is causing the problem.
The problem is that \stemboth sets voice.verticalDirection = \up,
which seems to override all settings of dynamicDirection
(bug!?). The easiest solution is to add the following
redefinitions at the top of your file:
stemup = \property Voice.stemVerticalDirection = \up
stemboth= \property Voice.stemVerticalDirection = \center
stemdown = \property Voice.stemVerticalDirection = \down
> 2) Page 3, bar 19. The spacing of the word "Tempo I" from the top of
> each staff seems different, yet they have the same value for
> Voice.textScriptPadding.
Yes, the padding is counted from the topmost item below
the text, which is the stem in the soprano and bass parts
and the top staff line in the two middle voices. (To be
precise, the padding is measured from the 'p', which,
itself gets its position as described above).
> 3) Page 6, bar 20. The hairpin in the Bass clashes with the tuplet
> number. By the way, are tuplet brackets supported? I have never seen
> them.
I guess the easiest solution is to set the dynamicPadding
to get the hairpin above the tuplet number.
The default is to print tuplet brackets only if there isn't
a beam. If you set Voice.tupletBracketVisibility = ##t,
you always get brackets.
> 4) Page 9, bar 46. The \f in the Bass cannot be specified a height so
> that it won't clash with the upper G. You can see in the source that I
> have specified a very large value for Voice.textScriptPadding in
> attempting to push the \f upward.
Try dynamicPadding instead of textScriptPadding.
> 5) Processing HaveMercoOnMe_OGod_2.ly produces the following warning:
>
> HaveMercyOnMe_OGod_2.ly:657:53: warning: no one to print a tuplet start
> bracket:
> _4 _8. A16 -- wake,2. __ harp8 and lyre! _ \times
> 2/3 {I8 will8 a8}
> --
>
> I want to enter the lyrics matching the triplet rhythm in the voice.
> Also, the duration "8" in the tuplet is not carried over, that is why I
> have input an explicit "8" for each syllable. Am I doing it right?
The warning is just a (misdirected) warning, nothing to worry about.
\times 2/3 {I8 will a } should work, note the space before the
right brace, otherwise you get a parse error (bug!?).
> 8) Version 43. lily does not understand the translator
> "Staff_margin_engraver". Is it removed?
Check what convert-mudela will do to your file, or read the
CHANGES file.
> 1) Change time/key signatures in the middle of a piece. I don't know
> how to do this, so I have splitted the score into two files. Even
> though page number remains in a series, bar numbers do not.
What's the problem with \time 4/4; \key g \minor;
at the correct spot? Don't you want the reminder
(or whatever you'd call it) at the end of the previous
bar?
> 2) Change the starting number of bar numbering.
The weird thing is that I don't get any bar numbers
printed when I run your file through 1.3.44 (except
when I add the bar_number_engraver also the the
StaffContext which gives far too many copies of the
bar numbers).
The bar number is set with the property
Score.currentBarNumber
(not described in the documentation, but in
input/test/bar-number.ly)
> 3) Is it possible to change the behaviour of certain properties to bind
> to a system as opposed to the staff for the whole score? For example,
> the lyrics line for the Bass starting on page 4 have a larger spacing
> from the staff when compared to other voices. This is because it has to
> avoid clashing the fermata in page 9. It would be nice if I can defer
> the change until bar 46 in page 9. A few other properties are also
> useful to have this behaviour, such as StaffVerticalExtent.
You could set the property in a certain bar and reset it
some bars later. I guess the spacing is determined by the
current property value at the line end (haven't tried).
If you don't insert \break, it might be hard to know where
the line breaking actually will occur, so it's hard to know
exactly at what bars to set and reset the values.
> 4) How to adjust the space between the two staves in a PianoStaff
> context?
Either use StaffExtraVerticalExtent or take a look at
ly/engraver.ly how the default space is set for PianoStaffs.
> 5) Page 3, bar 18. I am using the \addlyrics feature there, and the
> word extension (the underline) extends past the rest. Ideally, it
> should stop at the dotted half note, or at most right at the rest, but
> not past the rest. In this case, the visual effect is minor. However,
> if I use \addlyrics in passages which have multiple bars of rests (e.g.
> page 6, Tenor, bar 18-20), the line then would not make sense. What
> about modifying the syntax of "__" such that it can accept a duration?
> In the case of bar 18, I would have "God, __4*9". If duration is not
> specified, then the default behaviour is used. An even more useful
> scenario is the end of page 3, where a word extension would go all the
> way to the end of the system even if there is no "next note" for the
> line to end. Right now, I cannot find a way to put a word extension
> there.
Actually, I think the current word extension behaviour is wrong,
the line should end at the end of the last note of the melisma,
not at the beginning of the note after.
> 6) Page 6, bar 21. This is an example of why I suggest to have hairpins
> to be able to stop at a barline. In this case, it would be nice if the
> hairpins stop at the end of bar 20.
Agreed!
> 7) About hairpins. Currently, all hairpins are horizontal, and the
> location is determined by lily. (The only thing I can set is whether it
> is above or below a staff.) Why is the syntax for hairpins designed not
> to accept above/below staff, slant, and spacing? Consider a 20-tuplet
> of a scale running up. I could have a crescendo that starts from the
> first note and ends on the last note, above the tuplet, is slanted such
> that the lower line of the hairpin runs parallel to the beam of the
> tuplet, and is specified a spacing above the tuplet. Compare this to a
> horizontal crescendo that is also placed above that tuplet. This
> crescendo will have a large gap between its beginning and the first note
> of the tuplet.
You could set the vertical position with dynamicPadding.
> 8) Page margins. The default margin for all 4 sides are too much for me
> (e.g. in this case, where I wanted to cram the voice and the piano parts
> together into one score, but lily decides that there is not enough space
> and only prints one system per page). I tried changing textheight to 11
> \in, but the whole score will shift up such that part of the title is
> clipped. Is there any way around it?
I think ly2dvi doesn't take the header height into account when
calculating the vertical margins. The intension is to give
equal top and bottom margins. You could always set the margins
manually, running ly2dvi -k, editing the generated <file>_ly*.tex
LaTeX wrapper file and then processing it directly with LaTeX.
I'll take a look at ly2dvi and try to fix the problem.
> 9) Graphical clashes. Sometimes I see that slurs and hairpins tend to
> clash with texts, especially \textscript. Can such clashes be detected
> and avoided?
For now you have to fiddle manually with the xxxPadding
properties.
Hope I managed to help with most of your problems, at least
so you could get something printable before your deadline.
/Mats