Originally created by: *anonymous
Originally created by: janek.li...@gmail.com
Originally owned by: janek.li...@gmail.com
\version "2.17.3"
\markup \justify {
Dynamics, articulations etc. attached to spacer rests
are positioned wrongly. Below the dynamics are applied
at every quarter note, so they should be spread evenly,
but they aren't:
}
\new Staff <<
{ a'2\f a'\f }
{ s4 s\f s s\f }
>>
\new Staff <<
{ a'2\p a'\p }
{ s4 s\p s s\p }
>>
\markup \justify {
And here the turn was specified precisely after a quarter
note skip, so it should be placed midway between the two
halfnotes - but it doesn't appear so:
}
\new Staff <<
{ f'2 g'2 }
{ s4 s\turn }
>>
Originally posted by: janek.li...@gmail.com
\markup \justify {
Here's why the dynamics and articulations are placed like this.
Let's draw a grid on the staffline, representing the flow of
time, with a line every quarter note:
}
\layout {
\context {
\Staff
\consists "Grid_point_engraver"
gridInterval = #(ly:make-moment 1/4)
}
\context {
\Score
\consists "Grid_line_span_engraver"
}
}
<<
{ \hideNotes f'2 f' }
{ s4 s s s }
>>
\markup \justify {
Now, notation rules say that the notes \bold shouldn't
be centered on these gridlines - instead, their \italic
left edges should be flush with the lines:
}
<<
{ f'2 f' }
{ s4 s s s }
>>
\markup \justify {
The second thing is that an object attached to a spacer
is centered on the horizontal position corresponding to
the appropriate musical moment - unlike an object that
is attached to a note (which is centered on that note):
}
\new Staff <<
{ e''2_\turn e''2 }
{ s2 s2_\turn }
>>
\markup \justify {
If we draw gridlines on the examples from the bugreport,
everything should be clear now: objects attached to the
notes are nicely centered on their NoteHeads, while object
attached to spacers are centered on their PaperColumns,
which are \bold empty - hence the uneven spacing:
}
<<
\new Staff <<
{ a'2\f a'\f }
{ s4 s\f s s\f }
>>
{ s4 s s s }
>>
<<
\new Staff <<
{ a'2\p a'\p }
{ s4 s\p s s\p }
>>
{ s4 s s s }
>>
<<
\new Staff <<
{ f'2 g'2 }
{ s4 s\turn }
>>
{ s4 s s s }
>>
\markup \justify {
I know how the solution for this issue should look like;
i'll post a solution in my alignment branch in a few days.
}
Labels: GSoC-LyricProject
Owner: janek.li...@gmail.com
Originally posted by: janek.li...@gmail.com
(No comment was entered for this change.)
Blockedon: lilypond:3239
Originally posted by: janek.li...@gmail.com
Whoah, Janek! I've never seen such a nice illustrated explanation!
;P
Originally posted by: x.sche...@gmail.com
Issue 1861 was "DynamicText attached to spacer rest not correctly
aligned", now fixed "2.15.24" and verified.
One should check whether:
1. issue 1861 was correctly fixed;
2. this issue is not a result of the fix of issue 1861;
3. these issues and issue 3232 could not be fixed in a general way.
Thanks.
Related
Issues:
#1861Issues: #3232
Originally posted by: janek.li...@gmail.com
> Issue 1861 was "DynamicText attached to spacer rest not correctly
> aligned", now fixed "2.15.24" and verified.
>
> One should check whether:
> 1. issue 1861 was correctly fixed;
That fix works, but it's not generic enough. Basically, the fix consisted of adding a special-case function, used only for aligning of Dynamics in Dynamics context. So, it was wrong because it created an exception instead of fixing the general algorithm; as for fixing the general algorithm, issue 3239 gives foundations for that. Currently 3239 is waiting in the pipelines because development efforts focused on stable release.
> 2. this issue is not a result of the fix of issue 1861 ;
no, it's not.
> 3. these issues and issue 3232 could not be fixed in a general way.
As far as i can see, they are separate. 3232 concers how springs that connect Columns are working, and this issue is about how the things are attached to given Columns, no matter what they are.
I already have an idea how the solution for this issue would look like; i just need to have some spare time and sort out all interdependent patches i have.
Anyway, thanks for providing some background :)
Related
Issues:
#1861Issues: #3232
Issues:
#3239Originally posted by: janek.li...@gmail.com
Issue 3239 is now issue 3979.
Blockedon: -lilypond:3239 lilypond:3979
Related
Issues:
#3239Issues: #3979
Originally posted by: janek.li...@gmail.com
(No comment was entered for this change.)
Labels: Janek_alignment_changes
Originally posted by: janek.li...@gmail.com
Issue 3299: better alignment with PaperColumn parent
PaperColumns are the objects that define where a musical moment
"happens" on the staff horizontally. However, the noteheads aren't
center-aligned on PaperColumns - according to notation rules they
are left-aligned. Because of that an object centered on a notehead
is not actually centered on the PaperColumn, which results in a
discrepancy between objects attached to NoteHeads and PaperColumns.
This commit fixes that by introducing a placeholder extent which is
used for aligning such grobs.
http://codereview.appspot.com/132280043
Labels: Patch-new
Status: Started
Related
Issues: #3299
Originally posted by: janek.li...@gmail.com
I attach output of the regtest for more convenient reviewing.
Originally posted by: dak@gnu.org
In dynamics-empty.ly, the pedal release mark is no longer aligned with the corresponding dynamics.
Originally posted by: pkx1...@gmail.com
Patchy the autobot says: Fails make
Labels: -Patch-new Patch-needs_work
Originally posted by: janek.li...@gmail.com
@David:
pedal and dynamics aren't aligned when they are attached to notes, so i think it's good that they're not aligned here - makes things consistent. But if you think this should be changed i'm open to suggestions (i.e. how the pedal should be positioned in your opinion?)
@James:
are you sure? I checked on my machine (with and without configure --disable-optimising) and it compiled fine.
Anyway, i really should start running patchy myself, but i don't have enough time now... :(
Originally posted by: janek.li...@gmail.com
(No comment was entered for this change.)
Labels: -Patch-needs_work Patch-new
Originally posted by: janek.li...@gmail.com
Patchy the autobot says: passes tests.
Labels: -Patch-new Patch-review
Originally posted by: pkx1...@gmail.com
Patch on countdown for September 17th (just in case it hasn't been seen - Keith commented in Rietveld about the commit message)
Labels: -Patch-review Patch-countdown
Originally posted by: pkx1...@gmail.com
Patch counted down - please push ((just in case it hasn't been seen - Keith commented in Rietveld about the commit message)
Labels: -Patch-countdown Patch-push
Originally posted by: pkx1...@gmail.com
Patch counted down - please push
Originally posted by: pkx1...@gmail.com
Patch counted down - please push
Originally posted by: pkx1...@gmail.com
Patch counted down - please push
Originally posted by: janek.li...@gmail.com
See comment on Rietveld: https://codereview.appspot.com/132280043/#msg4
Labels: -Patch-push Patch-needs_work
Diff:
I'm not convinced that the behaviour in the first example is wrong. If the 2 crochet spacers are replaced with a single minim spacer, alignment is correct. An is the crochet spacers are replaced with crochet notes, we see that the dynamics are aligned after the minim, on the second and fourth crochet, completely correctly. This is the same behaviour seen with the spacer rests.
I think Janek was comparing the spacing of notes and spacer rests. Compare these two examples, which might be expected to show the same output:
... and with ragged right ##f the dynamics almost line up. The difference seems to be the slight difference in attachment points between spacer rests and notes and their relative compressibility.
Reverting to Status:Accepted as it is over a year since there was any progress on the patch.