Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: Hilflos-im-Code am Donnerstag, 8. März 2018, 15:34

Titel: Voltenklammer mit Text
Beitrag von: Hilflos-im-Code am Donnerstag, 8. März 2018, 15:34
Ich versuche gerade den letzten Takt (https://lilypondforum.de/index.php?action=dlattach;topic=257.0;attach=412)des angehängten Beispiels nachzubauen. Kopfzerbrechen bereitet mir die letzte Klammer. Wie bekomme ich das mit dem Text hin?
Titel: Antw:Voltenklammer mit Text
Beitrag von: Malte am Donnerstag, 8. März 2018, 17:33
Wie wärs damit?\version "2.19.81"
\language "deutsch"

{
  \set Score.repeatCommands = #`((volta ,(markup #:text "Fine")))
  \repeat volta 1 s1*0
  \alternative { { a'1 \bar "|." } }
}


Evtl. nach dem #:text noch ein #:normalsize o. ä. einbauen.
Titel: Antw:Voltenklammer mit Text
Beitrag von: Be-3 am Donnerstag, 8. März 2018, 18:26
Zitat von: Hilflos-im-Code am Donnerstag,  8. März 2018, 15:34
Wie bekomme ich das mit dem Text hin?

... im Prinzip genau so, wie Malte es gezeigt hat.
Bei Texten braucht man i.d.R gleich vollständiges Markup, weil die üblichen Ziffern aus dem Emmentaler-(Feta-)-Font stammen, der keine normalen Buchstaben enthält.

Hierzu muss man (leider) alle repeatCommands manuell setzen.
Im Beispiel habe ich zuerst das öffnende Wiederholungszeichen, danach den Beginn der ersten Voltenklammer mit dem Text "1.", als nächstes den Markup-Text incl. schließendem Wiederholungszeichen und als letztes schließlich das Ende er zweiten Klammer.

\version "2.18.2"

\relative c'' {
  c1
  \set Score.repeatCommands = #'(start-repeat)
  c1
  \set Score.repeatCommands = #'((volta "1."))
  c4 b d e
  \set Score.repeatCommands = #`((volta ,(markup #:text #:small "Fin")) end-repeat)
  a,2 e'2\fermata
  \set Score.repeatCommands = #'((volta #f))
  e1
}   


Wenn Du dieses Konstrukt dann noch mit der passenden Musik füllst, solltest Du am Ziel sein.

Allgemein:

Edit:
oder auch eine Kombination aus herkömmlicher Syntax und nur einem "winzigen" Eingriff.
Wichtig ist hier trotzdem das "end-repeat", sonst fällt das schließende Wiederholungszeichen unter den Tisch.


\version "2.18.2"

  c1
  \repeat volta 2 { c1 }
  \alternative {
    {c4 b d e }
    {
      \set Score.repeatCommands = #`((volta ,(markup #:text #:small "Fin")) end-repeat)
      a,2 e'2\fermata
    }
  }
  e1
}   


Viele Grüße
Torsten
Titel: Antw:Voltenklammer mit Text
Beitrag von: Hilflos-im-Code am Freitag, 9. März 2018, 09:12
Danke.