Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: Hilflos-im-Code am Mittwoch, 11. April 2018, 11:36

Titel: Textspanner verschachteln
Beitrag von: Hilflos-im-Code am Mittwoch, 11. April 2018, 11:36
Kann man Textspanner verschachteln?

Also  z.B: \startTextspannA  \startTextspannB \startTextspannC \stopTextspannB  \stopTextspannC  \stopTextspannA
Titel: Antw:Textspanner verschachteln
Beitrag von: Malte am Mittwoch, 11. April 2018, 17:46
Ja, indem man sie in verschiedene Voices packt. Man braucht dafür nicht unbedingt mehrstimmige Musik, diese zusätzlichen Stimmen müssen ja nichts weiter enthalten:\version "2.19.81"

\new Staff {
  <<
    { 1 1 1 1 1 1 }
    \new Voice {
      \override TextSpanner.bound-details.left.text = "A"
      s1*5\startTextSpan s1\stopTextSpan
    }
    \new Voice {
      \override TextSpanner.bound-details.left.text = "B"
      s1 s1*2\startTextSpan s1*3\stopTextSpan
    }
    \new Voice {
      \override TextSpanner.bound-details.left.text = "C"
      s1*2 s\startTextSpan s\stopTextSpan
    }
  >>
}
Titel: Antw:Textspanner verschachteln
Beitrag von: harm6 am Mittwoch, 11. April 2018, 22:37
Hallo,

LilyPond akzeptiert nur einen TextSpanner pro Voice.

Also gibt es nur zwei Möglichkeiten:

(1)
Verschiedene Voices. Hat Malte ja schon demonstriert.

(2)
Verschiedene TextSpanner.
Das würde bedeuten verschiedene Grobs mit TextSpanner-Eigenschaften.
Jeweils neue Namen, Aufrufbefehle, class, type, engraver.

Das ist schon im alten Forum gemacht worden, der neueste code ist wahrscheinlich hier.
https://archiv.lilypondforum.de/index.php/topic,2503.msg14199.html#msg14199 (https://archiv.lilypondforum.de/index.php/topic,2503.msg14199.html#msg14199)
Man könnte allerdings nicht ganz unberechtigt von over-kill sprechen ...
Aber die ganze (lange) Diskussion ist sehr lehrreich.

Gruß,
  Harm
Titel: Antw:Textspanner verschachteln
Beitrag von: Hilflos-im-Code am Donnerstag, 12. April 2018, 12:13
Danke. Ich konnte den Code für mich umbauen.

Verstehen tue ich von dem Thread kein Wort. Bei Lilypond muss man im Gegensatz zu anderen mir vertrauten Computersprachen sehr früh mit den Konzepten hinter der Maschinerie vertraut sein, um etwas zu verstehen oder selber stemmen zu können.