This commit
- extends the parser to accept the following syntax:
\tempo numA ~ numB
- changes the 'tempoUnitCount property to accept either
a number or a pair (in which case tempoWholesPerMinutes
will be set by averaging the two numbers)
- adapts the format-metronome-markup translation function
to print the tempo range properly
- adds a metronome-range.ly regtest
- adds relevant display-lily methods, and updates this
regtest as well.
PartCombine: part-combine texts on first real note rather than rests
-) If the context property partCombineTextsOnNote is set, the part-combine
texts are not printed immediately if there is a rest or skip, but on
the next following note. If the voice contains a note, they are printed
immediately.
This is needed if one voice has a full measure rest and the other e.g.
r2 r4 c4.
-) The event triggering the part-combine text is cached in that case
and the Part_combine_engraver now also listens to note events. The
texts are then created at the first moment when a note is encountered.
Do not silently clear a tie attempt, but notify the user that a tie
could not be created (typically either due to a typo or due to a missing
tieWaitForNote)
In a chord, a tie is only unterminated if none of the notes of the
chord create a tie. All other notes of that chord are possible
candidates for a tie start, but not neccesary. For this, I simply
suppress the warning if a note from the same moment already caused
a tie.
E.g. in <c e g>~ g, the g will create a tie, but the c and e should
not trigger a warning!
FiguredBass: Extenders for figs of different width should stop at same position
FB extenders use the extent of the hidden figure grob, so extenders
of different figures might stop at different positions. Ideally, the
note of the associated staff should be retrieved and used as the
position to stop the extender. However, FB can also exist standalone
without any attached staff.
So, as a workaround, this patch simply sets the text of all hidden
figures to 0, so they all have the same extent and all extenders will
stop at the same position.
Doc: cleanup @file{}, take 2: remove all @/ escaping sequences.
For now, remove all @/ sequences from @file references.
New line-breaks will be introduced later with an automatic
rulein order to make the syntax more consistent.
PartCombine: part-combine texts on first real note rather than rests
-) If the context property partCombineTextsOnNote is set, the part-combine
texts are not printed immediately if there is a rest or skip, but on
the next following note. If the voice contains a note, they are printed
immediately.
This is needed if one voice has a full measure rest and the other e.g.
r2 r4 c4.
-) The event triggering the part-combine text is cached in that case
and the Part_combine_engraver now also listens to note events. The
texts are then created at the first moment when a note is encountered.
Do not silently clear a tie attempt, but notify the user that a tie
could not be created (typically either due to a typo or due to a missing
tieWaitForNote)
In a chord, a tie is only unterminated if none of the notes of the
chord create a tie. All other notes of that chord are possible
candidates for a tie start, but not neccesary. For this, I simply
suppress the warning if a note from the same moment already caused
a tie.
E.g. in <c e g>~ g, the g will create a tie, but the c and e should
not trigger a warning!
FiguredBass: Extenders for figs of different width should stop at same position
FB extenders use the extent of the hidden figure grob, so extenders
of different figures might stop at different positions. Ideally, the
note of the associated staff should be retrieved and used as the
position to stop the extender. However, FB can also exist standalone
without any attached staff.
So, as a workaround, this patch simply sets the text of all hidden
figures to 0, so they all have the same extent and all extenders will
stop at the same position.
Allow music identifiers in \addlyrics (no need for braces any more)
In particular, so far the following did not work:
\new Staff { \m \addlyrics \l }
Instead, one had to use braces around \m and \l:
\new Staff { {\m} \addlyrics {\l} }
This patch extends the parser to allow music identifiers,
so that no braces are needed any more.
Graham Percival [Fri, 19 Nov 2010 04:30:41 +0000 (04:30 +0000)]
manual convert-ly: minimum-Y-extent (1298+1299).
Patch by Keith O'Hara.
cary.ly used Y-extent to increase space for staves, use
markup-system-spacing instead.
orchestra.ly used Y-extent to created a custom context for rows
rehearsal and tempo marks. The new way to creat such a row is to
give the context a staff-affinity, and put the spacing
requirements into nonstaff-unrelatedstaff-spacing, etc. This file
also had its own definition of the \Dynamics context, which is now
built-in.
percussion.itely used Y-extent to produce a spacing to the lyrics
line very similar to what we now get by default.
spacing.itely used Y-extent among other \overrides in an example
ancient.itely used Y-extent to make an invisible staff take up no
space. The markup can stand alone with no staff. (If for some
reason a @lilypond must contain notes or skips, then just delete
the 2 lines with minimum-Y-extent.)
The relevant portion of gregorian.ly defined a layout for printing
naked neumes, with no visible staff. The function of that line,
setting the height of that invisible staff to zero, is not
actually used anywhere in the Google-able portion of lilypond.org,
but the 2.13 equivalent gives the same output the old method, in
case anyone uses this layout to make a vertical stack of naked
neumes.
Graham Percival [Wed, 17 Nov 2010 22:09:40 +0000 (22:09 +0000)]
Indent lily-git.tcl
This is the only tcl file in our repo. It doesn't have a long
history, nor is this file at all important to compiling+debugging
lilypond. As such, I feel justified in tossing it through emacs'
indentation.
This does not mean that I think it is appropriate to discuss the
indentation of any other type of file in git. If anybody
complaints about indenting this file, I will remove this commit
without question, and we will keep on using the previous
inconsistently-indented version until we discuss code indentation
as part of GOP.