"Joel C. Salomon" <joelcsalo...@gmail.com> writes:

> What am I doing wrong here?
>
> ```
> \version "2.24.0"
> down = {
>   \clef bass
>   \slurUp
>   \acciaccatura g,8 d'2 % works
>   \acciaccatura d8 d'2 | % doesn't
> }
> \score {
>   \down
> }
> ```
>
> Adding `\slurUp` to a redefinition of `\startAcciaccaturaMusic` works,
> so why does the code above not work?

Acciaccature have their own built-in slur direction, so if you want to
override it, you need to do it within the acciaccatura:

\version "2.24.0"
down = {
  \clef bass
  \acciaccatura { \slurUp g,8 } d'2 % works
  \acciaccatura { \slurUp d8 } d'2 | % doesn't
}
\score {
  \down
}

That your first \slurUp works is sort of an accident: at the immediate
start of the Voice, the synchronisation mechanism that can distinguish

\slurUp \acciaccatura { ...

from

\acciaccatura { \slurUp ...

even though the event happens at the same point of musical time is not
yet set up, and instead a fallback mechanism that cannot make that
distinction takes over.

-- 
David Kastrup

Reply via email to