Greetings David, > generally I prefer the left edge of dynamics to be related to the note > position. But I should like it to be a little further to the left than > the value of -1 gives. That is a bit of a problem, because the value > required for a dynamic such as 'f' will be different from that needed by > a wider marking such as 'ffff'. > > Is there perhaps a way of specifying where the left edge of the dynamic > should be in relation to the note? For instance, I might like all > dynamics to appear about half a note-head's width before the left edge > of the note-head itself. It is going to get very tedious having > continually to specify different self-alignment-X values when there are, > say, alternating 'p' and 'mf' markings.
Have you tried using decimal numbers with self-alignment-X, as in numbers between -1 and 0? I am guessing that this will produce what you want. If I understand things correctly, the self-alignment-X property, at least in this instance, is calculating relative to the note. The DynamicText entry of the Internals Reference (Section 3.1.39) also give X-offset as another changeable property. It will also move the dynamic text horizontally, though I am not clear what is its X-parent. If you have not yet done it, I would highly recommend looking at Chapter 4 (and especially sections 4.6 and 4.7) of the Learning Manual, which will give you an invaluable introduction to tweaking the output. In particular, you might be interested in 4.7.2 and 4.7.3, where it is shown how you can minimize typing of tweaks by using variables and stylesheets. > Also, considering that LilyPond is generally so good at avoiding > collisions, I have been surprised to find that it seems to have no > objection to printing dynamics and bar-lines on top of one another. Is > there no way to tell it to avoid these collisions? I would have > expected avoidance to be the default, with an override to allow > collisions if that is what is wanted in a particular case. But the > default appears to be that bar-lines and dynamics pay no regard for each > other. Why the default is, I cannot say. But according to the same entry in the IR, the extra-spacing-width property is set to #'(+inf.0 . -inf.0) by default, which I believe means that, in LilyPond's calculations, the object takes no horizontal space. Changing the elements within the parentheses to actual numbers should force LilyPond to give it a horizontal value and thus to place other objects with recognition of that value. This is my understanding; if I am speaking amiss, please, anyone, feel free to correct me. I hope this helps. Hwaen Ch'uqi _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
