Deutsches Lilypond Forum (Archiv)

Allgemein => Fragen zu Funktionen => Thema gestartet von: complanar am Mittwoch, 25. April 2012, 16:01

Titel: LyricExtender wiederholen
Beitrag von: complanar am Mittwoch, 25. April 2012, 16:01
Hallo,

ich möchte in einer Wiederholungsklammer gern den LyricExtender wiederholen. Das bekomme ich leider nicht hin. Im Moment behelfe ich mir mit einem normalen Unterstrich, wenn man aber etwas genauer hinschaut, sieht man den Unterschied.
Da ich die Noten für ein Liederbuch erstelle, das dann in größerer Auflage gedruckt werden soll, wollte ich es schon richtig machen und nicht mit halben Sachen kommen.

Hier ein Beispiel:
\version "2.14.2"

\relative c' {
  \repeat volta 2 {
    c4 d e f |
    g e d c ~ |
  } \alternative {
    { c2 r4 c }
    { c2\repeatTie r4 e }
  }
}
\addlyrics {
    Hier kommt Text, der ist ganz sinn -- los! __
    Ja,
    "_" % Hier hätte ich gern einen *echten* Lyric Extender und keinen Unterstrich.
    und
}

Ich glaube, man müsste irgendwie ein extender-event erzeugen, aber ich hab keine Ahnung wie. harm hat doch sonst immer so viel Ahnung, wenn es um solche Sachen geht... Bist du hier irgendwo?
Titel: Re: LyricExtender wiederholen
Beitrag von: harm6 am Mittwoch, 25. April 2012, 16:23
Hallo complanar,

Zitat
harm ... Bist du hier irgendwo?

Ja, aber mit ganz wenig Zeit. Insofern nur ein hingefummelter work-around:

\version "2.14.2"

\relative c' {
  \repeat volta 2 {
    c4 d e f |
    g e d c ~ |
  } \alternative {
    { c2 r4 c }
    { c2\repeatTie r4 e }
  }
}
\addlyrics {
    Hier kommt Text, der ist ganz sinn -- los! __
    Ja,
    \once \override Lyrics . LyricText #'X-offset = #-0.5
    \markup \null __ % Hier hätte ich gern einen *echten* Lyric Extender und keinen Unterstrich.
    und
}

Aber vielleicht hilfts ja trotzdem.

Gruß,
  Harm
Titel: Re: LyricExtender wiederholen
Beitrag von: complanar am Donnerstag, 26. April 2012, 11:51
Danke, das hat mich auf die richtige Spur gebracht:

\version "2.14.2"

lyricExtender = #(define-music-function (parser location) ()
  #{
    \lyricmode {
    \once \override Lyrics . LyricText #'self-alignment-X = #LEFT
    \markup \null __
    }
  #}
)

\relative c' {
  \repeat volta 2 {
    c4 d e f |
    g e d c ~ |
  } \alternative {
    { c2 r4 c }
    { c2\repeatTie r4 e }
  }
}
\addlyrics {
    Hier kommt Text, der ist ganz sinn -- los! __
    Ja,
    \lyricExtender
    und
}

Es funktioniert es sogar mit verändertem minimum-length der LyricExtender, denn den habe ich bei mir aus 0 gestellt.
In dem Zusammenhang fällt mir gleich noch eine Frage ein, aber dazu demnächst ein neuer Thread.

Grüße, complanar