Hello,

I'm a software engineer and I am working on my personal side project
related to rendering sheet music. I didn't want to reinvent the wheel so I
decided to check Lilypond source code (I find Lilypond the best music
typesetter software I know) to understand basic concepts which could help
me with my project. However, I have to say I'm struggling to understand how
Lilypond works internally. Therefore I'm asking for help.

I browsed through the source code on Github, yet I'm unable to find out
how, i.e. slur keypoints are calculated. The Essay on automated music
engraving
<https://lilypond.org/doc/v2.21/Documentation/essay/automated-engraving>
explains that actually three slurs are "generated" and one with the highest
point rating is selected. I can't find either three-fold slur generation
nor the rating algorithm.

Is there any valuable documentation for beginners? I am aware of the
Contributor
Guide <https://lilypond.org/doc/v2.21/Documentation/contributor.pdf>, yet
it gives little to none introduction to code itself.
Is there anyone who knows the Lilypond internals and would agree to have a
call (Skype/Teams/Discord) to introduce me to the code? I think explaining
how the slur is generated (from parsing the code until final control points
are calculated) would be a great kickoff and would allow me to continue
deep-diving in the Lilypond internals on my own.

Best,
Mateusz

Reply via email to