Originally created by: *anonymous
Originally created by: pkx1...@gmail.com
> On 12/12/13 22:17, Simon Albrecht wrote:
>> Hello,
>>
>> if both an AccidentalSuggestion and a slur are attached to a note, LilyPond places both as expected, but issues a warning about avoid-slur not being defined for AccidentalSuggestion. The appropriate solution would probably be to just insert a line (avoid-slur . around) [the latter probably being the adequate value] as a first entry for the definition of AccidentalSuggestion in define-grobs.scm .
>> Let me know if you need any examples of this.
>> Best regards
>>
>> Simon Albrecht
\version "2.17.95"
\relative { \set suggestAccidentals = ##t g'( a bes) }
The warning issued is the following:
C:/Dokumente und Einstellungen/Notebook/Eigene Dateien/Notensatz (lilypond)/Bugs in Minimal Example/issued or outdated/accidentalSuggestion and avoid-slur.ly:4:19: warning: Ignoring grob for slur: AccidentalSuggestion. avoid-slur not set?
g'( a
bes)
I already tried the above described solution in define-grobs.scm and there is no warning.
The output is not affected in the present case, but might be in other cases where there would be a collision.
Regards,
Simon
Originally posted by: dak@gnu.org
Mike, Keith? It would appear that avoid-slur is being ignored as long as outside-staff-priority is being set: in the following, removing the outside-staff-priority override will make the avoid-slur override irrelevant.
Now the question is: if avoid-slur is made irrelevant by the outside-staff-priority setting anyway, why do we get a warning? Perhaps it should be switched off in that case?
Since it is generally extra-hard to figure out what avoid-slur does, maybe we should refrain from setting both outside-staff-priority _and_ avoid-slur on the same property?
Should we warn when both are set? Should we document them to be exclusive?
It does not feel sane to make a setting that is going to get ignored just to switch off a warning that makes no sense. Stuff is hard enough to understand anyway.
Ideas?
Cc: mts...@gmail.com k-ohara5...@oco.net
Originally posted by: dak@gnu.org
Sorry, forgot the example:
\relative { \override AccidentalSuggestion.avoid-slur = #'inside
\override AccidentalSuggestion.outside-staff-priority = ##f
\set suggestAccidentals = ##t e''( c' bes, c') }
Originally posted by: k-ohara5...@oco.net
It is strange that the slur code complains if it does not see an explicit avoid-slur='ignore setting on objects that neither affect nor respond to the placement of slurs. Usually if you choose one method for placement of a graphical object, you do not need to give instructions for all the other methods you did not choose.
Comment #1 gives a good argument that since AccidentalSuggestion uses the outside-staff-priority method to find is place, the appropriate setting for 'avoid-slur' would be 'ignore
It seems wisest, though, to remove the code that generates warning.
Cc: -k-ohara5...@oco.net
Originally posted by: jamshar...@gmail.com
The same warning occurs for TrillPitchAccidental, where it makes even less sense.
\relative c' {
% OK
\pitchedTrill d2\startTrillSpan ~ e d4. [r8]\stopTrillSpan
% warning: Ignoring grob for slur: TrillPitchAccidental. avoid-slur not
set?
% But the slur is nowhere near colliding with the trill pitch accidental!
c4 ( \pitchedTrill d4\startTrillSpan e ~ d4. ) [r8]\stopTrillSpan
}