Mike Solomon [Thu, 25 Aug 2011 07:32:53 +0000 (09:32 +0200)]
Fixes issue 1628.
Changes the order in which callbacks are chained in the slur engravers,
allowing the correct callback order for articulations that are added
later on in a timestep.
Mike Solomon [Thu, 25 Aug 2011 07:16:51 +0000 (09:16 +0200)]
Fixes issue 1328.
Finds the local minimum or maximum of a Bezier curve along the X
axis in the range of an intersection and shifts intersecting
curves up over this range plus slur padding.
Adds default slur padding to all scripts, as this algorithm makes
them almost just touch with the slur whereas the previous one already
had a bit of padding built into it because it was a generous approximation.
Ian Hulin [Mon, 22 Aug 2011 10:01:13 +0000 (11:01 +0100)]
T1349 - Fix load order for running with Guile V2
1. Split load list into components (init-scheme-files-lib, *-used, *-body
and *-tail, and append them together before doing load.
2. Split markup macros from markup.scm to new file markup-macros.scm
makes upper loop smaller,
bottom crook sticks less,
vertical line is more evenly curved.
Also the upper loop is slightly bigger
in _change version of the clef than
in the regular version, to fit stafflines well.
Lilypond-book: Implement MusicXML support in lilypond-book
This patch adds support for including MusicXML files into
documents processed by lilypond-book. In particular:
-) HTML: <musicxmlfile options>filename.xml</musicxmlfile>
-) TeX: \musicxmlfile[options]{filename.xml}
-) Texinfo: @musicxmlfile[options]{filename.xml}
Since MusicXML is so verbose, it doesn't make much sense to
support inline MusicXML.
The snippets are basically processed like a lilypond file,
except that musicxml2ly is run on them (with the options given
for the snippet) and the returned lilypond code is then processed
as if it were the original contents of the file.
For the output links, however, the html and texinfo pages will
link to the .xml/.mxl file rather than the intermediate .ly file.
If a file has the extension .mxl, it is assumed to be a compressed
MusicXML file (alternatively, the 'compressed' snippet option can
be given).
What's missing is proper documentation in "Usage". I'm unsure
how to document such new snippet types...
Patrick McCarty [Thu, 18 Aug 2011 06:18:46 +0000 (23:18 -0700)]
Guile v2: Set 'show-file-name option correctly.
This fixes a compile issue with Guile v2.
Using the `debug-enable' procedure with non-boolean debug options raises
an error with Guile v2. The internal type for `show-file-name' is
SCM_OPTION_SCM, and this is why we can't use `debug-enable' here.
The fix is to use `debug-set!', passing the unquoted option name and
the value as arguments (as stated in the Guile documentation).
Werner Lemberg [Thu, 18 Aug 2011 06:04:35 +0000 (08:04 +0200)]
[doc] Try to omit leading # if not necessary.
I wonder whether a leading ' should be omitted also, but I think it doesn't
really harm because it's never part of a Scheme expression (unlike to `#f'
or `#t').
Werner Lemberg [Wed, 17 Aug 2011 17:22:21 +0000 (19:22 +0200)]
[doc] Handle leading dash in @code.
Due to the default value of texinfo.tex's `@allowcodebreaks true', line
breaks after a dash within @code is allowed; this makes sense due to the
very long Scheme identifiers containing many dashes. However, we have a lot
of `@code{-1}', and it looks very ugly to have a line break within this
expression.
This patch fixes it (also converting many `@code' to the correct `@option'),
using `@w{...}' where appropriate. However, I've done it only for the
English documentation, expecting the translators to follow up.
Mike Solomon [Wed, 17 Aug 2011 08:18:00 +0000 (10:18 +0200)]
Fixes issue 620.
Also fixes issue 591 (which was previously fixed, but is re-fixed
here).
Does this by making the extents of an axis group maleable depending
on the interfaces one chooses to use for bounds in the property
bound-alignment-interfaces
See generic_bound_extent in axis-group-interface.cc to see
how this works. All other changes get the data pumped into
this function.
Get rid of some compiler warnings; Fix chdir handling of errors
-) Some "unused parameter" warnings
-) Some "ignoring return value" are a bit trickier. They are bad coding style:
o) the file-name.cc one returns a string with undefined contents if getcwd
fails, which might either crash guile or lead to other bugs.
o) the lily-parser-scheme.cc warning was also a programming error (if you
used --output=dir/file, and dir/ had the wrong permissions, then
lilypond would not print an error, but simply put the output file into
the current directory without telling the user!).
In this case (output dir explicitly requested, but not possible
to change there), I think it's best to exit lilypond with an
error.
-) signed/unsigned warning in glissando-engraver.cc, where we already
had a check for negative values, so explicitly casting to unsigned
shuts up the compiler.
-) Remove unneccessary #(set-paper-size "a6") in the regtests
-) fix bad texinfo code in function documentation