lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Flexible lyric alignment


From: Jean Abou Samra
Subject: Re: Flexible lyric alignment
Date: Wed, 9 Nov 2022 23:05:08 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1

Le 09/11/2022 à 19:51, Kieren MacMillan a écrit :
Thoughts? I'm afraid my own Scheme skills aren't up to the task for this. I'm 
also fully aware that I can adjust this manually at the problematic places. I'd 
like to avoid that if possible, but will do that if needed.
Please let's talk with some Great Developers, figure out a good implementation, 
and get the ball [re]rolling! I'm sure some of Janek's work is applicable (at 
least conceptually, if not actualy code).



This is not easy to do and it cannot be done with Scheme only.
If you move the long syllable to the left in order to reduce the
spacing its column needs to the column of the next syllable,
then it also largens the space needed from the column of
the previous syllable to this syllable's column, since potentially,
if you move the syllable too much to the left, it will collide
with its left neighbor. This means that these two spacing
constraints, from the syllable to its previous and to its next
syllable, should be somehow related. However, LilyPond does
horizontal spacing by setting up and solving "springs & rods problems",
i.e. optimization problems with spacing constraints between
columns that are either minimum distances ("rods"), either
ideal distances with a stretchability factor ("springs" that
are more or less strong). This kind of problem cannot express
a dependency between several spacing constraints on different
columns.

To tackle this, the first step would be sitting down with paper,
formulating what new kind of problem we want, and figuring out
an algorithm to solve it, maybe a variant of the existing algorithm
to solve springs&rods problems (in lily/simple-spacer.cc),
or maybe an algorithm found or adapted from existing literature
in algorithmics. Then implementing, debugging and profiling it ...

Best,
Jean

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]