Web: add "Free Music Now" article to publications list
Originally written in French, this article was published
in a French music-conservatories magazine in September 2009.
I have translated it and posted it on LilyNet, with an
original untranslated testimony by Francisco.
I hope this qualifies as an "official" publication, since
it has been widely distributed in French music schools.
Graham Percival [Sat, 9 Oct 2010 17:47:22 +0000 (18:47 +0100)]
Make ASSERT_LIVE_IS_ALLOWED() behave as a function
David Kastrup helpfully pointed out that this macro expanded into
multiple statements, whereas it looks like a function call. For
example, something like this:
if (condition) ASSERT_LIVE_IS_ALLOWED(); else
could fail quite badly.
The "do {...} while (0)" is an idiom that compilers optimize away,
but allows the macro to behave as a function.
Trevor Daniels [Sun, 10 Oct 2010 10:02:05 +0000 (11:02 +0100)]
Doc: NR 2.1 Vocal: remove one TODO and add four more :(
- \lyrics is not documented anywhere else, and is
deprecated
- Issue 329 is marked Verified so is presumably fixed.
Even if it isn't, we don't document bugs. This example
shows why not. It takes years for the docs to catch up.
Graham Percival [Wed, 6 Oct 2010 16:33:35 +0000 (17:33 +0100)]
Style: disable removal of "gratuitous" blocks.
This rule removed any {} which were around a single statment, but
this removal broke any .h file with short inline function
definitions (such as a "getFoo() { return foo; }").
The templates in flower/include/std-vector.hh were hit
particularly hard by this rule.
James Lowe [Mon, 4 Oct 2010 19:35:12 +0000 (20:35 +0100)]
Doc: more removal of \new Score in LM
Tracker 1033
Changed \new score to use \score { } construct.
For example that used \new Score \with, changed example to use \score with
\layout { \context {\Score }}} and moved @lilypond example to section that this
was now relevant to.
Joe Neeman [Fri, 1 Oct 2010 23:10:54 +0000 (16:10 -0700)]
Fix drastic overestimation of staff heights.
The outside-staff simulation in f530eeb5bba has severe problems
when there many outside-staff objects per bar. This patch
mitigates the problems by assuming that outside-staff objects
don't intersect with each other (but only with the staff).
Joe Neeman [Tue, 28 Sep 2010 21:22:46 +0000 (14:22 -0700)]
Improve pure-height estimations with outside-staff-priority.
Since outside-staff placing using outside-staff-priority can
only be done properly when horizontal positioning is available,
the pure-height estimates did not take outside-staff-priority
into account at all. This commit does a better approximation
to outside-staff placement, in which the outside-staff placements
are computed assuming that the outside-staff grobs in one bar
do not collide with those in the next bar.
The estimates are still bad for RehearsalMark and other grobs
that live at the Score level.
Part-combine: Add a way to override the part-combination decision
Add functions partcombineApart[Once], partcombineChords[Once],
partcombineUnisono[Once], partcombineAutomatic[Once] etc. to tweak the
decision of the part-combiner.
Internally, they are implemented using PartCombineForceEvent
These events are not processed by an engraver as most other events,
but rather directly in Scheme by the part-combiner.
don't return prematurely if no fingerings have been created, since this
allows listened events to build up from skipped music, resulting in
the creation of extra fingerings on the first visible notehead
Neil Puttock [Sat, 25 Sep 2010 23:43:29 +0000 (00:43 +0100)]
Fix #372.
Thanks to Carl for providing the inspiration for this patch.
* input/regression/auto-beam-partial-grace.ly:
new regtest
* input/regression/display-lily-tests.ly:
remove TODO for scaled duration \partial test
* lily/partial-iterator.cc (new file):
use a simple music iterator to calculate the correct measurePosition
setting, and warn for \partial used after the start of a score
* scm/define-music-display-methods.scm:
simplify display method for partial: since the new music object `PartialSet'
carries the original duration from the parser, extra code for converting
moments to durations is no longer required