Fix chord alignment: snap to word boundaries

Improve merge_chord_lyric() to snap chord positions to the start
of the word they fall within, instead of splitting words mid-way.
Fixes artifacts like "Liebespaar \chord{C}e" → "\chord{C}Liebespaare".

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
shahondin1624
2026-04-02 16:36:06 +02:00
parent d875fd225b
commit 7b99778f67
295 changed files with 1804 additions and 1782 deletions

View File

@@ -7,17 +7,17 @@
}
\begin{verse}
Der Zu \chord{e}g fährt auf st \chord{a}ählernen Gl \chord{H7}eisen, die h \chord{e}aben wir \\
s \chord{a}elber ge \chord{H7}legt, dass \chord{a}sie auf den \chord{e}endlosen Reisen ins \\
M \chord{D}orgen die R \chord{G}ichtung uns wei \chord{e}sen und dass \chord{a} unser Zug \\
sich bewe \chord{e}gt.
Der \chord{e}Zug fährt auf \chord{a}stählernen \chord{H7}Gleisen, die \chord{e}haben wir \\
\chord{a}selber \chord{H7}gelegt, dass \chord{a}sie auf den \chord{e}endlosen Reisen ins \\
\chord{D}Morgen die \chord{G}Richtung uns \chord{e}weisen und dass \chord{a}unser Zug \\
sich \chord{e}bewegt.
\end{verse}
\begin{verse}
Ref.: \\
\chord{a}Denn wir müssen alle wei \chord{e}terkommen, und d \chord{a}a dürfen wir \\
nicht z \chord{e}aghaft sein. Jedes Z \chord{a}iel, kaum erreicht, ist schon \\
w \chord{e}ieder weggeschwommen. Also, \chord{a} heizt \chord{H7} ei \chord{e}n!
\chord{a}Denn wir müssen alle \chord{e}weiterkommen, und \chord{a}da dürfen wir \\
nicht \chord{e}zaghaft sein. Jedes \chord{a}Ziel, kaum erreicht, ist schon \\
\chord{e}wieder weggeschwommen. Also, \chord{a}heizt \chord{e}ein!
\end{verse}
\begin{verse}