David Kastrup <d...@gnu.org> writes:

> David Sumbler <da...@aeolia.co.uk> writes:
>
>> Thanks for these 2 replies.  I have tidied things up a bit by using
>>
>> \once \omit Accidental
>>
>> as suggested by Noeck.
>>
>> David's reply has given me several things to look up and think about
>> (which is good!).  The quoted "@", \single and \etc were all
>> effectively new to me - although I must have read about them more than
>> once in the NR.  I don't think I understand them well enough even now,
>> though, for me to have invented
>>
>> "@"=\single \omit Accidental \etc
>
> Well, @ is just an arbitrary character that isn't used yet by LilyPond.
> & would probably also have worked.  \single converts an override (like
> \omit Accidental) into the corresponding tweak.  \etc cuts a music
> function call short and results in a music function that expects the
> remaining arguments.  Sooo...
>
> \omit Accidental is an override
> \single \omit Accidental is incomplete syntax missing a tweak target
> \single \omit Accidental \etc is a music function expecting such a target
>
> So:
>
>>> "@"=\single \omit Accidental \etc
>>> 
>>> { @cis1 }
>
> Of course you can write this @ cis1 as well.  I was just aiming for a
> single-character version.

Actually basically nothing of that would have worked in 2.16. \single,
\omit and single-character shorthands are 2.18 features and \etc is a
2.19 feature.

This would roughly have been

"@" =
#(define-music-function (parser location m) (ly:music?)
   #{ \tweak Accidental.stencil ##f #m #})

except that grob-constrained tweaks are _also_ not a 2.16 feature.

-- 
David Kastrup

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

Reply via email to