Currently, separate components of the tempo
tag are held in different <text
tags, each with a <tspan
without attributes. This is wasteful, and can make text ugly. KCC.cropped.svg shows how this fragmentation causes a bad result (ignoring issue [#3778] with \override Score.MetronomeMark.vertical-skylines = #'()
). The text is separated into 5 text blocks, whereas only 2 are necessary (before/after note).
There are a few issues at play here:
<tspan
tags, and so the opening parenthesis may be combined in the same text tag. This would prevent the excessive spacing seen in the example.scm/translation-functions.scm
for issue [#4678] as all the components seem to be combined there, and when there is not a range of beat markings (e.g. "4 = 100", not "4 = 100 - 120"), the equal sign is combined with the rest.I can't seem to find where the issue is occuring for points 2 & 3, but by specifying the position of each component (and problems in concatenating them, the spacing is off and the syntax messier.
Making these changes manually in the example, there were 10 units of space between the indication and metronome mark, and with an odd cause in Lilypond's text handling.
Issues: #3778
Issues: #4678
Issues: #5185
Diff:
Related
Issues:
#3778Issues:
#4678Diff:
Related
Issues:
#3778Issues:
#4678This problem is not just limited to
SVG
s, and does affect thePS
backend. There, theprint_glyphs
should be used at a minimum. An example (inPS
is provided below for\tempo "Adagio" 4=72-80
:Further study of the tempo section of
translation-functions.scm
is required.Last edit: Étienne Beaulé 2017-09-02
Limit use of
make-concat-markup
in tempo tagCalling
make-concat-markup
when the list of components of the tempotag is incomplete causes the printing command to be unnecessarily
fragmented, causing problems, mostly in the SVG backend. This change
combines all components of the metronome mark in one list before
calling
make-concat-markup
.The make-simple-markup statements are also combined where possible, and
comments have been added where characters can be confused. None have
modified.
This patch provides one part for the fix of bug 5174. Further patches
will be needed to combine text of different styles/fonts or to fix
text spacing in the SVG backend.
Bug: 5174
http://codereview.appspot.com/328440043
Fails make check on a few files:
e.g.
../regression/metronome-mark-broken-bound.ly
../regression/song-tempo.ly
../regression/metronome-mark-loose-column.ly
Fix list appending
http://codereview.appspot.com/328440043
Diff:
Passes make, make check and a full make doc.
Reg test diff attached.
I must disagree with the type of this bug. This is not adding a new feature, rather a problem that was only apparent in the
SVG
backend. For thePS
backend, this could be categorized as an enhancement, but the root problem was there, just not apparent. I'll be bold and change the type. The reg-test output did not show anything significant as the selected backend did not show the problem to begin with. Is it possible to get the regtests using different backends?Patch on countdown for September 7th.
@Etienne - I always defer to Developers. When git-cl is used it seems to 'blank' out the field or default to 'Enhancement' (I cannot remember) so I just put anything that isn't 'Doc' and not immediately obvious (to me) as anything else as an 'Enhancement'. Feel free to change anything I do. Just make sure that you say why so the others can see.
Hope my reasoning was good :)
BTW, can the regression tests also use the
SVG
backend, alongsidePS
? This change was geared towardsSVG
output, so the diff would show much more with that backend. (Still important withPDF
).Thank you!
Patch counted down - please push.
As for having a set of SVG reg tests, I don't think that is a bad thing but I personally wouldn't know how to go about doing that.
author Étienne Beaulé beauleetienne0@gmail.com
Sat, 2 Sep 2017 21:32:41 +0100 (17:32 -0300)
committer James Lowe pkx166h@gmail.com
Thu, 7 Sep 2017 16:11:19 +0100 (16:11 +0100)
commit 4785a3ed7ce03c950f4f1f90ef6f412d038cedc7