|
From: | Aaron Hill |
Subject: | Re: Setting Slur.positions to 0s can still move slurs |
Date: | Wed, 07 Apr 2021 09:34:27 -0700 |
User-agent: | Roundcube Webmail/1.4.9 |
On 2021-04-07 7:52 am, Nate Whetsell wrote:
Setting Slur.positions to #'(0 . 0) appears to still move slurs.
The Internals reference [1] comments on the the positions property of the slur-interface:
"For slurs, this value selects which slur candidate to use; if extreme positions are requested, the closest one is taken."
The snippet [2] you mentioned is poorly worded in my opinion. Setting positions does not move the Slur, rather it tells LilyPond to try to use a Slur that has its ends points on the specified staff position. As such, #'(0 . 0) does not mean there is to be no effect on the Slur, rather it instructs LilyPond to prefer a Slur where the ends lie on the center line.
To actually move a Slur, you could adjust its control-points property, which holds the shape of the candidate Slur that was selected by LilyPond. The \shape command [3] is typically used to do this as it allows you to specify individual offsets to be applied to each control point.
[1]: https://lilypond.org/doc/v2.22/Documentation/internals/slur_002dinterface
[2]: https://lsr.di.unimi.it/LSR/Item?id=684[3]: https://lilypond.org/doc/v2.22/Documentation/notation/modifying-shapes
-- Aaron Hill
[Prev in Thread] | Current Thread | [Next in Thread] |