Hello Trevor,I stand corrected. And thanks for spelling out that explanation :-) I haven’t been thorough enough looking it up myself – or rather overestimated my knowledge of the docs, which is unfortunate after some four years of learning. Sigh… On the other hand: I have rarely, if ever, come across issues of this kind, so I’ve been moving in a region I didn’t know as well as others. In this particular case, confusion was increased by forgetting to tweak DynamicLineSpanner’s outside-staff-priority along with that of DynamicText. And I just noticed that, with outside-staff-priority being unset for both (or rather, all three), avoid-slur doesn’t have the desired effect, they will just collide (see attachment). But that would be a different issue.
Good night, Simon Am 13.06.2015 um 23:45 schrieb Trevor Daniels:
Simon Albrecht wrote Saturday, June 13, 2015 8:53 PMAm 13.06.2015 um 15:17 schrieb Trevor Daniels:Simon Albrecht wrote Saturday, June 13, 2015 2:00 PMWeird, but it works and is definitely preferable over extra-offset. Does anybody have an explanation? I couldn’t find the table with default values for outside-staff-priority. They don’t seem to be referenced in the IR, are they?Try the Learning Manual: http://www.lilypond.org/doc/v2.19/Documentation/learning/outside_002dstaff-objectsThanks for the hint, that helps. But it is not comprehensive, is it?No, it isn't. It's not intended to be comprehensive; it's intended to teach you how to find out things for yourself. Which you have, because you say:For example I know that Slur also uses the outside-staff-interface, but there is no outside-staff-priority referenced in the LM.That's because by default its value is not set. If you read the description in the outside-staff-interface you'll see that it says: "If set, the grob is positioned outside the staff in such a way as to avoid all collisions" To find out if it has a value you look for outside-staff-priority under the Slur layout object, and find it is not listed, so its value is not set. By setting it, you change its behaviour wrt collisions. Actually, if you read a little further through the section of the Learning Manual, which I helpfully suggested to you earlier, you'll find: "Slurs by default are classed as within-staff objects, but they often appear above the staff if the notes to which they are attached are high on the staff. This can push outside-staff objects such as articulations too high, as the slur will be placed first. The avoid-slur property of the articulation can be set to 'inside to bring the articulation inside the slur, but the avoid-slur property is effective only if the outside-staff-priority is also set to #f. Alternatively, the outside-staff-priority of the slur can be set to a numerical value to cause it to be placed along with other outside-staff objects according to that value." Followed by an example showing exactly how to do it.It would seem proper if all properties and their default values were to be found in the Internals…They are. You just have to read the manuals and learn how to extract them. Trevor
\version "2.19.20" \score { << \new Voice { << { d''1 %-\tweak outside-staff-priority #0 ( } { s2 s -\tweak style #'none -\tweak avoid-slur #'inside -\tweak outside-staff-priority ##f -\tweak DynamicLineSpanner.outside-staff-priority ##f ^\dim } >> es''4)\! } \new Voice { 8 8 8 8 8 8 8 8 4 } >> }
dim-avoid-slur.pdf
Description: Adobe PDF document
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user