[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Quick question about accidentals
From: |
David Kastrup |
Subject: |
Re: Quick question about accidentals |
Date: |
Sat, 26 Nov 2016 18:08:18 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) |
David Kastrup <address@hidden> writes:
> David Sumbler <address@hidden> 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