Hi all,
I'm interested in changing the horizontal position of dots on dotted notes. So far I've only been able to make this happen by overriding Dots.extra-offset. That's fine and it will work for me, but it bypasses the layout/spacing engine, and I'd rather not do that if there is another way that I'm missing. Here's what I've tried:


\version "2.19.42"
{
  \time 3/4
  c'4.
  \once \override Dots.X-offset = #1
  c'4.
  \once \override DotColumn.X-offset = #1
  c'4.
  \once \override DotColumn.extra-offset = #'(1 . 0)
  c'4.
  % extra-offset moves the dot away from the stem,
  % but it bypasses layout/spacing engine...
  \once \override Dots.extra-offset = #'(2 . 0)
  c'4.
}

The use case is custom double stems that are wider (used in Clairnote notation, see http://clairnote.org). See attached image. It looks like LilyPond does not adjust the position of the dots based on the width of the stem (neither from its stencil nor its X-extent).

\version "2.19.42"
{
  \time 3/4
  c'4.
  % dot position is not affected by stem X-extent
  \once \override Stem.X-extent = #'(-10 . 10)
  c'4.
  % thickness increases to the left, not the right
  % so doesn't affect dot position, can't be used as test case
  \once \override Stem.thickness = #10
  c'4.
  % extreme scaling of the stem stencil, no change in dot position
  \once \override Stem.stencil =
  #(lambda (grob) (ly:stencil-scale (ly:stem::print grob) 10 1))
  c'4.
  % putting it together
  \once \override Stem.stencil =
  #(lambda (grob) (ly:stencil-scale (ly:stem::print grob) 10 1))
  \once \override Dots.extra-offset = #'(0.5 . 0)
  c'4.
}

Thanks for any tips,
-Paul


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to