Appoggiatura requires preceding note to be long enough.

Elmo Todurov via bug-lilypond <[email protected]> Sun, 20 Apr 2025 01:58:36 +0300
Newsgroups gmane.comp.gnu.lilypond.bugs
Message-ID <[email protected]>
Hi folks, I found a case where an appoggiatura requires the preceding 
note to be long enough.

Making the preceding note longer fixes the issue.
Making the appoggiatura shorter (2 notes instead of 3) fixes the issue.
Writing the music on the same staff using << {} \\ {} >> fixes the issue.
Adding some grace notes to the bottom staff fixes the issue (but not 
grace rests/skips, these don't fix it).

I found this 18 year old task that appears to be somewhat relevant: 
https://gitlab.com/lilypond/lilypond/-/issues/34

Do you have suggestions how I could typeset my music so it'd sound good 
in MIDI?

\version "2.25.24"
\score {
   <<
     {
       \partial 16
       f'16 | % Shorter than 1/4 * appoggiatura?
       \appoggiatura { e'8 e'8 e'8} % Longer than 1/4 * preceding note?
       e'1 |
       % Desync. Looks fine but sounds horrible.
       e'8 e' e' e' e' e' e' e' |
     }
     {
       \partial 16
       c'16 |
       % fixes the desync, but I don't want these notes:
       % \grace { c8 c8 c8 }
       % does not fix the desync: \grace { s8 s8 s8  }
       c'1 |
       c'8 c' c' c' c' c' c' c' | % Desync
     }
   >>
   \layout {}
   \midi {}
}