2014-05-18 16:18 GMT+02:00 David Kastrup <d...@gnu.org>: > Thomas Morley <thomasmorle...@gmail.com> writes: > >> 2014-05-18 12:28 GMT+02:00 David Kastrup <d...@gnu.org>: >>> Thomas Morley <thomasmorle...@gmail.com> writes: >>> >>>> 2014-05-18 7:20 GMT+02:00 David Kastrup <d...@gnu.org>: >>>>> Knute Snortum <ksnor...@gmail.com> writes: >>>>> >>>>>> My situation is I need to transcribe a crescendo starting without a >>>>>> dynamic >>>>>> marking. If I put in a \mf then I don't get warning. If I can hide the >>>>>> dynamic mark, all will be fine. Is there a \hide syntax that will work? >>>> >>>> Omitting the DynamicText.stencil will not cause the Hairpin to start as >>>> usual. >>>> Resetting the parent of the Hairpin my work: >>>> >>>> \version "2.18.0" >>>> >>>> \score >>>> { >>>> { >>>> \once \override Hairpin.after-line-breaking = >>>> #(lambda (grob) >>>> (let ((dyn-txt (ly:spanner-bound grob LEFT))) >>>> (ly:grob-set-property! dyn-txt 'stencil #f) >>>> (ly:spanner-set-bound! grob LEFT (ly:grob-parent dyn-txt X)))) >>>> c'1\mf\> c' c'\! >>>> } >>>> \layout {} >>>> \midi {} >>>> } >>> >>> If \omit is too strong and \hide leaves too much space, maybe overriding >>> the stencil with point-stencil will work? >> >> Using point-stencil doesn't work either. >> >> \version "2.18.0" >> >> \score >> { >> { >> \override DynamicText.stencil = #point-stencil >> c'1\mf\> c' c'\! >> } >> \layout {} >> \midi {} >> } > > Ok, I'll bite: what does "doesn't work" mean? I see the same results > for overriding with point-stencil and omitting, and those results are > > a) without error message > b) looking as expected when compared to the version with visible \mf > > Either way, I find the stopping position of the hairpin somewhat > strange/early, but it is exactly the same as it would be without > override. > > -- > David Kastrup
Sorry if I was not clear enough. I was looking for a method to circumvent the midi-error, but keep the visual output. Let me be a bit more verbose: The following gives nice visual output, though triggers an error with midi: { c'1\> c' c'\! } Inserting an expicit Dynamic resolves the midi-error, though, the Hairpin starts at the right of the DynamicText, ofcourse. { c'1\mf\> c' c'\! } Trying to remove the printed DynamicText via \hide or \omit or #point-stencil, leaves the Hairpin untouched, i.e. starting to the right of the now invisible or non-existent DynamicText-stencil. (Little different with \hide) { c'1-\hide\mf\> c' c'\! } { c'1-\omit\mf\> c' c'\! } { c'1-\tweak #'stencil #point-stencil \mf\> c' c'\! } The only way I've found to get back the output without the explicit DynamicText was to set Hairpins left-bound to DynamicText-parent (and setting DynamicText.stencil #f ofcourse). { c'1\mf -\tweak #'after-line-breaking #(lambda (grob) (let ((dyn-txt (ly:spanner-bound grob LEFT))) (ly:grob-set-property! dyn-txt 'stencil #f) (ly:spanner-set-bound! grob LEFT (ly:grob-parent dyn-txt X)))) \> c' c'\! } Cheers, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user