Set the sequence name in MIDI using title information from
\header block
issue 4539
This patch adds support for setting the MIDI sequence name for MIDI output files
using the value of the "midititle" field from a relevant \header block, and
falling back to using the "title" field if "midititle"
has not been defined. (This should be analogous to how "pdftitle" and "title"
work for customizing PDF metadata.)
The purpose of the change is to improve the previous behavior where the name of
every MIDI sequence created by LilyPond used to be shown by MIDI synthesizers as
"control track" (previously, this string was hard-coded as the name of every
initial track of MIDI files created by LilyPond by Control_track_performer).
The patch
* extends every Performance instance with a reference to a \header block
associated with the performance, adds Scheme library routines for getting and
setting the associated \header (modeled after corresponding routines available
for the Score class), and updates the Book::process_score function to initialize
the header information of Performance objects attached to a score;
* adds a "name" parameter to the Performance output routines, used for
updating the track name in the performance's first Audio_staff (assumed to
represent the control track) before outputting MIDI; and
* changes the write-performances-midis function (in scm/midi.scm) to query the
MIDI sequence name for a performance from the performance's \header block
(adapted from the handle-metadata function in scm/framework-ps.scm).
* adds two regtests
Due to conf file loading order, generic font aliases
`serif', `sans-serif', 'monospace' were unavailable
in LilyPond default fonts definition.
So the glyphs that are not contained
in the list of font definition,
like Japanese glyphs were used unexpected font.
This commit changes
LilyPond default fonts definition loading order
for enabling the aliases.
Thomas Morley [Fri, 31 Jul 2015 22:19:02 +0000 (00:19 +0200)]
Fix ugly output from make-parenthesis-stencil for increased thickness
issue 4532
This was caused by the fix for issue 3930. Small and very small
object were focused by 3930 and it did the job.
Though, obviously increasing the thickness for make-bezier-sandwich-stencil
should have been limited.
Also amend documentation about the use of \layout and Layout,
and add note to make it clear that the TwoVoicesPerStaff
variables cannot be modified part-way through a score.
David Kastrup [Sat, 18 Jul 2015 15:30:26 +0000 (17:30 +0200)]
Issue 4533: Stop the generic \tweak command from working as override
The problem with letting the generic \tweak command work as an override
is that the tweaking of lyric events becomes awkward since plain lyrics
are hard to distinguish from property names.
This renames the combined tweak/override command into \propertyTweak and
changes all callers requiring the combined functionality to call
\propertyTweak (or its Scheme equivalent) rather than \tweak.
The original issue allowing \tweak to act as an override was issue 2929.
The issue allowing tweaks to function in \lyricmode is issue 2543.
James Lowe [Mon, 3 Aug 2015 15:40:24 +0000 (16:40 +0100)]
Doc: Usage - Update section on articulate.ly
Issue 4535
The section on MIDI w/articulate.ly
was out of date. This section
has been updated accordingly,
including an @ref to the
Notation Manual where
it is more fully explained.
Updated the intro para to this
section and includes some
useful @refs.
James Lowe [Sun, 2 Aug 2015 13:11:22 +0000 (14:11 +0100)]
Doc: Usage - tidy up of external.itely file
Issue 4536
In preparation for some
work done on this file
I have tried to get some
consistency with regard
to white space / line breaks
between @nodes, @cindex et al
to make the file easier to
follow. Also I have corrected
very obvious errors and excessive
line lengths.
Thomas Morley [Thu, 30 Jul 2015 18:39:22 +0000 (20:39 +0200)]
Let \autochange accept optional arguments for the turning-point and clefs
Issue 4530
With the fix for issue 4465 bassStaffProperties and trebleStaffProperties are gone.
This patch reimplements the functionality to set clefs for the staves and offers the
possibility to set another turning-point apart from middle-C.
This is done with optional arguments for \autochange.
Two regtests are added to reflect these possibilities.
Documentation/notation/keyboards.itely is extended accordingly.
Also inserting the usual remarks about license, etc in autochange.scm.
James Lowe [Sat, 25 Jul 2015 09:53:23 +0000 (10:53 +0100)]
Doc: CG - Tightening up of the Bug Squad intro
Issue 4521
Moved some of the bug squad @section to
@subsection in an effort to 'tighten' up
the information. Reworded some of the
introduction section, trying to keep
it more succint.
James Lowe [Tue, 21 Jul 2015 15:58:53 +0000 (16:58 +0100)]
Doc: CG - removed information about test-patchy
test-patchy.py no longer works with
code.google.com and as we're moving
away from this tracker system, I am
taking the information out of the
CG regarding this script.
I have left the lilypond-patchy-staging
information in and adjusted the
troubleshooting section accordingly.
David Kastrup [Thu, 23 Jul 2015 16:19:58 +0000 (18:19 +0200)]
Issue 4519: event-chord-wrap! needs to call expand-repeat-notes!
The action of event-chord-wrap! will make it impossible to figure out
repeat notes (notes without pitch but with duration) but one must not
expand repeat notes before expanding chord repeats, and
event-chord-wrap! does expand chord repeats. So it needs to call
expand-repeat-chords! as well before doing its compatibility processing.
No point in joining and later splitting separate functions. The
original motivation might have been to reduce name space pollution, but
(scm ly-syntax-constructors) is a separate module by now.
David Kastrup [Sat, 18 Jul 2015 18:22:15 +0000 (20:22 +0200)]
Issue 4510: Change comments like Voice "1" to Voice = "1"
This corresponds closer to the syntax of \context/\new and makes it less
likely that the rather programmatic meaning of those comments gets lost
on readers and translators.
issue 3903/1: replace all occurrences of news.lilynet.net with archive.org URL
The command used is:
git grep -l 'news.lilynet.net' | xargs sed -i 's/news.lilynet.net/web.archive.org\/web\/20110325004849\/http:\/\/news.lilynet.net/g'
David Kastrup [Wed, 15 Jul 2015 21:30:30 +0000 (23:30 +0200)]
Issue 3693: Let Percent_repeat_iterator be unfazed by Timing changes
There is still one shortcoming: the percent repeats will not contain any
material apart from the percent itself. In particular, no Timing
changes will be repeated. If there are meter changes or \partial
commands inside of percent repeats, they need to occur in parallel
passages outside of any percent repeat, if necessary in a separate
"timing track".