Le 07/11/2021 à 21:52, CieMaKat a écrit :
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.
Do these help?
https://lilypond.org/doc/v2.22/Documentation/extending/index.html
https://extending-lilypond.readthedocs.io/en/latest/
(I am the author of the latter, so you can write
me if you find anything confusing or wish an
improvement.)
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.
I don't know about the slur determination yet, so
I may not be the best person for that. At any rate,
if you are specifically interested in that algorithm,
it's in lily/slur-scoring.cc.
I personally have not-so-high availability at
the moment, but we could arrange something if
you would be helped by more than the two links
above. Saying this, I really don't want to
prevent others from chiming it.
Best,
Jean